@astrale-os/kernel-client 0.5.1 → 0.6.0-beta.2
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/dist/auth/auth.d.ts +19 -0
- package/dist/auth/auth.d.ts.map +1 -0
- package/dist/auth/auth.js +16 -0
- package/dist/auth/auth.js.map +1 -0
- package/dist/auth/authorization.d.ts +14 -0
- package/dist/auth/authorization.d.ts.map +1 -0
- package/dist/auth/authorization.js +18 -0
- package/dist/auth/authorization.js.map +1 -0
- package/dist/auth/credential.d.ts +20 -0
- package/dist/auth/credential.d.ts.map +1 -0
- package/dist/auth/credential.js +22 -0
- package/dist/auth/credential.js.map +1 -0
- package/dist/auth/identity.d.ts +15 -0
- package/dist/auth/identity.d.ts.map +1 -0
- package/dist/auth/identity.js +16 -0
- package/dist/auth/identity.js.map +1 -0
- package/dist/auth/index.d.ts +6 -15
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +5 -9
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/provision.d.ts +9 -0
- package/dist/auth/provision.d.ts.map +1 -0
- package/dist/auth/provision.js +11 -0
- package/dist/auth/provision.js.map +1 -0
- package/dist/client/admission.d.ts +5 -0
- package/dist/client/admission.d.ts.map +1 -0
- package/dist/client/admission.js +35 -0
- package/dist/client/admission.js.map +1 -0
- package/dist/client/client.d.ts +24 -108
- package/dist/client/client.d.ts.map +1 -1
- package/dist/client/client.js +80 -380
- package/dist/client/client.js.map +1 -1
- package/dist/client/credential.d.ts +13 -0
- package/dist/client/credential.d.ts.map +1 -0
- package/dist/client/credential.js +52 -0
- package/dist/client/credential.js.map +1 -0
- package/dist/client/index.d.ts +6 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +5 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/request.d.ts +27 -0
- package/dist/client/request.d.ts.map +1 -0
- package/dist/client/request.js +101 -0
- package/dist/client/request.js.map +1 -0
- package/dist/client/result.d.ts +5 -0
- package/dist/client/result.d.ts.map +1 -0
- package/dist/client/result.js +29 -0
- package/dist/client/result.js.map +1 -0
- package/dist/client/routing-control.d.ts +11 -0
- package/dist/client/routing-control.d.ts.map +1 -0
- package/dist/client/routing-control.js +24 -0
- package/dist/client/routing-control.js.map +1 -0
- package/dist/domain/binding.d.ts +24 -0
- package/dist/domain/binding.d.ts.map +1 -0
- package/dist/domain/binding.js +69 -0
- package/dist/domain/binding.js.map +1 -0
- package/dist/domain/callable.d.ts +25 -0
- package/dist/domain/callable.d.ts.map +1 -0
- package/dist/domain/callable.js +70 -0
- package/dist/domain/callable.js.map +1 -0
- package/dist/domain/domain.typecheck.d.ts +2 -0
- package/dist/domain/domain.typecheck.d.ts.map +1 -0
- package/dist/domain/domain.typecheck.js +69 -0
- package/dist/domain/domain.typecheck.js.map +1 -0
- package/dist/domain/index.d.ts +4 -0
- package/dist/domain/index.d.ts.map +1 -0
- package/dist/domain/index.js +2 -0
- package/dist/domain/index.js.map +1 -0
- package/dist/domain/node.d.ts +10 -0
- package/dist/domain/node.d.ts.map +1 -0
- package/dist/domain/node.js +6 -0
- package/dist/domain/node.js.map +1 -0
- package/dist/errors/client-error.d.ts +4 -0
- package/dist/errors/client-error.d.ts.map +1 -0
- package/dist/errors/client-error.js +7 -0
- package/dist/errors/client-error.js.map +1 -0
- package/dist/errors/index.d.ts +6 -5
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +6 -3
- package/dist/errors/index.js.map +1 -1
- package/dist/errors/miss-error.d.ts +7 -0
- package/dist/errors/miss-error.d.ts.map +1 -0
- package/dist/errors/miss-error.js +9 -0
- package/dist/errors/miss-error.js.map +1 -0
- package/dist/errors/protocol-error.d.ts +5 -0
- package/dist/errors/protocol-error.d.ts.map +1 -0
- package/dist/errors/protocol-error.js +8 -0
- package/dist/errors/protocol-error.js.map +1 -0
- package/dist/errors/response-error.d.ts +10 -0
- package/dist/errors/response-error.d.ts.map +1 -0
- package/dist/errors/response-error.js +15 -0
- package/dist/errors/response-error.js.map +1 -0
- package/dist/errors/stale-route-error.d.ts +9 -0
- package/dist/errors/stale-route-error.d.ts.map +1 -0
- package/dist/errors/stale-route-error.js +11 -0
- package/dist/errors/stale-route-error.js.map +1 -0
- package/dist/errors/transport-error.d.ts +15 -0
- package/dist/errors/transport-error.d.ts.map +1 -0
- package/dist/errors/transport-error.js +12 -0
- package/dist/errors/transport-error.js.map +1 -0
- package/dist/graph/errors.d.ts +9 -0
- package/dist/graph/errors.d.ts.map +1 -0
- package/dist/graph/errors.js +14 -0
- package/dist/graph/errors.js.map +1 -0
- package/dist/graph/graph.d.ts +26 -0
- package/dist/graph/graph.d.ts.map +1 -0
- package/dist/graph/graph.js +19 -0
- package/dist/graph/graph.js.map +1 -0
- package/dist/graph/index.d.ts +6 -25
- package/dist/graph/index.d.ts.map +1 -1
- package/dist/graph/index.js +5 -20
- package/dist/graph/index.js.map +1 -1
- package/dist/graph/mutation.d.ts +6 -0
- package/dist/graph/mutation.d.ts.map +1 -0
- package/dist/graph/mutation.js +18 -0
- package/dist/graph/mutation.js.map +1 -0
- package/dist/graph/page/index.d.ts +3 -0
- package/dist/graph/page/index.d.ts.map +1 -0
- package/dist/graph/page/index.js +2 -0
- package/dist/graph/page/index.js.map +1 -0
- package/dist/graph/page/neighbors.d.ts +10 -0
- package/dist/graph/page/neighbors.d.ts.map +1 -0
- package/dist/graph/page/neighbors.js +35 -0
- package/dist/graph/page/neighbors.js.map +1 -0
- package/dist/graph/page/page.d.ts +34 -0
- package/dist/graph/page/page.d.ts.map +1 -0
- package/dist/graph/page/page.js +56 -0
- package/dist/graph/page/page.js.map +1 -0
- package/dist/graph/query.d.ts +5 -0
- package/dist/graph/query.d.ts.map +1 -0
- package/dist/graph/query.js +57 -0
- package/dist/graph/query.js.map +1 -0
- package/dist/graph/read.d.ts +7 -0
- package/dist/graph/read.d.ts.map +1 -0
- package/dist/graph/read.js +18 -0
- package/dist/graph/read.js.map +1 -0
- package/dist/index.d.ts +6 -24
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -20
- package/dist/index.js.map +1 -1
- package/dist/pacer/batcher/batcher.d.ts +8 -0
- package/dist/pacer/batcher/batcher.d.ts.map +1 -0
- package/dist/pacer/batcher/batcher.js +14 -0
- package/dist/pacer/batcher/batcher.js.map +1 -0
- package/dist/pacer/batcher/defaults.d.ts +3 -0
- package/dist/pacer/batcher/defaults.d.ts.map +1 -0
- package/dist/pacer/batcher/defaults.js +3 -0
- package/dist/pacer/batcher/defaults.js.map +1 -0
- package/dist/pacer/batcher/index.d.ts +2 -0
- package/dist/pacer/batcher/index.d.ts.map +1 -0
- package/dist/pacer/batcher/index.js +2 -0
- package/dist/pacer/batcher/index.js.map +1 -0
- package/dist/pacer/index.d.ts +4 -9
- package/dist/pacer/index.d.ts.map +1 -1
- package/dist/pacer/index.js +4 -10
- package/dist/pacer/index.js.map +1 -1
- package/dist/pacer/limiter/defaults.d.ts +3 -0
- package/dist/pacer/limiter/defaults.d.ts.map +1 -0
- package/dist/pacer/limiter/defaults.js +3 -0
- package/dist/pacer/limiter/defaults.js.map +1 -0
- package/dist/pacer/limiter/index.d.ts +2 -0
- package/dist/pacer/limiter/index.d.ts.map +1 -0
- package/dist/pacer/limiter/index.js +2 -0
- package/dist/pacer/limiter/index.js.map +1 -0
- package/dist/pacer/limiter/limiter.d.ts +8 -0
- package/dist/pacer/limiter/limiter.d.ts.map +1 -0
- package/dist/pacer/limiter/limiter.js +15 -0
- package/dist/pacer/limiter/limiter.js.map +1 -0
- package/dist/pacer/queue/defaults.d.ts +2 -0
- package/dist/pacer/queue/defaults.d.ts.map +1 -0
- package/dist/pacer/queue/defaults.js +2 -0
- package/dist/pacer/queue/defaults.js.map +1 -0
- package/dist/pacer/queue/index.d.ts +2 -0
- package/dist/pacer/queue/index.d.ts.map +1 -0
- package/dist/pacer/queue/index.js +2 -0
- package/dist/pacer/queue/index.js.map +1 -0
- package/dist/pacer/queue/queue.d.ts +7 -0
- package/dist/pacer/queue/queue.d.ts.map +1 -0
- package/dist/pacer/queue/queue.js +13 -0
- package/dist/pacer/queue/queue.js.map +1 -0
- package/dist/pacer/retry/defaults.d.ts +7 -0
- package/dist/pacer/retry/defaults.d.ts.map +1 -0
- package/dist/pacer/retry/defaults.js +17 -0
- package/dist/pacer/retry/defaults.js.map +1 -0
- package/dist/pacer/retry/index.d.ts +2 -0
- package/dist/pacer/retry/index.d.ts.map +1 -0
- package/dist/pacer/retry/index.js +2 -0
- package/dist/pacer/retry/index.js.map +1 -0
- package/dist/pacer/retry/retry.d.ts +10 -0
- package/dist/pacer/retry/retry.d.ts.map +1 -0
- package/dist/pacer/retry/retry.js +56 -0
- package/dist/pacer/retry/retry.js.map +1 -0
- package/dist/pool/index.d.ts +2 -3
- package/dist/pool/index.d.ts.map +1 -1
- package/dist/pool/index.js +0 -1
- package/dist/pool/index.js.map +1 -1
- package/dist/pool/pool.d.ts +19 -58
- package/dist/pool/pool.d.ts.map +1 -1
- package/dist/pool/pool.js +46 -63
- package/dist/pool/pool.js.map +1 -1
- package/dist/pool/target.d.ts +16 -0
- package/dist/pool/target.d.ts.map +1 -0
- package/dist/pool/target.js +50 -0
- package/dist/pool/target.js.map +1 -0
- package/dist/schema/admission.d.ts +10 -0
- package/dist/schema/admission.d.ts.map +1 -0
- package/dist/schema/admission.js +23 -0
- package/dist/schema/admission.js.map +1 -0
- package/dist/schema/index.d.ts +3 -15
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +1 -11
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/introspection.d.ts +6 -0
- package/dist/schema/introspection.d.ts.map +1 -0
- package/dist/schema/introspection.js +16 -0
- package/dist/schema/introspection.js.map +1 -0
- package/dist/schema/schema.d.ts +21 -0
- package/dist/schema/schema.d.ts.map +1 -0
- package/dist/schema/schema.js +43 -0
- package/dist/schema/schema.js.map +1 -0
- package/dist/session/context/control.d.ts +6 -0
- package/dist/session/context/control.d.ts.map +1 -0
- package/dist/session/context/control.js +18 -0
- package/dist/session/context/control.js.map +1 -0
- package/dist/session/context/index.d.ts +5 -0
- package/dist/session/context/index.d.ts.map +1 -0
- package/dist/session/context/index.js +5 -0
- package/dist/session/context/index.js.map +1 -0
- package/dist/session/context/limits.d.ts +8 -0
- package/dist/session/context/limits.d.ts.map +1 -0
- package/dist/session/context/limits.js +19 -0
- package/dist/session/context/limits.js.map +1 -0
- package/dist/session/context/operation.d.ts +20 -0
- package/dist/session/context/operation.d.ts.map +1 -0
- package/dist/session/context/operation.js +70 -0
- package/dist/session/context/operation.js.map +1 -0
- package/dist/session/context/policy.d.ts +12 -0
- package/dist/session/context/policy.d.ts.map +1 -0
- package/dist/session/context/policy.js +70 -0
- package/dist/session/context/policy.js.map +1 -0
- package/dist/session/discovery/bundle.d.ts +18 -0
- package/dist/session/discovery/bundle.d.ts.map +1 -0
- package/dist/session/discovery/bundle.js +55 -0
- package/dist/session/discovery/bundle.js.map +1 -0
- package/dist/session/discovery/discovery.d.ts +20 -0
- package/dist/session/discovery/discovery.d.ts.map +1 -0
- package/dist/session/discovery/discovery.js +56 -0
- package/dist/session/discovery/discovery.js.map +1 -0
- package/dist/session/discovery/index.d.ts +21 -0
- package/dist/session/discovery/index.d.ts.map +1 -0
- package/dist/session/discovery/index.js +16 -0
- package/dist/session/discovery/index.js.map +1 -0
- package/dist/session/discovery/publication.d.ts +24 -0
- package/dist/session/discovery/publication.d.ts.map +1 -0
- package/dist/session/discovery/publication.js +122 -0
- package/dist/session/discovery/publication.js.map +1 -0
- package/dist/session/discovery/snapshot.d.ts +13 -0
- package/dist/session/discovery/snapshot.d.ts.map +1 -0
- package/dist/session/discovery/snapshot.js +4 -0
- package/dist/session/discovery/snapshot.js.map +1 -0
- package/dist/session/index.d.ts +6 -15
- package/dist/session/index.d.ts.map +1 -1
- package/dist/session/index.js +1 -8
- package/dist/session/index.js.map +1 -1
- package/dist/session/routing/auth.d.ts +19 -0
- package/dist/session/routing/auth.d.ts.map +1 -0
- package/dist/session/routing/auth.js +40 -0
- package/dist/session/routing/auth.js.map +1 -0
- package/dist/session/routing/bound.d.ts +7 -0
- package/dist/session/routing/bound.d.ts.map +1 -0
- package/dist/session/routing/bound.js +2 -0
- package/dist/session/routing/bound.js.map +1 -0
- package/dist/session/routing/cache.d.ts +21 -0
- package/dist/session/routing/cache.d.ts.map +1 -0
- package/dist/session/routing/cache.js +127 -0
- package/dist/session/routing/cache.js.map +1 -0
- package/dist/session/routing/dispatch.d.ts +36 -0
- package/dist/session/routing/dispatch.d.ts.map +1 -0
- package/dist/session/routing/dispatch.js +141 -0
- package/dist/session/routing/dispatch.js.map +1 -0
- package/dist/session/routing/envelope.d.ts +14 -0
- package/dist/session/routing/envelope.d.ts.map +1 -0
- package/dist/session/routing/envelope.js +36 -0
- package/dist/session/routing/envelope.js.map +1 -0
- package/dist/session/routing/index.d.ts +7 -0
- package/dist/session/routing/index.d.ts.map +1 -0
- package/dist/session/routing/index.js +6 -0
- package/dist/session/routing/index.js.map +1 -0
- package/dist/session/routing/request.d.ts +9 -0
- package/dist/session/routing/request.d.ts.map +1 -0
- package/dist/session/routing/request.js +26 -0
- package/dist/session/routing/request.js.map +1 -0
- package/dist/session/session.d.ts +62 -0
- package/dist/session/session.d.ts.map +1 -0
- package/dist/session/session.js +225 -0
- package/dist/session/session.js.map +1 -0
- package/dist/session/session.typecheck.d.ts +2 -0
- package/dist/session/session.typecheck.d.ts.map +1 -0
- package/dist/session/session.typecheck.js +10 -0
- package/dist/session/session.typecheck.js.map +1 -0
- package/dist/session/views/catalog.d.ts +16 -0
- package/dist/session/views/catalog.d.ts.map +1 -0
- package/dist/session/views/catalog.js +63 -0
- package/dist/session/views/catalog.js.map +1 -0
- package/dist/session/views/index.d.ts +3 -0
- package/dist/session/views/index.d.ts.map +1 -0
- package/dist/session/views/index.js +3 -0
- package/dist/session/views/index.js.map +1 -0
- package/dist/session/views/resolve.d.ts +13 -0
- package/dist/session/views/resolve.d.ts.map +1 -0
- package/dist/session/views/resolve.js +12 -0
- package/dist/session/views/resolve.js.map +1 -0
- package/dist/store/entity-index.d.ts +23 -0
- package/dist/store/entity-index.d.ts.map +1 -0
- package/dist/store/entity-index.js +95 -0
- package/dist/store/entity-index.js.map +1 -0
- package/dist/store/index.d.ts +1 -25
- package/dist/store/index.d.ts.map +1 -1
- package/dist/store/index.js +1 -18
- package/dist/store/index.js.map +1 -1
- package/dist/store/memory.d.ts +46 -96
- package/dist/store/memory.d.ts.map +1 -1
- package/dist/store/memory.js +346 -762
- package/dist/store/memory.js.map +1 -1
- package/dist/store/mutation.d.ts +6 -0
- package/dist/store/mutation.d.ts.map +1 -0
- package/dist/store/mutation.js +35 -0
- package/dist/store/mutation.js.map +1 -0
- package/dist/store/observe.d.ts +4 -0
- package/dist/store/observe.d.ts.map +1 -0
- package/dist/store/observe.js +18 -0
- package/dist/store/observe.js.map +1 -0
- package/dist/store/optimistic.d.ts +13 -0
- package/dist/store/optimistic.d.ts.map +1 -0
- package/dist/store/optimistic.js +44 -0
- package/dist/store/optimistic.js.map +1 -0
- package/dist/store/query-key.d.ts +6 -0
- package/dist/store/query-key.d.ts.map +1 -0
- package/dist/store/query-key.js +23 -0
- package/dist/store/query-key.js.map +1 -0
- package/dist/store/shape.d.ts +26 -0
- package/dist/store/shape.d.ts.map +1 -0
- package/dist/store/shape.js +30 -0
- package/dist/store/shape.js.map +1 -0
- package/dist/store/store.d.ts +69 -0
- package/dist/store/store.d.ts.map +1 -0
- package/dist/store/store.js +145 -0
- package/dist/store/store.js.map +1 -0
- package/dist/store/store.typecheck.d.ts +2 -0
- package/dist/store/store.typecheck.d.ts.map +1 -0
- package/dist/store/store.typecheck.js +41 -0
- package/dist/store/store.typecheck.js.map +1 -0
- package/dist/transport/auto/decision.d.ts +23 -0
- package/dist/transport/auto/decision.d.ts.map +1 -0
- package/dist/transport/auto/decision.js +49 -0
- package/dist/transport/auto/decision.js.map +1 -0
- package/dist/transport/auto/fallback.d.ts +17 -0
- package/dist/transport/auto/fallback.d.ts.map +1 -0
- package/dist/transport/auto/fallback.js +77 -0
- package/dist/transport/auto/fallback.js.map +1 -0
- package/dist/transport/auto/index.d.ts +3 -0
- package/dist/transport/auto/index.d.ts.map +1 -0
- package/dist/transport/auto/index.js +3 -0
- package/dist/transport/auto/index.js.map +1 -0
- package/dist/transport/auto/transport.d.ts +38 -0
- package/dist/transport/auto/transport.d.ts.map +1 -0
- package/dist/transport/auto/transport.js +141 -0
- package/dist/transport/auto/transport.js.map +1 -0
- package/dist/transport/auto/warning.d.ts +14 -0
- package/dist/transport/auto/warning.d.ts.map +1 -0
- package/dist/transport/auto/warning.js +19 -0
- package/dist/transport/auto/warning.js.map +1 -0
- package/dist/transport/deadline.d.ts +12 -0
- package/dist/transport/deadline.d.ts.map +1 -0
- package/dist/transport/deadline.js +40 -0
- package/dist/transport/deadline.js.map +1 -0
- package/dist/transport/http/index.d.ts +2 -0
- package/dist/transport/http/index.d.ts.map +1 -0
- package/dist/transport/http/index.js +2 -0
- package/dist/transport/http/index.js.map +1 -0
- package/dist/transport/http/response.d.ts +8 -0
- package/dist/transport/http/response.d.ts.map +1 -0
- package/dist/transport/http/response.js +79 -0
- package/dist/transport/http/response.js.map +1 -0
- package/dist/transport/http/stream.d.ts +25 -0
- package/dist/transport/http/stream.d.ts.map +1 -0
- package/dist/transport/http/stream.js +197 -0
- package/dist/transport/http/stream.js.map +1 -0
- package/dist/transport/http/transport.d.ts +33 -0
- package/dist/transport/http/transport.d.ts.map +1 -0
- package/dist/transport/http/transport.js +340 -0
- package/dist/transport/http/transport.js.map +1 -0
- package/dist/transport/index.d.ts +2 -7
- package/dist/transport/index.d.ts.map +1 -1
- package/dist/transport/index.js +1 -5
- package/dist/transport/index.js.map +1 -1
- package/dist/transport/transport.d.ts +33 -0
- package/dist/transport/transport.d.ts.map +1 -0
- package/dist/transport/transport.js +2 -0
- package/dist/transport/transport.js.map +1 -0
- package/dist/transport/websocket/connection.d.ts +38 -0
- package/dist/transport/websocket/connection.d.ts.map +1 -0
- package/dist/transport/websocket/connection.js +297 -0
- package/dist/transport/websocket/connection.js.map +1 -0
- package/dist/transport/websocket/exchange.d.ts +46 -0
- package/dist/transport/websocket/exchange.d.ts.map +1 -0
- package/dist/transport/websocket/exchange.js +289 -0
- package/dist/transport/websocket/exchange.js.map +1 -0
- package/dist/transport/websocket/index.d.ts +2 -0
- package/dist/transport/websocket/index.d.ts.map +1 -0
- package/dist/transport/websocket/index.js +2 -0
- package/dist/transport/websocket/index.js.map +1 -0
- package/dist/transport/websocket/transport.d.ts +47 -0
- package/dist/transport/websocket/transport.d.ts.map +1 -0
- package/dist/transport/websocket/transport.js +176 -0
- package/dist/transport/websocket/transport.js.map +1 -0
- package/package.json +32 -29
- package/dist/auth/addressing.d.ts +0 -32
- package/dist/auth/addressing.d.ts.map +0 -1
- package/dist/auth/addressing.js +0 -36
- package/dist/auth/addressing.js.map +0 -1
- package/dist/auth/api.d.ts +0 -70
- package/dist/auth/api.d.ts.map +0 -1
- package/dist/auth/api.js +0 -36
- package/dist/auth/api.js.map +0 -1
- package/dist/auth/batch.d.ts +0 -18
- package/dist/auth/batch.d.ts.map +0 -1
- package/dist/auth/batch.js +0 -25
- package/dist/auth/batch.js.map +0 -1
- package/dist/auth/composition.d.ts +0 -27
- package/dist/auth/composition.d.ts.map +0 -1
- package/dist/auth/composition.js +0 -83
- package/dist/auth/composition.js.map +0 -1
- package/dist/auth/defaults.d.ts +0 -3
- package/dist/auth/defaults.d.ts.map +0 -1
- package/dist/auth/defaults.js +0 -3
- package/dist/auth/defaults.js.map +0 -1
- package/dist/auth/minting.d.ts +0 -35
- package/dist/auth/minting.d.ts.map +0 -1
- package/dist/auth/minting.js +0 -31
- package/dist/auth/minting.js.map +0 -1
- package/dist/auth/permissions.d.ts +0 -55
- package/dist/auth/permissions.d.ts.map +0 -1
- package/dist/auth/permissions.js +0 -47
- package/dist/auth/permissions.js.map +0 -1
- package/dist/auth/principal.d.ts +0 -19
- package/dist/auth/principal.d.ts.map +0 -1
- package/dist/auth/principal.js +0 -46
- package/dist/auth/principal.js.map +0 -1
- package/dist/auth/shorthands.d.ts +0 -19
- package/dist/auth/shorthands.d.ts.map +0 -1
- package/dist/auth/shorthands.js +0 -27
- package/dist/auth/shorthands.js.map +0 -1
- package/dist/client/batch.d.ts +0 -26
- package/dist/client/batch.d.ts.map +0 -1
- package/dist/client/batch.js +0 -8
- package/dist/client/batch.js.map +0 -1
- package/dist/client/bound.d.ts +0 -27
- package/dist/client/bound.d.ts.map +0 -1
- package/dist/client/bound.js +0 -14
- package/dist/client/bound.js.map +0 -1
- package/dist/client/config.d.ts +0 -112
- package/dist/client/config.d.ts.map +0 -1
- package/dist/client/config.js +0 -10
- package/dist/client/config.js.map +0 -1
- package/dist/client/fn-map.d.ts +0 -61
- package/dist/client/fn-map.d.ts.map +0 -1
- package/dist/client/fn-map.js +0 -2
- package/dist/client/fn-map.js.map +0 -1
- package/dist/client/freeze.d.ts +0 -32
- package/dist/client/freeze.d.ts.map +0 -1
- package/dist/client/freeze.js +0 -42
- package/dist/client/freeze.js.map +0 -1
- package/dist/client/hooks.d.ts +0 -49
- package/dist/client/hooks.d.ts.map +0 -1
- package/dist/client/hooks.js +0 -2
- package/dist/client/hooks.js.map +0 -1
- package/dist/errors/errors.d.ts +0 -156
- package/dist/errors/errors.d.ts.map +0 -1
- package/dist/errors/errors.js +0 -238
- package/dist/errors/errors.js.map +0 -1
- package/dist/errors/guards.d.ts +0 -39
- package/dist/errors/guards.d.ts.map +0 -1
- package/dist/errors/guards.js +0 -127
- package/dist/errors/guards.js.map +0 -1
- package/dist/errors/session-error.d.ts +0 -21
- package/dist/errors/session-error.d.ts.map +0 -1
- package/dist/errors/session-error.js +0 -25
- package/dist/errors/session-error.js.map +0 -1
- package/dist/graph/api.d.ts +0 -85
- package/dist/graph/api.d.ts.map +0 -1
- package/dist/graph/api.js +0 -66
- package/dist/graph/api.js.map +0 -1
- package/dist/graph/mutate/builder.d.ts +0 -108
- package/dist/graph/mutate/builder.d.ts.map +0 -1
- package/dist/graph/mutate/builder.js +0 -127
- package/dist/graph/mutate/builder.js.map +0 -1
- package/dist/graph/mutate/index.d.ts +0 -5
- package/dist/graph/mutate/index.d.ts.map +0 -1
- package/dist/graph/mutate/index.js +0 -3
- package/dist/graph/mutate/index.js.map +0 -1
- package/dist/graph/mutate/shorthands.d.ts +0 -42
- package/dist/graph/mutate/shorthands.d.ts.map +0 -1
- package/dist/graph/mutate/shorthands.js +0 -65
- package/dist/graph/mutate/shorthands.js.map +0 -1
- package/dist/graph/named.d.ts +0 -38
- package/dist/graph/named.d.ts.map +0 -1
- package/dist/graph/named.js +0 -47
- package/dist/graph/named.js.map +0 -1
- package/dist/graph/query/builder.d.ts +0 -116
- package/dist/graph/query/builder.d.ts.map +0 -1
- package/dist/graph/query/builder.js +0 -136
- package/dist/graph/query/builder.js.map +0 -1
- package/dist/graph/query/edge-ref.d.ts +0 -13
- package/dist/graph/query/edge-ref.d.ts.map +0 -1
- package/dist/graph/query/edge-ref.js +0 -56
- package/dist/graph/query/edge-ref.js.map +0 -1
- package/dist/graph/query/edges.d.ts +0 -10
- package/dist/graph/query/edges.d.ts.map +0 -1
- package/dist/graph/query/edges.js +0 -11
- package/dist/graph/query/edges.js.map +0 -1
- package/dist/graph/query/errors.d.ts +0 -31
- package/dist/graph/query/errors.d.ts.map +0 -1
- package/dist/graph/query/errors.js +0 -28
- package/dist/graph/query/errors.js.map +0 -1
- package/dist/graph/query/filter.d.ts +0 -50
- package/dist/graph/query/filter.d.ts.map +0 -1
- package/dist/graph/query/filter.js +0 -32
- package/dist/graph/query/filter.js.map +0 -1
- package/dist/graph/query/index.d.ts +0 -12
- package/dist/graph/query/index.d.ts.map +0 -1
- package/dist/graph/query/index.js +0 -7
- package/dist/graph/query/index.js.map +0 -1
- package/dist/graph/query/lower.d.ts +0 -30
- package/dist/graph/query/lower.d.ts.map +0 -1
- package/dist/graph/query/lower.js +0 -171
- package/dist/graph/query/lower.js.map +0 -1
- package/dist/graph/query/shorthands.d.ts +0 -34
- package/dist/graph/query/shorthands.d.ts.map +0 -1
- package/dist/graph/query/shorthands.js +0 -71
- package/dist/graph/query/shorthands.js.map +0 -1
- package/dist/graph/query/traverse.d.ts +0 -59
- package/dist/graph/query/traverse.d.ts.map +0 -1
- package/dist/graph/query/traverse.js +0 -144
- package/dist/graph/query/traverse.js.map +0 -1
- package/dist/graph/reconcile/execute.d.ts +0 -8
- package/dist/graph/reconcile/execute.d.ts.map +0 -1
- package/dist/graph/reconcile/execute.js +0 -56
- package/dist/graph/reconcile/execute.js.map +0 -1
- package/dist/graph/reconcile/index.d.ts +0 -5
- package/dist/graph/reconcile/index.d.ts.map +0 -1
- package/dist/graph/reconcile/index.js +0 -3
- package/dist/graph/reconcile/index.js.map +0 -1
- package/dist/graph/reconcile/input.d.ts +0 -80
- package/dist/graph/reconcile/input.d.ts.map +0 -1
- package/dist/graph/reconcile/input.js +0 -5
- package/dist/graph/reconcile/input.js.map +0 -1
- package/dist/graph/reconcile/normalize.d.ts +0 -3
- package/dist/graph/reconcile/normalize.d.ts.map +0 -1
- package/dist/graph/reconcile/normalize.js +0 -144
- package/dist/graph/reconcile/normalize.js.map +0 -1
- package/dist/graph/reconcile/result.d.ts +0 -19
- package/dist/graph/reconcile/result.d.ts.map +0 -1
- package/dist/graph/reconcile/result.js +0 -95
- package/dist/graph/reconcile/result.js.map +0 -1
- package/dist/graph/reconcile/scope.d.ts +0 -6
- package/dist/graph/reconcile/scope.d.ts.map +0 -1
- package/dist/graph/reconcile/scope.js +0 -69
- package/dist/graph/reconcile/scope.js.map +0 -1
- package/dist/graph/result/envelope.d.ts +0 -37
- package/dist/graph/result/envelope.d.ts.map +0 -1
- package/dist/graph/result/envelope.js +0 -59
- package/dist/graph/result/envelope.js.map +0 -1
- package/dist/graph/result/index.d.ts +0 -6
- package/dist/graph/result/index.d.ts.map +0 -1
- package/dist/graph/result/index.js +0 -4
- package/dist/graph/result/index.js.map +0 -1
- package/dist/graph/result/next.d.ts +0 -16
- package/dist/graph/result/next.d.ts.map +0 -1
- package/dist/graph/result/next.js +0 -77
- package/dist/graph/result/next.js.map +0 -1
- package/dist/graph/result/paged.d.ts +0 -30
- package/dist/graph/result/paged.d.ts.map +0 -1
- package/dist/graph/result/paged.js +0 -41
- package/dist/graph/result/paged.js.map +0 -1
- package/dist/graph/wire.d.ts +0 -33
- package/dist/graph/wire.d.ts.map +0 -1
- package/dist/graph/wire.js +0 -16
- package/dist/graph/wire.js.map +0 -1
- package/dist/pacer/batcher.d.ts +0 -11
- package/dist/pacer/batcher.d.ts.map +0 -1
- package/dist/pacer/batcher.js +0 -15
- package/dist/pacer/batcher.js.map +0 -1
- package/dist/pacer/defaults.d.ts +0 -18
- package/dist/pacer/defaults.d.ts.map +0 -1
- package/dist/pacer/defaults.js +0 -18
- package/dist/pacer/defaults.js.map +0 -1
- package/dist/pacer/queue.d.ts +0 -11
- package/dist/pacer/queue.d.ts.map +0 -1
- package/dist/pacer/queue.js +0 -15
- package/dist/pacer/queue.js.map +0 -1
- package/dist/pacer/rate-limiter.d.ts +0 -11
- package/dist/pacer/rate-limiter.d.ts.map +0 -1
- package/dist/pacer/rate-limiter.js +0 -15
- package/dist/pacer/rate-limiter.js.map +0 -1
- package/dist/pacer/retry.d.ts +0 -14
- package/dist/pacer/retry.d.ts.map +0 -1
- package/dist/pacer/retry.js +0 -50
- package/dist/pacer/retry.js.map +0 -1
- package/dist/pool/errors.d.ts +0 -13
- package/dist/pool/errors.d.ts.map +0 -1
- package/dist/pool/errors.js +0 -16
- package/dist/pool/errors.js.map +0 -1
- package/dist/schema/bound/binder.d.ts +0 -49
- package/dist/schema/bound/binder.d.ts.map +0 -1
- package/dist/schema/bound/binder.js +0 -195
- package/dist/schema/bound/binder.js.map +0 -1
- package/dist/schema/bound/bound-node.d.ts +0 -105
- package/dist/schema/bound/bound-node.d.ts.map +0 -1
- package/dist/schema/bound/bound-node.js +0 -128
- package/dist/schema/bound/bound-node.js.map +0 -1
- package/dist/schema/bound/index.d.ts +0 -10
- package/dist/schema/bound/index.d.ts.map +0 -1
- package/dist/schema/bound/index.js +0 -5
- package/dist/schema/bound/index.js.map +0 -1
- package/dist/schema/bound/view.d.ts +0 -44
- package/dist/schema/bound/view.d.ts.map +0 -1
- package/dist/schema/bound/view.js +0 -117
- package/dist/schema/bound/view.js.map +0 -1
- package/dist/schema/bound/write-props.d.ts +0 -38
- package/dist/schema/bound/write-props.d.ts.map +0 -1
- package/dist/schema/bound/write-props.js +0 -2
- package/dist/schema/bound/write-props.js.map +0 -1
- package/dist/schema/call-args.d.ts +0 -6
- package/dist/schema/call-args.d.ts.map +0 -1
- package/dist/schema/call-args.js +0 -21
- package/dist/schema/call-args.js.map +0 -1
- package/dist/schema/class-proxy.d.ts +0 -11
- package/dist/schema/class-proxy.d.ts.map +0 -1
- package/dist/schema/class-proxy.js +0 -46
- package/dist/schema/class-proxy.js.map +0 -1
- package/dist/schema/extract.d.ts +0 -24
- package/dist/schema/extract.d.ts.map +0 -1
- package/dist/schema/extract.js +0 -45
- package/dist/schema/extract.js.map +0 -1
- package/dist/schema/from-entries.d.ts +0 -12
- package/dist/schema/from-entries.d.ts.map +0 -1
- package/dist/schema/from-entries.js +0 -39
- package/dist/schema/from-entries.js.map +0 -1
- package/dist/schema/known-dispatch.d.ts +0 -6
- package/dist/schema/known-dispatch.d.ts.map +0 -1
- package/dist/schema/known-dispatch.js +0 -39
- package/dist/schema/known-dispatch.js.map +0 -1
- package/dist/schema/node-proxy.d.ts +0 -21
- package/dist/schema/node-proxy.d.ts.map +0 -1
- package/dist/schema/node-proxy.js +0 -75
- package/dist/schema/node-proxy.js.map +0 -1
- package/dist/schema/persistence.d.ts +0 -31
- package/dist/schema/persistence.d.ts.map +0 -1
- package/dist/schema/persistence.js +0 -2
- package/dist/schema/persistence.js.map +0 -1
- package/dist/schema/proxy-types.d.ts +0 -131
- package/dist/schema/proxy-types.d.ts.map +0 -1
- package/dist/schema/proxy-types.js +0 -2
- package/dist/schema/proxy-types.js.map +0 -1
- package/dist/schema/registry.d.ts +0 -50
- package/dist/schema/registry.d.ts.map +0 -1
- package/dist/schema/registry.js +0 -110
- package/dist/schema/registry.js.map +0 -1
- package/dist/schema/resolve.d.ts +0 -26
- package/dist/schema/resolve.d.ts.map +0 -1
- package/dist/schema/resolve.js +0 -27
- package/dist/schema/resolve.js.map +0 -1
- package/dist/schema/typed-client.d.ts +0 -10
- package/dist/schema/typed-client.d.ts.map +0 -1
- package/dist/schema/typed-client.js +0 -26
- package/dist/schema/typed-client.js.map +0 -1
- package/dist/schema/types.d.ts +0 -9
- package/dist/schema/types.d.ts.map +0 -1
- package/dist/schema/types.js +0 -2
- package/dist/schema/types.js.map +0 -1
- package/dist/session/bound.d.ts +0 -11
- package/dist/session/bound.d.ts.map +0 -1
- package/dist/session/bound.js +0 -42
- package/dist/session/bound.js.map +0 -1
- package/dist/session/client-session.d.ts +0 -72
- package/dist/session/client-session.d.ts.map +0 -1
- package/dist/session/client-session.js +0 -673
- package/dist/session/client-session.js.map +0 -1
- package/dist/session/config.d.ts +0 -168
- package/dist/session/config.d.ts.map +0 -1
- package/dist/session/config.js +0 -2
- package/dist/session/config.js.map +0 -1
- package/dist/session/delegation/cache.d.ts +0 -139
- package/dist/session/delegation/cache.d.ts.map +0 -1
- package/dist/session/delegation/cache.js +0 -256
- package/dist/session/delegation/cache.js.map +0 -1
- package/dist/session/delegation/errors.d.ts +0 -44
- package/dist/session/delegation/errors.d.ts.map +0 -1
- package/dist/session/delegation/errors.js +0 -62
- package/dist/session/delegation/errors.js.map +0 -1
- package/dist/session/delegation/policy.d.ts +0 -183
- package/dist/session/delegation/policy.d.ts.map +0 -1
- package/dist/session/delegation/policy.js +0 -114
- package/dist/session/delegation/policy.js.map +0 -1
- package/dist/session/delegation/utils.d.ts +0 -4
- package/dist/session/delegation/utils.d.ts.map +0 -1
- package/dist/session/delegation/utils.js +0 -12
- package/dist/session/delegation/utils.js.map +0 -1
- package/dist/session/delegation-mint.d.ts +0 -13
- package/dist/session/delegation-mint.d.ts.map +0 -1
- package/dist/session/delegation-mint.js +0 -39
- package/dist/session/delegation-mint.js.map +0 -1
- package/dist/session/dispatch-routes.d.ts +0 -27
- package/dist/session/dispatch-routes.d.ts.map +0 -1
- package/dist/session/dispatch-routes.js +0 -77
- package/dist/session/dispatch-routes.js.map +0 -1
- package/dist/session/errors/index.d.ts +0 -6
- package/dist/session/errors/index.d.ts.map +0 -1
- package/dist/session/errors/index.js +0 -8
- package/dist/session/errors/index.js.map +0 -1
- package/dist/session/errors/session-errors.d.ts +0 -52
- package/dist/session/errors/session-errors.d.ts.map +0 -1
- package/dist/session/errors/session-errors.js +0 -70
- package/dist/session/errors/session-errors.js.map +0 -1
- package/dist/session/forward.d.ts +0 -15
- package/dist/session/forward.d.ts.map +0 -1
- package/dist/session/forward.js +0 -40
- package/dist/session/forward.js.map +0 -1
- package/dist/session/helpers.d.ts +0 -23
- package/dist/session/helpers.d.ts.map +0 -1
- package/dist/session/helpers.js +0 -56
- package/dist/session/helpers.js.map +0 -1
- package/dist/session/hooks.d.ts +0 -140
- package/dist/session/hooks.d.ts.map +0 -1
- package/dist/session/hooks.js +0 -2
- package/dist/session/hooks.js.map +0 -1
- package/dist/session/redirect/errors.d.ts +0 -45
- package/dist/session/redirect/errors.d.ts.map +0 -1
- package/dist/session/redirect/errors.js +0 -52
- package/dist/session/redirect/errors.js.map +0 -1
- package/dist/session/redirect/policy.d.ts +0 -79
- package/dist/session/redirect/policy.d.ts.map +0 -1
- package/dist/session/redirect/policy.js +0 -69
- package/dist/session/redirect/policy.js.map +0 -1
- package/dist/session/types.d.ts +0 -54
- package/dist/session/types.d.ts.map +0 -1
- package/dist/session/types.js +0 -2
- package/dist/session/types.js.map +0 -1
- package/dist/store/canonicalize.d.ts +0 -44
- package/dist/store/canonicalize.d.ts.map +0 -1
- package/dist/store/canonicalize.js +0 -0
- package/dist/store/canonicalize.js.map +0 -1
- package/dist/store/entities.d.ts +0 -81
- package/dist/store/entities.d.ts.map +0 -1
- package/dist/store/entities.js +0 -202
- package/dist/store/entities.js.map +0 -1
- package/dist/store/invalidate.d.ts +0 -66
- package/dist/store/invalidate.d.ts.map +0 -1
- package/dist/store/invalidate.js +0 -117
- package/dist/store/invalidate.js.map +0 -1
- package/dist/store/overlay.d.ts +0 -118
- package/dist/store/overlay.d.ts.map +0 -1
- package/dist/store/overlay.js +0 -237
- package/dist/store/overlay.js.map +0 -1
- package/dist/store/schedule.d.ts +0 -31
- package/dist/store/schedule.d.ts.map +0 -1
- package/dist/store/schedule.js +0 -76
- package/dist/store/schedule.js.map +0 -1
- package/dist/store/shapes.d.ts +0 -92
- package/dist/store/shapes.d.ts.map +0 -1
- package/dist/store/shapes.js +0 -369
- package/dist/store/shapes.js.map +0 -1
- package/dist/store/types.d.ts +0 -168
- package/dist/store/types.d.ts.map +0 -1
- package/dist/store/types.js +0 -7
- package/dist/store/types.js.map +0 -1
- package/dist/transport/binary.d.ts +0 -15
- package/dist/transport/binary.d.ts.map +0 -1
- package/dist/transport/binary.js +0 -2
- package/dist/transport/binary.js.map +0 -1
- package/dist/transport/contract.d.ts +0 -58
- package/dist/transport/contract.d.ts.map +0 -1
- package/dist/transport/contract.js +0 -11
- package/dist/transport/contract.js.map +0 -1
- package/dist/transport/fetch.d.ts +0 -31
- package/dist/transport/fetch.d.ts.map +0 -1
- package/dist/transport/fetch.js +0 -78
- package/dist/transport/fetch.js.map +0 -1
- package/dist/transport/http-envelope.d.ts +0 -49
- package/dist/transport/http-envelope.d.ts.map +0 -1
- package/dist/transport/http-envelope.js +0 -418
- package/dist/transport/http-envelope.js.map +0 -1
- package/dist/transport/http-routed.d.ts +0 -61
- package/dist/transport/http-routed.d.ts.map +0 -1
- package/dist/transport/http-routed.js +0 -409
- package/dist/transport/http-routed.js.map +0 -1
- package/dist/transport/request-id.d.ts +0 -9
- package/dist/transport/request-id.d.ts.map +0 -1
- package/dist/transport/request-id.js +0 -12
- package/dist/transport/request-id.js.map +0 -1
- package/dist/transport/ws-envelope.d.ts +0 -74
- package/dist/transport/ws-envelope.d.ts.map +0 -1
- package/dist/transport/ws-envelope.js +0 -567
- package/dist/transport/ws-envelope.js.map +0 -1
- package/dist/util/race-signal.d.ts +0 -12
- package/dist/util/race-signal.d.ts.map +0 -1
- package/dist/util/race-signal.js +0 -34
- package/dist/util/race-signal.js.map +0 -1
- package/dist/wire/controller.d.ts +0 -38
- package/dist/wire/controller.d.ts.map +0 -1
- package/dist/wire/controller.js +0 -38
- package/dist/wire/controller.js.map +0 -1
- package/dist/wire/index.d.ts +0 -7
- package/dist/wire/index.d.ts.map +0 -1
- package/dist/wire/index.js +0 -4
- package/dist/wire/index.js.map +0 -1
- package/dist/wire/meta.d.ts +0 -81
- package/dist/wire/meta.d.ts.map +0 -1
- package/dist/wire/meta.js +0 -44
- package/dist/wire/meta.js.map +0 -1
- package/dist/wire/sse.d.ts +0 -67
- package/dist/wire/sse.d.ts.map +0 -1
- package/dist/wire/sse.js +0 -170
- package/dist/wire/sse.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../src/session/redirect/policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAI7D;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAA;AAErD;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAAE,MAAM,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAEnF;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,MAAM,CACJ,WAAW,EAAE,eAAe,EAC5B,IAAI,EAAE,aAAa,CAAC,WAAW,CAAC,EAChC,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,WAAW,GAAG,SAAS,GAC9B,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;CAChD;AAID;;;;;;;GAOG;AACH,wBAAgB,cAAc,IAAI,cAAc,CAI/C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,IAAI,cAAc,CAI7C;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE;IAAE,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAA;CAAE,GAAG,cAAc,CAOzF;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE;IACjC,QAAQ,EAAE,CAAC,WAAW,EAAE,eAAe,EAAE,IAAI,EAAE,aAAa,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAC9F,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAA;CACjC,GAAG,cAAc,CAajB"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { raceAgainstSignal } from '../../util/race-signal.js';
|
|
2
|
-
// ─── Factories ───────────────────────────────────────────────────────────────
|
|
3
|
-
/**
|
|
4
|
-
* Follow every redirect. Default when `ClientSessionConfig.redirect` is absent.
|
|
5
|
-
*
|
|
6
|
-
* Consumers who want to gate redirects on a URL allowlist use
|
|
7
|
-
* `allowlistPolicy`; consumers who want to prompt the user per hop use
|
|
8
|
-
* `promptPolicy`; consumers who want to refuse every redirect use
|
|
9
|
-
* `strictPolicy`.
|
|
10
|
-
*/
|
|
11
|
-
export function allowAllPolicy() {
|
|
12
|
-
return {
|
|
13
|
-
decide: () => ({ follow: true }),
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Refuse every redirect. Opt-in — when a consumer wants cross-kernel
|
|
18
|
-
* follow blocked entirely and every redirect surfaced as a
|
|
19
|
-
* `RedirectRefusedError`.
|
|
20
|
-
*/
|
|
21
|
-
export function strictPolicy() {
|
|
22
|
-
return {
|
|
23
|
-
decide: () => ({ follow: false, reason: 'strict policy refuses all redirects' }),
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Follow only URLs that the `allow` predicate returns true for.
|
|
28
|
-
*
|
|
29
|
-
* ```ts
|
|
30
|
-
* allowlistPolicy({
|
|
31
|
-
* allow: (url) => new URL(url).host.endsWith('.trusted.kernel'),
|
|
32
|
-
* })
|
|
33
|
-
* ```
|
|
34
|
-
*/
|
|
35
|
-
export function allowlistPolicy(opts) {
|
|
36
|
-
return {
|
|
37
|
-
decide: (redirection) => {
|
|
38
|
-
if (opts.allow(redirection.url))
|
|
39
|
-
return { follow: true };
|
|
40
|
-
return { follow: false, reason: `URL not in allowlist: ${redirection.url}` };
|
|
41
|
-
},
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Ask the consumer for each redirect. The returned policy races the UI
|
|
46
|
-
* `onPrompt` call against the caller's `signal`, so aborting the
|
|
47
|
-
* top-level `session.call` cancels the prompt.
|
|
48
|
-
*
|
|
49
|
-
* `allow`, when provided, is a fast-path predicate that skips the
|
|
50
|
-
* prompt (for pre-approved URLs). Returning `false` from `allow` falls
|
|
51
|
-
* through to `onPrompt`.
|
|
52
|
-
*/
|
|
53
|
-
export function promptPolicy(opts) {
|
|
54
|
-
return {
|
|
55
|
-
decide: async (redirection, hops, _correlationId, signal) => {
|
|
56
|
-
if (opts.allow?.(redirection.url))
|
|
57
|
-
return { follow: true };
|
|
58
|
-
// Short-circuit a pre-aborted signal before opening the prompt —
|
|
59
|
-
// otherwise the consumer's UI flashes for a call the caller already cancelled.
|
|
60
|
-
if (signal?.aborted)
|
|
61
|
-
throw signal.reason instanceof Error ? signal.reason : new Error('aborted');
|
|
62
|
-
const accepted = await raceAgainstSignal(opts.onPrompt(redirection, hops), signal);
|
|
63
|
-
if (accepted)
|
|
64
|
-
return { follow: true };
|
|
65
|
-
return { follow: false, reason: `consumer declined redirect → ${redirection.url}` };
|
|
66
|
-
},
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
|
-
//# sourceMappingURL=policy.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"policy.js","sourceRoot":"","sources":["../../../src/session/redirect/policy.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAuC7D,gFAAgF;AAEhF;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO;QACL,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KACjC,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY;IAC1B,OAAO;QACL,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,qCAAqC,EAAE,CAAC;KACjF,CAAA;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAAC,IAAyC;IACvE,OAAO;QACL,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE;YACtB,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC;gBAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;YACxD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,yBAAyB,WAAW,CAAC,GAAG,EAAE,EAAE,CAAA;QAC9E,CAAC;KACF,CAAA;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,IAG5B;IACC,OAAO;QACL,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE;YAC1D,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC;gBAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;YAC1D,iEAAiE;YACjE,+EAA+E;YAC/E,IAAI,MAAM,EAAE,OAAO;gBACjB,MAAM,MAAM,CAAC,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAA;YAC7E,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAA;YAClF,IAAI,QAAQ;gBAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;YACrC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,gCAAgC,WAAW,CAAC,GAAG,EAAE,EAAE,CAAA;QACrF,CAAC;KACF,CAAA;AACH,CAAC"}
|
package/dist/session/types.d.ts
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import type { CredentialInput } from '@astrale-os/kernel-core';
|
|
2
|
-
import type { UnresolvedIdentityExpr } from '@astrale-os/kernel-core/expression';
|
|
3
|
-
import type { Schema } from '@astrale-os/kernel-dsl';
|
|
4
|
-
import type { AuthApi } from '../auth/index.js';
|
|
5
|
-
import type { BinaryFns, CallFns, FnMap, SignalFns, StreamFns } from '../client/fn-map.js';
|
|
6
|
-
import type { GraphApi } from '../graph/index.js';
|
|
7
|
-
import type { SchemaBoundView } from '../schema/bound/index.js';
|
|
8
|
-
import type { ClassNames, ClassProxy, NodeProxy } from '../schema/proxy-types.js';
|
|
9
|
-
import type { SchemaRegistry } from '../schema/registry.js';
|
|
10
|
-
import type { FunctionSchema } from '../schema/types.js';
|
|
11
|
-
import type { BinaryResponse } from '../transport/binary.js';
|
|
12
|
-
import type { ClientSessionCallOptions } from './config.js';
|
|
13
|
-
/**
|
|
14
|
-
* Credential-bound view over a `ClientSession`. Mirrors `BoundClientView` but over
|
|
15
|
-
* the orchestration surface — dispatch primitives return the unwrapped
|
|
16
|
-
* post-orchestration shape, not the discriminated `Send*Result` union.
|
|
17
|
-
*
|
|
18
|
-
* The `GraphApi` read/write sugar is flattened directly onto the view — the
|
|
19
|
-
* surface the shell/SDK previously reached via `.graph` — bound to this view's
|
|
20
|
-
* credential.
|
|
21
|
-
*
|
|
22
|
-
* The control plane rides alongside as the namespaced `auth` ({@link AuthApi}),
|
|
23
|
-
* dispatched with this same credential.
|
|
24
|
-
*/
|
|
25
|
-
export type BoundClientSessionView<M extends FnMap> = GraphApi & {
|
|
26
|
-
readonly default: string;
|
|
27
|
-
readonly registry: SchemaRegistry;
|
|
28
|
-
readonly auth: AuthApi;
|
|
29
|
-
call<K extends CallFns<M>>(method: K, params: M[K]['params'], opts?: ClientSessionCallOptions): Promise<M[K]['result']>;
|
|
30
|
-
stream<K extends StreamFns<M>>(method: K, params: M[K]['params'], opts?: ClientSessionCallOptions): Promise<AsyncIterable<M[K]['result']>>;
|
|
31
|
-
binary<K extends BinaryFns<M>>(method: K, params: M[K]['params'], opts?: ClientSessionCallOptions): Promise<BinaryResponse>;
|
|
32
|
-
signal<K extends SignalFns<M>>(method: K, params: M[K]['params'], opts?: ClientSessionCallOptions): void;
|
|
33
|
-
describe(method: string): FunctionSchema | undefined;
|
|
34
|
-
withSchema<S extends Schema>(schema: S): SchemaBoundView<S, M>;
|
|
35
|
-
as(credential: CredentialInput | (() => CredentialInput), opts?: BoundClientSessionOptions): BoundClientSessionView<M>;
|
|
36
|
-
};
|
|
37
|
-
export type BoundClientSessionOptions = {
|
|
38
|
-
/** Default next-hop delegation used by this bound view unless a call overrides it. */
|
|
39
|
-
delegation?: UnresolvedIdentityExpr;
|
|
40
|
-
};
|
|
41
|
-
/**
|
|
42
|
-
* Schema-typed proxy dispatched through ClientSession: followed redirects are
|
|
43
|
-
* transparent; refused redirects throw `RedirectRefusedError`.
|
|
44
|
-
*
|
|
45
|
-
* `node` / `static` cover `call` / `stream` / `binary`. Signals remain on
|
|
46
|
-
* `session.signal<K>` — the awaitable-only proxy doesn't mix sync-void and
|
|
47
|
-
* `Promise<R>` shapes.
|
|
48
|
-
*/
|
|
49
|
-
export interface SchemaTypedClientSession<S extends Schema> {
|
|
50
|
-
node<K extends ClassNames<S>>(className: K, nodeId: string): NodeProxy<S, K>;
|
|
51
|
-
static<K extends ClassNames<S>>(className: K): ClassProxy<S, K>;
|
|
52
|
-
readonly schema: S;
|
|
53
|
-
}
|
|
54
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/session/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAA;AAChF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAEpD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC1F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACjF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAE3D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,sBAAsB,CAAC,CAAC,SAAS,KAAK,IAAI,QAAQ,GAAG;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAA;IACjC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IACtB,IAAI,CAAC,CAAC,SAAS,OAAO,CAAC,CAAC,CAAC,EACvB,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EACtB,IAAI,CAAC,EAAE,wBAAwB,GAC9B,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC1B,MAAM,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAC3B,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EACtB,IAAI,CAAC,EAAE,wBAAwB,GAC9B,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;IACzC,MAAM,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAC3B,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EACtB,IAAI,CAAC,EAAE,wBAAwB,GAC9B,OAAO,CAAC,cAAc,CAAC,CAAA;IAC1B,MAAM,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAC3B,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EACtB,IAAI,CAAC,EAAE,wBAAwB,GAC9B,IAAI,CAAA;IACP,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAAA;IACpD,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC9D,EAAE,CACA,UAAU,EAAE,eAAe,GAAG,CAAC,MAAM,eAAe,CAAC,EACrD,IAAI,CAAC,EAAE,yBAAyB,GAC/B,sBAAsB,CAAC,CAAC,CAAC,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,sFAAsF;IACtF,UAAU,CAAC,EAAE,sBAAsB,CAAA;CACpC,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,wBAAwB,CAAC,CAAC,SAAS,MAAM;IACxD,IAAI,CAAC,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC5E,MAAM,CAAC,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC/D,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;CACnB"}
|
package/dist/session/types.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/session/types.ts"],"names":[],"mappings":""}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shape keying (FRONTEND §5.4).
|
|
3
|
-
*
|
|
4
|
-
* A shape's identity is the canonical form of its query AST, scoped to a
|
|
5
|
-
* principal. `canonicalizeAST` strips page cursors, normalizes defaults, and
|
|
6
|
-
* fixes field order so two spellings of the same read collapse to one key;
|
|
7
|
-
* `shapeKey` additionally re-anchors roots to resolved node ids so a relative
|
|
8
|
-
* path and an `@<id>` addressing the same root never fragment the cache.
|
|
9
|
-
*/
|
|
10
|
-
import type { PathLike, QueryASTInput } from '@astrale-os/kernel-core';
|
|
11
|
-
import type { GatherBuilder, QuerySource } from '../graph/index.js';
|
|
12
|
-
/** The inputs the replica accepts for a read — the same the raw floor takes. */
|
|
13
|
-
export type ShapeInput = QueryASTInput | ((q: QuerySource) => GatherBuilder) | PathLike;
|
|
14
|
-
/** Resolve a raw root address to a node id, or `undefined` when unresolved. */
|
|
15
|
-
export type RootResolver = (raw: string) => string | undefined;
|
|
16
|
-
/** Normalize any {@link ShapeInput} to a raw-string AST value (page state intact). */
|
|
17
|
-
export declare function shapeInputToAST(input: ShapeInput): QueryASTInput;
|
|
18
|
-
/**
|
|
19
|
-
* Canonicalize an AST (FRONTEND §5.4 steps 1–2): drop every `page.cursor`
|
|
20
|
-
* (keep `limit`), default an omitted move `depth` to 1, drop a redundant
|
|
21
|
-
* single-hop gather `depth`, dedupe + sort roots, and rebuild every object in
|
|
22
|
-
* a fixed field order. The result is a re-runnable, comparison-stable AST.
|
|
23
|
-
*/
|
|
24
|
-
export declare function canonicalizeAST(ast: QueryASTInput): QueryASTInput;
|
|
25
|
-
/**
|
|
26
|
-
* The scoped, re-anchored shape key. Roots resolvable through `resolveRoot`
|
|
27
|
-
* collapse to their `@<id>` form (input-form and id-form share one key);
|
|
28
|
-
* unresolved roots stay in raw input form (a provisional identity until a
|
|
29
|
-
* first evaluation resolves them, per §5.4 step 3).
|
|
30
|
-
*/
|
|
31
|
-
export declare function shapeKey(ast: QueryASTInput, scope: string, resolveRoot?: RootResolver): string;
|
|
32
|
-
/**
|
|
33
|
-
* Drop every page `cursor` from an AST's expands (keeping `limit`), leaving the
|
|
34
|
-
* page-1 base. A shape's `baseAst` must be cursor-free so a refetch replays from
|
|
35
|
-
* the start; the continuation lives exclusively in the shape's `contAst`.
|
|
36
|
-
*/
|
|
37
|
-
export declare function stripCursors(ast: QueryASTInput): QueryASTInput;
|
|
38
|
-
/**
|
|
39
|
-
* JSON with object keys sorted recursively — a stable serialization regardless
|
|
40
|
-
* of insertion order, so the canonical AST hashes identically however it was
|
|
41
|
-
* assembled. Arrays keep their (already-canonicalized) order.
|
|
42
|
-
*/
|
|
43
|
-
export declare function stableStringify(value: unknown): string;
|
|
44
|
-
//# sourceMappingURL=canonicalize.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"canonicalize.d.ts","sourceRoot":"","sources":["../../src/store/canonicalize.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAItE,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAInE,gFAAgF;AAChF,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,CAAC,CAAC,CAAC,EAAE,WAAW,KAAK,aAAa,CAAC,GAAG,QAAQ,CAAA;AAEvF,+EAA+E;AAC/E,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAA;AAM9D,sFAAsF;AACtF,wBAAgB,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,aAAa,CAIhE;AAMD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,GAAG,aAAa,CAOjE;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,YAAY,GAAG,MAAM,CAU9F;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,aAAa,GAAG,aAAa,CAa9D;AAyCD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAUtD"}
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"canonicalize.js","sourceRoot":"","sources":["../../src/store/canonicalize.ts"],"names":[],"mappings":"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"}
|
package/dist/store/entities.d.ts
DELETED
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* EntityStore (FRONTEND §5.1) — the normalized confirmed store.
|
|
3
|
-
*
|
|
4
|
-
* Nodes keyed by `NodeId`, edges by `toEdgeKey`, with secondary indexes (path
|
|
5
|
-
* incl. alias sidecar, class, endpoint) mirroring kernel-core's `Graph`. Deletes
|
|
6
|
-
* leave a TOMBSTONE so a stale overlapping read cannot resurrect them. Merge
|
|
7
|
-
* ordering is by an integer `seq` — an INTERIM local logical clock stamped by
|
|
8
|
-
* the memory (result-arrival order), since the wire carries no journal seq /
|
|
9
|
-
* entity rev yet (§6.1/§6.2 blockers); `seq`-wins with the delete carve-out.
|
|
10
|
-
*/
|
|
11
|
-
import type { EdgeKey, GraphEdgeWire, GraphNodeWire } from '../graph/index.js';
|
|
12
|
-
/** A confirmed node record: the wire plus the `seq` of the result that delivered it. */
|
|
13
|
-
export interface NodeRecord {
|
|
14
|
-
readonly wire: GraphNodeWire;
|
|
15
|
-
readonly seq: number;
|
|
16
|
-
}
|
|
17
|
-
/** A confirmed edge record: the wire plus its delivering `seq`. */
|
|
18
|
-
export interface EdgeRecord {
|
|
19
|
-
readonly wire: GraphEdgeWire;
|
|
20
|
-
readonly seq: number;
|
|
21
|
-
}
|
|
22
|
-
type NodeId = GraphNodeWire['id'];
|
|
23
|
-
/** A `function.get` result as the store integrates it. */
|
|
24
|
-
export interface ResultLike {
|
|
25
|
-
readonly nodes: readonly GraphNodeWire[];
|
|
26
|
-
readonly edges: readonly GraphEdgeWire[];
|
|
27
|
-
readonly aliases?: ReadonlyArray<readonly [NodeId, string]>;
|
|
28
|
-
}
|
|
29
|
-
export declare class EntityStore {
|
|
30
|
-
private readonly nodes;
|
|
31
|
-
private readonly edges;
|
|
32
|
-
private readonly nodeTombstones;
|
|
33
|
-
private readonly edgeTombstones;
|
|
34
|
-
private readonly byPath;
|
|
35
|
-
private readonly byClass;
|
|
36
|
-
private readonly byEndpoint;
|
|
37
|
-
/** Alias paths sidecar-indexed per node id, so deindex/gc can undo them. */
|
|
38
|
-
private readonly aliasPaths;
|
|
39
|
-
private _version;
|
|
40
|
-
/** Bumps on every mutation — a cheap change signal for snapshot caches. */
|
|
41
|
-
get version(): number;
|
|
42
|
-
/** The live record for `id`, or `undefined` when absent or tombstoned. */
|
|
43
|
-
node(id: NodeId): NodeRecord | undefined;
|
|
44
|
-
edge(key: EdgeKey): EdgeRecord | undefined;
|
|
45
|
-
isNodeTombstoned(id: NodeId): boolean;
|
|
46
|
-
isEdgeTombstoned(key: EdgeKey): boolean;
|
|
47
|
-
/** All live node ids reachable at the given path (primary + alias forms). */
|
|
48
|
-
nodeIdsByPath(raw: string): NodeId[];
|
|
49
|
-
/** First live node id at `raw`, or `undefined`. The store's root resolver. */
|
|
50
|
-
resolvePathToId(raw: string): NodeId | undefined;
|
|
51
|
-
nodeIdsByClass(raw: string): NodeId[];
|
|
52
|
-
/** Live edge keys incident to a node at path `raw` (either endpoint). */
|
|
53
|
-
edgeKeysByEndpoint(raw: string): EdgeKey[];
|
|
54
|
-
/**
|
|
55
|
-
* Fold a read result into the confirmed store at `seq`. Tombstoned entities
|
|
56
|
-
* are NOT resurrected (the delete carve-out); everything else upserts under
|
|
57
|
-
* `seq`-wins. Aliases from the sidecar extend the path index (multi-key).
|
|
58
|
-
*/
|
|
59
|
-
integrate(result: ResultLike, seq: number): void;
|
|
60
|
-
/** Confirm a created/updated node: clear any tombstone and set the record. */
|
|
61
|
-
confirmNode(wire: GraphNodeWire, seq: number): void;
|
|
62
|
-
confirmEdge(wire: GraphEdgeWire, seq: number): void;
|
|
63
|
-
/** Tombstone a node (remembered so a stale read cannot resurrect it). */
|
|
64
|
-
tombstoneNode(id: NodeId, now: number): void;
|
|
65
|
-
tombstoneEdge(key: EdgeKey, now: number): void;
|
|
66
|
-
/**
|
|
67
|
-
* Drop entities unreachable from every retained shape, and sweep tombstones
|
|
68
|
-
* older than `tombstoneTtlMs`. Reachability is supplied by the ShapeStore.
|
|
69
|
-
*/
|
|
70
|
-
gc(reachableNodes: ReadonlySet<NodeId>, reachableEdges: ReadonlySet<EdgeKey>, now: number, tombstoneTtlMs: number): void;
|
|
71
|
-
private upsertNode;
|
|
72
|
-
private upsertEdge;
|
|
73
|
-
private indexNode;
|
|
74
|
-
private deindexNode;
|
|
75
|
-
private indexEdge;
|
|
76
|
-
private deindexEdge;
|
|
77
|
-
private addToIndex;
|
|
78
|
-
private removeFromIndex;
|
|
79
|
-
}
|
|
80
|
-
export {};
|
|
81
|
-
//# sourceMappingURL=entities.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"entities.d.ts","sourceRoot":"","sources":["../../src/store/entities.ts"],"names":[],"mappings":"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"}
|
package/dist/store/entities.js
DELETED
|
@@ -1,202 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* EntityStore (FRONTEND §5.1) — the normalized confirmed store.
|
|
3
|
-
*
|
|
4
|
-
* Nodes keyed by `NodeId`, edges by `toEdgeKey`, with secondary indexes (path
|
|
5
|
-
* incl. alias sidecar, class, endpoint) mirroring kernel-core's `Graph`. Deletes
|
|
6
|
-
* leave a TOMBSTONE so a stale overlapping read cannot resurrect them. Merge
|
|
7
|
-
* ordering is by an integer `seq` — an INTERIM local logical clock stamped by
|
|
8
|
-
* the memory (result-arrival order), since the wire carries no journal seq /
|
|
9
|
-
* entity rev yet (§6.1/§6.2 blockers); `seq`-wins with the delete carve-out.
|
|
10
|
-
*/
|
|
11
|
-
import { edgeKey } from '../graph/index.js';
|
|
12
|
-
export class EntityStore {
|
|
13
|
-
nodes = new Map();
|
|
14
|
-
edges = new Map();
|
|
15
|
-
nodeTombstones = new Map();
|
|
16
|
-
edgeTombstones = new Map();
|
|
17
|
-
byPath = new Map();
|
|
18
|
-
byClass = new Map();
|
|
19
|
-
byEndpoint = new Map();
|
|
20
|
-
/** Alias paths sidecar-indexed per node id, so deindex/gc can undo them. */
|
|
21
|
-
aliasPaths = new Map();
|
|
22
|
-
_version = 0;
|
|
23
|
-
/** Bumps on every mutation — a cheap change signal for snapshot caches. */
|
|
24
|
-
get version() {
|
|
25
|
-
return this._version;
|
|
26
|
-
}
|
|
27
|
-
// ── Reads ──────────────────────────────────────────────────────────────────
|
|
28
|
-
/** The live record for `id`, or `undefined` when absent or tombstoned. */
|
|
29
|
-
node(id) {
|
|
30
|
-
return this.nodeTombstones.has(id) ? undefined : this.nodes.get(id);
|
|
31
|
-
}
|
|
32
|
-
edge(key) {
|
|
33
|
-
return this.edgeTombstones.has(key) ? undefined : this.edges.get(key);
|
|
34
|
-
}
|
|
35
|
-
isNodeTombstoned(id) {
|
|
36
|
-
return this.nodeTombstones.has(id);
|
|
37
|
-
}
|
|
38
|
-
isEdgeTombstoned(key) {
|
|
39
|
-
return this.edgeTombstones.has(key);
|
|
40
|
-
}
|
|
41
|
-
/** All live node ids reachable at the given path (primary + alias forms). */
|
|
42
|
-
nodeIdsByPath(raw) {
|
|
43
|
-
return [...(this.byPath.get(raw) ?? [])].filter((id) => !this.nodeTombstones.has(id));
|
|
44
|
-
}
|
|
45
|
-
/** First live node id at `raw`, or `undefined`. The store's root resolver. */
|
|
46
|
-
resolvePathToId(raw) {
|
|
47
|
-
return this.nodeIdsByPath(raw)[0];
|
|
48
|
-
}
|
|
49
|
-
nodeIdsByClass(raw) {
|
|
50
|
-
return [...(this.byClass.get(raw) ?? [])].filter((id) => !this.nodeTombstones.has(id));
|
|
51
|
-
}
|
|
52
|
-
/** Live edge keys incident to a node at path `raw` (either endpoint). */
|
|
53
|
-
edgeKeysByEndpoint(raw) {
|
|
54
|
-
return [...(this.byEndpoint.get(raw) ?? [])].filter((k) => !this.edgeTombstones.has(k));
|
|
55
|
-
}
|
|
56
|
-
// ── Integration (reads) ──────────────────────────────────────────────────────
|
|
57
|
-
/**
|
|
58
|
-
* Fold a read result into the confirmed store at `seq`. Tombstoned entities
|
|
59
|
-
* are NOT resurrected (the delete carve-out); everything else upserts under
|
|
60
|
-
* `seq`-wins. Aliases from the sidecar extend the path index (multi-key).
|
|
61
|
-
*/
|
|
62
|
-
integrate(result, seq) {
|
|
63
|
-
for (const wire of result.nodes) {
|
|
64
|
-
if (this.nodeTombstones.has(wire.id))
|
|
65
|
-
continue;
|
|
66
|
-
this.upsertNode(wire, seq);
|
|
67
|
-
}
|
|
68
|
-
for (const [id, path] of result.aliases ?? []) {
|
|
69
|
-
if (this.nodeTombstones.has(id) || path === this.nodes.get(id)?.wire.path)
|
|
70
|
-
continue;
|
|
71
|
-
this.addToIndex(this.byPath, path, id);
|
|
72
|
-
let paths = this.aliasPaths.get(id);
|
|
73
|
-
if (paths === undefined)
|
|
74
|
-
this.aliasPaths.set(id, (paths = new Set()));
|
|
75
|
-
paths.add(path);
|
|
76
|
-
}
|
|
77
|
-
for (const wire of result.edges) {
|
|
78
|
-
const key = edgeKey(wire);
|
|
79
|
-
if (this.edgeTombstones.has(key))
|
|
80
|
-
continue;
|
|
81
|
-
this.upsertEdge(key, wire, seq);
|
|
82
|
-
}
|
|
83
|
-
this._version++;
|
|
84
|
-
}
|
|
85
|
-
// ── Confirmation (committed mutation deltas — §6.3 future path) ───────────────
|
|
86
|
-
// NOT on the Tier-0 write path: SAFE MODE (§5.7) writes confirmed state ONLY
|
|
87
|
-
// from server read responses (`integrate`), reconciling every write by
|
|
88
|
-
// refetch. These land a real server delta once the wire carries one (§6.3).
|
|
89
|
-
/** Confirm a created/updated node: clear any tombstone and set the record. */
|
|
90
|
-
confirmNode(wire, seq) {
|
|
91
|
-
this.nodeTombstones.delete(wire.id);
|
|
92
|
-
this.upsertNode(wire, seq);
|
|
93
|
-
this._version++;
|
|
94
|
-
}
|
|
95
|
-
confirmEdge(wire, seq) {
|
|
96
|
-
const key = edgeKey(wire);
|
|
97
|
-
this.edgeTombstones.delete(key);
|
|
98
|
-
this.upsertEdge(key, wire, seq);
|
|
99
|
-
this._version++;
|
|
100
|
-
}
|
|
101
|
-
/** Tombstone a node (remembered so a stale read cannot resurrect it). */
|
|
102
|
-
tombstoneNode(id, now) {
|
|
103
|
-
const existing = this.nodes.get(id);
|
|
104
|
-
if (existing)
|
|
105
|
-
this.deindexNode(id, existing.wire);
|
|
106
|
-
this.nodes.delete(id);
|
|
107
|
-
this.nodeTombstones.set(id, now);
|
|
108
|
-
this._version++;
|
|
109
|
-
}
|
|
110
|
-
tombstoneEdge(key, now) {
|
|
111
|
-
const existing = this.edges.get(key);
|
|
112
|
-
if (existing)
|
|
113
|
-
this.deindexEdge(key, existing.wire);
|
|
114
|
-
this.edges.delete(key);
|
|
115
|
-
this.edgeTombstones.set(key, now);
|
|
116
|
-
this._version++;
|
|
117
|
-
}
|
|
118
|
-
// ── GC ───────────────────────────────────────────────────────────────────────
|
|
119
|
-
/**
|
|
120
|
-
* Drop entities unreachable from every retained shape, and sweep tombstones
|
|
121
|
-
* older than `tombstoneTtlMs`. Reachability is supplied by the ShapeStore.
|
|
122
|
-
*/
|
|
123
|
-
gc(reachableNodes, reachableEdges, now, tombstoneTtlMs) {
|
|
124
|
-
for (const [id, rec] of this.nodes) {
|
|
125
|
-
if (!reachableNodes.has(id)) {
|
|
126
|
-
this.deindexNode(id, rec.wire);
|
|
127
|
-
this.nodes.delete(id);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
for (const [key, rec] of this.edges) {
|
|
131
|
-
if (!reachableEdges.has(key)) {
|
|
132
|
-
this.deindexEdge(key, rec.wire);
|
|
133
|
-
this.edges.delete(key);
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
for (const [id, at] of this.nodeTombstones) {
|
|
137
|
-
if (now - at > tombstoneTtlMs)
|
|
138
|
-
this.nodeTombstones.delete(id);
|
|
139
|
-
}
|
|
140
|
-
for (const [key, at] of this.edgeTombstones) {
|
|
141
|
-
if (now - at > tombstoneTtlMs)
|
|
142
|
-
this.edgeTombstones.delete(key);
|
|
143
|
-
}
|
|
144
|
-
this._version++;
|
|
145
|
-
}
|
|
146
|
-
// ── Internals ────────────────────────────────────────────────────────────────
|
|
147
|
-
upsertNode(wire, seq) {
|
|
148
|
-
const existing = this.nodes.get(wire.id);
|
|
149
|
-
if (existing && seq < existing.seq)
|
|
150
|
-
return;
|
|
151
|
-
if (existing)
|
|
152
|
-
this.deindexNode(wire.id, existing.wire);
|
|
153
|
-
this.nodes.set(wire.id, { wire, seq });
|
|
154
|
-
this.indexNode(wire.id, wire);
|
|
155
|
-
}
|
|
156
|
-
upsertEdge(key, wire, seq) {
|
|
157
|
-
const existing = this.edges.get(key);
|
|
158
|
-
if (existing && seq < existing.seq)
|
|
159
|
-
return;
|
|
160
|
-
if (existing)
|
|
161
|
-
this.deindexEdge(key, existing.wire);
|
|
162
|
-
this.edges.set(key, { wire, seq });
|
|
163
|
-
this.indexEdge(key, wire);
|
|
164
|
-
}
|
|
165
|
-
indexNode(id, wire) {
|
|
166
|
-
this.addToIndex(this.byPath, wire.path, id);
|
|
167
|
-
this.addToIndex(this.byClass, wire.class, id);
|
|
168
|
-
}
|
|
169
|
-
deindexNode(id, wire) {
|
|
170
|
-
this.removeFromIndex(this.byPath, wire.path, id);
|
|
171
|
-
this.removeFromIndex(this.byClass, wire.class, id);
|
|
172
|
-
const aliases = this.aliasPaths.get(id);
|
|
173
|
-
if (aliases !== undefined) {
|
|
174
|
-
for (const path of aliases)
|
|
175
|
-
this.removeFromIndex(this.byPath, path, id);
|
|
176
|
-
this.aliasPaths.delete(id);
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
indexEdge(key, wire) {
|
|
180
|
-
this.addToIndex(this.byEndpoint, wire.source, key);
|
|
181
|
-
this.addToIndex(this.byEndpoint, wire.target, key);
|
|
182
|
-
}
|
|
183
|
-
deindexEdge(key, wire) {
|
|
184
|
-
this.removeFromIndex(this.byEndpoint, wire.source, key);
|
|
185
|
-
this.removeFromIndex(this.byEndpoint, wire.target, key);
|
|
186
|
-
}
|
|
187
|
-
addToIndex(index, at, value) {
|
|
188
|
-
let set = index.get(at);
|
|
189
|
-
if (!set)
|
|
190
|
-
index.set(at, (set = new Set()));
|
|
191
|
-
set.add(value);
|
|
192
|
-
}
|
|
193
|
-
removeFromIndex(index, at, value) {
|
|
194
|
-
const set = index.get(at);
|
|
195
|
-
if (!set)
|
|
196
|
-
return;
|
|
197
|
-
set.delete(value);
|
|
198
|
-
if (set.size === 0)
|
|
199
|
-
index.delete(at);
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
//# sourceMappingURL=entities.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"entities.js","sourceRoot":"","sources":["../../src/store/entities.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Tier-0 invalidation matching (FRONTEND §5.6 / §5.7).
|
|
3
|
-
*
|
|
4
|
-
* Because the runnable algebra is closed (a single `has_parent` descent + N
|
|
5
|
-
* single-hop gathers), "does patch P affect shape S" is decidable client-side
|
|
6
|
-
* with no kernel change. This module is pure over a {@link ShapeView} — the
|
|
7
|
-
* ShapeStore supplies the view, the overlay/memory apply the matches.
|
|
8
|
-
*
|
|
9
|
-
* SHIM CONTRACT (§5.7): this is a deliberately OVER-BROAD disposable shim, the
|
|
10
|
-
* whole reason SAFE MODE is "slow but never wrong". A false positive costs one
|
|
11
|
-
* needless refetch; a false NEGATIVE is a shape that silently never reconciles —
|
|
12
|
-
* a stale view and hours of debugging, and is FORBIDDEN. So every arm biases to
|
|
13
|
-
* "affected" the instant it is uncertain (an unresolved class, an unknown edge
|
|
14
|
-
* selector, a path form it cannot compare). Do NOT grow this toward faithful
|
|
15
|
-
* query semantics to shave refetches — `function.watch` (§7) deletes it whole,
|
|
16
|
-
* and with it the whole dual-semantics burden.
|
|
17
|
-
*/
|
|
18
|
-
import type { GraphNodeWire } from '../graph/index.js';
|
|
19
|
-
import type { NormalPatch } from './overlay.js';
|
|
20
|
-
type NodeId = GraphNodeWire['id'];
|
|
21
|
-
/** One gather step's selector: which edge classes, which direction. */
|
|
22
|
-
export interface GatherSpec {
|
|
23
|
-
/** Matched edge classes; `undefined` = all classes. */
|
|
24
|
-
readonly edgeClasses?: readonly string[];
|
|
25
|
-
readonly dir: 'in' | 'out' | 'both';
|
|
26
|
-
}
|
|
27
|
-
/** The projection of a shape the matcher needs — produced by the ShapeStore. */
|
|
28
|
-
export interface ShapeView {
|
|
29
|
-
readonly id: string;
|
|
30
|
-
/** Resolved root paths (raw). */
|
|
31
|
-
readonly rootPaths: readonly string[];
|
|
32
|
-
/** `has_parent` descent depth; 0 for a point read (no move). */
|
|
33
|
-
readonly depth: number;
|
|
34
|
-
/** The move's `children.classes` restriction, or `undefined` for all. */
|
|
35
|
-
readonly moveClasses?: readonly string[];
|
|
36
|
-
readonly gathers: readonly GatherSpec[];
|
|
37
|
-
/** Membership test — is this node id a root or a member of the shape? */
|
|
38
|
-
hasNode(id: NodeId): boolean;
|
|
39
|
-
}
|
|
40
|
-
/** Context the matcher resolves paths and identifies the tree edge with. */
|
|
41
|
-
export interface InvalidateCtx {
|
|
42
|
-
readonly hasParentClass: string;
|
|
43
|
-
/** Resolve a raw path to a live node id (confirmed ⊕ overlay). */
|
|
44
|
-
resolve(raw: string): NodeId | undefined;
|
|
45
|
-
}
|
|
46
|
-
/** The set of shape ids a patch affects. */
|
|
47
|
-
export declare function affectedShapes(patch: NormalPatch, shapes: Iterable<ShapeView>, ctx: InvalidateCtx): Set<string>;
|
|
48
|
-
/**
|
|
49
|
-
* A node create/delete at `pRaw` (class `cls`) affects a shape when `pRaw`
|
|
50
|
-
* falls in a root's subtree within `depth` and the move's class filter admits
|
|
51
|
-
* it (the root itself is never class-filtered — it is the seed, not a child).
|
|
52
|
-
*/
|
|
53
|
-
export declare function matchesNodeStructural(shape: ShapeView, pRaw: string, cls: string | undefined): boolean;
|
|
54
|
-
/**
|
|
55
|
-
* An edge op affects a shape when some gather selector matches its class and a
|
|
56
|
-
* root is the near endpoint; a `has_parent` edge additionally re-tests subtree
|
|
57
|
-
* membership at its child (source) endpoint.
|
|
58
|
-
*/
|
|
59
|
-
export declare function matchesEdge(shape: ShapeView, edgeClass: string, sourceRaw: string, targetRaw: string, hasParentClass: string): boolean;
|
|
60
|
-
/**
|
|
61
|
-
* Depth of `pRaw` below `rootRaw` in the tree (0 = the root itself), or `null`
|
|
62
|
-
* when `pRaw` is not within the root's subtree. Slug-segment prefix test.
|
|
63
|
-
*/
|
|
64
|
-
export declare function subtreeDelta(rootRaw: string, pRaw: string): number | null;
|
|
65
|
-
export {};
|
|
66
|
-
//# sourceMappingURL=invalidate.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"invalidate.d.ts","sourceRoot":"","sources":["../../src/store/invalidate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE/C,KAAK,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;AAEjC,uEAAuE;AACvE,MAAM,WAAW,UAAU;IACzB,uDAAuD;IACvD,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACxC,QAAQ,CAAC,GAAG,EAAE,IAAI,GAAG,KAAK,GAAG,MAAM,CAAA;CACpC;AAED,gFAAgF;AAChF,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,iCAAiC;IACjC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAA;IACrC,gEAAgE;IAChE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,yEAAyE;IACzE,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACxC,QAAQ,CAAC,OAAO,EAAE,SAAS,UAAU,EAAE,CAAA;IACvC,yEAAyE;IACzE,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAA;CAC7B;AAED,4EAA4E;AAC5E,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,kEAAkE;IAClE,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CACzC;AAED,4CAA4C;AAC5C,wBAAgB,cAAc,CAC5B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,EAC3B,GAAG,EAAE,aAAa,GACjB,GAAG,CAAC,MAAM,CAAC,CAMb;AAyBD;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,GAAG,SAAS,GACtB,OAAO,CAgBT;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,GACrB,OAAO,CAQT;AAYD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CASzE"}
|