@innet/server 2.0.0-alpha.12 → 2.0.0-alpha.14

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 (95) hide show
  1. package/README.md +457 -367
  2. package/handler/handler.d.ts +3 -3
  3. package/handler/handler.es6.js +2 -2
  4. package/handler/handler.js +2 -2
  5. package/hooks/index.d.ts +2 -1
  6. package/hooks/index.es6.js +2 -1
  7. package/hooks/index.js +2 -1
  8. package/hooks/useAction/useAction.es6.js +1 -1
  9. package/hooks/useAction/useAction.js +1 -1
  10. package/hooks/useApi/useApi.d.ts +1 -3
  11. package/hooks/useEndpoint/useEndpoint.es6.js +3 -1
  12. package/hooks/useEndpoint/useEndpoint.js +3 -1
  13. package/hooks/useRequest/index.es6.js +1 -1
  14. package/hooks/useRequest/index.js +0 -1
  15. package/hooks/useRequest/useRequest.d.ts +1 -4
  16. package/hooks/useRequest/useRequest.es6.js +4 -4
  17. package/hooks/useRequest/useRequest.js +3 -4
  18. package/hooks/useResponse/index.es6.js +1 -1
  19. package/hooks/useResponse/index.js +0 -1
  20. package/hooks/useResponse/useResponse.d.ts +1 -4
  21. package/hooks/useResponse/useResponse.es6.js +4 -4
  22. package/hooks/useResponse/useResponse.js +3 -4
  23. package/hooks/useServer/useServer.d.ts +1 -0
  24. package/hooks/useServer/useServer.es6.js +3 -1
  25. package/hooks/useServer/useServer.js +3 -1
  26. package/hooks/useServerPlugin/index.d.ts +1 -0
  27. package/hooks/useServerPlugin/index.es6.js +1 -0
  28. package/hooks/useServerPlugin/index.js +9 -0
  29. package/hooks/useServerPlugin/useServerPlugin.d.ts +2 -0
  30. package/hooks/useServerPlugin/useServerPlugin.es6.js +13 -0
  31. package/hooks/useServerPlugin/useServerPlugin.js +17 -0
  32. package/hooks/useServerPlugins/index.d.ts +1 -0
  33. package/hooks/useServerPlugins/index.es6.js +1 -0
  34. package/hooks/useServerPlugins/index.js +10 -0
  35. package/hooks/useServerPlugins/useServerPlugins.d.ts +4 -0
  36. package/hooks/useServerPlugins/useServerPlugins.es6.js +14 -0
  37. package/hooks/useServerPlugins/useServerPlugins.js +19 -0
  38. package/index.es6.js +5 -4
  39. package/index.js +7 -6
  40. package/package.json +1 -1
  41. package/plugins/main/api/api.d.ts +2 -0
  42. package/plugins/main/api/api.es6.js +44 -52
  43. package/plugins/main/api/api.js +43 -51
  44. package/plugins/main/endpoint/endpoint.es6.js +4 -1
  45. package/plugins/main/endpoint/endpoint.js +4 -1
  46. package/plugins/main/index.d.ts +1 -1
  47. package/plugins/main/index.es6.js +1 -1
  48. package/plugins/main/index.js +1 -1
  49. package/plugins/main/preset/index.d.ts +1 -0
  50. package/plugins/main/preset/index.es6.js +1 -0
  51. package/plugins/main/{fallback → preset}/index.js +2 -2
  52. package/plugins/main/preset/preset.d.ts +3 -0
  53. package/plugins/main/preset/preset.es6.js +13 -0
  54. package/plugins/main/preset/preset.js +21 -0
  55. package/plugins/main/request/request.es6.js +2 -13
  56. package/plugins/main/request/request.js +2 -13
  57. package/plugins/main/response/response.d.ts +1 -0
  58. package/plugins/main/response/response.es6.js +7 -7
  59. package/plugins/main/response/response.js +7 -7
  60. package/plugins/main/server/server.d.ts +3 -3
  61. package/plugins/main/server/server.es6.js +28 -6
  62. package/plugins/main/server/server.js +28 -6
  63. package/plugins/request/success/success.d.ts +1 -1
  64. package/plugins/request/success/success.es6.js +4 -4
  65. package/plugins/request/success/success.js +4 -4
  66. package/plugins/utils/blacklist/blacklist.es6.js +4 -3
  67. package/plugins/utils/blacklist/blacklist.js +4 -3
  68. package/plugins/utils/dts/dts.d.ts +2 -1
  69. package/plugins/utils/dts/dts.es6.js +2 -2
  70. package/plugins/utils/dts/dts.js +2 -2
  71. package/plugins/utils/protection/protection.es6.js +4 -2
  72. package/plugins/utils/protection/protection.js +4 -2
  73. package/plugins/utils/swagger/swagger.es6.js +5 -3
  74. package/plugins/utils/swagger/swagger.js +5 -3
  75. package/plugins/utils/whitelist/whitelist.es6.js +4 -2
  76. package/plugins/utils/whitelist/whitelist.js +4 -2
  77. package/types.d.ts +2 -9
  78. package/utils/action/Action.es6.js +12 -10
  79. package/utils/action/Action.js +12 -10
  80. package/utils/generateTypes/generateTypes.d.ts +2 -2
  81. package/utils/generateTypes/generateTypes.es6.js +40 -15
  82. package/utils/generateTypes/generateTypes.js +40 -15
  83. package/utils/getEndpoint/getEndpoint.es6.js +2 -2
  84. package/utils/getEndpoint/getEndpoint.js +2 -2
  85. package/hooks/useRequestPlugin/index.d.ts +0 -1
  86. package/hooks/useRequestPlugin/index.es6.js +0 -1
  87. package/hooks/useRequestPlugin/index.js +0 -9
  88. package/hooks/useRequestPlugin/useRequestPlugin.d.ts +0 -2
  89. package/hooks/useRequestPlugin/useRequestPlugin.es6.js +0 -13
  90. package/hooks/useRequestPlugin/useRequestPlugin.js +0 -17
  91. package/plugins/main/fallback/fallback.d.ts +0 -4
  92. package/plugins/main/fallback/fallback.es6.js +0 -19
  93. package/plugins/main/fallback/fallback.js +0 -23
  94. package/plugins/main/fallback/index.d.ts +0 -1
  95. package/plugins/main/fallback/index.es6.js +0 -1
@@ -1,6 +1,6 @@
1
1
  import { context, type ContextProps, slot, type SlotProps, slots, type SlotsProps } from '@innet/jsx';
2
2
  import { arraySync, async } from '@innet/utils';
3
- import { type ApiProps, type ArrayProps, type BinaryProps, blacklist, type BlacklistProps, type BodyProps, type BooleanProps, cms, type CmsProps, type ContactProps, type CookieProps, type DateProps, type DevProps, type DtsProps, type EndpointProps, type ErrorProps, type FallbackProps, type FieldProps, file, type FileProps, type HeaderProps, type HostProps, type IntegerProps, type LicenseProps, type NullProps, type NumberProps, type ObjectProps, type ParamProps, type ProdProps, protection, type ProtectionProps, type ProxyProps, type RedirectProps, type RequestProps, type ResponseProps, type ServerProps, type StringProps, type SuccessProps, type SwaggerProps, type TagProps, type TupleProps, type UuidProps, type VariableProps, whitelist, type WhitelistProps } from '../plugins';
3
+ import { type ApiProps, type ArrayProps, type BinaryProps, blacklist, type BlacklistProps, type BodyProps, type BooleanProps, cms, type CmsProps, type ContactProps, type CookieProps, type DateProps, type DevProps, type DtsProps, type EndpointProps, type ErrorProps, type FieldProps, file, type FileProps, type HeaderProps, type HostProps, type IntegerProps, type LicenseProps, type NullProps, type NumberProps, type ObjectProps, type ParamProps, preset, type PresetProps, type ProdProps, protection, type ProtectionProps, type ProxyProps, type RedirectProps, type RequestProps, type ResponseProps, type ServerProps, type StringProps, type SuccessProps, type SwaggerProps, type TagProps, type TupleProps, type UuidProps, type VariableProps, whitelist, type WhitelistProps } from '../plugins';
4
4
  export declare const arrayPlugins: (typeof arraySync)[];
5
5
  export declare const JSXPlugins: {
6
6
  api: import("innet").HandlerPlugin;
@@ -18,7 +18,6 @@ export declare const JSXPlugins: {
18
18
  dts: import("innet").HandlerPlugin;
19
19
  endpoint: import("innet").HandlerPlugin;
20
20
  error: import("innet").HandlerPlugin;
21
- fallback: import("innet").HandlerPlugin;
22
21
  field: import("innet").HandlerPlugin;
23
22
  file: typeof file;
24
23
  header: import("innet").HandlerPlugin;
@@ -29,6 +28,7 @@ export declare const JSXPlugins: {
29
28
  number: import("innet").HandlerPlugin;
30
29
  object: import("innet").HandlerPlugin;
31
30
  param: import("innet").HandlerPlugin;
31
+ preset: typeof preset;
32
32
  prod: import("innet").HandlerPlugin;
33
33
  protection: typeof protection;
34
34
  proxy: import("innet").HandlerPlugin;
@@ -69,7 +69,6 @@ declare global {
69
69
  dts: DtsProps;
70
70
  endpoint: EndpointProps;
71
71
  error: ErrorProps;
72
- fallback: FallbackProps;
73
72
  field: FieldProps;
74
73
  file: FileProps;
75
74
  header: HeaderProps;
@@ -80,6 +79,7 @@ declare global {
80
79
  number: NumberProps;
81
80
  object: ObjectProps;
82
81
  param: ParamProps;
82
+ preset: PresetProps;
83
83
  prod: ProdProps;
84
84
  protection: ProtectionProps;
85
85
  proxy: ProxyProps;
@@ -16,7 +16,6 @@ import { dev } from '../plugins/utils/dev/dev.es6.js';
16
16
  import { dts } from '../plugins/utils/dts/dts.es6.js';
17
17
  import { endpoint } from '../plugins/main/endpoint/endpoint.es6.js';
18
18
  import { error } from '../plugins/request/error/error.es6.js';
19
- import { fallback } from '../plugins/main/fallback/fallback.es6.js';
20
19
  import { field } from '../plugins/schema/field/field.es6.js';
21
20
  import { file } from '../plugins/request/file/file.es6.js';
22
21
  import { header } from '../plugins/request/header/header.es6.js';
@@ -27,6 +26,7 @@ import { nullPlugin } from '../plugins/schema/null/null.es6.js';
27
26
  import { number } from '../plugins/schema/number/number.es6.js';
28
27
  import { object } from '../plugins/schema/object/object.es6.js';
29
28
  import { param } from '../plugins/main/param/param.es6.js';
29
+ import { preset } from '../plugins/main/preset/preset.es6.js';
30
30
  import { prod } from '../plugins/utils/prod/prod.es6.js';
31
31
  import { protection } from '../plugins/utils/protection/protection.es6.js';
32
32
  import { proxy } from '../plugins/request/proxy/proxy.es6.js';
@@ -63,7 +63,6 @@ const JSXPlugins = {
63
63
  dts,
64
64
  endpoint,
65
65
  error,
66
- fallback,
67
66
  field,
68
67
  file,
69
68
  header,
@@ -74,6 +73,7 @@ const JSXPlugins = {
74
73
  number,
75
74
  object,
76
75
  param,
76
+ preset,
77
77
  prod,
78
78
  protection,
79
79
  proxy,
@@ -20,7 +20,6 @@ var dev = require('../plugins/utils/dev/dev.js');
20
20
  var dts = require('../plugins/utils/dts/dts.js');
21
21
  var endpoint = require('../plugins/main/endpoint/endpoint.js');
22
22
  var error = require('../plugins/request/error/error.js');
23
- var fallback = require('../plugins/main/fallback/fallback.js');
24
23
  var field = require('../plugins/schema/field/field.js');
25
24
  var file = require('../plugins/request/file/file.js');
26
25
  var header = require('../plugins/request/header/header.js');
@@ -31,6 +30,7 @@ var _null = require('../plugins/schema/null/null.js');
31
30
  var number = require('../plugins/schema/number/number.js');
32
31
  var object = require('../plugins/schema/object/object.js');
33
32
  var param = require('../plugins/main/param/param.js');
33
+ var preset = require('../plugins/main/preset/preset.js');
34
34
  var prod = require('../plugins/utils/prod/prod.js');
35
35
  var protection = require('../plugins/utils/protection/protection.js');
36
36
  var proxy = require('../plugins/request/proxy/proxy.js');
@@ -67,7 +67,6 @@ const JSXPlugins = {
67
67
  dts: dts.dts,
68
68
  endpoint: endpoint.endpoint,
69
69
  error: error.error,
70
- fallback: fallback.fallback,
71
70
  field: field.field,
72
71
  file: file.file,
73
72
  header: header.header,
@@ -78,6 +77,7 @@ const JSXPlugins = {
78
77
  number: number.number,
79
78
  object: object.object,
80
79
  param: param.param,
80
+ preset: preset.preset,
81
81
  prod: prod.prod,
82
82
  protection: protection.protection,
83
83
  proxy: proxy.proxy,
package/hooks/index.d.ts CHANGED
@@ -23,5 +23,6 @@ export * from './useRule';
23
23
  export * from './useObjectRule';
24
24
  export * from './useBodyFile';
25
25
  export * from './usePath';
26
- export * from './useRequestPlugin';
26
+ export * from './useServerPlugin';
27
27
  export * from './useClientIp';
28
+ export * from './useServerPlugins';
@@ -23,5 +23,6 @@ import './useRule/index.es6.js';
23
23
  import './useObjectRule/index.es6.js';
24
24
  import './useBodyFile/index.es6.js';
25
25
  import './usePath/index.es6.js';
26
- import './useRequestPlugin/index.es6.js';
26
+ import './useServerPlugin/index.es6.js';
27
27
  import './useClientIp/index.es6.js';
28
+ import './useServerPlugins/index.es6.js';
package/hooks/index.js CHANGED
@@ -25,6 +25,7 @@ require('./useRule/index.js');
25
25
  require('./useObjectRule/index.js');
26
26
  require('./useBodyFile/index.js');
27
27
  require('./usePath/index.js');
28
- require('./useRequestPlugin/index.js');
28
+ require('./useServerPlugin/index.js');
29
29
  require('./useClientIp/index.js');
30
+ require('./useServerPlugins/index.js');
30
31
 
@@ -6,7 +6,7 @@ const actionContext = new Context();
6
6
  function useAction() {
7
7
  const action = useContext(actionContext);
8
8
  if (!action) {
9
- useThrow('<{type}> MUST be in <request> or <fallback>');
9
+ useThrow('<{type}> MUST be in <request>, <preset> or <fallback>');
10
10
  }
11
11
  return action;
12
12
  }
@@ -10,7 +10,7 @@ const actionContext = new jsx.Context();
10
10
  function useAction() {
11
11
  const action = jsx.useContext(actionContext);
12
12
  if (!action) {
13
- useThrow.useThrow('<{type}> MUST be in <request> or <fallback>');
13
+ useThrow.useThrow('<{type}> MUST be in <request>, <preset> or <fallback>');
14
14
  }
15
15
  return action;
16
16
  }
@@ -1,12 +1,10 @@
1
1
  import { Context } from '@innet/jsx';
2
- import { type Document, type Endpoints, type Fallback, type RequestPlugin } from '../../types';
2
+ import { type Document, type Endpoints } from '../../types';
3
3
  import { type Rule } from '../../utils';
4
4
  export interface ApiContext {
5
5
  docs: Document;
6
6
  endpoints: Endpoints;
7
7
  prefix: string;
8
- requestPlugins: Set<RequestPlugin>;
9
- fallback?: Fallback;
10
8
  refRules: Record<string, Rule>;
11
9
  }
12
10
  export declare const apiContext: Context<ApiContext, ApiContext | undefined>;
@@ -1,10 +1,12 @@
1
1
  import { Context, useContext } from '@innet/jsx';
2
+ import '../useThrow/index.es6.js';
3
+ import { useThrow } from '../useThrow/useThrow.es6.js';
2
4
 
3
5
  const endpointContext = new Context();
4
6
  function useEndpoint() {
5
7
  const endpoint = useContext(endpointContext);
6
8
  if (!endpoint) {
7
- throw Error('useEndpoint MUST be used in <endpoint>');
9
+ useThrow('Use <{type}> in <endpoint>');
8
10
  }
9
11
  return endpoint;
10
12
  }
@@ -3,12 +3,14 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsx = require('@innet/jsx');
6
+ require('../useThrow/index.js');
7
+ var useThrow = require('../useThrow/useThrow.js');
6
8
 
7
9
  const endpointContext = new jsx.Context();
8
10
  function useEndpoint() {
9
11
  const endpoint = jsx.useContext(endpointContext);
10
12
  if (!endpoint) {
11
- throw Error('useEndpoint MUST be used in <endpoint>');
13
+ useThrow.useThrow('Use <{type}> in <endpoint>');
12
14
  }
13
15
  return endpoint;
14
16
  }
@@ -1 +1 @@
1
- export { requestContext, useRequest } from './useRequest.es6.js';
1
+ export { useRequest } from './useRequest.es6.js';
@@ -6,5 +6,4 @@ var useRequest = require('./useRequest.js');
6
6
 
7
7
 
8
8
 
9
- exports.requestContext = useRequest.requestContext;
10
9
  exports.useRequest = useRequest.useRequest;
@@ -1,5 +1,2 @@
1
1
  /// <reference types="node" />
2
- import { Context } from '@innet/jsx';
3
- import { type IncomingMessage } from 'http';
4
- export declare const requestContext: Context<IncomingMessage, IncomingMessage | undefined>;
5
- export declare function useRequest(): IncomingMessage | undefined;
2
+ export declare function useRequest(): import("http").IncomingMessage;
@@ -1,8 +1,8 @@
1
- import { Context, useContext } from '@innet/jsx';
1
+ import '../useAction/index.es6.js';
2
+ import { useAction } from '../useAction/useAction.es6.js';
2
3
 
3
- const requestContext = new Context();
4
4
  function useRequest() {
5
- return useContext(requestContext);
5
+ return useAction().req;
6
6
  }
7
7
 
8
- export { requestContext, useRequest };
8
+ export { useRequest };
@@ -2,12 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var jsx = require('@innet/jsx');
5
+ require('../useAction/index.js');
6
+ var useAction = require('../useAction/useAction.js');
6
7
 
7
- const requestContext = new jsx.Context();
8
8
  function useRequest() {
9
- return jsx.useContext(requestContext);
9
+ return useAction.useAction().req;
10
10
  }
11
11
 
12
- exports.requestContext = requestContext;
13
12
  exports.useRequest = useRequest;
@@ -1 +1 @@
1
- export { responseContext, useResponse } from './useResponse.es6.js';
1
+ export { useResponse } from './useResponse.es6.js';
@@ -6,5 +6,4 @@ var useResponse = require('./useResponse.js');
6
6
 
7
7
 
8
8
 
9
- exports.responseContext = useResponse.responseContext;
10
9
  exports.useResponse = useResponse.useResponse;
@@ -1,5 +1,2 @@
1
1
  /// <reference types="node" />
2
- import { Context } from '@innet/jsx';
3
- import { type ServerResponse } from 'http';
4
- export declare const responseContext: Context<ServerResponse<import("http").IncomingMessage>, ServerResponse<import("http").IncomingMessage> | undefined>;
5
- export declare function useResponse(): ServerResponse<import("http").IncomingMessage> | undefined;
2
+ export declare function useResponse(): import("http").ServerResponse<import("http").IncomingMessage>;
@@ -1,8 +1,8 @@
1
- import { Context, useContext } from '@innet/jsx';
1
+ import '../useAction/index.es6.js';
2
+ import { useAction } from '../useAction/useAction.es6.js';
2
3
 
3
- const responseContext = new Context();
4
4
  function useResponse() {
5
- return useContext(responseContext);
5
+ return useAction().res;
6
6
  }
7
7
 
8
- export { responseContext, useResponse };
8
+ export { useResponse };
@@ -2,12 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var jsx = require('@innet/jsx');
5
+ require('../useAction/index.js');
6
+ var useAction = require('../useAction/useAction.js');
6
7
 
7
- const responseContext = new jsx.Context();
8
8
  function useResponse() {
9
- return jsx.useContext(responseContext);
9
+ return useAction.useAction().res;
10
10
  }
11
11
 
12
- exports.responseContext = responseContext;
13
12
  exports.useResponse = useResponse;
@@ -3,6 +3,7 @@
3
3
  import { Context } from '@innet/jsx';
4
4
  import { type Server as HttpServer } from 'http';
5
5
  import { type Server as HttpsServer } from 'https';
6
+ export type ServerPlugin = () => any;
6
7
  export interface ServerContext {
7
8
  server: HttpServer | HttpsServer;
8
9
  port: number;
@@ -1,10 +1,12 @@
1
1
  import { Context, useContext } from '@innet/jsx';
2
+ import '../useThrow/index.es6.js';
3
+ import { useThrow } from '../useThrow/useThrow.es6.js';
2
4
 
3
5
  const serverContext = new Context();
4
6
  function useServer() {
5
7
  const server = useContext(serverContext);
6
8
  if (!server) {
7
- throw Error('Use `useServer` in <server>');
9
+ useThrow('Use <{type}> in <server>');
8
10
  }
9
11
  return server;
10
12
  }
@@ -3,12 +3,14 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var jsx = require('@innet/jsx');
6
+ require('../useThrow/index.js');
7
+ var useThrow = require('../useThrow/useThrow.js');
6
8
 
7
9
  const serverContext = new jsx.Context();
8
10
  function useServer() {
9
11
  const server = jsx.useContext(serverContext);
10
12
  if (!server) {
11
- throw Error('Use `useServer` in <server>');
13
+ useThrow.useThrow('Use <{type}> in <server>');
12
14
  }
13
15
  return server;
14
16
  }
@@ -0,0 +1 @@
1
+ export * from './useServerPlugin';
@@ -0,0 +1 @@
1
+ export { useServerPlugin } from './useServerPlugin.es6.js';
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var useServerPlugin = require('./useServerPlugin.js');
6
+
7
+
8
+
9
+ exports.useServerPlugin = useServerPlugin.useServerPlugin;
@@ -0,0 +1,2 @@
1
+ import { type ServerPlugin } from '../useServer';
2
+ export declare function useServerPlugin(listener: ServerPlugin): void;
@@ -0,0 +1,13 @@
1
+ import { onDestroy } from 'watch-state';
2
+ import '../useServerPlugins/index.es6.js';
3
+ import { useServerPlugins } from '../useServerPlugins/useServerPlugins.es6.js';
4
+
5
+ function useServerPlugin(listener) {
6
+ const requests = useServerPlugins();
7
+ requests.add(listener);
8
+ onDestroy(() => {
9
+ requests.delete(listener);
10
+ });
11
+ }
12
+
13
+ export { useServerPlugin };
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var watchState = require('watch-state');
6
+ require('../useServerPlugins/index.js');
7
+ var useServerPlugins = require('../useServerPlugins/useServerPlugins.js');
8
+
9
+ function useServerPlugin(listener) {
10
+ const requests = useServerPlugins.useServerPlugins();
11
+ requests.add(listener);
12
+ watchState.onDestroy(() => {
13
+ requests.delete(listener);
14
+ });
15
+ }
16
+
17
+ exports.useServerPlugin = useServerPlugin;
@@ -0,0 +1 @@
1
+ export * from './useServerPlugins';
@@ -0,0 +1 @@
1
+ export { serverPlugins, useServerPlugins } from './useServerPlugins.es6.js';
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var useServerPlugins = require('./useServerPlugins.js');
6
+
7
+
8
+
9
+ exports.serverPlugins = useServerPlugins.serverPlugins;
10
+ exports.useServerPlugins = useServerPlugins.useServerPlugins;
@@ -0,0 +1,4 @@
1
+ import { Context } from '@innet/jsx';
2
+ import { type ServerPlugin } from '../useServer';
3
+ export declare const serverPlugins: Context<Set<ServerPlugin>, Set<ServerPlugin> | undefined>;
4
+ export declare function useServerPlugins(): Set<ServerPlugin>;
@@ -0,0 +1,14 @@
1
+ import { Context, useContext } from '@innet/jsx';
2
+ import '../useThrow/index.es6.js';
3
+ import { useThrow } from '../useThrow/useThrow.es6.js';
4
+
5
+ const serverPlugins = new Context();
6
+ function useServerPlugins() {
7
+ const plugins = useContext(serverPlugins);
8
+ if (!plugins) {
9
+ useThrow('Use <{type}> in <server>');
10
+ }
11
+ return plugins;
12
+ }
13
+
14
+ export { serverPlugins, useServerPlugins };
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsx = require('@innet/jsx');
6
+ require('../useThrow/index.js');
7
+ var useThrow = require('../useThrow/useThrow.js');
8
+
9
+ const serverPlugins = new jsx.Context();
10
+ function useServerPlugins() {
11
+ const plugins = jsx.useContext(serverPlugins);
12
+ if (!plugins) {
13
+ useThrow.useThrow('Use <{type}> in <server>');
14
+ }
15
+ return plugins;
16
+ }
17
+
18
+ exports.serverPlugins = serverPlugins;
19
+ exports.useServerPlugins = useServerPlugins;
package/index.es6.js CHANGED
@@ -16,7 +16,7 @@ export { response, statuses } from './plugins/main/response/response.es6.js';
16
16
  export { request } from './plugins/main/request/request.es6.js';
17
17
  export { param } from './plugins/main/param/param.es6.js';
18
18
  export { body } from './plugins/main/body/body.es6.js';
19
- export { fallback } from './plugins/main/fallback/fallback.es6.js';
19
+ export { preset } from './plugins/main/preset/preset.es6.js';
20
20
  export { object } from './plugins/schema/object/object.es6.js';
21
21
  export { field } from './plugins/schema/field/field.es6.js';
22
22
  export { number } from './plugins/schema/number/number.es6.js';
@@ -94,8 +94,8 @@ export { useOneElementError } from './hooks/useOneElementError/useOneElementErro
94
94
  export { schemaContext, useSchemaContext } from './hooks/useSchemaContext/useSchemaContext.es6.js';
95
95
  export { useSchemaType } from './hooks/useSchemaType/useSchemaType.es6.js';
96
96
  export { useNewSchema } from './hooks/useNewSchema/useNewSchema.es6.js';
97
- export { requestContext, useRequest } from './hooks/useRequest/useRequest.es6.js';
98
- export { responseContext, useResponse } from './hooks/useResponse/useResponse.es6.js';
97
+ export { useRequest } from './hooks/useRequest/useRequest.es6.js';
98
+ export { useResponse } from './hooks/useResponse/useResponse.es6.js';
99
99
  export { paramsContext, useParams } from './hooks/useParams/useParams.es6.js';
100
100
  export { useBody } from './hooks/useBody/useBody.es6.js';
101
101
  export { useSearch } from './hooks/useSearch/useSearch.es6.js';
@@ -110,5 +110,6 @@ export { ruleContext, useRule, useSetRule } from './hooks/useRule/useRule.es6.js
110
110
  export { objectRuleContext, useObjectRule } from './hooks/useObjectRule/useObjectRule.es6.js';
111
111
  export { bodyFileContext, useBodyFile } from './hooks/useBodyFile/useBodyFile.es6.js';
112
112
  export { usePath } from './hooks/usePath/usePath.es6.js';
113
- export { useRequestPlugin } from './hooks/useRequestPlugin/useRequestPlugin.es6.js';
113
+ export { useServerPlugin } from './hooks/useServerPlugin/useServerPlugin.es6.js';
114
114
  export { useClientIp } from './hooks/useClientIp/useClientIp.es6.js';
115
+ export { serverPlugins, useServerPlugins } from './hooks/useServerPlugins/useServerPlugins.es6.js';
package/index.js CHANGED
@@ -20,7 +20,7 @@ var response = require('./plugins/main/response/response.js');
20
20
  var request = require('./plugins/main/request/request.js');
21
21
  var param = require('./plugins/main/param/param.js');
22
22
  var body = require('./plugins/main/body/body.js');
23
- var fallback = require('./plugins/main/fallback/fallback.js');
23
+ var preset = require('./plugins/main/preset/preset.js');
24
24
  var object = require('./plugins/schema/object/object.js');
25
25
  var field = require('./plugins/schema/field/field.js');
26
26
  var number = require('./plugins/schema/number/number.js');
@@ -114,8 +114,9 @@ var useRule = require('./hooks/useRule/useRule.js');
114
114
  var useObjectRule = require('./hooks/useObjectRule/useObjectRule.js');
115
115
  var useBodyFile = require('./hooks/useBodyFile/useBodyFile.js');
116
116
  var usePath = require('./hooks/usePath/usePath.js');
117
- var useRequestPlugin = require('./hooks/useRequestPlugin/useRequestPlugin.js');
117
+ var useServerPlugin = require('./hooks/useServerPlugin/useServerPlugin.js');
118
118
  var useClientIp = require('./hooks/useClientIp/useClientIp.js');
119
+ var useServerPlugins = require('./hooks/useServerPlugins/useServerPlugins.js');
119
120
 
120
121
 
121
122
 
@@ -139,7 +140,7 @@ exports.statuses = response.statuses;
139
140
  exports.request = request.request;
140
141
  exports.param = param.param;
141
142
  exports.body = body.body;
142
- exports.fallback = fallback.fallback;
143
+ exports.preset = preset.preset;
143
144
  exports.object = object.object;
144
145
  exports.field = field.field;
145
146
  exports.number = number.number;
@@ -229,9 +230,7 @@ exports.schemaContext = useSchemaContext.schemaContext;
229
230
  exports.useSchemaContext = useSchemaContext.useSchemaContext;
230
231
  exports.useSchemaType = useSchemaType.useSchemaType;
231
232
  exports.useNewSchema = useNewSchema.useNewSchema;
232
- exports.requestContext = useRequest.requestContext;
233
233
  exports.useRequest = useRequest.useRequest;
234
- exports.responseContext = useResponse.responseContext;
235
234
  exports.useResponse = useResponse.useResponse;
236
235
  exports.paramsContext = useParams.paramsContext;
237
236
  exports.useParams = useParams.useParams;
@@ -255,5 +254,7 @@ exports.useObjectRule = useObjectRule.useObjectRule;
255
254
  exports.bodyFileContext = useBodyFile.bodyFileContext;
256
255
  exports.useBodyFile = useBodyFile.useBodyFile;
257
256
  exports.usePath = usePath.usePath;
258
- exports.useRequestPlugin = useRequestPlugin.useRequestPlugin;
257
+ exports.useServerPlugin = useServerPlugin.useServerPlugin;
259
258
  exports.useClientIp = useClientIp.useClientIp;
259
+ exports.serverPlugins = useServerPlugins.serverPlugins;
260
+ exports.useServerPlugins = useServerPlugins.useServerPlugins;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@innet/server",
3
- "version": "2.0.0-alpha.12",
3
+ "version": "2.0.0-alpha.14",
4
4
  "description": "Create server-side application with innet",
5
5
  "main": "index.js",
6
6
  "module": "index.es6.js",
@@ -18,5 +18,7 @@ export interface ApiProps {
18
18
  termsOfService?: string;
19
19
  /** URL path prefix scopes the API. */
20
20
  prefix?: string;
21
+ include?: RegExp;
22
+ exclude?: RegExp;
21
23
  }
22
24
  export declare const api: HandlerPlugin;