@toa.io/extensions.exposition 1.0.0-alpha.292 → 1.0.0-alpha.293
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/package.json +8 -0
- package/components/identity.federation/package.json +8 -0
- package/components/identity.passkeys/package.json +8 -0
- package/components/identity.tokens/package.json +10 -0
- package/package.json +24 -13
- package/transpiled/Endpoint.js +3 -0
- package/transpiled/Endpoint.js.map +1 -1
- package/transpiled/Introspection.d.ts +6 -0
- package/transpiled/Introspection.js +1 -0
- package/transpiled/Introspection.js.map +1 -1
- package/transpiled/MCP/schema.js +2 -2
- package/transpiled/Query.d.ts +2 -12
- package/transpiled/Query.js +2 -12
- package/transpiled/Query.js.map +1 -1
- package/transpiled/RTD/Endpoint.d.ts +2 -3
- package/ui/dist/_app/immutable/assets/0.Cu0AnR_8.css +2 -0
- package/ui/dist/_app/immutable/assets/2.BghF56l_.css +1 -0
- package/ui/dist/_app/immutable/assets/ui.C8aD6zzF.css +1 -0
- package/ui/dist/_app/immutable/chunks/B8GvXrmq.js +1 -0
- package/ui/dist/_app/immutable/chunks/BVDJTrf4.js +3 -0
- package/ui/dist/_app/immutable/chunks/D6q28_Ok.js +86 -0
- package/ui/dist/_app/immutable/chunks/{aLpTDmOc.js → DVlaUfVU.js} +1 -1
- package/ui/dist/_app/immutable/chunks/DpB73ZB6.js +6 -0
- package/ui/dist/_app/immutable/entry/app.CTava8yn.js +2 -0
- package/ui/dist/_app/immutable/entry/start.yWN0gSLA.js +1 -0
- package/ui/dist/_app/immutable/nodes/0.HKRDBYrC.js +1 -0
- package/ui/dist/_app/immutable/nodes/1.CLa0ydOi.js +1 -0
- package/ui/dist/_app/immutable/nodes/2.C9Kaym8C.js +8 -0
- package/ui/dist/_app/immutable/nodes/3.C1X4_rXZ.js +1 -0
- package/ui/dist/_app/immutable/nodes/4.DdzDIi9E.js +1 -0
- package/ui/dist/_app/immutable/nodes/5.DpbmCMdw.js +1 -0
- package/ui/dist/_app/version.json +1 -1
- package/ui/dist/index.html +12 -12
- package/CHANGELOG.md +0 -42
- package/components/identity.bans/tsconfig.tsbuildinfo +0 -1
- package/components/identity.basic/source/lib/credentials.test.ts +0 -18
- package/components/identity.basic/tsconfig.tsbuildinfo +0 -1
- package/components/identity.clients/source/lib/canonical.test.ts +0 -43
- package/components/identity.clients/source/lib/cimd.test.ts +0 -122
- package/components/identity.clients/source/lib/redirect.test.ts +0 -47
- package/components/identity.clients/tsconfig.tsbuildinfo +0 -1
- package/components/identity.credentials/source/list.test.ts +0 -70
- package/components/identity.credentials/tsconfig.tsbuildinfo +0 -1
- package/components/identity.federation/source/lib/discovery.test.ts +0 -60
- package/components/identity.federation/source/list.test.ts +0 -41
- package/components/identity.federation/tsconfig.tsbuildinfo +0 -1
- package/components/identity.grants/tsconfig.tsbuildinfo +0 -1
- package/components/identity.keys/tsconfig.tsbuildinfo +0 -1
- package/components/identity.otp/tsconfig.tsbuildinfo +0 -1
- package/components/identity.passkeys/source/errors.test.ts +0 -34
- package/components/identity.passkeys/source/webauthn.test.ts +0 -26
- package/components/identity.passkeys/tsconfig.tsbuildinfo +0 -1
- package/components/identity.roles/tsconfig.tsbuildinfo +0 -1
- package/components/identity.tokens/source/authenticate.test.ts +0 -112
- package/components/identity.tokens/source/decrypt.test.ts +0 -216
- package/components/identity.tokens/source/encrypt.test.ts +0 -150
- package/components/identity.tokens/source/issue.test.ts +0 -73
- package/components/identity.tokens/source/lib/form.test.ts +0 -25
- package/components/identity.tokens/source/lib/paseto.test.ts +0 -62
- package/components/identity.tokens/tsconfig.tsbuildinfo +0 -1
- package/context.toa.yaml +0 -31
- package/cucumber.mjs +0 -7
- package/documentation/.assets/ia3-dark.jpg +0 -0
- package/documentation/.assets/ia3-light.jpg +0 -0
- package/documentation/.assets/overview-dark.jpg +0 -0
- package/documentation/.assets/overview-light.jpg +0 -0
- package/documentation/.assets/role-scopes-dark.jpg +0 -0
- package/documentation/.assets/role-scopes-light.jpg +0 -0
- package/documentation/.assets/rtd-dark.jpg +0 -0
- package/documentation/.assets/rtd-light.jpg +0 -0
- package/documentation/access.md +0 -350
- package/documentation/authorities.md +0 -51
- package/documentation/cache.md +0 -72
- package/documentation/components.md +0 -472
- package/documentation/consent.md +0 -101
- package/documentation/credentials.md +0 -88
- package/documentation/dev.md +0 -30
- package/documentation/discovery.md +0 -81
- package/documentation/flow.md +0 -44
- package/documentation/help.md +0 -122
- package/documentation/identity.md +0 -304
- package/documentation/introspection.md +0 -123
- package/documentation/io.md +0 -167
- package/documentation/ip.md +0 -24
- package/documentation/map.md +0 -123
- package/documentation/mcp.md +0 -183
- package/documentation/notes/desync.jpg +0 -0
- package/documentation/notes/peers.md +0 -59
- package/documentation/notes/sse.md +0 -71
- package/documentation/notes/throttling.md +0 -122
- package/documentation/oauth.md +0 -180
- package/documentation/octets.md +0 -334
- package/documentation/passkeys.md +0 -11
- package/documentation/protocol.md +0 -120
- package/documentation/query.md +0 -324
- package/documentation/require.md +0 -15
- package/documentation/rpc.md +0 -154
- package/documentation/tracing.md +0 -70
- package/documentation/tree.md +0 -199
- package/features/access.feature +0 -596
- package/features/annotation.feature +0 -32
- package/features/auth.assert.feature +0 -55
- package/features/auth.bearer.feature +0 -120
- package/features/auth.claims.feature +0 -171
- package/features/auth.incept.feature +0 -166
- package/features/auth.input.feature +0 -59
- package/features/authorities.basic.feature +0 -141
- package/features/authorities.feature +0 -71
- package/features/authorities.federation.feature +0 -100
- package/features/authorities.tokens.feature +0 -117
- package/features/body.feature +0 -76
- package/features/cache.feature +0 -368
- package/features/configuration.feature +0 -206
- package/features/cors.feature +0 -127
- package/features/credentials.feature +0 -106
- package/features/debug.feature +0 -34
- package/features/dev.feature +0 -90
- package/features/directives.feature +0 -61
- package/features/discovery.feature +0 -213
- package/features/discovery.ui.feature +0 -213
- package/features/dynamic.feature +0 -192
- package/features/errors.feature +0 -258
- package/features/etag.feature +0 -239
- package/features/flow.feature +0 -148
- package/features/help.feature +0 -512
- package/features/identity.bans.feature +0 -200
- package/features/identity.basic.feature +0 -666
- package/features/identity.feature +0 -240
- package/features/identity.federation.feature +0 -396
- package/features/identity.otp.feature +0 -142
- package/features/identity.roles.feature +0 -568
- package/features/identity.tokens.custom.feature +0 -430
- package/features/identity.tokens.feature +0 -131
- package/features/interruptions.feature +0 -20
- package/features/introspection.feature +0 -565
- package/features/introspection.map.feature +0 -108
- package/features/io.feature +0 -204
- package/features/io.throttle.feature +0 -166
- package/features/map.feature +0 -360
- package/features/mcp.feature +0 -753
- package/features/methods.feature +0 -48
- package/features/oauth.clients.feature +0 -195
- package/features/oauth.discovery.feature +0 -164
- package/features/oauth.grants.feature +0 -301
- package/features/octets.cloudinary.feature +0 -233
- package/features/octets.download.feature +0 -194
- package/features/octets.entries.feature +0 -83
- package/features/octets.feature +0 -306
- package/features/octets.head.feature +0 -40
- package/features/octets.location.feature +0 -83
- package/features/octets.meta.feature +0 -117
- package/features/octets.workflows.feature +0 -565
- package/features/passkeys.feature +0 -66
- package/features/probes.feature +0 -18
- package/features/query.feature +0 -389
- package/features/realtime.feature +0 -34
- package/features/require.feature +0 -66
- package/features/response.feature +0 -103
- package/features/routes.feature +0 -224
- package/features/rpc.feature +0 -429
- package/features/server.feature +0 -21
- package/features/site/_app/immutable/asset.js +0 -1
- package/features/site/favicon.ico +0 -0
- package/features/site/index.html +0 -10
- package/features/steps/.env.example +0 -5
- package/features/steps/Captures.ts +0 -20
- package/features/steps/Cloudinary.ts +0 -12
- package/features/steps/Common.ts +0 -38
- package/features/steps/Components.ts +0 -115
- package/features/steps/Database.ts +0 -106
- package/features/steps/Gateway.ts +0 -239
- package/features/steps/HTTP.ts +0 -96
- package/features/steps/IDP.ts +0 -361
- package/features/steps/Identity.ts +0 -54
- package/features/steps/OTP.ts +0 -42
- package/features/steps/Parameters.ts +0 -162
- package/features/steps/Probe.ts +0 -38
- package/features/steps/Realtime.ts +0 -175
- package/features/steps/Workspace.ts +0 -48
- package/features/steps/components/audit/manifest.toa.yaml +0 -20
- package/features/steps/components/audit/operations/record.js +0 -5
- package/features/steps/components/echo/manifest.toa.yaml +0 -59
- package/features/steps/components/echo/operations/affect.js +0 -3
- package/features/steps/components/echo/operations/compute.js +0 -3
- package/features/steps/components/echo/operations/echo.js +0 -3
- package/features/steps/components/echo/operations/error.js +0 -7
- package/features/steps/components/echo/operations/identity.js +0 -3
- package/features/steps/components/echo/operations/parameters.js +0 -3
- package/features/steps/components/echo/operations/ping.js +0 -3
- package/features/steps/components/echo/operations/unwrap.js +0 -3
- package/features/steps/components/echo.beacon/manifest.toa.yaml +0 -2
- package/features/steps/components/echo.beacon/operations/hello.js +0 -3
- package/features/steps/components/greeter/manifest.toa.yaml +0 -5
- package/features/steps/components/greeter/operations/greet.js +0 -3
- package/features/steps/components/notify/manifest.toa.yaml +0 -20
- package/features/steps/components/notify/operations/send.js +0 -5
- package/features/steps/components/octets.tester/manifest.toa.yaml +0 -73
- package/features/steps/components/octets.tester/operations/authority.js +0 -3
- package/features/steps/components/octets.tester/operations/bar.js +0 -9
- package/features/steps/components/octets.tester/operations/baz.js +0 -9
- package/features/steps/components/octets.tester/operations/concat.js +0 -5
- package/features/steps/components/octets.tester/operations/echo.js +0 -5
- package/features/steps/components/octets.tester/operations/err.js +0 -14
- package/features/steps/components/octets.tester/operations/foo.js +0 -5
- package/features/steps/components/octets.tester/operations/id.js +0 -5
- package/features/steps/components/octets.tester/operations/identity.js +0 -5
- package/features/steps/components/octets.tester/operations/lenna.png +0 -0
- package/features/steps/components/octets.tester/operations/redirect.js +0 -17
- package/features/steps/components/octets.tester/operations/yex.js +0 -14
- package/features/steps/components/octets.tester/operations/yield.js +0 -11
- package/features/steps/components/orders/manifest.toa.yaml +0 -30
- package/features/steps/components/orders/operations/create.js +0 -7
- package/features/steps/components/pots/manifest.toa.yaml +0 -91
- package/features/steps/components/pots/migrations/0002-indexes.yaml +0 -4
- package/features/steps/components/pricing/manifest.toa.yaml +0 -13
- package/features/steps/components/pricing/operations/quote.js +0 -3
- package/features/steps/components/sequences/manifest.toa.yaml +0 -11
- package/features/steps/components/sequences/operations/numbers.js +0 -5
- package/features/steps/components/sequences/operations/tokens.js +0 -14
- package/features/steps/components/users/manifest.toa.yaml +0 -30
- package/features/steps/components/users/operations/create.js +0 -11
- package/features/steps/components/users.properties/manifest.toa.yaml +0 -22
- package/features/steps/map.ts +0 -30
- package/features/steps/tsconfig.json +0 -9
- package/features/streams.feature +0 -35
- package/features/timestamps.feature +0 -41
- package/features/timing.feature +0 -49
- package/features/tracing.feature +0 -123
- package/source/Branch.test.ts +0 -40
- package/source/Branch.ts +0 -44
- package/source/Composition.ts +0 -51
- package/source/Context.ts +0 -11
- package/source/Directive.test.ts +0 -199
- package/source/Directive.ts +0 -248
- package/source/Discovery/Explorer.ts +0 -34
- package/source/Discovery/Site.test.ts +0 -147
- package/source/Discovery/Site.ts +0 -202
- package/source/Discovery/index.ts +0 -3
- package/source/Discovery/tree.test.ts +0 -175
- package/source/Discovery/tree.ts +0 -77
- package/source/Discovery/trunk.ts +0 -33
- package/source/Endpoint.test.ts +0 -67
- package/source/Endpoint.ts +0 -157
- package/source/Factory.ts +0 -42
- package/source/Gateway.ts +0 -390
- package/source/HTTP/Context.ts +0 -143
- package/source/HTTP/Probe.ts +0 -99
- package/source/HTTP/Server.ts +0 -435
- package/source/HTTP/Timing.ts +0 -14
- package/source/HTTP/address.test.ts +0 -28
- package/source/HTTP/address.ts +0 -16
- package/source/HTTP/exceptions.ts +0 -99
- package/source/HTTP/formats/form.ts +0 -21
- package/source/HTTP/formats/index.ts +0 -36
- package/source/HTTP/formats/json.ts +0 -14
- package/source/HTTP/formats/msgpack.ts +0 -14
- package/source/HTTP/formats/text.ts +0 -10
- package/source/HTTP/formats/yaml.test.ts +0 -22
- package/source/HTTP/formats/yaml.ts +0 -40
- package/source/HTTP/index.ts +0 -6
- package/source/HTTP/messages.test.ts +0 -196
- package/source/HTTP/messages.ts +0 -186
- package/source/HTTP/types.ts +0 -39
- package/source/Interception.ts +0 -37
- package/source/Introspection.ts +0 -179
- package/source/MCP/Server.ts +0 -335
- package/source/MCP/discover.ts +0 -51
- package/source/MCP/errors.ts +0 -80
- package/source/MCP/index.ts +0 -1
- package/source/MCP/schema.test.ts +0 -91
- package/source/MCP/schema.ts +0 -94
- package/source/MCP/tools.ts +0 -144
- package/source/MCP/types.ts +0 -84
- package/source/Mapping.ts +0 -101
- package/source/Query.test.ts +0 -54
- package/source/Query.ts +0 -277
- package/source/RPC/Context.ts +0 -75
- package/source/RPC/Dispatcher.ts +0 -150
- package/source/RPC/errors.test.ts +0 -77
- package/source/RPC/errors.ts +0 -82
- package/source/RPC/index.ts +0 -1
- package/source/RPC/names.test.ts +0 -141
- package/source/RPC/names.ts +0 -176
- package/source/RPC/types.ts +0 -34
- package/source/RTD/Context.ts +0 -16
- package/source/RTD/Directives.ts +0 -126
- package/source/RTD/Endpoint.ts +0 -27
- package/source/RTD/Match.ts +0 -11
- package/source/RTD/Method.ts +0 -39
- package/source/RTD/Node.ts +0 -169
- package/source/RTD/Route.ts +0 -93
- package/source/RTD/Tree.ts +0 -137
- package/source/RTD/expiration.test.ts +0 -81
- package/source/RTD/factory.ts +0 -105
- package/source/RTD/index.ts +0 -8
- package/source/RTD/segment.test.ts +0 -35
- package/source/RTD/segment.ts +0 -51
- package/source/RTD/syntax/index.ts +0 -1
- package/source/RTD/walk.test.ts +0 -147
- package/source/Remotes.test.ts +0 -79
- package/source/Remotes.ts +0 -39
- package/source/Tenant.ts +0 -73
- package/source/directives/auth/Anonymous.test.ts +0 -70
- package/source/directives/auth/Anonymous.ts +0 -36
- package/source/directives/auth/Anyone.ts +0 -23
- package/source/directives/auth/Assert.ts +0 -43
- package/source/directives/auth/Authorization.test.ts +0 -24
- package/source/directives/auth/Authorization.ts +0 -388
- package/source/directives/auth/Delegate.test.ts +0 -36
- package/source/directives/auth/Delegate.ts +0 -54
- package/source/directives/auth/Echo.ts +0 -24
- package/source/directives/auth/Federation.ts +0 -104
- package/source/directives/auth/Id.ts +0 -37
- package/source/directives/auth/Incept.ts +0 -117
- package/source/directives/auth/Input.ts +0 -92
- package/source/directives/auth/Role.test.ts +0 -147
- package/source/directives/auth/Role.ts +0 -99
- package/source/directives/auth/Rule.ts +0 -59
- package/source/directives/auth/Scheme.ts +0 -31
- package/source/directives/auth/create.ts +0 -11
- package/source/directives/auth/index.ts +0 -3
- package/source/directives/auth/schemes.test.ts +0 -18
- package/source/directives/auth/schemes.ts +0 -39
- package/source/directives/auth/split.ts +0 -14
- package/source/directives/auth/types.ts +0 -75
- package/source/directives/cache/Cache.ts +0 -92
- package/source/directives/cache/Control.ts +0 -81
- package/source/directives/cache/Exact.ts +0 -7
- package/source/directives/cache/etag.ts +0 -38
- package/source/directives/cache/index.ts +0 -3
- package/source/directives/cache/types.ts +0 -9
- package/source/directives/cors/CORS.test.ts +0 -75
- package/source/directives/cors/CORS.ts +0 -88
- package/source/directives/cors/index.ts +0 -3
- package/source/directives/dev/Development.ts +0 -41
- package/source/directives/dev/Faulty.ts +0 -31
- package/source/directives/dev/Sleep.ts +0 -53
- package/source/directives/dev/Stub.ts +0 -14
- package/source/directives/dev/Throw.ts +0 -14
- package/source/directives/dev/index.ts +0 -3
- package/source/directives/dev/types.ts +0 -5
- package/source/directives/flow/Compose.ts +0 -98
- package/source/directives/flow/Fetch.ts +0 -86
- package/source/directives/flow/Flow.ts +0 -43
- package/source/directives/flow/index.ts +0 -3
- package/source/directives/flow/types.ts +0 -7
- package/source/directives/help/Family.ts +0 -122
- package/source/directives/help/Help.test.ts +0 -227
- package/source/directives/help/Help.ts +0 -47
- package/source/directives/help/Parameters.ts +0 -47
- package/source/directives/help/described.ts +0 -57
- package/source/directives/help/index.ts +0 -45
- package/source/directives/index.ts +0 -33
- package/source/directives/io/Directive.ts +0 -17
- package/source/directives/io/IO.ts +0 -118
- package/source/directives/io/Input.ts +0 -55
- package/source/directives/io/Message.ts +0 -1
- package/source/directives/io/Output.ts +0 -81
- package/source/directives/io/Status.test.ts +0 -88
- package/source/directives/io/Status.ts +0 -47
- package/source/directives/io/Throttle.ts +0 -30
- package/source/directives/io/index.ts +0 -3
- package/source/directives/io/lib/throttle/Configuration.test.ts +0 -72
- package/source/directives/io/lib/throttle/Configuration.ts +0 -68
- package/source/directives/io/lib/throttle/Keys.ts +0 -53
- package/source/directives/io/lib/throttle/Quotas.test.ts +0 -411
- package/source/directives/io/lib/throttle/Quotas.ts +0 -190
- package/source/directives/io/lib/throttle/Sync.test.ts +0 -163
- package/source/directives/io/lib/throttle/Sync.ts +0 -93
- package/source/directives/io/lib/throttle/Warning.test.ts +0 -32
- package/source/directives/io/lib/throttle/Warning.ts +0 -29
- package/source/directives/io/lib/throttle/components/Component.ts +0 -7
- package/source/directives/io/lib/throttle/components/IP.ts +0 -30
- package/source/directives/io/lib/throttle/components/Identity.ts +0 -19
- package/source/directives/io/lib/throttle/components/Path.ts +0 -8
- package/source/directives/io/lib/throttle/components/Route.ts +0 -19
- package/source/directives/io/lib/throttle/components/Segment.ts +0 -19
- package/source/directives/io/lib/throttle/components/index.ts +0 -19
- package/source/directives/io/lib/throttle/conditions/Condition.ts +0 -5
- package/source/directives/io/lib/throttle/conditions/Status.ts +0 -17
- package/source/directives/io/lib/throttle/conditions/index.ts +0 -11
- package/source/directives/io/lib/throttle/index.ts +0 -4
- package/source/directives/io/schemas.test.ts +0 -40
- package/source/directives/io/schemas.ts +0 -16
- package/source/directives/map/Authority.ts +0 -15
- package/source/directives/map/Buffer.ts +0 -15
- package/source/directives/map/Claims.ts +0 -63
- package/source/directives/map/Directive.ts +0 -4
- package/source/directives/map/Headers.ts +0 -60
- package/source/directives/map/Language.ts +0 -45
- package/source/directives/map/Languages.ts +0 -17
- package/source/directives/map/Map.ts +0 -85
- package/source/directives/map/Mapping.ts +0 -45
- package/source/directives/map/Properties.ts +0 -15
- package/source/directives/map/Segments.ts +0 -52
- package/source/directives/map/index.ts +0 -3
- package/source/directives/mcp/MCP.ts +0 -33
- package/source/directives/mcp/Tool.test.ts +0 -56
- package/source/directives/mcp/Tool.ts +0 -32
- package/source/directives/mcp/index.ts +0 -6
- package/source/directives/oauth/Discovery.ts +0 -66
- package/source/directives/oauth/documents.ts +0 -110
- package/source/directives/oauth/index.ts +0 -3
- package/source/directives/octets/Context.ts +0 -23
- package/source/directives/octets/Delete.ts +0 -96
- package/source/directives/octets/Directive.ts +0 -21
- package/source/directives/octets/Get.ts +0 -88
- package/source/directives/octets/Octets.ts +0 -82
- package/source/directives/octets/Put.ts +0 -186
- package/source/directives/octets/Workflow.ts +0 -60
- package/source/directives/octets/bytes.test.ts +0 -33
- package/source/directives/octets/bytes.ts +0 -18
- package/source/directives/octets/index.ts +0 -3
- package/source/directives/octets/schemas.test.ts +0 -20
- package/source/directives/octets/schemas.ts +0 -15
- package/source/directives/octets/types.ts +0 -9
- package/source/directives/octets/workflows/Execution.ts +0 -130
- package/source/directives/octets/workflows/Workflow.ts +0 -51
- package/source/directives/octets/workflows/index.ts +0 -1
- package/source/directives/require/Directive.ts +0 -5
- package/source/directives/require/Headers.ts +0 -19
- package/source/directives/require/Require.ts +0 -27
- package/source/directives/require/index.ts +0 -3
- package/source/discovery.ts +0 -1
- package/source/exceptions.ts +0 -47
- package/source/index.ts +0 -10
- package/source/io.ts +0 -4
- package/source/octets.d.ts +0 -17
- package/source/root.ts +0 -59
- package/source/service.ts +0 -95
- package/source/userland.ts +0 -47
- package/tsconfig.json +0 -13
- package/tsconfig.tsbuildinfo +0 -1
- package/ui/dist/_app/immutable/assets/0.Bl7vLmIK.css +0 -2
- package/ui/dist/_app/immutable/assets/2.BC0-Jhqu.css +0 -1
- package/ui/dist/_app/immutable/chunks/BaWe3aOV.js +0 -1
- package/ui/dist/_app/immutable/chunks/DjIYL2zC.js +0 -3
- package/ui/dist/_app/immutable/chunks/GZTfV0ks.js +0 -6
- package/ui/dist/_app/immutable/entry/app.D5v4JoUx.js +0 -2
- package/ui/dist/_app/immutable/entry/start.CWxFoIyZ.js +0 -1
- package/ui/dist/_app/immutable/nodes/0.DIh5T_5-.js +0 -1
- package/ui/dist/_app/immutable/nodes/1.CY-bFzHC.js +0 -1
- package/ui/dist/_app/immutable/nodes/2.6Ubd1ItY.js +0 -14
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
@security
|
|
2
|
-
Feature: Persistent credentials management
|
|
3
|
-
|
|
4
|
-
Background:
|
|
5
|
-
# developer:secret
|
|
6
|
-
Given the `identity.basic` database contains:
|
|
7
|
-
| _id | authority | username | password |
|
|
8
|
-
| efe3a65ebbee47ed95a73edd911ea328 | nex | developer | $2b$10$ZRSKkgZoGnrcTNA5w5eCcu3pxDzdTduhteVYXcp56AaNcilNkwJ.O |
|
|
9
|
-
And the `identity.federation` database contains:
|
|
10
|
-
| _id | authority | identity | iss | sub | CREATED |
|
|
11
|
-
| fed3a65ebbee47ed95a73edd911ea328 | nex | efe3a65ebbee47ed95a73edd911ea328 | https://accounts.google.com | google | 1000 |
|
|
12
|
-
| fed3a65ebbee47ed95a73edd911ea329 | nex | efe3a65ebbee47ed95a73edd911ea328 | https://appleid.apple.com | apple | 900 |
|
|
13
|
-
And the `identity.passkeys` database contains:
|
|
14
|
-
| _id | authority | identity | kid | aid | synced | key | counter | label | CREATED |
|
|
15
|
-
| ace3a65ebbee47ed95a73edd911ea328 | nex | efe3a65ebbee47ed95a73edd911ea328 | key-one | adce0002-35bc-c60a-648b-0b25f1f05503 | true | cHVibGlj | 0 | Personal iPhone | 2000 |
|
|
16
|
-
|
|
17
|
-
Scenario: Listing all persistent credentials
|
|
18
|
-
When the following request is received:
|
|
19
|
-
"""
|
|
20
|
-
GET /identity/credentials/efe3a65ebbee47ed95a73edd911ea328/ HTTP/1.1
|
|
21
|
-
host: nex.toa.io
|
|
22
|
-
authorization: Basic ZGV2ZWxvcGVyOnNlY3JldA==
|
|
23
|
-
accept: application/yaml
|
|
24
|
-
"""
|
|
25
|
-
Then the following reply is sent:
|
|
26
|
-
"""
|
|
27
|
-
200 OK
|
|
28
|
-
authorization: Token ${{ token }}
|
|
29
|
-
|
|
30
|
-
basic:
|
|
31
|
-
username: developer
|
|
32
|
-
federation:
|
|
33
|
-
- id: fed3a65ebbee47ed95a73edd911ea328
|
|
34
|
-
iss: https://accounts.google.com
|
|
35
|
-
CREATED: 1000
|
|
36
|
-
- id: fed3a65ebbee47ed95a73edd911ea329
|
|
37
|
-
iss: https://appleid.apple.com
|
|
38
|
-
CREATED: 900
|
|
39
|
-
passkeys:
|
|
40
|
-
- id: ace3a65ebbee47ed95a73edd911ea328
|
|
41
|
-
aid: adce0002-35bc-c60a-648b-0b25f1f05503
|
|
42
|
-
synced: true
|
|
43
|
-
label: Personal iPhone
|
|
44
|
-
CREATED: 2000
|
|
45
|
-
"""
|
|
46
|
-
|
|
47
|
-
Scenario: Deleting credentials through their components
|
|
48
|
-
When the following request is received:
|
|
49
|
-
"""
|
|
50
|
-
GET /identity/credentials/efe3a65ebbee47ed95a73edd911ea328/ HTTP/1.1
|
|
51
|
-
host: nex.toa.io
|
|
52
|
-
authorization: Basic ZGV2ZWxvcGVyOnNlY3JldA==
|
|
53
|
-
"""
|
|
54
|
-
Then the following reply is sent:
|
|
55
|
-
"""
|
|
56
|
-
200 OK
|
|
57
|
-
authorization: Token ${{ token }}
|
|
58
|
-
"""
|
|
59
|
-
When the following request is received:
|
|
60
|
-
"""
|
|
61
|
-
DELETE /identity/basic/efe3a65ebbee47ed95a73edd911ea328/ HTTP/1.1
|
|
62
|
-
host: nex.toa.io
|
|
63
|
-
authorization: Token ${{ token }}
|
|
64
|
-
"""
|
|
65
|
-
Then the following reply is sent:
|
|
66
|
-
"""
|
|
67
|
-
200 OK
|
|
68
|
-
"""
|
|
69
|
-
When the following request is received:
|
|
70
|
-
"""
|
|
71
|
-
DELETE /identity/federation/efe3a65ebbee47ed95a73edd911ea328/fed3a65ebbee47ed95a73edd911ea328/ HTTP/1.1
|
|
72
|
-
host: nex.toa.io
|
|
73
|
-
authorization: Token ${{ token }}
|
|
74
|
-
"""
|
|
75
|
-
Then the following reply is sent:
|
|
76
|
-
"""
|
|
77
|
-
200 OK
|
|
78
|
-
"""
|
|
79
|
-
When the following request is received:
|
|
80
|
-
"""
|
|
81
|
-
DELETE /identity/passkeys/efe3a65ebbee47ed95a73edd911ea328/ace3a65ebbee47ed95a73edd911ea328/ HTTP/1.1
|
|
82
|
-
host: nex.toa.io
|
|
83
|
-
authorization: Token ${{ token }}
|
|
84
|
-
"""
|
|
85
|
-
Then the following reply is sent:
|
|
86
|
-
"""
|
|
87
|
-
200 OK
|
|
88
|
-
"""
|
|
89
|
-
When the following request is received:
|
|
90
|
-
"""
|
|
91
|
-
GET /identity/credentials/efe3a65ebbee47ed95a73edd911ea328/ HTTP/1.1
|
|
92
|
-
host: nex.toa.io
|
|
93
|
-
authorization: Token ${{ token }}
|
|
94
|
-
accept: application/yaml
|
|
95
|
-
"""
|
|
96
|
-
Then the following reply is sent:
|
|
97
|
-
"""
|
|
98
|
-
200 OK
|
|
99
|
-
|
|
100
|
-
basic: null
|
|
101
|
-
federation:
|
|
102
|
-
- id: fed3a65ebbee47ed95a73edd911ea329
|
|
103
|
-
iss: https://appleid.apple.com
|
|
104
|
-
CREATED: 900
|
|
105
|
-
passkeys: []
|
|
106
|
-
"""
|
package/features/debug.feature
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
Feature: Debugging
|
|
2
|
-
|
|
3
|
-
Scenario: Operation call
|
|
4
|
-
Given the `identity.basic` database contains:
|
|
5
|
-
| _id | authority | username | password |
|
|
6
|
-
| efe3a65ebbee47ed95a73edd911ea328 | nex | developer | $2b$10$ZRSKkgZoGnrcTNA5w5eCcu3pxDzdTduhteVYXcp56AaNcilNkwJ.O |
|
|
7
|
-
And the `identity.roles` database contains:
|
|
8
|
-
| _id | identity | role |
|
|
9
|
-
| 775a648d054e4ce1a65f8f17e5b51803 | efe3a65ebbee47ed95a73edd911ea328 | developer |
|
|
10
|
-
And the annotation:
|
|
11
|
-
"""yaml
|
|
12
|
-
debug: true
|
|
13
|
-
"""
|
|
14
|
-
And the `greeter` is running with the following manifest:
|
|
15
|
-
"""yaml
|
|
16
|
-
exposition:
|
|
17
|
-
/:
|
|
18
|
-
auth:role: developer
|
|
19
|
-
io:output: true
|
|
20
|
-
GET: greet
|
|
21
|
-
"""
|
|
22
|
-
When the following request is received:
|
|
23
|
-
"""
|
|
24
|
-
GET /greeter/ HTTP/1.1
|
|
25
|
-
host: nex.toa.io
|
|
26
|
-
authorization: Basic ZGV2ZWxvcGVyOnNlY3JldA==
|
|
27
|
-
accept: text/plain
|
|
28
|
-
"""
|
|
29
|
-
Then the following reply is sent:
|
|
30
|
-
"""
|
|
31
|
-
200 OK
|
|
32
|
-
|
|
33
|
-
Hello
|
|
34
|
-
"""
|
package/features/dev.feature
DELETED
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
Feature: Dev
|
|
2
|
-
|
|
3
|
-
@timing
|
|
4
|
-
Scenario: Delays
|
|
5
|
-
Given the annotation:
|
|
6
|
-
"""yaml
|
|
7
|
-
/:
|
|
8
|
-
io:output: true
|
|
9
|
-
anonymous: true
|
|
10
|
-
dev:sleep: 3000
|
|
11
|
-
GET:
|
|
12
|
-
dev:stub: hello
|
|
13
|
-
/nested:
|
|
14
|
-
GET:
|
|
15
|
-
dev:stub: world
|
|
16
|
-
"""
|
|
17
|
-
# CORS permission
|
|
18
|
-
When the following request is received:
|
|
19
|
-
"""
|
|
20
|
-
OPTIONS / HTTP/1.1
|
|
21
|
-
access-control-request-method: GET
|
|
22
|
-
origin: http://example.com
|
|
23
|
-
"""
|
|
24
|
-
Then the following reply is sent:
|
|
25
|
-
"""
|
|
26
|
-
204 No Content
|
|
27
|
-
access-control-allow-headers: accept, authorization, content-type, if-match, if-none-match, sleep
|
|
28
|
-
"""
|
|
29
|
-
When the following request is received:
|
|
30
|
-
"""
|
|
31
|
-
GET / HTTP/1.1
|
|
32
|
-
sleep: [1000, 2000]
|
|
33
|
-
"""
|
|
34
|
-
# check the response time
|
|
35
|
-
Then the following reply is sent:
|
|
36
|
-
"""
|
|
37
|
-
200 OK
|
|
38
|
-
"""
|
|
39
|
-
When the following request is received:
|
|
40
|
-
"""
|
|
41
|
-
GET /nested/ HTTP/1.1
|
|
42
|
-
sleep: [100, 300]
|
|
43
|
-
"""
|
|
44
|
-
Then the following reply is sent:
|
|
45
|
-
"""
|
|
46
|
-
200 OK
|
|
47
|
-
"""
|
|
48
|
-
When the following request is received:
|
|
49
|
-
"""
|
|
50
|
-
GET / HTTP/1.1
|
|
51
|
-
sleep: [1000, 3500]
|
|
52
|
-
"""
|
|
53
|
-
Then the following reply is sent:
|
|
54
|
-
"""
|
|
55
|
-
400 Bad Request
|
|
56
|
-
|
|
57
|
-
"Invalid sleep duration"
|
|
58
|
-
"""
|
|
59
|
-
|
|
60
|
-
Scenario: Faulty mode
|
|
61
|
-
Given the annotation:
|
|
62
|
-
"""yaml
|
|
63
|
-
/:
|
|
64
|
-
io:output: true
|
|
65
|
-
anonymous: true
|
|
66
|
-
dev:faulty: 1
|
|
67
|
-
GET:
|
|
68
|
-
dev:stub: hello
|
|
69
|
-
"""
|
|
70
|
-
# CORS permission
|
|
71
|
-
When the following request is received:
|
|
72
|
-
"""
|
|
73
|
-
OPTIONS / HTTP/1.1
|
|
74
|
-
access-control-request-method: GET
|
|
75
|
-
origin: http://example.com
|
|
76
|
-
"""
|
|
77
|
-
Then the following reply is sent:
|
|
78
|
-
"""
|
|
79
|
-
204 No Content
|
|
80
|
-
access-control-allow-headers: accept, authorization, content-type, faulty, if-match, if-none-match
|
|
81
|
-
"""
|
|
82
|
-
When the following request is received:
|
|
83
|
-
"""
|
|
84
|
-
GET / HTTP/1.1
|
|
85
|
-
faulty: 1
|
|
86
|
-
"""
|
|
87
|
-
Then the following reply is sent:
|
|
88
|
-
"""
|
|
89
|
-
503 Service Unavailable
|
|
90
|
-
"""
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
Feature: Directives
|
|
2
|
-
|
|
3
|
-
Scenario: Basic directive
|
|
4
|
-
Given the annotation:
|
|
5
|
-
"""yaml
|
|
6
|
-
/:
|
|
7
|
-
io:output: true
|
|
8
|
-
anonymous: true
|
|
9
|
-
GET:
|
|
10
|
-
dev:stub:
|
|
11
|
-
hello: world
|
|
12
|
-
"""
|
|
13
|
-
When the following request is received:
|
|
14
|
-
"""
|
|
15
|
-
GET / HTTP/1.1
|
|
16
|
-
host: nex.toa.io
|
|
17
|
-
accept: application/json
|
|
18
|
-
"""
|
|
19
|
-
Then the following reply is sent:
|
|
20
|
-
"""
|
|
21
|
-
200 OK
|
|
22
|
-
content-type: application/json
|
|
23
|
-
|
|
24
|
-
{"hello":"world"}
|
|
25
|
-
"""
|
|
26
|
-
|
|
27
|
-
Scenario: Nested routes
|
|
28
|
-
Given the annotation:
|
|
29
|
-
"""yaml
|
|
30
|
-
/:
|
|
31
|
-
io:output: true
|
|
32
|
-
anonymous: true
|
|
33
|
-
dev:stub:
|
|
34
|
-
hello: again
|
|
35
|
-
GET: {}
|
|
36
|
-
/pots:
|
|
37
|
-
GET: {}
|
|
38
|
-
"""
|
|
39
|
-
When the following request is received:
|
|
40
|
-
"""
|
|
41
|
-
GET /pots/ HTTP/1.1
|
|
42
|
-
host: nex.toa.io
|
|
43
|
-
accept: application/yaml
|
|
44
|
-
"""
|
|
45
|
-
Then the following reply is sent:
|
|
46
|
-
"""
|
|
47
|
-
200 OK
|
|
48
|
-
content-type: application/yaml
|
|
49
|
-
|
|
50
|
-
hello: again
|
|
51
|
-
"""
|
|
52
|
-
When the following request is received:
|
|
53
|
-
"""
|
|
54
|
-
GET /pots/non-existent/ HTTP/1.1
|
|
55
|
-
host: nex.toa.io
|
|
56
|
-
accept: application/yaml
|
|
57
|
-
"""
|
|
58
|
-
Then the following reply is sent:
|
|
59
|
-
"""
|
|
60
|
-
404 Not Found
|
|
61
|
-
"""
|
|
@@ -1,213 +0,0 @@
|
|
|
1
|
-
Feature: Resource discovery
|
|
2
|
-
|
|
3
|
-
Every route an application serves, at one path, described as `OPTIONS` on each of them
|
|
4
|
-
describes it.
|
|
5
|
-
|
|
6
|
-
Scenario: What an application serves
|
|
7
|
-
Given the `pots` is running with the following manifest:
|
|
8
|
-
"""yaml
|
|
9
|
-
exposition:
|
|
10
|
-
/:
|
|
11
|
-
io:output: [id, title]
|
|
12
|
-
GET: enumerate
|
|
13
|
-
POST: create
|
|
14
|
-
/:id:
|
|
15
|
-
GET: observe
|
|
16
|
-
"""
|
|
17
|
-
When the following request is received:
|
|
18
|
-
"""
|
|
19
|
-
OPTIONS /.discovery HTTP/1.1
|
|
20
|
-
host: nex.toa.io
|
|
21
|
-
accept: application/yaml
|
|
22
|
-
"""
|
|
23
|
-
Then the following reply is sent:
|
|
24
|
-
"""
|
|
25
|
-
200 OK
|
|
26
|
-
Allow: GET, HEAD, OPTIONS
|
|
27
|
-
cache-control: private, max-age=1800
|
|
28
|
-
|
|
29
|
-
routes:
|
|
30
|
-
/pots:
|
|
31
|
-
GET:
|
|
32
|
-
output:
|
|
33
|
-
type: array
|
|
34
|
-
items:
|
|
35
|
-
properties:
|
|
36
|
-
id:
|
|
37
|
-
type: string
|
|
38
|
-
title:
|
|
39
|
-
type: string
|
|
40
|
-
POST:
|
|
41
|
-
input:
|
|
42
|
-
properties:
|
|
43
|
-
title:
|
|
44
|
-
type: string
|
|
45
|
-
/pots/:id:
|
|
46
|
-
GET:
|
|
47
|
-
output:
|
|
48
|
-
properties:
|
|
49
|
-
id:
|
|
50
|
-
type: string
|
|
51
|
-
"""
|
|
52
|
-
|
|
53
|
-
Scenario: A key is a request that can be made
|
|
54
|
-
What each entry says is what `OPTIONS` on that key says, so a client reads the tree
|
|
55
|
-
once and addresses any of it by the key it was given.
|
|
56
|
-
|
|
57
|
-
Given the `echo` is running with the following manifest:
|
|
58
|
-
"""yaml
|
|
59
|
-
exposition:
|
|
60
|
-
/:a:
|
|
61
|
-
io:output: true
|
|
62
|
-
PATCH: parameters
|
|
63
|
-
"""
|
|
64
|
-
When the following request is received:
|
|
65
|
-
"""
|
|
66
|
-
OPTIONS /.discovery HTTP/1.1
|
|
67
|
-
host: nex.toa.io
|
|
68
|
-
accept: application/yaml
|
|
69
|
-
"""
|
|
70
|
-
Then the following reply is sent:
|
|
71
|
-
"""
|
|
72
|
-
200 OK
|
|
73
|
-
|
|
74
|
-
routes:
|
|
75
|
-
/echo/:a:
|
|
76
|
-
PATCH:
|
|
77
|
-
route:
|
|
78
|
-
a:
|
|
79
|
-
type: string
|
|
80
|
-
input:
|
|
81
|
-
type: object
|
|
82
|
-
properties:
|
|
83
|
-
b:
|
|
84
|
-
type: string
|
|
85
|
-
"""
|
|
86
|
-
When the following request is received:
|
|
87
|
-
"""
|
|
88
|
-
OPTIONS /echo/:a/ HTTP/1.1
|
|
89
|
-
host: nex.toa.io
|
|
90
|
-
accept: application/yaml
|
|
91
|
-
"""
|
|
92
|
-
Then the following reply is sent:
|
|
93
|
-
"""
|
|
94
|
-
200 OK
|
|
95
|
-
Allow: PATCH
|
|
96
|
-
|
|
97
|
-
PATCH:
|
|
98
|
-
route:
|
|
99
|
-
a:
|
|
100
|
-
type: string
|
|
101
|
-
input:
|
|
102
|
-
type: object
|
|
103
|
-
properties:
|
|
104
|
-
b:
|
|
105
|
-
type: string
|
|
106
|
-
"""
|
|
107
|
-
|
|
108
|
-
Scenario: A resource this caller may reach no method of is not there
|
|
109
|
-
`OPTIONS` on one answers `403`, and a tree cannot refuse a single entry — so it is
|
|
110
|
-
omitted, rather than named as something that exists and is not for them.
|
|
111
|
-
|
|
112
|
-
Given the annotation:
|
|
113
|
-
"""yaml
|
|
114
|
-
/:
|
|
115
|
-
/open:
|
|
116
|
-
anonymous: true
|
|
117
|
-
GET:
|
|
118
|
-
dev:stub: hello
|
|
119
|
-
/closed:
|
|
120
|
-
auth:role: admin
|
|
121
|
-
GET:
|
|
122
|
-
dev:stub: secret
|
|
123
|
-
"""
|
|
124
|
-
When the following request is received:
|
|
125
|
-
"""
|
|
126
|
-
OPTIONS /.discovery HTTP/1.1
|
|
127
|
-
host: nex.toa.io
|
|
128
|
-
accept: application/yaml
|
|
129
|
-
"""
|
|
130
|
-
Then the following reply is sent:
|
|
131
|
-
"""
|
|
132
|
-
200 OK
|
|
133
|
-
|
|
134
|
-
routes:
|
|
135
|
-
/open:
|
|
136
|
-
GET:
|
|
137
|
-
anonymous: true
|
|
138
|
-
"""
|
|
139
|
-
And the reply does not contain:
|
|
140
|
-
"""
|
|
141
|
-
/closed:
|
|
142
|
-
"""
|
|
143
|
-
|
|
144
|
-
Scenario: Only the verbs this caller may reach
|
|
145
|
-
A resource is described by what is left of it, not dropped for the part that is not
|
|
146
|
-
theirs.
|
|
147
|
-
|
|
148
|
-
Given the `pots` is running with the following manifest:
|
|
149
|
-
"""yaml
|
|
150
|
-
exposition:
|
|
151
|
-
/:
|
|
152
|
-
isolated: true
|
|
153
|
-
io:output: [id, title]
|
|
154
|
-
GET:
|
|
155
|
-
anonymous: true
|
|
156
|
-
endpoint: enumerate
|
|
157
|
-
POST:
|
|
158
|
-
auth:role: admin
|
|
159
|
-
endpoint: create
|
|
160
|
-
"""
|
|
161
|
-
When the following request is received:
|
|
162
|
-
"""
|
|
163
|
-
OPTIONS /.discovery HTTP/1.1
|
|
164
|
-
host: nex.toa.io
|
|
165
|
-
accept: application/yaml
|
|
166
|
-
"""
|
|
167
|
-
Then the following reply is sent:
|
|
168
|
-
"""
|
|
169
|
-
200 OK
|
|
170
|
-
|
|
171
|
-
routes:
|
|
172
|
-
/pots:
|
|
173
|
-
GET:
|
|
174
|
-
"""
|
|
175
|
-
And the reply does not contain:
|
|
176
|
-
"""
|
|
177
|
-
temperature
|
|
178
|
-
"""
|
|
179
|
-
|
|
180
|
-
Scenario: A credential does not hide what is anonymous
|
|
181
|
-
A credential refuses an `anonymous` route because it would make the reply uncacheable,
|
|
182
|
-
and a description is not that reply. Without this an identity would be shown less of
|
|
183
|
-
the tree than someone presenting nothing at all.
|
|
184
|
-
|
|
185
|
-
Given the `identity.basic` database contains:
|
|
186
|
-
# developer:secret
|
|
187
|
-
| _id | authority | username | password |
|
|
188
|
-
| efe3a65ebbee47ed95a73edd911ea328 | nex | developer | $2b$10$ZRSKkgZoGnrcTNA5w5eCcu3pxDzdTduhteVYXcp56AaNcilNkwJ.O |
|
|
189
|
-
And the `identity.bans` database is empty
|
|
190
|
-
And the annotation:
|
|
191
|
-
"""yaml
|
|
192
|
-
/:
|
|
193
|
-
/pots:
|
|
194
|
-
anonymous: true
|
|
195
|
-
GET:
|
|
196
|
-
dev:stub: hello
|
|
197
|
-
"""
|
|
198
|
-
When the following request is received:
|
|
199
|
-
"""
|
|
200
|
-
OPTIONS /.discovery HTTP/1.1
|
|
201
|
-
host: nex.toa.io
|
|
202
|
-
authorization: Basic ZGV2ZWxvcGVyOnNlY3JldA==
|
|
203
|
-
accept: application/yaml
|
|
204
|
-
"""
|
|
205
|
-
Then the following reply is sent:
|
|
206
|
-
"""
|
|
207
|
-
200 OK
|
|
208
|
-
|
|
209
|
-
routes:
|
|
210
|
-
/pots:
|
|
211
|
-
GET:
|
|
212
|
-
anonymous: true
|
|
213
|
-
"""
|