@toa.io/extensions.exposition 1.0.0-alpha.271 → 1.0.0-alpha.273
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/CHANGELOG.md +40 -0
- package/components/{exposition.stash → exposition.atom}/manifest.toa.yaml +4 -4
- package/components/{exposition.stash → exposition.atom}/operations/meter.js +1 -1
- package/components/exposition.octets/manifest.toa.yaml +28 -10
- package/components/exposition.octets/operations/put.js +20 -5
- package/components/identity.bans/manifest.toa.yaml +26 -7
- package/components/identity.bans/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.basic/manifest.toa.yaml +106 -30
- package/components/identity.basic/operations/authenticate.js +6 -3
- package/components/identity.basic/operations/authenticate.js.map +1 -1
- package/components/identity.basic/operations/incept.js +3 -2
- package/components/identity.basic/operations/incept.js.map +1 -1
- package/components/identity.basic/operations/transit.js +16 -5
- package/components/identity.basic/operations/transit.js.map +1 -1
- package/components/identity.basic/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.basic/source/authenticate.ts +7 -3
- package/components/identity.basic/source/incept.ts +3 -2
- package/components/identity.basic/source/transit.ts +19 -5
- package/components/identity.credentials/manifest.toa.yaml +34 -13
- package/components/identity.credentials/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.federation/manifest.toa.yaml +120 -28
- package/components/identity.federation/operations/authenticate.js +3 -2
- package/components/identity.federation/operations/authenticate.js.map +1 -1
- package/components/identity.federation/operations/create.js +4 -2
- package/components/identity.federation/operations/create.js.map +1 -1
- package/components/identity.federation/operations/lib/errors.d.ts +70 -11
- package/components/identity.federation/operations/lib/errors.js +40 -11
- package/components/identity.federation/operations/lib/errors.js.map +1 -1
- package/components/identity.federation/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.federation/source/authenticate.ts +3 -2
- package/components/identity.federation/source/create.ts +4 -2
- package/components/identity.federation/source/lib/errors.ts +49 -12
- package/components/identity.keys/manifest.toa.yaml +14 -6
- package/components/identity.keys/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.otp/manifest.toa.yaml +44 -15
- package/components/identity.otp/operations/authenticate.js +9 -4
- package/components/identity.otp/operations/authenticate.js.map +1 -1
- package/components/identity.otp/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.otp/source/authenticate.ts +11 -4
- package/components/identity.passkeys/manifest.toa.yaml +38 -8
- package/components/identity.passkeys/operations/authenticate.js +3 -2
- package/components/identity.passkeys/operations/authenticate.js.map +1 -1
- package/components/identity.passkeys/operations/create.js +6 -3
- package/components/identity.passkeys/operations/create.js.map +1 -1
- package/components/identity.passkeys/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.passkeys/operations/use.js +6 -3
- package/components/identity.passkeys/operations/use.js.map +1 -1
- package/components/identity.passkeys/source/authenticate.ts +3 -2
- package/components/identity.passkeys/source/create.ts +7 -3
- package/components/identity.passkeys/source/use.ts +7 -3
- package/components/identity.roles/manifest.toa.yaml +41 -10
- package/components/identity.roles/operations/grant.js +3 -2
- package/components/identity.roles/operations/grant.js.map +1 -1
- package/components/identity.roles/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.roles/source/grant.ts +3 -2
- package/components/identity.tokens/manifest.toa.yaml +99 -39
- package/components/identity.tokens/operations/authenticate.js +6 -3
- package/components/identity.tokens/operations/authenticate.js.map +1 -1
- package/components/identity.tokens/operations/decrypt.js +9 -4
- package/components/identity.tokens/operations/decrypt.js.map +1 -1
- package/components/identity.tokens/operations/encrypt.js +3 -2
- package/components/identity.tokens/operations/encrypt.js.map +1 -1
- package/components/identity.tokens/operations/tsconfig.tsbuildinfo +1 -1
- package/components/identity.tokens/source/authenticate.ts +7 -3
- package/components/identity.tokens/source/decrypt.ts +11 -4
- package/components/identity.tokens/source/encrypt.ts +3 -2
- package/documentation/identity.md +4 -1
- package/documentation/notes/throttling.md +1 -1
- package/features/cors.feature +1 -1
- package/features/dev.feature +1 -1
- package/features/identity.federation.feature +3 -2
- package/features/{identtiy.tokens.custom.feature → identity.tokens.custom.feature} +39 -0
- package/features/introspection.feature +27 -34
- package/features/map.feature +1 -1
- package/features/octets.download.feature +1 -1
- package/features/octets.meta.feature +1 -1
- package/features/passkeys.feature +8 -8
- package/features/query.feature +27 -0
- package/features/require.feature +2 -2
- package/features/response.feature +3 -3
- package/features/steps/Components.ts +12 -4
- package/features/steps/Database.ts +9 -0
- package/features/steps/Gateway.ts +13 -13
- package/features/steps/HTTP.ts +3 -5
- package/features/steps/Parameters.ts +2 -3
- package/features/steps/Realtime.ts +4 -4
- package/features/steps/Workspace.ts +8 -3
- package/features/steps/components/audit/manifest.toa.yaml +12 -5
- package/features/steps/components/echo/manifest.toa.yaml +33 -8
- package/features/steps/components/notify/manifest.toa.yaml +12 -5
- package/features/steps/components/octets.tester/manifest.toa.yaml +43 -14
- package/features/steps/components/orders/manifest.toa.yaml +22 -5
- package/features/steps/components/pots/manifest.toa.yaml +71 -17
- package/features/steps/components/pricing/manifest.toa.yaml +8 -2
- package/features/steps/components/sequences/manifest.toa.yaml +3 -1
- package/features/steps/components/users/manifest.toa.yaml +18 -3
- package/features/steps/components/users.properties/manifest.toa.yaml +12 -2
- package/package.json +6 -7
- package/schemas/annotation.cos.yaml +37 -17
- package/schemas/directive.cos.yaml +7 -3
- package/schemas/io/throttle.cos.yaml +47 -8
- package/schemas/method.cos.yaml +21 -9
- package/schemas/node.cos.yaml +22 -7
- package/schemas/octets/delete.cos.yaml +15 -2
- package/schemas/octets/get.cos.yaml +5 -2
- package/schemas/octets/put.cos.yaml +6 -3
- package/schemas/octets/workflow.cos.yaml +0 -1
- package/schemas/query.cos.yaml +31 -14
- package/schemas/querystring.cos.yaml +19 -7
- package/schemas/range.cos.yaml +10 -2
- package/schemas/route.cos.yaml +6 -2
- package/source/Branch.test.ts +37 -0
- package/source/Branch.ts +37 -0
- package/source/Factory.ts +5 -5
- package/source/Gateway.ts +29 -14
- package/source/HTTP/formats/yaml.test.ts +4 -2
- package/source/RTD/Tree.ts +4 -1
- package/source/Tenant.ts +15 -4
- package/source/deployment.ts +3 -4
- package/source/directives/io/IO.ts +2 -2
- package/source/directives/io/lib/throttle/Sync.ts +4 -4
- package/source/directives/map/Headers.ts +8 -1
- package/source/directives/octets/Put.ts +6 -3
- package/source/root.ts +2 -2
- package/transpiled/Branch.d.ts +23 -0
- package/transpiled/Branch.js +16 -0
- package/transpiled/Branch.js.map +1 -1
- package/transpiled/Factory.js +4 -4
- package/transpiled/Factory.js.map +1 -1
- package/transpiled/Gateway.d.ts +7 -0
- package/transpiled/Gateway.js +26 -8
- package/transpiled/Gateway.js.map +1 -1
- package/transpiled/RTD/Tree.js +4 -1
- package/transpiled/RTD/Tree.js.map +1 -1
- package/transpiled/Tenant.d.ts +8 -2
- package/transpiled/Tenant.js +12 -2
- package/transpiled/Tenant.js.map +1 -1
- package/transpiled/deployment.js +3 -4
- package/transpiled/deployment.js.map +1 -1
- package/transpiled/directives/io/IO.d.ts +1 -1
- package/transpiled/directives/io/IO.js +2 -2
- package/transpiled/directives/io/IO.js.map +1 -1
- package/transpiled/directives/io/lib/throttle/Sync.d.ts +2 -2
- package/transpiled/directives/io/lib/throttle/Sync.js +4 -4
- package/transpiled/directives/io/lib/throttle/Sync.js.map +1 -1
- package/transpiled/directives/map/Headers.js +7 -1
- package/transpiled/directives/map/Headers.js.map +1 -1
- package/transpiled/directives/octets/Put.js.map +1 -1
- package/transpiled/root.js +1 -1
- package/transpiled/root.js.map +1 -1
- package/transpiled/tsconfig.tsbuildinfo +1 -1
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { compare } from 'bcryptjs'
|
|
2
2
|
import { type Query, type Maybe } from '@toa.io/types'
|
|
3
|
-
import { Err } from 'error-value'
|
|
4
3
|
import { type Context } from './types'
|
|
5
4
|
|
|
6
5
|
export async function computation (input: Input, context: Context): Promise<Maybe<Output>> {
|
|
@@ -27,8 +26,13 @@ export async function computation (input: Input, context: Context): Promise<Mayb
|
|
|
27
26
|
return ERR_PASSWORD_MISMATCH
|
|
28
27
|
}
|
|
29
28
|
|
|
30
|
-
const ERR_NOT_FOUND = new
|
|
31
|
-
|
|
29
|
+
const ERR_NOT_FOUND = new (class NotFoundError extends Error {
|
|
30
|
+
public readonly code = 'NOT_FOUND'
|
|
31
|
+
})()
|
|
32
|
+
|
|
33
|
+
const ERR_PASSWORD_MISMATCH = new (class PasswordMismatchError extends Error {
|
|
34
|
+
public readonly code = 'PASSWORD_MISMATCH'
|
|
35
|
+
})()
|
|
32
36
|
|
|
33
37
|
interface Input {
|
|
34
38
|
authority: string
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { Err } from 'error-value'
|
|
2
1
|
import type { Context } from './types'
|
|
3
2
|
import type { Maybe } from '@toa.io/types'
|
|
4
3
|
|
|
@@ -25,7 +24,9 @@ export async function effect (input: Input, context: Context): Promise<Maybe<Out
|
|
|
25
24
|
return await context.local.transit(request)
|
|
26
25
|
}
|
|
27
26
|
|
|
28
|
-
const INVALID_CREDENTIALS = new
|
|
27
|
+
const INVALID_CREDENTIALS = new (class InvalidCredentialsError extends Error {
|
|
28
|
+
public readonly code = 'INVALID_CREDENTIALS'
|
|
29
|
+
})()
|
|
29
30
|
|
|
30
31
|
interface Input {
|
|
31
32
|
authority: string
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { genSalt, hash } from 'bcryptjs'
|
|
2
|
-
import { Err } from 'error-value'
|
|
3
2
|
import type { Maybe, Operation } from '@toa.io/types'
|
|
4
3
|
import type { Context, Entity, TransitInput, IdOutput } from './types'
|
|
5
4
|
|
|
@@ -65,9 +64,24 @@ function invalid (value: string, expressions: RegExp[]): boolean {
|
|
|
65
64
|
return expressions.some((expression) => !expression.test(value))
|
|
66
65
|
}
|
|
67
66
|
|
|
68
|
-
const ERR_PRINCIPAL_LOCKED = new
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
67
|
+
const ERR_PRINCIPAL_LOCKED = new (class PrincipalLockedError extends Error {
|
|
68
|
+
public readonly code = 'PRINCIPAL_LOCKED'
|
|
69
|
+
public override readonly message = 'Principal username cannot be changed'
|
|
70
|
+
})()
|
|
71
|
+
|
|
72
|
+
const ERR_INVALID_USERNAME = new (class InvalidUsernameError extends Error {
|
|
73
|
+
public readonly code = 'INVALID_USERNAME'
|
|
74
|
+
public override readonly message = 'Username is not meeting the requirements'
|
|
75
|
+
})()
|
|
76
|
+
|
|
77
|
+
const ERR_INVALID_PASSWORD = new (class InvalidPasswordError extends Error {
|
|
78
|
+
public readonly code = 'INVALID_PASSWORD'
|
|
79
|
+
public override readonly message = 'Password is not meeting the requirements'
|
|
80
|
+
})()
|
|
81
|
+
|
|
82
|
+
const ERR_EXISTS = new (class ExistsError extends Error {
|
|
83
|
+
public readonly code = 'EXISTS'
|
|
84
|
+
public override readonly message = 'Basic credentials already exist'
|
|
85
|
+
})()
|
|
72
86
|
|
|
73
87
|
type Tokens = Context['remote']['identity']['tokens']
|
|
@@ -10,7 +10,9 @@ operations:
|
|
|
10
10
|
type: string
|
|
11
11
|
identity:
|
|
12
12
|
type: string
|
|
13
|
-
required:
|
|
13
|
+
required:
|
|
14
|
+
- authority
|
|
15
|
+
- identity
|
|
14
16
|
output:
|
|
15
17
|
type: object
|
|
16
18
|
properties:
|
|
@@ -21,30 +23,49 @@ operations:
|
|
|
21
23
|
properties:
|
|
22
24
|
username:
|
|
23
25
|
type: string
|
|
24
|
-
required:
|
|
26
|
+
required:
|
|
27
|
+
- username
|
|
25
28
|
federation:
|
|
26
29
|
type: array
|
|
27
30
|
items:
|
|
28
31
|
type: object
|
|
29
32
|
additionalProperties: false
|
|
30
33
|
properties:
|
|
31
|
-
id:
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
34
|
+
id:
|
|
35
|
+
type: string
|
|
36
|
+
iss:
|
|
37
|
+
type: string
|
|
38
|
+
_created:
|
|
39
|
+
type: number
|
|
40
|
+
required:
|
|
41
|
+
- id
|
|
42
|
+
- iss
|
|
43
|
+
- _created
|
|
35
44
|
passkeys:
|
|
36
45
|
type: array
|
|
37
46
|
items:
|
|
38
47
|
type: object
|
|
39
48
|
additionalProperties: false
|
|
40
49
|
properties:
|
|
41
|
-
id:
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
50
|
+
id:
|
|
51
|
+
type: string
|
|
52
|
+
aid:
|
|
53
|
+
type: string
|
|
54
|
+
synced:
|
|
55
|
+
type: boolean
|
|
56
|
+
label:
|
|
57
|
+
type: string
|
|
58
|
+
_created:
|
|
59
|
+
type: number
|
|
60
|
+
required:
|
|
61
|
+
- id
|
|
62
|
+
- aid
|
|
63
|
+
- synced
|
|
64
|
+
- _created
|
|
65
|
+
required:
|
|
66
|
+
- basic
|
|
67
|
+
- federation
|
|
68
|
+
- passkeys
|
|
48
69
|
|
|
49
70
|
exposition:
|
|
50
71
|
/:identity:
|