@swal/edge-mesh 0.0.0-stage → 0.1.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 +128 -0
- package/NOTICE +37 -0
- package/README.md +470 -2
- package/dist/adapters/gpu-agent/index.d.ts +61 -0
- package/dist/adapters/gpu-agent/index.d.ts.map +1 -0
- package/dist/adapters/gpu-agent/index.js +364 -0
- package/dist/adapters/gpu-agent/index.js.map +1 -0
- package/dist/adapters/maloca-salud/citas-distribuidas.d.ts +19 -0
- package/dist/adapters/maloca-salud/citas-distribuidas.d.ts.map +1 -0
- package/dist/adapters/maloca-salud/citas-distribuidas.js +51 -0
- package/dist/adapters/maloca-salud/citas-distribuidas.js.map +1 -0
- package/dist/adapters/maloca-salud/eps-bridge.d.ts +15 -0
- package/dist/adapters/maloca-salud/eps-bridge.d.ts.map +1 -0
- package/dist/adapters/maloca-salud/eps-bridge.js +27 -0
- package/dist/adapters/maloca-salud/eps-bridge.js.map +1 -0
- package/dist/adapters/maloca-salud/patient-profile.d.ts +20 -0
- package/dist/adapters/maloca-salud/patient-profile.d.ts.map +1 -0
- package/dist/adapters/maloca-salud/patient-profile.js +36 -0
- package/dist/adapters/maloca-salud/patient-profile.js.map +1 -0
- package/dist/adapters/maloca-salud/types.d.ts +40 -0
- package/dist/adapters/maloca-salud/types.d.ts.map +1 -0
- package/dist/adapters/maloca-salud/types.js +2 -0
- package/dist/adapters/maloca-salud/types.js.map +1 -0
- package/dist/adapters/maloca-veeduria/contract-bridge.d.ts +31 -0
- package/dist/adapters/maloca-veeduria/contract-bridge.d.ts.map +1 -0
- package/dist/adapters/maloca-veeduria/contract-bridge.js +103 -0
- package/dist/adapters/maloca-veeduria/contract-bridge.js.map +1 -0
- package/dist/adapters/maloca-veeduria/evidentia-veeduria.d.ts +14 -0
- package/dist/adapters/maloca-veeduria/evidentia-veeduria.d.ts.map +1 -0
- package/dist/adapters/maloca-veeduria/evidentia-veeduria.js +40 -0
- package/dist/adapters/maloca-veeduria/evidentia-veeduria.js.map +1 -0
- package/dist/adapters/maloca-veeduria/licitante-profile.d.ts +21 -0
- package/dist/adapters/maloca-veeduria/licitante-profile.d.ts.map +1 -0
- package/dist/adapters/maloca-veeduria/licitante-profile.js +58 -0
- package/dist/adapters/maloca-veeduria/licitante-profile.js.map +1 -0
- package/dist/adapters/maloca-veeduria/types.d.ts +30 -0
- package/dist/adapters/maloca-veeduria/types.d.ts.map +1 -0
- package/dist/adapters/maloca-veeduria/types.js +2 -0
- package/dist/adapters/maloca-veeduria/types.js.map +1 -0
- package/dist/adapters/maloca-xavier/agent-profile.d.ts +32 -0
- package/dist/adapters/maloca-xavier/agent-profile.d.ts.map +1 -0
- package/dist/adapters/maloca-xavier/agent-profile.js +56 -0
- package/dist/adapters/maloca-xavier/agent-profile.js.map +1 -0
- package/dist/adapters/maloca-xavier/codegraph-bridge.d.ts +27 -0
- package/dist/adapters/maloca-xavier/codegraph-bridge.d.ts.map +1 -0
- package/dist/adapters/maloca-xavier/codegraph-bridge.js +58 -0
- package/dist/adapters/maloca-xavier/codegraph-bridge.js.map +1 -0
- package/dist/adapters/maloca-xavier/llm-router.d.ts +25 -0
- package/dist/adapters/maloca-xavier/llm-router.d.ts.map +1 -0
- package/dist/adapters/maloca-xavier/llm-router.js +58 -0
- package/dist/adapters/maloca-xavier/llm-router.js.map +1 -0
- package/dist/authz/index.d.ts +81 -0
- package/dist/authz/index.d.ts.map +1 -0
- package/dist/authz/index.js +271 -0
- package/dist/authz/index.js.map +1 -0
- package/dist/chat/index.d.ts +138 -0
- package/dist/chat/index.d.ts.map +1 -0
- package/dist/chat/index.js +394 -0
- package/dist/chat/index.js.map +1 -0
- package/dist/chat/offline-queue.d.ts +32 -0
- package/dist/chat/offline-queue.d.ts.map +1 -0
- package/dist/chat/offline-queue.js +93 -0
- package/dist/chat/offline-queue.js.map +1 -0
- package/dist/core/DefaultEdgeMeshNode.d.ts +17 -0
- package/dist/core/DefaultEdgeMeshNode.d.ts.map +1 -0
- package/dist/core/DefaultEdgeMeshNode.js +57 -0
- package/dist/core/DefaultEdgeMeshNode.js.map +1 -0
- package/dist/core/node.d.ts +26 -0
- package/dist/core/node.d.ts.map +1 -0
- package/dist/core/node.js +16 -0
- package/dist/core/node.js.map +1 -0
- package/dist/edge-mesh.d.ts +139 -0
- package/dist/edge-mesh.d.ts.map +1 -0
- package/dist/edge-mesh.js +1146 -0
- package/dist/edge-mesh.js.map +1 -0
- package/dist/gos/GosBridge.d.ts +49 -0
- package/dist/gos/GosBridge.d.ts.map +1 -0
- package/dist/gos/GosBridge.js +133 -0
- package/dist/gos/GosBridge.js.map +1 -0
- package/dist/governance/authority.d.ts +44 -0
- package/dist/governance/authority.d.ts.map +1 -0
- package/dist/governance/authority.js +123 -0
- package/dist/governance/authority.js.map +1 -0
- package/dist/governance/index.d.ts +66 -0
- package/dist/governance/index.d.ts.map +1 -0
- package/dist/governance/index.js +210 -0
- package/dist/governance/index.js.map +1 -0
- package/dist/governance/merge.d.ts +31 -0
- package/dist/governance/merge.d.ts.map +1 -0
- package/dist/governance/merge.js +167 -0
- package/dist/governance/merge.js.map +1 -0
- package/dist/identity/index.d.ts +199 -0
- package/dist/identity/index.d.ts.map +1 -0
- package/dist/identity/index.js +415 -0
- package/dist/identity/index.js.map +1 -0
- package/dist/index.d.ts +71 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +56 -0
- package/dist/index.js.map +1 -0
- package/dist/maloca/backoffice.d.ts +31 -0
- package/dist/maloca/backoffice.d.ts.map +1 -0
- package/dist/maloca/backoffice.js +40 -0
- package/dist/maloca/backoffice.js.map +1 -0
- package/dist/maloca/event-bus.d.ts +60 -0
- package/dist/maloca/event-bus.d.ts.map +1 -0
- package/dist/maloca/event-bus.js +175 -0
- package/dist/maloca/event-bus.js.map +1 -0
- package/dist/maloca/evidentia.d.ts +136 -0
- package/dist/maloca/evidentia.d.ts.map +1 -0
- package/dist/maloca/evidentia.js +447 -0
- package/dist/maloca/evidentia.js.map +1 -0
- package/dist/maloca/gateway/api.d.ts +146 -0
- package/dist/maloca/gateway/api.d.ts.map +1 -0
- package/dist/maloca/gateway/api.js +228 -0
- package/dist/maloca/gateway/api.js.map +1 -0
- package/dist/maloca/gateway/auth.d.ts +20 -0
- package/dist/maloca/gateway/auth.d.ts.map +1 -0
- package/dist/maloca/gateway/auth.js +115 -0
- package/dist/maloca/gateway/auth.js.map +1 -0
- package/dist/maloca/gateway/dashboard.d.ts +42 -0
- package/dist/maloca/gateway/dashboard.d.ts.map +1 -0
- package/dist/maloca/gateway/dashboard.js +67 -0
- package/dist/maloca/gateway/dashboard.js.map +1 -0
- package/dist/maloca/gateway/websocket.d.ts +34 -0
- package/dist/maloca/gateway/websocket.d.ts.map +1 -0
- package/dist/maloca/gateway/websocket.js +71 -0
- package/dist/maloca/gateway/websocket.js.map +1 -0
- package/dist/maloca/karma.d.ts +165 -0
- package/dist/maloca/karma.d.ts.map +1 -0
- package/dist/maloca/karma.js +307 -0
- package/dist/maloca/karma.js.map +1 -0
- package/dist/maloca/kernel.d.ts +20 -0
- package/dist/maloca/kernel.d.ts.map +1 -0
- package/dist/maloca/kernel.js +76 -0
- package/dist/maloca/kernel.js.map +1 -0
- package/dist/maloca/metadata.d.ts +30 -0
- package/dist/maloca/metadata.d.ts.map +1 -0
- package/dist/maloca/metadata.js +80 -0
- package/dist/maloca/metadata.js.map +1 -0
- package/dist/maloca/perfil.d.ts +57 -0
- package/dist/maloca/perfil.d.ts.map +1 -0
- package/dist/maloca/perfil.js +113 -0
- package/dist/maloca/perfil.js.map +1 -0
- package/dist/maloca/plugin-registry.d.ts +27 -0
- package/dist/maloca/plugin-registry.d.ts.map +1 -0
- package/dist/maloca/plugin-registry.js +76 -0
- package/dist/maloca/plugin-registry.js.map +1 -0
- package/dist/maloca/polygon-bridge.d.ts +63 -0
- package/dist/maloca/polygon-bridge.d.ts.map +1 -0
- package/dist/maloca/polygon-bridge.js +198 -0
- package/dist/maloca/polygon-bridge.js.map +1 -0
- package/dist/maloca/types.d.ts +44 -0
- package/dist/maloca/types.d.ts.map +1 -0
- package/dist/maloca/types.js +2 -0
- package/dist/maloca/types.js.map +1 -0
- package/dist/medico/aval.d.ts +149 -0
- package/dist/medico/aval.d.ts.map +1 -0
- package/dist/medico/aval.js +281 -0
- package/dist/medico/aval.js.map +1 -0
- package/dist/medico/canonica.d.ts +96 -0
- package/dist/medico/canonica.d.ts.map +1 -0
- package/dist/medico/canonica.js +148 -0
- package/dist/medico/canonica.js.map +1 -0
- package/dist/medico/credencial.d.ts +160 -0
- package/dist/medico/credencial.d.ts.map +1 -0
- package/dist/medico/credencial.js +240 -0
- package/dist/medico/credencial.js.map +1 -0
- package/dist/medico/index.d.ts +36 -0
- package/dist/medico/index.d.ts.map +1 -0
- package/dist/medico/index.js +39 -0
- package/dist/medico/index.js.map +1 -0
- package/dist/medico/malla.d.ts +218 -0
- package/dist/medico/malla.d.ts.map +1 -0
- package/dist/medico/malla.js +347 -0
- package/dist/medico/malla.js.map +1 -0
- package/dist/medico/registro-profesional.d.ts +84 -0
- package/dist/medico/registro-profesional.d.ts.map +1 -0
- package/dist/medico/registro-profesional.js +135 -0
- package/dist/medico/registro-profesional.js.map +1 -0
- package/dist/medico/registro.d.ts +149 -0
- package/dist/medico/registro.d.ts.map +1 -0
- package/dist/medico/registro.js +173 -0
- package/dist/medico/registro.js.map +1 -0
- package/dist/medico/types.d.ts +287 -0
- package/dist/medico/types.d.ts.map +1 -0
- package/dist/medico/types.js +135 -0
- package/dist/medico/types.js.map +1 -0
- package/dist/medico/verificacion-registro.d.ts +300 -0
- package/dist/medico/verificacion-registro.d.ts.map +1 -0
- package/dist/medico/verificacion-registro.js +319 -0
- package/dist/medico/verificacion-registro.js.map +1 -0
- package/dist/mesh/index.d.ts +457 -0
- package/dist/mesh/index.d.ts.map +1 -0
- package/dist/mesh/index.js +929 -0
- package/dist/mesh/index.js.map +1 -0
- package/dist/namespaces/encrypted-plugin.d.ts +56 -0
- package/dist/namespaces/encrypted-plugin.d.ts.map +1 -0
- package/dist/namespaces/encrypted-plugin.js +173 -0
- package/dist/namespaces/encrypted-plugin.js.map +1 -0
- package/dist/namespaces/index.d.ts +52 -0
- package/dist/namespaces/index.d.ts.map +1 -0
- package/dist/namespaces/index.js +134 -0
- package/dist/namespaces/index.js.map +1 -0
- package/dist/namespaces/ivn-proofs.d.ts +54 -0
- package/dist/namespaces/ivn-proofs.d.ts.map +1 -0
- package/dist/namespaces/ivn-proofs.js +162 -0
- package/dist/namespaces/ivn-proofs.js.map +1 -0
- package/dist/namespaces/offers-gossip.d.ts +95 -0
- package/dist/namespaces/offers-gossip.d.ts.map +1 -0
- package/dist/namespaces/offers-gossip.js +213 -0
- package/dist/namespaces/offers-gossip.js.map +1 -0
- package/dist/node-memory/idb-store.d.ts +22 -0
- package/dist/node-memory/idb-store.d.ts.map +1 -0
- package/dist/node-memory/idb-store.js +154 -0
- package/dist/node-memory/idb-store.js.map +1 -0
- package/dist/node-memory/index.d.ts +14 -0
- package/dist/node-memory/index.d.ts.map +1 -0
- package/dist/node-memory/index.js +159 -0
- package/dist/node-memory/index.js.map +1 -0
- package/dist/node-memory/sync-flush.d.ts +11 -0
- package/dist/node-memory/sync-flush.d.ts.map +1 -0
- package/dist/node-memory/sync-flush.js +37 -0
- package/dist/node-memory/sync-flush.js.map +1 -0
- package/dist/node-memory/types.d.ts +34 -0
- package/dist/node-memory/types.d.ts.map +1 -0
- package/dist/node-memory/types.js +2 -0
- package/dist/node-memory/types.js.map +1 -0
- package/dist/node-memory/xavier-store.d.ts +12 -0
- package/dist/node-memory/xavier-store.d.ts.map +1 -0
- package/dist/node-memory/xavier-store.js +75 -0
- package/dist/node-memory/xavier-store.js.map +1 -0
- package/dist/op-log/index.d.ts +49 -0
- package/dist/op-log/index.d.ts.map +1 -0
- package/dist/op-log/index.js +190 -0
- package/dist/op-log/index.js.map +1 -0
- package/dist/presence/health.d.ts +54 -0
- package/dist/presence/health.d.ts.map +1 -0
- package/dist/presence/health.js +139 -0
- package/dist/presence/health.js.map +1 -0
- package/dist/presence/index.d.ts +85 -0
- package/dist/presence/index.d.ts.map +1 -0
- package/dist/presence/index.js +255 -0
- package/dist/presence/index.js.map +1 -0
- package/dist/presence/peer-health.d.ts +40 -0
- package/dist/presence/peer-health.d.ts.map +1 -0
- package/dist/presence/peer-health.js +118 -0
- package/dist/presence/peer-health.js.map +1 -0
- package/dist/protocol/canonical.d.ts +10 -0
- package/dist/protocol/canonical.d.ts.map +1 -0
- package/dist/protocol/canonical.js +32 -0
- package/dist/protocol/canonical.js.map +1 -0
- package/dist/protocol/crypto.d.ts +299 -0
- package/dist/protocol/crypto.d.ts.map +1 -0
- package/dist/protocol/crypto.js +739 -0
- package/dist/protocol/crypto.js.map +1 -0
- package/dist/protocol/index.d.ts +30 -0
- package/dist/protocol/index.d.ts.map +1 -0
- package/dist/protocol/index.js +116 -0
- package/dist/protocol/index.js.map +1 -0
- package/dist/protocol/utils.d.ts +5 -0
- package/dist/protocol/utils.d.ts.map +1 -0
- package/dist/protocol/utils.js +27 -0
- package/dist/protocol/utils.js.map +1 -0
- package/dist/salones/manager.d.ts +100 -0
- package/dist/salones/manager.d.ts.map +1 -0
- package/dist/salones/manager.js +240 -0
- package/dist/salones/manager.js.map +1 -0
- package/dist/security/rate-limiter.d.ts +13 -0
- package/dist/security/rate-limiter.d.ts.map +1 -0
- package/dist/security/rate-limiter.js +32 -0
- package/dist/security/rate-limiter.js.map +1 -0
- package/dist/snapshot/index.d.ts +90 -0
- package/dist/snapshot/index.d.ts.map +1 -0
- package/dist/snapshot/index.js +189 -0
- package/dist/snapshot/index.js.map +1 -0
- package/dist/storage/index.d.ts +49 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +176 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/optimizer.d.ts +28 -0
- package/dist/storage/optimizer.d.ts.map +1 -0
- package/dist/storage/optimizer.js +50 -0
- package/dist/storage/optimizer.js.map +1 -0
- package/dist/storage/ydoc-persistence.d.ts +27 -0
- package/dist/storage/ydoc-persistence.d.ts.map +1 -0
- package/dist/storage/ydoc-persistence.js +128 -0
- package/dist/storage/ydoc-persistence.js.map +1 -0
- package/dist/sync/ChunkSyncManager.d.ts +41 -0
- package/dist/sync/ChunkSyncManager.d.ts.map +1 -0
- package/dist/sync/ChunkSyncManager.js +115 -0
- package/dist/sync/ChunkSyncManager.js.map +1 -0
- package/dist/sync/conflict-resolver.d.ts +33 -0
- package/dist/sync/conflict-resolver.d.ts.map +1 -0
- package/dist/sync/conflict-resolver.js +54 -0
- package/dist/sync/conflict-resolver.js.map +1 -0
- package/dist/sync/engine.d.ts +168 -0
- package/dist/sync/engine.d.ts.map +1 -0
- package/dist/sync/engine.js +315 -0
- package/dist/sync/engine.js.map +1 -0
- package/dist/sync/index.d.ts +3 -0
- package/dist/sync/index.d.ts.map +1 -0
- package/dist/sync/index.js +3 -0
- package/dist/sync/index.js.map +1 -0
- package/dist/transport/TorTransportAdapter.d.ts +70 -0
- package/dist/transport/TorTransportAdapter.d.ts.map +1 -0
- package/dist/transport/TorTransportAdapter.js +192 -0
- package/dist/transport/TorTransportAdapter.js.map +1 -0
- package/dist/transport/memory.d.ts +31 -0
- package/dist/transport/memory.d.ts.map +1 -0
- package/dist/transport/memory.js +114 -0
- package/dist/transport/memory.js.map +1 -0
- package/dist/transport/peerjs.d.ts +45 -0
- package/dist/transport/peerjs.d.ts.map +1 -0
- package/dist/transport/peerjs.js +301 -0
- package/dist/transport/peerjs.js.map +1 -0
- package/dist/transport/pqc-handshake.d.ts +72 -0
- package/dist/transport/pqc-handshake.d.ts.map +1 -0
- package/dist/transport/pqc-handshake.js +129 -0
- package/dist/transport/pqc-handshake.js.map +1 -0
- package/dist/transport/relay-config.d.ts +11 -0
- package/dist/transport/relay-config.d.ts.map +1 -0
- package/dist/transport/relay-config.js +48 -0
- package/dist/transport/relay-config.js.map +1 -0
- package/dist/transport/relay-server.d.ts +37 -0
- package/dist/transport/relay-server.d.ts.map +1 -0
- package/dist/transport/relay-server.js +230 -0
- package/dist/transport/relay-server.js.map +1 -0
- package/dist/transport/tor.d.ts +47 -0
- package/dist/transport/tor.d.ts.map +1 -0
- package/dist/transport/tor.js +158 -0
- package/dist/transport/tor.js.map +1 -0
- package/dist/transport/types.d.ts +34 -0
- package/dist/transport/types.d.ts.map +1 -0
- package/dist/transport/types.js +2 -0
- package/dist/transport/types.js.map +1 -0
- package/dist/types/index.d.ts +293 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +73 -0
- package/dist/types/index.js.map +1 -0
- package/dist/web/admission.d.ts +24 -0
- package/dist/web/admission.d.ts.map +1 -0
- package/dist/web/admission.js +41 -0
- package/dist/web/admission.js.map +1 -0
- package/dist/web/crypto.d.ts +18 -0
- package/dist/web/crypto.d.ts.map +1 -0
- package/dist/web/crypto.js +78 -0
- package/dist/web/crypto.js.map +1 -0
- package/dist/web/exchange.d.ts +23 -0
- package/dist/web/exchange.d.ts.map +1 -0
- package/dist/web/exchange.js +54 -0
- package/dist/web/exchange.js.map +1 -0
- package/dist/web/fragment.d.ts +58 -0
- package/dist/web/fragment.d.ts.map +1 -0
- package/dist/web/fragment.js +198 -0
- package/dist/web/fragment.js.map +1 -0
- package/dist/web/index.d.ts +25 -0
- package/dist/web/index.d.ts.map +1 -0
- package/dist/web/index.js +14 -0
- package/dist/web/index.js.map +1 -0
- package/dist/web/merge/index.d.ts +104 -0
- package/dist/web/merge/index.d.ts.map +1 -0
- package/dist/web/merge/index.js +236 -0
- package/dist/web/merge/index.js.map +1 -0
- package/dist/web/oplog/hlc.d.ts +19 -0
- package/dist/web/oplog/hlc.d.ts.map +1 -0
- package/dist/web/oplog/hlc.js +39 -0
- package/dist/web/oplog/hlc.js.map +1 -0
- package/dist/web/oplog/index.d.ts +10 -0
- package/dist/web/oplog/index.d.ts.map +1 -0
- package/dist/web/oplog/index.js +6 -0
- package/dist/web/oplog/index.js.map +1 -0
- package/dist/web/oplog/log.d.ts +182 -0
- package/dist/web/oplog/log.d.ts.map +1 -0
- package/dist/web/oplog/log.js +693 -0
- package/dist/web/oplog/log.js.map +1 -0
- package/dist/web/oplog/store.d.ts +40 -0
- package/dist/web/oplog/store.d.ts.map +1 -0
- package/dist/web/oplog/store.js +85 -0
- package/dist/web/oplog/store.js.map +1 -0
- package/dist/web/oplog/sync.d.ts +54 -0
- package/dist/web/oplog/sync.d.ts.map +1 -0
- package/dist/web/oplog/sync.js +162 -0
- package/dist/web/oplog/sync.js.map +1 -0
- package/dist/web/oplog/types.d.ts +119 -0
- package/dist/web/oplog/types.d.ts.map +1 -0
- package/dist/web/oplog/types.js +2 -0
- package/dist/web/oplog/types.js.map +1 -0
- package/dist/web/pairing.d.ts +186 -0
- package/dist/web/pairing.d.ts.map +1 -0
- package/dist/web/pairing.js +395 -0
- package/dist/web/pairing.js.map +1 -0
- package/dist/web/pq.d.ts +36 -0
- package/dist/web/pq.d.ts.map +1 -0
- package/dist/web/pq.js +59 -0
- package/dist/web/pq.js.map +1 -0
- package/dist/web/provider.d.ts +188 -0
- package/dist/web/provider.d.ts.map +1 -0
- package/dist/web/provider.js +2042 -0
- package/dist/web/provider.js.map +1 -0
- package/dist/web/rooms.d.ts +20 -0
- package/dist/web/rooms.d.ts.map +1 -0
- package/dist/web/rooms.js +51 -0
- package/dist/web/rooms.js.map +1 -0
- package/dist/web/rotation.d.ts +73 -0
- package/dist/web/rotation.d.ts.map +1 -0
- package/dist/web/rotation.js +130 -0
- package/dist/web/rotation.js.map +1 -0
- package/dist/web/secstate.d.ts +213 -0
- package/dist/web/secstate.d.ts.map +1 -0
- package/dist/web/secstate.js +789 -0
- package/dist/web/secstate.js.map +1 -0
- package/dist/web/store.d.ts +9 -0
- package/dist/web/store.d.ts.map +1 -0
- package/dist/web/store.js +32 -0
- package/dist/web/store.js.map +1 -0
- package/dist/web/transports/loopback.d.ts +11 -0
- package/dist/web/transports/loopback.d.ts.map +1 -0
- package/dist/web/transports/loopback.js +97 -0
- package/dist/web/transports/loopback.js.map +1 -0
- package/dist/web/transports/qr-sdp.d.ts +27 -0
- package/dist/web/transports/qr-sdp.d.ts.map +1 -0
- package/dist/web/transports/qr-sdp.js +131 -0
- package/dist/web/transports/qr-sdp.js.map +1 -0
- package/dist/web/transports/ws.d.ts +12 -0
- package/dist/web/transports/ws.d.ts.map +1 -0
- package/dist/web/transports/ws.js +139 -0
- package/dist/web/transports/ws.js.map +1 -0
- package/dist/web/trust/canonical.d.ts +8 -0
- package/dist/web/trust/canonical.d.ts.map +1 -0
- package/dist/web/trust/canonical.js +27 -0
- package/dist/web/trust/canonical.js.map +1 -0
- package/dist/web/trust/docs.d.ts +51 -0
- package/dist/web/trust/docs.d.ts.map +1 -0
- package/dist/web/trust/docs.js +170 -0
- package/dist/web/trust/docs.js.map +1 -0
- package/dist/web/trust/index.d.ts +10 -0
- package/dist/web/trust/index.d.ts.map +1 -0
- package/dist/web/trust/index.js +7 -0
- package/dist/web/trust/index.js.map +1 -0
- package/dist/web/trust/keys.d.ts +37 -0
- package/dist/web/trust/keys.d.ts.map +1 -0
- package/dist/web/trust/keys.js +75 -0
- package/dist/web/trust/keys.js.map +1 -0
- package/dist/web/trust/store.d.ts +150 -0
- package/dist/web/trust/store.d.ts.map +1 -0
- package/dist/web/trust/store.js +587 -0
- package/dist/web/trust/store.js.map +1 -0
- package/dist/web/trust/types.d.ts +134 -0
- package/dist/web/trust/types.d.ts.map +1 -0
- package/dist/web/trust/types.js +4 -0
- package/dist/web/trust/types.js.map +1 -0
- package/dist/web/types.d.ts +115 -0
- package/dist/web/types.d.ts.map +1 -0
- package/dist/web/types.js +2 -0
- package/dist/web/types.js.map +1 -0
- package/dist/web/util.d.ts +12 -0
- package/dist/web/util.d.ts.map +1 -0
- package/dist/web/util.js +54 -0
- package/dist/web/util.js.map +1 -0
- package/dist/web/webrtc.d.ts +35 -0
- package/dist/web/webrtc.d.ts.map +1 -0
- package/dist/web/webrtc.js +304 -0
- package/dist/web/webrtc.js.map +1 -0
- package/package.json +138 -4
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
export class MetadataManager {
|
|
2
|
+
yjs;
|
|
3
|
+
presence;
|
|
4
|
+
metadataMap;
|
|
5
|
+
oplog;
|
|
6
|
+
constructor(yjs, presence, oplog) {
|
|
7
|
+
this.yjs = yjs;
|
|
8
|
+
this.presence = presence;
|
|
9
|
+
this.metadataMap = this.yjs.getMap("maloca:metadata");
|
|
10
|
+
this.oplog = oplog;
|
|
11
|
+
}
|
|
12
|
+
getNetworkStatus() {
|
|
13
|
+
const nodosActivos = this.presence.obtenerNodosActivos();
|
|
14
|
+
const totalNodos = this.presence.obtenerTotalNodos();
|
|
15
|
+
const latencias = nodosActivos.map((id) => ({
|
|
16
|
+
id,
|
|
17
|
+
latencia: this.presence.obtenerLatencia(id),
|
|
18
|
+
}));
|
|
19
|
+
const validLatencies = latencias
|
|
20
|
+
.map((l) => l.latencia)
|
|
21
|
+
.filter((lat) => typeof lat === "number" && lat >= 0);
|
|
22
|
+
const latenciaPromedio = validLatencies.length > 0
|
|
23
|
+
? validLatencies.reduce((a, b) => a + b, 0) /
|
|
24
|
+
validLatencies.length
|
|
25
|
+
: 0;
|
|
26
|
+
return {
|
|
27
|
+
nodosActivos: nodosActivos.length,
|
|
28
|
+
totalNodos,
|
|
29
|
+
latencias,
|
|
30
|
+
latenciaPromedio,
|
|
31
|
+
topologia: "mesh-p2p",
|
|
32
|
+
timestamp: Date.now(),
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
getProfileCache() {
|
|
36
|
+
const profiles = this.yjs.getMap("maloca:profiles");
|
|
37
|
+
return {
|
|
38
|
+
count: profiles.size,
|
|
39
|
+
lastUpdate: Date.now(),
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
async syncMetadata(key, value) {
|
|
43
|
+
if (key !== undefined) {
|
|
44
|
+
this.metadataMap.set(key, value);
|
|
45
|
+
if (this.oplog) {
|
|
46
|
+
await this.oplog.append("metadata:sync", { key, value }, "metadata-manager");
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
else if (this.oplog) {
|
|
50
|
+
await this.oplog.cargarDesdeStorage();
|
|
51
|
+
const ops = await this.oplog.obtenerTodas();
|
|
52
|
+
for (const op of ops) {
|
|
53
|
+
if (op.tipo === "metadata:sync") {
|
|
54
|
+
const data = op.datos;
|
|
55
|
+
this.metadataMap.set(data.key, data.value);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
getProjectInfo(projectId) {
|
|
61
|
+
// Project info could be stored in metadataMap or a specialized projectMap
|
|
62
|
+
const projects = this.yjs.getMap("maloca:projects");
|
|
63
|
+
return projects.get(projectId) || null;
|
|
64
|
+
}
|
|
65
|
+
getSharedMetadata() {
|
|
66
|
+
const status = this.getNetworkStatus();
|
|
67
|
+
const profiles = this.getProfileCache();
|
|
68
|
+
return {
|
|
69
|
+
red: {
|
|
70
|
+
nombre: "SWAL Mesh",
|
|
71
|
+
version: "1.0.0",
|
|
72
|
+
nodosActivos: status.nodosActivos,
|
|
73
|
+
},
|
|
74
|
+
perfiles: profiles.count,
|
|
75
|
+
repositorios: this.metadataMap.get("repositorios") || [],
|
|
76
|
+
plugins: this.metadataMap.get("plugins") || [],
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/maloca/metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { OpLog } from "../op-log/index.js";
|
|
2
|
+
import type { PerfilHumano, PerfilServicio } from "./types.js";
|
|
3
|
+
/**
|
|
4
|
+
* ProfileManager — gestiona perfiles de nodos humanos y servicios
|
|
5
|
+
* usando Operational Log (OpLog) como store subyacente.
|
|
6
|
+
* No contiene lógica de negocio; es infraestructura genérica de la mesh.
|
|
7
|
+
*/
|
|
8
|
+
export type Perfil = PerfilHumano | PerfilServicio;
|
|
9
|
+
export declare class ProfileManager {
|
|
10
|
+
private readonly oplog;
|
|
11
|
+
private cache;
|
|
12
|
+
constructor(oplog: OpLog);
|
|
13
|
+
/**
|
|
14
|
+
* Carga todos los perfiles desde el OpLog hacia el cache en memoria.
|
|
15
|
+
* Debe llamarse después de crear la instancia y antes de usar.
|
|
16
|
+
*/
|
|
17
|
+
loadProfiles(keepExistingCache?: boolean): Promise<void>;
|
|
18
|
+
exportCache(): [string, Perfil][];
|
|
19
|
+
importCache(entries: [string, Perfil][]): void;
|
|
20
|
+
/**
|
|
21
|
+
* Registra o actualiza un perfil en la mesh.
|
|
22
|
+
*/
|
|
23
|
+
upsertProfile(perfil: Perfil, autor: string): Promise<void>;
|
|
24
|
+
/**
|
|
25
|
+
* Obtiene un perfil por su ID.
|
|
26
|
+
*/
|
|
27
|
+
getProfile(id: string): Perfil | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* Lista todos los perfiles registrados.
|
|
30
|
+
*/
|
|
31
|
+
listProfiles(): Perfil[];
|
|
32
|
+
/**
|
|
33
|
+
* Busca perfiles por alias (humanos) o por tipo (servicios).
|
|
34
|
+
*/
|
|
35
|
+
searchProfiles(query: string): Perfil[];
|
|
36
|
+
/**
|
|
37
|
+
* Vincula un perfil humano a un proyecto.
|
|
38
|
+
*/
|
|
39
|
+
linkToProject(profileId: string, projectId: string): Promise<void>;
|
|
40
|
+
/**
|
|
41
|
+
* Registra o actualiza un perfil en la mesh.
|
|
42
|
+
*/
|
|
43
|
+
register(profile: Perfil): Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* Obtiene un perfil por su ID (cache local + lookup en la mesh/OpLog).
|
|
46
|
+
*/
|
|
47
|
+
get(id: string): Promise<Perfil | undefined>;
|
|
48
|
+
/**
|
|
49
|
+
* Actualiza un perfil con sync.
|
|
50
|
+
*/
|
|
51
|
+
update(id: string, delta: Partial<Perfil>): Promise<void>;
|
|
52
|
+
/**
|
|
53
|
+
* Búsqueda distribuida de perfiles (recargando opLog).
|
|
54
|
+
*/
|
|
55
|
+
search(query: string): Promise<Perfil[]>;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=perfil.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"perfil.d.ts","sourceRoot":"","sources":["../../src/maloca/perfil.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE/D;;;;GAIG;AACH,MAAM,MAAM,MAAM,GAAG,YAAY,GAAG,cAAc,CAAC;AAEnD,qBAAa,cAAc;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,KAAK,CAAkC;IAE/C,YAAY,KAAK,EAAE,KAAK,EAEvB;IAED;;;OAGG;IACG,YAAY,CAAC,iBAAiB,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAY3D;IAED,WAAW,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAEhC;IAED,WAAW,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,IAAI,CAE7C;IAED;;OAEG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhE;IAED;;OAEG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEzC;IAED;;OAEG;IACH,YAAY,IAAI,MAAM,EAAE,CAEvB;IAED;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAQtC;IAED;;OAEG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAYvE;IAED;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7C;IAED;;OAEG;IACG,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAOjD;IAED;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAO9D;IAED;;OAEG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAG7C;CACD"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
export class ProfileManager {
|
|
2
|
+
oplog;
|
|
3
|
+
cache = new Map();
|
|
4
|
+
constructor(oplog) {
|
|
5
|
+
this.oplog = oplog;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Carga todos los perfiles desde el OpLog hacia el cache en memoria.
|
|
9
|
+
* Debe llamarse después de crear la instancia y antes de usar.
|
|
10
|
+
*/
|
|
11
|
+
async loadProfiles(keepExistingCache = false) {
|
|
12
|
+
await this.oplog.cargarDesdeStorage();
|
|
13
|
+
if (!keepExistingCache) {
|
|
14
|
+
this.cache.clear();
|
|
15
|
+
}
|
|
16
|
+
const ops = await this.oplog.obtenerTodas();
|
|
17
|
+
for (const op of ops) {
|
|
18
|
+
if (op.tipo === "profile:upsert") {
|
|
19
|
+
const perfil = op.datos;
|
|
20
|
+
this.cache.set(perfil.id, perfil);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exportCache() {
|
|
25
|
+
return Array.from(this.cache.entries());
|
|
26
|
+
}
|
|
27
|
+
importCache(entries) {
|
|
28
|
+
this.cache = new Map(entries);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Registra o actualiza un perfil en la mesh.
|
|
32
|
+
*/
|
|
33
|
+
async upsertProfile(perfil, autor) {
|
|
34
|
+
this.cache.set(perfil.id, perfil);
|
|
35
|
+
await this.oplog.append("profile:upsert", perfil, autor);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Obtiene un perfil por su ID.
|
|
39
|
+
*/
|
|
40
|
+
getProfile(id) {
|
|
41
|
+
return this.cache.get(id);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Lista todos los perfiles registrados.
|
|
45
|
+
*/
|
|
46
|
+
listProfiles() {
|
|
47
|
+
return Array.from(this.cache.values());
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Busca perfiles por alias (humanos) o por tipo (servicios).
|
|
51
|
+
*/
|
|
52
|
+
searchProfiles(query) {
|
|
53
|
+
const lower = query.toLowerCase();
|
|
54
|
+
return this.listProfiles().filter((p) => {
|
|
55
|
+
if ("alias" in p) {
|
|
56
|
+
return p.alias.toLowerCase().includes(lower);
|
|
57
|
+
}
|
|
58
|
+
return p.id.toLowerCase().includes(lower);
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Vincula un perfil humano a un proyecto.
|
|
63
|
+
*/
|
|
64
|
+
async linkToProject(profileId, projectId) {
|
|
65
|
+
const perfil = this.cache.get(profileId);
|
|
66
|
+
if (!perfil)
|
|
67
|
+
throw new Error(`Profile ${profileId} not found`);
|
|
68
|
+
if (!("proyectos" in perfil))
|
|
69
|
+
throw new Error(`Profile ${profileId} is not a human profile`);
|
|
70
|
+
const updated = {
|
|
71
|
+
...perfil,
|
|
72
|
+
proyectos: [...new Set([...perfil.proyectos, projectId])],
|
|
73
|
+
};
|
|
74
|
+
this.cache.set(profileId, updated);
|
|
75
|
+
await this.upsertProfile(updated, profileId);
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Registra o actualiza un perfil en la mesh.
|
|
79
|
+
*/
|
|
80
|
+
async register(profile) {
|
|
81
|
+
await this.upsertProfile(profile, profile.id);
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Obtiene un perfil por su ID (cache local + lookup en la mesh/OpLog).
|
|
85
|
+
*/
|
|
86
|
+
async get(id) {
|
|
87
|
+
let profile = this.getProfile(id);
|
|
88
|
+
if (!profile) {
|
|
89
|
+
await this.loadProfiles(true);
|
|
90
|
+
profile = this.getProfile(id);
|
|
91
|
+
}
|
|
92
|
+
return profile;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Actualiza un perfil con sync.
|
|
96
|
+
*/
|
|
97
|
+
async update(id, delta) {
|
|
98
|
+
const existing = this.getProfile(id);
|
|
99
|
+
if (!existing) {
|
|
100
|
+
throw new Error(`Profile ${id} not found`);
|
|
101
|
+
}
|
|
102
|
+
const updated = { ...existing, ...delta };
|
|
103
|
+
await this.upsertProfile(updated, id);
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Búsqueda distribuida de perfiles (recargando opLog).
|
|
107
|
+
*/
|
|
108
|
+
async search(query) {
|
|
109
|
+
await this.loadProfiles(true);
|
|
110
|
+
return this.searchProfiles(query);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=perfil.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"perfil.js","sourceRoot":"","sources":["../../src/maloca/perfil.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,cAAc;IACT,KAAK,CAAQ;IACtB,KAAK,GAAwB,IAAI,GAAG,EAAE,CAAC;IAE/C,YAAY,KAAY;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,iBAAiB,GAAG,KAAK;QAC3C,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC;QACtC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACxB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACpB,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;QAC5C,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACtB,IAAI,EAAE,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBAClC,MAAM,MAAM,GAAG,EAAE,CAAC,KAAe,CAAC;gBAClC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACnC,CAAC;QACF,CAAC;IACF,CAAC;IAED,WAAW;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,WAAW,CAAC,OAA2B;QACtC,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,MAAc,EAAE,KAAa;QAChD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAClC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,EAAE,KAAY,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,EAAU;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,YAAY;QACX,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,KAAa;QAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACvC,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;gBAClB,OAAO,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC9C,CAAC;YACD,OAAO,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,SAAiB;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,YAAY,CAAC,CAAC;QAC/D,IAAI,CAAC,CAAC,WAAW,IAAI,MAAM,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,yBAAyB,CAAC,CAAC;QAEhE,MAAM,OAAO,GAAG;YACf,GAAG,MAAM;YACT,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;SACzC,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,OAAiB,CAAC,CAAC;QAC7C,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAe;QAC7B,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,EAAU;QACnB,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAC9B,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,OAAO,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,KAAsB;QAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,OAAO,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,KAAK,EAAY,CAAC;QACpD,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,KAAa;QACzB,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;CACD"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { MeshManager } from "../mesh/index.js";
|
|
2
|
+
import type { NodoId } from "../types/index.js";
|
|
3
|
+
export type TipoPlugin = "proyecto" | "servicio" | "adapter";
|
|
4
|
+
export type EstadoPlugin = "activo" | "inactivo" | "error";
|
|
5
|
+
export interface PluginInfo {
|
|
6
|
+
readonly id: string;
|
|
7
|
+
readonly tipo: TipoPlugin;
|
|
8
|
+
readonly version: string;
|
|
9
|
+
readonly capacidades: readonly string[];
|
|
10
|
+
readonly endpoint?: string;
|
|
11
|
+
readonly estado: EstadoPlugin;
|
|
12
|
+
readonly nodoId: NodoId;
|
|
13
|
+
readonly timestamp: number;
|
|
14
|
+
}
|
|
15
|
+
export declare class PluginRegistry extends EventTarget {
|
|
16
|
+
private readonly mesh;
|
|
17
|
+
private readonly plugins;
|
|
18
|
+
private readonly NAMESPACE;
|
|
19
|
+
constructor(mesh: MeshManager);
|
|
20
|
+
register(plugin: Omit<PluginInfo, "nodoId" | "timestamp" | "estado">): Promise<void>;
|
|
21
|
+
discover(tipo?: TipoPlugin, capacidad?: string): readonly PluginInfo[];
|
|
22
|
+
getPlugin(pluginId: string): PluginInfo | null;
|
|
23
|
+
listPlugins(): readonly PluginInfo[];
|
|
24
|
+
healthCheck(pluginId: string): Promise<boolean>;
|
|
25
|
+
onPluginEvent(evento: unknown): void;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=plugin-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-registry.d.ts","sourceRoot":"","sources":["../../src/maloca/plugin-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAiB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAIhD,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;AAC7D,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;AAE3D,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC3B;AAID,qBAAa,cAAe,SAAQ,WAAW;IAC9C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAc;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAClD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqB;IAE/C,YAAY,IAAI,EAAE,WAAW,EAa5B;IAEK,QAAQ,CACb,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC,GACzD,OAAO,CAAC,IAAI,CAAC,CAiBf;IAED,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,UAAU,EAAE,CAQrE;IAED,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAE7C;IAED,WAAW,IAAI,SAAS,UAAU,EAAE,CAEnC;IAEK,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAYpD;IAED,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAiBnC;CACD"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
// ─── PLUGIN REGISTRY ───────────────────────────────────────────────────────
|
|
2
|
+
export class PluginRegistry extends EventTarget {
|
|
3
|
+
mesh;
|
|
4
|
+
plugins;
|
|
5
|
+
NAMESPACE = "_maloca:plugins";
|
|
6
|
+
constructor(mesh) {
|
|
7
|
+
super();
|
|
8
|
+
this.mesh = mesh;
|
|
9
|
+
this.plugins = new Map();
|
|
10
|
+
// Escuchar eventos de gossip para descubrir plugins de otros nodos
|
|
11
|
+
this.mesh.addEventListener("gossipRecibido", (ev) => {
|
|
12
|
+
const customEv = ev;
|
|
13
|
+
const { mensaje } = customEv.detail;
|
|
14
|
+
if (mensaje.namespace === this.NAMESPACE) {
|
|
15
|
+
this.onPluginEvent(mensaje.payload);
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
async register(plugin) {
|
|
20
|
+
const info = {
|
|
21
|
+
...plugin,
|
|
22
|
+
nodoId: this.mesh.config.nodoId,
|
|
23
|
+
timestamp: Date.now(),
|
|
24
|
+
estado: "activo",
|
|
25
|
+
};
|
|
26
|
+
this.plugins.set(info.id, info);
|
|
27
|
+
// Notificar a la red
|
|
28
|
+
await this.mesh.transmitirConGossip(this.NAMESPACE, {
|
|
29
|
+
tipo: "PLUGIN_REGISTERED",
|
|
30
|
+
plugin: info,
|
|
31
|
+
});
|
|
32
|
+
this.dispatchEvent(new CustomEvent("pluginRegistrado", { detail: info }));
|
|
33
|
+
}
|
|
34
|
+
discover(tipo, capacidad) {
|
|
35
|
+
return Array.from(this.plugins.values()).filter((p) => {
|
|
36
|
+
const matchTipo = tipo ? p.tipo === tipo : true;
|
|
37
|
+
const matchCapacidad = capacidad
|
|
38
|
+
? p.capacidades.includes(capacidad)
|
|
39
|
+
: true;
|
|
40
|
+
return matchTipo && matchCapacidad;
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
getPlugin(pluginId) {
|
|
44
|
+
return this.plugins.get(pluginId) ?? null;
|
|
45
|
+
}
|
|
46
|
+
listPlugins() {
|
|
47
|
+
return Array.from(this.plugins.values());
|
|
48
|
+
}
|
|
49
|
+
async healthCheck(pluginId) {
|
|
50
|
+
const plugin = this.plugins.get(pluginId);
|
|
51
|
+
if (!plugin)
|
|
52
|
+
return false;
|
|
53
|
+
// Si es local, asumimos que está vivo si está en el mapa (o podríamos chequear endpoint)
|
|
54
|
+
if (plugin.nodoId === this.mesh.config.nodoId) {
|
|
55
|
+
return plugin.estado === "activo";
|
|
56
|
+
}
|
|
57
|
+
// Si es remoto, chequeamos si el nodo está activo en el mesh
|
|
58
|
+
const peerInfo = this.mesh.obtenerPeerInfo(plugin.nodoId);
|
|
59
|
+
return peerInfo !== null && peerInfo.estado === "activo";
|
|
60
|
+
}
|
|
61
|
+
onPluginEvent(evento) {
|
|
62
|
+
if (typeof evento !== "object" || evento === null)
|
|
63
|
+
return;
|
|
64
|
+
const payload = evento;
|
|
65
|
+
if (payload.tipo === "PLUGIN_REGISTERED" ||
|
|
66
|
+
payload.tipo === "PLUGIN_DISCOVERED") {
|
|
67
|
+
const { plugin } = payload;
|
|
68
|
+
this.plugins.set(plugin.id, {
|
|
69
|
+
...plugin,
|
|
70
|
+
timestamp: Date.now(), // Actualizar timestamp de avistamiento
|
|
71
|
+
});
|
|
72
|
+
this.dispatchEvent(new CustomEvent("pluginDescubierto", { detail: plugin }));
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=plugin-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-registry.js","sourceRoot":"","sources":["../../src/maloca/plugin-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
export interface Anchor {
|
|
2
|
+
merkleRoot: string;
|
|
3
|
+
cid: string;
|
|
4
|
+
timestamp?: number;
|
|
5
|
+
}
|
|
6
|
+
export interface PolygonBridgeConfig {
|
|
7
|
+
rpcUrl: string;
|
|
8
|
+
contractAddress: string;
|
|
9
|
+
privateKey?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface PolygonBridge {
|
|
12
|
+
submitAnchor(anchor: Anchor): Promise<string>;
|
|
13
|
+
getAnchor(txHash: string): Promise<Anchor | null>;
|
|
14
|
+
verifyOnChain(merkleRoot: string, proof: string[], leaf?: string): Promise<boolean>;
|
|
15
|
+
getLastAnchorBlock(): Promise<number>;
|
|
16
|
+
getQueue(): Anchor[];
|
|
17
|
+
clearQueue(): void;
|
|
18
|
+
flushQueue(): Promise<string | null>;
|
|
19
|
+
}
|
|
20
|
+
export declare const EVIDENTIA_ANCHOR_ABI: string[];
|
|
21
|
+
export declare const EVIDENTIA_ANCHOR_BYTECODE = "6080604052348015600e575f5ffd5b50610d728061001c5f395ff3fe608060405234801561000f575f5ffd5b506004361061004a575f3560e01c80633d2fa6de1461004e5780639da7347c1461006a578063b01b6d531461009a578063f6a1a14b146100cb575b5f5ffd5b61006860048036038101906100639190610570565b6100e7565b005b610084600480360381019061007f9190610622565b6101b1565b60405161009191906106ad565b60405180910390f35b6100b460048036038101906100af91906106c6565b610286565b6040516100c2929190610779565b60405180910390f35b6100e560048036038101906100e091906107fc565b61032b565b005b604051806040016040528083838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508152602001428152505f5f8581526020019081526020015f205f820151815f0190816101629190610ab5565b5060208201518160010155905050827f07833cba3144cd16b692ac14ef1b6f77f743ee5519895d3a98e4aaf7637fe45d8383426040516101a493929190610bbe565b60405180910390a2505050565b5f5f5f5f8781526020019081526020015f2060010154036101d4575f905061027e565b5f8490505f5f90505b84849050811015610276575f8585838181106101fc576101fb610bee565b5b90506020020135905080831161023c57828160405160200161021f929190610c3b565b604051602081830303815290604052805190602001209250610268565b808360405160200161024f929190610c3b565b6040516020818303038152906040528051906020012092505b5080806001019150506101dd565b508581149150505b949350505050565b5f602052805f5260405f205f91509050805f0180546102a4906108d4565b80601f01602080910402602001604051908101604052809291908181526020018280546102d0906108d4565b801561031b5780601f106102f25761010080835404028352916020019161031b565b820191905f5260205f20905b8154815290600101906020018083116102fe57829003601f168201915b5050505050908060010154905082565b818190508484905014610373576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161036a90610cb0565b60405180910390fd5b5f5f90505b848490508110156104cd5760405180604001604052808484848181106103a1576103a0610bee565b5b90506020028101906103b39190610cda565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050508152602001428152505f5f87878581811061041357610412610bee565b5b9050602002013581526020019081526020015f205f820151815f01908161043a9190610ab5565b506020820151816001015590505084848281811061045b5761045a610bee565b5b905060200201357f07833cba3144cd16b692ac14ef1b6f77f743ee5519895d3a98e4aaf7637fe45d84848481811061049657610495610bee565b5b90506020028101906104a89190610cda565b426040516104b893929190610bbe565b60405180910390a28080600101915050610378565b5050505050565b5f5ffd5b5f5ffd5b5f819050919050565b6104ee816104dc565b81146104f8575f5ffd5b50565b5f81359050610509816104e5565b92915050565b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f8401126105305761052f61050f565b5b8235905067ffffffffffffffff81111561054d5761054c610513565b5b60208301915083600182028301111561056957610568610517565b5b9250929050565b5f5f5f60408486031215610587576105866104d4565b5b5f610594868287016104fb565b935050602084013567ffffffffffffffff8111156105b5576105b46104d8565b5b6105c18682870161051b565b92509250509250925092565b5f5f83601f8401126105e2576105e161050f565b5b8235905067ffffffffffffffff8111156105ff576105fe610513565b5b60208301915083602082028301111561061b5761061a610517565b5b9250929050565b5f5f5f5f6060858703121561063a576106396104d4565b5b5f610647878288016104fb565b935050604085013567ffffffffffffffff811115610679576106786104d8565b5b610685878288016105cd565b925092505092959194509250565b5f8115159050919050565b6106a781610693565b82525050565b5f6020820190506106c05f83018461069e565b92915050565b5f602082840312156106db576106da6104d4565b5b5f6106e8848285016104fb565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f610733826106f1565b61073d81856106fb565b935061074d81856020860161070b565b61075681610719565b840191505092915050565b5f819050919050565b61077381610761565b82525050565b5f6040820190508181035f8301526107918185610729565b90506107a0602083018461076a565b9392505050565b5f5f83601f8401126107bc576107bb61050f565b5b8235905067ffffffffffffffff8111156107d9576107d8610513565b5b6020830191508360208202830111156107f5576107f4610517565b5b9250929050565b5f5f5f5f60408587031215610814576108136104d4565b5b5f85013567ffffffffffffffff811115610831576108306104d8565b5b61083d878288016105cd565b9450945050602085013567ffffffffffffffff8111156108605761085f6104d8565b5b61086c878288016107a7565b925092505092959194509250565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806108eb57607f821691505b6020821081036108fe576108fd6108a7565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026109607fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610925565b61096a8683610925565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6109a56109a061099b84610761565b610982565b610761565b9050919050565b5f819050919050565b6109be8361098b565b6109d26109ca826109ac565b848454610931565b825550505050565b5f5f905090565b6109e96109da565b6109f48184846109b5565b505050565b5f5b82811015610a1a57610a0f5f8284016109e1565b6001810190506109fb565b505050565b601f821115610a6d5782821115610a6c57610a3981610904565b610a4283610916565b610a4b85610916565b6020861015610a58575f90505b808301610a67828403826109f9565b505050505b5b505050565b5f82821c905092915050565b5f610a8d5f1984600802610a72565b1980831691505092915050565b5f610aa58383610a7e565b9150826002028217905092915050565b610abe826106f1565b67ffffffffffffffff811115610ad757610ad661087a565b5b610ae182546108d4565b610aec828285610a1f565b5f60209050601f831160018114610b1d575f8415610b0b578287015190505b610b158582610a9a565b865550610b7c565b601f198416610b2b86610904565b5f5b82811015610b5257848901518255600182019150602085019450602081019050610b2d565b86831015610b6f5784890151610b6b601f891682610a7e565b8355505b6001600288020188555050505b505050505050565b828183375f83830152505050565b5f610b9d83856106fb565b9350610baa838584610b84565b610bb383610719565b840190509392505050565b5f6040820190508181035f830152610bd7818587610b92565b9050610be6602083018461076a565b949350505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f819050919050565b610c35610c30826104dc565b610c1b565b82525050565b5f610c468285610c24565b602082019150610c568284610c24565b6020820191508190509392505050565b7f4c656e677468206d69736d6174636800000000000000000000000000000000005f82015250565b5f610c9a600f836106fb565b9150610ca582610c66565b602082019050919050565b5f6020820190508181035f830152610cc781610c8e565b9050919050565b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83356001602003843603038112610cf657610cf5610cce565b5b80840192508235915067ffffffffffffffff821115610d1857610d17610cd2565b5b602083019250600182023603831315610d3457610d33610cd6565b5b50925092905056fea264697066735822122013ec0094c28329a28c56d8464436cda8ddcaa624fbccab6a1d017cf97d31d0c064736f6c63430008240033";
|
|
22
|
+
export declare class PolygonBridgeImpl implements PolygonBridge {
|
|
23
|
+
private readonly config;
|
|
24
|
+
private provider;
|
|
25
|
+
private wallet;
|
|
26
|
+
private contract;
|
|
27
|
+
private offlineQueue;
|
|
28
|
+
constructor(config: PolygonBridgeConfig);
|
|
29
|
+
/**
|
|
30
|
+
* Envía un anchor individual (merkleRoot + cid) a Polygon.
|
|
31
|
+
* Si la red o el proveedor no están disponibles, se encola localmente y lanza un error.
|
|
32
|
+
*/
|
|
33
|
+
submitAnchor(anchor: Anchor): Promise<string>;
|
|
34
|
+
/**
|
|
35
|
+
* Obtiene los detalles de un Anchor basándose en el hash de transacción o logs.
|
|
36
|
+
*/
|
|
37
|
+
getAnchor(txHash: string): Promise<Anchor | null>;
|
|
38
|
+
/**
|
|
39
|
+
* Verifica un Merkle proof contra el root on-chain de Polygon.
|
|
40
|
+
*/
|
|
41
|
+
verifyOnChain(merkleRoot: string, proof: string[], leaf?: string): Promise<boolean>;
|
|
42
|
+
/**
|
|
43
|
+
* Obtiene el último bloque de Polygon.
|
|
44
|
+
*/
|
|
45
|
+
getLastAnchorBlock(): Promise<number>;
|
|
46
|
+
/**
|
|
47
|
+
* Retorna la cola de anchors fuera de línea.
|
|
48
|
+
*/
|
|
49
|
+
getQueue(): Anchor[];
|
|
50
|
+
/**
|
|
51
|
+
* Vacía la cola.
|
|
52
|
+
*/
|
|
53
|
+
clearQueue(): void;
|
|
54
|
+
/**
|
|
55
|
+
* Envía todos los anchors encolados en una sola transacción batch.
|
|
56
|
+
*/
|
|
57
|
+
flushQueue(): Promise<string | null>;
|
|
58
|
+
/**
|
|
59
|
+
* Despliega programáticamente una instancia del contrato EvidentiaAnchor.
|
|
60
|
+
*/
|
|
61
|
+
static deploy(rpcUrl: string, privateKey: string): Promise<string>;
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=polygon-bridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polygon-bridge.d.ts","sourceRoot":"","sources":["../../src/maloca/polygon-bridge.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,MAAM;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC7B,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAClD,aAAa,CACZ,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EAAE,EACf,IAAI,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,QAAQ,IAAI,MAAM,EAAE,CAAC;IACrB,UAAU,IAAI,IAAI,CAAC;IACnB,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CACrC;AAID,eAAO,MAAM,oBAAoB,UAMhC,CAAC;AAEF,eAAO,MAAM,yBAAyB,+vNACutN,CAAC;AAI9vN,qBAAa,iBAAkB,YAAW,aAAa;IACtD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAC7C,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,YAAY,CAAgB;IAEpC,YAAY,MAAM,EAAE,mBAAmB,EAgBtC;IAED;;;OAGG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAuBlD;IAED;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA4DtD;IAED;;OAEG;IACG,aAAa,CAClB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EAAE,EACf,IAAI,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,OAAO,CAAC,CAWlB;IAED;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CAO1C;IAED;;OAEG;IACH,QAAQ,IAAI,MAAM,EAAE,CAEnB;IAED;;OAEG;IACH,UAAU,IAAI,IAAI,CAEjB;IAED;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA6BzC;IAED;;OAEG;IACH,OAAa,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAYvE;CACD"}
|