@toa.io/extensions.exposition 1.0.0-alpha.3 → 1.0.0-alpha.5

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 (187) hide show
  1. package/components/identity.bans/manifest.toa.yaml +1 -0
  2. package/components/identity.basic/manifest.toa.yaml +1 -0
  3. package/components/identity.basic/operations/tsconfig.tsbuildinfo +1 -1
  4. package/components/identity.federation/manifest.toa.yaml +1 -0
  5. package/components/identity.federation/operations/tsconfig.tsbuildinfo +1 -1
  6. package/components/identity.roles/manifest.toa.yaml +1 -0
  7. package/components/identity.roles/operations/tsconfig.tsbuildinfo +1 -1
  8. package/components/identity.tokens/manifest.toa.yaml +1 -0
  9. package/components/identity.tokens/operations/tsconfig.tsbuildinfo +1 -1
  10. package/components/octets.storage/manifest.toa.yaml +1 -0
  11. package/components/octets.storage/operations/store.js +1 -1
  12. package/documentation/components.md +5 -5
  13. package/documentation/query.md +45 -2
  14. package/features/body.feature +1 -1
  15. package/features/cors.feature +2 -2
  16. package/features/errors.feature +1 -1
  17. package/features/etag.feature +96 -0
  18. package/features/octets.entries.feature +1 -1
  19. package/features/steps/Gateway.ts +3 -0
  20. package/features/steps/components/echo/manifest.toa.yaml +1 -0
  21. package/features/steps/components/greeter/manifest.toa.yaml +1 -0
  22. package/features/steps/components/octets.tester/manifest.toa.yaml +1 -0
  23. package/features/steps/components/pots/manifest.toa.yaml +10 -3
  24. package/features/steps/components/sequences/manifest.toa.yaml +1 -0
  25. package/features/timing.feature +43 -0
  26. package/package.json +7 -10
  27. package/readme.md +7 -6
  28. package/schemas/annotation.cos.yaml +1 -0
  29. package/schemas/querystring.cos.yaml +1 -0
  30. package/source/Annotation.ts +1 -0
  31. package/source/Context.ts +6 -4
  32. package/source/Directive.test.ts +7 -7
  33. package/source/Directive.ts +16 -42
  34. package/source/Endpoint.ts +55 -6
  35. package/source/Factory.ts +17 -7
  36. package/source/Gateway.ts +38 -50
  37. package/source/HTTP/Context.ts +67 -0
  38. package/source/HTTP/Server.test.ts +1 -1
  39. package/source/HTTP/Server.ts +60 -95
  40. package/source/HTTP/Timing.ts +40 -0
  41. package/source/HTTP/index.ts +1 -0
  42. package/source/HTTP/messages.test.ts +27 -8
  43. package/source/HTTP/messages.ts +32 -48
  44. package/source/Mapping.ts +7 -8
  45. package/source/RTD/Context.ts +7 -10
  46. package/source/RTD/Directives.ts +28 -4
  47. package/source/RTD/Endpoint.ts +6 -4
  48. package/source/RTD/Match.ts +2 -7
  49. package/source/RTD/Method.ts +7 -13
  50. package/source/RTD/Node.ts +13 -14
  51. package/source/RTD/Tree.ts +17 -16
  52. package/source/RTD/factory.ts +2 -5
  53. package/source/deployment.ts +6 -0
  54. package/source/directives/auth/Anonymous.ts +3 -2
  55. package/source/directives/auth/Authorization.ts +7 -6
  56. package/source/directives/auth/Incept.ts +11 -6
  57. package/source/directives/auth/Role.ts +5 -3
  58. package/source/directives/auth/Scheme.ts +2 -2
  59. package/source/directives/cache/Cache.ts +4 -4
  60. package/source/directives/cache/Control.ts +5 -5
  61. package/source/directives/cache/types.ts +1 -1
  62. package/source/directives/cors/CORS.ts +18 -10
  63. package/source/directives/dev/Development.ts +3 -3
  64. package/source/directives/index.ts +2 -2
  65. package/source/directives/octets/Context.ts +1 -1
  66. package/source/directives/octets/Delete.ts +19 -9
  67. package/source/directives/octets/Fetch.ts +29 -14
  68. package/source/directives/octets/List.ts +14 -6
  69. package/source/directives/octets/Octets.ts +6 -5
  70. package/source/directives/octets/Permute.ts +12 -6
  71. package/source/directives/octets/Store.ts +25 -17
  72. package/source/directives/octets/Workflow.ts +3 -3
  73. package/source/directives/octets/workflows/Workflow.ts +2 -2
  74. package/source/directives/vary/Vary.ts +3 -3
  75. package/source/directives/vary/embeddings/Header.ts +2 -2
  76. package/source/directives/vary/embeddings/Language.ts +2 -2
  77. package/source/io.ts +2 -2
  78. package/transpiled/Annotation.d.ts +1 -0
  79. package/transpiled/Context.d.ts +6 -4
  80. package/transpiled/Directive.d.ts +8 -21
  81. package/transpiled/Directive.js +8 -11
  82. package/transpiled/Directive.js.map +1 -1
  83. package/transpiled/Endpoint.d.ts +7 -5
  84. package/transpiled/Endpoint.js +60 -2
  85. package/transpiled/Endpoint.js.map +1 -1
  86. package/transpiled/Factory.js +8 -2
  87. package/transpiled/Factory.js.map +1 -1
  88. package/transpiled/Gateway.d.ts +4 -8
  89. package/transpiled/Gateway.js +22 -32
  90. package/transpiled/Gateway.js.map +1 -1
  91. package/transpiled/HTTP/Context.d.ts +24 -0
  92. package/transpiled/HTTP/Context.js +47 -0
  93. package/transpiled/HTTP/Context.js.map +1 -0
  94. package/transpiled/HTTP/Server.d.ts +8 -7
  95. package/transpiled/HTTP/Server.js +68 -76
  96. package/transpiled/HTTP/Server.js.map +1 -1
  97. package/transpiled/HTTP/Timing.d.ts +10 -0
  98. package/transpiled/HTTP/Timing.js +29 -0
  99. package/transpiled/HTTP/Timing.js.map +1 -0
  100. package/transpiled/HTTP/index.d.ts +1 -0
  101. package/transpiled/HTTP/index.js +1 -0
  102. package/transpiled/HTTP/index.js.map +1 -1
  103. package/transpiled/HTTP/messages.d.ts +7 -21
  104. package/transpiled/HTTP/messages.js +24 -26
  105. package/transpiled/HTTP/messages.js.map +1 -1
  106. package/transpiled/Mapping.js +7 -7
  107. package/transpiled/Mapping.js.map +1 -1
  108. package/transpiled/RTD/Context.d.ts +7 -6
  109. package/transpiled/RTD/Directives.d.ts +19 -4
  110. package/transpiled/RTD/Endpoint.d.ts +6 -4
  111. package/transpiled/RTD/Match.d.ts +2 -4
  112. package/transpiled/RTD/Method.d.ts +7 -7
  113. package/transpiled/RTD/Method.js.map +1 -1
  114. package/transpiled/RTD/Node.d.ts +4 -6
  115. package/transpiled/RTD/Node.js +2 -1
  116. package/transpiled/RTD/Node.js.map +1 -1
  117. package/transpiled/RTD/Tree.d.ts +6 -6
  118. package/transpiled/RTD/Tree.js +4 -1
  119. package/transpiled/RTD/Tree.js.map +1 -1
  120. package/transpiled/RTD/factory.d.ts +2 -4
  121. package/transpiled/RTD/factory.js.map +1 -1
  122. package/transpiled/deployment.js +5 -0
  123. package/transpiled/deployment.js.map +1 -1
  124. package/transpiled/directives/auth/Anonymous.js +3 -4
  125. package/transpiled/directives/auth/Anonymous.js.map +1 -1
  126. package/transpiled/directives/auth/Authorization.d.ts +2 -3
  127. package/transpiled/directives/auth/Authorization.js +1 -1
  128. package/transpiled/directives/auth/Authorization.js.map +1 -1
  129. package/transpiled/directives/auth/Incept.d.ts +1 -1
  130. package/transpiled/directives/auth/Incept.js +11 -6
  131. package/transpiled/directives/auth/Incept.js.map +1 -1
  132. package/transpiled/directives/auth/Role.js +5 -3
  133. package/transpiled/directives/auth/Role.js.map +1 -1
  134. package/transpiled/directives/auth/Scheme.js +2 -2
  135. package/transpiled/directives/auth/Scheme.js.map +1 -1
  136. package/transpiled/directives/cache/Cache.d.ts +3 -3
  137. package/transpiled/directives/cache/Cache.js +2 -2
  138. package/transpiled/directives/cache/Cache.js.map +1 -1
  139. package/transpiled/directives/cache/Control.d.ts +3 -3
  140. package/transpiled/directives/cache/Control.js +3 -3
  141. package/transpiled/directives/cache/Control.js.map +1 -1
  142. package/transpiled/directives/cache/types.d.ts +1 -1
  143. package/transpiled/directives/cors/CORS.d.ts +2 -3
  144. package/transpiled/directives/cors/CORS.js +17 -10
  145. package/transpiled/directives/cors/CORS.js.map +1 -1
  146. package/transpiled/directives/dev/Development.d.ts +3 -3
  147. package/transpiled/directives/dev/Development.js.map +1 -1
  148. package/transpiled/directives/index.d.ts +2 -2
  149. package/transpiled/directives/index.js.map +1 -1
  150. package/transpiled/directives/octets/Context.d.ts +1 -1
  151. package/transpiled/directives/octets/Context.js.map +1 -1
  152. package/transpiled/directives/octets/Delete.d.ts +1 -1
  153. package/transpiled/directives/octets/Delete.js +19 -9
  154. package/transpiled/directives/octets/Delete.js.map +1 -1
  155. package/transpiled/directives/octets/Fetch.d.ts +1 -1
  156. package/transpiled/directives/octets/Fetch.js +28 -14
  157. package/transpiled/directives/octets/Fetch.js.map +1 -1
  158. package/transpiled/directives/octets/List.d.ts +1 -1
  159. package/transpiled/directives/octets/List.js +13 -6
  160. package/transpiled/directives/octets/List.js.map +1 -1
  161. package/transpiled/directives/octets/Octets.d.ts +2 -3
  162. package/transpiled/directives/octets/Octets.js +4 -2
  163. package/transpiled/directives/octets/Octets.js.map +1 -1
  164. package/transpiled/directives/octets/Permute.d.ts +1 -1
  165. package/transpiled/directives/octets/Permute.js +11 -6
  166. package/transpiled/directives/octets/Permute.js.map +1 -1
  167. package/transpiled/directives/octets/Store.d.ts +1 -1
  168. package/transpiled/directives/octets/Store.js +17 -12
  169. package/transpiled/directives/octets/Store.js.map +1 -1
  170. package/transpiled/directives/octets/Workflow.d.ts +1 -1
  171. package/transpiled/directives/octets/Workflow.js +3 -3
  172. package/transpiled/directives/octets/Workflow.js.map +1 -1
  173. package/transpiled/directives/octets/workflows/Workflow.d.ts +1 -1
  174. package/transpiled/directives/octets/workflows/Workflow.js +2 -2
  175. package/transpiled/directives/octets/workflows/Workflow.js.map +1 -1
  176. package/transpiled/directives/vary/Vary.d.ts +2 -2
  177. package/transpiled/directives/vary/Vary.js +1 -1
  178. package/transpiled/directives/vary/embeddings/Header.js +2 -2
  179. package/transpiled/directives/vary/embeddings/Header.js.map +1 -1
  180. package/transpiled/directives/vary/embeddings/Language.js +2 -2
  181. package/transpiled/directives/vary/embeddings/Language.js.map +1 -1
  182. package/transpiled/io.d.ts +2 -2
  183. package/transpiled/tsconfig.tsbuildinfo +1 -1
  184. package/source/HTTP/Server.fixtures.ts +0 -40
  185. package/transpiled/HTTP/Server.fixtures.d.ts +0 -10
  186. package/transpiled/HTTP/Server.fixtures.js +0 -31
  187. package/transpiled/HTTP/Server.fixtures.js.map +0 -1
@@ -8,10 +8,10 @@ class Control {
8
8
  constructor(value) {
9
9
  this.value = value;
10
10
  }
11
- set(request, headers) {
12
- if (!['GET', 'HEAD', 'OPTIONS'].includes(request.method))
11
+ set(context, headers) {
12
+ if (!['GET', 'HEAD', 'OPTIONS'].includes(context.request.method))
13
13
  return;
14
- this.cache ??= this.resolve(request);
14
+ this.cache ??= this.resolve(context);
15
15
  headers.set('cache-control', this.cache);
16
16
  }
17
17
  resolve(request) {
@@ -1 +1 @@
1
- {"version":3,"file":"Control.js","sourceRoot":"","sources":["../../../source/directives/cache/Control.ts"],"names":[],"mappings":";;;AAAA,yCAAiC;AAGjC,MAAa,OAAO;IACC,KAAK,CAAQ;IACxB,KAAK,GAAkB,IAAI,CAAA;IAEnC,YAAoB,KAAa;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAEM,GAAG,CAAE,OAA6B,EAAE,OAAgB;QACzD,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC;YACtD,OAAM;QAER,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAEpC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1C,CAAC;IAES,OAAO,CAAE,OAA6B;QAC9C,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI;YAC3B,OAAO,IAAI,CAAC,KAAK,CAAA;QAEnB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;QAE9B,IAAI,CAAC,UAAU,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,KAAK,MAAM;YAC/C,OAAO,YAAY,GAAG,IAAI,CAAC,KAAK,CAAA;QAElC,IAAI,CAAC,UAAU,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC;YACzC,OAAO,WAAW,GAAG,IAAI,CAAC,KAAK,CAAA;QAEjC,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;IAEO,IAAI;QACV,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;QAElD,IAAI,UAAU,KAAK,IAAI;YACrB,OAAO,CAAC,CAAA;QAEV,IAAI,IAAI,GAAG,CAAC,CAAA;QAEZ,KAAK,MAAM,SAAS,IAAI,UAAU;YAChC,IAAI,IAAI,IAAA,iBAAK,EAAS,SAAS,EAC7B,SAAS,EAAE,OAAO,EAClB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,QAAQ,EACpB,CAAC,CAAC,CAAA;QAEN,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAjDD,0BAiDC;AAED,MAAM,aAAa,GAAG,iCAAiC,CAAA;AAEvD,MAAM,MAAM,GAAG,CAAC,CAAA;AAChB,MAAM,OAAO,GAAG,CAAC,CAAA;AACjB,MAAM,QAAQ,GAAG,CAAC,CAAA"}
1
+ {"version":3,"file":"Control.js","sourceRoot":"","sources":["../../../source/directives/cache/Control.ts"],"names":[],"mappings":";;;AAAA,yCAAiC;AAGjC,MAAa,OAAO;IACC,KAAK,CAAQ;IACxB,KAAK,GAAkB,IAAI,CAAA;IAEnC,YAAoB,KAAa;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAEM,GAAG,CAAE,OAA6B,EAAE,OAAgB;QACzD,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;YAC9D,OAAM;QAER,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAEpC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1C,CAAC;IAES,OAAO,CAAE,OAA6B;QAC9C,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI;YAC3B,OAAO,IAAI,CAAC,KAAK,CAAA;QAEnB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;QAE9B,IAAI,CAAC,UAAU,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,KAAK,MAAM;YAC/C,OAAO,YAAY,GAAG,IAAI,CAAC,KAAK,CAAA;QAElC,IAAI,CAAC,UAAU,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC;YACzC,OAAO,WAAW,GAAG,IAAI,CAAC,KAAK,CAAA;QAEjC,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;IAEO,IAAI;QACV,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;QAElD,IAAI,UAAU,KAAK,IAAI;YACrB,OAAO,CAAC,CAAA;QAEV,IAAI,IAAI,GAAG,CAAC,CAAA;QAEZ,KAAK,MAAM,SAAS,IAAI,UAAU;YAChC,IAAI,IAAI,IAAA,iBAAK,EAAS,SAAS,EAC7B,SAAS,EAAE,OAAO,EAClB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,QAAQ,EACpB,CAAC,CAAC,CAAA;QAEN,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAjDD,0BAiDC;AAED,MAAM,aAAa,GAAG,iCAAiC,CAAA;AAEvD,MAAM,MAAM,GAAG,CAAC,CAAA;AAChB,MAAM,OAAO,GAAG,CAAC,CAAA;AACjB,MAAM,QAAQ,GAAG,CAAC,CAAA"}
@@ -2,6 +2,6 @@ import type { Input } from '../../io';
2
2
  export interface Directive {
3
3
  set: (input: Input, headers: Headers) => void;
4
4
  }
5
- export interface AuthenticatedRequest extends Input {
5
+ export interface AuthenticatedContext extends Input {
6
6
  identity?: unknown | null;
7
7
  }
@@ -2,10 +2,9 @@ import type { Input, Output } from '../../io';
2
2
  import type { Interceptor } from '../../Interception';
3
3
  export declare class CORS implements Interceptor {
4
4
  readonly name = "cors";
5
- readonly mandatory = true;
6
- private readonly allowedHeaders;
5
+ private readonly requestHeaders;
7
6
  private readonly headers;
8
7
  intercept(input: Input): Output;
9
- allowHeader(header: string): void;
8
+ allow(header: string): void;
10
9
  private preflightResponse;
11
10
  }
@@ -3,34 +3,41 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CORS = void 0;
4
4
  class CORS {
5
5
  name = 'cors';
6
- mandatory = true;
7
- allowedHeaders = new Set(['accept', 'authorization', 'content-type']);
6
+ requestHeaders = new Set([
7
+ 'accept',
8
+ 'authorization',
9
+ 'content-type',
10
+ 'etag',
11
+ 'if-match',
12
+ 'if-none-match'
13
+ ]);
8
14
  headers = new Headers({
9
15
  'access-control-allow-methods': 'GET, POST, PUT, PATCH, DELETE',
10
16
  'access-control-allow-credentials': 'true',
11
- 'access-control-allow-headers': Array.from(this.allowedHeaders).join(', '),
17
+ 'access-control-allow-headers': Array.from(this.requestHeaders).join(', '),
12
18
  'access-control-max-age': '3600',
13
- 'cache-control': 'public, max-age=3600',
19
+ 'cache-control': 'max-age=3600',
14
20
  vary: 'origin'
15
21
  });
16
22
  intercept(input) {
17
- const origin = input.headers.origin;
23
+ const origin = input.request.headers.origin;
18
24
  if (origin === undefined)
19
25
  return null;
20
- if (input.method === 'OPTIONS')
26
+ if (input.request.method === 'OPTIONS')
21
27
  return this.preflightResponse(origin);
22
28
  input.pipelines.response.push((output) => {
23
29
  output.headers ??= new Headers();
24
30
  output.headers.set('access-control-allow-origin', origin);
25
31
  output.headers.set('access-control-expose-headers', 'authorization, content-type, content-length, etag');
26
- if (input.method === 'GET' || input.method === 'HEAD' || input.method === 'OPTIONS')
32
+ const method = input.request.method;
33
+ if (method === 'GET' || method === 'HEAD' || method === 'OPTIONS')
27
34
  output.headers.append('vary', 'origin');
28
35
  });
29
36
  return null;
30
37
  }
31
- allowHeader(header) {
32
- this.allowedHeaders.add(header.toLowerCase());
33
- this.headers.set('access-control-allow-headers', Array.from(this.allowedHeaders).join(', '));
38
+ allow(header) {
39
+ this.requestHeaders.add(header.toLowerCase());
40
+ this.headers.set('access-control-allow-headers', Array.from(this.requestHeaders).join(', '));
34
41
  }
35
42
  preflightResponse(origin) {
36
43
  this.headers.set('access-control-allow-origin', origin);
@@ -1 +1 @@
1
- {"version":3,"file":"CORS.js","sourceRoot":"","sources":["../../../source/directives/cors/CORS.ts"],"names":[],"mappings":";;;AAGA,MAAa,IAAI;IACC,IAAI,GAAG,MAAM,CAAA;IACb,SAAS,GAAG,IAAI,CAAA;IAEf,cAAc,GAAG,IAAI,GAAG,CAAS,CAAC,QAAQ,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC,CAAA;IAE7E,OAAO,GAAG,IAAI,OAAO,CAAC;QACrC,8BAA8B,EAAE,+BAA+B;QAC/D,kCAAkC,EAAE,MAAM;QAC1C,8BAA8B,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC1E,wBAAwB,EAAE,MAAM;QAChC,eAAe,EAAE,sBAAsB;QACvC,IAAI,EAAE,QAAQ;KACf,CAAC,CAAA;IAEK,SAAS,CAAE,KAAY;QAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAA;QAEnC,IAAI,MAAM,KAAK,SAAS;YACtB,OAAO,IAAI,CAAA;QAEb,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;YAC5B,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAEvC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACvC,MAAM,CAAC,OAAO,KAAK,IAAI,OAAO,EAAE,CAAA;YAChC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,MAAM,CAAC,CAAA;YACzD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAChD,mDAAmD,CAAC,CAAA;YAEtD,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;gBACjF,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACb,CAAC;IAEM,WAAW,CAAE,MAAc;QAChC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;QAC7C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAC9F,CAAC;IAEO,iBAAiB,CAAE,MAAc;QACvC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,MAAM,CAAC,CAAA;QAEvD,OAAO;YACL,MAAM,EAAE,GAAG;YACX,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAA;IACH,CAAC;CACF;AAlDD,oBAkDC"}
1
+ {"version":3,"file":"CORS.js","sourceRoot":"","sources":["../../../source/directives/cors/CORS.ts"],"names":[],"mappings":";;;AAGA,MAAa,IAAI;IACC,IAAI,GAAG,MAAM,CAAA;IAEZ,cAAc,GAAG,IAAI,GAAG,CAAS;QAChD,QAAQ;QACR,eAAe;QACf,cAAc;QACd,MAAM;QACN,UAAU;QACV,eAAe;KAChB,CAAC,CAAA;IAEe,OAAO,GAAG,IAAI,OAAO,CAAC;QACrC,8BAA8B,EAAE,+BAA+B;QAC/D,kCAAkC,EAAE,MAAM;QAC1C,8BAA8B,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC1E,wBAAwB,EAAE,MAAM;QAChC,eAAe,EAAE,cAAc;QAC/B,IAAI,EAAE,QAAQ;KACf,CAAC,CAAA;IAEK,SAAS,CAAE,KAAY;QAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAA;QAE3C,IAAI,MAAM,KAAK,SAAS;YACtB,OAAO,IAAI,CAAA;QAEb,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS;YACpC,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAEvC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACvC,MAAM,CAAC,OAAO,KAAK,IAAI,OAAO,EAAE,CAAA;YAChC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,MAAM,CAAC,CAAA;YACzD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAChD,mDAAmD,CAAC,CAAA;YAEtD,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAA;YAEnC,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,SAAS;gBAC/D,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACb,CAAC;IAEM,KAAK,CAAE,MAAc;QAC1B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;QAC7C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAC9F,CAAC;IAEO,iBAAiB,CAAE,MAAc;QACvC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,MAAM,CAAC,CAAA;QAEvD,OAAO;YACL,MAAM,EAAE,GAAG;YACX,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAA;IACH,CAAC;CACF;AA1DD,oBA0DC"}
@@ -1,9 +1,9 @@
1
1
  import { type Directive } from './types';
2
2
  import type { Input, Output } from '../../io';
3
- import type { Family } from '../../Directive';
4
- export declare class Development implements Family<Directive> {
3
+ import type { DirectiveFamily } from '../../RTD';
4
+ export declare class Development implements DirectiveFamily<Directive> {
5
5
  readonly name: string;
6
6
  readonly mandatory: boolean;
7
- create(name: string, value: any): Directive;
7
+ create(name: string, value: unknown): Directive;
8
8
  preflight(directives: Directive[], input: Input): Output;
9
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Development.js","sourceRoot":"","sources":["../../../source/directives/dev/Development.ts"],"names":[],"mappings":";;;AAAA,iCAA6B;AAC7B,mCAA+B;AAK/B,MAAa,WAAW;IACN,IAAI,GAAW,KAAK,CAAA;IACpB,SAAS,GAAY,KAAK,CAAA;IAEnC,MAAM,CAAE,IAAY,EAAE,KAAU;QACrC,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QAEhC,IAAI,KAAK,KAAK,SAAS;YACrB,MAAM,IAAI,KAAK,CAAC,cAAc,IAAI,6BAA6B,IAAI,CAAC,IAAI,WAAW,CAAC,CAAA;QAEtF,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC;IAEM,SAAS,CAAE,UAAuB,EAAE,KAAY;QACrD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAErC,IAAI,MAAM,KAAK,IAAI;gBACjB,OAAO,MAAM,CAAA;QACjB,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAvBD,kCAuBC;AAED,MAAM,YAAY,GAAkD;IAClE,IAAI,EAAE,WAAI;IACV,KAAK,EAAE,aAAK;CACb,CAAA"}
1
+ {"version":3,"file":"Development.js","sourceRoot":"","sources":["../../../source/directives/dev/Development.ts"],"names":[],"mappings":";;;AAAA,iCAA6B;AAC7B,mCAA+B;AAK/B,MAAa,WAAW;IACN,IAAI,GAAW,KAAK,CAAA;IACpB,SAAS,GAAY,KAAK,CAAA;IAEnC,MAAM,CAAE,IAAY,EAAE,KAAc;QACzC,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QAEhC,IAAI,KAAK,KAAK,SAAS;YACrB,MAAM,IAAI,KAAK,CAAC,cAAc,IAAI,6BAA6B,IAAI,CAAC,IAAI,WAAW,CAAC,CAAA;QAEtF,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC;IAEM,SAAS,CAAE,UAAuB,EAAE,KAAY;QACrD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAErC,IAAI,MAAM,KAAK,IAAI;gBACjB,OAAO,MAAM,CAAA;QACjB,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAvBD,kCAuBC;AAED,MAAM,YAAY,GAAkD;IAClE,IAAI,EAAE,WAAI;IACV,KAAK,EAAE,aAAK;CACb,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { Family } from '../Directive';
1
+ import type { DirectiveFamily } from '../RTD';
2
2
  import type { Interceptor } from '../Interception';
3
- export declare const families: Family[];
3
+ export declare const families: DirectiveFamily[];
4
4
  export declare const interceptors: Interceptor[];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../source/directives/index.ts"],"names":[],"mappings":";;;AAAA,+BAA2B;AAC3B,iCAAsC;AACtC,mCAA+B;AAC/B,qCAAiC;AACjC,iCAA6B;AAC7B,iCAA6B;AAIhB,QAAA,QAAQ,GAAa,CAAC,oBAAa,EAAE,aAAK,EAAE,eAAM,EAAE,WAAI,EAAE,SAAG,CAAC,CAAA;AAC9D,QAAA,YAAY,GAAkB,CAAC,WAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../source/directives/index.ts"],"names":[],"mappings":";;;AAAA,+BAA2B;AAC3B,iCAAsC;AACtC,mCAA+B;AAC/B,qCAAiC;AACjC,iCAA6B;AAC7B,iCAA6B;AAIhB,QAAA,QAAQ,GAAsB,CAAC,oBAAa,EAAE,aAAK,EAAE,eAAM,EAAE,WAAI,EAAE,SAAG,CAAC,CAAA;AACvE,QAAA,YAAY,GAAkB,CAAC,WAAI,CAAC,CAAA"}
@@ -3,6 +3,6 @@ import type { Directive } from './types';
3
3
  export declare class Context implements Directive {
4
4
  readonly targeted = false;
5
5
  readonly storage: string;
6
- constructor(value: any);
6
+ constructor(value: unknown);
7
7
  apply(): Output;
8
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","sourceRoot":"","sources":["../../../source/directives/octets/Context.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAoC;AAIpC,MAAa,OAAO;IACF,QAAQ,GAAG,KAAK,CAAA;IAChB,OAAO,CAAQ;IAE/B,YAAoB,KAAU;QAC5B,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAE/B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;IACtB,CAAC;IAEM,KAAK;QACV,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAbD,0BAaC"}
1
+ {"version":3,"file":"Context.js","sourceRoot":"","sources":["../../../source/directives/octets/Context.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAAoC;AAIpC,MAAa,OAAO;IACF,QAAQ,GAAG,KAAK,CAAA;IAChB,OAAO,CAAQ;IAE/B,YAAoB,KAAc;QAChC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAE/B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;IACtB,CAAC;IAEM,KAAK;QACV,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAbD,0BAaC"}
@@ -10,7 +10,7 @@ export declare class Delete implements Directive {
10
10
  private readonly discovery;
11
11
  private storage;
12
12
  constructor(options: Options | null, discovery: Promise<Component>, remotes: Remotes);
13
- apply(storage: string, request: Input, parameters: Parameter[]): Promise<Output>;
13
+ apply(storage: string, input: Input, parameters: Parameter[]): Promise<Output>;
14
14
  private delete;
15
15
  private execute;
16
16
  }
@@ -39,33 +39,43 @@ class Delete {
39
39
  this.workflow = new workflows_1.Workflow(options.workflow, remotes);
40
40
  this.discovery = discovery;
41
41
  }
42
- async apply(storage, request, parameters) {
42
+ async apply(storage, input, parameters) {
43
43
  this.storage ??= await this.discovery;
44
- const entry = await this.storage.invoke('get', { input: { storage, path: request.url } });
44
+ const entry = await this.storage.invoke('get', {
45
+ input: {
46
+ storage,
47
+ path: input.request.url
48
+ }
49
+ });
45
50
  if (entry instanceof Error)
46
51
  throw new HTTP_1.NotFound();
47
52
  const output = {};
48
53
  if (this.workflow !== undefined) {
49
54
  output.status = 202;
50
- output.body = stream_1.Readable.from(this.execute(request, storage, entry, parameters));
55
+ output.body = stream_1.Readable.from(this.execute(input, storage, entry, parameters));
51
56
  }
52
57
  else
53
- await this.delete(storage, request);
58
+ await this.delete(storage, input);
54
59
  return output;
55
60
  }
56
- async delete(storage, request) {
61
+ async delete(storage, input) {
57
62
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
58
- await this.storage.invoke('delete', { input: { storage, path: request.url } });
63
+ await this.storage.invoke('delete', {
64
+ input: {
65
+ storage,
66
+ path: input.request.url
67
+ }
68
+ });
59
69
  }
60
70
  // eslint-disable-next-line max-params
61
- async *execute(request, storage, entry, parameters) {
71
+ async *execute(input, storage, entry, parameters) {
62
72
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
63
- for await (const chunk of this.workflow.execute(request, storage, entry, parameters)) {
73
+ for await (const chunk of this.workflow.execute(input, storage, entry, parameters)) {
64
74
  yield chunk;
65
75
  if (typeof chunk === 'object' && chunk !== null && 'error' in chunk)
66
76
  return;
67
77
  }
68
- await this.delete(storage, request);
78
+ await this.delete(storage, input);
69
79
  }
70
80
  }
71
81
  exports.Delete = Delete;
@@ -1 +1 @@
1
- {"version":3,"file":"Delete.js","sourceRoot":"","sources":["../../../source/directives/octets/Delete.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAiC;AACjC,qCAAqC;AACrC,mDAAoC;AACpC,2CAAsC;AAUtC,MAAa,MAAM;IACD,QAAQ,GAAG,IAAI,CAAA;IAEd,QAAQ,CAAW;IACnB,SAAS,CAAoB;IACtC,OAAO,GAAqB,IAAI,CAAA;IAExC,YAAoB,OAAuB,EAAE,SAA6B,EAAE,OAAgB;QAC1F,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAEhC,IAAI,OAAO,EAAE,QAAQ,KAAK,SAAS;YACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,oBAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAEzD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,KAAK,CAAE,OAAe,EAAE,OAAc,EAAE,UAAuB;QAC1E,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,SAAS,CAAA;QAErC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAe,KAAK,EACzD,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QAE5C,IAAI,KAAK,YAAY,KAAK;YACxB,MAAM,IAAI,eAAQ,EAAE,CAAA;QAEtB,MAAM,MAAM,GAAW,EAAE,CAAA;QAEzB,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAA;YACnB,MAAM,CAAC,IAAI,GAAG,iBAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAA;QAChF,CAAC;;YACC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAErC,OAAO,MAAM,CAAA;IACf,CAAC;IAEO,KAAK,CAAC,MAAM,CAAE,OAAe,EAAE,OAAc;QACnD,oEAAoE;QACpE,MAAM,IAAI,CAAC,OAAQ,CAAC,MAAM,CAAC,QAAQ,EACjC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;IAC9C,CAAC;IAED,sCAAsC;IAC9B,KAAK,CAAC,CAAE,OAAO,CACtB,OAAc,EAAE,OAAe,EAAE,KAAY,EAAE,UAAuB;QACrE,oEAAoE;QACpE,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,QAAS,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC;YACtF,MAAM,KAAK,CAAA;YAEX,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK;gBACjE,OAAM;QACV,CAAC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACrC,CAAC;CACF;AAvDD,wBAuDC"}
1
+ {"version":3,"file":"Delete.js","sourceRoot":"","sources":["../../../source/directives/octets/Delete.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAiC;AACjC,qCAAqC;AACrC,mDAAoC;AACpC,2CAAsC;AAUtC,MAAa,MAAM;IACD,QAAQ,GAAG,IAAI,CAAA;IAEd,QAAQ,CAAW;IACnB,SAAS,CAAoB;IACtC,OAAO,GAAqB,IAAI,CAAA;IAExC,YAAoB,OAAuB,EAAE,SAA6B,EAAE,OAAgB;QAC1F,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAEhC,IAAI,OAAO,EAAE,QAAQ,KAAK,SAAS;YACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,oBAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAEzD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,KAAK,CAAE,OAAe,EAAE,KAAY,EAAE,UAAuB;QACxE,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,SAAS,CAAA;QAErC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAe,KAAK,EACzD;YACE,KAAK,EAAE;gBACL,OAAO;gBACP,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG;aACxB;SACF,CAAC,CAAA;QAEJ,IAAI,KAAK,YAAY,KAAK;YACxB,MAAM,IAAI,eAAQ,EAAE,CAAA;QAEtB,MAAM,MAAM,GAAW,EAAE,CAAA;QAEzB,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAA;YACnB,MAAM,CAAC,IAAI,GAAG,iBAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAA;QAC9E,CAAC;;YACC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QAEnC,OAAO,MAAM,CAAA;IACf,CAAC;IAEO,KAAK,CAAC,MAAM,CAAE,OAAe,EAAE,KAAY;QACjD,oEAAoE;QACpE,MAAM,IAAI,CAAC,OAAQ,CAAC,MAAM,CAAC,QAAQ,EACjC;YACE,KAAK,EAAE;gBACL,OAAO;gBACP,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG;aACxB;SACF,CAAC,CAAA;IACN,CAAC;IAED,sCAAsC;IAC9B,KAAK,CAAC,CAAE,OAAO,CACtB,KAAY,EAAE,OAAe,EAAE,KAAY,EAAE,UAAuB;QACnE,oEAAoE;QACpE,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,QAAS,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC;YACpF,MAAM,KAAK,CAAA;YAEX,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK;gBACjE,OAAM;QACV,CAAC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IACnC,CAAC;CACF;AAjED,wBAiEC"}
@@ -7,7 +7,7 @@ export declare class Fetch implements Directive {
7
7
  private readonly discovery;
8
8
  private storage;
9
9
  constructor(permissions: Permissions | null, discovery: Promise<Component>);
10
- apply(storage: string, request: Input): Promise<Output>;
10
+ apply(storage: string, input: Input): Promise<Output>;
11
11
  private fetch;
12
12
  private get;
13
13
  }
@@ -29,7 +29,10 @@ const HTTP_1 = require("../../HTTP");
29
29
  const schemas = __importStar(require("./schemas"));
30
30
  class Fetch {
31
31
  targeted = true;
32
- permissions = { blob: true, meta: false };
32
+ permissions = {
33
+ blob: true,
34
+ meta: false
35
+ };
33
36
  discovery;
34
37
  storage = null;
35
38
  constructor(permissions, discovery) {
@@ -37,24 +40,28 @@ class Fetch {
37
40
  Object.assign(this.permissions, permissions);
38
41
  this.discovery = discovery;
39
42
  }
40
- async apply(storage, request) {
43
+ async apply(storage, input) {
41
44
  this.storage ??= await this.discovery;
42
- const variant = node_path_1.posix.basename(request.url).includes('.');
43
- const metadata = request.subtype === 'octets.entry';
45
+ const variant = node_path_1.posix.basename(input.request.url).includes('.');
46
+ const metadata = input.subtype === 'octets.entry';
44
47
  if (!variant && metadata)
45
48
  if (this.permissions.meta)
46
- return this.get(storage, request);
49
+ return this.get(storage, input);
47
50
  else
48
51
  throw new HTTP_1.Forbidden('Metadata is not accessible.');
49
52
  if (!variant && !this.permissions.blob)
50
53
  throw new HTTP_1.Forbidden('BLOB variant must be specified.');
51
- return await this.fetch(storage, request);
54
+ return await this.fetch(storage, input);
52
55
  }
53
- async fetch(storage, request) {
54
- if ('if-none-match' in request.headers)
56
+ async fetch(storage, input) {
57
+ if ('if-none-match' in input.request.headers)
55
58
  return { status: 304 };
56
- const input = { storage, path: request.url };
57
- const result = await this.storage.invoke('fetch', { input });
59
+ const result = await this.storage.invoke('fetch', {
60
+ input: {
61
+ storage,
62
+ path: input.request.url
63
+ }
64
+ });
58
65
  if (result instanceof Error)
59
66
  throw new HTTP_1.NotFound();
60
67
  const headers = new Headers({
@@ -62,11 +69,18 @@ class Fetch {
62
69
  'content-length': result.size.toString(),
63
70
  etag: result.checksum
64
71
  });
65
- return { headers, body: result.stream };
72
+ return {
73
+ headers,
74
+ body: result.stream
75
+ };
66
76
  }
67
- async get(storage, request) {
68
- const input = { storage, path: request.url };
69
- const entry = await this.storage.invoke('get', { input });
77
+ async get(storage, input) {
78
+ const entry = await this.storage.invoke('get', {
79
+ input: {
80
+ storage,
81
+ path: input.request.url
82
+ }
83
+ });
70
84
  if (entry instanceof Error)
71
85
  throw new HTTP_1.NotFound();
72
86
  return { body: entry };
@@ -1 +1 @@
1
- {"version":3,"file":"Fetch.js","sourceRoot":"","sources":["../../../source/directives/octets/Fetch.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAiC;AACjC,qCAAgD;AAChD,mDAAoC;AASpC,MAAa,KAAK;IACA,QAAQ,GAAG,IAAI,CAAA;IAEd,WAAW,GAA0B,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;IAChE,SAAS,CAAoB;IACtC,OAAO,GAAc,IAA4B,CAAA;IAEzD,YAAoB,WAA+B,EAAE,SAA6B;QAChF,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QAEnC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,KAAK,CAAE,OAAe,EAAE,OAAc;QACjD,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,SAAS,CAAA;QAErC,MAAM,OAAO,GAAG,iBAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;QACzD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,KAAK,cAAc,CAAA;QAEnD,IAAI,CAAC,OAAO,IAAI,QAAQ;YACtB,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI;gBACvB,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;;gBAEjC,MAAM,IAAI,gBAAS,CAAC,6BAA6B,CAAC,CAAA;QAEtD,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI;YACpC,MAAM,IAAI,gBAAS,CAAC,iCAAiC,CAAC,CAAA;QAExD,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC3C,CAAC;IAEO,KAAK,CAAC,KAAK,CAAE,OAAe,EAAE,OAAc;QAClD,IAAI,eAAe,IAAI,OAAO,CAAC,OAAO;YACpC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;QAExB,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,CAAA;QAC5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAqB,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QAEhF,IAAI,MAAM,YAAY,KAAK;YACzB,MAAM,IAAI,eAAQ,EAAE,CAAA;QAEtB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;YAC1B,cAAc,EAAE,MAAM,CAAC,IAAI;YAC3B,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE;YACxC,IAAI,EAAE,MAAM,CAAC,QAAQ;SACtB,CAAC,CAAA;QAEF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,CAAA;IACzC,CAAC;IAEO,KAAK,CAAC,GAAG,CAAE,OAAe,EAAE,OAAc;QAChD,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,CAAA;QAC5C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAe,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QAEvE,IAAI,KAAK,YAAY,KAAK;YACxB,MAAM,IAAI,eAAQ,EAAE,CAAA;QAEtB,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;IACxB,CAAC;CACF;AA5DD,sBA4DC"}
1
+ {"version":3,"file":"Fetch.js","sourceRoot":"","sources":["../../../source/directives/octets/Fetch.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAiC;AACjC,qCAAgD;AAChD,mDAAoC;AASpC,MAAa,KAAK;IACA,QAAQ,GAAG,IAAI,CAAA;IAEd,WAAW,GAA0B;QACpD,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,KAAK;KACZ,CAAA;IAEgB,SAAS,CAAoB;IACtC,OAAO,GAAc,IAA4B,CAAA;IAEzD,YAAoB,WAA+B,EAAE,SAA6B;QAChF,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QAEnC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,KAAK,CAAE,OAAe,EAAE,KAAY;QAC/C,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,SAAS,CAAA;QAErC,MAAM,OAAO,GAAG,iBAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;QAC/D,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,KAAK,cAAc,CAAA;QAEjD,IAAI,CAAC,OAAO,IAAI,QAAQ;YACtB,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI;gBACvB,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;;gBAE/B,MAAM,IAAI,gBAAS,CAAC,6BAA6B,CAAC,CAAA;QAEtD,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI;YACpC,MAAM,IAAI,gBAAS,CAAC,iCAAiC,CAAC,CAAA;QAExD,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IACzC,CAAC;IAEO,KAAK,CAAC,KAAK,CAAE,OAAe,EAAE,KAAY;QAChD,IAAI,eAAe,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO;YAC1C,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;QAExB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAqB,OAAO,EAAE;YACpE,KAAK,EAAE;gBACL,OAAO;gBACP,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG;aACxB;SACF,CAAC,CAAA;QAEF,IAAI,MAAM,YAAY,KAAK;YACzB,MAAM,IAAI,eAAQ,EAAE,CAAA;QAEtB,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;YAC1B,cAAc,EAAE,MAAM,CAAC,IAAI;YAC3B,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE;YACxC,IAAI,EAAE,MAAM,CAAC,QAAQ;SACtB,CAAC,CAAA;QAEF,OAAO;YACL,OAAO;YACP,IAAI,EAAE,MAAM,CAAC,MAAM;SACpB,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,GAAG,CAAE,OAAe,EAAE,KAAY;QAC9C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAe,KAAK,EAAE;YAC3D,KAAK,EAAE;gBACL,OAAO;gBACP,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG;aACxB;SACF,CAAC,CAAA;QAEF,IAAI,KAAK,YAAY,KAAK;YACxB,MAAM,IAAI,eAAQ,EAAE,CAAA;QAEtB,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;IACxB,CAAC;CACF;AA3ED,sBA2EC"}
@@ -7,7 +7,7 @@ export declare class List implements Directive {
7
7
  private readonly discovery;
8
8
  private storage;
9
9
  constructor(permissions: Permissions | null, discovery: Promise<Component>);
10
- apply(storage: string, request: Input): Promise<Output>;
10
+ apply(storage: string, input: Input): Promise<Output>;
11
11
  private expand;
12
12
  }
13
13
  export interface Permissions {
@@ -37,24 +37,31 @@ class List {
37
37
  Object.assign(this.permissions, permissions);
38
38
  this.discovery = discovery;
39
39
  }
40
- async apply(storage, request) {
40
+ async apply(storage, input) {
41
41
  this.storage ??= await this.discovery;
42
- const metadata = request.subtype === 'octets.entries';
42
+ const metadata = input.subtype === 'octets.entries';
43
43
  if (metadata && !this.permissions.meta)
44
44
  throw new HTTP_1.Forbidden('Metadata is not accessible.');
45
- const input = { storage, path: request.url };
46
- const list = await this.storage.invoke('list', { input });
45
+ const list = await this.storage.invoke('list', {
46
+ input: {
47
+ storage,
48
+ path: input.request.url
49
+ }
50
+ });
47
51
  if (list instanceof Error)
48
52
  throw new HTTP_1.NotFound();
49
53
  const body = metadata
50
- ? await this.expand(storage, request.url, list)
54
+ ? await this.expand(storage, input.request.url, list)
51
55
  : list;
52
56
  return { body };
53
57
  }
54
58
  async expand(storage, prefix, list) {
55
59
  const promises = list.map(async (id) => {
56
60
  const path = node_path_1.posix.join(prefix, id);
57
- const input = { storage, path };
61
+ const input = {
62
+ storage,
63
+ path
64
+ };
58
65
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- ensured in `apply`
59
66
  return this.storage.invoke('get', { input });
60
67
  });
@@ -1 +1 @@
1
- {"version":3,"file":"List.js","sourceRoot":"","sources":["../../../source/directives/octets/List.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAiC;AACjC,qCAAgD;AAChD,mDAAoC;AAQpC,MAAa,IAAI;IACC,QAAQ,GAAG,KAAK,CAAA;IAEf,WAAW,GAA0B,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;IACpD,SAAS,CAAoB;IACtC,OAAO,GAAqB,IAAI,CAAA;IAExC,YAAoB,WAA+B,EAAE,SAA6B;QAChF,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QAElC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,KAAK,CAAE,OAAe,EAAE,OAAc;QACjD,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,SAAS,CAAA;QAErC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,KAAK,gBAAgB,CAAA;QAErD,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI;YACpC,MAAM,IAAI,gBAAS,CAAC,6BAA6B,CAAC,CAAA;QAEpD,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,CAAA;QAC5C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAkB,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QAE1E,IAAI,IAAI,YAAY,KAAK;YACvB,MAAM,IAAI,eAAQ,EAAE,CAAA;QAEtB,MAAM,IAAI,GAAG,QAAQ;YACnB,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC;YAC/C,CAAC,CAAC,IAAI,CAAA;QAER,OAAO,EAAE,IAAI,EAAE,CAAA;IACjB,CAAC;IAEO,KAAK,CAAC,MAAM,CAAE,OAAe,EAAE,MAAc,EAAE,IAAc;QAEnE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,iBAAK,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YACnC,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;YAE/B,0FAA0F;YAC1F,OAAO,IAAI,CAAC,OAAQ,CAAC,MAAM,CAAe,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QAC7D,CAAC,CAAC,CAAA;QAEF,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACpC,CAAC;CACF;AA/CD,oBA+CC"}
1
+ {"version":3,"file":"List.js","sourceRoot":"","sources":["../../../source/directives/octets/List.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAiC;AACjC,qCAAgD;AAChD,mDAAoC;AAQpC,MAAa,IAAI;IACC,QAAQ,GAAG,KAAK,CAAA;IAEf,WAAW,GAA0B,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;IACpD,SAAS,CAAoB;IACtC,OAAO,GAAqB,IAAI,CAAA;IAExC,YAAoB,WAA+B,EAAE,SAA6B;QAChF,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QAElC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,KAAK,CAAE,OAAe,EAAE,KAAY;QAC/C,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,SAAS,CAAA;QAErC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,KAAK,gBAAgB,CAAA;QAEnD,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI;YACpC,MAAM,IAAI,gBAAS,CAAC,6BAA6B,CAAC,CAAA;QAEpD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAkB,MAAM,EAAE;YAC9D,KAAK,EAAE;gBACL,OAAO;gBACP,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG;aACxB;SACF,CAAC,CAAA;QAEF,IAAI,IAAI,YAAY,KAAK;YACvB,MAAM,IAAI,eAAQ,EAAE,CAAA;QAEtB,MAAM,IAAI,GAAG,QAAQ;YACnB,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC;YACrD,CAAC,CAAC,IAAI,CAAA;QAER,OAAO,EAAE,IAAI,EAAE,CAAA;IACjB,CAAC;IAEO,KAAK,CAAC,MAAM,CAAE,OAAe,EAAE,MAAc,EAAE,IAAc;QAEnE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,iBAAK,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YAEnC,MAAM,KAAK,GAAG;gBACZ,OAAO;gBACP,IAAI;aACL,CAAA;YAED,0FAA0F;YAC1F,OAAO,IAAI,CAAC,OAAQ,CAAC,MAAM,CAAe,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QAC7D,CAAC,CAAC,CAAA;QAEF,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACpC,CAAC;CACF;AAvDD,oBAuDC"}
@@ -1,9 +1,8 @@
1
1
  import type { Output } from '../../io';
2
2
  import type { Remotes } from '../../Remotes';
3
- import type { Family } from '../../Directive';
3
+ import type { Parameter, DirectiveFamily } from '../../RTD';
4
4
  import type { Directive, Input } from './types';
5
- import type { Parameter } from '../../RTD';
6
- export declare class Octets implements Family<Directive> {
5
+ export declare class Octets implements DirectiveFamily<Directive> {
7
6
  readonly name: string;
8
7
  readonly mandatory: boolean;
9
8
  private discovery;
@@ -32,12 +32,14 @@ class Octets {
32
32
  throw new Error('Octets action is umbiguous.');
33
33
  if (action === null)
34
34
  return null;
35
+ // noinspection PointlessBooleanExpressionJS
35
36
  if (context === null)
36
37
  throw new Error('Octets context is not defined.');
37
- const targeted = input.path[input.path.length - 1] !== '/';
38
+ const targeted = input.request.url[input.request.url.length - 1] !== '/';
38
39
  if (targeted !== action.targeted)
39
40
  throw new HTTP_1.NotFound(`Trailing slash is ${action.targeted ? 'redundant' : 'required'}.`);
40
- return await action.apply(context.storage, input, parameters);
41
+ // noinspection JSObjectNullOrUndefined
42
+ return action.apply(context.storage, input, parameters);
41
43
  }
42
44
  }
43
45
  exports.Octets = Octets;
@@ -1 +1 @@
1
- {"version":3,"file":"Octets.js","sourceRoot":"","sources":["../../../source/directives/octets/Octets.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AACrC,uCAAmC;AACnC,mCAA+B;AAC/B,mCAA+B;AAC/B,iCAA6B;AAC7B,qCAAiC;AACjC,uCAAmC;AACnC,yCAA8C;AAQ9C,MAAa,MAAM;IACD,IAAI,GAAW,QAAQ,CAAA;IACvB,SAAS,GAAY,KAAK,CAAA;IAElC,SAAS,GAAG,IAAqC,CAAA;IAElD,MAAM,CAAE,IAAY,EAAE,KAAU,EAAE,OAAgB;QACvD,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QAE9B,IAAI,KAAK,KAAK,SAAS;YACrB,MAAM,IAAI,KAAK,CAAC,cAAc,IAAI,6BAA6B,IAAI,CAAC,IAAI,WAAW,CAAC,CAAA;QAEtF,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;QAExD,OAAO,IAAI,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IAClD,CAAC;IAEM,KAAK,CAAC,SAAS,CACrB,UAAuB,EAAE,KAAY,EAAE,UAAuB;QAC7D,IAAI,OAAO,GAAmB,IAAI,CAAA;QAClC,IAAI,MAAM,GAAqB,IAAI,CAAA;QAEnC,KAAK,MAAM,SAAS,IAAI,UAAU;YAChC,IAAI,SAAS,YAAY,iBAAO;gBAC9B,OAAO,KAAK,SAAS,CAAA;iBAClB,IAAI,MAAM,KAAK,IAAI;gBACtB,MAAM,GAAG,SAAS,CAAA;;gBAElB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAElD,IAAI,MAAM,KAAK,IAAI;YACjB,OAAO,IAAI,CAAA;QAEb,IAAI,OAAO,KAAK,IAAI;YAClB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QAEnD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,CAAA;QAE1D,IAAI,QAAQ,KAAK,MAAM,CAAC,QAAQ;YAC9B,MAAM,IAAI,eAAQ,CAAC,qBAAqB,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAA;QAExF,OAAO,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;IAC/D,CAAC;CACF;AA3CD,wBA2CC;AAED,MAAM,UAAU,GAAgC;IAC9C,OAAO,EAAE,iBAAO;IAChB,KAAK,EAAE,aAAK;IACZ,KAAK,EAAE,aAAK;IACZ,IAAI,EAAE,WAAI;IACV,MAAM,EAAE,eAAM;IACd,OAAO,EAAE,iBAAO;IAChB,QAAQ,EAAE,4BAAiB;CAC5B,CAAA"}
1
+ {"version":3,"file":"Octets.js","sourceRoot":"","sources":["../../../source/directives/octets/Octets.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AACrC,uCAAmC;AACnC,mCAA+B;AAC/B,mCAA+B;AAC/B,iCAA6B;AAC7B,qCAAiC;AACjC,uCAAmC;AACnC,yCAA8C;AAO9C,MAAa,MAAM;IACD,IAAI,GAAW,QAAQ,CAAA;IACvB,SAAS,GAAY,KAAK,CAAA;IAElC,SAAS,GAAG,IAAqC,CAAA;IAElD,MAAM,CAAE,IAAY,EAAE,KAAU,EAAE,OAAgB;QACvD,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QAE9B,IAAI,KAAK,KAAK,SAAS;YACrB,MAAM,IAAI,KAAK,CAAC,cAAc,IAAI,6BAA6B,IAAI,CAAC,IAAI,WAAW,CAAC,CAAA;QAEtF,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;QAExD,OAAO,IAAI,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IAClD,CAAC;IAEM,KAAK,CAAC,SAAS,CACrB,UAAuB,EAAE,KAAY,EAAE,UAAuB;QAC7D,IAAI,OAAO,GAAmB,IAAI,CAAA;QAClC,IAAI,MAAM,GAAqB,IAAI,CAAA;QAEnC,KAAK,MAAM,SAAS,IAAI,UAAU;YAChC,IAAI,SAAS,YAAY,iBAAO;gBAC9B,OAAO,KAAK,SAAS,CAAA;iBAClB,IAAI,MAAM,KAAK,IAAI;gBACtB,MAAM,GAAG,SAAS,CAAA;;gBAElB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAElD,IAAI,MAAM,KAAK,IAAI;YACjB,OAAO,IAAI,CAAA;QAEb,4CAA4C;QAC5C,IAAI,OAAO,KAAK,IAAI;YAClB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QAEnD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,CAAA;QAExE,IAAI,QAAQ,KAAK,MAAM,CAAC,QAAQ;YAC9B,MAAM,IAAI,eAAQ,CAAC,qBAAqB,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAA;QAExF,uCAAuC;QACvC,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;IACzD,CAAC;CACF;AA7CD,wBA6CC;AAED,MAAM,UAAU,GAAgC;IAC9C,OAAO,EAAE,iBAAO;IAChB,KAAK,EAAE,aAAK;IACZ,KAAK,EAAE,aAAK;IACZ,IAAI,EAAE,WAAI;IACV,MAAM,EAAE,eAAM;IACd,OAAO,EAAE,iBAAO;IAChB,QAAQ,EAAE,4BAAiB;CAC5B,CAAA"}
@@ -6,5 +6,5 @@ export declare class Permute implements Directive {
6
6
  private readonly discovery;
7
7
  private storage;
8
8
  constructor(value: null, discovery: Promise<Component>);
9
- apply(storage: string, request: Input): Promise<Output>;
9
+ apply(storage: string, input: Input): Promise<Output>;
10
10
  }
@@ -34,14 +34,19 @@ class Permute {
34
34
  schemas.permute.validate(value);
35
35
  this.discovery = discovery;
36
36
  }
37
- async apply(storage, request) {
37
+ async apply(storage, input) {
38
38
  this.storage ??= await this.discovery;
39
- if (request.encoder === null)
39
+ if (input.encoder === null)
40
40
  throw new HTTP_1.NotAcceptable();
41
- const path = request.url;
42
- const list = await request.parse();
43
- const input = { storage, path, list };
44
- const error = await this.storage.invoke('permute', { input });
41
+ const path = input.request.url;
42
+ const list = await input.body();
43
+ const error = await this.storage.invoke('permute', {
44
+ input: {
45
+ storage,
46
+ path,
47
+ list
48
+ }
49
+ });
45
50
  if (error instanceof Error)
46
51
  throw new HTTP_1.NotFound();
47
52
  return {};
@@ -1 +1 @@
1
- {"version":3,"file":"Permute.js","sourceRoot":"","sources":["../../../source/directives/octets/Permute.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAoD;AACpD,mDAAoC;AAOpC,MAAa,OAAO;IACF,QAAQ,GAAG,KAAK,CAAA;IAEf,SAAS,CAAoB;IACtC,OAAO,GAAqB,IAAI,CAAA;IAExC,YAAoB,KAAW,EAAE,SAA6B;QAC5D,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAE/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,KAAK,CAAE,OAAe,EAAE,OAAc;QACjD,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,SAAS,CAAA;QAErC,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI;YAC1B,MAAM,IAAI,oBAAa,EAAE,CAAA;QAE3B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAA;QACxB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,CAAA;QAClC,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;QACrC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAiB,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QAE7E,IAAI,KAAK,YAAY,KAAK;YACxB,MAAM,IAAI,eAAQ,EAAE,CAAA;QAEtB,OAAO,EAAE,CAAA;IACX,CAAC;CACF;AA5BD,0BA4BC"}
1
+ {"version":3,"file":"Permute.js","sourceRoot":"","sources":["../../../source/directives/octets/Permute.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAoD;AACpD,mDAAoC;AAOpC,MAAa,OAAO;IACF,QAAQ,GAAG,KAAK,CAAA;IAEf,SAAS,CAAoB;IACtC,OAAO,GAAqB,IAAI,CAAA;IAExC,YAAoB,KAAW,EAAE,SAA6B;QAC5D,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAE/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,KAAK,CAAE,OAAe,EAAE,KAAY;QAC/C,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,SAAS,CAAA;QAErC,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI;YACxB,MAAM,IAAI,oBAAa,EAAE,CAAA;QAE3B,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAA;QAC9B,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAA;QAE/B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAiB,SAAS,EAAE;YACjE,KAAK,EAAE;gBACL,OAAO;gBACP,IAAI;gBACJ,IAAI;aACL;SACF,CAAC,CAAA;QAEF,IAAI,KAAK,YAAY,KAAK;YACxB,MAAM,IAAI,eAAQ,EAAE,CAAA;QAEtB,OAAO,EAAE,CAAA;IACX,CAAC;CACF;AAlCD,0BAkCC"}
@@ -11,7 +11,7 @@ export declare class Store implements Directive {
11
11
  private readonly discovery;
12
12
  private storage;
13
13
  constructor(options: Options | null, discovery: Promise<Component>, remotes: Remotes);
14
- apply(storage: string, request: Input, parameters: Parameter[]): Promise<Output>;
14
+ apply(storage: string, input: Input, parameters: Parameter[]): Promise<Output>;
15
15
  private reply;
16
16
  private execute;
17
17
  private throw;
@@ -42,31 +42,36 @@ class Store {
42
42
  if (options?.workflow !== undefined)
43
43
  this.workflow = new workflows_1.Workflow(options.workflow, remotes);
44
44
  this.discovery.storage = discovery;
45
- cors_1.cors.allowHeader('content-meta');
45
+ cors_1.cors.allow('content-meta');
46
46
  }
47
- async apply(storage, request, parameters) {
47
+ async apply(storage, input, parameters) {
48
48
  this.storage ??= await this.discovery.storage;
49
- const input = { storage, request };
50
- const meta = request.headers['content-meta'];
49
+ const request = {
50
+ input: {
51
+ storage,
52
+ request: input.request
53
+ }
54
+ };
55
+ const meta = input.request.headers['content-meta'];
51
56
  if (this.accept !== undefined)
52
- input.accept = this.accept;
57
+ request.input.accept = this.accept;
53
58
  if (meta !== undefined)
54
- input.meta = this.parseMeta(meta);
55
- const entry = await this.storage.invoke('store', { input });
56
- return (0, matchacho_1.match)(entry, Error, (error) => this.throw(error), () => this.reply(request, storage, entry, parameters));
59
+ request.input.meta = this.parseMeta(meta);
60
+ const entry = await this.storage.invoke('store', request);
61
+ return (0, matchacho_1.match)(entry, Error, (error) => this.throw(error), () => this.reply(input, storage, entry, parameters));
57
62
  }
58
63
  // eslint-disable-next-line max-params
59
- reply(request, storage, entry, parameters) {
64
+ reply(input, storage, entry, parameters) {
60
65
  const body = this.workflow === undefined
61
66
  ? entry
62
- : this.execute(request, storage, entry, parameters);
67
+ : this.execute(input, storage, entry, parameters);
63
68
  return { body };
64
69
  }
65
70
  // eslint-disable-next-line max-params
66
- execute(request, storage, entry, parameters) {
71
+ execute(input, storage, entry, parameters) {
67
72
  const stream = new node_stream_1.PassThrough({ objectMode: true });
68
73
  stream.push(entry);
69
- this.workflow.execute(request, storage, entry, parameters).pipe(stream);
74
+ this.workflow.execute(input, storage, entry, parameters).pipe(stream);
70
75
  return stream;
71
76
  }
72
77
  throw(error) {
@@ -1 +1 @@
1
- {"version":3,"file":"Store.js","sourceRoot":"","sources":["../../../source/directives/octets/Store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Store.js","sourceRoot":"","sources":["../../../source/directives/octets/Store.ts"],"names":[],"mappings":"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"}
@@ -10,5 +10,5 @@ export declare class WorkflowDirective implements Directive {
10
10
  private readonly discovery;
11
11
  private storage;
12
12
  constructor(units: Unit[] | Unit, discovery: Promise<Component>, remotes: Remotes);
13
- apply(storage: string, request: Input, parameters: Parameter[]): Promise<Output>;
13
+ apply(storage: string, input: Input, parameters: Parameter[]): Promise<Output>;
14
14
  }
@@ -37,14 +37,14 @@ class WorkflowDirective {
37
37
  this.workflow = new workflows_1.Workflow(units, remotes);
38
38
  this.discovery = discovery;
39
39
  }
40
- async apply(storage, request, parameters) {
40
+ async apply(storage, input, parameters) {
41
41
  this.storage ??= await this.discovery;
42
- const entry = await this.storage.invoke('get', { input: { storage, path: request.url } });
42
+ const entry = await this.storage.invoke('get', { input: { storage, path: input.request.url } });
43
43
  if (entry instanceof Error)
44
44
  throw new HTTP_1.NotFound();
45
45
  return {
46
46
  status: 202,
47
- body: this.workflow.execute(request, storage, entry, parameters)
47
+ body: this.workflow.execute(input, storage, entry, parameters)
48
48
  };
49
49
  }
50
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Workflow.js","sourceRoot":"","sources":["../../../source/directives/octets/Workflow.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAqC;AACrC,mDAAoC;AACpC,2CAAsC;AAUtC,MAAa,iBAAiB;IACZ,QAAQ,GAAG,IAAI,CAAA;IAEd,QAAQ,CAAU;IAClB,SAAS,CAAoB;IACtC,OAAO,GAAqB,IAAI,CAAA;IAExC,YAAoB,KAAoB,EAAE,SAA6B,EAAE,OAAgB;QACvF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAEhC,IAAI,CAAC,QAAQ,GAAG,IAAI,oBAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,KAAK,CAAE,OAAe,EAAE,OAAc,EAAE,UAAuB;QAC1E,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,SAAS,CAAA;QAErC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAe,KAAK,EACzD,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QAE5C,IAAI,KAAK,YAAY,KAAK;YACxB,MAAM,IAAI,eAAQ,EAAE,CAAA;QAEtB,OAAO;YACL,MAAM,EAAE,GAAG;YACX,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC;SACjE,CAAA;IACH,CAAC;CACF;AA5BD,8CA4BC"}
1
+ {"version":3,"file":"Workflow.js","sourceRoot":"","sources":["../../../source/directives/octets/Workflow.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAqC;AACrC,mDAAoC;AACpC,2CAAsC;AAUtC,MAAa,iBAAiB;IACZ,QAAQ,GAAG,IAAI,CAAA;IAEd,QAAQ,CAAU;IAClB,SAAS,CAAoB;IACtC,OAAO,GAAqB,IAAI,CAAA;IAExC,YAAoB,KAAoB,EAAE,SAA6B,EAAE,OAAgB;QACvF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAEhC,IAAI,CAAC,QAAQ,GAAG,IAAI,oBAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,KAAK,CAAE,OAAe,EAAE,KAAY,EAAE,UAAuB;QACxE,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,SAAS,CAAA;QAErC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAe,KAAK,EACzD,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QAElD,IAAI,KAAK,YAAY,KAAK;YACxB,MAAM,IAAI,eAAQ,EAAE,CAAA;QAEtB,OAAO;YACL,MAAM,EAAE,GAAG;YACX,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC;SAC/D,CAAA;IACH,CAAC;CACF;AA5BD,8CA4BC"}
@@ -7,6 +7,6 @@ export declare class Workflow {
7
7
  private readonly units;
8
8
  private readonly remotes;
9
9
  constructor(units: Unit[] | Unit, remotes: Remotes);
10
- execute(request: Input, storage: string, entry: Entry, params: Parameter[]): Execution;
10
+ execute(input: Input, storage: string, entry: Entry, params: Parameter[]): Execution;
11
11
  }
12
12
  export type Unit = Record<string, string>;