@toa.io/extensions.exposition 1.0.0-alpha.86 → 1.0.0-alpha.88
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.
- package/components/identity.basic/operations/transit.js +3 -3
- package/components/identity.basic/operations/transit.js.map +1 -1
- package/components/identity.basic/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.basic/source/transit.ts +3 -3
- package/components/octets.storage/manifest.toa.yaml +3 -5
- package/components/octets.storage/operations/get.js +1 -1
- package/components/octets.storage/operations/head.js +7 -0
- package/components/octets.storage/operations/{store.js → put.js} +9 -9
- package/documentation/octets.md +17 -47
- package/features/{octets.meta.feature → octets.attributes.feature} +13 -12
- package/features/octets.cloudinary.feature +68 -0
- package/features/octets.download.feature +6 -6
- package/features/octets.entries.feature +8 -57
- package/features/octets.feature +8 -60
- package/features/octets.workflows.feature +0 -36
- package/features/steps/.env.example +3 -0
- package/features/steps/Parameters.ts +10 -0
- package/features/steps/components/octets.tester/manifest.toa.yaml +0 -1
- package/features/steps/components/octets.tester/operations/bar.js +0 -1
- package/features/steps/components/octets.tester/operations/baz.js +0 -1
- package/features/steps/components/octets.tester/operations/foo.js +0 -1
- package/package.json +3 -3
- package/source/Endpoint.ts +3 -3
- package/source/HTTP/Server.ts +4 -0
- package/source/RTD/syntax/parse.test.ts +1 -1
- package/source/directives/auth/Scheme.ts +1 -1
- package/source/directives/io/Output.ts +1 -1
- package/source/directives/octets/Delete.ts +11 -11
- package/source/directives/octets/{Fetch.ts → Get.ts} +17 -34
- package/source/directives/octets/Octets.ts +6 -8
- package/source/directives/octets/{Store.ts → Put.ts} +9 -14
- package/source/directives/octets/Workflow.ts +1 -1
- package/source/directives/octets/schemas.ts +4 -6
- package/source/directives/octets/workflows/Workflow.ts +2 -3
- package/source/directives/vary/embeddings/Language.ts +2 -2
- package/transpiled/Endpoint.js +3 -3
- package/transpiled/Endpoint.js.map +1 -1
- package/transpiled/HTTP/Server.js +2 -0
- package/transpiled/HTTP/Server.js.map +1 -1
- package/transpiled/directives/auth/Scheme.js +1 -1
- package/transpiled/directives/auth/Scheme.js.map +1 -1
- package/transpiled/directives/io/Output.js +1 -1
- package/transpiled/directives/io/Output.js.map +1 -1
- package/transpiled/directives/octets/Delete.js +8 -8
- package/transpiled/directives/octets/Delete.js.map +1 -1
- package/transpiled/directives/octets/{Fetch.d.ts → Get.d.ts} +2 -3
- package/transpiled/directives/octets/{Fetch.js → Get.js} +19 -24
- package/transpiled/directives/octets/Get.js.map +1 -0
- package/transpiled/directives/octets/Octets.js +6 -8
- package/transpiled/directives/octets/Octets.js.map +1 -1
- package/transpiled/directives/octets/{Store.d.ts → Put.d.ts} +2 -2
- package/transpiled/directives/octets/{Store.js → Put.js} +11 -14
- package/transpiled/directives/octets/Put.js.map +1 -0
- package/transpiled/directives/octets/Workflow.js +1 -1
- package/transpiled/directives/octets/Workflow.js.map +1 -1
- package/transpiled/directives/octets/schemas.d.ts +4 -6
- package/transpiled/directives/octets/schemas.js +3 -4
- package/transpiled/directives/octets/schemas.js.map +1 -1
- package/transpiled/directives/octets/workflows/Workflow.d.ts +1 -1
- package/transpiled/directives/octets/workflows/Workflow.js.map +1 -1
- package/transpiled/directives/vary/embeddings/Language.js +2 -2
- package/transpiled/directives/vary/embeddings/Language.js.map +1 -1
- package/transpiled/tsconfig.tsbuildinfo +1 -1
- package/components/octets.storage/operations/fetch.js +0 -46
- package/components/octets.storage/operations/list.js +0 -7
- package/features/steps/components/octets.tester/operations/diversify.js +0 -16
- package/schemas/octets/fetch.cos.yaml +0 -3
- package/schemas/octets/permute.cos.yaml +0 -1
- package/source/directives/octets/List.ts +0 -72
- package/transpiled/directives/octets/Fetch.js.map +0 -1
- package/transpiled/directives/octets/List.d.ts +0 -16
- package/transpiled/directives/octets/List.js +0 -74
- package/transpiled/directives/octets/List.js.map +0 -1
- package/transpiled/directives/octets/Store.js.map +0 -1
- /package/schemas/octets/{list.cos.yaml → get.cos.yaml} +0 -0
- /package/schemas/octets/{store.cos.yaml → put.cos.yaml} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@toa.io/extensions.exposition",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.88",
|
|
4
4
|
"description": "Toa Exposition",
|
|
5
5
|
"author": "temich <tema.gurtovoy@gmail.com>",
|
|
6
6
|
"homepage": "https://github.com/toa-io/toa#readme",
|
|
@@ -52,11 +52,11 @@
|
|
|
52
52
|
"@swc/core": "1.6.6",
|
|
53
53
|
"@swc/helpers": "0.5.11",
|
|
54
54
|
"@toa.io/agent": "1.0.0-alpha.79",
|
|
55
|
-
"@toa.io/extensions.storages": "1.0.0-alpha.
|
|
55
|
+
"@toa.io/extensions.storages": "1.0.0-alpha.88",
|
|
56
56
|
"@types/bcryptjs": "2.4.3",
|
|
57
57
|
"@types/cors": "2.8.13",
|
|
58
58
|
"@types/negotiator": "0.6.1",
|
|
59
59
|
"jest-esbuild": "0.3.0"
|
|
60
60
|
},
|
|
61
|
-
"gitHead": "
|
|
61
|
+
"gitHead": "85feb27d2aaef381fb9d8282abab0c738cbce585"
|
|
62
62
|
}
|
package/source/Endpoint.ts
CHANGED
|
@@ -113,7 +113,7 @@ export class Endpoint implements RTD.Endpoint {
|
|
|
113
113
|
const match = etag.match(ETAG)
|
|
114
114
|
|
|
115
115
|
if (match === null)
|
|
116
|
-
throw new http.BadRequest('Invalid ETag
|
|
116
|
+
throw new http.BadRequest('Invalid ETag')
|
|
117
117
|
|
|
118
118
|
return Number.parseInt(match.groups!.version)
|
|
119
119
|
}
|
|
@@ -128,14 +128,14 @@ export class EndpointsFactory implements RTD.EndpointsFactory {
|
|
|
128
128
|
|
|
129
129
|
public create (method: RTD.syntax.Method, context: Context): Endpoint {
|
|
130
130
|
if (method.mapping === undefined)
|
|
131
|
-
throw new Error('Cannot create Endpoint without mapping
|
|
131
|
+
throw new Error('Cannot create Endpoint without mapping')
|
|
132
132
|
|
|
133
133
|
const mapping = Mapping.create(method.mapping.query)
|
|
134
134
|
const namespace = method.mapping.namespace ?? context.extension.namespace
|
|
135
135
|
const component = method.mapping.component ?? context.extension.component
|
|
136
136
|
|
|
137
137
|
if (namespace === undefined || component === undefined)
|
|
138
|
-
throw new Error('Annotation endpoints must be fully qualified
|
|
138
|
+
throw new Error('Annotation endpoints must be fully qualified')
|
|
139
139
|
|
|
140
140
|
const discovery = this.remotes.discover(namespace, component, context.extension.version)
|
|
141
141
|
|
package/source/HTTP/Server.ts
CHANGED
|
@@ -25,6 +25,10 @@ export class Server extends Connector {
|
|
|
25
25
|
this.authorities = Object.fromEntries(Object.entries(properties.authorities).map(([key, value]) => [value, key]))
|
|
26
26
|
|
|
27
27
|
this.server.on('request', (req, res) => this.listener(req, res))
|
|
28
|
+
|
|
29
|
+
if (this.properties.debug)
|
|
30
|
+
this.server.on('connection', (socket) =>
|
|
31
|
+
console.debug('Connected', { address: socket.remoteAddress }))
|
|
28
32
|
}
|
|
29
33
|
|
|
30
34
|
public static create (options: Options): Server {
|
|
@@ -148,7 +148,7 @@ describe('validation', () => {
|
|
|
148
148
|
it('should throw on unknown key', async () => {
|
|
149
149
|
const declaration = { hello: 'world' }
|
|
150
150
|
|
|
151
|
-
expect(() => parse(declaration)).toThrow('RTD parse error: unknown key \'hello\'
|
|
151
|
+
expect(() => parse(declaration)).toThrow('RTD parse error: unknown key \'hello\'')
|
|
152
152
|
})
|
|
153
153
|
|
|
154
154
|
it('should throw on invalid mapping', async () => {
|
|
@@ -19,7 +19,7 @@ export class Scheme implements Directive {
|
|
|
19
19
|
|
|
20
20
|
if (scheme !== this.scheme)
|
|
21
21
|
throw new http.Forbidden(this.Scheme +
|
|
22
|
-
' authentication scheme is required to access this resource
|
|
22
|
+
' authentication scheme is required to access this resource')
|
|
23
23
|
|
|
24
24
|
return false
|
|
25
25
|
}
|
|
@@ -41,7 +41,7 @@ export class Output implements Directive {
|
|
|
41
41
|
|
|
42
42
|
if (typeof message.body !== 'object' || this.permissions.length === 0) {
|
|
43
43
|
if (this.omitted)
|
|
44
|
-
console.warn('Permissions for \'io:output\' are not specified properly
|
|
44
|
+
console.warn('Permissions for \'io:output\' are not specified properly, response omitted',
|
|
45
45
|
{ path: context.url.pathname })
|
|
46
46
|
|
|
47
47
|
delete message.body
|
|
@@ -32,20 +32,20 @@ export class Delete extends Directive {
|
|
|
32
32
|
public async apply (storage: string, input: Input, parameters: Parameter[]): Promise<Output> {
|
|
33
33
|
this.storage ??= await this.discovery
|
|
34
34
|
|
|
35
|
-
const entry = await this.storage.invoke<Maybe<Entry>>('get',
|
|
36
|
-
{
|
|
37
|
-
input: {
|
|
38
|
-
storage,
|
|
39
|
-
path: input.request.url
|
|
40
|
-
}
|
|
41
|
-
})
|
|
42
|
-
|
|
43
|
-
if (entry instanceof Error)
|
|
44
|
-
throw new NotFound()
|
|
45
|
-
|
|
46
35
|
const output: Output = {}
|
|
47
36
|
|
|
48
37
|
if (this.workflow !== undefined) {
|
|
38
|
+
const entry = await this.storage.invoke<Maybe<Entry>>('head',
|
|
39
|
+
{
|
|
40
|
+
input: {
|
|
41
|
+
storage,
|
|
42
|
+
path: input.request.url
|
|
43
|
+
}
|
|
44
|
+
})
|
|
45
|
+
|
|
46
|
+
if (entry instanceof Error)
|
|
47
|
+
throw new NotFound()
|
|
48
|
+
|
|
49
49
|
output.status = 202
|
|
50
50
|
output.body = Readable.from(this.execute(input, storage, entry, parameters))
|
|
51
51
|
} else
|
|
@@ -1,19 +1,16 @@
|
|
|
1
|
-
import { posix } from 'node:path'
|
|
2
1
|
import { Forbidden, NotFound } from '../../HTTP'
|
|
3
2
|
import * as schemas from './schemas'
|
|
4
3
|
import { Directive } from './Directive'
|
|
5
|
-
import type { Readable } from 'node:stream'
|
|
6
4
|
import type { Maybe } from '@toa.io/types'
|
|
7
|
-
import type { Entry } from '@toa.io/extensions.storages'
|
|
5
|
+
import type { Entry, Stream } from '@toa.io/extensions.storages'
|
|
8
6
|
import type { Component } from '@toa.io/core'
|
|
9
7
|
import type { Output } from '../../io'
|
|
10
8
|
import type { Input } from './types'
|
|
11
9
|
|
|
12
|
-
export class
|
|
10
|
+
export class Get extends Directive {
|
|
13
11
|
public readonly targeted = true
|
|
14
12
|
|
|
15
13
|
private readonly options: Required<Options> = {
|
|
16
|
-
blob: true,
|
|
17
14
|
meta: false
|
|
18
15
|
}
|
|
19
16
|
|
|
@@ -23,7 +20,7 @@ export class Fetch extends Directive {
|
|
|
23
20
|
public constructor (options: Options | null, discovery: Promise<Component>) {
|
|
24
21
|
super()
|
|
25
22
|
|
|
26
|
-
schemas.
|
|
23
|
+
schemas.get.validate(options)
|
|
27
24
|
Object.assign(this.options, options)
|
|
28
25
|
|
|
29
26
|
this.discovery = discovery
|
|
@@ -32,49 +29,43 @@ export class Fetch extends Directive {
|
|
|
32
29
|
public async apply (storage: string, input: Input): Promise<Output> {
|
|
33
30
|
this.storage ??= await this.discovery
|
|
34
31
|
|
|
35
|
-
|
|
36
|
-
const metadata = input.subtype === 'octets.entry'
|
|
37
|
-
|
|
38
|
-
if (!variant && metadata)
|
|
32
|
+
if (input.subtype === 'octets.entry')
|
|
39
33
|
if (this.options.meta)
|
|
40
|
-
return this.
|
|
34
|
+
return this.head(storage, input)
|
|
41
35
|
else
|
|
42
|
-
throw new Forbidden('Metadata is not accessible
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
throw new Forbidden('BLOB variant must be specified.')
|
|
46
|
-
|
|
47
|
-
return await this.fetch(storage, input)
|
|
36
|
+
throw new Forbidden('Metadata is not accessible')
|
|
37
|
+
else
|
|
38
|
+
return await this.get(storage, input)
|
|
48
39
|
}
|
|
49
40
|
|
|
50
|
-
private async
|
|
41
|
+
private async get (storage: string, input: Input): Promise<Output> {
|
|
51
42
|
if ('if-none-match' in input.request.headers)
|
|
52
43
|
return { status: 304 }
|
|
53
44
|
|
|
54
|
-
const
|
|
45
|
+
const entry = await this.storage.invoke<Maybe<Stream>>('get', {
|
|
55
46
|
input: {
|
|
56
47
|
storage,
|
|
57
48
|
path: input.request.url
|
|
58
49
|
}
|
|
59
50
|
})
|
|
60
51
|
|
|
61
|
-
if (
|
|
52
|
+
if (entry instanceof Error)
|
|
62
53
|
throw new NotFound()
|
|
63
54
|
|
|
64
55
|
const headers = new Headers({
|
|
65
|
-
'content-type':
|
|
66
|
-
'content-length':
|
|
67
|
-
etag: `"${
|
|
56
|
+
'content-type': entry.type,
|
|
57
|
+
'content-length': entry.size.toString(),
|
|
58
|
+
etag: `"${entry.checksum}"`
|
|
68
59
|
})
|
|
69
60
|
|
|
70
61
|
return {
|
|
71
62
|
headers,
|
|
72
|
-
body:
|
|
63
|
+
body: entry.stream
|
|
73
64
|
}
|
|
74
65
|
}
|
|
75
66
|
|
|
76
|
-
private async
|
|
77
|
-
const entry = await this.storage.invoke<Maybe<Entry>>('
|
|
67
|
+
private async head (storage: string, input: Input): Promise<Output> {
|
|
68
|
+
const entry = await this.storage.invoke<Maybe<Entry>>('head', {
|
|
78
69
|
input: {
|
|
79
70
|
storage,
|
|
80
71
|
path: input.request.url
|
|
@@ -89,13 +80,5 @@ export class Fetch extends Directive {
|
|
|
89
80
|
}
|
|
90
81
|
|
|
91
82
|
export interface Options {
|
|
92
|
-
blob?: boolean
|
|
93
83
|
meta?: boolean
|
|
94
84
|
}
|
|
95
|
-
|
|
96
|
-
interface FetchResult {
|
|
97
|
-
stream: Readable
|
|
98
|
-
checksum: string
|
|
99
|
-
size: number
|
|
100
|
-
type: string
|
|
101
|
-
}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { NotFound } from '../../HTTP'
|
|
2
2
|
import { Context } from './Context'
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { List } from './List'
|
|
3
|
+
import { Put } from './Put'
|
|
4
|
+
import { Get } from './Get'
|
|
6
5
|
import { Delete } from './Delete'
|
|
7
6
|
import { WorkflowDirective } from './Workflow'
|
|
8
7
|
import type { Directive } from './Directive'
|
|
@@ -40,14 +39,14 @@ export class Octets implements DirectiveFamily<Directive> {
|
|
|
40
39
|
else if (action === null)
|
|
41
40
|
action = directive
|
|
42
41
|
else
|
|
43
|
-
throw new Error('Octets action is
|
|
42
|
+
throw new Error('Octets action is ambiguous')
|
|
44
43
|
|
|
45
44
|
if (action === null)
|
|
46
45
|
return null
|
|
47
46
|
|
|
48
47
|
// noinspection PointlessBooleanExpressionJS
|
|
49
48
|
if (context === null)
|
|
50
|
-
throw new Error('Octets context is not defined
|
|
49
|
+
throw new Error('Octets context is not defined')
|
|
51
50
|
|
|
52
51
|
const targeted = input.request.url[input.request.url.length - 1] !== '/'
|
|
53
52
|
|
|
@@ -61,9 +60,8 @@ export class Octets implements DirectiveFamily<Directive> {
|
|
|
61
60
|
|
|
62
61
|
const DIRECTIVES: Record<string, Constructor> = {
|
|
63
62
|
context: Context,
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
list: List,
|
|
63
|
+
put: Put,
|
|
64
|
+
get: Get,
|
|
67
65
|
delete: Delete,
|
|
68
66
|
workflow: WorkflowDirective
|
|
69
67
|
}
|
|
@@ -16,7 +16,7 @@ import type { Component } from '@toa.io/core'
|
|
|
16
16
|
import type { Output } from '../../io'
|
|
17
17
|
import type { Input } from './types'
|
|
18
18
|
|
|
19
|
-
export class
|
|
19
|
+
export class Put extends Directive {
|
|
20
20
|
public readonly targeted = false
|
|
21
21
|
|
|
22
22
|
private readonly accept?: string
|
|
@@ -31,7 +31,7 @@ export class Store extends Directive {
|
|
|
31
31
|
(options: Options | null, discovery: Promise<Component>, remotes: Remotes) {
|
|
32
32
|
super()
|
|
33
33
|
|
|
34
|
-
schemas.
|
|
34
|
+
schemas.put.validate<Options>(options)
|
|
35
35
|
|
|
36
36
|
this.accept = match(options?.accept,
|
|
37
37
|
String, (value: string) => value,
|
|
@@ -49,7 +49,7 @@ export class Store extends Directive {
|
|
|
49
49
|
this.limit = toBytes(this.limitString)
|
|
50
50
|
this.discovery.storage = discovery
|
|
51
51
|
|
|
52
|
-
cors.allow('content-
|
|
52
|
+
cors.allow('content-attributes')
|
|
53
53
|
cors.allow('content-location')
|
|
54
54
|
}
|
|
55
55
|
|
|
@@ -66,12 +66,7 @@ export class Store extends Directive {
|
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
68
|
|
|
69
|
-
const
|
|
70
|
-
|
|
71
|
-
if (meta !== undefined)
|
|
72
|
-
request.input.meta = this.meta(meta)
|
|
73
|
-
|
|
74
|
-
const entry = await this.storage.invoke<Entry>('store', request)
|
|
69
|
+
const entry = await this.storage.invoke<Entry>('put', request)
|
|
75
70
|
|
|
76
71
|
return match<Output>(entry,
|
|
77
72
|
Error, (error: ErrorType) => this.throw(error),
|
|
@@ -110,20 +105,20 @@ export class Store extends Directive {
|
|
|
110
105
|
error)
|
|
111
106
|
}
|
|
112
107
|
|
|
113
|
-
private
|
|
108
|
+
private attributes (value: string | string[]): Record<string, string> {
|
|
114
109
|
if (Array.isArray(value))
|
|
115
110
|
value = value.join(',')
|
|
116
111
|
|
|
117
|
-
const
|
|
112
|
+
const attributes: Record<string, string> = {}
|
|
118
113
|
|
|
119
114
|
for (const pair of value.split(',')) {
|
|
120
115
|
const eq = pair.indexOf('=')
|
|
121
116
|
const key = (eq === -1 ? pair : pair.slice(0, eq)).trim()
|
|
122
117
|
|
|
123
|
-
|
|
118
|
+
attributes[key] = eq === -1 ? 'true' : pair.slice(eq + 1).trim()
|
|
124
119
|
}
|
|
125
120
|
|
|
126
|
-
return
|
|
121
|
+
return attributes
|
|
127
122
|
}
|
|
128
123
|
}
|
|
129
124
|
|
|
@@ -141,6 +136,6 @@ interface StoreRequest {
|
|
|
141
136
|
accept?: string
|
|
142
137
|
limit?: number
|
|
143
138
|
trust?: Array<string | RegExp>
|
|
144
|
-
|
|
139
|
+
attributes?: Record<string, string>
|
|
145
140
|
}
|
|
146
141
|
}
|
|
@@ -29,7 +29,7 @@ export class WorkflowDirective extends Directive {
|
|
|
29
29
|
public async apply (storage: string, input: Input, parameters: Parameter[]): Promise<Output> {
|
|
30
30
|
this.storage ??= await this.discovery
|
|
31
31
|
|
|
32
|
-
const entry = await this.storage.invoke<Maybe<Entry>>('
|
|
32
|
+
const entry = await this.storage.invoke<Maybe<Entry>>('head',
|
|
33
33
|
{
|
|
34
34
|
input: {
|
|
35
35
|
storage,
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { resolve } from 'node:path'
|
|
2
2
|
import schemas from '@toa.io/schemas'
|
|
3
|
-
import type { Options as
|
|
4
|
-
import type { Options as
|
|
5
|
-
import type { Options as StoreOptions } from './Store'
|
|
3
|
+
import type { Options as GetOptions } from './Get'
|
|
4
|
+
import type { Options as PutOptions } from './Put'
|
|
6
5
|
import type { Options as DeleteOptions } from './Delete'
|
|
7
6
|
import type { Schema } from '@toa.io/schemas'
|
|
8
7
|
import type { Unit } from './workflows'
|
|
@@ -10,8 +9,7 @@ import type { Unit } from './workflows'
|
|
|
10
9
|
const path = resolve(__dirname, '../../../schemas/octets')
|
|
11
10
|
const namespace = schemas.namespace(path)
|
|
12
11
|
|
|
13
|
-
export const
|
|
14
|
-
export const
|
|
12
|
+
export const put: Schema<PutOptions | null> = namespace.schema('put')
|
|
13
|
+
export const get: Schema<GetOptions | null> = namespace.schema('get')
|
|
15
14
|
export const remove: Schema<DeleteOptions | null> = namespace.schema('delete')
|
|
16
|
-
export const list: Schema<ListOptions | null> = namespace.schema('list')
|
|
17
15
|
export const workflow: Schema<Unit[] | Unit> = namespace.schema('workflow')
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { posix } from 'node:path'
|
|
2
2
|
import { match } from 'matchacho'
|
|
3
3
|
import { Execution } from './Execution'
|
|
4
|
+
import type { Entry } from '@toa.io/extensions.storages'
|
|
4
5
|
import type { Context } from './Execution'
|
|
5
6
|
import type { Parameter } from '../../../RTD'
|
|
6
7
|
import type { Input } from '../types'
|
|
7
|
-
import type { Entry } from '@toa.io/extensions.storages'
|
|
8
8
|
import type { Remotes } from '../../../Remotes'
|
|
9
9
|
|
|
10
10
|
export class Workflow {
|
|
@@ -20,8 +20,7 @@ export class Workflow {
|
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
// eslint-disable-next-line max-params
|
|
23
|
-
public execute
|
|
24
|
-
(input: Input, storage: string, entry: Entry, params: Parameter[]): Execution {
|
|
23
|
+
public execute (input: Input, storage: string, entry: Entry, params: Parameter[]): Execution {
|
|
25
24
|
const path = posix.join(input.request.url, entry.id)
|
|
26
25
|
const authority = input.authority
|
|
27
26
|
const parameters: Record<string, string> = {}
|
|
@@ -12,10 +12,10 @@ export class Language implements Embedding {
|
|
|
12
12
|
|
|
13
13
|
public resolve (input: Input, properties: Properties): string | undefined {
|
|
14
14
|
assert.ok(properties.languages !== undefined,
|
|
15
|
-
'Supported languages are not defined. Use `vary:languages` directive
|
|
15
|
+
'Supported languages are not defined. Use `vary:languages` directive')
|
|
16
16
|
|
|
17
17
|
assert.ok(properties.languages.length > 0,
|
|
18
|
-
'List of supported languages is empty
|
|
18
|
+
'List of supported languages is empty')
|
|
19
19
|
|
|
20
20
|
const negotiator = new Negotiator(input.request)
|
|
21
21
|
const language = negotiator.language(properties.languages) ?? properties.languages[0]
|
package/transpiled/Endpoint.js
CHANGED
|
@@ -103,7 +103,7 @@ class Endpoint {
|
|
|
103
103
|
version(etag) {
|
|
104
104
|
const match = etag.match(ETAG);
|
|
105
105
|
if (match === null)
|
|
106
|
-
throw new http.BadRequest('Invalid ETag
|
|
106
|
+
throw new http.BadRequest('Invalid ETag');
|
|
107
107
|
return Number.parseInt(match.groups.version);
|
|
108
108
|
}
|
|
109
109
|
}
|
|
@@ -115,12 +115,12 @@ class EndpointsFactory {
|
|
|
115
115
|
}
|
|
116
116
|
create(method, context) {
|
|
117
117
|
if (method.mapping === undefined)
|
|
118
|
-
throw new Error('Cannot create Endpoint without mapping
|
|
118
|
+
throw new Error('Cannot create Endpoint without mapping');
|
|
119
119
|
const mapping = Mapping_1.Mapping.create(method.mapping.query);
|
|
120
120
|
const namespace = method.mapping.namespace ?? context.extension.namespace;
|
|
121
121
|
const component = method.mapping.component ?? context.extension.component;
|
|
122
122
|
if (namespace === undefined || component === undefined)
|
|
123
|
-
throw new Error('Annotation endpoints must be fully qualified
|
|
123
|
+
throw new Error('Annotation endpoints must be fully qualified');
|
|
124
124
|
const discovery = this.remotes.discover(namespace, component, context.extension.version);
|
|
125
125
|
return new Endpoint(method.mapping.endpoint, mapping, discovery);
|
|
126
126
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Endpoint.js","sourceRoot":"","sources":["../source/Endpoint.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAkC;AAClC,uCAAmC;AACnC,6CAA8B;AAO9B,MAAa,QAAQ;IACF,QAAQ,CAAQ;IAChB,OAAO,CAAS;IAChB,SAAS,CAAiB;IACnC,MAAM,GAAkB,IAAI,CAAA;IAEpC,YAAoB,QAAgB,EAAE,OAAgB,EAAE,SAA0B;QAChF,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAEM,KAAK,CAAC,IAAI,CAAE,OAAqB,EAAE,UAA2B;QACnE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAA;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;QAEzD,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,SAAS,CAAA;QAEpC,IAAI,OAAO,CAAC,KAAK;YACf,kBAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE;gBACjC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ;gBACtD,OAAO;aACR,CAAC,CAAA;QAEJ,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAE9D,IAAI,KAAK,YAAY,KAAK;YACxB,MAAM,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAA;QAE3C,MAAM,OAAO,GAAyB,EAAE,CAAA;QAExC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;YACvE,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;YAErD,OAAO,CAAC,OAAO,KAAK,IAAI,OAAO,EAAE,CAAA;YAEjC,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChE,OAAO,CAAC,MAAM,GAAG,GAAG,CAAA;gBACpB,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;gBAEjC,OAAO,OAAO,CAAA;YAChB,CAAC;;gBACC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;QACjE,CAAC;QAED,OAAO,CAAC,IAAI,GAAG,KAAK,CAAA;QAEpB,OAAO,OAAO,CAAA;IAChB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAE,UAA2B;QAC/C,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,SAAS,CAAA;QAEpC,6DAA6D;QAC7D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAE1D,IAAI,KAAK,GAAkC,IAAI,CAAA;QAE/C,IAAI,SAAS,CAAC,KAAK,EAAE,IAAI,KAAK,QAAQ;YACpC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACnC,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;gBAEzD,qCAAqC;gBACrC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,KAAK,KAAK,EAAE,CAAA;oBACZ,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAA;oBAE9B,OAAO,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;gBACnD,CAAC;YACH,CAAC;QAEH,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QAC7C,MAAM,aAAa,GAAkB,EAAE,CAAA;QAEvC,IAAI,KAAK,KAAK,IAAI;YAChB,aAAa,CAAC,KAAK,GAAG,KAAK,CAAA;QAE7B,IAAI,KAAK,KAAK,IAAI;YAChB,aAAa,CAAC,KAAK,GAAG,KAAK,CAAA;QAE7B,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,SAAS,CAAC,CAAA;QAEvC,OAAO,aAAa,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,SAAS,CAAA;QAEpC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;IACzC,CAAC;IAEO,KAAK,CAAE,OAAqB;QAClC,MAAM,KAAK,GAAe,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QACtE,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QAEhD,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS;YAC9C,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAEpC,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,OAAO,CAAE,IAAY;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAE9B,IAAI,KAAK,KAAK,IAAI;YAChB,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"Endpoint.js","sourceRoot":"","sources":["../source/Endpoint.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,6 +49,8 @@ class Server extends core_1.Connector {
|
|
|
49
49
|
this.properties = properties;
|
|
50
50
|
this.authorities = Object.fromEntries(Object.entries(properties.authorities).map(([key, value]) => [value, key]));
|
|
51
51
|
this.server.on('request', (req, res) => this.listener(req, res));
|
|
52
|
+
if (this.properties.debug)
|
|
53
|
+
this.server.on('connection', (socket) => openspan_1.console.debug('Connected', { address: socket.remoteAddress }));
|
|
52
54
|
}
|
|
53
55
|
static create(options) {
|
|
54
56
|
const properties = Object.assign({}, DEFAULTS, options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Server.js","sourceRoot":"","sources":["../../source/HTTP/Server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAwB;AACxB,sDAAwB;AACxB,gDAAiC;AACjC,6CAAkC;AAClC,mDAAiD;AACjD,uCAAkC;AAClC,uCAAwC;AACxC,yCAAwD;AACxD,6CAAqD;AACrD,uCAAmC;AAGnC,MAAa,MAAO,SAAQ,gBAAS;IAClB,MAAM,GAAgB,IAAI,CAAC,YAAY,EAAE,CAAA;IACzC,UAAU,CAAY;IACtB,WAAW,CAAwB;IAC5C,OAAO,CAAa;IACpB,KAAK,GAAY,KAAK,CAAA;IACtB,SAAS,GAAW,CAAC,CAAA;IAE7B,YAAqB,UAAsB;QACzC,KAAK,EAAE,CAAA;QAEP,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;QAEjH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"Server.js","sourceRoot":"","sources":["../../source/HTTP/Server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAwB;AACxB,sDAAwB;AACxB,gDAAiC;AACjC,6CAAkC;AAClC,mDAAiD;AACjD,uCAAkC;AAClC,uCAAwC;AACxC,yCAAwD;AACxD,6CAAqD;AACrD,uCAAmC;AAGnC,MAAa,MAAO,SAAQ,gBAAS;IAClB,MAAM,GAAgB,IAAI,CAAC,YAAY,EAAE,CAAA;IACzC,UAAU,CAAY;IACtB,WAAW,CAAwB;IAC5C,OAAO,CAAa;IACpB,KAAK,GAAY,KAAK,CAAA;IACtB,SAAS,GAAW,CAAC,CAAA;IAE7B,YAAqB,UAAsB;QACzC,KAAK,EAAE,CAAA;QAEP,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;QAEjH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QAEhE,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK;YACvB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CACtC,kBAAO,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAA;IACpE,CAAC;IAEM,MAAM,CAAC,MAAM,CAAE,OAAgB;QACpC,MAAM,UAAU,GAAe,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;QAEnE,OAAO,IAAI,MAAM,CAAC,UAAU,CAAC,CAAA;IAC/B,CAAC;IAEM,MAAM,CAAE,OAAmB;QAChC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAEkB,KAAK,CAAC,IAAI;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC3B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAExC,MAAM,IAAA,kBAAI,EAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QAEpC,kBAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;QAExC,MAAM,IAAA,qBAAU,EAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QAEvC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;QAEjB,kBAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACvB,CAAC;IAEkB,KAAK,CAAC,KAAK;QAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAElB,kBAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAA;QAEjD,MAAM,IAAA,kBAAI,EAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAEhC,kBAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACzB,CAAC;IAEO,QAAQ,CAAE,OAA6B,EAAE,QAA6B;QAC5E,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACjF,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;YAE7B,OAAM;QACR,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,KAAK;gBACZ,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC,GAAG,EAAE,CAAA;iBAC3D,CAAC;gBACJ,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;gBAE9E,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAC,GAAG,EAAE,CAAA;YAC7D,CAAC;YAED,OAAM;QACR,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAK,CAAA;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAA;QAChD,MAAM,OAAO,GAAG,IAAI,iBAAO,CAAC,SAAS,EAAE,OAA0B,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;QAEnF,IAAI,CAAC,OAAQ,CAAC,OAAO,CAAC;aACnB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;aACrC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAA;IACxC,CAAC;IAEO,OAAO,CAAE,OAAgB,EAAE,QAA6B;QAC9D,OAAO,CAAC,OAAwB,EAAE,EAAE;YAClC,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;YAE3B,IAAI,MAAM,KAAK,SAAS;gBACtB,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI;oBACvB,MAAM,GAAG,GAAG,CAAA;qBACT,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM;oBACxC,MAAM,GAAG,GAAG,CAAA;qBACT,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;oBACjC,MAAM,GAAG,GAAG,CAAA;;oBAEZ,MAAM,GAAG,GAAG,CAAA;YAEhB,QAAQ,CAAC,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAA;YAC7C,IAAA,gBAAK,EAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;QACnC,CAAC,CAAA;IACH,CAAC;IAEO,IAAI,CAAE,OAAgB,EAAE,QAA6B;QAC3D,OAAO,KAAK,EAAE,SAAgB,EAAE,EAAE;YAChC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ;gBAC3B,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;YAE7B,QAAQ,CAAC,UAAU,GAAG,SAAS,YAAY,sBAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAA;YAE7E,MAAM,OAAO,GAAoB,EAAE,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAA;YAEhE,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI;gBAC1B,OAAO,CAAC,IAAI,GAAG,SAAS,CAAA;iBACrB,IAAI,SAAS,YAAY,wBAAW,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK;gBAChE,OAAO,CAAC,IAAI;oBACV,SAAS,YAAY,sBAAS;wBAC5B,CAAC,CAAC,SAAS,CAAC,IAAI;wBAChB,CAAC,CAAC,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,OAAO,CAAA;YAE5C,IAAA,gBAAK,EAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;QACnC,CAAC,CAAA;IACH,CAAC;CACF;AA5HD,wBA4HC;AAED,8CAA8C;AAC9C,KAAK,UAAU,IAAI,CAAE,OAA6B;IAChD,MAAM,OAAO,GAAG,iBAAE,CAAC,iBAAiB,CAAC,iBAAE,CAAC,OAAO,CAAC,CAAA;IAEhD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAErB,MAAM,IAAA,kBAAI,EAAC,OAAO,EAAE,KAAK,CAAC,CAAA;AAC5B,CAAC;AAEY,QAAA,IAAI,GAAG,IAAI,CAAA;AACX,QAAA,KAAK,GAAG,CAAC,CAAA,CAAC,UAAU;AAEjC,MAAM,QAAQ,GAAoC;IAChD,OAAO,EAAE,IAAI,GAAG,CAAS,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChG,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,KAAK;IACZ,IAAI,EAAE,YAAI;IACV,KAAK,EAAE,aAAK,GAAG,IAAI;CACpB,CAAA"}
|
|
@@ -39,7 +39,7 @@ class Scheme {
|
|
|
39
39
|
const [scheme] = (0, split_1.split)(input.request.headers.authorization);
|
|
40
40
|
if (scheme !== this.scheme)
|
|
41
41
|
throw new http.Forbidden(this.Scheme +
|
|
42
|
-
' authentication scheme is required to access this resource
|
|
42
|
+
' authentication scheme is required to access this resource');
|
|
43
43
|
return false;
|
|
44
44
|
}
|
|
45
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Scheme.js","sourceRoot":"","sources":["../../../source/directives/auth/Scheme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAkC;AAElC,mCAA+B;AAE/B,MAAa,MAAM;IACA,MAAM,CAAQ;IACd,MAAM,CAAQ;IAE/B,YAAoB,MAAc;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAA;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IAC7D,CAAC;IAEM,SAAS,CAAE,CAAkB,EAAE,KAAY;QAChD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,KAAK,SAAS;YACnD,OAAO,KAAK,CAAA;QAEd,MAAM,CAAC,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;QAE3D,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM;YACxB,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM;gBAClC,
|
|
1
|
+
{"version":3,"file":"Scheme.js","sourceRoot":"","sources":["../../../source/directives/auth/Scheme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAkC;AAElC,mCAA+B;AAE/B,MAAa,MAAM;IACA,MAAM,CAAQ;IACd,MAAM,CAAQ;IAE/B,YAAoB,MAAc;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAA;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IAC7D,CAAC;IAEM,SAAS,CAAE,CAAkB,EAAE,KAAY;QAChD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,KAAK,SAAS;YACnD,OAAO,KAAK,CAAA;QAEd,MAAM,CAAC,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;QAE3D,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM;YACxB,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM;gBAClC,4DAA4D,CAAC,CAAA;QAEjE,OAAO,KAAK,CAAA;IACd,CAAC;CACF;AArBD,wBAqBC"}
|
|
@@ -55,7 +55,7 @@ class Output {
|
|
|
55
55
|
return;
|
|
56
56
|
if (typeof message.body !== 'object' || this.permissions.length === 0) {
|
|
57
57
|
if (this.omitted)
|
|
58
|
-
openspan_1.console.warn('Permissions for \'io:output\' are not specified properly
|
|
58
|
+
openspan_1.console.warn('Permissions for \'io:output\' are not specified properly, response omitted', { path: context.url.pathname });
|
|
59
59
|
delete message.body;
|
|
60
60
|
return;
|
|
61
61
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Output.js","sourceRoot":"","sources":["../../../source/directives/io/Output.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAoC;AACpC,uCAAkC;AAClC,mDAAoC;AAMpC,MAAa,MAAM;IACA,QAAQ,GAAY,KAAK,CAAA;IACzB,OAAO,GAAY,IAAI,CAAA;IACvB,WAAW,GAAa,EAAE,CAAA;IAE3C,YAAoB,WAAwB;QAC1C,IAAI,OAAO,WAAW,KAAK,SAAS;YAClC,IAAI,WAAW;gBACb,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;;gBAEpB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;;YAGtB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAClC,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAE,WAAoB;QAC1C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,gCAAgC,CAAC,CAAA;IACxE,CAAC;IAEM,MAAM,CAAE,OAAgB;QAC7B,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAA;IAC5D,CAAC;IAEO,WAAW,CAAE,OAAgB;QACnC,OAAO,CAAC,OAAwB,EAAQ,EAAE;YACxC,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,IAAI,GAAG,CAAA;YACnE,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,YAAY,oBAAM,CAAA;YAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAA;YAEhE,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,IAAI,MAAM,IAAI,IAAI;gBAC1C,OAAM;YAER,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtE,IAAI,IAAI,CAAC,OAAO;oBACd,kBAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"Output.js","sourceRoot":"","sources":["../../../source/directives/io/Output.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAoC;AACpC,uCAAkC;AAClC,mDAAoC;AAMpC,MAAa,MAAM;IACA,QAAQ,GAAY,KAAK,CAAA;IACzB,OAAO,GAAY,IAAI,CAAA;IACvB,WAAW,GAAa,EAAE,CAAA;IAE3C,YAAoB,WAAwB;QAC1C,IAAI,OAAO,WAAW,KAAK,SAAS;YAClC,IAAI,WAAW;gBACb,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;;gBAEpB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;;YAGtB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAClC,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAE,WAAoB;QAC1C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,gCAAgC,CAAC,CAAA;IACxE,CAAC;IAEM,MAAM,CAAE,OAAgB;QAC7B,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAA;IAC5D,CAAC;IAEO,WAAW,CAAE,OAAgB;QACnC,OAAO,CAAC,OAAwB,EAAQ,EAAE;YACxC,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,IAAI,GAAG,CAAA;YACnE,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,YAAY,oBAAM,CAAA;YAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAA;YAEhE,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,IAAI,MAAM,IAAI,IAAI;gBAC1C,OAAM;YAER,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtE,IAAI,IAAI,CAAC,OAAO;oBACd,kBAAO,CAAC,IAAI,CAAC,4EAA4E,EACvF,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAA;gBAEnC,OAAO,OAAO,CAAC,IAAI,CAAA;gBAEnB,OAAM;YACR,CAAC;YAED,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAU,OAAO,CAAC,IAAI,EAC5C,oEAAoE,CAAC,CAAA;YAEvE,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;gBAC7B,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAiB,CAAC,CAAC,CAAA;;gBAExE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACzC,CAAC,CAAA;IACH,CAAC;IAEO,GAAG,CAAE,OAAgB;QAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;aACpC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;QAEpD,OAAO,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IACpC,CAAC;CACF;AA3DD,wBA2DC"}
|
|
@@ -43,16 +43,16 @@ class Delete extends Directive_1.Directive {
|
|
|
43
43
|
}
|
|
44
44
|
async apply(storage, input, parameters) {
|
|
45
45
|
this.storage ??= await this.discovery;
|
|
46
|
-
const entry = await this.storage.invoke('get', {
|
|
47
|
-
input: {
|
|
48
|
-
storage,
|
|
49
|
-
path: input.request.url
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
if (entry instanceof Error)
|
|
53
|
-
throw new HTTP_1.NotFound();
|
|
54
46
|
const output = {};
|
|
55
47
|
if (this.workflow !== undefined) {
|
|
48
|
+
const entry = await this.storage.invoke('head', {
|
|
49
|
+
input: {
|
|
50
|
+
storage,
|
|
51
|
+
path: input.request.url
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
if (entry instanceof Error)
|
|
55
|
+
throw new HTTP_1.NotFound();
|
|
56
56
|
output.status = 202;
|
|
57
57
|
output.body = stream_1.Readable.from(this.execute(input, storage, entry, parameters));
|
|
58
58
|
}
|
|
@@ -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;AACtC,2CAAuC;AAUvC,MAAa,MAAO,SAAQ,qBAAS;IACnB,QAAQ,GAAG,IAAI,CAAA;IAEd,QAAQ,CAAW;IACnB,SAAS,CAAoB;IACtC,OAAO,GAAqB,IAAI,CAAA;IAExC,YAAoB,OAAuB,EAAE,SAA6B,EAAE,OAAgB;QAC1F,KAAK,EAAE,CAAA;QACP,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,
|
|
1
|
+
{"version":3,"file":"Delete.js","sourceRoot":"","sources":["../../../source/directives/octets/Delete.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAiC;AACjC,qCAAqC;AACrC,mDAAoC;AACpC,2CAAsC;AACtC,2CAAuC;AAUvC,MAAa,MAAO,SAAQ,qBAAS;IACnB,QAAQ,GAAG,IAAI,CAAA;IAEd,QAAQ,CAAW;IACnB,SAAS,CAAoB;IACtC,OAAO,GAAqB,IAAI,CAAA;IAExC,YAAoB,OAAuB,EAAE,SAA6B,EAAE,OAAgB;QAC1F,KAAK,EAAE,CAAA;QACP,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,MAAM,GAAW,EAAE,CAAA;QAEzB,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAe,MAAM,EAC1D;gBACE,KAAK,EAAE;oBACL,OAAO;oBACP,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG;iBACxB;aACF,CAAC,CAAA;YAEJ,IAAI,KAAK,YAAY,KAAK;gBACxB,MAAM,IAAI,eAAQ,EAAE,CAAA;YAEtB,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;AAlED,wBAkEC"}
|
|
@@ -2,17 +2,16 @@ import { Directive } from './Directive';
|
|
|
2
2
|
import type { Component } from '@toa.io/core';
|
|
3
3
|
import type { Output } from '../../io';
|
|
4
4
|
import type { Input } from './types';
|
|
5
|
-
export declare class
|
|
5
|
+
export declare class Get extends Directive {
|
|
6
6
|
readonly targeted = true;
|
|
7
7
|
private readonly options;
|
|
8
8
|
private readonly discovery;
|
|
9
9
|
private storage;
|
|
10
10
|
constructor(options: Options | null, discovery: Promise<Component>);
|
|
11
11
|
apply(storage: string, input: Input): Promise<Output>;
|
|
12
|
-
private fetch;
|
|
13
12
|
private get;
|
|
13
|
+
private head;
|
|
14
14
|
}
|
|
15
15
|
export interface Options {
|
|
16
|
-
blob?: boolean;
|
|
17
16
|
meta?: boolean;
|
|
18
17
|
}
|