@moltzap/client 2026.812.0 → 2026.902.0
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/LICENSE +202 -21
- package/NOTICE +19 -0
- package/README.md +50 -0
- package/bin/moltzapd +9 -0
- package/dist/client-runtime.d.ts +10 -0
- package/dist/client-runtime.d.ts.map +1 -0
- package/dist/client-runtime.js +218 -0
- package/dist/client-runtime.js.map +1 -0
- package/dist/contract.d.ts +338 -0
- package/dist/contract.d.ts.map +1 -0
- package/dist/contract.js +213 -0
- package/dist/contract.js.map +1 -0
- package/dist/contract.types-check.d.ts +99 -0
- package/dist/contract.types-check.d.ts.map +1 -0
- package/dist/contract.types-check.js +7 -0
- package/dist/contract.types-check.js.map +1 -0
- package/dist/daemon/configuration.d.ts +46 -0
- package/dist/daemon/configuration.d.ts.map +1 -0
- package/dist/daemon/configuration.js +69 -0
- package/dist/daemon/configuration.js.map +1 -0
- package/dist/daemon/management.d.ts +23 -0
- package/dist/daemon/management.d.ts.map +1 -0
- package/dist/daemon/management.js +489 -0
- package/dist/daemon/management.js.map +1 -0
- package/dist/daemon/registration.d.ts +72 -0
- package/dist/daemon/registration.d.ts.map +1 -0
- package/dist/daemon/registration.js +109 -0
- package/dist/daemon/registration.js.map +1 -0
- package/dist/daemon/runtime/activation.d.ts +95 -0
- package/dist/daemon/runtime/activation.d.ts.map +1 -0
- package/dist/daemon/runtime/activation.js +99 -0
- package/dist/daemon/runtime/activation.js.map +1 -0
- package/dist/daemon/runtime/controller.d.ts +34 -0
- package/dist/daemon/runtime/controller.d.ts.map +1 -0
- package/dist/daemon/runtime/controller.js +106 -0
- package/dist/daemon/runtime/controller.js.map +1 -0
- package/dist/daemon/runtime/history-export.d.ts +23 -0
- package/dist/daemon/runtime/history-export.d.ts.map +1 -0
- package/dist/daemon/runtime/history-export.js +47 -0
- package/dist/daemon/runtime/history-export.js.map +1 -0
- package/dist/daemon/runtime/index.d.ts +24 -0
- package/dist/daemon/runtime/index.d.ts.map +1 -0
- package/dist/daemon/runtime/index.js +65 -0
- package/dist/daemon/runtime/index.js.map +1 -0
- package/dist/daemon/runtime/protocol.d.ts +63 -0
- package/dist/daemon/runtime/protocol.d.ts.map +1 -0
- package/dist/daemon/runtime/protocol.js +133 -0
- package/dist/daemon/runtime/protocol.js.map +1 -0
- package/dist/endpoint/addressing/index.d.ts +39 -0
- package/dist/endpoint/addressing/index.d.ts.map +1 -0
- package/dist/endpoint/addressing/index.js +114 -0
- package/dist/endpoint/addressing/index.js.map +1 -0
- package/dist/endpoint/engine-dissemination.d.ts +11 -0
- package/dist/endpoint/engine-dissemination.d.ts.map +1 -0
- package/dist/endpoint/engine-dissemination.js +71 -0
- package/dist/endpoint/engine-dissemination.js.map +1 -0
- package/dist/endpoint/engine-durability.d.ts +69 -0
- package/dist/endpoint/engine-durability.d.ts.map +1 -0
- package/dist/endpoint/engine-durability.js +210 -0
- package/dist/endpoint/engine-durability.js.map +1 -0
- package/dist/endpoint/engine-send.d.ts +50 -0
- package/dist/endpoint/engine-send.d.ts.map +1 -0
- package/dist/endpoint/engine-send.js +422 -0
- package/dist/endpoint/engine-send.js.map +1 -0
- package/dist/endpoint/engine-types.d.ts +132 -0
- package/dist/endpoint/engine-types.d.ts.map +1 -0
- package/dist/endpoint/engine-types.js +13 -0
- package/dist/endpoint/engine-types.js.map +1 -0
- package/dist/endpoint/engine.d.ts +14 -0
- package/dist/endpoint/engine.d.ts.map +1 -0
- package/dist/endpoint/engine.js +280 -0
- package/dist/endpoint/engine.js.map +1 -0
- package/dist/endpoint/protocol/evidence.d.ts +37 -0
- package/dist/endpoint/protocol/evidence.d.ts.map +1 -0
- package/dist/endpoint/protocol/evidence.js +80 -0
- package/dist/endpoint/protocol/evidence.js.map +1 -0
- package/dist/endpoint/protocol/index.d.ts +26 -0
- package/dist/endpoint/protocol/index.d.ts.map +1 -0
- package/dist/endpoint/protocol/index.js +543 -0
- package/dist/endpoint/protocol/index.js.map +1 -0
- package/dist/endpoint/recovery/barrier.d.ts +23 -0
- package/dist/endpoint/recovery/barrier.d.ts.map +1 -0
- package/dist/endpoint/recovery/barrier.js +47 -0
- package/dist/endpoint/recovery/barrier.js.map +1 -0
- package/dist/endpoint/recovery/index.d.ts +29 -0
- package/dist/endpoint/recovery/index.d.ts.map +1 -0
- package/dist/endpoint/recovery/index.js +489 -0
- package/dist/endpoint/recovery/index.js.map +1 -0
- package/dist/endpoint/recovery/reanchor/empty.d.ts +22 -0
- package/dist/endpoint/recovery/reanchor/empty.d.ts.map +1 -0
- package/dist/endpoint/recovery/reanchor/empty.js +163 -0
- package/dist/endpoint/recovery/reanchor/empty.js.map +1 -0
- package/dist/endpoint/recovery/reanchor/index.d.ts +30 -0
- package/dist/endpoint/recovery/reanchor/index.d.ts.map +1 -0
- package/dist/endpoint/recovery/reanchor/index.js +479 -0
- package/dist/endpoint/recovery/reanchor/index.js.map +1 -0
- package/dist/endpoint/recovery/state.d.ts +130 -0
- package/dist/endpoint/recovery/state.d.ts.map +1 -0
- package/dist/endpoint/recovery/state.js +296 -0
- package/dist/endpoint/recovery/state.js.map +1 -0
- package/dist/endpoint/recovery/store-evidence.d.ts +17 -0
- package/dist/endpoint/recovery/store-evidence.d.ts.map +1 -0
- package/dist/endpoint/recovery/store-evidence.js +79 -0
- package/dist/endpoint/recovery/store-evidence.js.map +1 -0
- package/dist/endpoint/recovery/store.d.ts +56 -0
- package/dist/endpoint/recovery/store.d.ts.map +1 -0
- package/dist/endpoint/recovery/store.js +499 -0
- package/dist/endpoint/recovery/store.js.map +1 -0
- package/dist/endpoint/representation-canonical.d.ts +17 -0
- package/dist/endpoint/representation-canonical.d.ts.map +1 -0
- package/dist/endpoint/representation-canonical.js +48 -0
- package/dist/endpoint/representation-canonical.js.map +1 -0
- package/dist/endpoint/representation-codec.d.ts +51 -0
- package/dist/endpoint/representation-codec.d.ts.map +1 -0
- package/dist/endpoint/representation-codec.js +159 -0
- package/dist/endpoint/representation-codec.js.map +1 -0
- package/dist/endpoint/representation-schemas.d.ts +1831 -0
- package/dist/endpoint/representation-schemas.d.ts.map +1 -0
- package/dist/endpoint/representation-schemas.js +195 -0
- package/dist/endpoint/representation-schemas.js.map +1 -0
- package/dist/endpoint/representation-verification.d.ts +79 -0
- package/dist/endpoint/representation-verification.d.ts.map +1 -0
- package/dist/endpoint/representation-verification.js +420 -0
- package/dist/endpoint/representation-verification.js.map +1 -0
- package/dist/endpoint/representation.d.ts +6 -0
- package/dist/endpoint/representation.d.ts.map +1 -0
- package/dist/endpoint/representation.js +8 -0
- package/dist/endpoint/representation.js.map +1 -0
- package/dist/endpoint/router-worker/index.d.ts +16 -0
- package/dist/endpoint/router-worker/index.d.ts.map +1 -0
- package/dist/endpoint/router-worker/index.js +547 -0
- package/dist/endpoint/router-worker/index.js.map +1 -0
- package/dist/endpoint/router-worker/types.d.ts +183 -0
- package/dist/endpoint/router-worker/types.d.ts.map +1 -0
- package/dist/endpoint/router-worker/types.js +31 -0
- package/dist/endpoint/router-worker/types.js.map +1 -0
- package/dist/endpoint/store/anchors.d.ts +83 -0
- package/dist/endpoint/store/anchors.d.ts.map +1 -0
- package/dist/endpoint/store/anchors.js +471 -0
- package/dist/endpoint/store/anchors.js.map +1 -0
- package/dist/endpoint/store/database/index.d.ts +6 -0
- package/dist/endpoint/store/database/index.d.ts.map +1 -0
- package/dist/endpoint/store/database/index.js +6 -0
- package/dist/endpoint/store/database/index.js.map +1 -0
- package/dist/endpoint/store/database/schema.d.ts +44 -0
- package/dist/endpoint/store/database/schema.d.ts.map +1 -0
- package/dist/endpoint/store/database/schema.js +345 -0
- package/dist/endpoint/store/database/schema.js.map +1 -0
- package/dist/endpoint/store/database/values.d.ts +119 -0
- package/dist/endpoint/store/database/values.d.ts.map +1 -0
- package/dist/endpoint/store/database/values.js +194 -0
- package/dist/endpoint/store/database/values.js.map +1 -0
- package/dist/endpoint/store/deliveries.d.ts +38 -0
- package/dist/endpoint/store/deliveries.d.ts.map +1 -0
- package/dist/endpoint/store/deliveries.js +124 -0
- package/dist/endpoint/store/deliveries.js.map +1 -0
- package/dist/endpoint/store/dissemination.d.ts +27 -0
- package/dist/endpoint/store/dissemination.d.ts.map +1 -0
- package/dist/endpoint/store/dissemination.js +139 -0
- package/dist/endpoint/store/dissemination.js.map +1 -0
- package/dist/endpoint/store/index.d.ts +15 -0
- package/dist/endpoint/store/index.d.ts.map +1 -0
- package/dist/endpoint/store/index.js +76 -0
- package/dist/endpoint/store/index.js.map +1 -0
- package/dist/endpoint/store/management.d.ts +42 -0
- package/dist/endpoint/store/management.d.ts.map +1 -0
- package/dist/endpoint/store/management.js +259 -0
- package/dist/endpoint/store/management.js.map +1 -0
- package/dist/endpoint/store/outbound.d.ts +62 -0
- package/dist/endpoint/store/outbound.d.ts.map +1 -0
- package/dist/endpoint/store/outbound.js +278 -0
- package/dist/endpoint/store/outbound.js.map +1 -0
- package/dist/endpoint/store/records.d.ts +56 -0
- package/dist/endpoint/store/records.d.ts.map +1 -0
- package/dist/endpoint/store/records.js +352 -0
- package/dist/endpoint/store/records.js.map +1 -0
- package/dist/endpoint/store/rows/index.d.ts +138 -0
- package/dist/endpoint/store/rows/index.d.ts.map +1 -0
- package/dist/endpoint/store/rows/index.js +307 -0
- package/dist/endpoint/store/rows/index.js.map +1 -0
- package/dist/endpoint/store/types.d.ts +223 -0
- package/dist/endpoint/store/types.d.ts.map +1 -0
- package/dist/endpoint/store/types.js +15 -0
- package/dist/endpoint/store/types.js.map +1 -0
- package/dist/endpoint/store.d.ts +10 -0
- package/dist/endpoint/store.d.ts.map +1 -0
- package/dist/endpoint/store.js +6 -0
- package/dist/endpoint/store.js.map +1 -0
- package/dist/harness-mcp-contract.d.ts +101 -0
- package/dist/harness-mcp-contract.d.ts.map +1 -0
- package/dist/harness-mcp-contract.js +61 -0
- package/dist/harness-mcp-contract.js.map +1 -0
- package/dist/{harness-mcp-server.d.ts → harness-mcp-http.d.ts} +9 -8
- package/dist/harness-mcp-http.d.ts.map +1 -0
- package/dist/{harness-mcp-server.js → harness-mcp-http.js} +38 -60
- package/dist/harness-mcp-http.js.map +1 -0
- package/dist/harness-mcp-subscription.d.ts +12 -7
- package/dist/harness-mcp-subscription.d.ts.map +1 -1
- package/dist/harness-mcp-subscription.js +113 -100
- package/dist/harness-mcp-subscription.js.map +1 -1
- package/dist/harness-mcp-wire.d.ts +24 -49
- package/dist/harness-mcp-wire.d.ts.map +1 -1
- package/dist/harness-mcp-wire.js +381 -124
- package/dist/harness-mcp-wire.js.map +1 -1
- package/dist/index.d.ts +4 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -10
- package/dist/index.js.map +1 -1
- package/dist/management-runtime.d.ts +217 -0
- package/dist/management-runtime.d.ts.map +1 -0
- package/dist/management-runtime.js +127 -0
- package/dist/management-runtime.js.map +1 -0
- package/dist/server.d.ts +16 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +46 -0
- package/dist/server.js.map +1 -0
- package/dist/server.types-check.d.ts +23 -0
- package/dist/server.types-check.d.ts.map +1 -0
- package/dist/server.types-check.js +7 -0
- package/dist/server.types-check.js.map +1 -0
- package/package.json +24 -52
- package/dist/agent-client.d.ts +0 -5
- package/dist/agent-client.d.ts.map +0 -1
- package/dist/agent-client.js +0 -3
- package/dist/agent-client.js.map +0 -1
- package/dist/auth.d.ts +0 -37
- package/dist/auth.d.ts.map +0 -1
- package/dist/auth.js +0 -79
- package/dist/auth.js.map +0 -1
- package/dist/bounded-map.d.ts +0 -32
- package/dist/bounded-map.d.ts.map +0 -1
- package/dist/bounded-map.js +0 -79
- package/dist/bounded-map.js.map +0 -1
- package/dist/channel-base/format-cross-conv.d.ts +0 -43
- package/dist/channel-base/format-cross-conv.d.ts.map +0 -1
- package/dist/channel-base/format-cross-conv.js +0 -65
- package/dist/channel-base/format-cross-conv.js.map +0 -1
- package/dist/channel-base/format-group-block.d.ts +0 -48
- package/dist/channel-base/format-group-block.d.ts.map +0 -1
- package/dist/channel-base/format-group-block.js +0 -62
- package/dist/channel-base/format-group-block.js.map +0 -1
- package/dist/channel-base/index.d.ts +0 -12
- package/dist/channel-base/index.d.ts.map +0 -1
- package/dist/channel-base/index.js +0 -16
- package/dist/channel-base/index.js.map +0 -1
- package/dist/channel-core-enrichment.d.ts +0 -38
- package/dist/channel-core-enrichment.d.ts.map +0 -1
- package/dist/channel-core-enrichment.js +0 -217
- package/dist/channel-core-enrichment.js.map +0 -1
- package/dist/channel-core-test-support.d.ts +0 -75
- package/dist/channel-core-test-support.d.ts.map +0 -1
- package/dist/channel-core-test-support.js +0 -74
- package/dist/channel-core-test-support.js.map +0 -1
- package/dist/channel-core.d.ts +0 -306
- package/dist/channel-core.d.ts.map +0 -1
- package/dist/channel-core.js +0 -365
- package/dist/channel-core.js.map +0 -1
- package/dist/config.d.ts +0 -33
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js +0 -51
- package/dist/config.js.map +0 -1
- package/dist/config.test-utils.d.ts +0 -24
- package/dist/config.test-utils.d.ts.map +0 -1
- package/dist/config.test-utils.js +0 -57
- package/dist/config.test-utils.js.map +0 -1
- package/dist/harness/client-runtime.d.ts +0 -31
- package/dist/harness/client-runtime.d.ts.map +0 -1
- package/dist/harness/client-runtime.js +0 -121
- package/dist/harness/client-runtime.js.map +0 -1
- package/dist/harness/index.d.ts +0 -5
- package/dist/harness/index.d.ts.map +0 -1
- package/dist/harness/index.js +0 -5
- package/dist/harness/index.js.map +0 -1
- package/dist/harness/runtime.d.ts +0 -301
- package/dist/harness/runtime.d.ts.map +0 -1
- package/dist/harness/runtime.js +0 -165
- package/dist/harness/runtime.js.map +0 -1
- package/dist/harness-client.d.ts +0 -47
- package/dist/harness-client.d.ts.map +0 -1
- package/dist/harness-client.js +0 -76
- package/dist/harness-client.js.map +0 -1
- package/dist/harness-context-projection.d.ts +0 -35
- package/dist/harness-context-projection.d.ts.map +0 -1
- package/dist/harness-context-projection.js +0 -123
- package/dist/harness-context-projection.js.map +0 -1
- package/dist/harness-mcp-server.d.ts.map +0 -1
- package/dist/harness-mcp-server.js.map +0 -1
- package/dist/local-paths.d.ts +0 -11
- package/dist/local-paths.d.ts.map +0 -1
- package/dist/local-paths.js +0 -21
- package/dist/local-paths.js.map +0 -1
- package/dist/message-rendering.d.ts +0 -4
- package/dist/message-rendering.d.ts.map +0 -1
- package/dist/message-rendering.js +0 -8
- package/dist/message-rendering.js.map +0 -1
- package/dist/moltzapd-catalog.d.ts +0 -35
- package/dist/moltzapd-catalog.d.ts.map +0 -1
- package/dist/moltzapd-catalog.js +0 -117
- package/dist/moltzapd-catalog.js.map +0 -1
- package/dist/moltzapd-child-ipc.d.ts +0 -26
- package/dist/moltzapd-child-ipc.d.ts.map +0 -1
- package/dist/moltzapd-child-ipc.js +0 -31
- package/dist/moltzapd-child-ipc.js.map +0 -1
- package/dist/moltzapd-child.d.ts +0 -55
- package/dist/moltzapd-child.d.ts.map +0 -1
- package/dist/moltzapd-child.js +0 -225
- package/dist/moltzapd-child.js.map +0 -1
- package/dist/moltzapd-main.d.ts +0 -3
- package/dist/moltzapd-main.d.ts.map +0 -1
- package/dist/moltzapd-main.js +0 -18
- package/dist/moltzapd-main.js.map +0 -1
- package/dist/moltzapd-registration.d.ts +0 -40
- package/dist/moltzapd-registration.d.ts.map +0 -1
- package/dist/moltzapd-registration.js +0 -59
- package/dist/moltzapd-registration.js.map +0 -1
- package/dist/moltzapd.d.ts +0 -85
- package/dist/moltzapd.d.ts.map +0 -1
- package/dist/moltzapd.js +0 -150
- package/dist/moltzapd.js.map +0 -1
- package/dist/notification/__tests__/subscribe-signatures.types-check.d.ts +0 -53
- package/dist/notification/__tests__/subscribe-signatures.types-check.d.ts.map +0 -1
- package/dist/notification/__tests__/subscribe-signatures.types-check.js +0 -29
- package/dist/notification/__tests__/subscribe-signatures.types-check.js.map +0 -1
- package/dist/notification/errors.d.ts +0 -41
- package/dist/notification/errors.d.ts.map +0 -1
- package/dist/notification/errors.js +0 -24
- package/dist/notification/errors.js.map +0 -1
- package/dist/notification/index.d.ts +0 -6
- package/dist/notification/index.d.ts.map +0 -1
- package/dist/notification/index.js +0 -6
- package/dist/notification/index.js.map +0 -1
- package/dist/notification/stream.d.ts +0 -75
- package/dist/notification/stream.d.ts.map +0 -1
- package/dist/notification/stream.js +0 -30
- package/dist/notification/stream.js.map +0 -1
- package/dist/notification/trace.d.ts +0 -10
- package/dist/notification/trace.d.ts.map +0 -1
- package/dist/notification/trace.js +0 -34
- package/dist/notification/trace.js.map +0 -1
- package/dist/pagination.d.ts +0 -52
- package/dist/pagination.d.ts.map +0 -1
- package/dist/pagination.js +0 -51
- package/dist/pagination.js.map +0 -1
- package/dist/presentation/index.d.ts +0 -3
- package/dist/presentation/index.d.ts.map +0 -1
- package/dist/presentation/index.js +0 -3
- package/dist/presentation/index.js.map +0 -1
- package/dist/presentation/state.d.ts +0 -77
- package/dist/presentation/state.d.ts.map +0 -1
- package/dist/presentation/state.js +0 -211
- package/dist/presentation/state.js.map +0 -1
- package/dist/profile.d.ts +0 -106
- package/dist/profile.d.ts.map +0 -1
- package/dist/profile.js +0 -171
- package/dist/profile.js.map +0 -1
- package/dist/service-event-trace.d.ts +0 -15
- package/dist/service-event-trace.d.ts.map +0 -1
- package/dist/service-event-trace.js +0 -35
- package/dist/service-event-trace.js.map +0 -1
- package/dist/service.d.ts +0 -228
- package/dist/service.d.ts.map +0 -1
- package/dist/service.js +0 -485
- package/dist/service.js.map +0 -1
- package/dist/test-utils/channel-service-fixture.d.ts +0 -53
- package/dist/test-utils/channel-service-fixture.d.ts.map +0 -1
- package/dist/test-utils/channel-service-fixture.js +0 -178
- package/dist/test-utils/channel-service-fixture.js.map +0 -1
- package/dist/test-utils/fake-service.d.ts +0 -82
- package/dist/test-utils/fake-service.d.ts.map +0 -1
- package/dist/test-utils/fake-service.js +0 -108
- package/dist/test-utils/fake-service.js.map +0 -1
- package/dist/test-utils/harness.d.ts +0 -27
- package/dist/test-utils/harness.d.ts.map +0 -1
- package/dist/test-utils/harness.js +0 -33
- package/dist/test-utils/harness.js.map +0 -1
- package/dist/test-utils/ids.d.ts +0 -21
- package/dist/test-utils/ids.d.ts.map +0 -1
- package/dist/test-utils/ids.js +0 -68
- package/dist/test-utils/ids.js.map +0 -1
- package/dist/test-utils/index.d.ts +0 -56
- package/dist/test-utils/index.d.ts.map +0 -1
- package/dist/test-utils/index.js +0 -67
- package/dist/test-utils/index.js.map +0 -1
- package/dist/test-utils/process/reserve-port.d.ts +0 -20
- package/dist/test-utils/process/reserve-port.d.ts.map +0 -1
- package/dist/test-utils/process/reserve-port.js +0 -41
- package/dist/test-utils/process/reserve-port.js.map +0 -1
- package/dist/test-utils/standalone-provisioning.d.ts +0 -22
- package/dist/test-utils/standalone-provisioning.d.ts.map +0 -1
- package/dist/test-utils/standalone-provisioning.js +0 -17
- package/dist/test-utils/standalone-provisioning.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/** @file Client protocol hashes, deterministic evidence, and Router envelopes. */
|
|
2
|
+
import { type AgentId, type AgentSigningAuthority, type MessageId as MessageIdValue, type SignedMessage as SignedMessageValue, type VerifiedAgentCard, type VerifiedSignedMessage } from "@moltzap/identity";
|
|
3
|
+
import { Effect } from "effect";
|
|
4
|
+
import { type PostId as PostIdValue } from "../contract.js";
|
|
5
|
+
import { type ClientRepresentationError } from "./representation-canonical.js";
|
|
6
|
+
import { ActionCore, type ActionHash as ActionHashValue, type AnchorHash as AnchorHashValue, ConversationIdentityInput, type ConversationId as ConversationIdValue, type DirectPacket as DirectPacketValue, type EvidenceStatement as EvidenceStatementValue, type GenesisAnchorBody, type MembershipDescriptor as MembershipDescriptorValue, type MembershipHash as MembershipHashValue, PostIntent, type PostIntentHash as PostIntentHashValue, type ReanchorBody, RecordCore, type RecordHash as RecordHashValue } from "./representation-schemas.js";
|
|
7
|
+
export declare const compareAgentIds: (left: AgentId, right: AgentId) => number;
|
|
8
|
+
export declare const deriveConversationId: (memberAgentIds: ConversationIdentityInput["memberAgentIds"]) => Effect.Effect<ConversationIdValue, ClientRepresentationError>;
|
|
9
|
+
export declare const hashMembershipDescriptor: (membership: MembershipDescriptorValue) => Effect.Effect<MembershipHashValue, ClientRepresentationError>;
|
|
10
|
+
export declare const mintPostId: () => Effect.Effect<PostIdValue, ClientRepresentationError>;
|
|
11
|
+
export declare const hashPostIntent: (intent: PostIntent) => Effect.Effect<PostIntentHashValue, ClientRepresentationError>;
|
|
12
|
+
export declare const hashAnchor: (anchor: GenesisAnchorBody | ReanchorBody) => Effect.Effect<AnchorHashValue, ClientRepresentationError>;
|
|
13
|
+
export declare const hashAction: (action: ActionCore) => Effect.Effect<ActionHashValue, ClientRepresentationError>;
|
|
14
|
+
export declare const hashRecord: (record: RecordCore) => Effect.Effect<RecordHashValue, ClientRepresentationError>;
|
|
15
|
+
export declare const deriveEvidenceMessageId: (statement: EvidenceStatementValue) => Effect.Effect<MessageIdValue, ClientRepresentationError>;
|
|
16
|
+
export declare const decodeDirectPacket: (bytes: Uint8Array) => Effect.Effect<DirectPacketValue, ClientRepresentationError>;
|
|
17
|
+
export declare const decodeEvidenceMessage: (bytes: Uint8Array) => Effect.Effect<SignedMessageValue, ClientRepresentationError>;
|
|
18
|
+
export type DecodedOuterBody = Readonly<{
|
|
19
|
+
kind: "direct";
|
|
20
|
+
packet: DirectPacketValue;
|
|
21
|
+
}> | Readonly<{
|
|
22
|
+
kind: "evidence";
|
|
23
|
+
message: SignedMessageValue;
|
|
24
|
+
}>;
|
|
25
|
+
export declare const decodeOuterBody: (bytes: Uint8Array) => Effect.Effect<DecodedOuterBody, ClientRepresentationError>;
|
|
26
|
+
export declare const signEvidenceMessage: (input: {
|
|
27
|
+
readonly statement: EvidenceStatementValue;
|
|
28
|
+
readonly agentCard: VerifiedAgentCard;
|
|
29
|
+
readonly signingAuthority: AgentSigningAuthority;
|
|
30
|
+
}) => Effect.Effect<VerifiedSignedMessage, ClientRepresentationError>;
|
|
31
|
+
export interface OuterMembership {
|
|
32
|
+
readonly members: readonly [
|
|
33
|
+
VerifiedAgentCard,
|
|
34
|
+
VerifiedAgentCard,
|
|
35
|
+
...VerifiedAgentCard[]
|
|
36
|
+
];
|
|
37
|
+
}
|
|
38
|
+
export declare const signOuterPacket: (input: {
|
|
39
|
+
readonly packet: DirectPacketValue;
|
|
40
|
+
readonly membership: OuterMembership;
|
|
41
|
+
readonly agentCard: VerifiedAgentCard;
|
|
42
|
+
readonly signingAuthority: AgentSigningAuthority;
|
|
43
|
+
}) => Effect.Effect<VerifiedSignedMessage, ClientRepresentationError>;
|
|
44
|
+
export declare const signOuterEvidence: (input: {
|
|
45
|
+
readonly evidence: SignedMessageValue;
|
|
46
|
+
readonly membership: OuterMembership;
|
|
47
|
+
readonly agentCard: VerifiedAgentCard;
|
|
48
|
+
readonly signingAuthority: AgentSigningAuthority;
|
|
49
|
+
}) => Effect.Effect<VerifiedSignedMessage, ClientRepresentationError>;
|
|
50
|
+
export declare const encodeActionCore: (action: ActionCore) => Effect.Effect<Uint8Array, ClientRepresentationError>;
|
|
51
|
+
//# sourceMappingURL=representation-codec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"representation-codec.d.ts","sourceRoot":"","sources":["../../src/endpoint/representation-codec.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAElF,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,qBAAqB,EAE1B,KAAK,SAAS,IAAI,cAAc,EAGhC,KAAK,aAAa,IAAI,kBAAkB,EACxC,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAA4B,MAAM,QAAQ,CAAC;AAE1D,OAAO,EAAU,KAAK,MAAM,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EACL,KAAK,yBAAyB,EAI/B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,UAAU,EAEV,KAAK,UAAU,IAAI,eAAe,EAGlC,KAAK,UAAU,IAAI,eAAe,EAElC,yBAAyB,EACzB,KAAK,cAAc,IAAI,mBAAmB,EAE1C,KAAK,YAAY,IAAI,iBAAiB,EAEtC,KAAK,iBAAiB,IAAI,sBAAsB,EAChD,KAAK,iBAAiB,EAEtB,KAAK,oBAAoB,IAAI,yBAAyB,EAEtD,KAAK,cAAc,IAAI,mBAAmB,EAC1C,UAAU,EAEV,KAAK,cAAc,IAAI,mBAAmB,EAC1C,KAAK,YAAY,EACjB,UAAU,EAEV,KAAK,UAAU,IAAI,eAAe,EACnC,MAAM,6BAA6B,CAAC;AAsCrC,eAAO,MAAM,eAAe,SAAU,OAAO,SAAS,OAAO,KAAG,MAc/D,CAAC;AA0BF,eAAO,MAAM,oBAAoB,mBACf,yBAAyB,CAAC,gBAAgB,CAAC,KAC1D,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,yBAAyB,CAkB9D,CAAC;AAEF,eAAO,MAAM,wBAAwB,eACvB,yBAAyB,KACpC,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,yBAAyB,CAS5D,CAAC;AAEJ,eAAO,MAAM,UAAU,QAAO,MAAM,CAAC,MAAM,CACzC,WAAW,EACX,yBAAyB,CAQxB,CAAC;AAEJ,eAAO,MAAM,cAAc,WACjB,UAAU,KACjB,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,yBAAyB,CAS5D,CAAC;AAEJ,eAAO,MAAM,UAAU,WACb,iBAAiB,GAAG,YAAY,KACvC,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,yBAAyB,CASxD,CAAC;AAEJ,eAAO,MAAM,UAAU,WACb,UAAU,KACjB,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,yBAAyB,CASxD,CAAC;AAEJ,eAAO,MAAM,UAAU,WACb,UAAU,KACjB,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,yBAAyB,CASxD,CAAC;AAEJ,eAAO,MAAM,uBAAuB,cACvB,sBAAsB,KAChC,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,yBAAyB,CAaL,CAAC;AAEtD,eAAO,MAAM,kBAAkB,UACtB,UAAU,KAChB,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,yBAAyB,CACvB,CAAC;AAEvC,eAAO,MAAM,qBAAqB,UACzB,UAAU,KAChB,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,yBAAyB,CACvB,CAAC;AAExC,MAAM,MAAM,gBAAgB,GACxB,QAAQ,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,iBAAiB,CAAA;CAAE,CAAC,GACvD,QAAQ,CAAC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,OAAO,EAAE,kBAAkB,CAAA;CAAE,CAAC,CAAC;AAEhE,eAAO,MAAM,eAAe,UACnB,UAAU,KAChB,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,yBAAyB,CAUzD,CAAC;AAEJ,eAAO,MAAM,mBAAmB,UAAW;IACzC,QAAQ,CAAC,SAAS,EAAE,sBAAsB,CAAC;IAC3C,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;IACtC,QAAQ,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;CAClD,KAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,yBAAyB,CAcjB,CAAC;AAElD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS;QACzB,iBAAiB;QACjB,iBAAiB;QACjB,GAAG,iBAAiB,EAAE;KACvB,CAAC;CACH;AAkCD,eAAO,MAAM,eAAe,UAAW;IACrC,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;IACtC,QAAQ,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;CAClD,KAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,yBAAyB,CAG/D,CAAC;AAEJ,eAAO,MAAM,iBAAiB,UAAW;IACvC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;IACtC,QAAQ,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;CAClD,KAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,yBAAyB,CAG/D,CAAC;AAEJ,eAAO,MAAM,gBAAgB,WACnB,UAAU,KACjB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,yBAAyB,CACjB,CAAC"}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
/** @file Client protocol hashes, deterministic evidence, and Router envelopes. */
|
|
2
|
+
import { MessageId, MOLTZAP_VERSION, SignedMessage, } from "@moltzap/identity";
|
|
3
|
+
import { Effect, Either, Encoding, Schema } from "effect";
|
|
4
|
+
import { createHash, randomBytes } from "node:crypto";
|
|
5
|
+
import { PostId } from "../contract.js";
|
|
6
|
+
import { decodeCanonical, encodeCanonical, representationFailure, } from "./representation-canonical.js";
|
|
7
|
+
import { ActionCore, ActionHash, AnchorBody, AnchorHash, ConversationId, ConversationIdentityInput, DirectPacket, EvidenceStatement, MembershipDescriptor, MembershipHash, PostIntent, PostIntentHash, RecordCore, RecordHash, } from "./representation-schemas.js";
|
|
8
|
+
/* eslint-disable jsdoc/require-jsdoc -- The package-private representation facade documents this closed protocol vocabulary. */
|
|
9
|
+
const HASH_BYTE_LENGTH = 32;
|
|
10
|
+
const AGENT_ID_BYTE_LENGTH = 16;
|
|
11
|
+
const MESSAGE_ID_BYTE_LENGTH = 16;
|
|
12
|
+
const CLIENT_DOMAIN = "moltzap/client/v2/";
|
|
13
|
+
const EVIDENCE_MESSAGE_ID_DOMAIN = `${CLIENT_DOMAIN}evidence-message-id\0`;
|
|
14
|
+
const utf8Encoder = new TextEncoder();
|
|
15
|
+
const decodeCanonicalBase64Url = (value) => Either.match(Encoding.decodeBase64Url(value), {
|
|
16
|
+
onLeft: () => undefined,
|
|
17
|
+
onRight: (bytes) => Encoding.encodeBase64Url(bytes) === value ? bytes : undefined,
|
|
18
|
+
});
|
|
19
|
+
const domainHash = (input) => encodeCanonical(input.schema, input.value).pipe(Effect.map((bytes) => createHash("sha256")
|
|
20
|
+
.update(utf8Encoder.encode(`${CLIENT_DOMAIN}${input.artifact}\0`))
|
|
21
|
+
.update(bytes)
|
|
22
|
+
.digest()), Effect.flatMap((digest) => digest.byteLength === HASH_BYTE_LENGTH
|
|
23
|
+
? Effect.succeed(`${input.prefix}${Encoding.encodeBase64Url(digest)}`)
|
|
24
|
+
: Effect.fail(representationFailure())));
|
|
25
|
+
export const compareAgentIds = (left, right) => {
|
|
26
|
+
const leftBytes = decodeCanonicalBase64Url(left.slice(4));
|
|
27
|
+
const rightBytes = decodeCanonicalBase64Url(right.slice(4));
|
|
28
|
+
if (leftBytes === undefined || rightBytes === undefined) {
|
|
29
|
+
return 0;
|
|
30
|
+
}
|
|
31
|
+
const length = Math.min(leftBytes.byteLength, rightBytes.byteLength);
|
|
32
|
+
for (let index = 0; index < length; index += 1) {
|
|
33
|
+
const difference = (leftBytes[index] ?? 0) - (rightBytes[index] ?? 0);
|
|
34
|
+
if (difference !== 0) {
|
|
35
|
+
return difference;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return leftBytes.byteLength - rightBytes.byteLength;
|
|
39
|
+
};
|
|
40
|
+
const sortedDistinctAgentIds = (agentIds) => {
|
|
41
|
+
for (let index = 1; index < agentIds.length; index += 1) {
|
|
42
|
+
const previous = agentIds[index - 1];
|
|
43
|
+
const current = agentIds[index];
|
|
44
|
+
if (previous === undefined ||
|
|
45
|
+
current === undefined ||
|
|
46
|
+
compareAgentIds(previous, current) >= 0) {
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return true;
|
|
51
|
+
};
|
|
52
|
+
const decodeAgentIdBytes = (agentId) => {
|
|
53
|
+
const bytes = decodeCanonicalBase64Url(agentId.slice(4));
|
|
54
|
+
return bytes?.byteLength === AGENT_ID_BYTE_LENGTH
|
|
55
|
+
? Effect.succeed(bytes)
|
|
56
|
+
: Effect.fail(representationFailure());
|
|
57
|
+
};
|
|
58
|
+
export const deriveConversationId = (memberAgentIds) => {
|
|
59
|
+
if (!sortedDistinctAgentIds(memberAgentIds)) {
|
|
60
|
+
return Effect.fail(representationFailure());
|
|
61
|
+
}
|
|
62
|
+
const input = {
|
|
63
|
+
moltzapVersion: MOLTZAP_VERSION,
|
|
64
|
+
kind: "conversation_identity",
|
|
65
|
+
memberAgentIds,
|
|
66
|
+
};
|
|
67
|
+
return domainHash({
|
|
68
|
+
artifact: "conversation",
|
|
69
|
+
prefix: "cnv_",
|
|
70
|
+
schema: ConversationIdentityInput,
|
|
71
|
+
value: input,
|
|
72
|
+
}).pipe(Effect.flatMap(Schema.decodeUnknown(ConversationId)), Effect.mapError(representationFailure));
|
|
73
|
+
};
|
|
74
|
+
export const hashMembershipDescriptor = (membership) => domainHash({
|
|
75
|
+
artifact: "membership",
|
|
76
|
+
prefix: "mbr_",
|
|
77
|
+
schema: MembershipDescriptor,
|
|
78
|
+
value: membership,
|
|
79
|
+
}).pipe(Effect.flatMap(Schema.decodeUnknown(MembershipHash)), Effect.mapError(representationFailure));
|
|
80
|
+
export const mintPostId = () => Effect.try({
|
|
81
|
+
try: () => `pst_${randomBytes(HASH_BYTE_LENGTH).toString("base64url")}`,
|
|
82
|
+
catch: representationFailure,
|
|
83
|
+
}).pipe(Effect.flatMap(Schema.decodeUnknown(PostId)), Effect.mapError(representationFailure));
|
|
84
|
+
export const hashPostIntent = (intent) => domainHash({
|
|
85
|
+
artifact: "post-intent",
|
|
86
|
+
prefix: "pit_",
|
|
87
|
+
schema: PostIntent,
|
|
88
|
+
value: intent,
|
|
89
|
+
}).pipe(Effect.flatMap(Schema.decodeUnknown(PostIntentHash)), Effect.mapError(representationFailure));
|
|
90
|
+
export const hashAnchor = (anchor) => domainHash({
|
|
91
|
+
artifact: "anchor",
|
|
92
|
+
prefix: "anc_",
|
|
93
|
+
schema: AnchorBody,
|
|
94
|
+
value: anchor,
|
|
95
|
+
}).pipe(Effect.flatMap(Schema.decodeUnknown(AnchorHash)), Effect.mapError(representationFailure));
|
|
96
|
+
export const hashAction = (action) => domainHash({
|
|
97
|
+
artifact: "action",
|
|
98
|
+
prefix: "ach_",
|
|
99
|
+
schema: ActionCore,
|
|
100
|
+
value: action,
|
|
101
|
+
}).pipe(Effect.flatMap(Schema.decodeUnknown(ActionHash)), Effect.mapError(representationFailure));
|
|
102
|
+
export const hashRecord = (record) => domainHash({
|
|
103
|
+
artifact: "record",
|
|
104
|
+
prefix: "rch_",
|
|
105
|
+
schema: RecordCore,
|
|
106
|
+
value: record,
|
|
107
|
+
}).pipe(Effect.flatMap(Schema.decodeUnknown(RecordHash)), Effect.mapError(representationFailure));
|
|
108
|
+
export const deriveEvidenceMessageId = (statement) => Effect.gen(function* () {
|
|
109
|
+
const signerBytes = yield* decodeAgentIdBytes(statement.signerAgentId);
|
|
110
|
+
const statementBytes = yield* encodeCanonical(EvidenceStatement, statement);
|
|
111
|
+
const digest = createHash("sha256")
|
|
112
|
+
.update(utf8Encoder.encode(EVIDENCE_MESSAGE_ID_DOMAIN))
|
|
113
|
+
.update(signerBytes)
|
|
114
|
+
.update(statementBytes)
|
|
115
|
+
.digest()
|
|
116
|
+
.subarray(0, MESSAGE_ID_BYTE_LENGTH);
|
|
117
|
+
return yield* Schema.decodeUnknown(MessageId)(`msg_${Encoding.encodeBase64Url(digest)}`).pipe(Effect.mapError(representationFailure));
|
|
118
|
+
}).pipe(Effect.withSpan("deriveEvidenceMessageId"));
|
|
119
|
+
export const decodeDirectPacket = (bytes) => decodeCanonical(DirectPacket, bytes);
|
|
120
|
+
export const decodeEvidenceMessage = (bytes) => decodeCanonical(SignedMessage, bytes);
|
|
121
|
+
export const decodeOuterBody = (bytes) => decodeDirectPacket(bytes).pipe(Effect.map((packet) => ({ kind: "direct", packet })), Effect.catchTag("ClientRepresentationError", () => decodeEvidenceMessage(bytes).pipe(Effect.map((message) => ({ kind: "evidence", message })))));
|
|
122
|
+
export const signEvidenceMessage = (input) => Effect.gen(function* () {
|
|
123
|
+
if (input.statement.signerAgentId !== input.agentCard.agentId) {
|
|
124
|
+
return yield* representationFailure();
|
|
125
|
+
}
|
|
126
|
+
const messageId = yield* deriveEvidenceMessageId(input.statement);
|
|
127
|
+
const body = yield* encodeCanonical(EvidenceStatement, input.statement);
|
|
128
|
+
return yield* SignedMessage.sign({
|
|
129
|
+
agentCard: input.agentCard,
|
|
130
|
+
signingAuthority: input.signingAuthority,
|
|
131
|
+
recipientAgentIds: new Set([input.agentCard.agentId]),
|
|
132
|
+
messageId,
|
|
133
|
+
body,
|
|
134
|
+
}).pipe(Effect.mapError(representationFailure));
|
|
135
|
+
}).pipe(Effect.withSpan("signEvidenceMessage"));
|
|
136
|
+
const signOuterBody = (input) => Effect.gen(function* () {
|
|
137
|
+
const memberAgentIds = input.membership.members.map((member) => member.agentId);
|
|
138
|
+
if (!sortedDistinctAgentIds(memberAgentIds) ||
|
|
139
|
+
!memberAgentIds.includes(input.agentCard.agentId)) {
|
|
140
|
+
return yield* representationFailure();
|
|
141
|
+
}
|
|
142
|
+
const randomId = yield* Effect.try({
|
|
143
|
+
try: () => randomBytes(MESSAGE_ID_BYTE_LENGTH),
|
|
144
|
+
catch: representationFailure,
|
|
145
|
+
});
|
|
146
|
+
const messageId = yield* Schema.decodeUnknown(MessageId)(`msg_${Encoding.encodeBase64Url(randomId)}`).pipe(Effect.mapError(representationFailure));
|
|
147
|
+
return yield* SignedMessage.sign({
|
|
148
|
+
agentCard: input.agentCard,
|
|
149
|
+
signingAuthority: input.signingAuthority,
|
|
150
|
+
recipientAgentIds: new Set(memberAgentIds),
|
|
151
|
+
messageId,
|
|
152
|
+
body: input.body,
|
|
153
|
+
}).pipe(Effect.mapError(representationFailure));
|
|
154
|
+
}).pipe(Effect.withSpan("signOuterBody"));
|
|
155
|
+
export const signOuterPacket = (input) => encodeCanonical(DirectPacket, input.packet).pipe(Effect.flatMap((body) => signOuterBody({ ...input, body })));
|
|
156
|
+
export const signOuterEvidence = (input) => encodeCanonical(SignedMessage, input.evidence).pipe(Effect.flatMap((body) => signOuterBody({ ...input, body })));
|
|
157
|
+
export const encodeActionCore = (action) => encodeCanonical(ActionCore, action);
|
|
158
|
+
/* eslint-enable jsdoc/require-jsdoc -- Restore package documentation rules. */
|
|
159
|
+
//# sourceMappingURL=representation-codec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"representation-codec.js","sourceRoot":"","sources":["../../src/endpoint/representation-codec.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAElF,OAAO,EAGL,SAAS,EAET,eAAe,EACf,aAAa,GAId,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,MAAM,EAA8B,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAEL,eAAe,EACf,eAAe,EACf,qBAAqB,GACtB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,UAAU,EACV,UAAU,EAEV,UAAU,EACV,UAAU,EAEV,cAAc,EACd,yBAAyB,EAEzB,YAAY,EAEZ,iBAAiB,EAGjB,oBAAoB,EAEpB,cAAc,EAEd,UAAU,EACV,cAAc,EAGd,UAAU,EACV,UAAU,GAEX,MAAM,6BAA6B,CAAC;AAErC,gIAAgI;AAEhI,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAC5B,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAChC,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAClC,MAAM,aAAa,GAAG,oBAAoB,CAAC;AAC3C,MAAM,0BAA0B,GAAG,GAAG,aAAa,uBAAuB,CAAC;AAC3E,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC,MAAM,wBAAwB,GAAG,CAAC,KAAa,EAA0B,EAAE,CACzE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;IAC5C,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS;IACvB,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;CAChE,CAAC,CAAC;AAEL,MAAM,UAAU,GAAG,CAAU,KAK5B,EAAuD,EAAE,CACxD,eAAe,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAC7C,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACnB,UAAU,CAAC,QAAQ,CAAC;KACjB,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,aAAa,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC;KACjE,MAAM,CAAC,KAAK,CAAC;KACb,MAAM,EAAE,CACZ,EACD,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CACxB,MAAM,CAAC,UAAU,KAAK,gBAAgB;IACpC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;IACtE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CACzC,CACF,CAAC;AAEJ,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAa,EAAE,KAAc,EAAU,EAAE;IACvE,MAAM,SAAS,GAAG,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,wBAAwB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,IAAI,SAAS,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACxD,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IACrE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC/C,MAAM,UAAU,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACtE,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,UAAU,CAAC;QACpB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;AACtD,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,QAA4B,EAAW,EAAE;IACvE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACxD,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChC,IACE,QAAQ,KAAK,SAAS;YACtB,OAAO,KAAK,SAAS;YACrB,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,EACvC,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CACzB,OAAgB,EACsC,EAAE;IACxD,MAAM,KAAK,GAAG,wBAAwB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,OAAO,KAAK,EAAE,UAAU,KAAK,oBAAoB;QAC/C,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;QACvB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC;AAC3C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,cAA2D,EACI,EAAE;IACjE,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,EAAE,CAAC;QAC5C,OAAO,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC;IAC9C,CAAC;IACD,MAAM,KAAK,GAA8B;QACvC,cAAc,EAAE,eAAe;QAC/B,IAAI,EAAE,uBAAuB;QAC7B,cAAc;KACf,CAAC;IACF,OAAO,UAAU,CAAC;QAChB,QAAQ,EAAE,cAAc;QACxB,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,yBAAyB;QACjC,KAAK,EAAE,KAAK;KACb,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,EACpD,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CACvC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,UAAqC,EAC0B,EAAE,CACjE,UAAU,CAAC;IACT,QAAQ,EAAE,YAAY;IACtB,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,oBAAoB;IAC5B,KAAK,EAAE,UAAU;CAClB,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,EACpD,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CACvC,CAAC;AAEJ,MAAM,CAAC,MAAM,UAAU,GAAG,GAGxB,EAAE,CACF,MAAM,CAAC,GAAG,CAAC;IACT,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,WAAW,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;IACvE,KAAK,EAAE,qBAAqB;CAC7B,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,EAC5C,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CACvC,CAAC;AAEJ,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,MAAkB,EAC6C,EAAE,CACjE,UAAU,CAAC;IACT,QAAQ,EAAE,aAAa;IACvB,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,UAAU;IAClB,KAAK,EAAE,MAAM;CACd,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,EACpD,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CACvC,CAAC;AAEJ,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,MAAwC,EACmB,EAAE,CAC7D,UAAU,CAAC;IACT,QAAQ,EAAE,QAAQ;IAClB,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,UAAU;IAClB,KAAK,EAAE,MAAM;CACd,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,EAChD,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CACvC,CAAC;AAEJ,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,MAAkB,EACyC,EAAE,CAC7D,UAAU,CAAC;IACT,QAAQ,EAAE,QAAQ;IAClB,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,UAAU;IAClB,KAAK,EAAE,MAAM;CACd,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,EAChD,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CACvC,CAAC;AAEJ,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,MAAkB,EACyC,EAAE,CAC7D,UAAU,CAAC;IACT,QAAQ,EAAE,QAAQ;IAClB,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,UAAU;IAClB,KAAK,EAAE,MAAM;CACd,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,EAChD,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CACvC,CAAC;AAEJ,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,SAAiC,EACyB,EAAE,CAC5D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,kBAAkB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IACvE,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC;IAC5E,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC;SAChC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC;SACtD,MAAM,CAAC,WAAW,CAAC;SACnB,MAAM,CAAC,cAAc,CAAC;SACtB,MAAM,EAAE;SACR,QAAQ,CAAC,CAAC,EAAE,sBAAsB,CAAC,CAAC;IACvC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAC3C,OAAO,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAC1C,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,CAAC;AAEtD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,KAAiB,EAC4C,EAAE,CAC/D,eAAe,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;AAEvC,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,KAAiB,EAC6C,EAAE,CAChE,eAAe,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;AAMxC,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,KAAiB,EAC2C,EAAE,CAC9D,kBAAkB,CAAC,KAAK,CAAC,CAAC,IAAI,CAC5B,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAoB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,EACtE,MAAM,CAAC,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE,CAChD,qBAAqB,CAAC,KAAK,CAAC,CAAC,IAAI,CAC/B,MAAM,CAAC,GAAG,CACR,CAAC,OAAO,EAAoB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAC/D,CACF,CACF,CACF,CAAC;AAEJ,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,KAInC,EAAmE,EAAE,CACpE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,IAAI,KAAK,CAAC,SAAS,CAAC,aAAa,KAAK,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QAC9D,OAAO,KAAK,CAAC,CAAC,qBAAqB,EAAE,CAAC;IACxC,CAAC;IACD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,uBAAuB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAClE,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,iBAAiB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACxE,OAAO,KAAK,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;QAC/B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;QACxC,iBAAiB,EAAE,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrD,SAAS;QACT,IAAI;KACL,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAClD,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAUlD,MAAM,aAAa,GAAG,CAAC,KAKtB,EAAmE,EAAE,CACpE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CACjD,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAC3B,CAAC;IACF,IACE,CAAC,sBAAsB,CAAC,cAAc,CAAC;QACvC,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,EACjD,CAAC;QACD,OAAO,KAAK,CAAC,CAAC,qBAAqB,EAAE,CAAC;IACxC,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;QACjC,GAAG,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,sBAAsB,CAAC;QAC9C,KAAK,EAAE,qBAAqB;KAC7B,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CACtD,OAAO,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAC5C,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAC/C,OAAO,KAAK,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;QAC/B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;QACxC,iBAAiB,EAAE,IAAI,GAAG,CAAC,cAAc,CAAC;QAC1C,SAAS;QACT,IAAI,EAAE,KAAK,CAAC,IAAI;KACjB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAClD,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;AAE5C,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAK/B,EAAmE,EAAE,CACpE,eAAe,CAAC,YAAY,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAC9C,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAC5D,CAAC;AAEJ,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAKjC,EAAmE,EAAE,CACpE,eAAe,CAAC,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CACjD,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAC5D,CAAC;AAEJ,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,MAAkB,EACoC,EAAE,CACxD,eAAe,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;AAEtC,+EAA+E"}
|