@earendil-works/chord 1.5.0 → 1.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +51 -0
- package/README.md +50 -90
- package/dist/contracts/accepts.d.ts +81 -0
- package/dist/contracts/accepts.d.ts.map +1 -0
- package/dist/contracts/accepts.js.map +1 -0
- package/dist/contracts/contract.d.ts +121 -0
- package/dist/contracts/contract.d.ts.map +1 -0
- package/dist/contracts/contract.js.map +1 -0
- package/dist/contracts/declare.d.ts.map +1 -0
- package/dist/contracts/declare.js.map +1 -0
- package/dist/contracts/evolve.d.ts.map +1 -0
- package/dist/contracts/evolve.js.map +1 -0
- package/dist/contracts/fingerprint.d.ts +16 -0
- package/dist/contracts/fingerprint.d.ts.map +1 -0
- package/dist/contracts/fingerprint.js.map +1 -0
- package/dist/contracts/history.d.ts.map +1 -0
- package/dist/contracts/history.js.map +1 -0
- package/dist/contracts/host-kind.d.ts.map +1 -0
- package/dist/contracts/host-kind.js.map +1 -0
- package/dist/contracts/index.d.ts.map +1 -0
- package/dist/contracts/index.js.map +1 -0
- package/dist/contracts/internal.d.ts.map +1 -0
- package/dist/contracts/internal.js.map +1 -0
- package/dist/contracts/names.d.ts.map +1 -0
- package/dist/contracts/names.js.map +1 -0
- package/dist/contracts/params.d.ts +28 -0
- package/dist/contracts/params.d.ts.map +1 -0
- package/dist/contracts/params.js.map +1 -0
- package/dist/contracts/schema.d.ts.map +1 -0
- package/dist/contracts/schema.js.map +1 -0
- package/dist/contracts/snapshot.d.ts +16 -0
- package/dist/contracts/snapshot.d.ts.map +1 -0
- package/dist/contracts/snapshot.js +167 -0
- package/dist/contracts/snapshot.js.map +1 -0
- package/dist/data/args.d.ts +50 -0
- package/dist/data/args.d.ts.map +1 -0
- package/dist/data/args.js.map +1 -0
- package/dist/data/errors.d.ts +80 -0
- package/dist/data/errors.d.ts.map +1 -0
- package/dist/data/errors.js +116 -0
- package/dist/data/errors.js.map +1 -0
- package/dist/data/failure.d.ts.map +1 -0
- package/dist/data/failure.js +77 -0
- package/dist/data/failure.js.map +1 -0
- package/dist/data/index.d.ts +4 -0
- package/dist/data/index.d.ts.map +1 -0
- package/dist/data/index.js +5 -0
- package/dist/data/index.js.map +1 -0
- package/dist/data/internal.d.ts +7 -0
- package/dist/data/internal.d.ts.map +1 -0
- package/dist/data/internal.js +8 -0
- package/dist/data/internal.js.map +1 -0
- package/dist/data/params.d.ts +20 -0
- package/dist/data/params.d.ts.map +1 -0
- package/dist/data/params.js.map +1 -0
- package/dist/data/principal.d.ts +22 -0
- package/dist/data/principal.d.ts.map +1 -0
- package/dist/data/principal.js +49 -0
- package/dist/data/principal.js.map +1 -0
- package/dist/data/validator.d.ts +12 -0
- package/dist/data/validator.d.ts.map +1 -0
- package/dist/data/validator.js +35 -0
- package/dist/data/validator.js.map +1 -0
- package/dist/documents/address-source.d.ts +20 -0
- package/dist/documents/address-source.d.ts.map +1 -0
- package/dist/documents/address-source.js.map +1 -0
- package/dist/documents/definition.d.ts +84 -0
- package/dist/documents/definition.d.ts.map +1 -0
- package/dist/documents/definition.js +74 -0
- package/dist/documents/definition.js.map +1 -0
- package/dist/documents/documents.d.ts +126 -0
- package/dist/documents/documents.d.ts.map +1 -0
- package/dist/documents/documents.js +248 -0
- package/dist/documents/documents.js.map +1 -0
- package/dist/documents/fence.d.ts.map +1 -0
- package/dist/documents/fence.js.map +1 -0
- package/dist/documents/handles.d.ts +76 -0
- package/dist/documents/handles.d.ts.map +1 -0
- package/dist/documents/handles.js.map +1 -0
- package/dist/documents/index.d.ts.map +1 -0
- package/dist/documents/index.js.map +1 -0
- package/dist/documents/internal.d.ts +9 -0
- package/dist/documents/internal.d.ts.map +1 -0
- package/dist/documents/internal.js.map +1 -0
- package/dist/documents/keyed-slot.d.ts +103 -0
- package/dist/documents/keyed-slot.d.ts.map +1 -0
- package/dist/documents/keyed-slot.js +395 -0
- package/dist/documents/keyed-slot.js.map +1 -0
- package/dist/documents/line.d.ts.map +1 -0
- package/dist/documents/line.js.map +1 -0
- package/dist/documents/persistence.d.ts +104 -0
- package/dist/documents/persistence.d.ts.map +1 -0
- package/dist/documents/persistence.js +129 -0
- package/dist/documents/persistence.js.map +1 -0
- package/dist/documents/residency.d.ts +31 -0
- package/dist/documents/residency.d.ts.map +1 -0
- package/dist/documents/residency.js.map +1 -0
- package/dist/documents/slot.d.ts +109 -0
- package/dist/documents/slot.d.ts.map +1 -0
- package/dist/documents/slot.js +181 -0
- package/dist/documents/slot.js.map +1 -0
- package/dist/documents/transaction.d.ts +143 -0
- package/dist/documents/transaction.d.ts.map +1 -0
- package/dist/documents/transaction.js +442 -0
- package/dist/documents/transaction.js.map +1 -0
- package/dist/host/activity.d.ts +31 -0
- package/dist/host/activity.d.ts.map +1 -0
- package/dist/host/activity.js +40 -0
- package/dist/host/activity.js.map +1 -0
- package/dist/host/adapted.d.ts +49 -0
- package/dist/host/adapted.d.ts.map +1 -0
- package/dist/host/adapted.js.map +1 -0
- package/dist/host/attempt.d.ts +308 -0
- package/dist/host/attempt.d.ts.map +1 -0
- package/dist/host/attempt.js +1199 -0
- package/dist/host/attempt.js.map +1 -0
- package/dist/host/backoff.d.ts.map +1 -0
- package/dist/host/backoff.js.map +1 -0
- package/dist/host/ctx.d.ts +94 -0
- package/dist/host/ctx.d.ts.map +1 -0
- package/dist/host/ctx.js +200 -0
- package/dist/host/ctx.js.map +1 -0
- package/dist/host/deadline.d.ts.map +1 -0
- package/dist/host/deadline.js.map +1 -0
- package/dist/host/dependencies.d.ts.map +1 -0
- package/dist/host/dependencies.js.map +1 -0
- package/dist/host/destination.d.ts +48 -0
- package/dist/host/destination.d.ts.map +1 -0
- package/dist/host/destination.js.map +1 -0
- package/dist/host/facet.d.ts +84 -0
- package/dist/host/facet.d.ts.map +1 -0
- package/dist/host/facet.js.map +1 -0
- package/dist/host/follow.d.ts +52 -0
- package/dist/host/follow.d.ts.map +1 -0
- package/dist/host/follow.js.map +1 -0
- package/dist/host/host.d.ts +571 -0
- package/dist/host/host.d.ts.map +1 -0
- package/dist/host/host.js +1318 -0
- package/dist/host/host.js.map +1 -0
- package/dist/host/index.d.ts +17 -0
- package/dist/host/index.d.ts.map +1 -0
- package/dist/host/index.js.map +1 -0
- package/dist/host/internal.d.ts +11 -0
- package/dist/host/internal.d.ts.map +1 -0
- package/dist/host/internal.js +9 -0
- package/dist/host/internal.js.map +1 -0
- package/dist/host/members.d.ts +50 -0
- package/dist/host/members.d.ts.map +1 -0
- package/dist/host/members.js.map +1 -0
- package/dist/host/native.d.ts +64 -0
- package/dist/host/native.d.ts.map +1 -0
- package/dist/host/native.js +126 -0
- package/dist/host/native.js.map +1 -0
- package/dist/host/object.d.ts +331 -0
- package/dist/host/object.d.ts.map +1 -0
- package/dist/host/object.js +1296 -0
- package/dist/host/object.js.map +1 -0
- package/dist/host/old-work.d.ts +34 -0
- package/dist/host/old-work.d.ts.map +1 -0
- package/dist/host/old-work.js +52 -0
- package/dist/host/old-work.js.map +1 -0
- package/dist/host/parked.d.ts +23 -0
- package/dist/host/parked.d.ts.map +1 -0
- package/dist/host/parked.js.map +1 -0
- package/dist/host/presence.d.ts +34 -0
- package/dist/host/presence.d.ts.map +1 -0
- package/dist/host/presence.js.map +1 -0
- package/dist/host/readiness.d.ts +27 -0
- package/dist/host/readiness.d.ts.map +1 -0
- package/dist/host/readiness.js +134 -0
- package/dist/host/readiness.js.map +1 -0
- package/dist/host/ref-state.d.ts +53 -0
- package/dist/host/ref-state.d.ts.map +1 -0
- package/dist/host/ref-state.js +83 -0
- package/dist/host/ref-state.js.map +1 -0
- package/dist/host/reference-keys.d.ts +36 -0
- package/dist/host/reference-keys.d.ts.map +1 -0
- package/dist/host/reference-keys.js +168 -0
- package/dist/host/reference-keys.js.map +1 -0
- package/dist/host/reference-source.d.ts +65 -0
- package/dist/host/reference-source.d.ts.map +1 -0
- package/dist/host/reference-source.js +285 -0
- package/dist/host/reference-source.js.map +1 -0
- package/dist/host/reference.d.ts +321 -0
- package/dist/host/reference.d.ts.map +1 -0
- package/dist/host/reference.js +797 -0
- package/dist/host/reference.js.map +1 -0
- package/dist/host/reload-cycle.d.ts +16 -0
- package/dist/host/reload-cycle.d.ts.map +1 -0
- package/dist/host/reload-cycle.js +81 -0
- package/dist/host/reload-cycle.js.map +1 -0
- package/dist/host/retry-on.d.ts.map +1 -0
- package/dist/host/retry-on.js.map +1 -0
- package/dist/host/revocation.d.ts +16 -0
- package/dist/host/revocation.d.ts.map +1 -0
- package/dist/host/revocation.js.map +1 -0
- package/dist/host/root.d.ts +37 -0
- package/dist/host/root.d.ts.map +1 -0
- package/dist/host/root.js +68 -0
- package/dist/host/root.js.map +1 -0
- package/dist/host/route.d.ts +64 -0
- package/dist/host/route.d.ts.map +1 -0
- package/dist/host/route.js +227 -0
- package/dist/host/route.js.map +1 -0
- package/dist/host/routines.d.ts +78 -0
- package/dist/host/routines.d.ts.map +1 -0
- package/dist/host/routines.js +398 -0
- package/dist/host/routines.js.map +1 -0
- package/dist/host/sleep.d.ts +9 -0
- package/dist/host/sleep.d.ts.map +1 -0
- package/dist/host/sleep.js.map +1 -0
- package/dist/host/staging.d.ts +94 -0
- package/dist/host/staging.d.ts.map +1 -0
- package/dist/host/staging.js +304 -0
- package/dist/host/staging.js.map +1 -0
- package/dist/host/unbound-clock.d.ts +23 -0
- package/dist/host/unbound-clock.d.ts.map +1 -0
- package/dist/host/unbound-clock.js +58 -0
- package/dist/host/unbound-clock.js.map +1 -0
- package/dist/host/unbound.d.ts +37 -0
- package/dist/host/unbound.d.ts.map +1 -0
- package/dist/host/unbound.js +88 -0
- package/dist/host/unbound.js.map +1 -0
- package/dist/host/uuid.d.ts.map +1 -0
- package/dist/host/uuid.js.map +1 -0
- package/dist/index.d.ts +29 -19
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -10
- package/dist/index.js.map +1 -1
- package/dist/jobs/definition.d.ts.map +1 -0
- package/dist/jobs/definition.js.map +1 -0
- package/dist/jobs/index.d.ts.map +1 -0
- package/dist/jobs/index.js.map +1 -0
- package/dist/jobs/internal.d.ts.map +1 -0
- package/dist/jobs/internal.js.map +1 -0
- package/dist/jobs/job.d.ts +149 -0
- package/dist/jobs/job.d.ts.map +1 -0
- package/dist/jobs/job.js +387 -0
- package/dist/jobs/job.js.map +1 -0
- package/dist/jobs/persisted.d.ts +38 -0
- package/dist/jobs/persisted.d.ts.map +1 -0
- package/dist/jobs/persisted.js.map +1 -0
- package/dist/jobs/records.d.ts +231 -0
- package/dist/jobs/records.d.ts.map +1 -0
- package/dist/jobs/records.js +871 -0
- package/dist/jobs/records.js.map +1 -0
- package/dist/jobs/run-states.d.ts +69 -0
- package/dist/jobs/run-states.d.ts.map +1 -0
- package/dist/jobs/run-states.js +228 -0
- package/dist/jobs/run-states.js.map +1 -0
- package/dist/jobs/run.d.ts +117 -0
- package/dist/jobs/run.d.ts.map +1 -0
- package/dist/jobs/run.js +204 -0
- package/dist/jobs/run.js.map +1 -0
- package/dist/jobs/running.d.ts +44 -0
- package/dist/jobs/running.d.ts.map +1 -0
- package/dist/jobs/running.js.map +1 -0
- package/dist/jobs/stored.d.ts +63 -0
- package/dist/jobs/stored.d.ts.map +1 -0
- package/dist/jobs/stored.js.map +1 -0
- package/dist/link/binary.d.ts.map +1 -0
- package/dist/link/binary.js +544 -0
- package/dist/link/binary.js.map +1 -0
- package/dist/link/channel.d.ts +68 -0
- package/dist/link/channel.d.ts.map +1 -0
- package/dist/link/channel.js +215 -0
- package/dist/link/channel.js.map +1 -0
- package/dist/link/errors.d.ts.map +1 -0
- package/dist/link/errors.js.map +1 -0
- package/dist/link/index.d.ts.map +1 -0
- package/dist/link/index.js.map +1 -0
- package/dist/link/internal.d.ts.map +1 -0
- package/dist/link/internal.js.map +1 -0
- package/dist/link/ipc.d.ts.map +1 -0
- package/dist/link/ipc.js.map +1 -0
- package/dist/link/link.d.ts.map +1 -0
- package/dist/link/link.js.map +1 -0
- package/dist/link/message.d.ts +262 -0
- package/dist/link/message.d.ts.map +1 -0
- package/dist/link/message.js +156 -0
- package/dist/link/message.js.map +1 -0
- package/dist/link/part.d.ts +80 -0
- package/dist/link/part.d.ts.map +1 -0
- package/dist/link/part.js +165 -0
- package/dist/link/part.js.map +1 -0
- package/dist/link/text.d.ts.map +1 -0
- package/dist/link/text.js +355 -0
- package/dist/link/text.js.map +1 -0
- package/dist/link/values.d.ts.map +1 -0
- package/dist/link/values.js +121 -0
- package/dist/link/values.js.map +1 -0
- package/dist/link/websocket.d.ts.map +1 -0
- package/dist/link/websocket.js.map +1 -0
- package/dist/node/app/app.d.ts +269 -0
- package/dist/node/app/app.d.ts.map +1 -0
- package/dist/node/app/app.js +513 -0
- package/dist/node/app/app.js.map +1 -0
- package/dist/node/app/archive.d.ts +37 -0
- package/dist/node/app/archive.d.ts.map +1 -0
- package/dist/node/app/archive.js +204 -0
- package/dist/node/app/archive.js.map +1 -0
- package/dist/node/app/blobs.d.ts +23 -0
- package/dist/node/app/blobs.d.ts.map +1 -0
- package/dist/node/app/blobs.js +64 -0
- package/dist/node/app/blobs.js.map +1 -0
- package/dist/node/app/data.d.ts +35 -0
- package/dist/node/app/data.d.ts.map +1 -0
- package/dist/node/app/data.js +44 -0
- package/dist/node/app/data.js.map +1 -0
- package/dist/node/app/ephemeral-sessions.d.ts +20 -0
- package/dist/node/app/ephemeral-sessions.d.ts.map +1 -0
- package/dist/node/app/ephemeral-sessions.js +69 -0
- package/dist/node/app/ephemeral-sessions.js.map +1 -0
- package/dist/node/app/ephemeral.d.ts +11 -0
- package/dist/node/app/ephemeral.d.ts.map +1 -0
- package/dist/node/app/ephemeral.js +34 -0
- package/dist/node/app/ephemeral.js.map +1 -0
- package/dist/node/app/files-copy.d.ts +13 -0
- package/dist/node/app/files-copy.d.ts.map +1 -0
- package/dist/node/app/files-copy.js +86 -0
- package/dist/node/app/files-copy.js.map +1 -0
- package/dist/node/app/files-entry.d.ts +4 -0
- package/dist/node/app/files-entry.d.ts.map +1 -0
- package/dist/node/app/files-entry.js +7 -0
- package/dist/node/app/files-entry.js.map +1 -0
- package/dist/node/app/files-index.d.ts +180 -0
- package/dist/node/app/files-index.d.ts.map +1 -0
- package/dist/node/app/files-index.js +535 -0
- package/dist/node/app/files-index.js.map +1 -0
- package/dist/node/app/files.d.ts +363 -0
- package/dist/node/app/files.d.ts.map +1 -0
- package/dist/node/app/files.js +368 -0
- package/dist/node/app/files.js.map +1 -0
- package/dist/node/app/folder-views.d.ts +21 -0
- package/dist/node/app/folder-views.d.ts.map +1 -0
- package/dist/node/app/folder-views.js +55 -0
- package/dist/node/app/folder-views.js.map +1 -0
- package/dist/node/app/index.d.ts +12 -0
- package/dist/node/app/index.d.ts.map +1 -0
- package/dist/node/app/index.js +15 -0
- package/dist/node/app/index.js.map +1 -0
- package/dist/node/app/info.d.ts +66 -0
- package/dist/node/app/info.d.ts.map +1 -0
- package/dist/node/app/info.js +37 -0
- package/dist/node/app/info.js.map +1 -0
- package/dist/node/app/invite.d.ts +5 -0
- package/dist/node/app/invite.d.ts.map +1 -0
- package/dist/node/app/invite.js +64 -0
- package/dist/node/app/invite.js.map +1 -0
- package/dist/node/app/layout.d.ts +36 -0
- package/dist/node/app/layout.d.ts.map +1 -0
- package/dist/node/app/layout.js +87 -0
- package/dist/node/app/layout.js.map +1 -0
- package/dist/node/app/owner.d.ts +31 -0
- package/dist/node/app/owner.d.ts.map +1 -0
- package/dist/node/app/owner.js +104 -0
- package/dist/node/app/owner.js.map +1 -0
- package/dist/node/app/pairing.d.ts +55 -0
- package/dist/node/app/pairing.d.ts.map +1 -0
- package/dist/node/app/pairing.js +183 -0
- package/dist/node/app/pairing.js.map +1 -0
- package/dist/node/app/secrets.d.ts +16 -0
- package/dist/node/app/secrets.d.ts.map +1 -0
- package/dist/node/app/secrets.js +72 -0
- package/dist/node/app/secrets.js.map +1 -0
- package/dist/node/app/sessions.d.ts +72 -0
- package/dist/node/app/sessions.d.ts.map +1 -0
- package/dist/node/app/sessions.js +222 -0
- package/dist/node/app/sessions.js.map +1 -0
- package/dist/node/app/tar.d.ts +24 -0
- package/dist/node/app/tar.d.ts.map +1 -0
- package/dist/node/app/tar.js +167 -0
- package/dist/node/app/tar.js.map +1 -0
- package/dist/node/app/uploads.d.ts +37 -0
- package/dist/node/app/uploads.d.ts.map +1 -0
- package/dist/node/app/uploads.js +157 -0
- package/dist/node/app/uploads.js.map +1 -0
- package/dist/node/app/users.d.ts +37 -0
- package/dist/node/app/users.d.ts.map +1 -0
- package/dist/node/app/users.js +62 -0
- package/dist/node/app/users.js.map +1 -0
- package/dist/node/app/worker.d.ts +18 -0
- package/dist/node/app/worker.d.ts.map +1 -0
- package/dist/node/app/worker.js +84 -0
- package/dist/node/app/worker.js.map +1 -0
- package/dist/node/compression.d.ts +7 -0
- package/dist/node/compression.d.ts.map +1 -0
- package/dist/node/compression.js +25 -0
- package/dist/node/compression.js.map +1 -0
- package/dist/node/http/admission.d.ts.map +1 -0
- package/dist/node/http/admission.js.map +1 -0
- package/dist/node/http/authenticate.d.ts +21 -0
- package/dist/node/http/authenticate.d.ts.map +1 -0
- package/dist/node/http/authenticate.js +34 -0
- package/dist/node/http/authenticate.js.map +1 -0
- package/dist/node/http/cookies.d.ts +32 -0
- package/dist/node/http/cookies.d.ts.map +1 -0
- package/dist/node/http/cookies.js +70 -0
- package/dist/node/http/cookies.js.map +1 -0
- package/dist/node/http/file.d.ts.map +1 -0
- package/dist/node/http/file.js.map +1 -0
- package/dist/node/http/headers.d.ts.map +1 -0
- package/dist/node/http/headers.js +136 -0
- package/dist/node/http/headers.js.map +1 -0
- package/dist/node/http/http.d.ts +111 -0
- package/dist/node/http/http.d.ts.map +1 -0
- package/dist/node/http/http.js +524 -0
- package/dist/node/http/http.js.map +1 -0
- package/dist/node/http/incoming.d.ts.map +1 -0
- package/dist/node/http/incoming.js.map +1 -0
- package/dist/node/http/index.d.ts +11 -0
- package/dist/node/http/index.d.ts.map +1 -0
- package/dist/node/http/index.js +12 -0
- package/dist/node/http/index.js.map +1 -0
- package/dist/node/http/node.d.ts.map +1 -0
- package/dist/node/http/node.js.map +1 -0
- package/dist/node/http/request.d.ts +60 -0
- package/dist/node/http/request.d.ts.map +1 -0
- package/dist/node/http/request.js +118 -0
- package/dist/node/http/request.js.map +1 -0
- package/dist/node/http/response.d.ts +63 -0
- package/dist/node/http/response.d.ts.map +1 -0
- package/dist/node/http/response.js.map +1 -0
- package/dist/node/http/router.d.ts +132 -0
- package/dist/node/http/router.d.ts.map +1 -0
- package/dist/node/http/router.js +267 -0
- package/dist/node/http/router.js.map +1 -0
- package/dist/node/http/upgrades.d.ts +61 -0
- package/dist/node/http/upgrades.d.ts.map +1 -0
- package/dist/node/http/upgrades.js +192 -0
- package/dist/node/http/upgrades.js.map +1 -0
- package/dist/node/plugins/base-inputs.d.ts +14 -0
- package/dist/node/plugins/base-inputs.d.ts.map +1 -0
- package/dist/node/plugins/base-inputs.js +33 -0
- package/dist/node/plugins/base-inputs.js.map +1 -0
- package/dist/node/plugins/build.d.ts +77 -0
- package/dist/node/plugins/build.d.ts.map +1 -0
- package/dist/node/plugins/build.js +576 -0
- package/dist/node/plugins/build.js.map +1 -0
- package/dist/node/plugins/css-modules.d.ts +13 -0
- package/dist/node/plugins/css-modules.d.ts.map +1 -0
- package/dist/node/plugins/css-modules.js +58 -0
- package/dist/node/plugins/css-modules.js.map +1 -0
- package/dist/node/plugins/discover.d.ts +67 -0
- package/dist/node/plugins/discover.d.ts.map +1 -0
- package/dist/node/plugins/discover.js +369 -0
- package/dist/node/plugins/discover.js.map +1 -0
- package/dist/node/plugins/evaluate.d.ts +33 -0
- package/dist/node/plugins/evaluate.d.ts.map +1 -0
- package/dist/node/plugins/evaluate.js +121 -0
- package/dist/node/plugins/evaluate.js.map +1 -0
- package/dist/node/plugins/index.d.ts +11 -0
- package/dist/node/plugins/index.d.ts.map +1 -0
- package/dist/node/plugins/index.js +13 -0
- package/dist/node/plugins/index.js.map +1 -0
- package/dist/node/plugins/install.d.ts +38 -0
- package/dist/node/plugins/install.d.ts.map +1 -0
- package/dist/node/plugins/install.js +213 -0
- package/dist/node/plugins/install.js.map +1 -0
- package/dist/node/plugins/plugins.d.ts +162 -0
- package/dist/node/plugins/plugins.d.ts.map +1 -0
- package/dist/node/plugins/plugins.js +244 -0
- package/dist/node/plugins/plugins.js.map +1 -0
- package/dist/node/plugins/runtime.d.ts +57 -0
- package/dist/node/plugins/runtime.d.ts.map +1 -0
- package/dist/node/plugins/runtime.js +92 -0
- package/dist/node/plugins/runtime.js.map +1 -0
- package/dist/node/plugins/stack.d.ts.map +1 -0
- package/dist/node/plugins/stack.js.map +1 -0
- package/dist/node/plugins/testing.d.ts +58 -0
- package/dist/node/plugins/testing.d.ts.map +1 -0
- package/dist/node/plugins/testing.js +210 -0
- package/dist/node/plugins/testing.js.map +1 -0
- package/dist/node/plugins/watcher.d.ts +69 -0
- package/dist/node/plugins/watcher.d.ts.map +1 -0
- package/dist/node/plugins/watcher.js +622 -0
- package/dist/node/plugins/watcher.js.map +1 -0
- package/dist/node/surfaces/bundle.d.ts +31 -0
- package/dist/node/surfaces/bundle.d.ts.map +1 -0
- package/dist/node/surfaces/bundle.js +118 -0
- package/dist/node/surfaces/bundle.js.map +1 -0
- package/dist/node/surfaces/current.d.ts +17 -0
- package/dist/node/surfaces/current.d.ts.map +1 -0
- package/dist/node/surfaces/current.js +54 -0
- package/dist/node/surfaces/current.js.map +1 -0
- package/dist/node/surfaces/index.d.ts +6 -0
- package/dist/node/surfaces/index.d.ts.map +1 -0
- package/dist/node/surfaces/index.js +6 -0
- package/dist/node/surfaces/index.js.map +1 -0
- package/dist/node/surfaces/published.d.ts +27 -0
- package/dist/node/surfaces/published.d.ts.map +1 -0
- package/dist/node/surfaces/published.js +142 -0
- package/dist/node/surfaces/published.js.map +1 -0
- package/dist/node/surfaces/served.d.ts +15 -0
- package/dist/node/surfaces/served.d.ts.map +1 -0
- package/dist/node/surfaces/served.js +42 -0
- package/dist/node/surfaces/served.js.map +1 -0
- package/dist/node/surfaces/surface-build.d.ts +53 -0
- package/dist/node/surfaces/surface-build.d.ts.map +1 -0
- package/dist/node/surfaces/surface-build.js +105 -0
- package/dist/node/surfaces/surface-build.js.map +1 -0
- package/dist/node/surfaces/tui.d.ts +40 -0
- package/dist/node/surfaces/tui.d.ts.map +1 -0
- package/dist/node/surfaces/tui.js +55 -0
- package/dist/node/surfaces/tui.js.map +1 -0
- package/dist/node/surfaces/web.d.ts +56 -0
- package/dist/node/surfaces/web.d.ts.map +1 -0
- package/dist/node/surfaces/web.js +108 -0
- package/dist/node/surfaces/web.js.map +1 -0
- package/dist/node/tui/actions.d.ts +49 -0
- package/dist/node/tui/actions.d.ts.map +1 -0
- package/dist/node/tui/actions.js +195 -0
- package/dist/node/tui/actions.js.map +1 -0
- package/dist/node/tui/credentials.d.ts +17 -0
- package/dist/node/tui/credentials.d.ts.map +1 -0
- package/dist/node/tui/credentials.js +54 -0
- package/dist/node/tui/credentials.js.map +1 -0
- package/dist/node/tui/filter.d.ts +5 -0
- package/dist/node/tui/filter.d.ts.map +1 -0
- package/dist/node/tui/filter.js +79 -0
- package/dist/node/tui/filter.js.map +1 -0
- package/dist/node/tui/index.d.ts +6 -0
- package/dist/node/tui/index.d.ts.map +1 -0
- package/dist/node/tui/index.js +6 -0
- package/dist/node/tui/index.js.map +1 -0
- package/dist/node/tui/launcher.d.ts +40 -0
- package/dist/node/tui/launcher.d.ts.map +1 -0
- package/dist/node/tui/launcher.js +439 -0
- package/dist/node/tui/launcher.js.map +1 -0
- package/dist/node/tui/pipe.d.ts +18 -0
- package/dist/node/tui/pipe.d.ts.map +1 -0
- package/dist/node/tui/pipe.js +134 -0
- package/dist/node/tui/pipe.js.map +1 -0
- package/dist/node/tui/sandbox.d.ts +54 -0
- package/dist/node/tui/sandbox.d.ts.map +1 -0
- package/dist/node/tui/sandbox.js +431 -0
- package/dist/node/tui/sandbox.js.map +1 -0
- package/dist/node/workers/base.d.ts +30 -0
- package/dist/node/workers/base.d.ts.map +1 -0
- package/dist/node/workers/base.js +255 -0
- package/dist/node/workers/base.js.map +1 -0
- package/dist/node/workers/child.d.ts +4 -0
- package/dist/node/workers/child.d.ts.map +1 -0
- package/dist/node/workers/child.js +6 -0
- package/dist/node/workers/child.js.map +1 -0
- package/dist/node/workers/control.d.ts +83 -0
- package/dist/node/workers/control.d.ts.map +1 -0
- package/dist/node/workers/control.js +77 -0
- package/dist/node/workers/control.js.map +1 -0
- package/dist/node/workers/index.d.ts +4 -0
- package/dist/node/workers/index.d.ts.map +1 -0
- package/dist/node/workers/index.js +7 -0
- package/dist/node/workers/index.js.map +1 -0
- package/dist/node/workers/lock.d.ts +30 -0
- package/dist/node/workers/lock.d.ts.map +1 -0
- package/dist/node/workers/lock.js +180 -0
- package/dist/node/workers/lock.js.map +1 -0
- package/dist/node/workers/main.d.ts +46 -0
- package/dist/node/workers/main.d.ts.map +1 -0
- package/dist/node/workers/main.js +230 -0
- package/dist/node/workers/main.js.map +1 -0
- package/dist/node/workers/process.d.ts +42 -0
- package/dist/node/workers/process.d.ts.map +1 -0
- package/dist/node/workers/process.js +125 -0
- package/dist/node/workers/process.js.map +1 -0
- package/dist/node/workers/workers.d.ts +122 -0
- package/dist/node/workers/workers.d.ts.map +1 -0
- package/dist/node/workers/workers.js +677 -0
- package/dist/node/workers/workers.js.map +1 -0
- package/dist/react/hooks.d.ts +43 -0
- package/dist/react/hooks.d.ts.map +1 -0
- package/dist/react/hooks.js +82 -0
- package/dist/react/hooks.js.map +1 -0
- package/dist/react/index.d.ts +3 -0
- package/dist/react/index.d.ts.map +1 -0
- package/dist/react/index.js +4 -0
- package/dist/react/index.js.map +1 -0
- package/dist/react/stores.d.ts +9 -0
- package/dist/react/stores.d.ts.map +1 -0
- package/dist/react/stores.js +37 -0
- package/dist/react/stores.js.map +1 -0
- package/dist/registries/contribution.d.ts.map +1 -0
- package/dist/registries/contribution.js.map +1 -0
- package/dist/registries/entries.d.ts.map +1 -0
- package/dist/registries/entries.js.map +1 -0
- package/dist/registries/index.d.ts.map +1 -0
- package/dist/registries/index.js.map +1 -0
- package/dist/registries/internal.d.ts.map +1 -0
- package/dist/registries/internal.js.map +1 -0
- package/dist/registries/record.d.ts +115 -0
- package/dist/registries/record.d.ts.map +1 -0
- package/dist/registries/record.js +283 -0
- package/dist/registries/record.js.map +1 -0
- package/dist/registries/registry.d.ts +74 -0
- package/dist/registries/registry.d.ts.map +1 -0
- package/dist/registries/registry.js.map +1 -0
- package/dist/registries/value.d.ts.map +1 -0
- package/dist/registries/value.js +224 -0
- package/dist/registries/value.js.map +1 -0
- package/dist/remote/calls.d.ts.map +1 -0
- package/dist/remote/calls.js.map +1 -0
- package/dist/remote/consumer.d.ts +43 -0
- package/dist/remote/consumer.d.ts.map +1 -0
- package/dist/remote/consumer.js +350 -0
- package/dist/remote/consumer.js.map +1 -0
- package/dist/remote/hold.d.ts +141 -0
- package/dist/remote/hold.d.ts.map +1 -0
- package/dist/remote/hold.js +579 -0
- package/dist/remote/hold.js.map +1 -0
- package/dist/remote/host-link.d.ts +77 -0
- package/dist/remote/host-link.d.ts.map +1 -0
- package/dist/remote/host-link.js +184 -0
- package/dist/remote/host-link.js.map +1 -0
- package/dist/remote/internal.d.ts.map +1 -0
- package/dist/remote/internal.js.map +1 -0
- package/dist/remote/path.d.ts.map +1 -0
- package/dist/remote/path.js.map +1 -0
- package/dist/remote/provider.d.ts +89 -0
- package/dist/remote/provider.d.ts.map +1 -0
- package/dist/remote/provider.js +597 -0
- package/dist/remote/provider.js.map +1 -0
- package/dist/remote/relay.d.ts +69 -0
- package/dist/remote/relay.d.ts.map +1 -0
- package/dist/remote/relay.js +219 -0
- package/dist/remote/relay.js.map +1 -0
- package/dist/remote/remote-object.d.ts +138 -0
- package/dist/remote/remote-object.d.ts.map +1 -0
- package/dist/remote/remote-object.js +492 -0
- package/dist/remote/remote-object.js.map +1 -0
- package/dist/remote/replica.d.ts +59 -0
- package/dist/remote/replica.d.ts.map +1 -0
- package/dist/remote/replica.js +125 -0
- package/dist/remote/replica.js.map +1 -0
- package/dist/sqlite/node.d.ts +9 -1
- package/dist/sqlite/node.d.ts.map +1 -1
- package/dist/sqlite/node.js +9 -3
- package/dist/sqlite/node.js.map +1 -1
- package/dist/state/batch.d.ts +64 -0
- package/dist/state/batch.d.ts.map +1 -0
- package/dist/state/batch.js +164 -0
- package/dist/state/batch.js.map +1 -0
- package/dist/state/derive.d.ts +52 -0
- package/dist/state/derive.d.ts.map +1 -0
- package/dist/state/derive.js +182 -0
- package/dist/state/derive.js.map +1 -0
- package/dist/state/index.d.ts +6 -0
- package/dist/state/index.d.ts.map +1 -0
- package/dist/state/index.js.map +1 -0
- package/dist/state/internal.d.ts.map +1 -0
- package/dist/state/internal.js.map +1 -0
- package/dist/state/native-source.d.ts +106 -0
- package/dist/state/native-source.d.ts.map +1 -0
- package/dist/state/native-source.js +240 -0
- package/dist/state/native-source.js.map +1 -0
- package/dist/state/watchable.d.ts +114 -0
- package/dist/state/watchable.d.ts.map +1 -0
- package/dist/state/watchable.js +156 -0
- package/dist/state/watchable.js.map +1 -0
- package/dist/state/writable.d.ts +32 -0
- package/dist/state/writable.d.ts.map +1 -0
- package/dist/state/writable.js.map +1 -0
- package/dist/store/adapter.d.ts +67 -0
- package/dist/store/adapter.d.ts.map +1 -0
- package/dist/store/adapter.js.map +1 -0
- package/dist/store/allocator.d.ts.map +1 -0
- package/dist/store/allocator.js.map +1 -0
- package/dist/store/applier.d.ts.map +1 -0
- package/dist/store/applier.js.map +1 -0
- package/dist/store/apply-batch.d.ts +12 -0
- package/dist/store/apply-batch.d.ts.map +1 -0
- package/dist/store/apply-batch.js.map +1 -0
- package/dist/store/archive.d.ts +32 -0
- package/dist/store/archive.d.ts.map +1 -0
- package/dist/store/archive.js +130 -0
- package/dist/store/archive.js.map +1 -0
- package/dist/store/backend.d.ts +10 -0
- package/dist/store/backend.d.ts.map +1 -0
- package/dist/store/backend.js.map +1 -0
- package/dist/store/catalog.d.ts +24 -0
- package/dist/store/catalog.d.ts.map +1 -0
- package/dist/store/catalog.js.map +1 -0
- package/dist/store/claims.d.ts.map +1 -0
- package/dist/store/claims.js.map +1 -0
- package/dist/store/columns.d.ts.map +1 -0
- package/dist/store/columns.js.map +1 -0
- package/dist/store/engine.d.ts +176 -0
- package/dist/store/engine.d.ts.map +1 -0
- package/dist/store/engine.js +283 -0
- package/dist/store/engine.js.map +1 -0
- package/dist/store/evaluate.d.ts +17 -0
- package/dist/store/evaluate.d.ts.map +1 -0
- package/dist/store/evaluate.js.map +1 -0
- package/dist/store/export.d.ts +17 -0
- package/dist/store/export.d.ts.map +1 -0
- package/dist/store/export.js +200 -0
- package/dist/store/export.js.map +1 -0
- package/dist/store/expression.d.ts +150 -0
- package/dist/store/expression.d.ts.map +1 -0
- package/dist/store/expression.js.map +1 -0
- package/dist/store/import.d.ts +10 -0
- package/dist/store/import.d.ts.map +1 -0
- package/dist/store/import.js +276 -0
- package/dist/store/import.js.map +1 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/index.js.map +1 -0
- package/dist/store/json-column.d.ts +33 -0
- package/dist/store/json-column.d.ts.map +1 -0
- package/dist/store/json-column.js +62 -0
- package/dist/store/json-column.js.map +1 -0
- package/dist/store/jsonl.d.ts.map +1 -0
- package/dist/store/jsonl.js.map +1 -0
- package/dist/store/live-query.d.ts +108 -0
- package/dist/store/live-query.d.ts.map +1 -0
- package/dist/store/live-query.js +254 -0
- package/dist/store/live-query.js.map +1 -0
- package/dist/store/outbox.d.ts +26 -0
- package/dist/store/outbox.d.ts.map +1 -0
- package/dist/store/outbox.js.map +1 -0
- package/dist/store/query.d.ts +39 -0
- package/dist/store/query.d.ts.map +1 -0
- package/dist/store/query.js.map +1 -0
- package/dist/store/refusal.d.ts.map +1 -0
- package/dist/store/refusal.js.map +1 -0
- package/dist/store/rows.d.ts +80 -0
- package/dist/store/rows.d.ts.map +1 -0
- package/dist/store/rows.js.map +1 -0
- package/dist/store/schema.d.ts +25 -0
- package/dist/store/schema.d.ts.map +1 -0
- package/dist/store/schema.js +115 -0
- package/dist/store/schema.js.map +1 -0
- package/dist/store/sql.d.ts +73 -0
- package/dist/store/sql.d.ts.map +1 -0
- package/dist/store/sql.js.map +1 -0
- package/dist/store/step.d.ts +50 -0
- package/dist/store/step.d.ts.map +1 -0
- package/dist/store/step.js +52 -0
- package/dist/store/step.js.map +1 -0
- package/dist/store/store.d.ts +171 -0
- package/dist/store/store.d.ts.map +1 -0
- package/dist/store/store.js +818 -0
- package/dist/store/store.js.map +1 -0
- package/dist/store/table-changes.d.ts +29 -0
- package/dist/store/table-changes.d.ts.map +1 -0
- package/dist/store/table-changes.js.map +1 -0
- package/dist/store/table-evolve.d.ts.map +1 -0
- package/dist/store/table-evolve.js.map +1 -0
- package/dist/store/table-handle.d.ts +73 -0
- package/dist/store/table-handle.d.ts.map +1 -0
- package/dist/store/table-handle.js +101 -0
- package/dist/store/table-handle.js.map +1 -0
- package/dist/store/table-history.d.ts.map +1 -0
- package/dist/store/table-history.js.map +1 -0
- package/dist/store/table-migration.d.ts +16 -0
- package/dist/store/table-migration.d.ts.map +1 -0
- package/dist/store/table-migration.js +202 -0
- package/dist/store/table-migration.js.map +1 -0
- package/dist/store/table-writes.d.ts.map +1 -0
- package/dist/store/table-writes.js +170 -0
- package/dist/store/table-writes.js.map +1 -0
- package/dist/store/table.d.ts +80 -0
- package/dist/store/table.d.ts.map +1 -0
- package/dist/store/table.js.map +1 -0
- package/dist/store/text.d.ts.map +1 -0
- package/dist/store/text.js.map +1 -0
- package/dist/store/writes.d.ts.map +1 -0
- package/dist/store/writes.js.map +1 -0
- package/dist/surfaces/active-language.d.ts +20 -0
- package/dist/surfaces/active-language.d.ts.map +1 -0
- package/dist/surfaces/active-language.js +78 -0
- package/dist/surfaces/active-language.js.map +1 -0
- package/dist/surfaces/active-theme.d.ts +16 -0
- package/dist/surfaces/active-theme.d.ts.map +1 -0
- package/dist/surfaces/active-theme.js +47 -0
- package/dist/surfaces/active-theme.js.map +1 -0
- package/dist/surfaces/client.d.ts +96 -0
- package/dist/surfaces/client.d.ts.map +1 -0
- package/dist/surfaces/client.js +264 -0
- package/dist/surfaces/client.js.map +1 -0
- package/dist/surfaces/connection.d.ts +49 -0
- package/dist/surfaces/connection.d.ts.map +1 -0
- package/dist/surfaces/connection.js +142 -0
- package/dist/surfaces/connection.js.map +1 -0
- package/dist/surfaces/format.d.ts +5 -0
- package/dist/surfaces/format.d.ts.map +1 -0
- package/dist/surfaces/format.js +37 -0
- package/dist/surfaces/format.js.map +1 -0
- package/dist/surfaces/index.d.ts +15 -0
- package/dist/surfaces/index.d.ts.map +1 -0
- package/dist/surfaces/index.js +18 -0
- package/dist/surfaces/index.js.map +1 -0
- package/dist/surfaces/language.d.ts +53 -0
- package/dist/surfaces/language.d.ts.map +1 -0
- package/dist/surfaces/language.js +74 -0
- package/dist/surfaces/language.js.map +1 -0
- package/dist/surfaces/loaded.d.ts +42 -0
- package/dist/surfaces/loaded.d.ts.map +1 -0
- package/dist/surfaces/loaded.js +116 -0
- package/dist/surfaces/loaded.js.map +1 -0
- package/dist/surfaces/locale-choice.d.ts +25 -0
- package/dist/surfaces/locale-choice.d.ts.map +1 -0
- package/dist/surfaces/locale-choice.js +14 -0
- package/dist/surfaces/locale-choice.js.map +1 -0
- package/dist/surfaces/messages.d.ts +67 -0
- package/dist/surfaces/messages.d.ts.map +1 -0
- package/dist/surfaces/messages.js +112 -0
- package/dist/surfaces/messages.js.map +1 -0
- package/dist/surfaces/page-state.d.ts +14 -0
- package/dist/surfaces/page-state.d.ts.map +1 -0
- package/dist/surfaces/page-state.js +43 -0
- package/dist/surfaces/page-state.js.map +1 -0
- package/dist/surfaces/preference.d.ts +32 -0
- package/dist/surfaces/preference.d.ts.map +1 -0
- package/dist/surfaces/preference.js +72 -0
- package/dist/surfaces/preference.js.map +1 -0
- package/dist/surfaces/registered.d.ts +33 -0
- package/dist/surfaces/registered.d.ts.map +1 -0
- package/dist/surfaces/registered.js +51 -0
- package/dist/surfaces/registered.js.map +1 -0
- package/dist/surfaces/scripts.d.ts +84 -0
- package/dist/surfaces/scripts.d.ts.map +1 -0
- package/dist/surfaces/scripts.js +28 -0
- package/dist/surfaces/scripts.js.map +1 -0
- package/dist/surfaces/theme-choice.d.ts +31 -0
- package/dist/surfaces/theme-choice.d.ts.map +1 -0
- package/dist/surfaces/theme-choice.js +18 -0
- package/dist/surfaces/theme-choice.js.map +1 -0
- package/dist/surfaces/themes.d.ts +43 -0
- package/dist/surfaces/themes.d.ts.map +1 -0
- package/dist/surfaces/themes.js +110 -0
- package/dist/surfaces/themes.js.map +1 -0
- package/dist/surfaces/translations.d.ts +29 -0
- package/dist/surfaces/translations.d.ts.map +1 -0
- package/dist/surfaces/translations.js +57 -0
- package/dist/surfaces/translations.js.map +1 -0
- package/dist/sync/batch.d.ts +18 -0
- package/dist/sync/batch.d.ts.map +1 -0
- package/dist/sync/batch.js +125 -0
- package/dist/sync/batch.js.map +1 -0
- package/dist/sync/client.d.ts +166 -0
- package/dist/sync/client.d.ts.map +1 -0
- package/dist/sync/client.js +438 -0
- package/dist/sync/client.js.map +1 -0
- package/dist/sync/files.d.ts +46 -0
- package/dist/sync/files.d.ts.map +1 -0
- package/dist/sync/files.js +13 -0
- package/dist/sync/files.js.map +1 -0
- package/dist/sync/filesystem.d.ts +37 -0
- package/dist/sync/filesystem.d.ts.map +1 -0
- package/dist/sync/filesystem.js +185 -0
- package/dist/sync/filesystem.js.map +1 -0
- package/dist/sync/index.d.ts +8 -0
- package/dist/sync/index.d.ts.map +1 -0
- package/dist/sync/index.js +9 -0
- package/dist/sync/index.js.map +1 -0
- package/dist/sync/lines.d.ts +18 -0
- package/dist/sync/lines.d.ts.map +1 -0
- package/dist/sync/lines.js +46 -0
- package/dist/sync/lines.js.map +1 -0
- package/dist/sync/remote.d.ts +130 -0
- package/dist/sync/remote.d.ts.map +1 -0
- package/dist/sync/remote.js +46 -0
- package/dist/sync/remote.js.map +1 -0
- package/dist/sync/state.d.ts +17 -0
- package/dist/sync/state.d.ts.map +1 -0
- package/dist/sync/state.js +40 -0
- package/dist/sync/state.js.map +1 -0
- package/dist/telemetry-ingest/batch.d.ts +70 -0
- package/dist/telemetry-ingest/batch.d.ts.map +1 -0
- package/dist/telemetry-ingest/batch.js +110 -0
- package/dist/telemetry-ingest/batch.js.map +1 -0
- package/dist/telemetry-ingest/facet.d.ts +21 -0
- package/dist/telemetry-ingest/facet.d.ts.map +1 -0
- package/dist/telemetry-ingest/facet.js +96 -0
- package/dist/telemetry-ingest/facet.js.map +1 -0
- package/dist/telemetry-ingest/index.d.ts +5 -0
- package/dist/telemetry-ingest/index.d.ts.map +1 -0
- package/dist/telemetry-ingest/index.js +8 -0
- package/dist/telemetry-ingest/index.js.map +1 -0
- package/dist/telemetry-ingest/recorder.d.ts +50 -0
- package/dist/telemetry-ingest/recorder.d.ts.map +1 -0
- package/dist/telemetry-ingest/recorder.js +298 -0
- package/dist/telemetry-ingest/recorder.js.map +1 -0
- package/dist/telemetry-ingest/sender.d.ts +14 -0
- package/dist/telemetry-ingest/sender.d.ts.map +1 -0
- package/dist/telemetry-ingest/sender.js +64 -0
- package/dist/telemetry-ingest/sender.js.map +1 -0
- package/dist/telemetry-sqlite/index.d.ts +13 -4
- package/dist/telemetry-sqlite/index.d.ts.map +1 -1
- package/dist/telemetry-sqlite/index.js +81 -241
- package/dist/telemetry-sqlite/index.js.map +1 -1
- package/dist/telemetry-sqlite/node.d.ts +13 -0
- package/dist/telemetry-sqlite/node.d.ts.map +1 -0
- package/dist/telemetry-sqlite/node.js +27 -0
- package/dist/telemetry-sqlite/node.js.map +1 -0
- package/dist/telemetry-sqlite/schema.d.ts +9 -0
- package/dist/telemetry-sqlite/schema.d.ts.map +1 -0
- package/dist/telemetry-sqlite/schema.js +61 -0
- package/dist/telemetry-sqlite/schema.js.map +1 -0
- package/dist/telemetry-sqlite/store.d.ts +3 -0
- package/dist/telemetry-sqlite/store.d.ts.map +1 -1
- package/dist/telemetry-sqlite/store.js +24 -13
- package/dist/telemetry-sqlite/store.js.map +1 -1
- package/dist/telemetry.d.ts +937 -0
- package/dist/telemetry.d.ts.map +1 -0
- package/dist/telemetry.js +470 -0
- package/dist/telemetry.js.map +1 -0
- package/dist/tui/bridge.d.ts +112 -0
- package/dist/tui/bridge.d.ts.map +1 -0
- package/dist/tui/bridge.js +9 -0
- package/dist/tui/bridge.js.map +1 -0
- package/dist/tui/channel.d.ts +44 -0
- package/dist/tui/channel.d.ts.map +1 -0
- package/dist/tui/channel.js +150 -0
- package/dist/tui/channel.js.map +1 -0
- package/dist/tui/frames.d.ts +5 -0
- package/dist/tui/frames.d.ts.map +1 -0
- package/dist/tui/frames.js +52 -0
- package/dist/tui/frames.js.map +1 -0
- package/dist/tui/index.d.ts +7 -0
- package/dist/tui/index.d.ts.map +1 -0
- package/dist/tui/index.js +8 -0
- package/dist/tui/index.js.map +1 -0
- package/dist/tui/runtime.d.ts +46 -0
- package/dist/tui/runtime.d.ts.map +1 -0
- package/dist/tui/runtime.js +101 -0
- package/dist/tui/runtime.js.map +1 -0
- package/dist/tui/scope.d.ts +46 -0
- package/dist/tui/scope.d.ts.map +1 -0
- package/dist/tui/scope.js +141 -0
- package/dist/tui/scope.js.map +1 -0
- package/dist/tui/terminal.d.ts +15 -0
- package/dist/tui/terminal.d.ts.map +1 -0
- package/dist/tui/terminal.js +37 -0
- package/dist/tui/terminal.js.map +1 -0
- package/dist/tui/theme.d.ts +17 -0
- package/dist/tui/theme.d.ts.map +1 -0
- package/dist/tui/theme.js +38 -0
- package/dist/tui/theme.js.map +1 -0
- package/dist/web/environment.d.ts +4 -0
- package/dist/web/environment.d.ts.map +1 -0
- package/dist/web/environment.js +37 -0
- package/dist/web/environment.js.map +1 -0
- package/dist/web/index.d.ts +5 -0
- package/dist/web/index.d.ts.map +1 -0
- package/dist/web/index.js +7 -0
- package/dist/web/index.js.map +1 -0
- package/dist/web/language.d.ts +7 -0
- package/dist/web/language.d.ts.map +1 -0
- package/dist/web/language.js +21 -0
- package/dist/web/language.js.map +1 -0
- package/dist/web/page.d.ts +29 -0
- package/dist/web/page.d.ts.map +1 -0
- package/dist/web/page.js +92 -0
- package/dist/web/page.js.map +1 -0
- package/dist/web/scripts.d.ts +23 -0
- package/dist/web/scripts.d.ts.map +1 -0
- package/dist/web/scripts.js +50 -0
- package/dist/web/scripts.js.map +1 -0
- package/dist/web/styles.d.ts +17 -0
- package/dist/web/styles.d.ts.map +1 -0
- package/dist/web/styles.js +218 -0
- package/dist/web/styles.js.map +1 -0
- package/dist/web/themes.d.ts +6 -0
- package/dist/web/themes.d.ts.map +1 -0
- package/dist/web/themes.js +31 -0
- package/dist/web/themes.js.map +1 -0
- package/docs/benchmarks.md +1036 -0
- package/docs/decisions.md +3436 -0
- package/docs/dependencies/book.md +1671 -0
- package/docs/dependencies/index.html +2641 -0
- package/docs/design.md +3065 -0
- package/docs/durable-observers/book.md +432 -0
- package/docs/durable-observers/index.html +517 -0
- package/docs/guide-plugins-hosts/book.md +957 -0
- package/docs/guide-plugins-hosts/index.html +952 -0
- package/docs/http-workers/book.md +378 -0
- package/docs/http-workers/index.html +515 -0
- package/docs/i18n/book.md +217 -0
- package/docs/i18n/index.html +344 -0
- package/docs/layer-1.md +311 -0
- package/docs/layer-2.md +216 -0
- package/docs/p3-features/README.md +6 -0
- package/docs/p3-features/book.md +478 -0
- package/docs/plugin-authoring.md +276 -0
- package/docs/plugin-model/book.md +186 -0
- package/docs/plugin-model/index.html +310 -0
- package/docs/plugin-primer/book.md +273 -0
- package/docs/plugin-primer/index.html +430 -0
- package/docs/slice-1.md +236 -0
- package/docs/slice-10.md +288 -0
- package/docs/slice-11.md +114 -0
- package/docs/slice-12.md +132 -0
- package/docs/slice-13.md +121 -0
- package/docs/slice-2.md +174 -0
- package/docs/slice-3a.md +296 -0
- package/docs/slice-3b.md +197 -0
- package/docs/slice-4a.md +418 -0
- package/docs/slice-4b.md +208 -0
- package/docs/slice-6a.md +676 -0
- package/docs/slice-6b.md +332 -0
- package/docs/slice-7b/book.md +608 -0
- package/docs/slice-7b/index.html +842 -0
- package/docs/slice-7b.md +255 -0
- package/docs/slice-7c.md +165 -0
- package/docs/slice-9.md +110 -0
- package/docs/slices.md +241 -0
- package/docs/store/book.md +670 -0
- package/docs/store/index.html +861 -0
- package/docs/store/walkthrough.md +193 -0
- package/docs/theming/book.md +223 -0
- package/docs/theming/index.html +371 -0
- package/docs/tutorial/book.md +2169 -0
- package/docs/tutorial/index.html +2112 -0
- package/docs/tutorial/screens/click-after.png +0 -0
- package/docs/tutorial/screens/click-before.png +0 -0
- package/docs/tutorial/screens/edited.png +0 -0
- package/docs/tutorial/screens/french.png +0 -0
- package/docs/tutorial/screens/harbor.png +0 -0
- package/docs/tutorial/screens/page.png +0 -0
- package/docs/tutorial/screens/traces-ada.png +0 -0
- package/docs/tutorial/screens/traces.png +0 -0
- package/package.json +99 -21
- package/dist/cell.d.ts +0 -122
- package/dist/cell.d.ts.map +0 -1
- package/dist/cell.js +0 -356
- package/dist/cell.js.map +0 -1
- package/dist/cluster.d.ts +0 -27
- package/dist/cluster.d.ts.map +0 -1
- package/dist/cluster.js +0 -230
- package/dist/cluster.js.map +0 -1
- package/dist/connection.d.ts +0 -270
- package/dist/connection.d.ts.map +0 -1
- package/dist/connection.js +0 -1216
- package/dist/connection.js.map +0 -1
- package/dist/contract.d.ts +0 -207
- package/dist/contract.d.ts.map +0 -1
- package/dist/contract.js +0 -241
- package/dist/contract.js.map +0 -1
- package/dist/declare.d.ts +0 -33
- package/dist/declare.d.ts.map +0 -1
- package/dist/declare.js +0 -2
- package/dist/declare.js.map +0 -1
- package/dist/errors.d.ts +0 -28
- package/dist/errors.d.ts.map +0 -1
- package/dist/errors.js +0 -59
- package/dist/errors.js.map +0 -1
- package/dist/host.d.ts +0 -348
- package/dist/host.d.ts.map +0 -1
- package/dist/host.js +0 -1002
- package/dist/host.js.map +0 -1
- package/dist/link.d.ts +0 -107
- package/dist/link.d.ts.map +0 -1
- package/dist/link.js +0 -355
- package/dist/link.js.map +0 -1
- package/dist/loader.d.ts +0 -4
- package/dist/loader.d.ts.map +0 -1
- package/dist/loader.js +0 -73
- package/dist/loader.js.map +0 -1
- package/dist/manager.d.ts +0 -115
- package/dist/manager.d.ts.map +0 -1
- package/dist/manager.js +0 -345
- package/dist/manager.js.map +0 -1
- package/dist/next/contracts/accepts.d.ts +0 -81
- package/dist/next/contracts/accepts.d.ts.map +0 -1
- package/dist/next/contracts/accepts.js.map +0 -1
- package/dist/next/contracts/contract.d.ts +0 -121
- package/dist/next/contracts/contract.d.ts.map +0 -1
- package/dist/next/contracts/contract.js.map +0 -1
- package/dist/next/contracts/declare.d.ts.map +0 -1
- package/dist/next/contracts/declare.js.map +0 -1
- package/dist/next/contracts/evolve.d.ts.map +0 -1
- package/dist/next/contracts/evolve.js.map +0 -1
- package/dist/next/contracts/fingerprint.d.ts +0 -16
- package/dist/next/contracts/fingerprint.d.ts.map +0 -1
- package/dist/next/contracts/fingerprint.js.map +0 -1
- package/dist/next/contracts/history.d.ts.map +0 -1
- package/dist/next/contracts/history.js.map +0 -1
- package/dist/next/contracts/host-kind.d.ts.map +0 -1
- package/dist/next/contracts/host-kind.js.map +0 -1
- package/dist/next/contracts/index.d.ts.map +0 -1
- package/dist/next/contracts/index.js.map +0 -1
- package/dist/next/contracts/internal.d.ts.map +0 -1
- package/dist/next/contracts/internal.js.map +0 -1
- package/dist/next/contracts/names.d.ts.map +0 -1
- package/dist/next/contracts/names.js.map +0 -1
- package/dist/next/contracts/params.d.ts +0 -28
- package/dist/next/contracts/params.d.ts.map +0 -1
- package/dist/next/contracts/params.js.map +0 -1
- package/dist/next/contracts/schema.d.ts.map +0 -1
- package/dist/next/contracts/schema.js.map +0 -1
- package/dist/next/contracts/snapshot.d.ts +0 -16
- package/dist/next/contracts/snapshot.d.ts.map +0 -1
- package/dist/next/contracts/snapshot.js +0 -167
- package/dist/next/contracts/snapshot.js.map +0 -1
- package/dist/next/data/args.d.ts +0 -50
- package/dist/next/data/args.d.ts.map +0 -1
- package/dist/next/data/args.js.map +0 -1
- package/dist/next/data/errors.d.ts +0 -73
- package/dist/next/data/errors.d.ts.map +0 -1
- package/dist/next/data/errors.js +0 -107
- package/dist/next/data/errors.js.map +0 -1
- package/dist/next/data/failure.d.ts.map +0 -1
- package/dist/next/data/failure.js +0 -72
- package/dist/next/data/failure.js.map +0 -1
- package/dist/next/data/index.d.ts +0 -4
- package/dist/next/data/index.d.ts.map +0 -1
- package/dist/next/data/index.js +0 -4
- package/dist/next/data/index.js.map +0 -1
- package/dist/next/data/internal.d.ts +0 -7
- package/dist/next/data/internal.d.ts.map +0 -1
- package/dist/next/data/internal.js +0 -8
- package/dist/next/data/internal.js.map +0 -1
- package/dist/next/data/params.d.ts +0 -20
- package/dist/next/data/params.d.ts.map +0 -1
- package/dist/next/data/params.js.map +0 -1
- package/dist/next/data/principal.d.ts +0 -17
- package/dist/next/data/principal.d.ts.map +0 -1
- package/dist/next/data/principal.js +0 -41
- package/dist/next/data/principal.js.map +0 -1
- package/dist/next/data/validator.d.ts +0 -12
- package/dist/next/data/validator.d.ts.map +0 -1
- package/dist/next/data/validator.js +0 -34
- package/dist/next/data/validator.js.map +0 -1
- package/dist/next/documents/address-source.d.ts +0 -20
- package/dist/next/documents/address-source.d.ts.map +0 -1
- package/dist/next/documents/address-source.js.map +0 -1
- package/dist/next/documents/definition.d.ts +0 -84
- package/dist/next/documents/definition.d.ts.map +0 -1
- package/dist/next/documents/definition.js +0 -73
- package/dist/next/documents/definition.js.map +0 -1
- package/dist/next/documents/documents.d.ts +0 -106
- package/dist/next/documents/documents.d.ts.map +0 -1
- package/dist/next/documents/documents.js +0 -224
- package/dist/next/documents/documents.js.map +0 -1
- package/dist/next/documents/fence.d.ts.map +0 -1
- package/dist/next/documents/fence.js.map +0 -1
- package/dist/next/documents/handles.d.ts +0 -76
- package/dist/next/documents/handles.d.ts.map +0 -1
- package/dist/next/documents/handles.js.map +0 -1
- package/dist/next/documents/index.d.ts.map +0 -1
- package/dist/next/documents/index.js.map +0 -1
- package/dist/next/documents/internal.d.ts +0 -9
- package/dist/next/documents/internal.d.ts.map +0 -1
- package/dist/next/documents/internal.js.map +0 -1
- package/dist/next/documents/keyed-slot.d.ts +0 -103
- package/dist/next/documents/keyed-slot.d.ts.map +0 -1
- package/dist/next/documents/keyed-slot.js +0 -395
- package/dist/next/documents/keyed-slot.js.map +0 -1
- package/dist/next/documents/line.d.ts.map +0 -1
- package/dist/next/documents/line.js.map +0 -1
- package/dist/next/documents/persistence.d.ts +0 -104
- package/dist/next/documents/persistence.d.ts.map +0 -1
- package/dist/next/documents/persistence.js +0 -128
- package/dist/next/documents/persistence.js.map +0 -1
- package/dist/next/documents/residency.d.ts +0 -31
- package/dist/next/documents/residency.d.ts.map +0 -1
- package/dist/next/documents/residency.js.map +0 -1
- package/dist/next/documents/slot.d.ts +0 -109
- package/dist/next/documents/slot.d.ts.map +0 -1
- package/dist/next/documents/slot.js +0 -181
- package/dist/next/documents/slot.js.map +0 -1
- package/dist/next/documents/transaction.d.ts +0 -133
- package/dist/next/documents/transaction.d.ts.map +0 -1
- package/dist/next/documents/transaction.js +0 -409
- package/dist/next/documents/transaction.js.map +0 -1
- package/dist/next/host/activity.d.ts +0 -31
- package/dist/next/host/activity.d.ts.map +0 -1
- package/dist/next/host/activity.js +0 -40
- package/dist/next/host/activity.js.map +0 -1
- package/dist/next/host/adapted.d.ts +0 -49
- package/dist/next/host/adapted.d.ts.map +0 -1
- package/dist/next/host/adapted.js.map +0 -1
- package/dist/next/host/attempt.d.ts +0 -278
- package/dist/next/host/attempt.d.ts.map +0 -1
- package/dist/next/host/attempt.js +0 -1072
- package/dist/next/host/attempt.js.map +0 -1
- package/dist/next/host/backoff.d.ts.map +0 -1
- package/dist/next/host/backoff.js.map +0 -1
- package/dist/next/host/ctx.d.ts +0 -47
- package/dist/next/host/ctx.d.ts.map +0 -1
- package/dist/next/host/ctx.js +0 -108
- package/dist/next/host/ctx.js.map +0 -1
- package/dist/next/host/deadline.d.ts.map +0 -1
- package/dist/next/host/deadline.js.map +0 -1
- package/dist/next/host/dependencies.d.ts.map +0 -1
- package/dist/next/host/dependencies.js.map +0 -1
- package/dist/next/host/destination.d.ts +0 -48
- package/dist/next/host/destination.d.ts.map +0 -1
- package/dist/next/host/destination.js.map +0 -1
- package/dist/next/host/facet.d.ts +0 -79
- package/dist/next/host/facet.d.ts.map +0 -1
- package/dist/next/host/facet.js.map +0 -1
- package/dist/next/host/follow.d.ts +0 -52
- package/dist/next/host/follow.d.ts.map +0 -1
- package/dist/next/host/follow.js.map +0 -1
- package/dist/next/host/host.d.ts +0 -495
- package/dist/next/host/host.d.ts.map +0 -1
- package/dist/next/host/host.js +0 -1075
- package/dist/next/host/host.js.map +0 -1
- package/dist/next/host/index.d.ts +0 -17
- package/dist/next/host/index.d.ts.map +0 -1
- package/dist/next/host/index.js.map +0 -1
- package/dist/next/host/internal.d.ts +0 -10
- package/dist/next/host/internal.d.ts.map +0 -1
- package/dist/next/host/internal.js +0 -8
- package/dist/next/host/internal.js.map +0 -1
- package/dist/next/host/members.d.ts +0 -50
- package/dist/next/host/members.d.ts.map +0 -1
- package/dist/next/host/members.js.map +0 -1
- package/dist/next/host/native.d.ts +0 -55
- package/dist/next/host/native.d.ts.map +0 -1
- package/dist/next/host/native.js +0 -92
- package/dist/next/host/native.js.map +0 -1
- package/dist/next/host/object.d.ts +0 -290
- package/dist/next/host/object.d.ts.map +0 -1
- package/dist/next/host/object.js +0 -1127
- package/dist/next/host/object.js.map +0 -1
- package/dist/next/host/parked.d.ts +0 -23
- package/dist/next/host/parked.d.ts.map +0 -1
- package/dist/next/host/parked.js.map +0 -1
- package/dist/next/host/presence.d.ts +0 -34
- package/dist/next/host/presence.d.ts.map +0 -1
- package/dist/next/host/presence.js.map +0 -1
- package/dist/next/host/ref-state.d.ts +0 -53
- package/dist/next/host/ref-state.d.ts.map +0 -1
- package/dist/next/host/ref-state.js +0 -83
- package/dist/next/host/ref-state.js.map +0 -1
- package/dist/next/host/reference-keys.d.ts +0 -36
- package/dist/next/host/reference-keys.d.ts.map +0 -1
- package/dist/next/host/reference-keys.js +0 -168
- package/dist/next/host/reference-keys.js.map +0 -1
- package/dist/next/host/reference-source.d.ts +0 -65
- package/dist/next/host/reference-source.d.ts.map +0 -1
- package/dist/next/host/reference-source.js +0 -285
- package/dist/next/host/reference-source.js.map +0 -1
- package/dist/next/host/reference.d.ts +0 -308
- package/dist/next/host/reference.d.ts.map +0 -1
- package/dist/next/host/reference.js +0 -775
- package/dist/next/host/reference.js.map +0 -1
- package/dist/next/host/retry-on.d.ts.map +0 -1
- package/dist/next/host/retry-on.js.map +0 -1
- package/dist/next/host/revocation.d.ts +0 -16
- package/dist/next/host/revocation.d.ts.map +0 -1
- package/dist/next/host/revocation.js.map +0 -1
- package/dist/next/host/root.d.ts +0 -27
- package/dist/next/host/root.d.ts.map +0 -1
- package/dist/next/host/root.js +0 -68
- package/dist/next/host/root.js.map +0 -1
- package/dist/next/host/route.d.ts +0 -64
- package/dist/next/host/route.d.ts.map +0 -1
- package/dist/next/host/route.js +0 -190
- package/dist/next/host/route.js.map +0 -1
- package/dist/next/host/routines.d.ts +0 -76
- package/dist/next/host/routines.d.ts.map +0 -1
- package/dist/next/host/routines.js +0 -350
- package/dist/next/host/routines.js.map +0 -1
- package/dist/next/host/sleep.d.ts +0 -9
- package/dist/next/host/sleep.d.ts.map +0 -1
- package/dist/next/host/sleep.js.map +0 -1
- package/dist/next/host/staging.d.ts +0 -94
- package/dist/next/host/staging.d.ts.map +0 -1
- package/dist/next/host/staging.js +0 -302
- package/dist/next/host/staging.js.map +0 -1
- package/dist/next/host/unbound.d.ts +0 -30
- package/dist/next/host/unbound.d.ts.map +0 -1
- package/dist/next/host/unbound.js +0 -67
- package/dist/next/host/unbound.js.map +0 -1
- package/dist/next/host/uuid.d.ts.map +0 -1
- package/dist/next/host/uuid.js.map +0 -1
- package/dist/next/index.d.ts +0 -28
- package/dist/next/index.d.ts.map +0 -1
- package/dist/next/index.js +0 -18
- package/dist/next/index.js.map +0 -1
- package/dist/next/jobs/definition.d.ts.map +0 -1
- package/dist/next/jobs/definition.js.map +0 -1
- package/dist/next/jobs/index.d.ts.map +0 -1
- package/dist/next/jobs/index.js.map +0 -1
- package/dist/next/jobs/internal.d.ts.map +0 -1
- package/dist/next/jobs/internal.js.map +0 -1
- package/dist/next/jobs/job.d.ts +0 -152
- package/dist/next/jobs/job.d.ts.map +0 -1
- package/dist/next/jobs/job.js +0 -320
- package/dist/next/jobs/job.js.map +0 -1
- package/dist/next/jobs/persisted.d.ts +0 -38
- package/dist/next/jobs/persisted.d.ts.map +0 -1
- package/dist/next/jobs/persisted.js.map +0 -1
- package/dist/next/jobs/records.d.ts +0 -231
- package/dist/next/jobs/records.d.ts.map +0 -1
- package/dist/next/jobs/records.js +0 -869
- package/dist/next/jobs/records.js.map +0 -1
- package/dist/next/jobs/run-states.d.ts +0 -69
- package/dist/next/jobs/run-states.d.ts.map +0 -1
- package/dist/next/jobs/run-states.js +0 -228
- package/dist/next/jobs/run-states.js.map +0 -1
- package/dist/next/jobs/run.d.ts +0 -113
- package/dist/next/jobs/run.d.ts.map +0 -1
- package/dist/next/jobs/run.js +0 -200
- package/dist/next/jobs/run.js.map +0 -1
- package/dist/next/jobs/running.d.ts +0 -44
- package/dist/next/jobs/running.d.ts.map +0 -1
- package/dist/next/jobs/running.js.map +0 -1
- package/dist/next/jobs/stored.d.ts +0 -63
- package/dist/next/jobs/stored.d.ts.map +0 -1
- package/dist/next/jobs/stored.js.map +0 -1
- package/dist/next/link/binary.d.ts.map +0 -1
- package/dist/next/link/binary.js +0 -534
- package/dist/next/link/binary.js.map +0 -1
- package/dist/next/link/channel.d.ts +0 -63
- package/dist/next/link/channel.d.ts.map +0 -1
- package/dist/next/link/channel.js +0 -202
- package/dist/next/link/channel.js.map +0 -1
- package/dist/next/link/errors.d.ts.map +0 -1
- package/dist/next/link/errors.js.map +0 -1
- package/dist/next/link/index.d.ts.map +0 -1
- package/dist/next/link/index.js.map +0 -1
- package/dist/next/link/internal.d.ts.map +0 -1
- package/dist/next/link/internal.js.map +0 -1
- package/dist/next/link/ipc.d.ts.map +0 -1
- package/dist/next/link/ipc.js.map +0 -1
- package/dist/next/link/link.d.ts.map +0 -1
- package/dist/next/link/link.js.map +0 -1
- package/dist/next/link/message.d.ts +0 -249
- package/dist/next/link/message.d.ts.map +0 -1
- package/dist/next/link/message.js +0 -123
- package/dist/next/link/message.js.map +0 -1
- package/dist/next/link/part.d.ts +0 -80
- package/dist/next/link/part.d.ts.map +0 -1
- package/dist/next/link/part.js +0 -164
- package/dist/next/link/part.js.map +0 -1
- package/dist/next/link/text.d.ts.map +0 -1
- package/dist/next/link/text.js +0 -335
- package/dist/next/link/text.js.map +0 -1
- package/dist/next/link/values.d.ts.map +0 -1
- package/dist/next/link/values.js +0 -117
- package/dist/next/link/values.js.map +0 -1
- package/dist/next/link/websocket.d.ts.map +0 -1
- package/dist/next/link/websocket.js.map +0 -1
- package/dist/next/registries/contribution.d.ts.map +0 -1
- package/dist/next/registries/contribution.js.map +0 -1
- package/dist/next/registries/entries.d.ts.map +0 -1
- package/dist/next/registries/entries.js.map +0 -1
- package/dist/next/registries/index.d.ts.map +0 -1
- package/dist/next/registries/index.js.map +0 -1
- package/dist/next/registries/internal.d.ts.map +0 -1
- package/dist/next/registries/internal.js.map +0 -1
- package/dist/next/registries/record.d.ts +0 -94
- package/dist/next/registries/record.d.ts.map +0 -1
- package/dist/next/registries/record.js +0 -253
- package/dist/next/registries/record.js.map +0 -1
- package/dist/next/registries/registry.d.ts +0 -74
- package/dist/next/registries/registry.d.ts.map +0 -1
- package/dist/next/registries/registry.js.map +0 -1
- package/dist/next/registries/value.d.ts.map +0 -1
- package/dist/next/registries/value.js +0 -199
- package/dist/next/registries/value.js.map +0 -1
- package/dist/next/remote/calls.d.ts.map +0 -1
- package/dist/next/remote/calls.js.map +0 -1
- package/dist/next/remote/consumer.d.ts +0 -42
- package/dist/next/remote/consumer.d.ts.map +0 -1
- package/dist/next/remote/consumer.js +0 -343
- package/dist/next/remote/consumer.js.map +0 -1
- package/dist/next/remote/hold.d.ts +0 -130
- package/dist/next/remote/hold.d.ts.map +0 -1
- package/dist/next/remote/hold.js +0 -537
- package/dist/next/remote/hold.js.map +0 -1
- package/dist/next/remote/host-link.d.ts +0 -77
- package/dist/next/remote/host-link.d.ts.map +0 -1
- package/dist/next/remote/host-link.js +0 -182
- package/dist/next/remote/host-link.js.map +0 -1
- package/dist/next/remote/internal.d.ts.map +0 -1
- package/dist/next/remote/internal.js.map +0 -1
- package/dist/next/remote/path.d.ts.map +0 -1
- package/dist/next/remote/path.js.map +0 -1
- package/dist/next/remote/provider.d.ts +0 -76
- package/dist/next/remote/provider.d.ts.map +0 -1
- package/dist/next/remote/provider.js +0 -506
- package/dist/next/remote/provider.js.map +0 -1
- package/dist/next/remote/relay.d.ts +0 -58
- package/dist/next/remote/relay.d.ts.map +0 -1
- package/dist/next/remote/relay.js +0 -117
- package/dist/next/remote/relay.js.map +0 -1
- package/dist/next/remote/remote-object.d.ts +0 -133
- package/dist/next/remote/remote-object.d.ts.map +0 -1
- package/dist/next/remote/remote-object.js +0 -411
- package/dist/next/remote/remote-object.js.map +0 -1
- package/dist/next/remote/replica.d.ts +0 -59
- package/dist/next/remote/replica.d.ts.map +0 -1
- package/dist/next/remote/replica.js +0 -125
- package/dist/next/remote/replica.js.map +0 -1
- package/dist/next/state/batch.d.ts +0 -64
- package/dist/next/state/batch.d.ts.map +0 -1
- package/dist/next/state/batch.js +0 -163
- package/dist/next/state/batch.js.map +0 -1
- package/dist/next/state/derive.d.ts +0 -52
- package/dist/next/state/derive.d.ts.map +0 -1
- package/dist/next/state/derive.js +0 -182
- package/dist/next/state/derive.js.map +0 -1
- package/dist/next/state/index.d.ts +0 -6
- package/dist/next/state/index.d.ts.map +0 -1
- package/dist/next/state/index.js.map +0 -1
- package/dist/next/state/internal.d.ts.map +0 -1
- package/dist/next/state/internal.js.map +0 -1
- package/dist/next/state/native-source.d.ts +0 -106
- package/dist/next/state/native-source.d.ts.map +0 -1
- package/dist/next/state/native-source.js +0 -240
- package/dist/next/state/native-source.js.map +0 -1
- package/dist/next/state/watchable.d.ts +0 -114
- package/dist/next/state/watchable.d.ts.map +0 -1
- package/dist/next/state/watchable.js +0 -156
- package/dist/next/state/watchable.js.map +0 -1
- package/dist/next/state/writable.d.ts +0 -32
- package/dist/next/state/writable.d.ts.map +0 -1
- package/dist/next/state/writable.js.map +0 -1
- package/dist/next/store/adapter.d.ts +0 -67
- package/dist/next/store/adapter.d.ts.map +0 -1
- package/dist/next/store/adapter.js.map +0 -1
- package/dist/next/store/allocator.d.ts.map +0 -1
- package/dist/next/store/allocator.js.map +0 -1
- package/dist/next/store/applier.d.ts.map +0 -1
- package/dist/next/store/applier.js.map +0 -1
- package/dist/next/store/apply-batch.d.ts +0 -12
- package/dist/next/store/apply-batch.d.ts.map +0 -1
- package/dist/next/store/apply-batch.js.map +0 -1
- package/dist/next/store/archive.d.ts +0 -32
- package/dist/next/store/archive.d.ts.map +0 -1
- package/dist/next/store/archive.js +0 -129
- package/dist/next/store/archive.js.map +0 -1
- package/dist/next/store/backend.d.ts +0 -10
- package/dist/next/store/backend.d.ts.map +0 -1
- package/dist/next/store/backend.js.map +0 -1
- package/dist/next/store/catalog.d.ts +0 -24
- package/dist/next/store/catalog.d.ts.map +0 -1
- package/dist/next/store/catalog.js.map +0 -1
- package/dist/next/store/claims.d.ts.map +0 -1
- package/dist/next/store/claims.js.map +0 -1
- package/dist/next/store/columns.d.ts.map +0 -1
- package/dist/next/store/columns.js.map +0 -1
- package/dist/next/store/engine.d.ts +0 -176
- package/dist/next/store/engine.d.ts.map +0 -1
- package/dist/next/store/engine.js +0 -283
- package/dist/next/store/engine.js.map +0 -1
- package/dist/next/store/evaluate.d.ts +0 -17
- package/dist/next/store/evaluate.d.ts.map +0 -1
- package/dist/next/store/evaluate.js.map +0 -1
- package/dist/next/store/export.d.ts +0 -17
- package/dist/next/store/export.d.ts.map +0 -1
- package/dist/next/store/export.js +0 -200
- package/dist/next/store/export.js.map +0 -1
- package/dist/next/store/expression.d.ts +0 -150
- package/dist/next/store/expression.d.ts.map +0 -1
- package/dist/next/store/expression.js.map +0 -1
- package/dist/next/store/import.d.ts +0 -10
- package/dist/next/store/import.d.ts.map +0 -1
- package/dist/next/store/import.js +0 -276
- package/dist/next/store/import.js.map +0 -1
- package/dist/next/store/index.d.ts.map +0 -1
- package/dist/next/store/index.js.map +0 -1
- package/dist/next/store/json-column.d.ts +0 -33
- package/dist/next/store/json-column.d.ts.map +0 -1
- package/dist/next/store/json-column.js +0 -61
- package/dist/next/store/json-column.js.map +0 -1
- package/dist/next/store/jsonl.d.ts.map +0 -1
- package/dist/next/store/jsonl.js.map +0 -1
- package/dist/next/store/outbox.d.ts +0 -26
- package/dist/next/store/outbox.d.ts.map +0 -1
- package/dist/next/store/outbox.js.map +0 -1
- package/dist/next/store/query.d.ts +0 -39
- package/dist/next/store/query.d.ts.map +0 -1
- package/dist/next/store/query.js.map +0 -1
- package/dist/next/store/refusal.d.ts.map +0 -1
- package/dist/next/store/refusal.js.map +0 -1
- package/dist/next/store/rows.d.ts +0 -80
- package/dist/next/store/rows.d.ts.map +0 -1
- package/dist/next/store/rows.js.map +0 -1
- package/dist/next/store/schema.d.ts +0 -25
- package/dist/next/store/schema.d.ts.map +0 -1
- package/dist/next/store/schema.js +0 -115
- package/dist/next/store/schema.js.map +0 -1
- package/dist/next/store/sql.d.ts +0 -73
- package/dist/next/store/sql.d.ts.map +0 -1
- package/dist/next/store/sql.js.map +0 -1
- package/dist/next/store/step.d.ts +0 -48
- package/dist/next/store/step.d.ts.map +0 -1
- package/dist/next/store/step.js +0 -50
- package/dist/next/store/step.js.map +0 -1
- package/dist/next/store/store.d.ts +0 -161
- package/dist/next/store/store.d.ts.map +0 -1
- package/dist/next/store/store.js +0 -627
- package/dist/next/store/store.js.map +0 -1
- package/dist/next/store/table-changes.d.ts +0 -29
- package/dist/next/store/table-changes.d.ts.map +0 -1
- package/dist/next/store/table-changes.js.map +0 -1
- package/dist/next/store/table-evolve.d.ts.map +0 -1
- package/dist/next/store/table-evolve.js.map +0 -1
- package/dist/next/store/table-handle.d.ts +0 -67
- package/dist/next/store/table-handle.d.ts.map +0 -1
- package/dist/next/store/table-handle.js +0 -101
- package/dist/next/store/table-handle.js.map +0 -1
- package/dist/next/store/table-history.d.ts.map +0 -1
- package/dist/next/store/table-history.js.map +0 -1
- package/dist/next/store/table-migration.d.ts +0 -16
- package/dist/next/store/table-migration.d.ts.map +0 -1
- package/dist/next/store/table-migration.js +0 -202
- package/dist/next/store/table-migration.js.map +0 -1
- package/dist/next/store/table-writes.d.ts.map +0 -1
- package/dist/next/store/table-writes.js +0 -165
- package/dist/next/store/table-writes.js.map +0 -1
- package/dist/next/store/table.d.ts +0 -80
- package/dist/next/store/table.d.ts.map +0 -1
- package/dist/next/store/table.js.map +0 -1
- package/dist/next/store/text.d.ts.map +0 -1
- package/dist/next/store/text.js.map +0 -1
- package/dist/next/store/writes.d.ts.map +0 -1
- package/dist/next/store/writes.js.map +0 -1
- package/dist/next-node/compression.d.ts +0 -7
- package/dist/next-node/compression.d.ts.map +0 -1
- package/dist/next-node/compression.js +0 -24
- package/dist/next-node/compression.js.map +0 -1
- package/dist/next-node/http/admission.d.ts.map +0 -1
- package/dist/next-node/http/admission.js.map +0 -1
- package/dist/next-node/http/authenticate.d.ts +0 -21
- package/dist/next-node/http/authenticate.d.ts.map +0 -1
- package/dist/next-node/http/authenticate.js +0 -34
- package/dist/next-node/http/authenticate.js.map +0 -1
- package/dist/next-node/http/cookies.d.ts +0 -24
- package/dist/next-node/http/cookies.d.ts.map +0 -1
- package/dist/next-node/http/cookies.js +0 -62
- package/dist/next-node/http/cookies.js.map +0 -1
- package/dist/next-node/http/file.d.ts.map +0 -1
- package/dist/next-node/http/file.js.map +0 -1
- package/dist/next-node/http/headers.d.ts.map +0 -1
- package/dist/next-node/http/headers.js +0 -129
- package/dist/next-node/http/headers.js.map +0 -1
- package/dist/next-node/http/http.d.ts +0 -100
- package/dist/next-node/http/http.d.ts.map +0 -1
- package/dist/next-node/http/http.js +0 -462
- package/dist/next-node/http/http.js.map +0 -1
- package/dist/next-node/http/incoming.d.ts.map +0 -1
- package/dist/next-node/http/incoming.js.map +0 -1
- package/dist/next-node/http/index.d.ts +0 -11
- package/dist/next-node/http/index.d.ts.map +0 -1
- package/dist/next-node/http/index.js +0 -12
- package/dist/next-node/http/index.js.map +0 -1
- package/dist/next-node/http/node.d.ts.map +0 -1
- package/dist/next-node/http/node.js.map +0 -1
- package/dist/next-node/http/request.d.ts +0 -54
- package/dist/next-node/http/request.d.ts.map +0 -1
- package/dist/next-node/http/request.js +0 -116
- package/dist/next-node/http/request.js.map +0 -1
- package/dist/next-node/http/response.d.ts +0 -63
- package/dist/next-node/http/response.d.ts.map +0 -1
- package/dist/next-node/http/response.js.map +0 -1
- package/dist/next-node/http/router.d.ts +0 -114
- package/dist/next-node/http/router.d.ts.map +0 -1
- package/dist/next-node/http/router.js +0 -261
- package/dist/next-node/http/router.js.map +0 -1
- package/dist/next-node/http/upgrades.d.ts +0 -58
- package/dist/next-node/http/upgrades.d.ts.map +0 -1
- package/dist/next-node/http/upgrades.js +0 -184
- package/dist/next-node/http/upgrades.js.map +0 -1
- package/dist/next-node/plugins/build.d.ts +0 -57
- package/dist/next-node/plugins/build.d.ts.map +0 -1
- package/dist/next-node/plugins/build.js +0 -334
- package/dist/next-node/plugins/build.js.map +0 -1
- package/dist/next-node/plugins/discover.d.ts +0 -36
- package/dist/next-node/plugins/discover.d.ts.map +0 -1
- package/dist/next-node/plugins/discover.js +0 -91
- package/dist/next-node/plugins/discover.js.map +0 -1
- package/dist/next-node/plugins/evaluate.d.ts +0 -33
- package/dist/next-node/plugins/evaluate.d.ts.map +0 -1
- package/dist/next-node/plugins/evaluate.js +0 -98
- package/dist/next-node/plugins/evaluate.js.map +0 -1
- package/dist/next-node/plugins/index.d.ts +0 -9
- package/dist/next-node/plugins/index.d.ts.map +0 -1
- package/dist/next-node/plugins/index.js +0 -11
- package/dist/next-node/plugins/index.js.map +0 -1
- package/dist/next-node/plugins/install.d.ts +0 -13
- package/dist/next-node/plugins/install.d.ts.map +0 -1
- package/dist/next-node/plugins/install.js +0 -37
- package/dist/next-node/plugins/install.js.map +0 -1
- package/dist/next-node/plugins/plugins.d.ts +0 -135
- package/dist/next-node/plugins/plugins.d.ts.map +0 -1
- package/dist/next-node/plugins/plugins.js +0 -206
- package/dist/next-node/plugins/plugins.js.map +0 -1
- package/dist/next-node/plugins/runtime.d.ts +0 -41
- package/dist/next-node/plugins/runtime.d.ts.map +0 -1
- package/dist/next-node/plugins/runtime.js +0 -136
- package/dist/next-node/plugins/runtime.js.map +0 -1
- package/dist/next-node/plugins/stack.d.ts.map +0 -1
- package/dist/next-node/plugins/stack.js.map +0 -1
- package/dist/next-node/plugins/watcher.d.ts +0 -58
- package/dist/next-node/plugins/watcher.d.ts.map +0 -1
- package/dist/next-node/plugins/watcher.js +0 -281
- package/dist/next-node/plugins/watcher.js.map +0 -1
- package/dist/next-node/workers/control.d.ts +0 -83
- package/dist/next-node/workers/control.d.ts.map +0 -1
- package/dist/next-node/workers/control.js +0 -77
- package/dist/next-node/workers/control.js.map +0 -1
- package/dist/next-node/workers/index.d.ts +0 -5
- package/dist/next-node/workers/index.d.ts.map +0 -1
- package/dist/next-node/workers/index.js +0 -7
- package/dist/next-node/workers/index.js.map +0 -1
- package/dist/next-node/workers/lock.d.ts +0 -21
- package/dist/next-node/workers/lock.d.ts.map +0 -1
- package/dist/next-node/workers/lock.js +0 -137
- package/dist/next-node/workers/lock.js.map +0 -1
- package/dist/next-node/workers/main.d.ts +0 -46
- package/dist/next-node/workers/main.d.ts.map +0 -1
- package/dist/next-node/workers/main.js +0 -230
- package/dist/next-node/workers/main.js.map +0 -1
- package/dist/next-node/workers/process.d.ts +0 -42
- package/dist/next-node/workers/process.d.ts.map +0 -1
- package/dist/next-node/workers/process.js +0 -125
- package/dist/next-node/workers/process.js.map +0 -1
- package/dist/next-node/workers/workers.d.ts +0 -80
- package/dist/next-node/workers/workers.d.ts.map +0 -1
- package/dist/next-node/workers/workers.js +0 -572
- package/dist/next-node/workers/workers.js.map +0 -1
- package/dist/node.d.ts +0 -4
- package/dist/node.d.ts.map +0 -1
- package/dist/node.js +0 -4
- package/dist/node.js.map +0 -1
- package/dist/object.d.ts +0 -438
- package/dist/object.d.ts.map +0 -1
- package/dist/object.js +0 -1570
- package/dist/object.js.map +0 -1
- package/dist/publish.d.ts +0 -5
- package/dist/publish.d.ts.map +0 -1
- package/dist/publish.js +0 -40
- package/dist/publish.js.map +0 -1
- package/dist/registry.d.ts +0 -25
- package/dist/registry.d.ts.map +0 -1
- package/dist/registry.js +0 -6
- package/dist/registry.js.map +0 -1
- package/dist/reload.d.ts +0 -126
- package/dist/reload.d.ts.map +0 -1
- package/dist/reload.js +0 -653
- package/dist/reload.js.map +0 -1
- package/dist/remote.d.ts +0 -165
- package/dist/remote.d.ts.map +0 -1
- package/dist/remote.js +0 -612
- package/dist/remote.js.map +0 -1
- package/dist/schema.d.ts +0 -25
- package/dist/schema.d.ts.map +0 -1
- package/dist/schema.js +0 -403
- package/dist/schema.js.map +0 -1
- package/dist/state.d.ts +0 -92
- package/dist/state.d.ts.map +0 -1
- package/dist/state.js +0 -287
- package/dist/state.js.map +0 -1
- package/dist/types.d.ts +0 -88
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -2
- package/dist/types.js.map +0 -1
- package/dist/websocket.d.ts +0 -15
- package/dist/websocket.d.ts.map +0 -1
- package/dist/websocket.js +0 -16
- package/dist/websocket.js.map +0 -1
- package/dist/wire.d.ts +0 -197
- package/dist/wire.d.ts.map +0 -1
- package/dist/wire.js +0 -166
- package/dist/wire.js.map +0 -1
- package/docs/guide.md +0 -814
- package/docs/next/benchmarks.md +0 -959
- package/docs/next/decisions.md +0 -2957
- package/docs/next/dependencies/book.md +0 -1671
- package/docs/next/dependencies/index.html +0 -2641
- package/docs/next/design.md +0 -2554
- package/docs/next/durable-observers/book.md +0 -432
- package/docs/next/durable-observers/index.html +0 -517
- package/docs/next/guide-plugins-hosts/book.md +0 -607
- package/docs/next/guide-plugins-hosts/index.html +0 -652
- package/docs/next/http-workers/book.md +0 -378
- package/docs/next/http-workers/index.html +0 -515
- package/docs/next/layer-1.md +0 -311
- package/docs/next/layer-2.md +0 -216
- package/docs/next/plugin-model/book.md +0 -186
- package/docs/next/plugin-model/index.html +0 -310
- package/docs/next/plugin-primer/book.md +0 -273
- package/docs/next/plugin-primer/index.html +0 -430
- package/docs/next/slice-1.md +0 -236
- package/docs/next/slice-10.md +0 -285
- package/docs/next/slice-11.md +0 -93
- package/docs/next/slice-2.md +0 -174
- package/docs/next/slice-3a.md +0 -296
- package/docs/next/slice-3b.md +0 -197
- package/docs/next/slice-4a.md +0 -418
- package/docs/next/slice-4b.md +0 -208
- package/docs/next/slice-6a.md +0 -676
- package/docs/next/slice-6b.md +0 -332
- package/docs/next/slice-7b/book.md +0 -608
- package/docs/next/slice-7b/index.html +0 -842
- package/docs/next/slice-7b.md +0 -255
- package/docs/next/slice-7c.md +0 -165
- package/docs/next/slices.md +0 -230
- package/docs/next/store/book.md +0 -665
- package/docs/next/store/index.html +0 -861
- package/docs/next/store/walkthrough.md +0 -193
- package/docs/spec.md +0 -288
- package/docs/tutorial.md +0 -932
- /package/dist/{next/contracts → contracts}/accepts.js +0 -0
- /package/dist/{next/contracts → contracts}/contract.js +0 -0
- /package/dist/{next/contracts → contracts}/declare.d.ts +0 -0
- /package/dist/{next/contracts → contracts}/declare.js +0 -0
- /package/dist/{next/contracts → contracts}/evolve.d.ts +0 -0
- /package/dist/{next/contracts → contracts}/evolve.js +0 -0
- /package/dist/{next/contracts → contracts}/fingerprint.js +0 -0
- /package/dist/{next/contracts → contracts}/history.d.ts +0 -0
- /package/dist/{next/contracts → contracts}/history.js +0 -0
- /package/dist/{next/contracts → contracts}/host-kind.d.ts +0 -0
- /package/dist/{next/contracts → contracts}/host-kind.js +0 -0
- /package/dist/{next/contracts → contracts}/index.d.ts +0 -0
- /package/dist/{next/contracts → contracts}/index.js +0 -0
- /package/dist/{next/contracts → contracts}/internal.d.ts +0 -0
- /package/dist/{next/contracts → contracts}/internal.js +0 -0
- /package/dist/{next/contracts → contracts}/names.d.ts +0 -0
- /package/dist/{next/contracts → contracts}/names.js +0 -0
- /package/dist/{next/contracts → contracts}/params.js +0 -0
- /package/dist/{next/contracts → contracts}/schema.d.ts +0 -0
- /package/dist/{next/contracts → contracts}/schema.js +0 -0
- /package/dist/{next/data → data}/args.js +0 -0
- /package/dist/{next/data → data}/failure.d.ts +0 -0
- /package/dist/{next/data → data}/params.js +0 -0
- /package/dist/{next/documents → documents}/address-source.js +0 -0
- /package/dist/{next/documents → documents}/fence.d.ts +0 -0
- /package/dist/{next/documents → documents}/fence.js +0 -0
- /package/dist/{next/documents → documents}/handles.js +0 -0
- /package/dist/{next/documents → documents}/index.d.ts +0 -0
- /package/dist/{next/documents → documents}/index.js +0 -0
- /package/dist/{next/documents → documents}/internal.js +0 -0
- /package/dist/{next/documents → documents}/line.d.ts +0 -0
- /package/dist/{next/documents → documents}/line.js +0 -0
- /package/dist/{next/documents → documents}/residency.js +0 -0
- /package/dist/{next/host → host}/adapted.js +0 -0
- /package/dist/{next/host → host}/backoff.d.ts +0 -0
- /package/dist/{next/host → host}/backoff.js +0 -0
- /package/dist/{next/host → host}/deadline.d.ts +0 -0
- /package/dist/{next/host → host}/deadline.js +0 -0
- /package/dist/{next/host → host}/dependencies.d.ts +0 -0
- /package/dist/{next/host → host}/dependencies.js +0 -0
- /package/dist/{next/host → host}/destination.js +0 -0
- /package/dist/{next/host → host}/facet.js +0 -0
- /package/dist/{next/host → host}/follow.js +0 -0
- /package/dist/{next/host → host}/index.js +0 -0
- /package/dist/{next/host → host}/members.js +0 -0
- /package/dist/{next/host → host}/parked.js +0 -0
- /package/dist/{next/host → host}/presence.js +0 -0
- /package/dist/{next/host → host}/retry-on.d.ts +0 -0
- /package/dist/{next/host → host}/retry-on.js +0 -0
- /package/dist/{next/host → host}/revocation.js +0 -0
- /package/dist/{next/host → host}/sleep.js +0 -0
- /package/dist/{next/host → host}/uuid.d.ts +0 -0
- /package/dist/{next/host → host}/uuid.js +0 -0
- /package/dist/{next/jobs → jobs}/definition.d.ts +0 -0
- /package/dist/{next/jobs → jobs}/definition.js +0 -0
- /package/dist/{next/jobs → jobs}/index.d.ts +0 -0
- /package/dist/{next/jobs → jobs}/index.js +0 -0
- /package/dist/{next/jobs → jobs}/internal.d.ts +0 -0
- /package/dist/{next/jobs → jobs}/internal.js +0 -0
- /package/dist/{next/jobs → jobs}/persisted.js +0 -0
- /package/dist/{next/jobs → jobs}/running.js +0 -0
- /package/dist/{next/jobs → jobs}/stored.js +0 -0
- /package/dist/{next/link → link}/binary.d.ts +0 -0
- /package/dist/{next/link → link}/errors.d.ts +0 -0
- /package/dist/{next/link → link}/errors.js +0 -0
- /package/dist/{next/link → link}/index.d.ts +0 -0
- /package/dist/{next/link → link}/index.js +0 -0
- /package/dist/{next/link → link}/internal.d.ts +0 -0
- /package/dist/{next/link → link}/internal.js +0 -0
- /package/dist/{next/link → link}/ipc.d.ts +0 -0
- /package/dist/{next/link → link}/ipc.js +0 -0
- /package/dist/{next/link → link}/link.d.ts +0 -0
- /package/dist/{next/link → link}/link.js +0 -0
- /package/dist/{next/link → link}/text.d.ts +0 -0
- /package/dist/{next/link → link}/values.d.ts +0 -0
- /package/dist/{next/link → link}/websocket.d.ts +0 -0
- /package/dist/{next/link → link}/websocket.js +0 -0
- /package/dist/{next-node → node}/http/admission.d.ts +0 -0
- /package/dist/{next-node → node}/http/admission.js +0 -0
- /package/dist/{next-node → node}/http/file.d.ts +0 -0
- /package/dist/{next-node → node}/http/file.js +0 -0
- /package/dist/{next-node → node}/http/headers.d.ts +0 -0
- /package/dist/{next-node → node}/http/incoming.d.ts +0 -0
- /package/dist/{next-node → node}/http/incoming.js +0 -0
- /package/dist/{next-node → node}/http/node.d.ts +0 -0
- /package/dist/{next-node → node}/http/node.js +0 -0
- /package/dist/{next-node → node}/http/response.js +0 -0
- /package/dist/{next-node → node}/plugins/stack.d.ts +0 -0
- /package/dist/{next-node → node}/plugins/stack.js +0 -0
- /package/dist/{next/registries → registries}/contribution.d.ts +0 -0
- /package/dist/{next/registries → registries}/contribution.js +0 -0
- /package/dist/{next/registries → registries}/entries.d.ts +0 -0
- /package/dist/{next/registries → registries}/entries.js +0 -0
- /package/dist/{next/registries → registries}/index.d.ts +0 -0
- /package/dist/{next/registries → registries}/index.js +0 -0
- /package/dist/{next/registries → registries}/internal.d.ts +0 -0
- /package/dist/{next/registries → registries}/internal.js +0 -0
- /package/dist/{next/registries → registries}/registry.js +0 -0
- /package/dist/{next/registries → registries}/value.d.ts +0 -0
- /package/dist/{next/remote → remote}/calls.d.ts +0 -0
- /package/dist/{next/remote → remote}/calls.js +0 -0
- /package/dist/{next/remote → remote}/internal.d.ts +0 -0
- /package/dist/{next/remote → remote}/internal.js +0 -0
- /package/dist/{next/remote → remote}/path.d.ts +0 -0
- /package/dist/{next/remote → remote}/path.js +0 -0
- /package/dist/{next/state → state}/index.js +0 -0
- /package/dist/{next/state → state}/internal.d.ts +0 -0
- /package/dist/{next/state → state}/internal.js +0 -0
- /package/dist/{next/state → state}/writable.js +0 -0
- /package/dist/{next/store → store}/adapter.js +0 -0
- /package/dist/{next/store → store}/allocator.d.ts +0 -0
- /package/dist/{next/store → store}/allocator.js +0 -0
- /package/dist/{next/store → store}/applier.d.ts +0 -0
- /package/dist/{next/store → store}/applier.js +0 -0
- /package/dist/{next/store → store}/apply-batch.js +0 -0
- /package/dist/{next/store → store}/backend.js +0 -0
- /package/dist/{next/store → store}/catalog.js +0 -0
- /package/dist/{next/store → store}/claims.d.ts +0 -0
- /package/dist/{next/store → store}/claims.js +0 -0
- /package/dist/{next/store → store}/columns.d.ts +0 -0
- /package/dist/{next/store → store}/columns.js +0 -0
- /package/dist/{next/store → store}/evaluate.js +0 -0
- /package/dist/{next/store → store}/expression.js +0 -0
- /package/dist/{next/store → store}/index.d.ts +0 -0
- /package/dist/{next/store → store}/index.js +0 -0
- /package/dist/{next/store → store}/jsonl.d.ts +0 -0
- /package/dist/{next/store → store}/jsonl.js +0 -0
- /package/dist/{next/store → store}/outbox.js +0 -0
- /package/dist/{next/store → store}/query.js +0 -0
- /package/dist/{next/store → store}/refusal.d.ts +0 -0
- /package/dist/{next/store → store}/refusal.js +0 -0
- /package/dist/{next/store → store}/rows.js +0 -0
- /package/dist/{next/store → store}/sql.js +0 -0
- /package/dist/{next/store → store}/table-changes.js +0 -0
- /package/dist/{next/store → store}/table-evolve.d.ts +0 -0
- /package/dist/{next/store → store}/table-evolve.js +0 -0
- /package/dist/{next/store → store}/table-history.d.ts +0 -0
- /package/dist/{next/store → store}/table-history.js +0 -0
- /package/dist/{next/store → store}/table-writes.d.ts +0 -0
- /package/dist/{next/store → store}/table.js +0 -0
- /package/dist/{next/store → store}/text.d.ts +0 -0
- /package/dist/{next/store → store}/text.js +0 -0
- /package/dist/{next/store → store}/writes.d.ts +0 -0
- /package/dist/{next/store → store}/writes.js +0 -0
- /package/docs/{next/dependencies → dependencies}/model.md +0 -0
- /package/docs/{next/flow-control → flow-control}/book.md +0 -0
- /package/docs/{next/flow-control → flow-control}/fold/index.html +0 -0
- /package/docs/{next/flow-control → flow-control}/index.html +0 -0
- /package/docs/{next/flow-control → flow-control}/window/index.html +0 -0
- /package/docs/{next/slice-4.md → slice-4.md} +0 -0
- /package/docs/{next/slice-5.md → slice-5.md} +0 -0
- /package/docs/{next/slice-7a.md → slice-7a.md} +0 -0
- /package/docs/{next/slice-8.md → slice-8.md} +0 -0
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
// The keys a reference holds (slice 6a §12; decision "References are the only indirection" (4)): its key watches and
|
|
2
|
-
// its factory's pins (`at(key)`) of its object's keyed members, one source per member and key shared by them, pinned on
|
|
3
|
-
// the object's live instance (loaded, mapped to the reference's version). While the object still follows the instance a
|
|
4
|
-
// key is pinned on (a swap's old instance, a restart's drain, a live failure's admitted commits) the key follows it on,
|
|
5
|
-
// as members do. When the reference moves to a new instance or a new object it pins the key there again, keeping the
|
|
6
|
-
// last value until that pin loads, then one frame; while it points at nothing the key keeps its last value (one
|
|
7
|
-
// `failed` call when its target failed, none while it loads).
|
|
8
|
-
import { awaitWithContext, BACKGROUND_CONTEXT } from "../../context/index.js";
|
|
9
|
-
import { ChordError } from "../data/index.js";
|
|
10
|
-
import { asChordError } from "../data/internal.js";
|
|
11
|
-
import { ReferenceSource } from "./reference-source.js";
|
|
12
|
-
/** A reference's held keys; every instance pin below them released exactly once. */
|
|
13
|
-
export class ReferenceKeys {
|
|
14
|
-
#holder;
|
|
15
|
-
#entries = new Map();
|
|
16
|
-
constructor(holder) {
|
|
17
|
-
this.#holder = holder;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Holds `key` of keyed member `member`: its source once pinned and loaded on the live instance; `context` ends only
|
|
21
|
-
* this caller's wait. `release` (once) lets it go with its last holder.
|
|
22
|
-
*/
|
|
23
|
-
async hold(member, key, context) {
|
|
24
|
-
const entry = this.#entry(member, key);
|
|
25
|
-
entry.holders++;
|
|
26
|
-
let released = false;
|
|
27
|
-
const release = () => {
|
|
28
|
-
if (released)
|
|
29
|
-
return;
|
|
30
|
-
released = true;
|
|
31
|
-
this.#release(entry);
|
|
32
|
-
};
|
|
33
|
-
try {
|
|
34
|
-
if (entry.pin === undefined)
|
|
35
|
-
await awaitWithContext(this.#pin(entry), context);
|
|
36
|
-
}
|
|
37
|
-
catch (error) {
|
|
38
|
-
release();
|
|
39
|
-
throw error;
|
|
40
|
-
}
|
|
41
|
-
return { source: entry.source, release };
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Its reference's target changed, inside a batch: a key pins again on a new live instance (last value meanwhile);
|
|
45
|
-
* while the target is not live it follows the instance it is pinned on as long as the object does (a commit admitted
|
|
46
|
-
* there still shows), then keeps its last value (one `failed` call for a failure) and its pin goes.
|
|
47
|
-
*/
|
|
48
|
-
follow(context) {
|
|
49
|
-
const target = this.#holder.target();
|
|
50
|
-
const instance = target?.instance;
|
|
51
|
-
const attachable = target?.attachable;
|
|
52
|
-
for (const byKey of this.#entries.values()) {
|
|
53
|
-
for (const entry of byKey.values()) {
|
|
54
|
-
if (instance !== undefined) {
|
|
55
|
-
// A failed load shows on the key (`failed`); nobody waits on this pin.
|
|
56
|
-
if (entry.instance !== instance)
|
|
57
|
-
this.#pin(entry).catch(() => { });
|
|
58
|
-
continue;
|
|
59
|
-
}
|
|
60
|
-
if (attachable !== undefined && entry.instance === attachable)
|
|
61
|
-
continue;
|
|
62
|
-
const state = target?.state;
|
|
63
|
-
if (state?.kind === "failed")
|
|
64
|
-
entry.source.fail(state.cause.error, context);
|
|
65
|
-
else
|
|
66
|
-
entry.source.hold();
|
|
67
|
-
this.#unpin(entry);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
/** Its reference left its object (`error`: why it waits), inside a batch: keys keep their last values, pins go. */
|
|
72
|
-
fail(error, context) {
|
|
73
|
-
for (const byKey of this.#entries.values()) {
|
|
74
|
-
for (const entry of byKey.values()) {
|
|
75
|
-
entry.source.fail(error, context);
|
|
76
|
-
this.#unpin(entry);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
/** Its reference ended, inside a batch: every key ends with `error` and releases its pin. */
|
|
81
|
-
end(error) {
|
|
82
|
-
for (const byKey of this.#entries.values()) {
|
|
83
|
-
for (const entry of byKey.values()) {
|
|
84
|
-
entry.source.end(error);
|
|
85
|
-
this.#unpin(entry);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
this.#entries.clear();
|
|
89
|
-
}
|
|
90
|
-
/** The entry of `member` and `key`, made by the first holder. */
|
|
91
|
-
#entry(member, key) {
|
|
92
|
-
let byKey = this.#entries.get(member);
|
|
93
|
-
if (byKey === undefined) {
|
|
94
|
-
byKey = new Map();
|
|
95
|
-
this.#entries.set(member, byKey);
|
|
96
|
-
}
|
|
97
|
-
let entry = byKey.get(key);
|
|
98
|
-
if (entry === undefined) {
|
|
99
|
-
const source = new ReferenceSource(this.#holder.batch, this.#holder);
|
|
100
|
-
entry = { member, key, source, holders: 0, instance: undefined, pin: undefined, loading: undefined };
|
|
101
|
-
byKey.set(key, entry);
|
|
102
|
-
}
|
|
103
|
-
return entry;
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Pins `entry`'s key on the target's live instance (once per instance): the source keeps its last value meanwhile,
|
|
107
|
-
* follows the pin when it lands (one frame) and releases the previous one; a failed load shows as its failure.
|
|
108
|
-
*/
|
|
109
|
-
#pin(entry) {
|
|
110
|
-
const { batch, version } = this.#holder;
|
|
111
|
-
const target = this.#holder.target();
|
|
112
|
-
const instance = target?.instance;
|
|
113
|
-
if (target === undefined || instance === undefined)
|
|
114
|
-
return Promise.reject(this.#holder.none());
|
|
115
|
-
if (entry.instance === instance && entry.loading !== undefined)
|
|
116
|
-
return entry.loading;
|
|
117
|
-
entry.instance = instance;
|
|
118
|
-
// No frames from the old instance while the new one loads the key.
|
|
119
|
-
entry.source.hold();
|
|
120
|
-
const loading = target.pinKey(entry.member, entry.key, version, BACKGROUND_CONTEXT).then((pin) => {
|
|
121
|
-
if (entry.instance !== instance || entry.holders === 0) {
|
|
122
|
-
pin.release();
|
|
123
|
-
return;
|
|
124
|
-
}
|
|
125
|
-
const previous = entry.pin;
|
|
126
|
-
entry.pin = pin;
|
|
127
|
-
batch.within(() => entry.source.bind(pin.source), BACKGROUND_CONTEXT);
|
|
128
|
-
previous?.release();
|
|
129
|
-
}, (error) => {
|
|
130
|
-
if (entry.instance === instance) {
|
|
131
|
-
entry.instance = undefined;
|
|
132
|
-
entry.loading = undefined;
|
|
133
|
-
const failure = asChordError(error, target.label);
|
|
134
|
-
batch.within(() => entry.source.fail(failure, BACKGROUND_CONTEXT), BACKGROUND_CONTEXT);
|
|
135
|
-
}
|
|
136
|
-
throw error;
|
|
137
|
-
});
|
|
138
|
-
entry.loading = loading;
|
|
139
|
-
return loading;
|
|
140
|
-
}
|
|
141
|
-
/** One holder of `entry` left; the last drops it and its pin. */
|
|
142
|
-
#release(entry) {
|
|
143
|
-
if (--entry.holders > 0)
|
|
144
|
-
return;
|
|
145
|
-
const byKey = this.#entries.get(entry.member);
|
|
146
|
-
if (byKey?.get(entry.key) !== entry)
|
|
147
|
-
return;
|
|
148
|
-
byKey.delete(entry.key);
|
|
149
|
-
if (byKey.size === 0)
|
|
150
|
-
this.#entries.delete(entry.member);
|
|
151
|
-
// Its source ends: it leaves the document, whose other holders would keep it and its reference (Astra, GC).
|
|
152
|
-
const released = new ChordError({ code: "released", message: `${entry.member}.at(${entry.key}): released` });
|
|
153
|
-
const end = () => entry.source.end(released);
|
|
154
|
-
if (entry.source.inUse)
|
|
155
|
-
this.#holder.batch.within(end, BACKGROUND_CONTEXT);
|
|
156
|
-
else
|
|
157
|
-
end();
|
|
158
|
-
this.#unpin(entry);
|
|
159
|
-
}
|
|
160
|
-
/** Releases the pin `entry` follows or awaits: it points at nothing until pinned again. */
|
|
161
|
-
#unpin(entry) {
|
|
162
|
-
entry.pin?.release();
|
|
163
|
-
entry.pin = undefined;
|
|
164
|
-
entry.instance = undefined;
|
|
165
|
-
entry.loading = undefined;
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
//# sourceMappingURL=reference-keys.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reference-keys.js","sourceRoot":"","sources":["../../../src/next/host/reference-keys.ts"],"names":[],"mappings":"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","sourcesContent":["// The keys a reference holds (slice 6a §12; decision \"References are the only indirection\" (4)): its key watches and\n// its factory's pins (`at(key)`) of its object's keyed members, one source per member and key shared by them, pinned on\n// the object's live instance (loaded, mapped to the reference's version). While the object still follows the instance a\n// key is pinned on (a swap's old instance, a restart's drain, a live failure's admitted commits) the key follows it on,\n// as members do. When the reference moves to a new instance or a new object it pins the key there again, keeping the\n// last value until that pin loads, then one frame; while it points at nothing the key keeps its last value (one\n// `failed` call when its target failed, none while it loads).\n\nimport { awaitWithContext, BACKGROUND_CONTEXT, type Context } from \"../../context/index.ts\";\nimport { ChordError } from \"../data/index.ts\";\nimport { asChordError } from \"../data/internal.ts\";\nimport type { Batch } from \"../state/internal.ts\";\nimport type { PinnedKey } from \"./attempt.ts\";\nimport type { Target } from \"./reference.ts\";\nimport { ReferenceSource } from \"./reference-source.ts\";\n\n/** What a reference's keys need of it. */\nexport interface KeyHolder {\n\treadonly batch: Batch;\n\t/** Its contract version: keys are mapped to it. */\n\treadonly version: number;\n\t/** The object it is bound to; `undefined` while unbound. */\n\ttarget(): Target | undefined;\n\t/** What a read throws while a key never had a value. */\n\tnone(): ChordError;\n}\n\n/** One key of one keyed member held by the reference: its source, its users, and the instance pin it follows. */\ntype KeyEntry = {\n\treadonly member: string;\n\treadonly key: string;\n\treadonly source: ReferenceSource;\n\tholders: number;\n\t/** The live instance its pin is (or is being) taken on; `undefined` while it points at nothing. */\n\tinstance: unknown;\n\t/** The pin it follows. */\n\tpin: PinnedKey | undefined;\n\t/** The pin in flight, settled once the source follows it. */\n\tloading: Promise<void> | undefined;\n};\n\n/** A reference's held keys; every instance pin below them released exactly once. */\nexport class ReferenceKeys {\n\treadonly #holder: KeyHolder;\n\treadonly #entries = new Map<string, Map<string, KeyEntry>>();\n\n\tconstructor(holder: KeyHolder) {\n\t\tthis.#holder = holder;\n\t}\n\n\t/**\n\t * Holds `key` of keyed member `member`: its source once pinned and loaded on the live instance; `context` ends only\n\t * this caller's wait. `release` (once) lets it go with its last holder.\n\t */\n\tasync hold(member: string, key: string, context: Context): Promise<PinnedKey> {\n\t\tconst entry = this.#entry(member, key);\n\t\tentry.holders++;\n\t\tlet released = false;\n\t\tconst release = (): void => {\n\t\t\tif (released) return;\n\t\t\treleased = true;\n\t\t\tthis.#release(entry);\n\t\t};\n\t\ttry {\n\t\t\tif (entry.pin === undefined) await awaitWithContext(this.#pin(entry), context);\n\t\t} catch (error) {\n\t\t\trelease();\n\t\t\tthrow error;\n\t\t}\n\t\treturn { source: entry.source, release };\n\t}\n\n\t/**\n\t * Its reference's target changed, inside a batch: a key pins again on a new live instance (last value meanwhile);\n\t * while the target is not live it follows the instance it is pinned on as long as the object does (a commit admitted\n\t * there still shows), then keeps its last value (one `failed` call for a failure) and its pin goes.\n\t */\n\tfollow(context: Context): void {\n\t\tconst target = this.#holder.target();\n\t\tconst instance = target?.instance;\n\t\tconst attachable = target?.attachable;\n\t\tfor (const byKey of this.#entries.values()) {\n\t\t\tfor (const entry of byKey.values()) {\n\t\t\t\tif (instance !== undefined) {\n\t\t\t\t\t// A failed load shows on the key (`failed`); nobody waits on this pin.\n\t\t\t\t\tif (entry.instance !== instance) this.#pin(entry).catch(() => {});\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (attachable !== undefined && entry.instance === attachable) continue;\n\t\t\t\tconst state = target?.state;\n\t\t\t\tif (state?.kind === \"failed\") entry.source.fail(state.cause.error, context);\n\t\t\t\telse entry.source.hold();\n\t\t\t\tthis.#unpin(entry);\n\t\t\t}\n\t\t}\n\t}\n\n\t/** Its reference left its object (`error`: why it waits), inside a batch: keys keep their last values, pins go. */\n\tfail(error: ChordError, context: Context): void {\n\t\tfor (const byKey of this.#entries.values()) {\n\t\t\tfor (const entry of byKey.values()) {\n\t\t\t\tentry.source.fail(error, context);\n\t\t\t\tthis.#unpin(entry);\n\t\t\t}\n\t\t}\n\t}\n\n\t/** Its reference ended, inside a batch: every key ends with `error` and releases its pin. */\n\tend(error: ChordError): void {\n\t\tfor (const byKey of this.#entries.values()) {\n\t\t\tfor (const entry of byKey.values()) {\n\t\t\t\tentry.source.end(error);\n\t\t\t\tthis.#unpin(entry);\n\t\t\t}\n\t\t}\n\t\tthis.#entries.clear();\n\t}\n\n\t/** The entry of `member` and `key`, made by the first holder. */\n\t#entry(member: string, key: string): KeyEntry {\n\t\tlet byKey = this.#entries.get(member);\n\t\tif (byKey === undefined) {\n\t\t\tbyKey = new Map();\n\t\t\tthis.#entries.set(member, byKey);\n\t\t}\n\t\tlet entry = byKey.get(key);\n\t\tif (entry === undefined) {\n\t\t\tconst source = new ReferenceSource(this.#holder.batch, this.#holder);\n\t\t\tentry = { member, key, source, holders: 0, instance: undefined, pin: undefined, loading: undefined };\n\t\t\tbyKey.set(key, entry);\n\t\t}\n\t\treturn entry;\n\t}\n\n\t/**\n\t * Pins `entry`'s key on the target's live instance (once per instance): the source keeps its last value meanwhile,\n\t * follows the pin when it lands (one frame) and releases the previous one; a failed load shows as its failure.\n\t */\n\t#pin(entry: KeyEntry): Promise<void> {\n\t\tconst { batch, version } = this.#holder;\n\t\tconst target = this.#holder.target();\n\t\tconst instance = target?.instance;\n\t\tif (target === undefined || instance === undefined) return Promise.reject(this.#holder.none());\n\t\tif (entry.instance === instance && entry.loading !== undefined) return entry.loading;\n\t\tentry.instance = instance;\n\t\t// No frames from the old instance while the new one loads the key.\n\t\tentry.source.hold();\n\t\tconst loading = target.pinKey(entry.member, entry.key, version, BACKGROUND_CONTEXT).then(\n\t\t\t(pin) => {\n\t\t\t\tif (entry.instance !== instance || entry.holders === 0) {\n\t\t\t\t\tpin.release();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst previous = entry.pin;\n\t\t\t\tentry.pin = pin;\n\t\t\t\tbatch.within(() => entry.source.bind(pin.source), BACKGROUND_CONTEXT);\n\t\t\t\tprevious?.release();\n\t\t\t},\n\t\t\t(error: unknown) => {\n\t\t\t\tif (entry.instance === instance) {\n\t\t\t\t\tentry.instance = undefined;\n\t\t\t\t\tentry.loading = undefined;\n\t\t\t\t\tconst failure = asChordError(error, target.label);\n\t\t\t\t\tbatch.within(() => entry.source.fail(failure, BACKGROUND_CONTEXT), BACKGROUND_CONTEXT);\n\t\t\t\t}\n\t\t\t\tthrow error;\n\t\t\t},\n\t\t);\n\t\tentry.loading = loading;\n\t\treturn loading;\n\t}\n\n\t/** One holder of `entry` left; the last drops it and its pin. */\n\t#release(entry: KeyEntry): void {\n\t\tif (--entry.holders > 0) return;\n\t\tconst byKey = this.#entries.get(entry.member);\n\t\tif (byKey?.get(entry.key) !== entry) return;\n\t\tbyKey.delete(entry.key);\n\t\tif (byKey.size === 0) this.#entries.delete(entry.member);\n\t\t// Its source ends: it leaves the document, whose other holders would keep it and its reference (Astra, GC).\n\t\tconst released = new ChordError({ code: \"released\", message: `${entry.member}.at(${entry.key}): released` });\n\t\tconst end = (): void => entry.source.end(released);\n\t\tif (entry.source.inUse) this.#holder.batch.within(end, BACKGROUND_CONTEXT);\n\t\telse end();\n\t\tthis.#unpin(entry);\n\t}\n\n\t/** Releases the pin `entry` follows or awaits: it points at nothing until pinned again. */\n\t#unpin(entry: KeyEntry): void {\n\t\tentry.pin?.release();\n\t\tentry.pin = undefined;\n\t\tentry.instance = undefined;\n\t\tentry.loading = undefined;\n\t}\n}\n"]}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import type { Context } from "../../context/index.ts";
|
|
2
|
-
import type { JsonValue } from "../../json.ts";
|
|
3
|
-
import { Watch } from "../../watch.ts";
|
|
4
|
-
import type { ChordError } from "../data/index.ts";
|
|
5
|
-
import { type Batch, type Dependent, type DeriveSource, Source, type Subscriber, type WatchStart } from "../state/internal.ts";
|
|
6
|
-
/** A reference owning its sources: what a read of one that never had a value throws. */
|
|
7
|
-
export interface SourceOwner {
|
|
8
|
-
none(): ChordError;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* One member (or key) of one reference. Bound, it is a dependent of the instance's member (its own dependents are
|
|
12
|
-
* marked with it); its watches and subscribers subscribe to that member itself, so the member's frames reach them as
|
|
13
|
-
* they are, and a derive member stays lazy while nothing follows it; holding or moving moves them.
|
|
14
|
-
*/
|
|
15
|
-
export declare class ReferenceSource extends Source implements Dependent {
|
|
16
|
-
#private;
|
|
17
|
-
constructor(batch: Batch, owner: SourceOwner);
|
|
18
|
-
/** Whether it never had a value (a watch waits for its reference's values first). */
|
|
19
|
-
get unbound(): boolean;
|
|
20
|
-
get value(): JsonValue;
|
|
21
|
-
/** What a new watch starts at: the bound member's start, the held value (after its failure), or the failure. */
|
|
22
|
-
start(): WatchStart;
|
|
23
|
-
/**
|
|
24
|
-
* A watch subscribed to the bound member itself (as `Source.openWatch` starts one: on a failed member at its last
|
|
25
|
-
* good value, the failure first).
|
|
26
|
-
*/
|
|
27
|
-
openWatch(context: Context): Watch<JsonValue>;
|
|
28
|
-
/** Whether anything follows it: a watch, a subscriber or a derive (moving or ending it then needs a batch). */
|
|
29
|
-
get inUse(): boolean;
|
|
30
|
-
/** Whether a watch or a subscriber follows it (through the bound member). */
|
|
31
|
-
get watched(): boolean;
|
|
32
|
-
/** Feeds `subscriber` the bound member's frames (it subscribes there) and the moves' frames. */
|
|
33
|
-
subscribe(subscriber: Subscriber): void;
|
|
34
|
-
/** As `Source.unsubscribe`. */
|
|
35
|
-
unsubscribe(subscriber: Subscriber): void;
|
|
36
|
-
/** The bound member changed: its dependents are marked (its frames reach the subscribers directly). */
|
|
37
|
-
invalidate(): void;
|
|
38
|
-
/** The bound member's document was retired: its dependents carry the flag on. */
|
|
39
|
-
sourceRetired(visited: Set<Dependent>): void;
|
|
40
|
-
/**
|
|
41
|
-
* Follows `source`, an instance's member, inside a batch: watches get one frame from the last value (a full one
|
|
42
|
-
* after a failure); derives downstream are marked and recompute, a failed one included (self-healing).
|
|
43
|
-
*/
|
|
44
|
-
bind(source: DeriveSource): void;
|
|
45
|
-
/** Its target loads (a restart, a retry, a new object not live yet): it keeps its last value, and tells nothing. */
|
|
46
|
-
hold(): void;
|
|
47
|
-
/**
|
|
48
|
-
* Its target failed (`error`: its cause's, a refused version's, a removed type's), inside a batch: it keeps its last
|
|
49
|
-
* value, its watches and subscribers get one failure call (once per failure) and stay open.
|
|
50
|
-
*/
|
|
51
|
-
fail(error: ChordError, context: Context): void;
|
|
52
|
-
/**
|
|
53
|
-
* Its target's live variant lacks the member, inside a batch: reads throw `error`; watches and subscribers get one
|
|
54
|
-
* failure call and stay open (a later instance may bring the member back, as `[["r", value]]`).
|
|
55
|
-
*/
|
|
56
|
-
vanish(error: ChordError, context: Context): void;
|
|
57
|
-
/**
|
|
58
|
-
* Its reference ended, inside a batch: reads throw `error`, watches end `ended`, and derives over it are marked
|
|
59
|
-
* (their next read throws it, no cached value stays).
|
|
60
|
-
*/
|
|
61
|
-
end(error: ChordError): void;
|
|
62
|
-
/** Delivers a move's frame: the diff from the watches' value to the new member's. */
|
|
63
|
-
deliver(context: Context): void;
|
|
64
|
-
}
|
|
65
|
-
//# sourceMappingURL=reference-source.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reference-source.d.ts","sourceRoot":"","sources":["../../../src/next/host/reference-source.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAiC,MAAM,gBAAgB,CAAC;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EACN,KAAK,KAAK,EACV,KAAK,SAAS,EACd,KAAK,YAAY,EAEjB,MAAM,EACN,KAAK,UAAU,EACf,KAAK,UAAU,EACf,MAAM,sBAAsB,CAAC;AAgB9B,wFAAwF;AACxF,MAAM,WAAW,WAAW;IAC3B,IAAI,IAAI,UAAU,CAAC;CACnB;AAOD;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,MAAO,YAAW,SAAS;;IAY/D,YAAY,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAG3C;IAED,qFAAqF;IACrF,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,KAAK,IAAI,SAAS,CAarB;IAED,gHAAgH;IAChH,KAAK,IAAI,UAAU,CAgBlB;IAED;;;OAGG;IACH,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAU5C;IAED,+GAA+G;IAC/G,IAAI,KAAK,IAAI,OAAO,CAEnB;IAED,6EAA6E;IAC7E,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,gGAAgG;IAChG,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAKtC;IAED,+BAA+B;IAC/B,WAAW,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAIxC;IAED,uGAAuG;IACvG,UAAU,IAAI,IAAI,CAEjB;IAED,iFAAiF;IACjF,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,IAAI,CAE3C;IAED;;;OAGG;IACH,IAAI,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAS/B;IAED,oHAAoH;IACpH,IAAI,IAAI,IAAI,CAQX;IAED;;;OAGG;IACH,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAa9C;IAED;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAQhD;IAED;;;OAGG;IACH,GAAG,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAS3B;IAED,qFAAqF;IACrF,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgB9B;CAyDD"}
|
|
@@ -1,285 +0,0 @@
|
|
|
1
|
-
// A reference's member as consumers follow it (decision "References are the only indirection", §7): a consumer's
|
|
2
|
-
// watches and derives over `ref.member` (or a key of a keyed member) attach here, and this passes them straight through
|
|
3
|
-
// to the object instance's own document or derive (its watches and subscribers subscribe there: no extra hop on
|
|
4
|
-
// commits, the commit's value and ops by reference). When the reference's target moves to a new instance (or a new
|
|
5
|
-
// object of its identity), it moves them and sends one frame, a diff from the last value; while it points at nothing it
|
|
6
|
-
// keeps the last value (a pointer, no copy), with one `failed` call when its target failed (none while it loads).
|
|
7
|
-
import { diffRevisions } from "../../delta/index.js";
|
|
8
|
-
import { Watch } from "../../watch.js";
|
|
9
|
-
import { handedOut, Source, } from "../state/internal.js";
|
|
10
|
-
const ENDED = { kind: "ended" };
|
|
11
|
-
/** No failure told: a held value's `failure` while its target loads. */
|
|
12
|
-
const NO_FAILURE = undefined;
|
|
13
|
-
/**
|
|
14
|
-
* One member (or key) of one reference. Bound, it is a dependent of the instance's member (its own dependents are
|
|
15
|
-
* marked with it); its watches and subscribers subscribe to that member itself, so the member's frames reach them as
|
|
16
|
-
* they are, and a derive member stays lazy while nothing follows it; holding or moving moves them.
|
|
17
|
-
*/
|
|
18
|
-
export class ReferenceSource extends Source {
|
|
19
|
-
#state = { kind: "unbound" };
|
|
20
|
-
/**
|
|
21
|
-
* Its watches and subscribers, each subscribed to the bound member while bound; held, they get nothing. Made by the
|
|
22
|
-
* first.
|
|
23
|
-
*/
|
|
24
|
-
#passed;
|
|
25
|
-
/** What its watches had at a re-bind (`undefined` for no value: they had a failure), until the re-bind's frame. */
|
|
26
|
-
#framed;
|
|
27
|
-
/** Its reference: what a read throws while it never had a value (its failure, `not_ready`, or `released`). */
|
|
28
|
-
#owner;
|
|
29
|
-
constructor(batch, owner) {
|
|
30
|
-
super(batch);
|
|
31
|
-
this.#owner = owner;
|
|
32
|
-
}
|
|
33
|
-
/** Whether it never had a value (a watch waits for its reference's values first). */
|
|
34
|
-
get unbound() {
|
|
35
|
-
return this.#state.kind === "unbound";
|
|
36
|
-
}
|
|
37
|
-
get value() {
|
|
38
|
-
const state = this.#state;
|
|
39
|
-
switch (state.kind) {
|
|
40
|
-
case "bound":
|
|
41
|
-
return state.source.value;
|
|
42
|
-
case "held":
|
|
43
|
-
// A derive over a failed reference's member computes on its last value too (owner, G2: A).
|
|
44
|
-
return state.value;
|
|
45
|
-
case "unbound":
|
|
46
|
-
throw this.#owner.none();
|
|
47
|
-
default:
|
|
48
|
-
throw state.error;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
/** What a new watch starts at: the bound member's start, the held value (after its failure), or the failure. */
|
|
52
|
-
start() {
|
|
53
|
-
const state = this.#state;
|
|
54
|
-
switch (state.kind) {
|
|
55
|
-
case "bound":
|
|
56
|
-
return state.source instanceof Source ? state.source.start() : { kind: "value", value: state.source.value };
|
|
57
|
-
case "held":
|
|
58
|
-
return state.failure === NO_FAILURE
|
|
59
|
-
? { kind: "value", value: state.value }
|
|
60
|
-
: { kind: "failed", error: state.failure, last: state.value };
|
|
61
|
-
case "failed":
|
|
62
|
-
return { kind: "failed", error: state.error, last: state.last };
|
|
63
|
-
case "unbound":
|
|
64
|
-
throw this.#owner.none();
|
|
65
|
-
case "ended":
|
|
66
|
-
throw state.error;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* A watch subscribed to the bound member itself (as `Source.openWatch` starts one: on a failed member at its last
|
|
71
|
-
* good value, the failure first).
|
|
72
|
-
*/
|
|
73
|
-
openWatch(context) {
|
|
74
|
-
this.batch.assertOutside("watch");
|
|
75
|
-
const start = this.start();
|
|
76
|
-
if (start.kind === "failed" && start.last === undefined)
|
|
77
|
-
throw start.error;
|
|
78
|
-
const value = start.kind === "value" ? start.value : start.last;
|
|
79
|
-
const watch = new Watch(value, () => this.unsubscribe(watch), this.batch.reportListener);
|
|
80
|
-
this.subscribe(watch);
|
|
81
|
-
if (context.abortSignal !== undefined)
|
|
82
|
-
watch.observeAbort(context.abortSignal);
|
|
83
|
-
if (start.kind === "failed")
|
|
84
|
-
watch.fail(handedOut(start.error), context);
|
|
85
|
-
return watch;
|
|
86
|
-
}
|
|
87
|
-
/** Whether anything follows it: a watch, a subscriber or a derive (moving or ending it then needs a batch). */
|
|
88
|
-
get inUse() {
|
|
89
|
-
return this.watched || this.dependents.size > 0;
|
|
90
|
-
}
|
|
91
|
-
/** Whether a watch or a subscriber follows it (through the bound member). */
|
|
92
|
-
get watched() {
|
|
93
|
-
return (this.#passed?.size ?? 0) > 0;
|
|
94
|
-
}
|
|
95
|
-
/** Feeds `subscriber` the bound member's frames (it subscribes there) and the moves' frames. */
|
|
96
|
-
subscribe(subscriber) {
|
|
97
|
-
this.#passed ??= new Set();
|
|
98
|
-
this.#passed.add(subscriber);
|
|
99
|
-
const state = this.#state;
|
|
100
|
-
if (state.kind === "bound" && state.source instanceof Source)
|
|
101
|
-
state.source.subscribe(subscriber);
|
|
102
|
-
}
|
|
103
|
-
/** As `Source.unsubscribe`. */
|
|
104
|
-
unsubscribe(subscriber) {
|
|
105
|
-
this.#passed?.delete(subscriber);
|
|
106
|
-
const state = this.#state;
|
|
107
|
-
if (state.kind === "bound" && state.source instanceof Source)
|
|
108
|
-
state.source.unsubscribe(subscriber);
|
|
109
|
-
}
|
|
110
|
-
/** The bound member changed: its dependents are marked (its frames reach the subscribers directly). */
|
|
111
|
-
invalidate() {
|
|
112
|
-
for (const dependent of this.dependents)
|
|
113
|
-
dependent.invalidate();
|
|
114
|
-
}
|
|
115
|
-
/** The bound member's document was retired: its dependents carry the flag on. */
|
|
116
|
-
sourceRetired(visited) {
|
|
117
|
-
for (const dependent of this.dependents)
|
|
118
|
-
dependent.sourceRetired(visited);
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* Follows `source`, an instance's member, inside a batch: watches get one frame from the last value (a full one
|
|
122
|
-
* after a failure); derives downstream are marked and recompute, a failed one included (self-healing).
|
|
123
|
-
*/
|
|
124
|
-
bind(source) {
|
|
125
|
-
const state = this.#state;
|
|
126
|
-
if (state.kind === "ended" || (state.kind === "bound" && state.source === source))
|
|
127
|
-
return;
|
|
128
|
-
this.#leave();
|
|
129
|
-
if (this.watched)
|
|
130
|
-
this.#framed = { value: this.#shown() };
|
|
131
|
-
this.#state = { kind: "bound", source };
|
|
132
|
-
this.#hook(source);
|
|
133
|
-
// Marks the derives downstream: a failed one recomputes too (self-healing).
|
|
134
|
-
this.changed();
|
|
135
|
-
}
|
|
136
|
-
/** Its target loads (a restart, a retry, a new object not live yet): it keeps its last value, and tells nothing. */
|
|
137
|
-
hold() {
|
|
138
|
-
const state = this.#state;
|
|
139
|
-
if (state.kind === "held") {
|
|
140
|
-
// Its watches had the failure: the next value stays whole (`told`).
|
|
141
|
-
if (state.failure !== NO_FAILURE)
|
|
142
|
-
this.#state = { ...state, failure: NO_FAILURE };
|
|
143
|
-
return;
|
|
144
|
-
}
|
|
145
|
-
if (state.kind === "bound")
|
|
146
|
-
this.#keep(NO_FAILURE);
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* Its target failed (`error`: its cause's, a refused version's, a removed type's), inside a batch: it keeps its last
|
|
150
|
-
* value, its watches and subscribers get one failure call (once per failure) and stay open.
|
|
151
|
-
*/
|
|
152
|
-
fail(error, context) {
|
|
153
|
-
// Kept: its stack made text now, so it keeps none of the failed instance's frames.
|
|
154
|
-
handedOut(error);
|
|
155
|
-
const state = this.#state;
|
|
156
|
-
if (state.kind === "held") {
|
|
157
|
-
if (state.failure !== NO_FAILURE)
|
|
158
|
-
return;
|
|
159
|
-
this.#state = { kind: "held", value: state.value, failure: error, told: true };
|
|
160
|
-
}
|
|
161
|
-
else if (state.kind === "bound") {
|
|
162
|
-
if (!this.#keep(error))
|
|
163
|
-
return;
|
|
164
|
-
}
|
|
165
|
-
else {
|
|
166
|
-
return;
|
|
167
|
-
}
|
|
168
|
-
this.#call({ kind: "failed", error }, context);
|
|
169
|
-
}
|
|
170
|
-
/**
|
|
171
|
-
* Its target's live variant lacks the member, inside a batch: reads throw `error`; watches and subscribers get one
|
|
172
|
-
* failure call and stay open (a later instance may bring the member back, as `[["r", value]]`).
|
|
173
|
-
*/
|
|
174
|
-
vanish(error, context) {
|
|
175
|
-
const state = this.#state;
|
|
176
|
-
if (state.kind === "ended")
|
|
177
|
-
return;
|
|
178
|
-
const last = state.kind === "unbound" ? undefined : this.#lastGood();
|
|
179
|
-
this.#leave();
|
|
180
|
-
this.#state = { kind: "failed", error: handedOut(error), last };
|
|
181
|
-
this.#call({ kind: "failed", error }, context);
|
|
182
|
-
this.changed();
|
|
183
|
-
}
|
|
184
|
-
/**
|
|
185
|
-
* Its reference ended, inside a batch: reads throw `error`, watches end `ended`, and derives over it are marked
|
|
186
|
-
* (their next read throws it, no cached value stays).
|
|
187
|
-
*/
|
|
188
|
-
end(error) {
|
|
189
|
-
this.#leave();
|
|
190
|
-
this.#state = { kind: "ended", error };
|
|
191
|
-
this.#framed = undefined;
|
|
192
|
-
// A copy: an ending watch unsubscribes itself.
|
|
193
|
-
const passed = this.#passed;
|
|
194
|
-
this.#passed = undefined;
|
|
195
|
-
if (passed !== undefined)
|
|
196
|
-
for (const subscriber of [...passed])
|
|
197
|
-
subscriber.end(ENDED);
|
|
198
|
-
for (const dependent of this.dependents)
|
|
199
|
-
dependent.invalidate();
|
|
200
|
-
}
|
|
201
|
-
/** Delivers a move's frame: the diff from the watches' value to the new member's. */
|
|
202
|
-
deliver(context) {
|
|
203
|
-
const framed = this.#framed;
|
|
204
|
-
this.#framed = undefined;
|
|
205
|
-
if (framed === undefined)
|
|
206
|
-
return;
|
|
207
|
-
let after;
|
|
208
|
-
try {
|
|
209
|
-
after = this.value;
|
|
210
|
-
}
|
|
211
|
-
catch (error) {
|
|
212
|
-
if (framed.value !== undefined)
|
|
213
|
-
this.#call({ kind: "failed", error: handedOut(error) }, context);
|
|
214
|
-
return;
|
|
215
|
-
}
|
|
216
|
-
const before = framed.value;
|
|
217
|
-
if (after === before)
|
|
218
|
-
return;
|
|
219
|
-
// After a failure (no value framed): whole, even when unchanged.
|
|
220
|
-
const ops = before === undefined ? [["r", after]] : diffRevisions(before, after);
|
|
221
|
-
if (ops.length > 0)
|
|
222
|
-
this.#call({ kind: "value", value: after, ops, retired: false }, context);
|
|
223
|
-
}
|
|
224
|
-
/**
|
|
225
|
-
* Stops following the bound member and keeps its value (`failure`: the failure it is held with); a member whose value
|
|
226
|
-
* throws becomes failed. Whether it holds a value.
|
|
227
|
-
*/
|
|
228
|
-
#keep(failure) {
|
|
229
|
-
const state = this.#state;
|
|
230
|
-
const start = state.source instanceof Source ? state.source.start() : undefined;
|
|
231
|
-
this.#leave();
|
|
232
|
-
if (start === undefined || start.kind === "value") {
|
|
233
|
-
const value = start === undefined ? state.source.value : start.value;
|
|
234
|
-
this.#state = { kind: "held", value, failure, told: failure !== NO_FAILURE };
|
|
235
|
-
return true;
|
|
236
|
-
}
|
|
237
|
-
this.#state = { kind: "failed", error: handedOut(start.error), last: start.last };
|
|
238
|
-
return false;
|
|
239
|
-
}
|
|
240
|
-
/** A call of its own (a move's frame, a failure) to its watches and subscribers. */
|
|
241
|
-
#call(call, context) {
|
|
242
|
-
if (this.#passed !== undefined)
|
|
243
|
-
for (const subscriber of this.#passed)
|
|
244
|
-
subscriber.advance(call, context);
|
|
245
|
-
}
|
|
246
|
-
/**
|
|
247
|
-
* The value its watches have before a move; `undefined` when they had a failure since it (their next value is whole,
|
|
248
|
-
* `[["r", value]]`, even when unchanged).
|
|
249
|
-
*/
|
|
250
|
-
#shown() {
|
|
251
|
-
const state = this.#state;
|
|
252
|
-
if (state.kind === "unbound" || (state.kind === "held" && state.told))
|
|
253
|
-
return undefined;
|
|
254
|
-
const start = this.start();
|
|
255
|
-
return start.kind === "value" ? start.value : undefined;
|
|
256
|
-
}
|
|
257
|
-
/** Its last good value, which watches opened while it is failed start at; `undefined` when it never had one. */
|
|
258
|
-
#lastGood() {
|
|
259
|
-
const start = this.start();
|
|
260
|
-
return start.kind === "value" ? start.value : start.last;
|
|
261
|
-
}
|
|
262
|
-
/** Starts reading `source`: its changes mark this source's dependents, its frames reach the subscribers. */
|
|
263
|
-
#hook(source) {
|
|
264
|
-
if (!(source instanceof Source))
|
|
265
|
-
return;
|
|
266
|
-
source.dependents.add(this);
|
|
267
|
-
if (this.#passed !== undefined)
|
|
268
|
-
for (const subscriber of this.#passed)
|
|
269
|
-
source.subscribe(subscriber);
|
|
270
|
-
}
|
|
271
|
-
/** Stops following the bound source, when bound: no more marks or frames from it. */
|
|
272
|
-
#leave() {
|
|
273
|
-
const state = this.#state;
|
|
274
|
-
if (state.kind !== "bound")
|
|
275
|
-
return;
|
|
276
|
-
const { source } = state;
|
|
277
|
-
if (!(source instanceof Source))
|
|
278
|
-
return;
|
|
279
|
-
source.dependents.delete(this);
|
|
280
|
-
if (this.#passed !== undefined)
|
|
281
|
-
for (const subscriber of this.#passed)
|
|
282
|
-
source.unsubscribe(subscriber);
|
|
283
|
-
}
|
|
284
|
-
}
|
|
285
|
-
//# sourceMappingURL=reference-source.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reference-source.js","sourceRoot":"","sources":["../../../src/next/host/reference-source.ts"],"names":[],"mappings":"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","sourcesContent":["// A reference's member as consumers follow it (decision \"References are the only indirection\", §7): a consumer's\n// watches and derives over `ref.member` (or a key of a keyed member) attach here, and this passes them straight through\n// to the object instance's own document or derive (its watches and subscribers subscribe there: no extra hop on\n// commits, the commit's value and ops by reference). When the reference's target moves to a new instance (or a new\n// object of its identity), it moves them and sends one frame, a diff from the last value; while it points at nothing it\n// keeps the last value (a pointer, no copy), with one `failed` call when its target failed (none while it loads).\n\nimport type { Context } from \"../../context/index.ts\";\nimport { diffRevisions, type Op } from \"../../delta/index.ts\";\nimport type { JsonValue } from \"../../json.ts\";\nimport { Watch, type WatchCall, type WatchEnd } from \"../../watch.ts\";\nimport type { ChordError } from \"../data/index.ts\";\nimport {\n\ttype Batch,\n\ttype Dependent,\n\ttype DeriveSource,\n\thandedOut,\n\tSource,\n\ttype Subscriber,\n\ttype WatchStart,\n} from \"../state/internal.ts\";\n\n/**\n * Where a reference's source stands: never had a value (`unbound`: reads throw what its reference has instead),\n * following an instance's member, holding its last value while pointing at nothing (`failure` while its target is\n * failed: new watches start with it; `told`: its watches got a failure since that value, so the next is whole), failed\n * (a member its target's live variant lacks, or its compute threw when it was held: reads throw, `last` is the last\n * good value) or ended with its reference (nothing kept).\n */\ntype SourceState =\n\t| { readonly kind: \"unbound\" }\n\t| { readonly kind: \"bound\"; readonly source: DeriveSource }\n\t| { readonly kind: \"held\"; readonly value: JsonValue; readonly failure: unknown; readonly told: boolean }\n\t| { readonly kind: \"failed\"; readonly error: unknown; readonly last: JsonValue | undefined }\n\t| { readonly kind: \"ended\"; readonly error: ChordError };\n\n/** A reference owning its sources: what a read of one that never had a value throws. */\nexport interface SourceOwner {\n\tnone(): ChordError;\n}\n\nconst ENDED: WatchEnd = { kind: \"ended\" };\n\n/** No failure told: a held value's `failure` while its target loads. */\nconst NO_FAILURE = undefined;\n\n/**\n * One member (or key) of one reference. Bound, it is a dependent of the instance's member (its own dependents are\n * marked with it); its watches and subscribers subscribe to that member itself, so the member's frames reach them as\n * they are, and a derive member stays lazy while nothing follows it; holding or moving moves them.\n */\nexport class ReferenceSource extends Source implements Dependent {\n\t#state: SourceState = { kind: \"unbound\" };\n\t/**\n\t * Its watches and subscribers, each subscribed to the bound member while bound; held, they get nothing. Made by the\n\t * first.\n\t */\n\t#passed: Set<Subscriber> | undefined;\n\t/** What its watches had at a re-bind (`undefined` for no value: they had a failure), until the re-bind's frame. */\n\t#framed: { readonly value: JsonValue | undefined } | undefined;\n\t/** Its reference: what a read throws while it never had a value (its failure, `not_ready`, or `released`). */\n\treadonly #owner: SourceOwner;\n\n\tconstructor(batch: Batch, owner: SourceOwner) {\n\t\tsuper(batch);\n\t\tthis.#owner = owner;\n\t}\n\n\t/** Whether it never had a value (a watch waits for its reference's values first). */\n\tget unbound(): boolean {\n\t\treturn this.#state.kind === \"unbound\";\n\t}\n\n\tget value(): JsonValue {\n\t\tconst state = this.#state;\n\t\tswitch (state.kind) {\n\t\t\tcase \"bound\":\n\t\t\t\treturn state.source.value;\n\t\t\tcase \"held\":\n\t\t\t\t// A derive over a failed reference's member computes on its last value too (owner, G2: A).\n\t\t\t\treturn state.value;\n\t\t\tcase \"unbound\":\n\t\t\t\tthrow this.#owner.none();\n\t\t\tdefault:\n\t\t\t\tthrow state.error;\n\t\t}\n\t}\n\n\t/** What a new watch starts at: the bound member's start, the held value (after its failure), or the failure. */\n\tstart(): WatchStart {\n\t\tconst state = this.#state;\n\t\tswitch (state.kind) {\n\t\t\tcase \"bound\":\n\t\t\t\treturn state.source instanceof Source ? state.source.start() : { kind: \"value\", value: state.source.value };\n\t\t\tcase \"held\":\n\t\t\t\treturn state.failure === NO_FAILURE\n\t\t\t\t\t? { kind: \"value\", value: state.value }\n\t\t\t\t\t: { kind: \"failed\", error: state.failure, last: state.value };\n\t\t\tcase \"failed\":\n\t\t\t\treturn { kind: \"failed\", error: state.error, last: state.last };\n\t\t\tcase \"unbound\":\n\t\t\t\tthrow this.#owner.none();\n\t\t\tcase \"ended\":\n\t\t\t\tthrow state.error;\n\t\t}\n\t}\n\n\t/**\n\t * A watch subscribed to the bound member itself (as `Source.openWatch` starts one: on a failed member at its last\n\t * good value, the failure first).\n\t */\n\topenWatch(context: Context): Watch<JsonValue> {\n\t\tthis.batch.assertOutside(\"watch\");\n\t\tconst start = this.start();\n\t\tif (start.kind === \"failed\" && start.last === undefined) throw start.error;\n\t\tconst value = start.kind === \"value\" ? start.value : start.last!;\n\t\tconst watch: Watch<JsonValue> = new Watch(value, () => this.unsubscribe(watch), this.batch.reportListener);\n\t\tthis.subscribe(watch);\n\t\tif (context.abortSignal !== undefined) watch.observeAbort(context.abortSignal);\n\t\tif (start.kind === \"failed\") watch.fail(handedOut(start.error), context);\n\t\treturn watch;\n\t}\n\n\t/** Whether anything follows it: a watch, a subscriber or a derive (moving or ending it then needs a batch). */\n\tget inUse(): boolean {\n\t\treturn this.watched || this.dependents.size > 0;\n\t}\n\n\t/** Whether a watch or a subscriber follows it (through the bound member). */\n\tget watched(): boolean {\n\t\treturn (this.#passed?.size ?? 0) > 0;\n\t}\n\n\t/** Feeds `subscriber` the bound member's frames (it subscribes there) and the moves' frames. */\n\tsubscribe(subscriber: Subscriber): void {\n\t\tthis.#passed ??= new Set();\n\t\tthis.#passed.add(subscriber);\n\t\tconst state = this.#state;\n\t\tif (state.kind === \"bound\" && state.source instanceof Source) state.source.subscribe(subscriber);\n\t}\n\n\t/** As `Source.unsubscribe`. */\n\tunsubscribe(subscriber: Subscriber): void {\n\t\tthis.#passed?.delete(subscriber);\n\t\tconst state = this.#state;\n\t\tif (state.kind === \"bound\" && state.source instanceof Source) state.source.unsubscribe(subscriber);\n\t}\n\n\t/** The bound member changed: its dependents are marked (its frames reach the subscribers directly). */\n\tinvalidate(): void {\n\t\tfor (const dependent of this.dependents) dependent.invalidate();\n\t}\n\n\t/** The bound member's document was retired: its dependents carry the flag on. */\n\tsourceRetired(visited: Set<Dependent>): void {\n\t\tfor (const dependent of this.dependents) dependent.sourceRetired(visited);\n\t}\n\n\t/**\n\t * Follows `source`, an instance's member, inside a batch: watches get one frame from the last value (a full one\n\t * after a failure); derives downstream are marked and recompute, a failed one included (self-healing).\n\t */\n\tbind(source: DeriveSource): void {\n\t\tconst state = this.#state;\n\t\tif (state.kind === \"ended\" || (state.kind === \"bound\" && state.source === source)) return;\n\t\tthis.#leave();\n\t\tif (this.watched) this.#framed = { value: this.#shown() };\n\t\tthis.#state = { kind: \"bound\", source };\n\t\tthis.#hook(source);\n\t\t// Marks the derives downstream: a failed one recomputes too (self-healing).\n\t\tthis.changed();\n\t}\n\n\t/** Its target loads (a restart, a retry, a new object not live yet): it keeps its last value, and tells nothing. */\n\thold(): void {\n\t\tconst state = this.#state;\n\t\tif (state.kind === \"held\") {\n\t\t\t// Its watches had the failure: the next value stays whole (`told`).\n\t\t\tif (state.failure !== NO_FAILURE) this.#state = { ...state, failure: NO_FAILURE };\n\t\t\treturn;\n\t\t}\n\t\tif (state.kind === \"bound\") this.#keep(NO_FAILURE);\n\t}\n\n\t/**\n\t * Its target failed (`error`: its cause's, a refused version's, a removed type's), inside a batch: it keeps its last\n\t * value, its watches and subscribers get one failure call (once per failure) and stay open.\n\t */\n\tfail(error: ChordError, context: Context): void {\n\t\t// Kept: its stack made text now, so it keeps none of the failed instance's frames.\n\t\thandedOut(error);\n\t\tconst state = this.#state;\n\t\tif (state.kind === \"held\") {\n\t\t\tif (state.failure !== NO_FAILURE) return;\n\t\t\tthis.#state = { kind: \"held\", value: state.value, failure: error, told: true };\n\t\t} else if (state.kind === \"bound\") {\n\t\t\tif (!this.#keep(error)) return;\n\t\t} else {\n\t\t\treturn;\n\t\t}\n\t\tthis.#call({ kind: \"failed\", error }, context);\n\t}\n\n\t/**\n\t * Its target's live variant lacks the member, inside a batch: reads throw `error`; watches and subscribers get one\n\t * failure call and stay open (a later instance may bring the member back, as `[[\"r\", value]]`).\n\t */\n\tvanish(error: ChordError, context: Context): void {\n\t\tconst state = this.#state;\n\t\tif (state.kind === \"ended\") return;\n\t\tconst last = state.kind === \"unbound\" ? undefined : this.#lastGood();\n\t\tthis.#leave();\n\t\tthis.#state = { kind: \"failed\", error: handedOut(error), last };\n\t\tthis.#call({ kind: \"failed\", error }, context);\n\t\tthis.changed();\n\t}\n\n\t/**\n\t * Its reference ended, inside a batch: reads throw `error`, watches end `ended`, and derives over it are marked\n\t * (their next read throws it, no cached value stays).\n\t */\n\tend(error: ChordError): void {\n\t\tthis.#leave();\n\t\tthis.#state = { kind: \"ended\", error };\n\t\tthis.#framed = undefined;\n\t\t// A copy: an ending watch unsubscribes itself.\n\t\tconst passed = this.#passed;\n\t\tthis.#passed = undefined;\n\t\tif (passed !== undefined) for (const subscriber of [...passed]) subscriber.end(ENDED);\n\t\tfor (const dependent of this.dependents) dependent.invalidate();\n\t}\n\n\t/** Delivers a move's frame: the diff from the watches' value to the new member's. */\n\tdeliver(context: Context): void {\n\t\tconst framed = this.#framed;\n\t\tthis.#framed = undefined;\n\t\tif (framed === undefined) return;\n\t\tlet after: JsonValue;\n\t\ttry {\n\t\t\tafter = this.value;\n\t\t} catch (error) {\n\t\t\tif (framed.value !== undefined) this.#call({ kind: \"failed\", error: handedOut(error) }, context);\n\t\t\treturn;\n\t\t}\n\t\tconst before = framed.value;\n\t\tif (after === before) return;\n\t\t// After a failure (no value framed): whole, even when unchanged.\n\t\tconst ops: readonly Op[] = before === undefined ? [[\"r\", after]] : diffRevisions(before, after);\n\t\tif (ops.length > 0) this.#call({ kind: \"value\", value: after, ops, retired: false }, context);\n\t}\n\n\t/**\n\t * Stops following the bound member and keeps its value (`failure`: the failure it is held with); a member whose value\n\t * throws becomes failed. Whether it holds a value.\n\t */\n\t#keep(failure: unknown): boolean {\n\t\tconst state = this.#state as Extract<SourceState, { readonly kind: \"bound\" }>;\n\t\tconst start = state.source instanceof Source ? state.source.start() : undefined;\n\t\tthis.#leave();\n\t\tif (start === undefined || start.kind === \"value\") {\n\t\t\tconst value = start === undefined ? state.source.value : start.value;\n\t\t\tthis.#state = { kind: \"held\", value, failure, told: failure !== NO_FAILURE };\n\t\t\treturn true;\n\t\t}\n\t\tthis.#state = { kind: \"failed\", error: handedOut(start.error), last: start.last };\n\t\treturn false;\n\t}\n\n\t/** A call of its own (a move's frame, a failure) to its watches and subscribers. */\n\t#call(call: WatchCall<JsonValue>, context: Context): void {\n\t\tif (this.#passed !== undefined) for (const subscriber of this.#passed) subscriber.advance(call, context);\n\t}\n\n\t/**\n\t * The value its watches have before a move; `undefined` when they had a failure since it (their next value is whole,\n\t * `[[\"r\", value]]`, even when unchanged).\n\t */\n\t#shown(): JsonValue | undefined {\n\t\tconst state = this.#state;\n\t\tif (state.kind === \"unbound\" || (state.kind === \"held\" && state.told)) return undefined;\n\t\tconst start = this.start();\n\t\treturn start.kind === \"value\" ? start.value : undefined;\n\t}\n\n\t/** Its last good value, which watches opened while it is failed start at; `undefined` when it never had one. */\n\t#lastGood(): JsonValue | undefined {\n\t\tconst start = this.start();\n\t\treturn start.kind === \"value\" ? start.value : start.last;\n\t}\n\n\t/** Starts reading `source`: its changes mark this source's dependents, its frames reach the subscribers. */\n\t#hook(source: DeriveSource): void {\n\t\tif (!(source instanceof Source)) return;\n\t\tsource.dependents.add(this);\n\t\tif (this.#passed !== undefined) for (const subscriber of this.#passed) source.subscribe(subscriber);\n\t}\n\n\t/** Stops following the bound source, when bound: no more marks or frames from it. */\n\t#leave(): void {\n\t\tconst state = this.#state;\n\t\tif (state.kind !== \"bound\") return;\n\t\tconst { source } = state;\n\t\tif (!(source instanceof Source)) return;\n\t\tsource.dependents.delete(this);\n\t\tif (this.#passed !== undefined) for (const subscriber of this.#passed) source.unsubscribe(subscriber);\n\t}\n}\n"]}
|