@omnitron-dev/omnitron 0.2.0 → 0.3.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/dist/BUILD.json +5 -0
- package/dist/cli/omnitron.js +351 -29
- package/dist/cli/omnitron.js.map +1 -1
- package/dist/cluster/cluster.rpc-service.d.ts +40 -0
- package/dist/cluster/cluster.rpc-service.d.ts.map +1 -1
- package/dist/cluster/cluster.rpc-service.js +49 -3
- package/dist/cluster/cluster.rpc-service.js.map +1 -1
- package/dist/cluster/config-sync.d.ts.map +1 -1
- package/dist/cluster/config-sync.js.map +1 -1
- package/dist/cluster/leader-election.d.ts +90 -2
- package/dist/cluster/leader-election.d.ts.map +1 -1
- package/dist/cluster/leader-election.js +176 -22
- package/dist/cluster/leader-election.js.map +1 -1
- package/dist/cluster/mesh-link.d.ts +136 -0
- package/dist/cluster/mesh-link.d.ts.map +1 -0
- package/dist/cluster/mesh-link.js +212 -0
- package/dist/cluster/mesh-link.js.map +1 -0
- package/dist/cluster/mesh.d.ts +59 -0
- package/dist/cluster/mesh.d.ts.map +1 -0
- package/dist/cluster/mesh.js +117 -0
- package/dist/cluster/mesh.js.map +1 -0
- package/dist/cluster/slave-connector.d.ts +193 -9
- package/dist/cluster/slave-connector.d.ts.map +1 -1
- package/dist/cluster/slave-connector.js +409 -37
- package/dist/cluster/slave-connector.js.map +1 -1
- package/dist/commands/audit.d.ts +65 -0
- package/dist/commands/audit.d.ts.map +1 -0
- package/dist/commands/audit.js +233 -0
- package/dist/commands/audit.js.map +1 -0
- package/dist/commands/backup.d.ts +4 -0
- package/dist/commands/backup.d.ts.map +1 -1
- package/dist/commands/backup.js +255 -33
- package/dist/commands/backup.js.map +1 -1
- package/dist/commands/cluster.d.ts.map +1 -1
- package/dist/commands/cluster.js +78 -47
- package/dist/commands/cluster.js.map +1 -1
- package/dist/commands/daemon-cmd.d.ts +7 -1
- package/dist/commands/daemon-cmd.d.ts.map +1 -1
- package/dist/commands/daemon-cmd.js +87 -21
- package/dist/commands/daemon-cmd.js.map +1 -1
- package/dist/commands/daemon-required.d.ts +34 -0
- package/dist/commands/daemon-required.d.ts.map +1 -0
- package/dist/commands/daemon-required.js +92 -0
- package/dist/commands/daemon-required.js.map +1 -0
- package/dist/commands/deploy.d.ts +70 -8
- package/dist/commands/deploy.d.ts.map +1 -1
- package/dist/commands/deploy.js +99 -64
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/discover.d.ts +25 -4
- package/dist/commands/discover.d.ts.map +1 -1
- package/dist/commands/discover.js +155 -102
- package/dist/commands/discover.js.map +1 -1
- package/dist/commands/doctor.d.ts +293 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +1706 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/env.d.ts +8 -1
- package/dist/commands/env.d.ts.map +1 -1
- package/dist/commands/env.js +13 -8
- package/dist/commands/env.js.map +1 -1
- package/dist/commands/exec.d.ts.map +1 -1
- package/dist/commands/exec.js +3 -2
- package/dist/commands/exec.js.map +1 -1
- package/dist/commands/fleet-asking.d.ts +87 -0
- package/dist/commands/fleet-asking.d.ts.map +1 -0
- package/dist/commands/fleet-asking.js +176 -0
- package/dist/commands/fleet-asking.js.map +1 -0
- package/dist/commands/fleet.d.ts +18 -0
- package/dist/commands/fleet.d.ts.map +1 -1
- package/dist/commands/fleet.js +314 -74
- package/dist/commands/fleet.js.map +1 -1
- package/dist/commands/health-check.d.ts +8 -6
- package/dist/commands/health-check.d.ts.map +1 -1
- package/dist/commands/health-check.js +26 -23
- package/dist/commands/health-check.js.map +1 -1
- package/dist/commands/health.d.ts.map +1 -1
- package/dist/commands/health.js +22 -8
- package/dist/commands/health.js.map +1 -1
- package/dist/commands/infra.d.ts +42 -1
- package/dist/commands/infra.d.ts.map +1 -1
- package/dist/commands/infra.js +418 -49
- package/dist/commands/infra.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +21 -36
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/inspect-graph.d.ts.map +1 -1
- package/dist/commands/inspect-graph.js +2 -6
- package/dist/commands/inspect-graph.js.map +1 -1
- package/dist/commands/inspect.d.ts.map +1 -1
- package/dist/commands/inspect.js +110 -14
- package/dist/commands/inspect.js.map +1 -1
- package/dist/commands/k8s.d.ts.map +1 -1
- package/dist/commands/k8s.js +23 -18
- package/dist/commands/k8s.js.map +1 -1
- package/dist/commands/kb.d.ts.map +1 -1
- package/dist/commands/kb.js +88 -29
- package/dist/commands/kb.js.map +1 -1
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +21 -9
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/log-health.d.ts +120 -0
- package/dist/commands/log-health.d.ts.map +1 -0
- package/dist/commands/log-health.js +212 -0
- package/dist/commands/log-health.js.map +1 -0
- package/dist/commands/logs.d.ts +96 -2
- package/dist/commands/logs.d.ts.map +1 -1
- package/dist/commands/logs.js +522 -196
- package/dist/commands/logs.js.map +1 -1
- package/dist/commands/metrics.d.ts.map +1 -1
- package/dist/commands/metrics.js +35 -17
- package/dist/commands/metrics.js.map +1 -1
- package/dist/commands/monit.d.ts.map +1 -1
- package/dist/commands/monit.js +3 -2
- package/dist/commands/monit.js.map +1 -1
- package/dist/commands/node.d.ts +68 -0
- package/dist/commands/node.d.ts.map +1 -1
- package/dist/commands/node.js +285 -68
- package/dist/commands/node.js.map +1 -1
- package/dist/commands/output.d.ts +10 -0
- package/dist/commands/output.d.ts.map +1 -1
- package/dist/commands/output.js +41 -1
- package/dist/commands/output.js.map +1 -1
- package/dist/commands/pipeline.d.ts.map +1 -1
- package/dist/commands/pipeline.js +26 -19
- package/dist/commands/pipeline.js.map +1 -1
- package/dist/commands/project.d.ts +19 -0
- package/dist/commands/project.d.ts.map +1 -1
- package/dist/commands/project.js +125 -27
- package/dist/commands/project.js.map +1 -1
- package/dist/commands/release-store.d.ts +28 -0
- package/dist/commands/release-store.d.ts.map +1 -0
- package/dist/commands/release-store.js +158 -0
- package/dist/commands/release-store.js.map +1 -0
- package/dist/commands/release.d.ts +61 -0
- package/dist/commands/release.d.ts.map +1 -0
- package/dist/commands/release.js +555 -0
- package/dist/commands/release.js.map +1 -0
- package/dist/commands/reload.d.ts +16 -0
- package/dist/commands/reload.d.ts.map +1 -1
- package/dist/commands/reload.js +21 -5
- package/dist/commands/reload.js.map +1 -1
- package/dist/commands/remote.d.ts +40 -0
- package/dist/commands/remote.d.ts.map +1 -1
- package/dist/commands/remote.js +146 -35
- package/dist/commands/remote.js.map +1 -1
- package/dist/commands/restart.d.ts +16 -0
- package/dist/commands/restart.d.ts.map +1 -1
- package/dist/commands/restart.js +21 -5
- package/dist/commands/restart.js.map +1 -1
- package/dist/commands/scale.d.ts.map +1 -1
- package/dist/commands/scale.js +4 -3
- package/dist/commands/scale.js.map +1 -1
- package/dist/commands/secret.d.ts +54 -0
- package/dist/commands/secret.d.ts.map +1 -1
- package/dist/commands/secret.js +236 -34
- package/dist/commands/secret.js.map +1 -1
- package/dist/commands/service-units.d.ts +181 -0
- package/dist/commands/service-units.d.ts.map +1 -0
- package/dist/commands/service-units.js +291 -0
- package/dist/commands/service-units.js.map +1 -0
- package/dist/commands/service.d.ts +39 -0
- package/dist/commands/service.d.ts.map +1 -0
- package/dist/commands/service.js +370 -0
- package/dist/commands/service.js.map +1 -0
- package/dist/commands/spinner.d.ts +29 -0
- package/dist/commands/spinner.d.ts.map +1 -0
- package/dist/commands/spinner.js +44 -0
- package/dist/commands/spinner.js.map +1 -0
- package/dist/commands/stack.d.ts +49 -1
- package/dist/commands/stack.d.ts.map +1 -1
- package/dist/commands/stack.js +325 -12
- package/dist/commands/stack.js.map +1 -1
- package/dist/commands/start.d.ts +16 -0
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +20 -3
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/status.d.ts +9 -0
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +45 -29
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/stop.d.ts +16 -0
- package/dist/commands/stop.d.ts.map +1 -1
- package/dist/commands/stop.js +34 -6
- package/dist/commands/stop.js.map +1 -1
- package/dist/commands/tor.d.ts +14 -7
- package/dist/commands/tor.d.ts.map +1 -1
- package/dist/commands/tor.js +113 -33
- package/dist/commands/tor.js.map +1 -1
- package/dist/commands/up.d.ts +85 -1
- package/dist/commands/up.d.ts.map +1 -1
- package/dist/commands/up.js +180 -32
- package/dist/commands/up.js.map +1 -1
- package/dist/commands/webapp.d.ts.map +1 -1
- package/dist/commands/webapp.js +2 -1
- package/dist/commands/webapp.js.map +1 -1
- package/dist/config/defaults.d.ts +16 -0
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +26 -3
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/define-ecosystem.d.ts.map +1 -1
- package/dist/config/define-ecosystem.js +2 -0
- package/dist/config/define-ecosystem.js.map +1 -1
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +1 -1
- package/dist/config/index.js.map +1 -1
- package/dist/config/loader.d.ts +45 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +64 -6
- package/dist/config/loader.js.map +1 -1
- package/dist/config/omnitron-config.schema.d.ts.map +1 -1
- package/dist/config/omnitron-config.schema.js +16 -0
- package/dist/config/omnitron-config.schema.js.map +1 -1
- package/dist/config/types.d.ts +411 -42
- package/dist/config/types.d.ts.map +1 -1
- package/dist/daemon/config-reload.d.ts +27 -0
- package/dist/daemon/config-reload.d.ts.map +1 -0
- package/dist/daemon/config-reload.js +42 -0
- package/dist/daemon/config-reload.js.map +1 -0
- package/dist/daemon/daemon-client.d.ts +136 -2
- package/dist/daemon/daemon-client.d.ts.map +1 -1
- package/dist/daemon/daemon-client.js +307 -21
- package/dist/daemon/daemon-client.js.map +1 -1
- package/dist/daemon/daemon-entry.js +90 -30
- package/dist/daemon/daemon-entry.js.map +1 -1
- package/dist/daemon/daemon-scheduler.d.ts +4 -0
- package/dist/daemon/daemon-scheduler.d.ts.map +1 -1
- package/dist/daemon/daemon-scheduler.js +137 -7
- package/dist/daemon/daemon-scheduler.js.map +1 -1
- package/dist/daemon/daemon-state-store.service.d.ts +263 -0
- package/dist/daemon/daemon-state-store.service.d.ts.map +1 -0
- package/dist/daemon/daemon-state-store.service.js +446 -0
- package/dist/daemon/daemon-state-store.service.js.map +1 -0
- package/dist/daemon/daemon.d.ts +205 -1
- package/dist/daemon/daemon.d.ts.map +1 -1
- package/dist/daemon/daemon.js +1139 -139
- package/dist/daemon/daemon.js.map +1 -1
- package/dist/daemon/daemon.module.d.ts.map +1 -1
- package/dist/daemon/daemon.module.js +163 -83
- package/dist/daemon/daemon.module.js.map +1 -1
- package/dist/daemon/daemon.rpc-service.d.ts +90 -1
- package/dist/daemon/daemon.rpc-service.d.ts.map +1 -1
- package/dist/daemon/daemon.rpc-service.js +438 -96
- package/dist/daemon/daemon.rpc-service.js.map +1 -1
- package/dist/daemon/pid-manager.d.ts +16 -3
- package/dist/daemon/pid-manager.d.ts.map +1 -1
- package/dist/daemon/pid-manager.js +31 -4
- package/dist/daemon/pid-manager.js.map +1 -1
- package/dist/daemon/spawn-daemon.d.ts +73 -0
- package/dist/daemon/spawn-daemon.d.ts.map +1 -0
- package/dist/daemon/spawn-daemon.js +101 -0
- package/dist/daemon/spawn-daemon.js.map +1 -0
- package/dist/daemon/state-store.d.ts +65 -3
- package/dist/daemon/state-store.d.ts.map +1 -1
- package/dist/daemon/state-store.js +100 -58
- package/dist/daemon/state-store.js.map +1 -1
- package/dist/database/connection.d.ts +71 -0
- package/dist/database/connection.d.ts.map +1 -0
- package/dist/database/connection.js +129 -0
- package/dist/database/connection.js.map +1 -0
- package/dist/database/dialect.d.ts +60 -0
- package/dist/database/dialect.d.ts.map +1 -0
- package/dist/database/dialect.js +80 -0
- package/dist/database/dialect.js.map +1 -0
- package/dist/database/migrate.d.ts +5 -2
- package/dist/database/migrate.d.ts.map +1 -1
- package/dist/database/migrate.js +23 -33
- package/dist/database/migrate.js.map +1 -1
- package/dist/database/migration-runner.d.ts +50 -0
- package/dist/database/migration-runner.d.ts.map +1 -0
- package/dist/database/migration-runner.js +143 -0
- package/dist/database/migration-runner.js.map +1 -0
- package/dist/database/migrations/006_login_throttle.d.ts +17 -0
- package/dist/database/migrations/006_login_throttle.d.ts.map +1 -0
- package/dist/database/migrations/006_login_throttle.js +33 -0
- package/dist/database/migrations/006_login_throttle.js.map +1 -0
- package/dist/database/migrations/007_sync_ingested.d.ts +21 -0
- package/dist/database/migrations/007_sync_ingested.d.ts.map +1 -0
- package/dist/database/migrations/007_sync_ingested.js +39 -0
- package/dist/database/migrations/007_sync_ingested.js.map +1 -0
- package/dist/database/migrations/008_node_health_version_text.d.ts +24 -0
- package/dist/database/migrations/008_node_health_version_text.d.ts.map +1 -0
- package/dist/database/migrations/008_node_health_version_text.js +35 -0
- package/dist/database/migrations/008_node_health_version_text.js.map +1 -0
- package/dist/database/migrations/009_node_health_unmeasured.d.ts +40 -0
- package/dist/database/migrations/009_node_health_unmeasured.d.ts.map +1 -0
- package/dist/database/migrations/009_node_health_unmeasured.js +63 -0
- package/dist/database/migrations/009_node_health_unmeasured.js.map +1 -0
- package/dist/database/migrations/010_metrics_raw_had_no_reader.d.ts +22 -0
- package/dist/database/migrations/010_metrics_raw_had_no_reader.d.ts.map +1 -0
- package/dist/database/migrations/010_metrics_raw_had_no_reader.js +26 -0
- package/dist/database/migrations/010_metrics_raw_had_no_reader.js.map +1 -0
- package/dist/database/migrations/011_alerts_nobody_had_to_write.d.ts +56 -0
- package/dist/database/migrations/011_alerts_nobody_had_to_write.d.ts.map +1 -0
- package/dist/database/migrations/011_alerts_nobody_had_to_write.js +79 -0
- package/dist/database/migrations/011_alerts_nobody_had_to_write.js.map +1 -0
- package/dist/database/migrations/012_a_disk_nobody_watched.d.ts +26 -0
- package/dist/database/migrations/012_a_disk_nobody_watched.d.ts.map +1 -0
- package/dist/database/migrations/012_a_disk_nobody_watched.js +40 -0
- package/dist/database/migrations/012_a_disk_nobody_watched.js.map +1 -0
- package/dist/database/migrations/013_an_alarm_delivered.d.ts +14 -0
- package/dist/database/migrations/013_an_alarm_delivered.d.ts.map +1 -0
- package/dist/database/migrations/013_an_alarm_delivered.js +28 -0
- package/dist/database/migrations/013_an_alarm_delivered.js.map +1 -0
- package/dist/database/migrations/index.d.ts +21 -0
- package/dist/database/migrations/index.d.ts.map +1 -0
- package/dist/database/migrations/index.js +47 -0
- package/dist/database/migrations/index.js.map +1 -0
- package/dist/database/schema.d.ts +27 -11
- package/dist/database/schema.d.ts.map +1 -1
- package/dist/database/sqlite-date-binding.d.ts +71 -0
- package/dist/database/sqlite-date-binding.d.ts.map +1 -0
- package/dist/database/sqlite-date-binding.js +174 -0
- package/dist/database/sqlite-date-binding.js.map +1 -0
- package/dist/execution/data-channel.d.ts +48 -0
- package/dist/execution/data-channel.d.ts.map +1 -0
- package/dist/execution/data-channel.js +55 -0
- package/dist/execution/data-channel.js.map +1 -0
- package/dist/execution/execution.service.d.ts +139 -0
- package/dist/execution/execution.service.d.ts.map +1 -1
- package/dist/execution/execution.service.js +273 -10
- package/dist/execution/execution.service.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/infrastructure/bare-metal-plan.d.ts +208 -0
- package/dist/infrastructure/bare-metal-plan.d.ts.map +1 -0
- package/dist/infrastructure/bare-metal-plan.js +363 -0
- package/dist/infrastructure/bare-metal-plan.js.map +1 -0
- package/dist/infrastructure/bare-metal-runner.d.ts +65 -0
- package/dist/infrastructure/bare-metal-runner.d.ts.map +1 -0
- package/dist/infrastructure/bare-metal-runner.js +354 -0
- package/dist/infrastructure/bare-metal-runner.js.map +1 -0
- package/dist/infrastructure/config-payload.d.ts +149 -0
- package/dist/infrastructure/config-payload.d.ts.map +1 -0
- package/dist/infrastructure/config-payload.js +235 -0
- package/dist/infrastructure/config-payload.js.map +1 -0
- package/dist/infrastructure/container-runtime.d.ts +169 -1
- package/dist/infrastructure/container-runtime.d.ts.map +1 -1
- package/dist/infrastructure/container-runtime.js +525 -33
- package/dist/infrastructure/container-runtime.js.map +1 -1
- package/dist/infrastructure/gateway-reachability.d.ts +85 -0
- package/dist/infrastructure/gateway-reachability.d.ts.map +1 -0
- package/dist/infrastructure/gateway-reachability.js +116 -0
- package/dist/infrastructure/gateway-reachability.js.map +1 -0
- package/dist/infrastructure/gateway-redis-db.d.ts +29 -0
- package/dist/infrastructure/gateway-redis-db.d.ts.map +1 -0
- package/dist/infrastructure/gateway-redis-db.js +32 -0
- package/dist/infrastructure/gateway-redis-db.js.map +1 -0
- package/dist/infrastructure/host-inspection.d.ts +223 -0
- package/dist/infrastructure/host-inspection.d.ts.map +1 -0
- package/dist/infrastructure/host-inspection.js +501 -0
- package/dist/infrastructure/host-inspection.js.map +1 -0
- package/dist/infrastructure/infrastructure-gate.d.ts.map +1 -1
- package/dist/infrastructure/infrastructure.service.d.ts +206 -6
- package/dist/infrastructure/infrastructure.service.d.ts.map +1 -1
- package/dist/infrastructure/infrastructure.service.js +415 -89
- package/dist/infrastructure/infrastructure.service.js.map +1 -1
- package/dist/infrastructure/known-machines.d.ts +76 -0
- package/dist/infrastructure/known-machines.d.ts.map +1 -0
- package/dist/infrastructure/known-machines.js +94 -0
- package/dist/infrastructure/known-machines.js.map +1 -0
- package/dist/infrastructure/node-credentials.d.ts +45 -0
- package/dist/infrastructure/node-credentials.d.ts.map +1 -0
- package/dist/infrastructure/node-credentials.js +80 -0
- package/dist/infrastructure/node-credentials.js.map +1 -0
- package/dist/infrastructure/orphan-containers.d.ts +99 -0
- package/dist/infrastructure/orphan-containers.d.ts.map +1 -0
- package/dist/infrastructure/orphan-containers.js +106 -0
- package/dist/infrastructure/orphan-containers.js.map +1 -0
- package/dist/infrastructure/phantom-endpoint-janitor.d.ts +20 -0
- package/dist/infrastructure/phantom-endpoint-janitor.d.ts.map +1 -1
- package/dist/infrastructure/phantom-endpoint-janitor.js +56 -6
- package/dist/infrastructure/phantom-endpoint-janitor.js.map +1 -1
- package/dist/infrastructure/presets/gateway-openresty.d.ts.map +1 -1
- package/dist/infrastructure/presets/gateway-openresty.js +29 -3
- package/dist/infrastructure/presets/gateway-openresty.js.map +1 -1
- package/dist/infrastructure/presets/minio.d.ts.map +1 -1
- package/dist/infrastructure/presets/minio.js +36 -3
- package/dist/infrastructure/presets/minio.js.map +1 -1
- package/dist/infrastructure/presets/postgres.d.ts.map +1 -1
- package/dist/infrastructure/presets/postgres.js +69 -2
- package/dist/infrastructure/presets/postgres.js.map +1 -1
- package/dist/infrastructure/presets/redis.d.ts.map +1 -1
- package/dist/infrastructure/presets/redis.js +13 -0
- package/dist/infrastructure/presets/redis.js.map +1 -1
- package/dist/infrastructure/presets/registry.d.ts.map +1 -1
- package/dist/infrastructure/presets/registry.js +81 -12
- package/dist/infrastructure/presets/registry.js.map +1 -1
- package/dist/infrastructure/presets/tor.d.ts +38 -0
- package/dist/infrastructure/presets/tor.d.ts.map +1 -1
- package/dist/infrastructure/presets/tor.js +78 -69
- package/dist/infrastructure/presets/tor.js.map +1 -1
- package/dist/infrastructure/presets/torrc.d.ts +54 -0
- package/dist/infrastructure/presets/torrc.d.ts.map +1 -0
- package/dist/infrastructure/presets/torrc.js +153 -0
- package/dist/infrastructure/presets/torrc.js.map +1 -0
- package/dist/infrastructure/presets/types.d.ts +17 -0
- package/dist/infrastructure/presets/types.d.ts.map +1 -1
- package/dist/infrastructure/provisioning-outcome.d.ts +85 -0
- package/dist/infrastructure/provisioning-outcome.d.ts.map +1 -0
- package/dist/infrastructure/provisioning-outcome.js +122 -0
- package/dist/infrastructure/provisioning-outcome.js.map +1 -0
- package/dist/infrastructure/server-registry.d.ts +27 -0
- package/dist/infrastructure/server-registry.d.ts.map +1 -1
- package/dist/infrastructure/server-registry.js +60 -5
- package/dist/infrastructure/server-registry.js.map +1 -1
- package/dist/infrastructure/service-binding.d.ts +60 -0
- package/dist/infrastructure/service-binding.d.ts.map +1 -0
- package/dist/infrastructure/service-binding.js +90 -0
- package/dist/infrastructure/service-binding.js.map +1 -0
- package/dist/infrastructure/service-credentials.d.ts +105 -0
- package/dist/infrastructure/service-credentials.d.ts.map +1 -0
- package/dist/infrastructure/service-credentials.js +141 -0
- package/dist/infrastructure/service-credentials.js.map +1 -0
- package/dist/infrastructure/service-resolver.d.ts +160 -12
- package/dist/infrastructure/service-resolver.d.ts.map +1 -1
- package/dist/infrastructure/service-resolver.js +463 -53
- package/dist/infrastructure/service-resolver.js.map +1 -1
- package/dist/infrastructure/shipped-config.d.ts +43 -0
- package/dist/infrastructure/shipped-config.d.ts.map +1 -0
- package/dist/infrastructure/shipped-config.js +159 -0
- package/dist/infrastructure/shipped-config.js.map +1 -0
- package/dist/infrastructure/stack-infra-manager.d.ts +6 -0
- package/dist/infrastructure/stack-infra-manager.d.ts.map +1 -1
- package/dist/infrastructure/stack-infra-manager.js +31 -13
- package/dist/infrastructure/stack-infra-manager.js.map +1 -1
- package/dist/infrastructure/types.d.ts +261 -6
- package/dist/infrastructure/types.d.ts.map +1 -1
- package/dist/mcp/mcp-bridge.d.ts.map +1 -1
- package/dist/mcp/mcp-bridge.js.map +1 -1
- package/dist/mcp/tool-groups/apps.tools.d.ts +2 -1
- package/dist/mcp/tool-groups/apps.tools.d.ts.map +1 -1
- package/dist/mcp/tool-groups/apps.tools.js +2 -2
- package/dist/mcp/tool-groups/apps.tools.js.map +1 -1
- package/dist/mcp/tool-groups/infra.tools.d.ts +16 -2
- package/dist/mcp/tool-groups/infra.tools.d.ts.map +1 -1
- package/dist/mcp/tool-groups/infra.tools.js +51 -41
- package/dist/mcp/tool-groups/infra.tools.js.map +1 -1
- package/dist/mcp/tool-groups/kb.tools.d.ts.map +1 -1
- package/dist/mcp/tool-groups/kb.tools.js +4 -6
- package/dist/mcp/tool-groups/kb.tools.js.map +1 -1
- package/dist/mcp/tool-groups/management.tools.d.ts +20 -3
- package/dist/mcp/tool-groups/management.tools.d.ts.map +1 -1
- package/dist/mcp/tool-groups/management.tools.js +158 -125
- package/dist/mcp/tool-groups/management.tools.js.map +1 -1
- package/dist/mcp/tool-groups/monitoring.tools.d.ts +10 -1
- package/dist/mcp/tool-groups/monitoring.tools.d.ts.map +1 -1
- package/dist/mcp/tool-groups/monitoring.tools.js +65 -18
- package/dist/mcp/tool-groups/monitoring.tools.js.map +1 -1
- package/dist/mcp/unavailable-tools.d.ts +35 -0
- package/dist/mcp/unavailable-tools.d.ts.map +1 -0
- package/dist/mcp/unavailable-tools.js +59 -0
- package/dist/mcp/unavailable-tools.js.map +1 -0
- package/dist/monitoring/app-health.indicator.d.ts.map +1 -1
- package/dist/monitoring/app-health.indicator.js +12 -0
- package/dist/monitoring/app-health.indicator.js.map +1 -1
- package/dist/monitoring/desktop-notifier.d.ts +26 -0
- package/dist/monitoring/desktop-notifier.d.ts.map +1 -0
- package/dist/monitoring/desktop-notifier.js +49 -0
- package/dist/monitoring/desktop-notifier.js.map +1 -0
- package/dist/monitoring/docker-health.indicator.d.ts +17 -1
- package/dist/monitoring/docker-health.indicator.d.ts.map +1 -1
- package/dist/monitoring/docker-health.indicator.js +38 -8
- package/dist/monitoring/docker-health.indicator.js.map +1 -1
- package/dist/monitoring/event-loop-stall.indicator.d.ts +26 -0
- package/dist/monitoring/event-loop-stall.indicator.d.ts.map +1 -0
- package/dist/monitoring/event-loop-stall.indicator.js +47 -0
- package/dist/monitoring/event-loop-stall.indicator.js.map +1 -0
- package/dist/monitoring/event-loop-watch.d.ts +124 -0
- package/dist/monitoring/event-loop-watch.d.ts.map +1 -0
- package/dist/monitoring/event-loop-watch.js +179 -0
- package/dist/monitoring/event-loop-watch.js.map +1 -0
- package/dist/monitoring/host-disk.d.ts +6 -0
- package/dist/monitoring/host-disk.d.ts.map +1 -0
- package/dist/monitoring/host-disk.js +26 -0
- package/dist/monitoring/host-disk.js.map +1 -0
- package/dist/monitoring/log-line.d.ts +188 -0
- package/dist/monitoring/log-line.d.ts.map +1 -0
- package/dist/monitoring/log-line.js +458 -0
- package/dist/monitoring/log-line.js.map +1 -0
- package/dist/monitoring/log-manager.d.ts +89 -8
- package/dist/monitoring/log-manager.d.ts.map +1 -1
- package/dist/monitoring/log-manager.js +246 -77
- package/dist/monitoring/log-manager.js.map +1 -1
- package/dist/observability/metrics-bridge.d.ts.map +1 -1
- package/dist/observability/metrics-server.d.ts.map +1 -1
- package/dist/orchestrator/app-handle.d.ts +157 -2
- package/dist/orchestrator/app-handle.d.ts.map +1 -1
- package/dist/orchestrator/app-handle.js +165 -3
- package/dist/orchestrator/app-handle.js.map +1 -1
- package/dist/orchestrator/app-health.d.ts +33 -0
- package/dist/orchestrator/app-health.d.ts.map +1 -0
- package/dist/orchestrator/app-health.js +74 -0
- package/dist/orchestrator/app-health.js.map +1 -0
- package/dist/orchestrator/app-traffic.d.ts +14 -0
- package/dist/orchestrator/app-traffic.d.ts.map +1 -0
- package/dist/orchestrator/app-traffic.js +33 -0
- package/dist/orchestrator/app-traffic.js.map +1 -0
- package/dist/orchestrator/bootstrap-loader-child.d.ts +19 -0
- package/dist/orchestrator/bootstrap-loader-child.d.ts.map +1 -0
- package/dist/orchestrator/bootstrap-loader-child.js +43 -0
- package/dist/orchestrator/bootstrap-loader-child.js.map +1 -0
- package/dist/orchestrator/bootstrap-loader.d.ts +72 -0
- package/dist/orchestrator/bootstrap-loader.d.ts.map +1 -1
- package/dist/orchestrator/bootstrap-loader.js +350 -5
- package/dist/orchestrator/bootstrap-loader.js.map +1 -1
- package/dist/orchestrator/bootstrap-process.d.ts +99 -4
- package/dist/orchestrator/bootstrap-process.d.ts.map +1 -1
- package/dist/orchestrator/bootstrap-process.js +330 -19
- package/dist/orchestrator/bootstrap-process.js.map +1 -1
- package/dist/orchestrator/build-service.d.ts.map +1 -1
- package/dist/orchestrator/build-service.js.map +1 -1
- package/dist/orchestrator/call-exposed-service.d.ts +7 -0
- package/dist/orchestrator/call-exposed-service.d.ts.map +1 -0
- package/dist/orchestrator/call-exposed-service.js +50 -0
- package/dist/orchestrator/call-exposed-service.js.map +1 -0
- package/dist/orchestrator/classic-launcher.d.ts +1 -0
- package/dist/orchestrator/classic-launcher.d.ts.map +1 -1
- package/dist/orchestrator/classic-launcher.js +34 -3
- package/dist/orchestrator/classic-launcher.js.map +1 -1
- package/dist/orchestrator/file-watcher.d.ts +78 -1
- package/dist/orchestrator/file-watcher.d.ts.map +1 -1
- package/dist/orchestrator/file-watcher.js +181 -6
- package/dist/orchestrator/file-watcher.js.map +1 -1
- package/dist/orchestrator/module-worker-process.d.ts.map +1 -1
- package/dist/orchestrator/module-worker-process.js +10 -0
- package/dist/orchestrator/module-worker-process.js.map +1 -1
- package/dist/orchestrator/orchestrator.service.d.ts +371 -11
- package/dist/orchestrator/orchestrator.service.d.ts.map +1 -1
- package/dist/orchestrator/orchestrator.service.js +1602 -269
- package/dist/orchestrator/orchestrator.service.js.map +1 -1
- package/dist/orchestrator/owned-pids.d.ts +83 -0
- package/dist/orchestrator/owned-pids.d.ts.map +1 -0
- package/dist/orchestrator/owned-pids.js +93 -0
- package/dist/orchestrator/owned-pids.js.map +1 -0
- package/dist/orchestrator/port-conflict.d.ts +102 -0
- package/dist/orchestrator/port-conflict.d.ts.map +1 -0
- package/dist/orchestrator/port-conflict.js +131 -0
- package/dist/orchestrator/port-conflict.js.map +1 -0
- package/dist/orchestrator/process-janitor.d.ts +78 -4
- package/dist/orchestrator/process-janitor.d.ts.map +1 -1
- package/dist/orchestrator/process-janitor.js +246 -30
- package/dist/orchestrator/process-janitor.js.map +1 -1
- package/dist/orchestrator/ps-metrics.d.ts +37 -0
- package/dist/orchestrator/ps-metrics.d.ts.map +1 -0
- package/dist/orchestrator/ps-metrics.js +60 -0
- package/dist/orchestrator/ps-metrics.js.map +1 -0
- package/dist/orchestrator/service-router.d.ts +58 -2
- package/dist/orchestrator/service-router.d.ts.map +1 -1
- package/dist/orchestrator/service-router.js +157 -25
- package/dist/orchestrator/service-router.js.map +1 -1
- package/dist/orchestrator/topology-query.d.ts +49 -0
- package/dist/orchestrator/topology-query.d.ts.map +1 -0
- package/dist/orchestrator/topology-query.js +54 -0
- package/dist/orchestrator/topology-query.js.map +1 -0
- package/dist/project/artifact-builder.d.ts +174 -3
- package/dist/project/artifact-builder.d.ts.map +1 -1
- package/dist/project/artifact-builder.js +454 -42
- package/dist/project/artifact-builder.js.map +1 -1
- package/dist/project/build-decision.d.ts +58 -0
- package/dist/project/build-decision.d.ts.map +1 -0
- package/dist/project/build-decision.js +59 -0
- package/dist/project/build-decision.js.map +1 -0
- package/dist/project/config-resolver.d.ts +6 -4
- package/dist/project/config-resolver.d.ts.map +1 -1
- package/dist/project/config-resolver.js +128 -74
- package/dist/project/config-resolver.js.map +1 -1
- package/dist/project/declared-config.d.ts +42 -0
- package/dist/project/declared-config.d.ts.map +1 -0
- package/dist/project/declared-config.js +60 -0
- package/dist/project/declared-config.js.map +1 -0
- package/dist/project/dependency-analyzer.d.ts.map +1 -1
- package/dist/project/dependency-analyzer.js.map +1 -1
- package/dist/project/deploy-phases.d.ts +35 -0
- package/dist/project/deploy-phases.d.ts.map +1 -0
- package/dist/project/deploy-phases.js +75 -0
- package/dist/project/deploy-phases.js.map +1 -0
- package/dist/project/exec-in-group.d.ts +49 -0
- package/dist/project/exec-in-group.d.ts.map +1 -0
- package/dist/project/exec-in-group.js +100 -0
- package/dist/project/exec-in-group.js.map +1 -0
- package/dist/project/node-app-config.d.ts +101 -0
- package/dist/project/node-app-config.d.ts.map +1 -0
- package/dist/project/node-app-config.js +134 -0
- package/dist/project/node-app-config.js.map +1 -0
- package/dist/project/node-app-health.d.ts +76 -0
- package/dist/project/node-app-health.d.ts.map +1 -0
- package/dist/project/node-app-health.js +119 -0
- package/dist/project/node-app-health.js.map +1 -0
- package/dist/project/operator-account.d.ts +287 -0
- package/dist/project/operator-account.d.ts.map +1 -0
- package/dist/project/operator-account.js +373 -0
- package/dist/project/operator-account.js.map +1 -0
- package/dist/project/registry.d.ts +45 -8
- package/dist/project/registry.d.ts.map +1 -1
- package/dist/project/registry.js +217 -49
- package/dist/project/registry.js.map +1 -1
- package/dist/project/requirements-scanner.d.ts +1 -0
- package/dist/project/requirements-scanner.d.ts.map +1 -1
- package/dist/project/requirements-scanner.js +28 -3
- package/dist/project/requirements-scanner.js.map +1 -1
- package/dist/project/stack-env.d.ts +37 -0
- package/dist/project/stack-env.d.ts.map +1 -0
- package/dist/project/stack-env.js +85 -0
- package/dist/project/stack-env.js.map +1 -0
- package/dist/project/stand-containers.d.ts +4 -0
- package/dist/project/stand-containers.d.ts.map +1 -0
- package/dist/project/stand-containers.js +27 -0
- package/dist/project/stand-containers.js.map +1 -0
- package/dist/project/working-tree.d.ts +62 -0
- package/dist/project/working-tree.d.ts.map +1 -0
- package/dist/project/working-tree.js +101 -0
- package/dist/project/working-tree.js.map +1 -0
- package/dist/release/artifact-store.d.ts +360 -0
- package/dist/release/artifact-store.d.ts.map +1 -0
- package/dist/release/artifact-store.js +1040 -0
- package/dist/release/artifact-store.js.map +1 -0
- package/dist/release/attest-on-node.d.ts +92 -0
- package/dist/release/attest-on-node.d.ts.map +1 -0
- package/dist/release/attest-on-node.js +207 -0
- package/dist/release/attest-on-node.js.map +1 -0
- package/dist/release/attest.d.ts +135 -0
- package/dist/release/attest.d.ts.map +1 -0
- package/dist/release/attest.js +199 -0
- package/dist/release/attest.js.map +1 -0
- package/dist/release/build-run.d.ts +151 -0
- package/dist/release/build-run.d.ts.map +1 -0
- package/dist/release/build-run.js +609 -0
- package/dist/release/build-run.js.map +1 -0
- package/dist/release/builder.d.ts +57 -0
- package/dist/release/builder.d.ts.map +1 -0
- package/dist/release/builder.js +120 -0
- package/dist/release/builder.js.map +1 -0
- package/dist/release/daemon-omni.d.ts +41 -0
- package/dist/release/daemon-omni.d.ts.map +1 -0
- package/dist/release/daemon-omni.js +59 -0
- package/dist/release/daemon-omni.js.map +1 -0
- package/dist/release/definition-inputs.d.ts +34 -0
- package/dist/release/definition-inputs.d.ts.map +1 -0
- package/dist/release/definition-inputs.js +90 -0
- package/dist/release/definition-inputs.js.map +1 -0
- package/dist/release/delivered.d.ts +53 -0
- package/dist/release/delivered.d.ts.map +1 -0
- package/dist/release/delivered.js +81 -0
- package/dist/release/delivered.js.map +1 -0
- package/dist/release/layout.d.ts +61 -0
- package/dist/release/layout.d.ts.map +1 -0
- package/dist/release/layout.js +114 -0
- package/dist/release/layout.js.map +1 -0
- package/dist/release/load.d.ts +44 -0
- package/dist/release/load.d.ts.map +1 -0
- package/dist/release/load.js +84 -0
- package/dist/release/load.js.map +1 -0
- package/dist/release/manifest.d.ts +299 -0
- package/dist/release/manifest.d.ts.map +1 -0
- package/dist/release/manifest.js +176 -0
- package/dist/release/manifest.js.map +1 -0
- package/dist/release/migrations.d.ts +32 -0
- package/dist/release/migrations.d.ts.map +1 -0
- package/dist/release/migrations.js +51 -0
- package/dist/release/migrations.js.map +1 -0
- package/dist/release/publish.d.ts +71 -0
- package/dist/release/publish.d.ts.map +1 -0
- package/dist/release/publish.js +102 -0
- package/dist/release/publish.js.map +1 -0
- package/dist/release/store.d.ts +174 -0
- package/dist/release/store.d.ts.map +1 -0
- package/dist/release/store.js +257 -0
- package/dist/release/store.js.map +1 -0
- package/dist/services/alert.rpc-service.d.ts +11 -15
- package/dist/services/alert.rpc-service.d.ts.map +1 -1
- package/dist/services/alert.rpc-service.js +29 -14
- package/dist/services/alert.rpc-service.js.map +1 -1
- package/dist/services/alert.service.d.ts +96 -59
- package/dist/services/alert.service.d.ts.map +1 -1
- package/dist/services/alert.service.js +455 -70
- package/dist/services/alert.service.js.map +1 -1
- package/dist/services/anonymous-input.d.ts +26 -0
- package/dist/services/anonymous-input.d.ts.map +1 -0
- package/dist/services/anonymous-input.js +44 -0
- package/dist/services/anonymous-input.js.map +1 -0
- package/dist/services/audit.rpc-service.d.ts +27 -0
- package/dist/services/audit.rpc-service.d.ts.map +1 -0
- package/dist/services/audit.rpc-service.js +57 -0
- package/dist/services/audit.rpc-service.js.map +1 -0
- package/dist/services/audit.service.d.ts +165 -0
- package/dist/services/audit.service.d.ts.map +1 -0
- package/dist/services/audit.service.js +242 -0
- package/dist/services/audit.service.js.map +1 -0
- package/dist/services/auth-context.d.ts +21 -1
- package/dist/services/auth-context.d.ts.map +1 -1
- package/dist/services/auth-context.js +51 -5
- package/dist/services/auth-context.js.map +1 -1
- package/dist/services/auth.rpc-service.d.ts +0 -1
- package/dist/services/auth.rpc-service.d.ts.map +1 -1
- package/dist/services/auth.rpc-service.js +23 -9
- package/dist/services/auth.rpc-service.js.map +1 -1
- package/dist/services/auth.service.d.ts +47 -33
- package/dist/services/auth.service.d.ts.map +1 -1
- package/dist/services/auth.service.js +155 -23
- package/dist/services/auth.service.js.map +1 -1
- package/dist/services/backup-pipeline.d.ts +97 -0
- package/dist/services/backup-pipeline.d.ts.map +1 -0
- package/dist/services/backup-pipeline.js +286 -0
- package/dist/services/backup-pipeline.js.map +1 -0
- package/dist/services/backup-schedule.d.ts +69 -0
- package/dist/services/backup-schedule.d.ts.map +1 -0
- package/dist/services/backup-schedule.js +132 -0
- package/dist/services/backup-schedule.js.map +1 -0
- package/dist/services/backup.rpc-service.d.ts +31 -2
- package/dist/services/backup.rpc-service.d.ts.map +1 -1
- package/dist/services/backup.rpc-service.js +53 -0
- package/dist/services/backup.rpc-service.js.map +1 -1
- package/dist/services/backup.service.d.ts +458 -14
- package/dist/services/backup.service.d.ts.map +1 -1
- package/dist/services/backup.service.js +1368 -170
- package/dist/services/backup.service.js.map +1 -1
- package/dist/services/bundle-build-worker.d.ts +19 -0
- package/dist/services/bundle-build-worker.d.ts.map +1 -0
- package/dist/services/bundle-build-worker.js +40 -0
- package/dist/services/bundle-build-worker.js.map +1 -0
- package/dist/services/bundle-builder.d.ts +487 -0
- package/dist/services/bundle-builder.d.ts.map +1 -0
- package/dist/services/bundle-builder.js +1083 -0
- package/dist/services/bundle-builder.js.map +1 -0
- package/dist/services/bundle-worker-protocol.d.ts +19 -0
- package/dist/services/bundle-worker-protocol.d.ts.map +1 -0
- package/dist/services/bundle-worker-protocol.js +32 -0
- package/dist/services/bundle-worker-protocol.js.map +1 -0
- package/dist/services/deploy.rpc-service.d.ts +4 -1
- package/dist/services/deploy.rpc-service.d.ts.map +1 -1
- package/dist/services/deploy.rpc-service.js +10 -0
- package/dist/services/deploy.rpc-service.js.map +1 -1
- package/dist/services/deploy.service.d.ts +14 -24
- package/dist/services/deploy.service.d.ts.map +1 -1
- package/dist/services/deploy.service.js +46 -5
- package/dist/services/deploy.service.js.map +1 -1
- package/dist/services/discovery.rpc-service.d.ts +2 -1
- package/dist/services/discovery.rpc-service.d.ts.map +1 -1
- package/dist/services/discovery.rpc-service.js.map +1 -1
- package/dist/services/discovery.service.d.ts +32 -28
- package/dist/services/discovery.service.d.ts.map +1 -1
- package/dist/services/discovery.service.js +108 -133
- package/dist/services/discovery.service.js.map +1 -1
- package/dist/services/event-broadcaster.rpc-service.d.ts +36 -23
- package/dist/services/event-broadcaster.rpc-service.d.ts.map +1 -1
- package/dist/services/event-broadcaster.rpc-service.js +70 -32
- package/dist/services/event-broadcaster.rpc-service.js.map +1 -1
- package/dist/services/event-broadcaster.service.d.ts.map +1 -1
- package/dist/services/event-broadcaster.service.js.map +1 -1
- package/dist/services/fleet.rpc-service.d.ts +2 -1
- package/dist/services/fleet.rpc-service.d.ts.map +1 -1
- package/dist/services/fleet.rpc-service.js +3 -1
- package/dist/services/fleet.rpc-service.js.map +1 -1
- package/dist/services/fleet.service.d.ts +32 -34
- package/dist/services/fleet.service.d.ts.map +1 -1
- package/dist/services/fleet.service.js +66 -10
- package/dist/services/fleet.service.js.map +1 -1
- package/dist/services/health-check.rpc-service.d.ts +2 -1
- package/dist/services/health-check.rpc-service.d.ts.map +1 -1
- package/dist/services/health-check.rpc-service.js.map +1 -1
- package/dist/services/health-check.service.d.ts +50 -36
- package/dist/services/health-check.service.d.ts.map +1 -1
- package/dist/services/health-check.service.js +179 -182
- package/dist/services/health-check.service.js.map +1 -1
- package/dist/services/infrastructure.rpc-service.d.ts +297 -2
- package/dist/services/infrastructure.rpc-service.d.ts.map +1 -1
- package/dist/services/infrastructure.rpc-service.js +523 -11
- package/dist/services/infrastructure.rpc-service.js.map +1 -1
- package/dist/services/kubernetes.rpc-service.d.ts +2 -1
- package/dist/services/kubernetes.rpc-service.d.ts.map +1 -1
- package/dist/services/kubernetes.rpc-service.js.map +1 -1
- package/dist/services/kubernetes.service.d.ts +5 -39
- package/dist/services/kubernetes.service.d.ts.map +1 -1
- package/dist/services/kubernetes.service.js +29 -5
- package/dist/services/kubernetes.service.js.map +1 -1
- package/dist/services/local-bundle.d.ts +151 -0
- package/dist/services/local-bundle.d.ts.map +1 -0
- package/dist/services/local-bundle.js +233 -0
- package/dist/services/local-bundle.js.map +1 -0
- package/dist/services/lockout.d.ts +28 -0
- package/dist/services/lockout.d.ts.map +1 -0
- package/dist/services/lockout.js +41 -0
- package/dist/services/lockout.js.map +1 -0
- package/dist/services/log-collector.rpc-service.d.ts +16 -0
- package/dist/services/log-collector.rpc-service.d.ts.map +1 -1
- package/dist/services/log-collector.rpc-service.js +16 -0
- package/dist/services/log-collector.rpc-service.js.map +1 -1
- package/dist/services/log-collector.service.d.ts +172 -54
- package/dist/services/log-collector.service.d.ts.map +1 -1
- package/dist/services/log-collector.service.js +492 -102
- package/dist/services/log-collector.service.js.map +1 -1
- package/dist/services/log-retention.d.ts +50 -0
- package/dist/services/log-retention.d.ts.map +1 -0
- package/dist/services/log-retention.js +52 -0
- package/dist/services/log-retention.js.map +1 -0
- package/dist/services/maintenance-lock.d.ts +162 -0
- package/dist/services/maintenance-lock.d.ts.map +1 -0
- package/dist/services/maintenance-lock.js +316 -0
- package/dist/services/maintenance-lock.js.map +1 -0
- package/dist/services/master-address.d.ts +107 -0
- package/dist/services/master-address.d.ts.map +1 -0
- package/dist/services/master-address.js +154 -0
- package/dist/services/master-address.js.map +1 -0
- package/dist/services/migration-output.d.ts +16 -0
- package/dist/services/migration-output.d.ts.map +1 -0
- package/dist/services/migration-output.js +22 -0
- package/dist/services/migration-output.js.map +1 -0
- package/dist/services/netron-telemetry-transport.d.ts.map +1 -1
- package/dist/services/netron-telemetry-transport.js.map +1 -1
- package/dist/services/node-deploy-lease.d.ts +154 -0
- package/dist/services/node-deploy-lease.d.ts.map +1 -0
- package/dist/services/node-deploy-lease.js +386 -0
- package/dist/services/node-deploy-lease.js.map +1 -0
- package/dist/services/node-health.repository.d.ts +63 -4
- package/dist/services/node-health.repository.d.ts.map +1 -1
- package/dist/services/node-health.repository.js +108 -67
- package/dist/services/node-health.repository.js.map +1 -1
- package/dist/services/node-manager.rpc-service.d.ts +355 -10
- package/dist/services/node-manager.rpc-service.d.ts.map +1 -1
- package/dist/services/node-manager.rpc-service.js +730 -34
- package/dist/services/node-manager.rpc-service.js.map +1 -1
- package/dist/services/node-manager.service.d.ts +267 -95
- package/dist/services/node-manager.service.d.ts.map +1 -1
- package/dist/services/node-manager.service.js +805 -103
- package/dist/services/node-manager.service.js.map +1 -1
- package/dist/services/node-upgrade.d.ts +129 -0
- package/dist/services/node-upgrade.d.ts.map +1 -0
- package/dist/services/node-upgrade.js +161 -0
- package/dist/services/node-upgrade.js.map +1 -0
- package/dist/services/node-upgrade.service.d.ts +232 -0
- package/dist/services/node-upgrade.service.d.ts.map +1 -0
- package/dist/services/node-upgrade.service.js +468 -0
- package/dist/services/node-upgrade.service.js.map +1 -0
- package/dist/services/pipeline.rpc-service.d.ts +2 -1
- package/dist/services/pipeline.rpc-service.d.ts.map +1 -1
- package/dist/services/pipeline.rpc-service.js.map +1 -1
- package/dist/services/pipeline.service.d.ts +15 -46
- package/dist/services/pipeline.service.d.ts.map +1 -1
- package/dist/services/pipeline.service.js +72 -9
- package/dist/services/pipeline.service.js.map +1 -1
- package/dist/services/project.rpc-service.d.ts +133 -5
- package/dist/services/project.rpc-service.d.ts.map +1 -1
- package/dist/services/project.rpc-service.js +249 -22
- package/dist/services/project.rpc-service.js.map +1 -1
- package/dist/services/project.service.d.ts +677 -15
- package/dist/services/project.service.d.ts.map +1 -1
- package/dist/services/project.service.js +2798 -304
- package/dist/services/project.service.js.map +1 -1
- package/dist/services/redeploy-decision.d.ts +176 -0
- package/dist/services/redeploy-decision.d.ts.map +1 -0
- package/dist/services/redeploy-decision.js +142 -0
- package/dist/services/redeploy-decision.js.map +1 -0
- package/dist/services/release.rpc-service.d.ts +159 -0
- package/dist/services/release.rpc-service.d.ts.map +1 -0
- package/dist/services/release.rpc-service.js +395 -0
- package/dist/services/release.rpc-service.js.map +1 -0
- package/dist/services/release.service.d.ts +114 -0
- package/dist/services/release.service.d.ts.map +1 -0
- package/dist/services/release.service.js +208 -0
- package/dist/services/release.service.js.map +1 -0
- package/dist/services/remote-deployer.service.d.ts +569 -8
- package/dist/services/remote-deployer.service.d.ts.map +1 -1
- package/dist/services/remote-deployer.service.js +1618 -169
- package/dist/services/remote-deployer.service.js.map +1 -1
- package/dist/services/remote-ops.service.d.ts +51 -9
- package/dist/services/remote-ops.service.d.ts.map +1 -1
- package/dist/services/remote-ops.service.js +235 -39
- package/dist/services/remote-ops.service.js.map +1 -1
- package/dist/services/remote-provisioner.d.ts +122 -0
- package/dist/services/remote-provisioner.d.ts.map +1 -0
- package/dist/services/remote-provisioner.js +258 -0
- package/dist/services/remote-provisioner.js.map +1 -0
- package/dist/services/secrets.rpc-service.d.ts +51 -2
- package/dist/services/secrets.rpc-service.d.ts.map +1 -1
- package/dist/services/secrets.rpc-service.js +81 -2
- package/dist/services/secrets.rpc-service.js.map +1 -1
- package/dist/services/secrets.service.d.ts +108 -9
- package/dist/services/secrets.service.d.ts.map +1 -1
- package/dist/services/secrets.service.js +313 -48
- package/dist/services/secrets.service.js.map +1 -1
- package/dist/services/slave-storage.service.d.ts +107 -0
- package/dist/services/slave-storage.service.d.ts.map +1 -1
- package/dist/services/slave-storage.service.js +171 -2
- package/dist/services/slave-storage.service.js.map +1 -1
- package/dist/services/static-carry-forward.d.ts +85 -0
- package/dist/services/static-carry-forward.d.ts.map +1 -0
- package/dist/services/static-carry-forward.js +159 -0
- package/dist/services/static-carry-forward.js.map +1 -0
- package/dist/services/sync-policy.d.ts +167 -0
- package/dist/services/sync-policy.d.ts.map +1 -0
- package/dist/services/sync-policy.js +161 -0
- package/dist/services/sync-policy.js.map +1 -0
- package/dist/services/sync-summary.d.ts +39 -0
- package/dist/services/sync-summary.d.ts.map +1 -0
- package/dist/services/sync-summary.js +62 -0
- package/dist/services/sync-summary.js.map +1 -0
- package/dist/services/sync.rpc-service.d.ts +19 -7
- package/dist/services/sync.rpc-service.d.ts.map +1 -1
- package/dist/services/sync.rpc-service.js +36 -5
- package/dist/services/sync.rpc-service.js.map +1 -1
- package/dist/services/sync.service.d.ts +350 -18
- package/dist/services/sync.service.d.ts.map +1 -1
- package/dist/services/sync.service.js +864 -116
- package/dist/services/sync.service.js.map +1 -1
- package/dist/services/system-info.rpc-service.d.ts +2 -1
- package/dist/services/system-info.rpc-service.d.ts.map +1 -1
- package/dist/services/system-info.rpc-service.js.map +1 -1
- package/dist/services/system-info.service.d.ts +56 -68
- package/dist/services/system-info.service.d.ts.map +1 -1
- package/dist/services/system-info.service.js +240 -127
- package/dist/services/system-info.service.js.map +1 -1
- package/dist/services/telemetry.rpc-service.d.ts.map +1 -1
- package/dist/services/telemetry.rpc-service.js +9 -3
- package/dist/services/telemetry.rpc-service.js.map +1 -1
- package/dist/services/telemetry.service.d.ts +4 -2
- package/dist/services/telemetry.service.d.ts.map +1 -1
- package/dist/services/telemetry.service.js +4 -2
- package/dist/services/telemetry.service.js.map +1 -1
- package/dist/services/trace-collector.rpc-service.d.ts +2 -1
- package/dist/services/trace-collector.rpc-service.d.ts.map +1 -1
- package/dist/services/trace-collector.rpc-service.js.map +1 -1
- package/dist/services/trace-collector.service.d.ts +2 -41
- package/dist/services/trace-collector.service.d.ts.map +1 -1
- package/dist/services/trace-collector.service.js +27 -7
- package/dist/services/trace-collector.service.js.map +1 -1
- package/dist/services/wait-for-postgres.d.ts +28 -0
- package/dist/services/wait-for-postgres.d.ts.map +1 -0
- package/dist/services/wait-for-postgres.js +77 -0
- package/dist/services/wait-for-postgres.js.map +1 -0
- package/dist/shared/alert-expression.d.ts +60 -0
- package/dist/shared/alert-expression.d.ts.map +1 -0
- package/dist/shared/alert-expression.js +124 -0
- package/dist/shared/alert-expression.js.map +1 -0
- package/dist/shared/audit-outcome.d.ts +39 -0
- package/dist/shared/audit-outcome.d.ts.map +1 -0
- package/dist/shared/audit-outcome.js +45 -0
- package/dist/shared/audit-outcome.js.map +1 -0
- package/dist/shared/build-freshness.d.ts +59 -0
- package/dist/shared/build-freshness.d.ts.map +1 -0
- package/dist/shared/build-freshness.js +113 -0
- package/dist/shared/build-freshness.js.map +1 -0
- package/dist/shared/build-stamp.d.ts +26 -0
- package/dist/shared/build-stamp.d.ts.map +1 -0
- package/dist/shared/build-stamp.js +36 -0
- package/dist/shared/build-stamp.js.map +1 -0
- package/dist/shared/describe-error.d.ts +22 -0
- package/dist/shared/describe-error.d.ts.map +1 -0
- package/dist/shared/describe-error.js +39 -0
- package/dist/shared/describe-error.js.map +1 -0
- package/dist/shared/dto/alerts.d.ts +101 -0
- package/dist/shared/dto/alerts.d.ts.map +1 -0
- package/dist/shared/dto/alerts.js +9 -0
- package/dist/shared/dto/alerts.js.map +1 -0
- package/dist/shared/dto/auth.d.ts +49 -0
- package/dist/shared/dto/auth.d.ts.map +1 -0
- package/dist/shared/dto/auth.js +14 -0
- package/dist/shared/dto/auth.js.map +1 -0
- package/dist/shared/dto/backups.d.ts +16 -0
- package/dist/shared/dto/backups.d.ts.map +1 -0
- package/dist/shared/dto/backups.js +9 -0
- package/dist/shared/dto/backups.js.map +1 -0
- package/dist/shared/dto/deploy.d.ts +28 -0
- package/dist/shared/dto/deploy.d.ts.map +1 -0
- package/dist/shared/dto/deploy.js +8 -0
- package/dist/shared/dto/deploy.js.map +1 -0
- package/dist/shared/dto/discovery.d.ts +24 -0
- package/dist/shared/dto/discovery.d.ts.map +1 -0
- package/dist/shared/dto/discovery.js +9 -0
- package/dist/shared/dto/discovery.js.map +1 -0
- package/dist/shared/dto/fleet.d.ts +35 -0
- package/dist/shared/dto/fleet.d.ts.map +1 -0
- package/dist/shared/dto/fleet.js +8 -0
- package/dist/shared/dto/fleet.js.map +1 -0
- package/dist/shared/dto/health.d.ts +26 -0
- package/dist/shared/dto/health.d.ts.map +1 -0
- package/dist/shared/dto/health.js +9 -0
- package/dist/shared/dto/health.js.map +1 -0
- package/dist/shared/dto/kubernetes.d.ts +44 -0
- package/dist/shared/dto/kubernetes.d.ts.map +1 -0
- package/dist/shared/dto/kubernetes.js +9 -0
- package/dist/shared/dto/kubernetes.js.map +1 -0
- package/dist/shared/dto/logs.d.ts +77 -0
- package/dist/shared/dto/logs.d.ts.map +1 -0
- package/dist/shared/dto/logs.js +10 -0
- package/dist/shared/dto/logs.js.map +1 -0
- package/dist/shared/dto/metrics.d.ts +65 -0
- package/dist/shared/dto/metrics.d.ts.map +1 -0
- package/dist/shared/dto/metrics.js +17 -0
- package/dist/shared/dto/metrics.js.map +1 -0
- package/dist/shared/dto/nodes.d.ts +347 -0
- package/dist/shared/dto/nodes.d.ts.map +1 -0
- package/dist/shared/dto/nodes.js +8 -0
- package/dist/shared/dto/nodes.js.map +1 -0
- package/dist/shared/dto/pipelines.d.ts +53 -0
- package/dist/shared/dto/pipelines.d.ts.map +1 -0
- package/dist/shared/dto/pipelines.js +9 -0
- package/dist/shared/dto/pipelines.js.map +1 -0
- package/dist/shared/dto/project.d.ts +142 -8
- package/dist/shared/dto/project.d.ts.map +1 -1
- package/dist/shared/dto/services.d.ts +831 -7
- package/dist/shared/dto/services.d.ts.map +1 -1
- package/dist/shared/dto/system-info.d.ts +93 -0
- package/dist/shared/dto/system-info.d.ts.map +1 -0
- package/dist/shared/dto/system-info.js +9 -0
- package/dist/shared/dto/system-info.js.map +1 -0
- package/dist/shared/dto/traces.d.ts +49 -0
- package/dist/shared/dto/traces.d.ts.map +1 -0
- package/dist/shared/dto/traces.js +9 -0
- package/dist/shared/dto/traces.js.map +1 -0
- package/dist/shared/env-config.d.ts +74 -0
- package/dist/shared/env-config.d.ts.map +1 -0
- package/dist/shared/env-config.js +99 -0
- package/dist/shared/env-config.js.map +1 -0
- package/dist/shared/events.d.ts +45 -39
- package/dist/shared/events.d.ts.map +1 -1
- package/dist/shared/events.js +6 -0
- package/dist/shared/events.js.map +1 -1
- package/dist/shared/format.d.ts +1 -1
- package/dist/shared/format.d.ts.map +1 -1
- package/dist/shared/format.js +4 -0
- package/dist/shared/format.js.map +1 -1
- package/dist/shared/local-infra-host.d.ts +28 -0
- package/dist/shared/local-infra-host.d.ts.map +1 -0
- package/dist/shared/local-infra-host.js +28 -0
- package/dist/shared/local-infra-host.js.map +1 -0
- package/dist/shared/node-check.d.ts +37 -0
- package/dist/shared/node-check.d.ts.map +1 -0
- package/dist/shared/node-check.js +41 -0
- package/dist/shared/node-check.js.map +1 -0
- package/dist/shared/paths.d.ts +29 -0
- package/dist/shared/paths.d.ts.map +1 -0
- package/dist/shared/paths.js +54 -0
- package/dist/shared/paths.js.map +1 -0
- package/dist/shared/pnpm.d.ts +29 -0
- package/dist/shared/pnpm.d.ts.map +1 -0
- package/dist/shared/pnpm.js +57 -0
- package/dist/shared/pnpm.js.map +1 -0
- package/dist/shared/private-files.d.ts +29 -0
- package/dist/shared/private-files.d.ts.map +1 -0
- package/dist/shared/private-files.js +109 -0
- package/dist/shared/private-files.js.map +1 -0
- package/dist/shared/redact-env.d.ts +24 -0
- package/dist/shared/redact-env.d.ts.map +1 -0
- package/dist/shared/redact-env.js +36 -0
- package/dist/shared/redact-env.js.map +1 -0
- package/dist/shared/release-reading.d.ts +85 -0
- package/dist/shared/release-reading.d.ts.map +1 -0
- package/dist/shared/release-reading.js +81 -0
- package/dist/shared/release-reading.js.map +1 -0
- package/dist/shared/roles.d.ts +58 -3
- package/dist/shared/roles.d.ts.map +1 -1
- package/dist/shared/roles.js +55 -0
- package/dist/shared/roles.js.map +1 -1
- package/dist/shared/rpcauth.d.ts +13 -0
- package/dist/shared/rpcauth.d.ts.map +1 -0
- package/dist/shared/rpcauth.js +23 -0
- package/dist/shared/rpcauth.js.map +1 -0
- package/dist/shared/shell-escape.d.ts +9 -0
- package/dist/shared/shell-escape.d.ts.map +1 -0
- package/dist/shared/shell-escape.js +11 -0
- package/dist/shared/shell-escape.js.map +1 -0
- package/dist/shared/sync-reading.d.ts +45 -0
- package/dist/shared/sync-reading.d.ts.map +1 -0
- package/dist/shared/sync-reading.js +42 -0
- package/dist/shared/sync-reading.js.map +1 -0
- package/dist/shared/tokens.d.ts +19 -0
- package/dist/shared/tokens.d.ts.map +1 -1
- package/dist/shared/tokens.js +28 -0
- package/dist/shared/tokens.js.map +1 -1
- package/dist/webapp/webapp.service.d.ts +33 -2
- package/dist/webapp/webapp.service.d.ts.map +1 -1
- package/dist/webapp/webapp.service.js +143 -31
- package/dist/webapp/webapp.service.js.map +1 -1
- package/dist/workers/health-monitor-process.d.ts.map +1 -1
- package/dist/workers/health-monitor-process.js +10 -0
- package/dist/workers/health-monitor-process.js.map +1 -1
- package/dist/workers/health-monitor.service.d.ts +45 -3
- package/dist/workers/health-monitor.service.d.ts.map +1 -1
- package/dist/workers/health-monitor.service.js +152 -25
- package/dist/workers/health-monitor.service.js.map +1 -1
- package/dist/workers/system-worker-manager.d.ts +43 -0
- package/dist/workers/system-worker-manager.d.ts.map +1 -1
- package/dist/workers/system-worker-manager.js +150 -3
- package/dist/workers/system-worker-manager.js.map +1 -1
- package/dist/workers/types.d.ts +8 -2
- package/dist/workers/types.d.ts.map +1 -1
- package/package.json +64 -30
- package/webapp/dist/BUILD.json +5 -0
- package/webapp/dist/assets/FormControlLabel-BrH2diyl.js +1 -0
- package/webapp/dist/assets/Grid-BZ7xhoHQ.js +1 -0
- package/webapp/dist/assets/Switch-DGSAxQPM.js +1 -0
- package/webapp/dist/assets/alerts-sXqHJbsa.js +1 -0
- package/webapp/dist/assets/apps-B_Ah8Flh.js +1 -0
- package/webapp/dist/assets/audit-YXihwyui.js +1 -0
- package/webapp/dist/assets/client-CGbBvy9k.js +1 -0
- package/webapp/dist/assets/constants-veKGFkC6.js +1 -0
- package/webapp/dist/assets/containers-Di4NOTLf.js +2 -0
- package/webapp/dist/assets/daemon-memory-CCPZ4cV_.js +1 -0
- package/webapp/dist/assets/dashboard-Cfuf95N3.js +1 -0
- package/webapp/dist/assets/dashboard-builder-CowaYb-M.js +1 -0
- package/webapp/dist/assets/deploy-release-dialog-D6C-XcKY.js +1 -0
- package/webapp/dist/assets/deployments-ChTq5kCw.js +1 -0
- package/webapp/dist/assets/detail-BsGWv7Dj.js +1 -0
- package/webapp/dist/assets/detail-CyVf_cw5.js +2 -0
- package/webapp/dist/assets/detail-D027j6aO.js +8 -0
- package/webapp/dist/assets/formatters-BqjL73N3.js +1 -0
- package/webapp/dist/assets/index-B8AHIPc-.css +1 -0
- package/webapp/dist/assets/index-DiZbrwxT.js +414 -0
- package/webapp/dist/assets/logs-L2b8Oqmo.js +12 -0
- package/webapp/dist/assets/maplibre-gl-MlmG2kbn.js +801 -0
- package/webapp/dist/assets/metrics-CQgjz2Lz.js +2 -0
- package/webapp/dist/assets/nodes-Nwia2Ty6.js +7 -0
- package/webapp/dist/assets/pipelines-DCu_rXOr.js +4 -0
- package/webapp/dist/assets/projects-Bb4aV76h.js +1 -0
- package/webapp/dist/assets/react-CwJFpaho.js +1 -0
- package/webapp/dist/assets/react-apexcharts.esm-Dy0Fez42.js +1956 -0
- package/webapp/dist/assets/release-bits-Dj4EOhhb.js +1 -0
- package/webapp/dist/assets/release-build-panel-D6OCVlhT.js +1 -0
- package/webapp/dist/assets/releases-CnAt3yO6.js +2 -0
- package/webapp/dist/assets/rolldown-runtime-hePW80VL.js +1 -0
- package/webapp/dist/assets/settings-DU-mjiwb.js +1 -0
- package/webapp/dist/assets/settled-pair-C7SjZuns.js +1 -0
- package/webapp/dist/assets/sign-in-Bcvjrr4C.js +1 -0
- package/webapp/dist/assets/stacks-B-e8p50I.js +1 -0
- package/webapp/dist/assets/sync-reading-C3PnJ7AX.js +1 -0
- package/webapp/dist/assets/system-info-BtE3dgfw.js +1 -0
- package/webapp/dist/assets/topology-Cwch-uF1.js +12 -0
- package/webapp/dist/assets/topology-DLioOiRN.css +1 -0
- package/webapp/dist/assets/traces-BbShR-4P.js +1 -0
- package/webapp/dist/assets/use-stack-context-CZUgPq88.js +1 -0
- package/webapp/dist/index.html +6 -6
- package/dist/commands/dev.d.ts +0 -23
- package/dist/commands/dev.d.ts.map +0 -1
- package/dist/commands/dev.js +0 -76
- package/dist/commands/dev.js.map +0 -1
- package/dist/config/define-app.d.ts +0 -6
- package/dist/config/define-app.d.ts.map +0 -1
- package/dist/config/define-app.js +0 -38
- package/dist/config/define-app.js.map +0 -1
- package/dist/infrastructure/gateway-generator.d.ts +0 -63
- package/dist/infrastructure/gateway-generator.d.ts.map +0 -1
- package/dist/infrastructure/gateway-generator.js +0 -253
- package/dist/infrastructure/gateway-generator.js.map +0 -1
- package/dist/monitoring/health.service.d.ts +0 -14
- package/dist/monitoring/health.service.d.ts.map +0 -1
- package/dist/monitoring/health.service.js +0 -50
- package/dist/monitoring/health.service.js.map +0 -1
- package/dist/monitoring/metrics.service.d.ts +0 -14
- package/dist/monitoring/metrics.service.d.ts.map +0 -1
- package/dist/monitoring/metrics.service.js +0 -40
- package/dist/monitoring/metrics.service.js.map +0 -1
- package/dist/orchestrator/bootstrap-runner.d.ts +0 -15
- package/dist/orchestrator/bootstrap-runner.d.ts.map +0 -1
- package/dist/orchestrator/bootstrap-runner.js +0 -152
- package/dist/orchestrator/bootstrap-runner.js.map +0 -1
- package/dist/orchestrator/topology-proxy.d.ts +0 -65
- package/dist/orchestrator/topology-proxy.d.ts.map +0 -1
- package/dist/orchestrator/topology-proxy.js +0 -209
- package/dist/orchestrator/topology-proxy.js.map +0 -1
- package/dist/orchestrator/topology-relay.d.ts +0 -111
- package/dist/orchestrator/topology-relay.d.ts.map +0 -1
- package/dist/orchestrator/topology-relay.js +0 -255
- package/dist/orchestrator/topology-relay.js.map +0 -1
- package/dist/services/auth-middleware.d.ts +0 -47
- package/dist/services/auth-middleware.d.ts.map +0 -1
- package/dist/services/auth-middleware.js +0 -158
- package/dist/services/auth-middleware.js.map +0 -1
- package/dist/services/environment.rpc-service.d.ts +0 -22
- package/dist/services/environment.rpc-service.d.ts.map +0 -1
- package/dist/services/environment.rpc-service.js +0 -65
- package/dist/services/environment.rpc-service.js.map +0 -1
- package/dist/services/environment.service.d.ts +0 -87
- package/dist/services/environment.service.d.ts.map +0 -1
- package/dist/services/environment.service.js +0 -220
- package/dist/services/environment.service.js.map +0 -1
- package/dist/services/metrics-collector.service.d.ts +0 -103
- package/dist/services/metrics-collector.service.d.ts.map +0 -1
- package/dist/services/metrics-collector.service.js +0 -235
- package/dist/services/metrics-collector.service.js.map +0 -1
- package/dist/services/metrics.rpc-service.d.ts +0 -41
- package/dist/services/metrics.rpc-service.d.ts.map +0 -1
- package/dist/services/metrics.rpc-service.js +0 -90
- package/dist/services/metrics.rpc-service.js.map +0 -1
- package/dist/services/metrics.service.d.ts +0 -72
- package/dist/services/metrics.service.d.ts.map +0 -1
- package/dist/services/metrics.service.js +0 -185
- package/dist/services/metrics.service.js.map +0 -1
- package/dist/supervisor/omnitron-supervisor.d.ts +0 -21
- package/dist/supervisor/omnitron-supervisor.d.ts.map +0 -1
- package/dist/supervisor/omnitron-supervisor.js +0 -43
- package/dist/supervisor/omnitron-supervisor.js.map +0 -1
- package/dist/webapp/static-server.d.ts +0 -24
- package/dist/webapp/static-server.d.ts.map +0 -1
- package/dist/webapp/static-server.js +0 -152
- package/dist/webapp/static-server.js.map +0 -1
- package/webapp/dist/assets/Badge-D2ZBP5iK.js +0 -1
- package/webapp/dist/assets/Card-vO88g06B.js +0 -1
- package/webapp/dist/assets/CardActions-C9h7Q2wW.js +0 -1
- package/webapp/dist/assets/CardContent-BA_Xmmhk.js +0 -1
- package/webapp/dist/assets/CardHeader-ceIs__6x.js +0 -1
- package/webapp/dist/assets/Chip-Ckk0xUhK.js +0 -1
- package/webapp/dist/assets/DialogActions-BhHM7hov.js +0 -1
- package/webapp/dist/assets/DialogContentText-BT2JQRmK.js +0 -1
- package/webapp/dist/assets/FormControlLabel-CcQByVS8.js +0 -1
- package/webapp/dist/assets/Grid-14PETRQW.js +0 -1
- package/webapp/dist/assets/InputAdornment-B8aHIsQ7.js +0 -1
- package/webapp/dist/assets/Skeleton-B74-Ds6O.js +0 -37
- package/webapp/dist/assets/Switch-DvWD2wh4.js +0 -1
- package/webapp/dist/assets/SwitchBase-CDU4nY8O.js +0 -1
- package/webapp/dist/assets/Tab-DcCOYYp5.js +0 -1
- package/webapp/dist/assets/TableContainer-CzTh4mu-.js +0 -1
- package/webapp/dist/assets/TableRow-BySEreZR.js +0 -2
- package/webapp/dist/assets/TextField-BLf-BHz2.js +0 -1
- package/webapp/dist/assets/alerts-DnRbT41C.js +0 -1
- package/webapp/dist/assets/apps-CdR0VH2d.js +0 -1
- package/webapp/dist/assets/chunk-DtcAfS_W.js +0 -1
- package/webapp/dist/assets/client-DU8I_lDc.js +0 -2
- package/webapp/dist/assets/constants-BgnT-Xdy.js +0 -1
- package/webapp/dist/assets/containers-Dw-rRXV1.js +0 -1
- package/webapp/dist/assets/dashboard-CzgB0uZz.js +0 -1
- package/webapp/dist/assets/dashboard-builder-DsA0yg33.js +0 -1
- package/webapp/dist/assets/deployments-DtQAoIcQ.js +0 -1
- package/webapp/dist/assets/detail-BJR-G7JG.js +0 -1
- package/webapp/dist/assets/detail-nlCeSltl.js +0 -8
- package/webapp/dist/assets/formatters-Do41SRmE.js +0 -1
- package/webapp/dist/assets/index-ByQDwp2r.js +0 -566
- package/webapp/dist/assets/index-CHVXOsTS.css +0 -1
- package/webapp/dist/assets/isMuiElement-DwF2naaF.js +0 -1
- package/webapp/dist/assets/logs-Kn8o4H7k.js +0 -11
- package/webapp/dist/assets/metrics-DN8Zu5wT.js +0 -2
- package/webapp/dist/assets/nodes-Bgch7AtN.js +0 -7
- package/webapp/dist/assets/pipelines-Cry3qm-S.js +0 -4
- package/webapp/dist/assets/popper-BJFSj6rc.js +0 -1
- package/webapp/dist/assets/preload-helper-DSXbuxSR.js +0 -1
- package/webapp/dist/assets/projects-Dym2GI1U.js +0 -1
- package/webapp/dist/assets/react-apexcharts.esm-CSGK5Cxn.js +0 -958
- package/webapp/dist/assets/react-apexcharts.esm-DEAWOwx5.js +0 -1003
- package/webapp/dist/assets/settings-va3zTcow.js +0 -1
- package/webapp/dist/assets/sign-in-ik35umbp.js +0 -1
- package/webapp/dist/assets/stacks-CVFOnxbF.js +0 -1
- package/webapp/dist/assets/system-info-npIXAjX2.js +0 -1
- package/webapp/dist/assets/topology-CHpVij2M.css +0 -1
- package/webapp/dist/assets/topology-bDe70vLs.js +0 -12
- package/webapp/dist/assets/traces-DIIcT8DF.js +0 -1
- package/webapp/dist/assets/use-stack-context-DHLwZv1r.js +0 -1
- /package/webapp/dist/assets/{fs-CgZLtHiQ.js → fs-Ccl3sAcp.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e,t}from"./rolldown-runtime-hePW80VL.js";var n=2**53-1>>>0,r=class{value=0;constructor(e=0){this.reset(e)}next(){return this.value=this.value===n?1:this.value+1,this.value}reset(e=0){this.value=e>>>0}},i=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),a=()=>globalThis.crypto,o=0,s=0;function c(){let e=new Uint8Array(2);return a().getRandomValues(e),(e[0]<<8|e[1])&4095}function l(){let e=Date.now();e>o?(o=e,s=c()):(s++,s>4095&&(o++,s=c()));let t=o,n=Math.trunc(t/4294967296),r=t>>>0,l=new Uint8Array(8);return a().getRandomValues(l),i[n>>>8&255]+i[n&255]+i[r>>>24&255]+i[r>>>16&255]+`-`+i[r>>>8&255]+i[r&255]+`-`+i[112|s>>>8&15]+i[s&255]+`-`+i[128|l[0]&63]+i[l[1]]+`-`+i[l[2]]+i[l[3]]+i[l[4]]+i[l[5]]+i[l[6]]+i[l[7]]}var u=class{id;peerId;meta;parentId=``;constructor(e,t,n){this.id=e,this.peerId=t,this.meta=n}static nextId(){return l()}},d=class{defId;constructor(e){if(this.defId=e,!e||typeof e!=`string`)throw Error(`Service definition ID must be a non-empty string`)}},f;(function(e){e[e.OK=200]=`OK`,e[e.CREATED=201]=`CREATED`,e[e.ACCEPTED=202]=`ACCEPTED`,e[e.NO_CONTENT=204]=`NO_CONTENT`,e[e.BAD_REQUEST=400]=`BAD_REQUEST`,e[e.UNAUTHORIZED=401]=`UNAUTHORIZED`,e[e.PAYMENT_REQUIRED=402]=`PAYMENT_REQUIRED`,e[e.FORBIDDEN=403]=`FORBIDDEN`,e[e.NOT_FOUND=404]=`NOT_FOUND`,e[e.METHOD_NOT_ALLOWED=405]=`METHOD_NOT_ALLOWED`,e[e.NOT_ACCEPTABLE=406]=`NOT_ACCEPTABLE`,e[e.PROXY_AUTHENTICATION_REQUIRED=407]=`PROXY_AUTHENTICATION_REQUIRED`,e[e.REQUEST_TIMEOUT=408]=`REQUEST_TIMEOUT`,e[e.CONFLICT=409]=`CONFLICT`,e[e.GONE=410]=`GONE`,e[e.LENGTH_REQUIRED=411]=`LENGTH_REQUIRED`,e[e.PRECONDITION_FAILED=412]=`PRECONDITION_FAILED`,e[e.PAYLOAD_TOO_LARGE=413]=`PAYLOAD_TOO_LARGE`,e[e.URI_TOO_LONG=414]=`URI_TOO_LONG`,e[e.UNSUPPORTED_MEDIA_TYPE=415]=`UNSUPPORTED_MEDIA_TYPE`,e[e.RANGE_NOT_SATISFIABLE=416]=`RANGE_NOT_SATISFIABLE`,e[e.EXPECTATION_FAILED=417]=`EXPECTATION_FAILED`,e[e.IM_A_TEAPOT=418]=`IM_A_TEAPOT`,e[e.MISDIRECTED_REQUEST=421]=`MISDIRECTED_REQUEST`,e[e.UNPROCESSABLE_ENTITY=422]=`UNPROCESSABLE_ENTITY`,e[e.LOCKED=423]=`LOCKED`,e[e.FAILED_DEPENDENCY=424]=`FAILED_DEPENDENCY`,e[e.TOO_EARLY=425]=`TOO_EARLY`,e[e.UPGRADE_REQUIRED=426]=`UPGRADE_REQUIRED`,e[e.PRECONDITION_REQUIRED=428]=`PRECONDITION_REQUIRED`,e[e.TOO_MANY_REQUESTS=429]=`TOO_MANY_REQUESTS`,e[e.REQUEST_HEADER_FIELDS_TOO_LARGE=431]=`REQUEST_HEADER_FIELDS_TOO_LARGE`,e[e.UNAVAILABLE_FOR_LEGAL_REASONS=451]=`UNAVAILABLE_FOR_LEGAL_REASONS`,e[e.INTERNAL_SERVER_ERROR=500]=`INTERNAL_SERVER_ERROR`,e[e.NOT_IMPLEMENTED=501]=`NOT_IMPLEMENTED`,e[e.BAD_GATEWAY=502]=`BAD_GATEWAY`,e[e.SERVICE_UNAVAILABLE=503]=`SERVICE_UNAVAILABLE`,e[e.GATEWAY_TIMEOUT=504]=`GATEWAY_TIMEOUT`,e[e.HTTP_VERSION_NOT_SUPPORTED=505]=`HTTP_VERSION_NOT_SUPPORTED`,e[e.VARIANT_ALSO_NEGOTIATES=506]=`VARIANT_ALSO_NEGOTIATES`,e[e.INSUFFICIENT_STORAGE=507]=`INSUFFICIENT_STORAGE`,e[e.LOOP_DETECTED=508]=`LOOP_DETECTED`,e[e.NOT_EXTENDED=510]=`NOT_EXTENDED`,e[e.NETWORK_AUTHENTICATION_REQUIRED=511]=`NETWORK_AUTHENTICATION_REQUIRED`,e[e.VALIDATION_ERROR=422]=`VALIDATION_ERROR`,e[e.INVALID_ARGUMENT=400]=`INVALID_ARGUMENT`,e[e.PERMISSION_DENIED=403]=`PERMISSION_DENIED`,e[e.INTERNAL_ERROR=500]=`INTERNAL_ERROR`,e[e.RATE_LIMITED=429]=`RATE_LIMITED`,e[e.MULTIPLE_ERRORS=600]=`MULTIPLE_ERRORS`,e[e.UNKNOWN_ERROR=601]=`UNKNOWN_ERROR`})(f||={});var p;(function(e){e.SUCCESS=`success`,e.CLIENT=`client`,e.SERVER=`server`,e.AUTH=`auth`,e.VALIDATION=`validation`,e.RATE_LIMIT=`rate_limit`,e.CUSTOM=`custom`})(p||={});function m(e){return e>=200&&e<300?p.SUCCESS:e===401||e===407||e===403?p.AUTH:e===422?p.VALIDATION:e===429?p.RATE_LIMIT:e>=400&&e<500?p.CLIENT:e>=500&&e<600?p.SERVER:p.CUSTOM}function h(e){return e>=100&&e<600?e:500}var ee={200:{name:`OK`},201:{name:`CREATED`},204:{name:`NO_CONTENT`},400:{name:`BAD_REQUEST`,message:`The request is invalid`},401:{name:`UNAUTHORIZED`,message:`Authentication is required`},403:{name:`FORBIDDEN`,message:`You do not have permission to access this resource`},404:{name:`NOT_FOUND`,message:`The requested resource was not found`},405:{name:`METHOD_NOT_ALLOWED`,message:`The requested method is not allowed`},408:{name:`REQUEST_TIMEOUT`,message:`The request timed out`,retryable:!0},409:{name:`CONFLICT`,message:`A conflict occurred`},410:{name:`GONE`},413:{name:`PAYLOAD_TOO_LARGE`,message:`The request payload is too large`},414:{name:`URI_TOO_LONG`,message:`The request URI is too long`},415:{name:`UNSUPPORTED_MEDIA_TYPE`,message:`The media type is not supported`},418:{name:`IM_A_TEAPOT`,message:`I'm a teapot`},422:{name:`UNPROCESSABLE_ENTITY`,message:`The request could not be processed`},429:{name:`TOO_MANY_REQUESTS`,message:`Too many requests, please try again later`,retryable:!0},500:{name:`INTERNAL_SERVER_ERROR`,message:`An internal server error occurred`,retryable:!0},501:{name:`NOT_IMPLEMENTED`,message:`The requested functionality is not implemented`},502:{name:`BAD_GATEWAY`,message:`Bad gateway`,retryable:!0},503:{name:`SERVICE_UNAVAILABLE`,message:`The service is temporarily unavailable`,retryable:!0},504:{name:`GATEWAY_TIMEOUT`,message:`Gateway timeout`,retryable:!0},507:{name:`INSUFFICIENT_STORAGE`,retryable:!0},511:{retryable:!0},600:{name:`MULTIPLE_ERRORS`,message:`Multiple errors occurred`},601:{name:`UNKNOWN_ERROR`,message:`An unknown error occurred`}};function te(e){return ee[e]?.retryable===!0}function ne(e){return ee[e]?.name??`ERROR_${e}`}function re(e){return ee[e]?.message??`Error ${e}`}var ie=new Set(Object.values(f).filter(e=>typeof e==`number`)),g=-1,_=class e extends Error{code;category;httpStatus;details;context;timestamp;requestId;correlationId;spanId;traceId;static stats={totalErrors:0,byCode:{},byCategory:{},lastReset:Date.now()};static cache=new Map;static pools=new Map;constructor(t){let n=t.message||re(t.code);super(n),this.name=`TitanError`,this.code=t.code,this.category=m(t.code),this.httpStatus=h(t.code),this.details=t.details||{},this.context=t.context||{},this.timestamp=Date.now(),this.requestId=t.requestId,this.correlationId=t.correlationId,this.spanId=t.spanId,this.traceId=t.traceId,t.cause&&(this.cause=t.cause),Object.setPrototypeOf(this,new.target.prototype);let r=Error;r.captureStackTrace&&r.captureStackTrace(this,new.target),t.cause instanceof Error&&t.cause.stack&&(this.stack=`${this.stack}\nCaused by: ${t.cause.stack}`),e.updateStatistics(this)}static isTitanError(t){return t instanceof e}static getCached(t){return this.cache.has(t)||this.cache.set(t,new e({code:t})),this.cache.get(t)}static createPool(e){let t=new oe(e.size);return e.name&&this.pools.set(e.name,t),t}static updateStatistics(e){this.stats.totalErrors++;let t=ie.has(e.code)?e.code:g;this.stats.byCode[t]=(this.stats.byCode[t]||0)+1,this.stats.byCategory[e.category]=(this.stats.byCategory[e.category]||0)+1}static getStatistics(){return{...this.stats,byCode:{...this.stats.byCode},byCategory:{...this.stats.byCategory}}}static getMetrics(e){let t=Date.now()-this.stats.lastReset,n=this.stats.totalErrors/(t/1e3),r=Object.entries(this.stats.byCode).sort((e,t)=>t[1]-e[1]).slice(0,10).map(([e,t])=>({code:parseInt(e),name:ne(parseInt(e)),count:t}));return{rate:n,totalErrors:this.stats.totalErrors,topErrors:r,byCategory:{...this.stats.byCategory},window:e.window,elapsed:t}}static resetStatistics(){this.stats={totalErrors:0,byCode:{},byCategory:{},lastReset:Date.now()}}static aggregate(e,t){return new ae(e,t)}static fromJSON(t){return new e({code:t.code,message:t.message,details:t.details,context:t.context,requestId:t.requestId,correlationId:t.correlationId,spanId:t.spanId,traceId:t.traceId})}isRetryable(){return te(this.code)}getRetryStrategy(){return this.isRetryable()?this.code===f.TOO_MANY_REQUESTS?{shouldRetry:!0,delay:(this.details?.retryAfter||60)*1e3,maxAttempts:3}:{shouldRetry:!0,delay:1e3,maxAttempts:3,backoffFactor:2}:{shouldRetry:!1,delay:0,maxAttempts:0}}toJSON(){return{name:this.name,code:this.code,category:this.category,message:this.message,details:this.details,context:this.context,timestamp:this.timestamp,requestId:this.requestId,correlationId:this.correlationId,spanId:this.spanId,traceId:this.traceId}}withContext(t){return new e({code:this.code,message:this.message,details:this.details,context:{...this.context,...t},requestId:this.requestId,correlationId:this.correlationId,spanId:this.spanId,traceId:this.traceId})}withDetails(t){return new e({code:this.code,message:this.message,details:{...this.details,...t},context:this.context,requestId:this.requestId,correlationId:this.correlationId,spanId:this.spanId,traceId:this.traceId})}},ae=class extends _{errors;summary;constructor(e,t){let n=e;if(t?.deduplicate){let t=new Set;n=e.filter(e=>{let n=`${e.code}-${e.message}`;return!t.has(n)&&(t.add(n),!0)})}let r=`${n.length} errors occurred`;super({code:f.MULTIPLE_ERRORS,message:r,details:{errors:n.map(e=>e.toJSON()),count:n.length}}),this.name=`AggregateError`,this.errors=n,this.summary=r}},oe=class{pool=[];maxSize;constructor(e){this.maxSize=e;for(let t=0;t<e;t++)this.pool.push(new _({code:f.INTERNAL_ERROR}))}get size(){return this.pool.length}acquire(e,t){let n=this.pool.pop();if(!n)n=new _({code:e,message:t});else{let r=n;r.code=e,r.httpStatus=h(e),r.message=t||re(e),r.category=m(e),r.details={},r.context={},r.timestamp=Date.now(),r.requestId=void 0,r.correlationId=void 0,r.spanId=void 0,r.traceId=void 0}return n}release(e){this.pool.length<this.maxSize&&this.pool.push(e)}},se=6,ce=7,le=15,ue=16,de=32,fe=64,pe=128,me=new r,v=class{id;flags=0;data;streamId;streamIndex;constructor(e){this.id=e}setType(e){this.flags=this.flags&-16|e&le}getType(){return this.flags&le}setImpulse(e){this.flags=this.flags&-65|e<<se}getImpulse(){return(this.flags&fe)>>se}setError(e){this.flags=this.flags&-129|e<<ce}getError(){return(this.flags&pe)>>ce}setStreamInfo(e,t,n,r){this.streamId=e,this.streamIndex=t,this.flags=this.flags&-49|(n?ue:0)|(r?de:0)}isStreamChunk(){return(this.flags&le)===5}isLastChunk(){return(this.flags&ue)!==0}isLive(){return(this.flags&de)!==0}static nextId(){return me.next()}static resetId(){me.reset()}},he=(e,t,n,r)=>{let i=new v(e);return i.setImpulse(t),i.setType(n),i.data=r,i},ge=Object.prototype,{hasOwnProperty:_e}=ge,{toString:y}=ge;Function.prototype.toString.call(Object),Object.prototype.toString.call(typeof process<`u`?process:0);var{isArray:b}=Array,ve=e=>e!=null&&(!!e.constructor&&typeof e.constructor.isBuffer==`function`&&e.constructor.isBuffer(e)||!!e._isBuffer),ye=e=>{if(!e||typeof e!=`object`)return!1;let t=Object.getPrototypeOf(e);return t===null?!0:t!==Object.prototype&&Object.getPrototypeOf(t)!==null?!1:ge.toString.call(e)===`[object Object]`};Number.isNaN;var{isFinite:be}=Number,{isInteger:xe}=Number,{isSafeInteger:Se}=Number;Object.getOwnPropertyNames(Object.getPrototypeOf({}));var x=class{constructor(){this._size=0}enqueue(e){let t={value:e,next:void 0};this.tail?(this.tail.next=t,this.tail=t):this.head=this.tail=t,this._size++}dequeue(){let e=this.head;if(e)return this.head=e.next,this.head||(this.tail=void 0),this._size--,e.value}clear(){this.head=this.tail=void 0,this._size=0}get size(){return this._size}};function Ce(e){we(e);let t=new x,n=0,r=e,i=()=>{if(n<r&&t.size>0){n++;let e=t.dequeue();e&&e()}},a=()=>{n--,i()},o=async(e,t,n)=>{let r=(async()=>e(...n))();t(r);try{await r}catch{}a()},s=(e,a,s)=>{t.enqueue(()=>{o(e,a,s)}),(async()=>{await Promise.resolve(),n<r&&t.size>0&&i()})()},c=(e,...t)=>new Promise(n=>{s(e,n,t)});return Object.defineProperties(c,{activeCount:{get:()=>n},pendingCount:{get:()=>t.size},clearQueue:{value:()=>{t.clear()}},concurrency:{get:()=>r,set:e=>{we(e),r=e,(typeof queueMicrotask<`u`?queueMicrotask:e=>Promise.resolve().then(e))(()=>{for(;n<r&&t.size>0;)i()})}},map:{async value(e,t){let n=e.map((e,n)=>this(t,e,n));return Promise.all(n)}}}),c}function we(e){if(!((Number.isInteger(e)||e===1/0)&&e>0))throw TypeError("Expected `concurrency` to be a number from 1 and up")}var Te=class{constructor(e){this._events=new Map,this._eventsCount=0,this.onceListeners=new WeakMap,this.hasOnceListener=new Map,e&&e>=1&&this.setConcurrency(e)}eventNames(){return Array.from(this._events.keys())}listeners(e){let t=this._events.get(e);return t?Array.isArray(t)?t.map(e=>e.fn):[t.fn]:[]}listenerCount(e){let t=this._events.get(e);return t?Array.isArray(t)?t.length:1:0}emit(e,...t){let n=this._events.get(e);if(!n)return!1;if(!Array.isArray(n))n.once&&this.removeListener(e,n.fn),n.fn.apply(n.context,t);else{let r=this.hasOnceListener.get(e)?n.slice():n;for(let n=0;n<r.length;n++){let i=r[n];i&&i.once&&this.removeListener(e,i.fn),i&&i.fn.apply(i.context,t)}}return!0}on(e,t,n){return this.addListener(e,t,n,!1)}addListener(e,t,n,r=!1){if(typeof t!=`function`)throw TypeError(`The listener must be a function`);let i={fn:t,context:n||this,once:r||!1};r&&this.hasOnceListener.set(e,!0);let a=this._events.get(e);return a?Array.isArray(a)?a.push(i):this._events.set(e,[a,i]):(this._events.set(e,i),this._eventsCount++),this}once(e,t,n){if(typeof t!=`function`)throw TypeError(`The listener must be a function`);let r=!1,i=(...a)=>{if(this.removeListener(e,i),!r)return r=!0,t.apply(n||this,a)};return this.on(e,i),this.onceListeners.set(t,i),this}removeListener(e,t){let n=this.onceListeners.get(t);n&&(this.onceListeners.delete(t),t=n);let r=this._events.get(e);if(!r)return this;if(!Array.isArray(r))r.fn===t&&(this._events.delete(e),this._eventsCount--,this.hasOnceListener.delete(e));else{let n=r.filter(e=>e.fn!==t);n.length===0?(this._events.delete(e),this._eventsCount--,this.hasOnceListener.delete(e)):n.length===1&&n[0]?(this._events.set(e,n[0]),n[0].once||this.hasOnceListener.delete(e)):(this._events.set(e,n),n.some(e=>e.once)||this.hasOnceListener.delete(e))}return this}off(e,t){return this.removeListener(e,t)}removeAllListeners(e){return e?this._events.has(e)&&(this._events.delete(e),this._eventsCount--,this.hasOnceListener.delete(e)):(this._events.clear(),this._eventsCount=0,this.hasOnceListener.clear()),this}setConcurrency(e){return e>=1&&(this.limiter=Ce(e)),this}emitParallel(e,...t){let n=this.listeners(e).map(e=>this._executeListener(e,t));return Promise.all(n)}emitSerial(e,...t){return this.listeners(e).reduce((e,n)=>e.then(e=>this._executeListener(n,t).then(t=>(e.push(t),e))),Promise.resolve([]))}emitReduce(e,...t){return this._emitReduceRun(e,t)}emitReduceRight(e,...t){return this._emitReduceRun(e,t,!0)}subscribe(e,t,n=!1){return n?this.once(e,t):this.on(e,t),()=>{this.removeListener(e,t)}}_emitReduceRun(e,t,n=!1){return(n?this.listeners(e).reverse():this.listeners(e)).reduce((e,t)=>e.then(e=>{let n=Array.isArray(e)?e:[e];return this._executeListener(t,n)}),Promise.resolve(t))}_executeListener(e,t){try{return this.limiter?this.limiter(()=>e(...t)):Promise.resolve(e(...t))}catch(e){return Promise.reject(e)}}},Ee=BigInt(2**32-1),S=BigInt(32);function C(e,t=!1){return t?{h:Number(e&Ee),l:Number(e>>S&Ee)}:{h:Number(e>>S&Ee)|0,l:Number(e&Ee)|0}}function De(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=C(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}var Oe=(e,t,n)=>e<<n|t>>>32-n,ke=(e,t,n)=>t<<n|e>>>32-n,Ae=(e,t,n)=>t<<n-32|e>>>64-n,je=(e,t,n)=>e<<n-32|t>>>64-n;function Me(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`&&`BYTES_PER_ELEMENT`in e&&e.BYTES_PER_ELEMENT===1}function w(e,t=``){if(typeof e!=`number`){let n=t&&`"${t}" `;throw TypeError(`${n}expected number, got ${typeof e}`)}if(!Number.isSafeInteger(e)||e<0){let n=t&&`"${t}" `;throw RangeError(`${n}expected integer >= 0, got ${e}`)}}function T(e,t,n=``){let r=Me(e),i=e?.length,a=t!==void 0;if(!r||a&&i!==t){let o=n&&`"${n}" `,s=a?` of length ${t}`:``,c=r?`length=${i}`:`type=${typeof e}`,l=o+`expected Uint8Array`+s+`, got `+c;throw r?RangeError(l):TypeError(l)}return e}function Ne(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function Pe(e,t){T(e,void 0,`digestInto() output`);let n=t.outputLen;if(e.length<n)throw RangeError(`"digestInto() output" expected to be of length >=`+n)}function E(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Fe(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}var Ie=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;function Le(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function Re(e){for(let t=0;t<e.length;t++)e[t]=Le(e[t]);return e}var ze=Ie?e=>e:Re;function Be(e,t={}){let n=(t,n)=>e(n).update(t).digest(),r=e(void 0);return n.outputLen=r.outputLen,n.blockLen=r.blockLen,n.canXOF=r.canXOF,n.create=t=>e(t),Object.assign(n,t),Object.freeze(n)}var Ve=e=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,e])}),He=BigInt(0),Ue=BigInt(1),We=BigInt(2),Ge=BigInt(7),Ke=BigInt(256),qe=BigInt(113),Je=[],Ye=[],Xe=[];for(let e=0,t=Ue,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],Je.push(2*(5*r+n)),Ye.push((e+1)*(e+2)/2%64);let i=He;for(let e=0;e<7;e++)t=(t<<Ue^(t>>Ge)*qe)%Ke,t&We&&(i^=Ue<<(Ue<<BigInt(e))-Ue);Xe.push(i)}var Ze=De(Xe,!0),Qe=Ze[0],$e=Ze[1],et=(e,t,n)=>n>32?Ae(e,t,n):Oe(e,t,n),tt=(e,t,n)=>n>32?je(e,t,n):ke(e,t,n);function nt(e,t=24){if(w(t,`rounds`),t<1||t>24)throw Error(`"rounds" expected integer 1..24`);let n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let r=(t+8)%10,i=(t+2)%10,a=n[i],o=n[i+1],s=et(a,o,1)^n[r],c=tt(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=Ye[n],a=et(t,i,r),o=tt(t,i,r),s=Je[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){let n=e[t],r=e[t+1],i=e[t+2],a=e[t+3];e[t]^=~e[t+2]&e[t+4],e[t+1]^=~e[t+3]&e[t+5],e[t+2]^=~e[t+4]&e[t+6],e[t+3]^=~e[t+5]&e[t+7],e[t+4]^=~e[t+6]&e[t+8],e[t+5]^=~e[t+7]&e[t+9],e[t+6]^=~e[t+8]&n,e[t+7]^=~e[t+9]&r,e[t+8]^=~n&i,e[t+9]^=~r&a}e[0]^=Qe[r],e[1]^=$e[r]}Fe(n)}var rt=class e{state;pos=0;posOut=0;finished=!1;state32;destroyed=!1;blockLen;suffix;outputLen;canXOF;enableXOF=!1;rounds;constructor(e,t,n,r=!1,i=24){if(this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.canXOF=r,this.rounds=i,w(n,`outputLen`),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=E(this.state)}clone(){return this._cloneInto()}keccak(){ze(this.state32),nt(this.state32,this.rounds),ze(this.state32),this.posOut=0,this.pos=0}update(e){Ne(this),T(e);let{blockLen:t,state:n}=this,r=e.length;for(let i=0;i<r;){let a=Math.min(t-this.pos,r-i);for(let t=0;t<a;t++)n[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){Ne(this,!1),T(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return w(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(Pe(e,this),this.finished)throw Error(`digest() was already called`);this.writeInto(e.subarray(0,this.outputLen)),this.destroy()}digest(){let e=new Uint8Array(this.outputLen);return this.digestInto(e),e}destroy(){this.destroyed=!0,Fe(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.blockLen=n,t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.canXOF=this.canXOF,t.destroyed=this.destroyed,t}},it=((e,t,n,r={})=>Be(()=>new rt(t,e,n),r))(6,72,64,Ve(10)),at=`abcdefghijklmnopqrstuvwxyz`,ot=26,st=`0123456789abcdefghijklmnopqrstuvwxyz`,ct=476782367,lt=16,ut=32,dt=new TextEncoder,ft=null,pt=Math.floor(Math.random()*ct),D=e=>st[e],mt=e=>{let t=``;switch(e){case 4:return D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0);case 8:return D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0);case 16:return D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0);case 24:return D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0);case 32:return D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0)+D(Math.random()*36|0);default:for(let n=0;n<e;n++)t+=D(Math.random()*36|0);return t}},ht=e=>{let t=e.length;if(t===0)return 0n;let n=new DataView(e.buffer,e.byteOffset,e.byteLength);if(t===64){let e=n.getBigUint64(0,!1),t=n.getBigUint64(8,!1),r=n.getBigUint64(16,!1),i=n.getBigUint64(24,!1),a=n.getBigUint64(32,!1),o=n.getBigUint64(40,!1),s=n.getBigUint64(48,!1),c=n.getBigUint64(56,!1);return e<<448n|t<<384n|r<<320n|i<<256n|a<<192n|o<<128n|s<<64n|c}let r=0n,i=0,a=t>>3<<3;for(;i<a;)r=r<<64n|n.getBigUint64(i,!1),i+=8;for(;i<t;)r=r<<8n|BigInt(e[i]),i++;return r},gt=e=>ht(it(dt.encode(e))).toString(36).slice(1),_t=()=>{if(ft)return ft;let e=Object.keys(typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:{});return ft=gt(e.length?e.join(``)+mt(ut):mt(ut)).substring(0,ut),ft},vt=()=>{let e=at[Math.random()*ot|0],t=Date.now().toString(36),n=(++pt).toString(36),r=`${t}${mt(lt)}${n}${ft}`;return e+ht(it(dt.encode(r))).toString(36).substring(1,lt)};_t();var O=null;try{O=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch{}function k(e,t,n){this.low=e|0,this.high=t|0,this.unsigned=!!n}k.prototype.__isLong__,Object.defineProperty(k.prototype,"__isLong__",{value:!0});function A(e){return(e&&e.__isLong__)===!0}function yt(e){var t=Math.clz32(e&-e);return e?31-t:t}k.isLong=A;var bt={},xt={};function j(e,t){var n,r,i;return t?(e>>>=0,(i=0<=e&&e<256)&&(r=xt[e],r)?r:(n=N(e,0,!0),i&&(xt[e]=n),n)):(e|=0,(i=-128<=e&&e<128)&&(r=bt[e],r)?r:(n=N(e,e<0?-1:0,!1),i&&(bt[e]=n),n))}k.fromInt=j;function M(e,t){if(isNaN(e))return t?I:F;if(t){if(e<0)return I;if(e>=Dt)return Nt}else{if(e<=-Ot)return R;if(e+1>=Ot)return Mt}return e<0?M(-e,t).neg():N(e%Et|0,e/Et|0,t)}k.fromNumber=M;function N(e,t,n){return new k(e,t,n)}k.fromBits=N;var St=Math.pow;function Ct(e,t,n){if(e.length===0)throw Error(`empty string`);if(typeof t==`number`?(n=t,t=!1):t=!!t,e===`NaN`||e===`Infinity`||e===`+Infinity`||e===`-Infinity`)return t?I:F;if(n||=10,n<2||36<n)throw RangeError(`radix`);var r;if((r=e.indexOf(`-`))>0)throw Error(`interior hyphen`);if(r===0)return Ct(e.substring(1),t,n).neg();for(var i=M(St(n,8)),a=F,o=0;o<e.length;o+=8){var s=Math.min(8,e.length-o),c=parseInt(e.substring(o,o+s),n);if(s<8){var l=M(St(n,s));a=a.mul(l).add(M(c))}else a=a.mul(i),a=a.add(M(c))}return a.unsigned=t,a}k.fromString=Ct;function P(e,t){return typeof e==`number`?M(e,t):typeof e==`string`?Ct(e,t):N(e.low,e.high,typeof t==`boolean`?t:e.unsigned)}k.fromValue=P;var wt=65536,Tt=1<<24,Et=wt*wt,Dt=Et*Et,Ot=Dt/2,kt=j(Tt),F=j(0);k.ZERO=F;var I=j(0,!0);k.UZERO=I;var L=j(1);k.ONE=L;var At=j(1,!0);k.UONE=At;var jt=j(-1);k.NEG_ONE=jt;var Mt=N(-1,2147483647,!1);k.MAX_VALUE=Mt;var Nt=N(-1,-1,!0);k.MAX_UNSIGNED_VALUE=Nt;var R=N(0,-2147483648,!1);k.MIN_VALUE=R;var z=k.prototype;z.toInt=function(){return this.unsigned?this.low>>>0:this.low},z.toNumber=function(){return this.unsigned?(this.high>>>0)*Et+(this.low>>>0):this.high*Et+(this.low>>>0)},z.toString=function(e){if(e||=10,e<2||36<e)throw RangeError(`radix`);if(this.isZero())return`0`;if(this.isNegative()){if(this.eq(R)){var t=M(e),n=this.div(t),r=n.mul(t).sub(this);return n.toString(e)+r.toInt().toString(e)}return`-`+this.neg().toString(e)}for(var i=M(St(e,6),this.unsigned),a=this,o=``;;){var s=a.div(i),c=(a.sub(s.mul(i)).toInt()>>>0).toString(e);if(a=s,a.isZero())return c+o;for(;c.length<6;)c=`0`+c;o=``+c+o}},z.getHighBits=function(){return this.high},z.getHighBitsUnsigned=function(){return this.high>>>0},z.getLowBits=function(){return this.low},z.getLowBitsUnsigned=function(){return this.low>>>0},z.getNumBitsAbs=function(){if(this.isNegative())return this.eq(R)?64:this.neg().getNumBitsAbs();for(var e=this.high==0?this.low:this.high,t=31;t>0&&!(e&1<<t);t--);return this.high==0?t+1:t+33},z.isSafeInteger=function(){var e=this.high>>21;return!e||!this.unsigned&&e===-1&&(this.low!==0||this.high!==-2097152)},z.isZero=function(){return this.high===0&&this.low===0},z.eqz=z.isZero,z.isNegative=function(){return!this.unsigned&&this.high<0},z.isPositive=function(){return this.unsigned||this.high>=0},z.isOdd=function(){return(this.low&1)==1},z.isEven=function(){return!(this.low&1)},z.equals=function(e){return A(e)||(e=P(e)),this.unsigned!==e.unsigned&&this.high>>>31==1&&e.high>>>31==1?!1:this.high===e.high&&this.low===e.low},z.eq=z.equals,z.notEquals=function(e){return!this.eq(e)},z.neq=z.notEquals,z.ne=z.notEquals,z.lessThan=function(e){return this.comp(e)<0},z.lt=z.lessThan,z.lessThanOrEqual=function(e){return this.comp(e)<=0},z.lte=z.lessThanOrEqual,z.le=z.lessThanOrEqual,z.greaterThan=function(e){return this.comp(e)>0},z.gt=z.greaterThan,z.greaterThanOrEqual=function(e){return this.comp(e)>=0},z.gte=z.greaterThanOrEqual,z.ge=z.greaterThanOrEqual,z.compare=function(e){if(A(e)||(e=P(e)),this.eq(e))return 0;var t=this.isNegative(),n=e.isNegative();return t&&!n?-1:!t&&n?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1},z.comp=z.compare,z.negate=function(){return!this.unsigned&&this.eq(R)?R:this.not().add(L)},z.neg=z.negate,z.add=function(e){A(e)||(e=P(e));var t=this.high>>>16,n=this.high&65535,r=this.low>>>16,i=this.low&65535,a=e.high>>>16,o=e.high&65535,s=e.low>>>16,c=e.low&65535,l=0,u=0,d=0,f=0;return f+=i+c,d+=f>>>16,f&=65535,d+=r+s,u+=d>>>16,d&=65535,u+=n+o,l+=u>>>16,u&=65535,l+=t+a,l&=65535,N(d<<16|f,l<<16|u,this.unsigned)},z.subtract=function(e){return A(e)||(e=P(e)),this.add(e.neg())},z.sub=z.subtract,z.multiply=function(e){if(this.isZero())return this;if(A(e)||(e=P(e)),O)return N(O.mul(this.low,this.high,e.low,e.high),O.get_high(),this.unsigned);if(e.isZero())return this.unsigned?I:F;if(this.eq(R))return e.isOdd()?R:F;if(e.eq(R))return this.isOdd()?R:F;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(kt)&&e.lt(kt))return M(this.toNumber()*e.toNumber(),this.unsigned);var t=this.high>>>16,n=this.high&65535,r=this.low>>>16,i=this.low&65535,a=e.high>>>16,o=e.high&65535,s=e.low>>>16,c=e.low&65535,l=0,u=0,d=0,f=0;return f+=i*c,d+=f>>>16,f&=65535,d+=r*c,u+=d>>>16,d&=65535,d+=i*s,u+=d>>>16,d&=65535,u+=n*c,l+=u>>>16,u&=65535,u+=r*s,l+=u>>>16,u&=65535,u+=i*o,l+=u>>>16,u&=65535,l+=t*c+n*s+r*o+i*a,l&=65535,N(d<<16|f,l<<16|u,this.unsigned)},z.mul=z.multiply,z.divide=function(e){if(A(e)||(e=P(e)),e.isZero())throw Error(`division by zero`);if(O)return!this.unsigned&&this.high===-2147483648&&e.low===-1&&e.high===-1?this:N((this.unsigned?O.div_u:O.div_s)(this.low,this.high,e.low,e.high),O.get_high(),this.unsigned);if(this.isZero())return this.unsigned?I:F;var t,n,r;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return I;if(e.gt(this.shru(1)))return At;r=I}else{if(this.eq(R))return e.eq(L)||e.eq(jt)?R:e.eq(R)?L:(t=this.shr(1).div(e).shl(1),t.eq(F)?e.isNegative()?L:jt:(n=this.sub(e.mul(t)),r=t.add(n.div(e)),r));if(e.eq(R))return this.unsigned?I:F;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();r=F}for(n=this;n.gte(e);){t=Math.max(1,Math.floor(n.toNumber()/e.toNumber()));for(var i=Math.ceil(Math.log(t)/Math.LN2),a=i<=48?1:St(2,i-48),o=M(t),s=o.mul(e);s.isNegative()||s.gt(n);)t-=a,o=M(t,this.unsigned),s=o.mul(e);o.isZero()&&(o=L),r=r.add(o),n=n.sub(s)}return r},z.div=z.divide,z.modulo=function(e){return A(e)||(e=P(e)),O?N((this.unsigned?O.rem_u:O.rem_s)(this.low,this.high,e.low,e.high),O.get_high(),this.unsigned):this.sub(this.div(e).mul(e))},z.mod=z.modulo,z.rem=z.modulo,z.not=function(){return N(~this.low,~this.high,this.unsigned)},z.countLeadingZeros=function(){return this.high?Math.clz32(this.high):Math.clz32(this.low)+32},z.clz=z.countLeadingZeros,z.countTrailingZeros=function(){return this.low?yt(this.low):yt(this.high)+32},z.ctz=z.countTrailingZeros,z.and=function(e){return A(e)||(e=P(e)),N(this.low&e.low,this.high&e.high,this.unsigned)},z.or=function(e){return A(e)||(e=P(e)),N(this.low|e.low,this.high|e.high,this.unsigned)},z.xor=function(e){return A(e)||(e=P(e)),N(this.low^e.low,this.high^e.high,this.unsigned)},z.shiftLeft=function(e){return A(e)&&(e=e.toInt()),(e&=63)==0?this:e<32?N(this.low<<e,this.high<<e|this.low>>>32-e,this.unsigned):N(0,this.low<<e-32,this.unsigned)},z.shl=z.shiftLeft,z.shiftRight=function(e){return A(e)&&(e=e.toInt()),(e&=63)==0?this:e<32?N(this.low>>>e|this.high<<32-e,this.high>>e,this.unsigned):N(this.high>>e-32,this.high>=0?0:-1,this.unsigned)},z.shr=z.shiftRight,z.shiftRightUnsigned=function(e){return A(e)&&(e=e.toInt()),(e&=63)==0?this:e<32?N(this.low>>>e|this.high<<32-e,this.high>>>e,this.unsigned):N(e===32?this.high:this.high>>>e-32,0,this.unsigned)},z.shru=z.shiftRightUnsigned,z.shr_u=z.shiftRightUnsigned,z.rotateLeft=function(e){var t;return A(e)&&(e=e.toInt()),(e&=63)==0?this:e===32?N(this.high,this.low,this.unsigned):e<32?(t=32-e,N(this.low<<e|this.high>>>t,this.high<<e|this.low>>>t,this.unsigned)):(e-=32,t=32-e,N(this.high<<e|this.low>>>t,this.low<<e|this.high>>>t,this.unsigned))},z.rotl=z.rotateLeft,z.rotateRight=function(e){var t;return A(e)&&(e=e.toInt()),(e&=63)==0?this:e===32?N(this.high,this.low,this.unsigned):e<32?(t=32-e,N(this.high<<t|this.low>>>e,this.low<<t|this.high>>>e,this.unsigned)):(e-=32,t=32-e,N(this.low<<t|this.high>>>e,this.high<<t|this.low>>>e,this.unsigned))},z.rotr=z.rotateRight,z.toSigned=function(){return this.unsigned?N(this.low,this.high,!1):this},z.toUnsigned=function(){return this.unsigned?this:N(this.low,this.high,!0)},z.toBytes=function(e){return e?this.toBytesLE():this.toBytesBE()},z.toBytesLE=function(){var e=this.high,t=this.low;return[t&255,t>>>8&255,t>>>16&255,t>>>24,e&255,e>>>8&255,e>>>16&255,e>>>24]},z.toBytesBE=function(){var e=this.high,t=this.low;return[e>>>24,e>>>16&255,e>>>8&255,e&255,t>>>24,t>>>16&255,t>>>8&255,t&255]},k.fromBytes=function(e,t,n){return n?k.fromBytesLE(e,t):k.fromBytesBE(e,t)},k.fromBytesLE=function(e,t){return new k(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,t)},k.fromBytesBE=function(e,t){return new k(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],t)},typeof BigInt==`function`&&(k.fromBigInt=function(e,t){return N(Number(BigInt.asIntN(32,e)),Number(BigInt.asIntN(32,e>>BigInt(32))),t)},k.fromValue=function(e,t){return typeof e==`bigint`?k.fromBigInt(e,t):P(e,t)},z.toBigInt=function(){var e=BigInt(this.low>>>0);return BigInt(this.unsigned?this.high>>>0:this.high)<<BigInt(32)|e});var Pt=t((e=>{e.byteLength=c,e.toByteArray=u,e.fromByteArray=p;for(var t=[],n=[],r=typeof Uint8Array<`u`?Uint8Array:Array,i=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,a=0,o=i.length;a<o;++a)t[a]=i[a],n[i.charCodeAt(a)]=a;n[45]=62,n[95]=63;function s(e){var t=e.length;if(t%4>0)throw Error(`Invalid string. Length must be a multiple of 4`);var n=e.indexOf(`=`);n===-1&&(n=t);var r=n===t?0:4-n%4;return[n,r]}function c(e){var t=s(e),n=t[0],r=t[1];return(n+r)*3/4-r}function l(e,t,n){return(t+n)*3/4-n}function u(e){for(var t,i=s(e),a=i[0],o=i[1],c=new r(l(e,a,o)),u=0,d=o>0?a-4:a,f=0;f<d;f+=4)t=n[e.charCodeAt(f)]<<18|n[e.charCodeAt(f+1)]<<12|n[e.charCodeAt(f+2)]<<6|n[e.charCodeAt(f+3)],c[u++]=t>>16&255,c[u++]=t>>8&255,c[u++]=t&255;return o===2&&(t=n[e.charCodeAt(f)]<<2|n[e.charCodeAt(f+1)]>>4,c[u++]=t&255),o===1&&(t=n[e.charCodeAt(f)]<<10|n[e.charCodeAt(f+1)]<<4|n[e.charCodeAt(f+2)]>>2,c[u++]=t>>8&255,c[u++]=t&255),c}function d(e){return t[e>>18&63]+t[e>>12&63]+t[e>>6&63]+t[e&63]}function f(e,t,n){for(var r,i=[],a=t;a<n;a+=3)r=(e[a]<<16&16711680)+(e[a+1]<<8&65280)+(e[a+2]&255),i.push(d(r));return i.join(``)}function p(e){for(var n,r=e.length,i=r%3,a=[],o=16383,s=0,c=r-i;s<c;s+=o)a.push(f(e,s,s+o>c?c:s+o));return i===1?(n=e[r-1],a.push(t[n>>2]+t[n<<4&63]+`==`)):i===2&&(n=(e[r-2]<<8)+e[r-1],a.push(t[n>>10]+t[n>>4&63]+t[n<<2&63]+`=`)),a.join(``)}})),Ft=t((e=>{e.read=function(e,t,n,r,i){var a,o,s=i*8-r-1,c=(1<<s)-1,l=c>>1,u=-7,d=n?i-1:0,f=n?-1:1,p=e[t+d];for(d+=f,a=p&(1<<-u)-1,p>>=-u,u+=s;u>0;a=a*256+e[t+d],d+=f,u-=8);for(o=a&(1<<-u)-1,a>>=-u,u+=r;u>0;o=o*256+e[t+d],d+=f,u-=8);if(a===0)a=1-l;else if(a===c)return o?NaN:(p?-1:1)*(1/0);else o+=2**r,a-=l;return(p?-1:1)*o*2**(a-r)},e.write=function(e,t,n,r,i,a){var o,s,c,l=a*8-i-1,u=(1<<l)-1,d=u>>1,f=i===23?2**-24-2**-77:0,p=r?0:a-1,m=r?1:-1,h=+(t<0||t===0&&1/t<0);for(t=Math.abs(t),isNaN(t)||t===1/0?(s=+!!isNaN(t),o=u):(o=Math.floor(Math.log(t)/Math.LN2),t*(c=2**-o)<1&&(o--,c*=2),o+d>=1?t+=f/c:t+=f*2**(1-d),t*c>=2&&(o++,c/=2),o+d>=u?(s=0,o=u):o+d>=1?(s=(t*c-1)*2**i,o+=d):(s=t*2**(d-1)*2**i,o=0));i>=8;e[n+p]=s&255,p+=m,s/=256,i-=8);for(o=o<<i|s,l+=i;l>0;e[n+p]=o&255,p+=m,o/=256,l-=8);e[n+p-m]|=h*128}})),B=t((e=>{var t=Pt(),n=Ft(),r=typeof Symbol==`function`&&typeof Symbol.for==`function`?Symbol.for(`nodejs.util.inspect.custom`):null;e.Buffer=s,e.SlowBuffer=ne,e.INSPECT_MAX_BYTES=50;var i=2147483647;e.kMaxLength=i,s.TYPED_ARRAY_SUPPORT=a(),!s.TYPED_ARRAY_SUPPORT&&typeof console<`u`&&typeof console.error==`function`&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function a(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch{return!1}}Object.defineProperty(s.prototype,"parent",{enumerable:!0,get:function(){if(s.isBuffer(this))return this.buffer}}),Object.defineProperty(s.prototype,"offset",{enumerable:!0,get:function(){if(s.isBuffer(this))return this.byteOffset}});function o(e){if(e>i)throw RangeError(`The value "`+e+`" is invalid for option "size"`);let t=new Uint8Array(e);return Object.setPrototypeOf(t,s.prototype),t}function s(e,t,n){if(typeof e==`number`){if(typeof t==`string`)throw TypeError(`The "string" argument must be of type string. Received type number`);return d(e)}return c(e,t,n)}s.poolSize=8192;function c(e,t,n){if(typeof e==`string`)return f(e,t);if(ArrayBuffer.isView(e))return m(e);if(e==null)throw TypeError(`The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type `+typeof e);if(T(e,ArrayBuffer)||e&&T(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer<`u`&&(T(e,SharedArrayBuffer)||e&&T(e.buffer,SharedArrayBuffer)))return h(e,t,n);if(typeof e==`number`)throw TypeError(`The "value" argument must not be of type number. Received type number`);let r=e.valueOf&&e.valueOf();if(r!=null&&r!==e)return s.from(r,t,n);let i=ee(e);if(i)return i;if(typeof Symbol<`u`&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]==`function`)return s.from(e[Symbol.toPrimitive](`string`),t,n);throw TypeError(`The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type `+typeof e)}s.from=function(e,t,n){return c(e,t,n)},Object.setPrototypeOf(s.prototype,Uint8Array.prototype),Object.setPrototypeOf(s,Uint8Array);function l(e){if(typeof e!=`number`)throw TypeError(`"size" argument must be of type number`);if(e<0)throw RangeError(`The value "`+e+`" is invalid for option "size"`)}function u(e,t,n){return l(e),e<=0||t===void 0?o(e):typeof n==`string`?o(e).fill(t,n):o(e).fill(t)}s.alloc=function(e,t,n){return u(e,t,n)};function d(e){return l(e),o(e<0?0:te(e)|0)}s.allocUnsafe=function(e){return d(e)},s.allocUnsafeSlow=function(e){return d(e)};function f(e,t){if((typeof t!=`string`||t===``)&&(t=`utf8`),!s.isEncoding(t))throw TypeError(`Unknown encoding: `+t);let n=re(e,t)|0,r=o(n),i=r.write(e,t);return i!==n&&(r=r.slice(0,i)),r}function p(e){let t=e.length<0?0:te(e.length)|0,n=o(t);for(let r=0;r<t;r+=1)n[r]=e[r]&255;return n}function m(e){if(T(e,Uint8Array)){let t=new Uint8Array(e);return h(t.buffer,t.byteOffset,t.byteLength)}return p(e)}function h(e,t,n){if(t<0||e.byteLength<t)throw RangeError(`"offset" is outside of buffer bounds`);if(e.byteLength<t+(n||0))throw RangeError(`"length" is outside of buffer bounds`);let r;return r=t===void 0&&n===void 0?new Uint8Array(e):n===void 0?new Uint8Array(e,t):new Uint8Array(e,t,n),Object.setPrototypeOf(r,s.prototype),r}function ee(e){if(s.isBuffer(e)){let t=te(e.length)|0,n=o(t);return n.length===0||e.copy(n,0,0,t),n}if(e.length!==void 0)return typeof e.length!=`number`||Ne(e.length)?o(0):p(e);if(e.type===`Buffer`&&Array.isArray(e.data))return p(e.data)}function te(e){if(e>=i)throw RangeError(`Attempt to allocate Buffer larger than maximum size: 0x`+i.toString(16)+` bytes`);return e|0}function ne(e){return+e!=e&&(e=0),s.alloc(+e)}s.isBuffer=function(e){return e!=null&&e._isBuffer===!0&&e!==s.prototype},s.compare=function(e,t){if(T(e,Uint8Array)&&(e=s.from(e,e.offset,e.byteLength)),T(t,Uint8Array)&&(t=s.from(t,t.offset,t.byteLength)),!s.isBuffer(e)||!s.isBuffer(t))throw TypeError(`The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array`);if(e===t)return 0;let n=e.length,r=t.length;for(let i=0,a=Math.min(n,r);i<a;++i)if(e[i]!==t[i]){n=e[i],r=t[i];break}return n<r?-1:+(r<n)},s.isEncoding=function(e){switch(String(e).toLowerCase()){case`hex`:case`utf8`:case`utf-8`:case`ascii`:case`latin1`:case`binary`:case`base64`:case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return!0;default:return!1}},s.concat=function(e,t){if(!Array.isArray(e))throw TypeError(`"list" argument must be an Array of Buffers`);if(e.length===0)return s.alloc(0);let n;if(t===void 0)for(t=0,n=0;n<e.length;++n)t+=e[n].length;let r=s.allocUnsafe(t),i=0;for(n=0;n<e.length;++n){let t=e[n];if(T(t,Uint8Array))i+t.length>r.length?(s.isBuffer(t)||(t=s.from(t)),t.copy(r,i)):Uint8Array.prototype.set.call(r,t,i);else if(s.isBuffer(t))t.copy(r,i);else throw TypeError(`"list" argument must be an Array of Buffers`);i+=t.length}return r};function re(e,t){if(s.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||T(e,ArrayBuffer))return e.byteLength;if(typeof e!=`string`)throw TypeError(`The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type `+typeof e);let n=e.length,r=arguments.length>2&&arguments[2]===!0;if(!r&&n===0)return 0;let i=!1;for(;;)switch(t){case`ascii`:case`latin1`:case`binary`:return n;case`utf8`:case`utf-8`:return ke(e).length;case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return n*2;case`hex`:return n>>>1;case`base64`:return Me(e).length;default:if(i)return r?-1:ke(e).length;t=(``+t).toLowerCase(),i=!0}}s.byteLength=re;function ie(e,t,n){let r=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((n===void 0||n>this.length)&&(n=this.length),n<=0)||(n>>>=0,t>>>=0,n<=t))return``;for(e||=`utf8`;;)switch(e){case`hex`:return ge(this,t,n);case`utf8`:case`utf-8`:return fe(this,t,n);case`ascii`:return v(this,t,n);case`latin1`:case`binary`:return he(this,t,n);case`base64`:return de(this,t,n);case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return _e(this,t,n);default:if(r)throw TypeError(`Unknown encoding: `+e);e=(e+``).toLowerCase(),r=!0}}s.prototype._isBuffer=!0;function g(e,t,n){let r=e[t];e[t]=e[n],e[n]=r}s.prototype.swap16=function(){let e=this.length;if(e%2!=0)throw RangeError(`Buffer size must be a multiple of 16-bits`);for(let t=0;t<e;t+=2)g(this,t,t+1);return this},s.prototype.swap32=function(){let e=this.length;if(e%4!=0)throw RangeError(`Buffer size must be a multiple of 32-bits`);for(let t=0;t<e;t+=4)g(this,t,t+3),g(this,t+1,t+2);return this},s.prototype.swap64=function(){let e=this.length;if(e%8!=0)throw RangeError(`Buffer size must be a multiple of 64-bits`);for(let t=0;t<e;t+=8)g(this,t,t+7),g(this,t+1,t+6),g(this,t+2,t+5),g(this,t+3,t+4);return this},s.prototype.toString=function(){let e=this.length;return e===0?``:arguments.length===0?fe(this,0,e):ie.apply(this,arguments)},s.prototype.toLocaleString=s.prototype.toString,s.prototype.equals=function(e){if(!s.isBuffer(e))throw TypeError(`Argument must be a Buffer`);return this===e||s.compare(this,e)===0},s.prototype.inspect=function(){let t=``,n=e.INSPECT_MAX_BYTES;return t=this.toString(`hex`,0,n).replace(/(.{2})/g,`$1 `).trim(),this.length>n&&(t+=` ... `),`<Buffer `+t+`>`},r&&(s.prototype[r]=s.prototype.inspect),s.prototype.compare=function(e,t,n,r,i){if(T(e,Uint8Array)&&(e=s.from(e,e.offset,e.byteLength)),!s.isBuffer(e))throw TypeError(`The "target" argument must be one of type Buffer or Uint8Array. Received type `+typeof e);if(t===void 0&&(t=0),n===void 0&&(n=e?e.length:0),r===void 0&&(r=0),i===void 0&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw RangeError(`out of range index`);if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(t>>>=0,n>>>=0,r>>>=0,i>>>=0,this===e)return 0;let a=i-r,o=n-t,c=Math.min(a,o),l=this.slice(r,i),u=e.slice(t,n);for(let e=0;e<c;++e)if(l[e]!==u[e]){a=l[e],o=u[e];break}return a<o?-1:+(o<a)};function _(e,t,n,r,i){if(e.length===0)return-1;if(typeof n==`string`?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,Ne(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(i)n=0;else return-1}if(typeof t==`string`&&(t=s.from(t,r)),s.isBuffer(t))return t.length===0?-1:ae(e,t,n,r,i);if(typeof t==`number`)return t&=255,typeof Uint8Array.prototype.indexOf==`function`?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):ae(e,[t],n,r,i);throw TypeError(`val must be string, number or Buffer`)}function ae(e,t,n,r,i){let a=1,o=e.length,s=t.length;if(r!==void 0&&(r=String(r).toLowerCase(),r===`ucs2`||r===`ucs-2`||r===`utf16le`||r===`utf-16le`)){if(e.length<2||t.length<2)return-1;a=2,o/=2,s/=2,n/=2}function c(e,t){return a===1?e[t]:e.readUInt16BE(t*a)}let l;if(i){let r=-1;for(l=n;l<o;l++)if(c(e,l)===c(t,r===-1?0:l-r)){if(r===-1&&(r=l),l-r+1===s)return r*a}else r!==-1&&(l-=l-r),r=-1}else for(n+s>o&&(n=o-s),l=n;l>=0;l--){let n=!0;for(let r=0;r<s;r++)if(c(e,l+r)!==c(t,r)){n=!1;break}if(n)return l}return-1}s.prototype.includes=function(e,t,n){return this.indexOf(e,t,n)!==-1},s.prototype.indexOf=function(e,t,n){return _(this,e,t,n,!0)},s.prototype.lastIndexOf=function(e,t,n){return _(this,e,t,n,!1)};function oe(e,t,n,r){n=Number(n)||0;let i=e.length-n;r?(r=Number(r),r>i&&(r=i)):r=i;let a=t.length;r>a/2&&(r=a/2);let o=0;for(;o<r;++o){let r=parseInt(t.substr(o*2,2),16);if(Ne(r))return o;e[n+o]=r}return o}function se(e,t,n,r){return w(ke(t,e.length-n),e,n,r)}function ce(e,t,n,r){return w(Ae(t),e,n,r)}function le(e,t,n,r){return w(Me(t),e,n,r)}function ue(e,t,n,r){return w(je(t,e.length-n),e,n,r)}s.prototype.write=function(e,t,n,r){if(t===void 0)r=`utf8`,n=this.length,t=0;else if(n===void 0&&typeof t==`string`)r=t,n=this.length,t=0;else if(isFinite(t))t>>>=0,isFinite(n)?(n>>>=0,r===void 0&&(r=`utf8`)):(r=n,n=void 0);else throw Error(`Buffer.write(string, encoding, offset[, length]) is no longer supported`);let i=this.length-t;if((n===void 0||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw RangeError(`Attempt to write outside buffer bounds`);r||=`utf8`;let a=!1;for(;;)switch(r){case`hex`:return oe(this,e,t,n);case`utf8`:case`utf-8`:return se(this,e,t,n);case`ascii`:case`latin1`:case`binary`:return ce(this,e,t,n);case`base64`:return le(this,e,t,n);case`ucs2`:case`ucs-2`:case`utf16le`:case`utf-16le`:return ue(this,e,t,n);default:if(a)throw TypeError(`Unknown encoding: `+r);r=(``+r).toLowerCase(),a=!0}},s.prototype.toJSON=function(){return{type:`Buffer`,data:Array.prototype.slice.call(this._arr||this,0)}};function de(e,n,r){return n===0&&r===e.length?t.fromByteArray(e):t.fromByteArray(e.slice(n,r))}function fe(e,t,n){n=Math.min(e.length,n);let r=[],i=t;for(;i<n;){let t=e[i],a=null,o=t>239?4:t>223?3:t>191?2:1;if(i+o<=n){let n,r,s,c;switch(o){case 1:t<128&&(a=t);break;case 2:n=e[i+1],(n&192)==128&&(c=(t&31)<<6|n&63,c>127&&(a=c));break;case 3:n=e[i+1],r=e[i+2],(n&192)==128&&(r&192)==128&&(c=(t&15)<<12|(n&63)<<6|r&63,c>2047&&(c<55296||c>57343)&&(a=c));break;case 4:n=e[i+1],r=e[i+2],s=e[i+3],(n&192)==128&&(r&192)==128&&(s&192)==128&&(c=(t&15)<<18|(n&63)<<12|(r&63)<<6|s&63,c>65535&&c<1114112&&(a=c))}}a===null?(a=65533,o=1):a>65535&&(a-=65536,r.push(a>>>10&1023|55296),a=56320|a&1023),r.push(a),i+=o}return me(r)}var pe=4096;function me(e){let t=e.length;if(t<=pe)return String.fromCharCode.apply(String,e);let n=``,r=0;for(;r<t;)n+=String.fromCharCode.apply(String,e.slice(r,r+=pe));return n}function v(e,t,n){let r=``;n=Math.min(e.length,n);for(let i=t;i<n;++i)r+=String.fromCharCode(e[i]&127);return r}function he(e,t,n){let r=``;n=Math.min(e.length,n);for(let i=t;i<n;++i)r+=String.fromCharCode(e[i]);return r}function ge(e,t,n){let r=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>r)&&(n=r);let i=``;for(let r=t;r<n;++r)i+=Pe[e[r]];return i}function _e(e,t,n){let r=e.slice(t,n),i=``;for(let e=0;e<r.length-1;e+=2)i+=String.fromCharCode(r[e]+r[e+1]*256);return i}s.prototype.slice=function(e,t){let n=this.length;e=~~e,t=t===void 0?n:~~t,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),t<e&&(t=e);let r=this.subarray(e,t);return Object.setPrototypeOf(r,s.prototype),r};function y(e,t,n){if(e%1!=0||e<0)throw RangeError(`offset is not uint`);if(e+t>n)throw RangeError(`Trying to access beyond buffer length`)}s.prototype.readUintLE=s.prototype.readUIntLE=function(e,t,n){e>>>=0,t>>>=0,n||y(e,t,this.length);let r=this[e],i=1,a=0;for(;++a<t&&(i*=256);)r+=this[e+a]*i;return r},s.prototype.readUintBE=s.prototype.readUIntBE=function(e,t,n){e>>>=0,t>>>=0,n||y(e,t,this.length);let r=this[e+--t],i=1;for(;t>0&&(i*=256);)r+=this[e+--t]*i;return r},s.prototype.readUint8=s.prototype.readUInt8=function(e,t){return e>>>=0,t||y(e,1,this.length),this[e]},s.prototype.readUint16LE=s.prototype.readUInt16LE=function(e,t){return e>>>=0,t||y(e,2,this.length),this[e]|this[e+1]<<8},s.prototype.readUint16BE=s.prototype.readUInt16BE=function(e,t){return e>>>=0,t||y(e,2,this.length),this[e]<<8|this[e+1]},s.prototype.readUint32LE=s.prototype.readUInt32LE=function(e,t){return e>>>=0,t||y(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+this[e+3]*16777216},s.prototype.readUint32BE=s.prototype.readUInt32BE=function(e,t){return e>>>=0,t||y(e,4,this.length),this[e]*16777216+(this[e+1]<<16|this[e+2]<<8|this[e+3])},s.prototype.readBigUInt64LE=E(function(e){e>>>=0,S(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&C(e,this.length-8);let r=t+this[++e]*256+this[++e]*2**16+this[++e]*2**24,i=this[++e]+this[++e]*256+this[++e]*2**16+n*2**24;return BigInt(r)+(BigInt(i)<<BigInt(32))}),s.prototype.readBigUInt64BE=E(function(e){e>>>=0,S(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&C(e,this.length-8);let r=t*2**24+this[++e]*2**16+this[++e]*256+this[++e],i=this[++e]*2**24+this[++e]*2**16+this[++e]*256+n;return(BigInt(r)<<BigInt(32))+BigInt(i)}),s.prototype.readIntLE=function(e,t,n){e>>>=0,t>>>=0,n||y(e,t,this.length);let r=this[e],i=1,a=0;for(;++a<t&&(i*=256);)r+=this[e+a]*i;return i*=128,r>=i&&(r-=2**(8*t)),r},s.prototype.readIntBE=function(e,t,n){e>>>=0,t>>>=0,n||y(e,t,this.length);let r=t,i=1,a=this[e+--r];for(;r>0&&(i*=256);)a+=this[e+--r]*i;return i*=128,a>=i&&(a-=2**(8*t)),a},s.prototype.readInt8=function(e,t){return e>>>=0,t||y(e,1,this.length),this[e]&128?(255-this[e]+1)*-1:this[e]},s.prototype.readInt16LE=function(e,t){e>>>=0,t||y(e,2,this.length);let n=this[e]|this[e+1]<<8;return n&32768?n|4294901760:n},s.prototype.readInt16BE=function(e,t){e>>>=0,t||y(e,2,this.length);let n=this[e+1]|this[e]<<8;return n&32768?n|4294901760:n},s.prototype.readInt32LE=function(e,t){return e>>>=0,t||y(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},s.prototype.readInt32BE=function(e,t){return e>>>=0,t||y(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},s.prototype.readBigInt64LE=E(function(e){e>>>=0,S(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&C(e,this.length-8);let r=this[e+4]+this[e+5]*256+this[e+6]*2**16+(n<<24);return(BigInt(r)<<BigInt(32))+BigInt(t+this[++e]*256+this[++e]*2**16+this[++e]*2**24)}),s.prototype.readBigInt64BE=E(function(e){e>>>=0,S(e,`offset`);let t=this[e],n=this[e+7];(t===void 0||n===void 0)&&C(e,this.length-8);let r=(t<<24)+this[++e]*2**16+this[++e]*256+this[++e];return(BigInt(r)<<BigInt(32))+BigInt(this[++e]*2**24+this[++e]*2**16+this[++e]*256+n)}),s.prototype.readFloatLE=function(e,t){return e>>>=0,t||y(e,4,this.length),n.read(this,e,!0,23,4)},s.prototype.readFloatBE=function(e,t){return e>>>=0,t||y(e,4,this.length),n.read(this,e,!1,23,4)},s.prototype.readDoubleLE=function(e,t){return e>>>=0,t||y(e,8,this.length),n.read(this,e,!0,52,8)},s.prototype.readDoubleBE=function(e,t){return e>>>=0,t||y(e,8,this.length),n.read(this,e,!1,52,8)};function b(e,t,n,r,i,a){if(!s.isBuffer(e))throw TypeError(`"buffer" argument must be a Buffer instance`);if(t>i||t<a)throw RangeError(`"value" argument is out of bounds`);if(n+r>e.length)throw RangeError(`Index out of range`)}s.prototype.writeUintLE=s.prototype.writeUIntLE=function(e,t,n,r){if(e=+e,t>>>=0,n>>>=0,!r){let r=2**(8*n)-1;b(this,e,t,n,r,0)}let i=1,a=0;for(this[t]=e&255;++a<n&&(i*=256);)this[t+a]=e/i&255;return t+n},s.prototype.writeUintBE=s.prototype.writeUIntBE=function(e,t,n,r){if(e=+e,t>>>=0,n>>>=0,!r){let r=2**(8*n)-1;b(this,e,t,n,r,0)}let i=n-1,a=1;for(this[t+i]=e&255;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+n},s.prototype.writeUint8=s.prototype.writeUInt8=function(e,t,n){return e=+e,t>>>=0,n||b(this,e,t,1,255,0),this[t]=e&255,t+1},s.prototype.writeUint16LE=s.prototype.writeUInt16LE=function(e,t,n){return e=+e,t>>>=0,n||b(this,e,t,2,65535,0),this[t]=e&255,this[t+1]=e>>>8,t+2},s.prototype.writeUint16BE=s.prototype.writeUInt16BE=function(e,t,n){return e=+e,t>>>=0,n||b(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=e&255,t+2},s.prototype.writeUint32LE=s.prototype.writeUInt32LE=function(e,t,n){return e=+e,t>>>=0,n||b(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=e&255,t+4},s.prototype.writeUint32BE=s.prototype.writeUInt32BE=function(e,t,n){return e=+e,t>>>=0,n||b(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4};function ve(e,t,n,r,i){Ee(t,r,i,e,n,7);let a=Number(t&BigInt(4294967295));e[n++]=a,a>>=8,e[n++]=a,a>>=8,e[n++]=a,a>>=8,e[n++]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[n++]=o,o>>=8,e[n++]=o,o>>=8,e[n++]=o,o>>=8,e[n++]=o,n}function ye(e,t,n,r,i){Ee(t,r,i,e,n,7);let a=Number(t&BigInt(4294967295));e[n+7]=a,a>>=8,e[n+6]=a,a>>=8,e[n+5]=a,a>>=8,e[n+4]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[n+3]=o,o>>=8,e[n+2]=o,o>>=8,e[n+1]=o,o>>=8,e[n]=o,n+8}s.prototype.writeBigUInt64LE=E(function(e,t=0){return ve(this,e,t,BigInt(0),BigInt(`0xffffffffffffffff`))}),s.prototype.writeBigUInt64BE=E(function(e,t=0){return ye(this,e,t,BigInt(0),BigInt(`0xffffffffffffffff`))}),s.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t>>>=0,!r){let r=2**(8*n-1);b(this,e,t,n,r-1,-r)}let i=0,a=1,o=0;for(this[t]=e&255;++i<n&&(a*=256);)e<0&&o===0&&this[t+i-1]!==0&&(o=1),this[t+i]=(e/a>>0)-o&255;return t+n},s.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t>>>=0,!r){let r=2**(8*n-1);b(this,e,t,n,r-1,-r)}let i=n-1,a=1,o=0;for(this[t+i]=e&255;--i>=0&&(a*=256);)e<0&&o===0&&this[t+i+1]!==0&&(o=1),this[t+i]=(e/a>>0)-o&255;return t+n},s.prototype.writeInt8=function(e,t,n){return e=+e,t>>>=0,n||b(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=e&255,t+1},s.prototype.writeInt16LE=function(e,t,n){return e=+e,t>>>=0,n||b(this,e,t,2,32767,-32768),this[t]=e&255,this[t+1]=e>>>8,t+2},s.prototype.writeInt16BE=function(e,t,n){return e=+e,t>>>=0,n||b(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=e&255,t+2},s.prototype.writeInt32LE=function(e,t,n){return e=+e,t>>>=0,n||b(this,e,t,4,2147483647,-2147483648),this[t]=e&255,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},s.prototype.writeInt32BE=function(e,t,n){return e=+e,t>>>=0,n||b(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=e&255,t+4},s.prototype.writeBigInt64LE=E(function(e,t=0){return ve(this,e,t,-BigInt(`0x8000000000000000`),BigInt(`0x7fffffffffffffff`))}),s.prototype.writeBigInt64BE=E(function(e,t=0){return ye(this,e,t,-BigInt(`0x8000000000000000`),BigInt(`0x7fffffffffffffff`))});function be(e,t,n,r,i,a){if(n+r>e.length||n<0)throw RangeError(`Index out of range`)}function xe(e,t,r,i,a){return t=+t,r>>>=0,a||be(e,t,r,4,34028234663852886e22,-34028234663852886e22),n.write(e,t,r,i,23,4),r+4}s.prototype.writeFloatLE=function(e,t,n){return xe(this,e,t,!0,n)},s.prototype.writeFloatBE=function(e,t,n){return xe(this,e,t,!1,n)};function Se(e,t,r,i,a){return t=+t,r>>>=0,a||be(e,t,r,8,17976931348623157e292,-17976931348623157e292),n.write(e,t,r,i,52,8),r+8}s.prototype.writeDoubleLE=function(e,t,n){return Se(this,e,t,!0,n)},s.prototype.writeDoubleBE=function(e,t,n){return Se(this,e,t,!1,n)},s.prototype.copy=function(e,t,n,r){if(!s.isBuffer(e))throw TypeError(`argument should be a Buffer`);if(n||=0,!r&&r!==0&&(r=this.length),t>=e.length&&(t=e.length),t||=0,r>0&&r<n&&(r=n),r===n||e.length===0||this.length===0)return 0;if(t<0)throw RangeError(`targetStart out of bounds`);if(n<0||n>=this.length)throw RangeError(`Index out of range`);if(r<0)throw RangeError(`sourceEnd out of bounds`);r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);let i=r-n;return this===e&&typeof Uint8Array.prototype.copyWithin==`function`?this.copyWithin(t,n,r):Uint8Array.prototype.set.call(e,this.subarray(n,r),t),i},s.prototype.fill=function(e,t,n,r){if(typeof e==`string`){if(typeof t==`string`?(r=t,t=0,n=this.length):typeof n==`string`&&(r=n,n=this.length),r!==void 0&&typeof r!=`string`)throw TypeError(`encoding must be a string`);if(typeof r==`string`&&!s.isEncoding(r))throw TypeError(`Unknown encoding: `+r);if(e.length===1){let t=e.charCodeAt(0);(r===`utf8`&&t<128||r===`latin1`)&&(e=t)}}else typeof e==`number`?e&=255:typeof e==`boolean`&&(e=Number(e));if(t<0||this.length<t||this.length<n)throw RangeError(`Out of range index`);if(n<=t)return this;t>>>=0,n=n===void 0?this.length:n>>>0,e||=0;let i;if(typeof e==`number`)for(i=t;i<n;++i)this[i]=e;else{let a=s.isBuffer(e)?e:s.from(e,r),o=a.length;if(o===0)throw TypeError(`The value "`+e+`" is invalid for argument "value"`);for(i=0;i<n-t;++i)this[i+t]=a[i%o]}return this};var x={};function Ce(e,t,n){x[e]=class extends n{constructor(){super(),Object.defineProperty(this,"message",{value:t.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${e}]`,this.stack,delete this.name}get code(){return e}set code(e){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:e,writable:!0})}toString(){return`${this.name} [${e}]: ${this.message}`}}}Ce(`ERR_BUFFER_OUT_OF_BOUNDS`,function(e){return e?`${e} is outside of buffer bounds`:`Attempt to access memory outside buffer bounds`},RangeError),Ce(`ERR_INVALID_ARG_TYPE`,function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`},TypeError),Ce(`ERR_OUT_OF_RANGE`,function(e,t,n){let r=`The value of "${e}" is out of range.`,i=n;return Number.isInteger(n)&&Math.abs(n)>2**32?i=we(String(n)):typeof n==`bigint`&&(i=String(n),(n>BigInt(2)**BigInt(32)||n<-(BigInt(2)**BigInt(32)))&&(i=we(i)),i+=`n`),r+=` It must be ${t}. Received ${i}`,r},RangeError);function we(e){let t=``,n=e.length,r=+(e[0]===`-`);for(;n>=r+4;n-=3)t=`_${e.slice(n-3,n)}${t}`;return`${e.slice(0,n)}${t}`}function Te(e,t,n){S(t,`offset`),(e[t]===void 0||e[t+n]===void 0)&&C(t,e.length-(n+1))}function Ee(e,t,n,r,i,a){if(e>n||e<t){let r=typeof t==`bigint`?`n`:``,i;throw i=a>3?t===0||t===BigInt(0)?`>= 0${r} and < 2${r} ** ${(a+1)*8}${r}`:`>= -(2${r} ** ${(a+1)*8-1}${r}) and < 2 ** ${(a+1)*8-1}${r}`:`>= ${t}${r} and <= ${n}${r}`,new x.ERR_OUT_OF_RANGE(`value`,i,e)}Te(r,i,a)}function S(e,t){if(typeof e!=`number`)throw new x.ERR_INVALID_ARG_TYPE(t,`number`,e)}function C(e,t,n){throw Math.floor(e)===e?t<0?new x.ERR_BUFFER_OUT_OF_BOUNDS:new x.ERR_OUT_OF_RANGE(n||`offset`,`>= ${+!!n} and <= ${t}`,e):(S(e,n),new x.ERR_OUT_OF_RANGE(n||`offset`,`an integer`,e))}var De=/[^+/0-9A-Za-z-_]/g;function Oe(e){if(e=e.split(`=`)[0],e=e.trim().replace(De,``),e.length<2)return``;for(;e.length%4!=0;)e+=`=`;return e}function ke(e,t){t||=1/0;let n,r=e.length,i=null,a=[];for(let o=0;o<r;++o){if(n=e.charCodeAt(o),n>55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===r){(t-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),i=n;continue}n=(i-55296<<10|n-56320)+65536}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if(--t<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,n&63|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,n&63|128)}else if(n<1114112){if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,n&63|128)}else throw Error(`Invalid code point`)}return a}function Ae(e){let t=[];for(let n=0;n<e.length;++n)t.push(e.charCodeAt(n)&255);return t}function je(e,t){let n,r,i,a=[];for(let o=0;o<e.length&&!((t-=2)<0);++o)n=e.charCodeAt(o),r=n>>8,i=n%256,a.push(i),a.push(r);return a}function Me(e){return t.toByteArray(Oe(e))}function w(e,t,n,r){let i=0;for(;i<r&&!(i+n>=t.length||i>=e.length);++i)t[i+n]=e[i];return i}function T(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function Ne(e){return e!==e}var Pe=(function(){let e=`0123456789abcdef`,t=Array(256);for(let n=0;n<16;++n){let r=n*16;for(let i=0;i<16;++i)t[r+i]=e[n]+e[i]}return t})();function E(e){return typeof BigInt>`u`?Fe:e}function Fe(){throw Error(`BigInt not supported`)}}))(),It=8192,Lt=2147483647,Rt=16,zt=1048576,Bt=typeof TextEncoder<`u`?new TextEncoder:null,Vt=e=>{if(e===null)return`null`;if(e===void 0)return`undefined`;let t=typeof e;if(t!==`object`)return t;let n=Object.prototype.toString.call(e).match(/\[object (\w+)\]/);return n?n[1].toLowerCase():`object`},Ht=class{static{this.buffers=[]}static{this.positions=[]}static acquire(){if(this.buffers.length>0){let e=this.buffers.pop();return this.positions.pop()+7&4294967288,e.length-1024,e}return B.Buffer.allocUnsafe(It)}static release(e,t){e.length<=zt&&this.buffers.length<Rt&&(this.buffers.push(e),this.positions.push(t))}static clear(){this.buffers=[],this.positions=[]}},Ut=class{constructor(){this.buffer=Ht.acquire(),this.position=0,this.start=0,this.view=new DataView(this.buffer.buffer,this.buffer.byteOffset,this.buffer.byteLength)}release(){Ht.release(this.buffer,this.position)}};function V(e,t){let n=e.position+t;if(n>e.buffer.length){let t=Math.min(Math.max(e.buffer.length*2,n),Lt),r=B.Buffer.allocUnsafe(t);e.buffer.copy(r,0,0,e.position),e.buffer=r,e.view=new DataView(e.buffer.buffer,e.buffer.byteOffset,e.buffer.byteLength)}}var Wt=class{constructor(e){this.encodingTypes=e,this.encodeDepth=0,this.state=new Ut}encode(e){let t=this.encodeDepth>0;if(this.encodeDepth++,t){let t=this.state;this.state=new Ut,this._encode(e);let n=this.state.buffer.subarray(0,this.state.position),r=B.Buffer.allocUnsafe(n.length);return n.copy(r),this.state.release(),this.state=t,this.encodeDepth--,r}{this.state.position=0,this.state.start=0,this._encode(e);let t=this.state.buffer.subarray(0,this.state.position),n=B.Buffer.allocUnsafe(t.length);return t.copy(n),this.state.release(),this.state=new Ut,this.encodeDepth--,n}}_encode(e){let t=typeof e,n=this.state;switch(t){case`undefined`:V(n,3),n.buffer[n.position]=212,n.buffer[n.position+1]=0,n.buffer[n.position+2]=0,n.position+=3;return;case`boolean`:V(n,1),n.buffer[n.position++]=e?195:194;return;case`number`:this.encodeNumber(e);return;case`string`:this.encodeString(e);return;case`bigint`:this.encodeBigInt(e);return}e===null?(V(n,1),n.buffer[n.position++]=192):ve(e)?this.encodeBuffer(e):Array.isArray(e)?this.encodeArray(e):ye(e)?this.encodeObject(e):this.encodeCustom(e)}encodeUndefined(){let e=this.state;V(e,3);let t=e.buffer,n=e.position;t[n]=212,t[n+1]=0,t[n+2]=0,e.position=n+3}encodeNull(){let e=this.state;V(e,1),e.buffer[e.position++]=192}encodeBoolean(e){let t=this.state;V(t,1),t.buffer[t.position++]=e?195:194}encodeNumber(e){let t=this.state,n=t.position;if(e>>>0===e){if(e<128)V(t,1),t.buffer[n++]=e;else if(e<256){V(t,2);let r=t.buffer;r[n++]=204,r[n++]=e}else e<65536?(V(t,3),t.buffer[n++]=205,t.view.setUint16(n,e,!1),n+=2):(V(t,5),t.buffer[n++]=206,t.view.setUint32(n,e,!1),n+=4)}else e>>0===e?e>=-32?(V(t,1),t.buffer[n++]=256+e):e>=-128?(V(t,2),t.buffer[n++]=208,t.view.setInt8(n++,e)):e>=-32768?(V(t,3),t.buffer[n++]=209,t.view.setInt16(n,e,!1),n+=2):(V(t,5),t.buffer[n++]=210,t.view.setInt32(n,e,!1),n+=4):(V(t,9),t.buffer[n++]=203,t.view.setFloat64(n,e,!1),n+=8);t.position=n}encodeString(e){let t=this.state,n=e.length;if(n<64){let r=!0,i=n;for(let t=0;t<n;t++)if(e.charCodeAt(t)>=128){r=!1;break}if(r){if(i<32){V(t,1+i);let r=t.buffer,a=t.position;r[a]=160|i;for(let t=0;t<n;t++)r[a+1+t]=e.charCodeAt(t);t.position=a+1+i;return}{V(t,2+i);let r=t.buffer,a=t.position;r[a]=217,r[a+1]=i;for(let t=0;t<n;t++)r[a+2+t]=e.charCodeAt(t);t.position=a+2+i;return}}}let r=B.Buffer.byteLength(e,`utf8`),i;i=r<32?1:r<=255?2:r<=65535?3:5,V(t,i+r);let a=t.buffer,o=t.position;if(r<32?a[o++]=160|r:r<=255?(a[o++]=217,a[o++]=r):r<=65535?(a[o++]=218,t.view.setUint16(o,r,!1),o+=2):(a[o++]=219,t.view.setUint32(o,r,!1),o+=4),Bt&&r>0){let t=new Uint8Array(a.buffer,a.byteOffset+o,r),n=Bt.encodeInto(e,t);o+=n.written}else r>0&&(a.write(e,o,r,`utf8`),o+=r);t.position=o}encodeBuffer(e){let t=this.state,n=e.length;if(n<=255){V(t,2+n);let r=t.buffer,i=t.position;r[i]=196,r[i+1]=n,e.copy(r,i+2),t.position=i+2+n}else if(n<=65535){V(t,3+n);let r=t.buffer,i=t.position;r[i]=197,t.view.setUint16(i+1,n,!1),e.copy(r,i+3),t.position=i+3+n}else{V(t,5+n);let r=t.buffer,i=t.position;r[i]=198,t.view.setUint32(i+1,n,!1),e.copy(r,i+5),t.position=i+5+n}}encodeArray(e){let t=this.state,n=e.length,r=t.position;n<16?(V(t,1),t.buffer[r++]=144|n,t.position=r):n<65536?(V(t,3),t.buffer[r++]=220,t.view.setUint16(r,n,!1),t.position=r+2):(V(t,5),t.buffer[r++]=221,t.view.setUint32(r,n,!1),t.position=r+4);for(let t=0;t<n;t++)this._encode(e[t])}encodeObject(e){let t=this.state,n=Object.keys(e),r=n.length,i=t.position;r<16?(V(t,1),t.buffer[i++]=128|r,t.position=i):(V(t,3),t.buffer[i++]=222,t.view.setUint16(i,r,!1),t.position=i+2);for(let t=0;t<r;t++){let r=n[t];this.encodeString(r),this._encode(e[r])}}encodeBigInt(e){let t=this.encodingTypes.get(120);if(!t)throw Error(`BigInt encoder not registered`);let n=this.state.position,r=t.encode(e);this.state.position=n,this.encodeExtension(120,r)}encodeCustom(e){for(let[t,n]of this.encodingTypes.entries())if(n.check(e)){let r=n.encode(e);this.encodeExtension(t,r);return}throw Error(`Not supported: ${Vt(e)}`)}encodeExtension(e,t){let n=this.state,r=t.length;if(r===1){V(n,3);let r=n.buffer,i=n.position;r[i]=212,r[i+1]=e,r[i+2]=t[0],n.position=i+3}else if(r===2){V(n,4);let r=n.buffer,i=n.position;r[i]=213,r[i+1]=e,t.copy(r,i+2),n.position=i+4}else if(r===4){V(n,6);let r=n.buffer,i=n.position;r[i]=214,r[i+1]=e,t.copy(r,i+2),n.position=i+6}else if(r===8){V(n,10);let r=n.buffer,i=n.position;r[i]=215,r[i+1]=e,t.copy(r,i+2),n.position=i+10}else if(r===16){V(n,18);let r=n.buffer,i=n.position;r[i]=216,r[i+1]=e,t.copy(r,i+2),n.position=i+18}else if(r<256){V(n,3+r);let i=n.buffer,a=n.position;i[a]=199,i[a+1]=r,i[a+2]=e,t.copy(i,a+3),n.position=a+3+r}else if(r<65536){V(n,4+r);let i=n.buffer,a=n.position;i[a]=200,n.view.setUint16(a+1,r,!1),i[a+3]=e,t.copy(i,a+4),n.position=a+4+r}else{V(n,6+r);let i=n.buffer,a=n.position;i[a]=201,n.view.setUint32(a+1,r,!1),i[a+5]=e,t.copy(i,a+6),n.position=a+6+r}}},Gt=class e{constructor(e=128){this._roffset=0,this.capacity=e,this.buffer=B.Buffer.allocUnsafe(e),this.position=0}static fromBuffer(t){let n=new e(t.length);return n.buffer=t,n.capacity=t.length,n.position=t.length,n._roffset=0,n}static wrap(t){let n=B.Buffer.isBuffer(t)?t:B.Buffer.from(t);return e.fromBuffer(n)}ensure(e){let t=this.position+e;if(t>this.capacity){let e=Math.max(this.capacity*2,t),n=B.Buffer.allocUnsafe(e);this.buffer.copy(n,0,0,this.position),this.buffer=n,this.capacity=e}}writeUInt8(e){this.ensure(1),this.buffer[this.position++]=e}writeInt8(e){this.ensure(1),this.buffer.writeInt8(e,this.position),this.position++}writeUInt16BE(e){this.ensure(2),this.buffer.writeUInt16BE(e,this.position),this.position+=2}writeInt16BE(e){this.ensure(2),this.buffer.writeInt16BE(e,this.position),this.position+=2}writeUInt32BE(e){this.ensure(4),this.buffer.writeUInt32BE(e,this.position),this.position+=4}writeInt32BE(e){this.ensure(4),this.buffer.writeInt32BE(e,this.position),this.position+=4}writeUInt64BE(e){if(this.ensure(8),typeof e==`number`){let t=Math.floor(e/4294967296),n=e>>>0;this.buffer.writeUInt32BE(t,this.position),this.buffer.writeUInt32BE(n,this.position+4)}else this.buffer.writeUInt32BE(e.high>>>0,this.position),this.buffer.writeUInt32BE(e.low>>>0,this.position+4);this.position+=8}writeInt64BE(e){if(this.ensure(8),typeof e==`number`){let t=Math.floor(e/4294967296),n=e>>>0;this.buffer.writeInt32BE(t,this.position),this.buffer.writeUInt32BE(n,this.position+4)}else this.buffer.writeInt32BE(e.high,this.position),this.buffer.writeUInt32BE(e.low>>>0,this.position+4);this.position+=8}writeDoubleBE(e){this.ensure(8),this.buffer.writeDoubleBE(e,this.position),this.position+=8}writeFloatBE(e){this.ensure(4),this.buffer.writeFloatBE(e,this.position),this.position+=4}write(e,t,n){if(typeof e==`string`){let r=n||B.Buffer.byteLength(e,t);this.ensure(r),this.buffer.write(e,this.position,r,t),this.position+=r}else{let t=n||e.length;this.ensure(t),e.copy(this.buffer,this.position,0,t),this.position+=t}return this}get roffset(){return this._roffset}set roffset(e){this._roffset=e}get woffset(){return this.position}set woffset(e){this.position=e}get length(){return this.position-this._roffset}readUInt8(e){let t=e===void 0?this._roffset:e;if(!(t>=this.position))return e===void 0&&this._roffset++,this.buffer[t]}readInt8(e){let t=e===void 0?this._roffset:e;return e===void 0&&this._roffset++,this.buffer.readInt8(t)}readUInt16BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readUInt16BE(t);return e===void 0&&(this._roffset+=2),n}readInt16BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readInt16BE(t);return e===void 0&&(this._roffset+=2),n}readUInt32BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readUInt32BE(t);return e===void 0&&(this._roffset+=4),n}readInt32BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readInt32BE(t);return e===void 0&&(this._roffset+=4),n}readUInt64BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readUInt32BE(t),r=this.buffer.readUInt32BE(t+4);return e===void 0&&(this._roffset+=8),k.fromBits(r,n,!0)}readInt64BE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readInt32BE(t),r=this.buffer.readUInt32BE(t+4);return e===void 0&&(this._roffset+=8),k.fromBits(r,n,!1)}readDoubleBE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readDoubleBE(t);return e===void 0&&(this._roffset+=8),n}readFloatBE(e){let t=e===void 0?this._roffset:e,n=this.buffer.readFloatBE(t);return e===void 0&&(this._roffset+=4),n}toString(e,t,n){return this.buffer.toString(e,t,n)}slice(t,n){let r=new e(n-t);return this.buffer.copy(r.buffer,0,t,n),r.position=n-t,r}skipRead(e){this._roffset+=e}getRemainingBuffer(){return this.buffer.slice(this._roffset,this.position)}toBuffer(){return this.buffer.slice(0,this.position)}},Kt=class{constructor(e){this.decodingTypes=e,this.lastBytesConsumed=0,this.view=null}decode(e){if(e.length===0)throw this.lastBytesConsumed=0,Error(`Incomplete buffer`);let t=this.view;this.view=new DataView(e.buffer,e.byteOffset,e.byteLength);try{let t=this.tryDecode(e,0);if(t===void 0&&this.lastBytesConsumed===0)throw this.lastBytesConsumed=this.getMinHeaderSize(e[0]),this.lastBytesConsumed>e.length&&(this.lastBytesConsumed=e.length),Error(`Incomplete buffer`);return t}finally{this.view=t}}getLastBytesConsumed(e){return this.lastBytesConsumed}getMinHeaderSize(e){return e<128||e>=224||e>=160&&e<=191||e>=144&&e<=159||e>=128&&e<=143||e===192||e===194||e===195?1:e===196||e===199||e===204||e===208||e===212?2:e===197||e===200||e===205||e===209||e===213||e===217?3:e===210?4:e===202||e===198||e===201||e===206||e===214||e===218||e===220?5:e===211?6:e===203||e===215||e===219||e===221?9:e===216?10:e===217?18:1}tryDecode(e,t){let n=e.length;if(t>=n){this.lastBytesConsumed=0;return}let r=e[t],i=this.view;if(r<160){if(r<128)return this.lastBytesConsumed=1,r;if(r<144){let n=r&15;return this.decodeMap(e,t+1,n,1)}{let n=r&15;return this.decodeArray(e,t+1,n,1)}}if(r<192){let i=r&31;if(t+1+i>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=1+i,e.toString(`utf8`,t+1,t+1+i)}if(r>=224)return this.lastBytesConsumed=1,r-256;if(r===192)return this.lastBytesConsumed=1,null;if(r===194)return this.lastBytesConsumed=1,!1;if(r===195)return this.lastBytesConsumed=1,!0;if(r>=204&&r<=207){if(r===204){if(t+2>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=2,e[t+1]}if(r===205){if(t+3>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=3,i.getUint16(t+1,!1)}if(r===206){if(t+5>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5,i.getUint32(t+1,!1)}if(t+9>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=9,i.getUint32(t+1,!1)*4294967296+i.getUint32(t+5,!1)}if(r>=208&&r<=211){if(r===208){if(t+2>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=2,i.getInt8(t+1)}if(r===209){if(t+3>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=3,i.getInt16(t+1,!1)}if(r===210){if(t+5>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5,i.getInt32(t+1,!1)}if(t+9>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=9,i.getInt32(t+1,!1)*4294967296+i.getUint32(t+5,!1)}if(r===202){if(t+5>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5,i.getFloat32(t+1,!1)}if(r===203){if(t+9>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=9,i.getFloat64(t+1,!1)}if(r===217){if(t+2>n){this.lastBytesConsumed=0;return}let r=e[t+1];if(t+2+r>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=2+r,e.toString(`utf8`,t+2,t+2+r)}if(r===218){if(t+3>n){this.lastBytesConsumed=0;return}let r=i.getUint16(t+1,!1);if(t+3+r>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=3+r,e.toString(`utf8`,t+3,t+3+r)}if(r===219){if(t+5>n){this.lastBytesConsumed=0;return}let r=i.getUint32(t+1,!1);if(t+5+r>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5+r,e.toString(`utf8`,t+5,t+5+r)}let a;switch(r){case 196:if(t+2>n){this.lastBytesConsumed=0;return}if(a=e[t+1],t+2+a>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=2+a,e.slice(t+2,t+2+a);case 197:if(t+3>n){this.lastBytesConsumed=0;return}if(a=i.getUint16(t+1,!1),t+3+a>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=3+a,e.slice(t+3,t+3+a);case 198:if(t+5>n){this.lastBytesConsumed=0;return}if(a=i.getUint32(t+1,!1),t+5+a>n){this.lastBytesConsumed=0;return}return this.lastBytesConsumed=5+a,e.slice(t+5,t+5+a);case 220:if(t+3>n){this.lastBytesConsumed=0;return}return a=i.getUint16(t+1,!1),this.decodeArray(e,t+3,a,3);case 221:if(t+5>n){this.lastBytesConsumed=0;return}return a=i.getUint32(t+1,!1),this.decodeArray(e,t+5,a,5);case 222:if(t+3>n){this.lastBytesConsumed=0;return}return a=i.getUint16(t+1,!1),this.decodeMap(e,t+3,a,3);case 223:throw Error(`map too big to decode in JS`);case 212:return this.decodeFixExt(e,t,1,3);case 213:return this.decodeFixExt(e,t,2,4);case 214:return this.decodeFixExt(e,t,4,6);case 215:return this.decodeFixExt(e,t,8,10);case 216:return this.decodeFixExt(e,t,16,18);case 199:if(t+3>n){this.lastBytesConsumed=0;return}return a=e[t+1],this.decodeExt(e,t,a,3);case 200:if(t+4>n){this.lastBytesConsumed=0;return}return a=i.getUint16(t+1,!1),this.decodeExt(e,t,a,4);case 201:if(t+6>n){this.lastBytesConsumed=0;return}return a=i.getUint32(t+1,!1),this.decodeExt(e,t,a,6);default:throw Error(`Unknown MessagePack type: 0x${r.toString(16)}`)}}decodeArray(e,t,n,r){let i=[],a=0;for(let r=0;r<n;r++){let n=this.tryDecode(e,t+a);if(n===void 0&&this.lastBytesConsumed===0){this.lastBytesConsumed=0;return}i.push(n),a+=this.lastBytesConsumed}return this.lastBytesConsumed=r+a,i}decodeMap(e,t,n,r){let i={},a=0;for(let r=0;r<n;r++){let n=this.tryDecode(e,t+a);if(n===void 0&&this.lastBytesConsumed===0){this.lastBytesConsumed=0;return}a+=this.lastBytesConsumed;let r=this.tryDecode(e,t+a);if(r===void 0&&this.lastBytesConsumed===0){this.lastBytesConsumed=0;return}a+=this.lastBytesConsumed,n===`__proto__`||n===`constructor`||n===`prototype`?Object.defineProperty(i,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):i[n]=r}return this.lastBytesConsumed=r+a,i}decodeFixExt(e,t,n,r){if(t+r>e.length){this.lastBytesConsumed=0;return}let i=e[t+1];return this.decodeExtData(e,t+2,i,n,r)}decodeExt(e,t,n,r){if(t+r+n>e.length){this.lastBytesConsumed=0;return}let i=e[t+r-1];return this.decodeExtData(e,t+r,i,n,r+n)}decodeExtData(e,t,n,r,i){let a=this.decodingTypes.get(n);if(a){let n=e.slice(t,t+r),o=a(Gt.fromBuffer(n));return this.lastBytesConsumed=i,o}if(n===0&&r===1&&e[t]===0){this.lastBytesConsumed=i;return}throw Error(`Unable to find ext type ${n}`)}},qt=class{constructor(e=64){this.initialCapacity=e,this.encodingTypes=new Map,this.decodingTypes=new Map,this.encoder=new Wt(this.encodingTypes),this.decoder=new Kt(this.decodingTypes)}registerEncoder(e,t,n){return this.encodingTypes.set(e,{check:t,encode:n}),this}registerDecoder(e,t){return this.decodingTypes.set(e,t),this}register(e,t,n,r){if(e<0||e>127)throw RangeError(`Bad type: 0 <= ${e} <= 127`);return this.registerEncoder(e,e=>e instanceof t,e=>{let t=new Gt(this.initialCapacity);return n(e,t),t.toBuffer()}),this.registerDecoder(e,r),this}encode(e,t){let n=this.encoder.encode(e);if(t){t.write(n);return}{let e=n;e.toBuffer=function(){return this};let t=e.write;return e.write=function(e,n,r,i){return B.Buffer.isBuffer(e)?(this.copy(e,n||0),this.length):t.call(this,e,n,r,i)},e}}decode(e){if(e&&typeof e.getRemainingBuffer==`function`&&typeof e.skipRead==`function`){let t=e.getRemainingBuffer();try{return this.decoder.decode(t)}finally{let n=this.decoder.getLastBytesConsumed(t);e.skipRead(n)}}if(e&&typeof e.toBuffer==`function`&&typeof e.read==`function`&&typeof e.readUInt8==`function`){let t=e.roffset||0;try{return this.decoder.decode(e.toBuffer().slice(t))}finally{e.roffset=t+this.decoder.getLastBytesConsumed()}}return B.Buffer.isBuffer(e)?this.decoder.decode(e):e&&typeof e.toBuffer==`function`?this.decoder.decode(e.toBuffer()):this.decoder.decode(e)}},Jt={},Yt={},Xt=[],Zt={1:Error,2:SyntaxError,3:TypeError,4:ReferenceError,5:RangeError,6:EvalError,7:URIError},Qt=Object.keys(Zt).map(e=>+e);for(let e=0;e<Qt.length;e++){let t=Qt[e],n=Zt[t];Jt[n]=t,Xt.push(n),Yt[n.name]=t}var $t=(e,t,n)=>{let r=new Zt[e](t);return r.stack=n,r},en=e=>Yt[e.constructor.name]??Yt[Error.name],tn=e=>{e.register(126,Error,(t,n)=>{n.writeUInt16BE(en(t)),e.encode(t.name,n),e.encode(t.stack,n),e.encode(t.message,n);let r=Object.keys(t).filter(e=>![`stack`,`message`,`name`].includes(e)&&t[e]!==void 0);n.writeUInt16BE(r.length);for(let i of r)e.encode(i,n),e.encode(t[i],n)},t=>{let n=t.readUInt16BE(),r=e.decode(t),i=e.decode(t),a=$t(n,e.decode(t),i);a.name=r;let o=t.readUInt16BE();for(let n=0;n<o;n++){let n=e.decode(t);a[n]=e.decode(t)}return a}),e.register(125,Date,(e,t)=>{t.writeUInt64BE(e.getTime())},e=>new Date(e.readUInt64BE().toNumber())),e.register(124,Map,(t,n)=>{n.writeUInt32BE(t.size);for(let[r,i]of t.entries())e.encode(r,n),e.encode(i,n)},t=>{let n=new Map,r=t.readUInt32BE();for(let i=0;i<r;i++){let r=e.decode(t),i=e.decode(t);n.set(r,i)}return n}),e.register(123,Set,(t,n)=>{n.writeUInt32BE(t.size);for(let r of t.values())e.encode(r,n)},t=>{let n=new Set,r=t.readUInt32BE();for(let i=0;i<r;i++){let r=e.decode(t);n.add(r)}return n}),e.register(121,RegExp,(t,n)=>{e.encode(t.source,n),e.encode(t.flags,n)},t=>{let n=e.decode(t),r=e.decode(t);return new RegExp(n,r)}),e.register(120,BigInt,(t,n)=>{let r=t.toString();e.encode(r,n)},t=>{let n=e.decode(t);return BigInt(n)}),e.register(119,k,(e,t)=>{t.writeInt8(+!!e.unsigned),e.unsigned?t.writeUInt64BE(e):t.writeInt64BE(e)},e=>e.readInt8()?e.readUInt64BE():e.readInt64BE())};tn(new qt);var nn=Object.defineProperty,rn=Object.getOwnPropertyNames,H=(e,t)=>function(){return e&&(t=(0,e[rn(e)[0]])(e=0)),t},an=(e,t)=>{for(var n in t)nn(e,n,{get:t[n],enumerable:!0})},on=H({"src/core/reference.ts"(){}}),sn=H({"src/errors/codes.ts"(){}}),cn=H({"src/errors/core.ts"(){}}),U,ln,un,dn,fn,pn,mn,W,hn=H({"src/errors/netron.ts"(){cn(),sn(),U=class e extends _{serviceId;methodName;peerId;constructor(t){super(t),this.name=`NetronError`,this.serviceId=t.serviceId,this.methodName=t.methodName,this.peerId=t.peerId,Object.setPrototypeOf(this,e.prototype)}toJSON(){return{...super.toJSON(),serviceId:this.serviceId,methodName:this.methodName,peerId:this.peerId}}},ln=class e extends U{constructor(t,n){super({code:f.NOT_FOUND,message:`Service not found: ${t}`,details:n,serviceId:t}),this.name=`ServiceNotFoundError`,Object.setPrototypeOf(this,e.prototype)}static create(t){return new e(t)}},un=class e extends U{constructor(t,n,r){super({code:f.NOT_FOUND,message:`Method not found: ${t}.${n}`,details:r,serviceId:t,methodName:n}),this.name=`MethodNotFoundError`,Object.setPrototypeOf(this,e.prototype)}static create(t,n){return new e(t,n)}},dn=class e extends U{transport;address;constructor(t){super(t),this.name=`TransportError`,this.transport=t.transport,this.address=t.address,Object.setPrototypeOf(this,e.prototype)}static connectionFailed(t,n,r){return new e({code:f.SERVICE_UNAVAILABLE,message:`Failed to connect to ${n} via ${t}`,transport:t,address:n,cause:r})}static connectionTimeout(t,n){return new e({code:f.REQUEST_TIMEOUT,message:`Connection timeout to ${n} via ${t}`,transport:t,address:n})}static connectionClosed(t,n){return new e({code:f.SERVICE_UNAVAILABLE,message:n||`Connection closed unexpectedly`,transport:t,details:{reason:n}})}toJSON(){return{...super.toJSON(),transport:this.transport,address:this.address}}},fn=class e extends U{constructor(t){super(t),this.name=`PeerError`,Object.setPrototypeOf(this,e.prototype)}static notFound(t){return new e({code:f.NOT_FOUND,message:`Peer not found: ${t}`,peerId:t})}static disconnected(t,n){return new e({code:f.SERVICE_UNAVAILABLE,message:`Peer disconnected: ${t}${n?` (${n})`:``}`,peerId:t,details:{reason:n}})}static unauthorized(t){return new e({code:f.UNAUTHORIZED,message:`Peer not authorized: ${t}`,peerId:t})}},pn=class e extends U{rpcId;constructor(t){super(t),this.name=`RpcError`,this.rpcId=t.rpcId,Object.setPrototypeOf(this,e.prototype)}static timeout(t,n,r){return new e({code:f.REQUEST_TIMEOUT,message:`RPC call ${t}.${n} timed out after ${r}ms`,serviceId:t,methodName:n,details:{timeout:r}})}static invalidRequest(t,n){return new e({code:f.BAD_REQUEST,message:`Invalid RPC request: ${t}`,details:n})}static invalidResponse(t,n,r){return new e({code:f.INTERNAL_ERROR,message:`Invalid RPC response from ${t}.${n}`,serviceId:t,methodName:n,details:r})}toJSON(){return{...super.toJSON(),rpcId:this.rpcId}}},mn=class e extends U{streamId;constructor(t){super(t),this.name=`StreamError`,this.streamId=t.streamId,Object.setPrototypeOf(this,e.prototype)}static closed(t,n){return new e({code:f.GONE,message:`Stream closed: ${t}${n?` (${n})`:``}`,streamId:t,details:{reason:n}})}static error(t,n){return new e({code:f.INTERNAL_ERROR,message:`Stream error: ${n.message}`,streamId:t,cause:n})}static backpressure(t,n){return new e({code:f.TOO_MANY_REQUESTS,message:`Stream backpressure: buffer size ${n}`,streamId:t,details:{bufferSize:n}})}toJSON(){return{...super.toJSON(),streamId:this.streamId}}},W=class e extends U{serializationType;constructor(t){super(t),this.name=`SerializationError`,this.serializationType=t.serializationType,Object.setPrototypeOf(this,e.prototype)}static encode(t,n){return new e({code:f.INTERNAL_ERROR,message:`Failed to encode value: ${typeof t}`,serializationType:`encode`,cause:n})}static decode(t,n){let r=n?.message??`Failed to decode data`;return new e({code:f.BAD_REQUEST,message:r,serializationType:`decode`,cause:n})}toJSON(){return{...super.toJSON(),serializationType:this.serializationType}}}}}),gn=H({"src/errors/serialization.ts"(){}}),G,_n=H({"src/errors/factories.ts"(){cn(),sn(),hn(),G={serviceNotFound(e){return ln.create(e)},methodNotFound(e,t){return un.create(e,t)},connectionFailed(e,t,n){return dn.connectionFailed(e,t,n)},connectionTimeout(e,t){return dn.connectionTimeout(e,t)},connectionClosed(e,t){return dn.connectionClosed(e,t)},peerNotFound(e){return fn.notFound(e)},peerDisconnected(e,t){return fn.disconnected(e,t)},peerUnauthorized(e){return fn.unauthorized(e)},rpcTimeout(e,t,n){return pn.timeout(e,t,n)},invalidRequest(e,t){return pn.invalidRequest(e,t)},invalidResponse(e,t,n){return pn.invalidResponse(e,t,n)},streamClosed(e,t){return mn.closed(e,t)},streamError(e,t){return mn.error(e,t)},streamBackpressure(e,t){return mn.backpressure(e,t)},serializeEncode(e,t){return W.encode(e,t)},serializeDecode(e,t){return W.decode(e,t)}}}}),K,vn,yn=H({"src/errors/legacy.ts"(){hn(),sn(),K=class extends U{constructor(e,t){super({code:f.SERVICE_UNAVAILABLE,message:e,details:t}),this.name=`ConnectionError`}},vn=class extends U{constructor(e,t){super({code:f.REQUEST_TIMEOUT,message:e,details:t}),this.name=`TimeoutError`}}}}),q=H({"src/errors/index.ts"(){sn(),cn(),hn(),gn(),_n(),yn(),sn(),cn(),hn(),_n()}}),bn,xn,Sn,Cn,J,wn,Tn,En=H({"src/core/readable-stream.ts"(){q(),bn=1e4,xn=16,Sn=1024,Cn=3e4,J={IDLE:`IDLE`,ACTIVE:`ACTIVE`,PAUSED:`PAUSED`,CLOSING:`CLOSING`,CLOSED:`CLOSED`,ERROR:`ERROR`},wn={RECOVERABLE:`RECOVERABLE`,FATAL:`FATAL`},Tn=class e extends ReadableStream{peer;buffer=new Map;expectedIndex=0;timeout;id;isComplete=!1;isLive;events=new Te;controller;state=J.IDLE;highWaterMark;maxBufferSize;onErrorCallback;metrics={bytesReceived:0,packetsReceived:0,backpressureEvents:0,bufferPeakSize:0,currentBufferSize:0,estimatedMemoryUsage:0,state:J.IDLE,isPaused:!1};cleanupInterval;constructor({peer:e,streamId:t,isLive:n=!1,highWaterMark:r=xn,maxBufferSize:i=bn,onError:a}){let o;super({start(e){o=e},pull(){},cancel(e){console.log(`Stream ${t} cancelled:`,e)}}),this.peer=e,this.id=t,this.isLive=n,this.highWaterMark=r,this.maxBufferSize=i,this.onErrorCallback=a,this.controller=o,this.peer.logger&&this.peer.logger.info({streamId:this.id,isLive:n,highWaterMark:r,maxBufferSize:i},`Creating readable stream`),this.peer.readableStreams.set(this.id,this),this.transitionState(J.ACTIVE),this.isLive||(this.resetTimeout(),this.startBufferCleanup()),this.events.on(`close`,this.cleanup),this.events.on(`error`,this.handleError)}transitionState(e){let t=this.state;if(!{[J.IDLE]:[J.ACTIVE,J.CLOSED,J.ERROR],[J.ACTIVE]:[J.PAUSED,J.CLOSING,J.CLOSED,J.ERROR],[J.PAUSED]:[J.ACTIVE,J.CLOSING,J.ERROR],[J.CLOSING]:[J.CLOSED,J.ERROR],[J.CLOSED]:[],[J.ERROR]:[J.CLOSED]}[t].includes(e)){let n=Error(`Invalid state transition: ${t} -> ${e} for stream ${this.id}`);this.peer.logger&&this.peer.logger.warn({streamId:this.id,oldState:t,newState:e},n.message)}this.state=e,this.metrics.state=e,this.metrics.isPaused=e===J.PAUSED,this.peer.logger&&this.peer.logger.debug({streamId:this.id,oldState:t,newState:e},`Stream state transition`),this.events.emit(`stateChange`,{oldState:t,newState:e})}startBufferCleanup(){this.cleanupInterval=setInterval(()=>{this.performBufferCleanup()},Cn)}performBufferCleanup(){if(this.state!==J.CLOSED&&this.state!==J.ERROR&&this.buffer.size>0){this.peer.logger&&this.peer.logger.debug({streamId:this.id,bufferSize:this.buffer.size},`Performing buffer cleanup`);let e=[];for(let[t]of Array.from(this.buffer.entries()))t<this.expectedIndex-100&&e.push(t);for(let t of e)this.buffer.delete(t),this.peer.logger&&this.peer.logger.warn({streamId:this.id,index:t},`Removed stale packet from buffer`);this.updateBufferMetrics()}}onPacket(e){if(this.state===J.CLOSED||this.state===J.ERROR){this.peer.logger&&this.peer.logger.warn({streamId:this.id,state:this.state},`Received packet for closed/errored stream`);return}if(this.state===J.PAUSED&&this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Received packet while paused`),this.resetTimeout(),this.metrics.packetsReceived++,e.data){let t=typeof e.data==`string`?e.data.length:e.data.byteLength??Sn;this.metrics.bytesReceived+=t}if(this.buffer.size>=this.maxBufferSize){this.peer.logger&&this.peer.logger.error({streamId:this.id,size:this.buffer.size},`Stream buffer overflow`);let e=G.streamBackpressure(String(this.id),this.buffer.size);this.handleStreamError(e,wn.FATAL);return}for(this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:e.streamIndex},`Processing packet`),(!e.isLastChunk()||e.data!==null)&&this.buffer.set(e.streamIndex,e.data),this.updateBufferMetrics(),this.checkBackpressure();this.buffer.has(this.expectedIndex);){let e=this.buffer.get(this.expectedIndex);this.buffer.delete(this.expectedIndex),this.expectedIndex++;try{this.controller?.enqueue(e)}catch{this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Stream backpressure detected`),this.buffer.set(this.expectedIndex-1,e),this.expectedIndex--,this.handleStreamError(Error(`Failed to enqueue chunk`),wn.RECOVERABLE);break}}if(this.updateBufferMetrics(),e.isLastChunk()){this.peer.logger&&this.peer.logger.info({streamId:this.id},`Received last chunk`),this.isComplete=!0,this.transitionState(J.CLOSING);try{this.controller?.close(),this.transitionState(J.CLOSED)}catch{this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Error closing stream`)}}}updateBufferMetrics(){this.metrics.currentBufferSize=this.buffer.size,this.buffer.size>this.metrics.bufferPeakSize&&(this.metrics.bufferPeakSize=this.buffer.size),this.metrics.estimatedMemoryUsage=this.buffer.size*Sn}checkBackpressure(){let e=this.buffer.size>=this.highWaterMark;e&&this.state===J.ACTIVE?this.pause():!e&&this.state===J.PAUSED&&this.resume()}pause(){this.state===J.ACTIVE&&(this.peer.logger&&this.peer.logger.warn({streamId:this.id,bufferSize:this.buffer.size},`Pausing stream due to backpressure`),this.transitionState(J.PAUSED),this.metrics.backpressureEvents++,this.events.emit(`backpressure`,{bufferSize:this.buffer.size,highWaterMark:this.highWaterMark}))}resume(){this.state===J.PAUSED&&(this.peer.logger&&this.peer.logger.info({streamId:this.id},`Resuming stream after backpressure`),this.transitionState(J.ACTIVE),this.events.emit(`resume`))}get desiredSize(){return this.highWaterMark-this.buffer.size}get isPaused(){return this.state===J.PAUSED}getState(){return this.state}getMetrics(){return{...this.metrics}}handleStreamError(e,t){if(this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e,severity:t},`Stream error occurred`),this.onErrorCallback)try{this.onErrorCallback(e,t)}catch(e){this.peer.logger&&this.peer.logger.error({streamId:this.id,callbackError:e},`Error in onError callback`)}t===wn.FATAL?this.destroy(e):this.events.emit(`error`,e)}resetTimeout(){if(this.isLive)return;this.timeout&&clearTimeout(this.timeout);let e=this.peer.options?.streamTimeout??6e4;this.peer.logger&&this.peer.logger.debug({streamId:this.id,timeoutDuration:e},`Resetting stream timeout`),this.timeout=setTimeout(()=>{let t=`Stream ${this.id} inactive for ${e}ms, closing.`;this.peer.logger&&this.peer.logger.warn(t),this.buffer.clear(),this.updateBufferMetrics(),this.destroy(G.streamClosed(String(this.id),t))},e)}closeStream(e=!1){if(this.state===J.CLOSED){this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to close already closed stream`);return}if(this.isLive&&!e){this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to close live stream`);return}this.peer.logger&&this.peer.logger.info({streamId:this.id,force:e},`Closing stream`),this.transitionState(J.CLOSING);try{this.controller?.close(),this.transitionState(J.CLOSED)}catch{this.transitionState(J.CLOSED)}this.isLive&&e&&this.destroy()}forceClose(e){if(this.state===J.CLOSED){this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to force close already closed stream`);return}this.peer.logger&&this.peer.logger.info({streamId:this.id,reason:e},`Force closing stream`),this.transitionState(J.CLOSING),this.isComplete=!0;try{this.controller?.close(),this.transitionState(J.CLOSED)}catch{this.transitionState(J.CLOSED)}setTimeout(()=>{this.events.emit(`close`),this.cleanup()},0)}cleanup=()=>{this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Cleaning up stream resources`),this.timeout&&=(clearTimeout(this.timeout),void 0),this.cleanupInterval&&=(clearInterval(this.cleanupInterval),void 0),this.peer.readableStreams.delete(this.id),this.buffer.clear(),this.updateBufferMetrics()};handleError=e=>{this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Stream error occurred`),this.transitionState(J.ERROR),this.cleanup()};destroy(e){if(this.state===J.CLOSED){this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to destroy already closed stream`);return}if(this.peer.logger&&this.peer.logger.info({streamId:this.id,error:e},`Destroying stream`),e){this.transitionState(J.ERROR);try{this.controller?.error(e)}catch{}this.events.emit(`error`,e)}else{this.transitionState(J.CLOSING);try{this.controller?.close()}catch{}}this.transitionState(J.CLOSED),this.cleanup()}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}static create(t,n,r=!1){return new e({peer:t,streamId:n,isLive:r})}}}}),Dn=H({"src/packet/uid.ts"(){}}),On=H({"src/packet/packet.ts"(){}}),kn=H({"src/packet/types.ts"(){}}),An,Y,jn,Mn=H({"src/core/writable-stream.ts"(){Dn(),On(),kn(),q(),An=new r,Y={IDLE:`IDLE`,ACTIVE:`ACTIVE`,DRAINING:`DRAINING`,CLOSING:`CLOSING`,CLOSED:`CLOSED`,ERROR:`ERROR`},jn=class e extends WritableStream{id;peer;index=0;isLive;state=Y.IDLE;events=new Te;writeBuffer=[];highWaterMark;retryConfig;errorHandler;metrics={bytesSent:0,packetsSent:0,retryCount:0,failedWrites:0,bufferSize:0,state:Y.IDLE};isProcessing=!1;constructor({peer:e,streamId:t,isLive:n=!1,highWaterMark:r=16,retry:i,onError:a}){super({start:e=>{},write:async e=>this._write(e),close:async()=>this._final(),abort:e=>{this._abort(e)}}),this.peer=e,this.isLive=n,this.id=t??An.next(),this.highWaterMark=r,this.errorHandler=a,this.retryConfig={maxAttempts:i?.maxAttempts??3,initialDelay:i?.initialDelay??100,maxDelay:i?.maxDelay??5e3,backoffFactor:i?.backoffFactor??2},this.peer.logger&&this.peer.logger.info({streamId:this.id,isLive:n,highWaterMark:this.highWaterMark,retryConfig:this.retryConfig},`Creating writable stream`),this.peer.writableStreams.set(this.id,this),this.events.once(`close`,this.cleanup)}async pipeFrom(e){this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Starting pipe operation`);let t=this.getWriter();try{if(Symbol.asyncIterator in e)for await(let n of e)await t.write(n);else{let n=e.getReader();try{for(;;){let{done:e,value:r}=await n.read();if(e)break;await t.write(r)}}finally{n.releaseLock()}}await t.close(),this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Pipe operation completed`)}catch(e){throw this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Pipe operation failed`),await t.abort(e),e}finally{t.releaseLock()}}async _write(e){if(this.state===Y.CLOSED||this.state===Y.CLOSING){let e=G.streamClosed(String(this.id),`Attempt to write to closed stream`);throw this.peer.logger&&this.peer.logger.warn({streamId:this.id,state:this.state},`Attempt to write to closed stream`),e}if(this.state===Y.ERROR)throw G.streamError(String(this.id),Error(`Stream is in error state`));this.transitionState(Y.ACTIVE);let t=await this.enqueueWrite(e,this.index++);return this.isProcessing||this.processWriteBuffer().catch(e=>{this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Error processing write buffer`)}),t}enqueueWrite(e,t){return new Promise((n,r)=>{let i={chunk:e,index:t,resolve:n,reject:r,retryCount:0,timestamp:Date.now()};this.writeBuffer.push(i),this.metrics.bufferSize=this.writeBuffer.length,this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:t,bufferSize:this.writeBuffer.length},`Enqueued write to buffer`)})}async processWriteBuffer(){if(!this.isProcessing){this.isProcessing=!0;try{for(;this.writeBuffer.length>0;){let e=this.writeBuffer[0];if(!e){this.writeBuffer.shift();continue}try{await this.sendChunkWithRetry(e),this.writeBuffer.shift(),this.metrics.bufferSize=this.writeBuffer.length,e.resolve(),this.metrics.packetsSent++;let t=this.estimateChunkSize(e.chunk);this.metrics.bytesSent+=t,this.writeBuffer.length===this.highWaterMark-1&&(this.transitionState(Y.DRAINING),this.events.emit(`drain`),this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Buffer draining below high water mark`))}catch(t){this.writeBuffer.shift(),this.metrics.bufferSize=this.writeBuffer.length,this.metrics.failedWrites++,this.transitionState(Y.ERROR),this.errorHandler&&this.errorHandler(t);try{await this.peer.sendPacket(he(v.nextId(),1,6,{streamId:this.id,message:t.message}))}catch(e){this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Failed to send stream error packet`)}e.reject(t);break}}this.writeBuffer.length===0&&this.state!==Y.ERROR&&this.transitionState(Y.IDLE)}finally{this.isProcessing=!1}}}async sendChunkWithRetry(e){let t,n=this.retryConfig.initialDelay;for(let r=0;r<=this.retryConfig.maxAttempts;r++)try{this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:e.index,attempt:r,retryCount:e.retryCount},`Sending chunk`),await this.peer.sendStreamChunk(this.id,e.chunk,e.index,!1,this.isLive);return}catch(i){t=i instanceof Error?i:Error(String(i));let a=this.isErrorRetryable(i);if(!a||r>=this.retryConfig.maxAttempts)throw this.peer.logger&&this.peer.logger.error({streamId:this.id,index:e.index,attempt:r,isRetryable:a},`Write failed, not retrying`),t;e.retryCount++,this.metrics.retryCount++,this.peer.logger&&this.peer.logger.warn({streamId:this.id,index:e.index,attempt:r,delay:n,error:i.message},`Write failed, retrying`),this.events.emit(`retry`,{index:e.index,attempt:r,error:t,delay:n}),await this.delay(n),n=Math.min(n*this.retryConfig.backoffFactor,this.retryConfig.maxDelay)}throw t}isErrorRetryable(e){if(e.code!==void 0){if(typeof e.code==`number`)return te(e.code);if(e.code===`ECONNREFUSED`||e.code===`ECONNRESET`||e.code===`ETIMEDOUT`||e.code===`ENOTFOUND`||e.code===`ENETUNREACH`)return!0}return!(e instanceof TypeError||e instanceof ReferenceError)}estimateChunkSize(e){if(e==null)return 0;if(typeof e==`string`)return e.length*2;if(e instanceof ArrayBuffer||ArrayBuffer.isView(e))return e.byteLength;try{return JSON.stringify(e).length*2}catch{return 0}}delay(e){return new Promise(t=>setTimeout(t,e))}async _final(){if(this.state===Y.CLOSED)throw this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to finalize closed stream`),G.streamClosed(String(this.id),`Attempt to finalize closed stream`);this.transitionState(Y.CLOSING),this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:this.index},`Finalizing stream`);try{await this.flush(),this.peer.logger&&this.peer.logger.debug({streamId:this.id,index:this.index},`Sending final chunk`),await this.peer.sendStreamChunk(this.id,null,this.index,!0,this.isLive)}catch(e){throw this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Error sending final chunk`),e}finally{this.closeStream()}}_abort(e){this.peer.logger&&this.peer.logger.info({streamId:this.id,reason:e},`Aborting stream`);let t=e instanceof Error?e:Error(String(e));this.destroy(t)}closeStream(){if(this.state===Y.CLOSED){this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to close already closed stream`);return}this.peer.logger&&this.peer.logger.info({streamId:this.id,state:this.state},`Closing stream`),this.transitionState(Y.CLOSED),this.clearPendingWrites(),this.cleanup()}destroy(e){if(this.state===Y.CLOSED){this.peer.logger&&this.peer.logger.warn({streamId:this.id},`Attempt to destroy already closed stream`);return}this.peer.logger&&this.peer.logger.info({streamId:this.id,error:e,state:this.state},`Destroying stream`),e?this.transitionState(Y.ERROR):this.transitionState(Y.CLOSED),this.clearPendingWrites(e),this.cleanup(),e&&(this.events.emit(`error`,e),this.errorHandler&&this.errorHandler(e));let t=e?e.message:`Stream destroyed`;this.peer.sendPacket(he(v.nextId(),1,7,{streamId:this.id,reason:t})).catch(e=>{this.peer.logger&&this.peer.logger.error({streamId:this.id,error:e},`Failed to send stream close packet`)})}cleanup=()=>{this.peer.logger&&this.peer.logger.debug({streamId:this.id},`Cleaning up stream resources`),this.peer.writableStreams.delete(this.id)};transitionState(e){let t=this.state;t!==e&&(this.state=e,this.metrics.state=e,this.peer.logger&&this.peer.logger.debug({streamId:this.id,oldState:t,newState:e},`Stream state transition`),this.events.emit(`state-change`,{oldState:t,newState:e}))}clearPendingWrites(e){let t=this.writeBuffer.length;if(t>0){let n=e||Error(`Stream closed with pending writes`);this.peer.logger&&this.peer.logger.warn({streamId:this.id,pendingCount:t},`Clearing pending writes`);for(let e of this.writeBuffer)e.reject(n);this.writeBuffer=[],this.metrics.bufferSize=0}}async flush(){this.writeBuffer.length!==0&&(this.peer.logger&&this.peer.logger.debug({streamId:this.id,pendingWrites:this.writeBuffer.length},`Flushing pending writes`),await new Promise((e,t)=>{let n=()=>{this.writeBuffer.length===0?e():this.state===Y.ERROR?t(Error(`Stream in error state during flush`)):setTimeout(n,10)};n()}))}getMetrics(){return{...this.metrics}}getState(){return this.state}isWritable(){return this.state!==Y.CLOSED&&this.state!==Y.CLOSING&&this.state!==Y.ERROR}isBufferFull(){return this.writeBuffer.length>=this.highWaterMark}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}static create(t,n,r=!1,i){let a=new e({peer:t,streamId:i,isLive:r});return n&&a.pipeFrom(n).catch(()=>void 0),a}}}}),Nn,Pn=H({"src/core/stream-reference.ts"(){En(),Mn(),Nn=class e{constructor(e,t,n,r){this.streamId=e,this.type=t,this.isLive=n,this.peerId=r}streamId;type;isLive;peerId;static from(t){let n=t instanceof Tn?`readable`:`writable`;return new e(t.id,n,t.isLive,t.peer.id)}static to(e,t){if(e.type===`readable`){let n=t.writableStreams.get(e.streamId);return n||=new jn({peer:t,streamId:e.streamId,isLive:e.isLive}),n}{let n=t.readableStreams.get(e.streamId);return n||=new Tn({peer:t,streamId:e.streamId,isLive:e.isLive}),n}}}}}),Fn=H({"src/utils/lru-cache.ts"(){}}),In=H({"src/core/definition.ts"(){}}),Ln=H({"src/utils/validation.ts"(){}});function Rn(){return vt()}function zn(e,t,n,r){return{id:Rn(),service:e,method:t,input:n,context:r?.context,hints:r?.hints}}function Bn(e){return e.endsWith(`/`)?e.slice(0,-1):e}function Vn(e){return e.replace(/^http/,`ws`)}function Hn(e,t=1e3,n=3e4){let r=Math.max(1,t),i=Math.max(r,n),a=Math.min(r*2**Math.max(0,e-1),i),o=Math.max(0,a-r),s=r+Math.random()*o;return Math.floor(s)}var Un=H({"src/utils/index.ts"(){Fn(),Ln()}}),X,Wn=H({"src/middleware/types.ts"(){X={PRE_REQUEST:`pre-request`,POST_RESPONSE:`post-response`,ERROR:`error`}}}),Gn,Kn=H({"src/middleware/pipeline.ts"(){Wn(),Gn=class{globalMiddleware=new Map;serviceMiddleware=new Map;methodMiddleware=new Map;metrics={executions:0,avgTime:0,errors:0,skips:0,byMiddleware:new Map};constructor(){for(let e of Object.values(X))this.globalMiddleware.set(e,[])}use(e,t,n=X.PRE_REQUEST){let r={middleware:e,config:{name:t?.name||`anonymous`,priority:t?.priority??100,...t},stage:n},i=this.globalMiddleware.get(n)||[];i.push(r),i.sort((e,t)=>(e.config.priority??0)-(t.config.priority??0)),this.globalMiddleware.set(n,i)}useForService(e,t,n,r=X.PRE_REQUEST){this.serviceMiddleware.has(e)||this.serviceMiddleware.set(e,new Map);let i=this.serviceMiddleware.get(e);i.has(r)||i.set(r,[]);let a={middleware:t,config:{name:n?.name||`${e}-middleware`,priority:n?.priority??100,...n},stage:r},o=i.get(r);o.push(a),o.sort((e,t)=>(e.config.priority??0)-(t.config.priority??0))}useForMethod(e,t,n,r,i=X.PRE_REQUEST){let a=`${e}.${t}`;this.methodMiddleware.has(a)||this.methodMiddleware.set(a,new Map);let o=this.methodMiddleware.get(a);o.has(i)||o.set(i,[]);let s={middleware:n,config:{name:r?.name||`${a}-middleware`,priority:r?.priority??100,...r},stage:i},c=o.get(i);c.push(s),c.sort((e,t)=>(e.config.priority??0)-(t.config.priority??0))}getMiddleware(e,t,n){let r=n?[n]:Object.values(X),i=[];for(let n of r){let r=this.globalMiddleware.get(n)||[];if(i.push(...r),e){let t=this.serviceMiddleware.get(e);if(t){let e=t.get(n)||[];i.push(...e)}}if(e&&t){let r=`${e}.${t}`,a=this.methodMiddleware.get(r);if(a){let e=a.get(n)||[];i.push(...e)}}}return i.sort((e,t)=>(e.config.priority??0)-(t.config.priority??0)),i}async execute(e,t){let n=performance.now();this.metrics.executions++;let r=this.getMiddleware(e.service,e.method,t).filter(t=>{if(t.config.condition&&!t.config.condition(e))return this.metrics.skips++,!1;if(t.config.services){if(Array.isArray(t.config.services)){if(!t.config.services.includes(e.service))return!1}else if(t.config.services instanceof RegExp&&!t.config.services.test(e.service))return!1}if(t.config.methods){if(Array.isArray(t.config.methods)){if(!t.config.methods.includes(e.method))return!1}else if(t.config.methods instanceof RegExp&&!t.config.methods.test(e.method))return!1}return!0}),i=0,a=async()=>{if(e.skipRemaining||i>=r.length)return;let t=r[i++];if(!t)return;let n=performance.now(),o=this.metrics.byMiddleware.get(t.config.name)||{executions:0,avgTime:0,errors:0};try{await t.middleware(e,a),o.executions++;let r=performance.now()-n;o.avgTime=(o.avgTime*(o.executions-1)+r)/o.executions,e.timing.middlewareTimes.set(t.config.name,r)}catch(n){throw o.errors++,this.metrics.errors++,t.config.onError&&t.config.onError(n,e),n}finally{this.metrics.byMiddleware.set(t.config.name,o)}};try{await a()}finally{let e=performance.now()-n;this.metrics.avgTime=(this.metrics.avgTime*(this.metrics.executions-1)+e)/this.metrics.executions}}clear(){this.globalMiddleware.clear(),this.serviceMiddleware.clear(),this.methodMiddleware.clear();for(let e of Object.values(X))this.globalMiddleware.set(e,[]);this.metrics={executions:0,avgTime:0,errors:0,skips:0,byMiddleware:new Map}}getMetrics(){return{...this.metrics}}}}}),qn=H({"src/auth/client-token-transports/bearer.ts"(){}}),Jn=H({"src/middleware/built-in/auth.ts"(){qn()}}),Yn=H({"src/middleware/built-in/auth-error-handler.ts"(){}}),Xn=H({"src/middleware/built-in/logging.ts"(){}}),Zn=H({"src/middleware/built-in/timing.ts"(){}}),Qn=H({"src/middleware/built-in/error-transform.ts"(){}}),$n=H({"src/middleware/built-in/csrf.ts"(){}}),er=H({"src/middleware/built-in/index.ts"(){Jn(),Yn(),Xn(),Zn(),Qn(),$n()}}),tr=H({"src/middleware/index.ts"(){Wn(),Kn(),er()}}),nr={};an(nr,{HttpClient:()=>ir});function rr(e){let t=Error(e.error?.message||`Method invocation failed`);return t.code=e.error?.code,e.error?.details!==void 0&&(t.details=e.error.details),e.httpStatus!==void 0&&(t.status=e.httpStatus),t}var ir,ar=H({"src/client/http-client.ts"(){Un(),tr(),ir=class{baseUrl;timeout;headers;retry;maxRetries;auth;state=`disconnected`;middleware;metrics={requestsSent:0,responsesReceived:0,errors:0,latencies:[]};constructor(e){this.baseUrl=Bn(e.url),this.timeout=e.timeout??3e4,this.headers=e.headers??{},this.retry=e.retry??!1,this.maxRetries=e.maxRetries??3,this.auth=e.auth,this.middleware=e.middleware||new Gn}async connect(){this.state=`connecting`,this.state=`connected`}async invoke(e,t,n,r){let i={service:e,method:t,args:n,request:{headers:{...this.headers},timeout:r?.hints?.timeout||this.timeout,metadata:r?.context},timing:{start:performance.now(),middlewareTimes:new Map},metadata:new Map,transport:`http`},a=r?.skipAuth??!1;if(await this.middleware.execute(i,X.PRE_REQUEST),i.skipRemaining)return i.response?.data;for(let o=0;;o++)try{let o=zn(e,t,n,{context:i.request?.metadata,hints:{...r?.hints,timeout:i.request?.timeout}}),s=i.request?.credentials??this.auth?.getRequestCredentials(),c=await this.sendRequest(o,0,i.request?.headers,a,s);if(!c.success)throw rr(c);return i.response={data:c.data,headers:{},metadata:{}},await this.middleware.execute(i,X.POST_RESPONSE),i.response.data}catch(e){i.error=e,i.metadata.delete(`auth:retry`);try{await this.middleware.execute(i,X.ERROR)}catch{}if(o<1&&i.metadata.get(`auth:retry`)){i.metadata.delete(`auth:retry`),i.error=void 0;continue}throw e}}async sendRequest(e,t=0,n,r=!1,i){let a=`${this.baseUrl}/netron/invoke`,o=e.hints?.timeout||this.timeout,s=Date.now(),c=new AbortController,l=setTimeout(()=>c.abort(),o);try{this.metrics.requestsSent++;let t={"Content-Type":`application/json`,Accept:`application/json`,...this.headers,...n};this.auth&&!r&&!n?.Authorization&&Object.assign(t,this.auth.getAuthHeaders());let o=await fetch(a,{method:`POST`,headers:t,body:JSON.stringify(e),signal:c.signal,...i===void 0?{}:{credentials:i}});clearTimeout(l);let u=Date.now()-s;if(this.metrics.latencies.push(u),this.metrics.responsesReceived++,!o.ok)try{return{...await o.json(),httpStatus:o.status}}catch{return this.metrics.errors++,{id:e.id,success:!1,error:{code:`HTTP_ERROR`,message:`HTTP ${o.status}: ${o.statusText}`},httpStatus:o.status}}return await o.json()}catch(a){if(clearTimeout(l),this.metrics.errors++,this.retry&&t<this.maxRetries){let a=2**t*1e3;return await new Promise(e=>setTimeout(e,a)),this.sendRequest(e,t+1,n,r,i)}return a.name===`AbortError`?{id:e.id,success:!1,error:{code:`TIMEOUT`,message:`Request timeout after ${o}ms`}}:{id:e.id,success:!1,error:{code:`NETWORK_ERROR`,message:a.message}}}}async disconnect(){this.state=`disconnected`}getState(){return this.state}getMetrics(){let e=this.metrics.latencies.length>0?this.metrics.latencies.reduce((e,t)=>e+t,0)/this.metrics.latencies.length:void 0;return{id:`http-client`,url:this.baseUrl,state:this.state,transport:`http`,requestsSent:this.metrics.requestsSent,responsesReceived:this.metrics.responsesReceived,errors:this.metrics.errors,avgLatency:e}}getMiddleware(){return this.middleware}use(e,t,n){return this.middleware.use(e,t,n),this}}}});function or(e){let t={},n=!1;for(let r of Object.keys(e)){if(cr.has(r))continue;let i=e[r];i!==void 0&&typeof i!=`function`&&(t[r]=i,n=!0)}return n?t:null}var Z,sr,cr,lr=H({"src/packet/serializer.ts"(){on(),In(),Pn(),cn(),Z=new qt,sr=!1,cr=new Set([`name`,`code`,`category`,`httpStatus`,`message`,`details`,`context`,`timestamp`,`requestId`,`correlationId`,`spanId`,`traceId`,`stack`,`cause`,`stats`]),Z.register(110,_,(e,t)=>{if(t.write(Z.encode(e.name)),t.write(Z.encode(e.code)),t.write(Z.encode(e.message)),t.write(Z.encode(e.details)),t.write(Z.encode(e.context)),t.write(Z.encode(e.timestamp)),t.write(Z.encode(e.requestId)),t.write(Z.encode(e.correlationId)),t.write(Z.encode(e.spanId)),t.write(Z.encode(e.traceId)),t.write(Z.encode(sr&&e.stack||null)),e.cause){let n=e.cause;n instanceof _?t.write(Z.encode(n)):n instanceof Error?t.write(Z.encode({__errorType:`Error`,name:n.name,message:n.message,stack:sr?n.stack:void 0})):t.write(Z.encode(null))}else t.write(Z.encode(null));t.write(Z.encode(or(e)))},e=>{let t=Z.decode(e),n=Z.decode(e),r=Z.decode(e),i=Z.decode(e),a=Z.decode(e),o=Z.decode(e),s=Z.decode(e),c=Z.decode(e),l=Z.decode(e),u=Z.decode(e),d=Z.decode(e),f=Z.decode(e),p=Z.decode(e),m;if(f){if(f instanceof _)m=f;else if(f.__errorType===`Error`){let e=Error(f.message);e.name=f.name,e.stack=f.stack,m=e}}let h=new _({code:n,message:r,details:i,context:a,requestId:s,correlationId:c,spanId:l,traceId:u,cause:m});return h.name=t,d&&(h.stack=d),h.timestamp=o,p&&typeof p==`object`&&Object.assign(h,p),h}),tn(Z),Z.register(109,u,(e,t)=>{t.write(Z.encode(e.id)),t.write(Z.encode(e.parentId)),t.write(Z.encode(e.peerId)),t.write(Z.encode(e.meta))},e=>{let t=Z.decode(e),n=Z.decode(e),r=new u(t,Z.decode(e),Z.decode(e));return r.parentId=n,r}).register(108,d,(e,t)=>{t.write(Z.encode(e.defId))},e=>new d(Z.decode(e))).register(107,Nn,(e,t)=>{Z.encode(e.streamId.toString(),t),t.writeUInt8(+(e.type===`writable`)),t.writeUInt8(+!!e.isLive),Z.encode(e.peerId,t)},e=>{let t=Number(Z.decode(e)),n=e.readUInt8()===1?`writable`:`readable`,r=e.readUInt8()===1,i=Z.decode(e);return new Nn(t,n,r,i)})}}),ur,dr,fr,pr,mr,hr=H({"src/packet/index.ts"(){On(),lr(),kn(),q(),kn(),On(),lr(),ur=e=>{let t=e.isStreamChunk()?8:0,n=e.getType(),r;switch(n){case 0:r=32;break;case 3:r=512;break;case 5:r=256;break;case 6:case 7:r=128;break;default:r=256}return 5+t+r},dr=e=>{let t=new Gt(ur(e));return t.writeUInt32BE(e.id),t.writeUInt8(e.flags),Z.encode(e.data,t),e.isStreamChunk()&&(t.writeUInt32BE(e.streamId),t.writeUInt32BE(e.streamIndex)),t.toBuffer()},fr=16777216,pr=5,mr=(e,t=fr)=>{let n=e instanceof Uint8Array?B.Buffer.from(e):e;if(n.byteLength>t)throw W.decode(e,Error(`Packet exceeds maximum allowed size: ${n.byteLength} > ${t}`));if(n.byteLength<pr)throw W.decode(e,Error(`Packet too small: ${n.byteLength} bytes, minimum ${pr} bytes required`));let r=Gt.wrap(n),i=new v(r.readUInt32BE());i.flags=r.readUInt8();let a=i.getType();if(a<0||a>7)throw W.decode(e,Error(`Invalid packet type: 0x${a.toString(16)}. Expected 0x00-0x07`));try{i.data=Z.decode(r)}catch(t){throw W.decode(e,t instanceof Error?t:void 0)}if(i.isStreamChunk()){let t=r.length;if(t<8)throw W.decode(e,Error(`Incomplete stream metadata: ${t} bytes remaining, 8 bytes required`));i.streamId=r.readUInt32BE(),i.streamIndex=r.readUInt32BE()}return i}}}),gr={};an(gr,{WebSocketClient:()=>xr});function _r(e){if(!e)return!1;let t=e.code,n=e.message??String(e);return typeof t==`string`&&(t===`NOT_FOUND`||t===`DEFINITION_NOT_FOUND`)?!0:typeof n==`string`&&n.length>0?/Definition.*not\s*found/i.test(n)||/Service.*not\s*found/i.test(n):!1}var vr,yr,br,xr,Sr=H({"src/client/ws-client.ts"(){Un(),q(),tr(),hr(),vr=5e3,yr=1012,br=[1e3,3e3],xr=class extends Te{ws=null;wsUrl;protocols;timeout;reconnectEnabled;reconnectInterval;maxReconnectAttempts;reconnectAttempts=0;reconnectTimeout;restartAnnounced=!1;isManualDisconnect=!1;auth;authTransport;middleware;serviceDefinitions;enableServiceDiscovery;discoveredDefinitions=new Map;pendingDiscoveries=new Map;state=`disconnected`;pendingRequests=new Map;connectedAt;disconnectedAt;taskHandlers=new Map;handshakeComplete=!1;connectSettle;connecting;serverId=null;clientId;metrics={requestsSent:0,responsesReceived:0,errors:0,latencies:[]};constructor(e){super(),this.wsUrl=e.url.startsWith(`http`)?Vn(e.url):e.url,this.protocols=e.protocols,this.timeout=e.timeout??3e4,this.reconnectEnabled=e.reconnect??!0,this.reconnectInterval=e.reconnectInterval??1e3,this.maxReconnectAttempts=e.maxReconnectAttempts??1/0,this.auth=e.auth,this.authTransport=e.authTransport,this.middleware=e.middleware||new Gn,this.serviceDefinitions=e.serviceDefinitions,this.enableServiceDiscovery=e.enableServiceDiscovery===!0,this.clientId=crypto.randomUUID?.()||`browser-${Date.now()}-${Math.random().toString(36).slice(2)}`}async connect(){if(this.ws&&(this.ws.readyState===0||this.ws.readyState===1)){this.connecting&&await this.connecting;return}this.reconnectTimeout&&=(clearTimeout(this.reconnectTimeout),void 0),this.connecting=new Promise((e,t)=>{try{this.isManualDisconnect=!1,this.handshakeComplete=!1,this.serverId=null,this.discoveredDefinitions.clear(),this.pendingDiscoveries.clear(),this.state=`connecting`,this.clientId=crypto.randomUUID?.()||`browser-${Date.now()}-${Math.random().toString(36).slice(2)}`;let n=typeof WebSocket<`u`?WebSocket:typeof globalThis<`u`&&globalThis.WebSocket?globalThis.WebSocket:null;if(!n)throw Error(`WebSocket is not available in this environment`);let r=this.wsUrl;if(this.authTransport){let e=this.auth?.getToken?.()??null;r=this.authTransport.prepareWebSocketUrl(this.wsUrl,e)}this.ws=new n(r,this.protocols),this.ws.binaryType=`arraybuffer`;let i=this.ws,a=!1,o=n=>{a||(a=!0,clearTimeout(s),this.connectSettle=void 0,n?t(n):e())},s=setTimeout(()=>{o(new K(`Netron handshake did not complete within ${this.timeout}ms`))},this.timeout);this.connectSettle=o,i.addEventListener(`open`,()=>{this.state=`connected`,this.connectedAt=Date.now(),this.emit(`connect`)}),i.addEventListener(`message`,e=>{this.handleMessage(e.data)}),i.addEventListener(`error`,e=>{let t=new K(`WebSocket error`);this.state=`failed`,this.emit(`error`,t),o(t)}),i.addEventListener(`close`,e=>{this.disconnectedAt=Date.now(),o(new K(`Connection closed before the Netron handshake completed`));for(let e of this.pendingRequests.values())e.reject(new K(`Connection closed`)),clearTimeout(e.timeout);this.pendingRequests.clear(),this.restartAnnounced=e.code===yr,this.connectedAt!==void 0&&Date.now()-this.connectedAt>=vr&&(this.reconnectAttempts=0),this.reconnectEnabled&&!this.isManualDisconnect?(this.state=`reconnecting`,this.emit(`disconnect`,e.reason),this.attemptReconnect()):(this.state=`disconnected`,this.emit(`disconnect`,e.reason))})}catch(e){this.state=`failed`,t(e instanceof Error?e:new K(String(e)))}});try{await this.connecting}finally{this.connecting=void 0}}handleMessage(e){try{if(!this.handshakeComplete){let t=null;if(typeof e==`string`?t=e:e instanceof ArrayBuffer&&e.byteLength<512&&(t=new TextDecoder().decode(e)),t)try{let e=JSON.parse(t);if(e.type===`id`){this.serverId=e.id,this.ws?.send(JSON.stringify({type:`client-id`,id:this.clientId})),this.handshakeComplete=!0,this.connectSettle?.();return}}catch{}}let t=mr(e instanceof ArrayBuffer?e:new TextEncoder().encode(e));this.emit(`packet`,t);let n=t.getImpulse()===1,r=t.getImpulse()===0,i=t.getError()===1;if(r||i&&!n){let e=this.pendingRequests.get(String(t.id));e&&(clearTimeout(e.timeout),this.pendingRequests.delete(String(t.id)),this.metrics.responsesReceived++,i?(this.metrics.errors++,e.reject(t.data)):e.resolve(t.data));return}if(n){let e=t.getType();(e===4||e===3)&&this.handleIncomingTask(t)}}catch(e){this.emit(`error`,e)}}async handleIncomingTask(e){let[t,...n]=Array.isArray(e.data)?e.data:[e.data],r=this.taskHandlers.get(t);if(r)try{let t=await r(...n);this.sendResponse(e.id,t??null,!1)}catch(t){this.sendResponse(e.id,{message:t?.message??`Task handler error`},!0)}else this.emit(`task`,t,...n),this.sendResponse(e.id,null,!1)}sendResponse(e,t,n){try{let r=new v(e);r.setImpulse(0),r.setType(3),n&&r.setError(1),r.data=t,this.sendPacket(r)}catch{}}async invoke(e,t,n,r){if(!this.isConnected())throw new K(`WebSocket is not connected`);let i={service:e,method:t,args:n,request:{headers:{},timeout:r?.hints?.timeout||this.timeout,metadata:r?.context},timing:{start:performance.now(),middlewareTimes:new Map},metadata:new Map,transport:`websocket`};try{if(await this.middleware.execute(i,X.PRE_REQUEST),i.skipRemaining)return i.response?.data;let r=v.nextId(),a=i.request?.timeout||this.timeout,o={...i.request?.metadata};i.request?.headers&&(o.headers={...o.headers,...i.request.headers}),this.auth&&this.auth.isAuthenticated()&&!i.request?.headers?.Authorization&&(o.headers={...o.headers,...this.auth.getAuthHeaders()});let s=await this.resolveDefinitionId(e),c=async e=>{let i=new v(r);return i.setType(3),i.setImpulse(1),i.data=[e,t,...n],this.sendPacket(i),this.metrics.requestsSent++,new Promise((e,t)=>{let n=setTimeout(()=>{this.pendingRequests.delete(String(r)),this.metrics.errors++,t(new vn(`Request timeout after ${a}ms`))},a);this.pendingRequests.set(String(r),{resolve:e,reject:t,timeout:n})})},l;try{l=await c(s)}catch(r){if(!(this.enableServiceDiscovery&&this.discoveredDefinitions.get(e)===s&&_r(r)&&!this.serviceDefinitions?.has(e)))throw r;this.discoveredDefinitions.delete(e),s=await this.resolveDefinitionId(e);let i=v.nextId(),o=new v(i);o.setType(3),o.setImpulse(1),o.data=[s,t,...n],l=await new Promise((e,t)=>{let n=setTimeout(()=>{this.pendingRequests.delete(String(i)),this.metrics.errors++,t(new vn(`Request timeout after ${a}ms`))},a);this.pendingRequests.set(String(i),{resolve:e,reject:t,timeout:n}),this.sendPacket(o),this.metrics.requestsSent++})}return i.response={data:l,headers:{},metadata:{}},await this.middleware.execute(i,X.POST_RESPONSE),i.response.data}catch(e){i.error=e;try{await this.middleware.execute(i,X.ERROR)}catch{}throw e}}sendPacket(e){if(!this.ws||this.ws.readyState!==1)throw new K(`WebSocket is not connected`);let t=dr(e);this.ws.send(t)}async runTask(e,...t){if(!this.isConnected())throw new K(`WebSocket is not connected`);let n=v.nextId(),r=new v(n);return r.setType(4),r.setImpulse(1),r.data=[e,...t],new Promise((t,i)=>{let a=setTimeout(()=>{this.pendingRequests.delete(String(n)),i(new vn(`runTask('${e}') timed out after ${this.timeout}ms`))},this.timeout);this.pendingRequests.set(String(n),{resolve:t,reject:i,timeout:a});try{this.sendPacket(r),this.metrics.requestsSent++}catch(e){clearTimeout(a),this.pendingRequests.delete(String(n)),i(e)}})}resolveDefinitionId(e){let t=this.serviceDefinitions?.get(e);if(t)return Promise.resolve(t);let n=this.discoveredDefinitions.get(e);if(n)return Promise.resolve(n);if(!this.enableServiceDiscovery)return Promise.resolve(e);let r=this.pendingDiscoveries.get(e);if(r)return r;let i=(async()=>{let t=await this.runTask(`query_interface`,e)??null;if(!t||typeof t.id!=`string`)throw new K(`query_interface('${e}') returned an unexpected payload \u2014 server did not yield a definition id.`);return this.discoveredDefinitions.set(e,t.id),t.id})().finally(()=>{this.pendingDiscoveries.delete(e)});return this.pendingDiscoveries.set(e,i),i}async discoverServices(e){let t=new Map;return await Promise.all(e.map(async e=>{if(this.serviceDefinitions?.has(e)){t.set(e,this.serviceDefinitions.get(e));return}let n=this.discoveredDefinitions.get(e);if(n){t.set(e,n);return}let r=await this.runTask(`query_interface`,e)??null;if(!r||typeof r.id!=`string`)throw new K(`query_interface('${e}') returned an unexpected payload \u2014 server did not yield a definition id.`);this.discoveredDefinitions.set(e,r.id),t.set(e,r.id)})),t}clearDiscoveryCache(){this.discoveredDefinitions.clear(),this.pendingDiscoveries.clear()}onTask(e,t){return this.taskHandlers.set(e,t),this}offTask(e){return this.taskHandlers.delete(e),this}async disconnect(){this.isManualDisconnect=!0,this.reconnectTimeout&&=(clearTimeout(this.reconnectTimeout),void 0),this.ws&&=((this.ws.readyState===1||this.ws.readyState===0)&&this.ws.close(1e3,`Manual disconnect`),null),this.state=`disconnected`,this.disconnectedAt=Date.now()}isConnected(){return this.ws!==null&&this.ws.readyState===1}getState(){return this.state}attemptReconnect(){if(this.reconnectAttempts>=this.maxReconnectAttempts){this.state=`failed`,this.emit(`reconnect-failed`);return}this.state=`reconnecting`,this.reconnectAttempts++;let e=this.restartAnnounced,[t,n]=br,r=e?t+Math.floor(Math.random()*(n-t)):Hn(this.reconnectAttempts,this.reconnectInterval);this.emit(`reconnecting`,{attempt:this.reconnectAttempts,delay:r,maxAttempts:this.maxReconnectAttempts,announced:e}),this.reconnectTimeout=setTimeout(async()=>{try{await this.connect(),this.emit(`reconnect`,{attempt:this.reconnectAttempts})}catch{}},r)}getReconnectAttempts(){return this.state===`connected`?0:this.reconnectAttempts}setUrl(e){this.wsUrl=e.startsWith(`http`)?Vn(e):e}getMetrics(){let e=this.metrics.latencies.length>0?this.metrics.latencies.reduce((e,t)=>e+t,0)/this.metrics.latencies.length:void 0;return{id:`ws-client`,url:this.wsUrl,state:this.state,transport:`websocket`,connectedAt:this.connectedAt,disconnectedAt:this.disconnectedAt,requestsSent:this.metrics.requestsSent,responsesReceived:this.metrics.responsesReceived,errors:this.metrics.errors,avgLatency:e}}getMiddleware(){return this.middleware}use(e,t,n){return this.middleware.use(e,t,n),this}}}});on(),Pn(),En(),Mn(),q(),Fn(),In(),on(),Pn(),q(),on(),In(),Pn(),ar(),Sr();var Cr={DISCONNECTED:`disconnected`,CONNECTING:`connecting`,CONNECTED:`connected`,RECONNECTING:`reconnecting`,FAILED:`failed`},wr=[`connect`,`disconnect`,`reconnect`,`reconnecting`,`reconnect-failed`],Tr=class{name;config;baseUrl;fullUrl;transportType;client=null;auth;middleware;defaultTimeout;defaultHeaders;connected=!1;events=new Te;constructor(e){this.name=e.name,this.config=e.config,this.baseUrl=e.baseUrl.endsWith(`/`)?e.baseUrl.slice(0,-1):e.baseUrl,this.fullUrl=`${this.baseUrl}${e.config.path}`,this.transportType=e.config.transport||`http`,this.auth=e.auth,this.middleware=e.middleware,this.defaultTimeout=e.config.timeout||e.defaultTimeout||3e4,this.defaultHeaders={...e.defaultHeaders,...e.config.headers}}async initializeClient(){if(this.client)return this.client;let{HttpClient:e}=await Promise.resolve().then(()=>(ar(),nr)),{WebSocketClient:t}=await Promise.resolve().then(()=>(Sr(),gr));if(this.transportType===`websocket`){let e=this.auth?.getTransport();this.client=new t({url:this.fullUrl,protocols:this.config.websocket?.protocols,timeout:this.defaultTimeout,reconnect:this.config.websocket?.reconnect,reconnectInterval:this.config.websocket?.reconnectInterval,maxReconnectAttempts:this.config.websocket?.maxReconnectAttempts,auth:this.auth,...e?{authTransport:e}:{},middleware:this.middleware}),this.forwardTransportEvents(this.client)}else this.client=new e({url:this.fullUrl,timeout:this.defaultTimeout,headers:this.defaultHeaders,retry:this.config.http?.retry,maxRetries:this.config.http?.maxRetries,auth:this.auth,middleware:this.middleware});return this.client}async connect(){await(await this.initializeClient()).connect(),this.connected=!0}on(e,t){return this.events.on(e,t),()=>{this.events.off(e,t)}}forwardTransportEvents(e){if(typeof e.on==`function`)for(let t of wr)e.on(t,(...e)=>this.events.emit(t,...e))}async disconnect(){this.client&&(await this.client.disconnect(),this.connected=!1)}service(e){return new Proxy({},{get:(t,n)=>{if(typeof n!=`symbol`)return async(...t)=>await this.invoke(e,n,t)}})}async invoke(e,t,n=[],r){let i=await this.initializeClient(),a={};return r?.context&&(a.context=r.context),(r?.hints||r?.timeout)&&(a.hints={...r?.hints,timeout:r?.timeout||r?.hints?.timeout}),r?.skipAuth&&(a.skipAuth=!0),await i.invoke(e,t,n,a)}getMetrics(){return this.client?{...this.client.getMetrics(),id:this.name}:{id:`${this.name}-not-connected`,url:this.fullUrl,state:Cr.DISCONNECTED,transport:this.transportType,requestsSent:0,responsesReceived:0,errors:0}}isConnected(){return this.client?`isConnected`in this.client&&typeof this.client.isConnected==`function`?this.client.isConnected():this.connected:!1}getPath(){return this.config.path}getTransportType(){return this.transportType}getName(){return this.name}getFullUrl(){return this.fullUrl}getClient(){return this.client}async destroy(){this.client&&=(await this.disconnect(),null)}},Er=class{key;constructor(e=`netron_auth_token`){this.key=e}getToken(){try{return localStorage.getItem(this.key)}catch{return null}}setToken(e){try{localStorage.setItem(this.key,e)}catch{}}removeToken(){try{localStorage.removeItem(this.key)}catch{}}hasToken(){return this.getToken()!==null}getValue(e){try{return localStorage.getItem(e)}catch{return null}}setValue(e,t){try{localStorage.setItem(e,t)}catch{}}removeValue(e){try{localStorage.removeItem(e)}catch{}}},Dr=class{key;constructor(e=`netron_auth_token`){this.key=e}getToken(){try{return sessionStorage.getItem(this.key)}catch{return null}}setToken(e){try{sessionStorage.setItem(this.key,e)}catch{}}removeToken(){try{sessionStorage.removeItem(this.key)}catch{}}hasToken(){return this.getToken()!==null}getValue(e){try{return sessionStorage.getItem(e)}catch{return null}}setValue(e,t){try{sessionStorage.setItem(e,t)}catch{}}removeValue(e){try{sessionStorage.removeItem(e)}catch{}}},Q={storage:new class{token=null;values=new Map;getToken(){return this.token}setToken(e){this.token=e}removeToken(){this.token=null}hasToken(){return this.token!==null}getValue(e){return this.values.get(e)??null}setValue(e,t){this.values.set(e,t)}removeValue(e){this.values.delete(e)}},storageKey:`netron_auth_token`,autoRefresh:!0,refreshThreshold:3e5,autoAttach:!0,inactivityConfig:{timeout:18e5,events:[`click`,`keypress`,`mousemove`]},crossTabSync:{enabled:!0,syncKey:`netron_auth_sync`}},Or=class{options;state;refreshTimer;inactivityTimer;lastActivity=Date.now();eventHandlers=new Map;refreshPromise;storageListener;activityListener;transport;constructor(e={}){let t=e.storage||(e.storageKey?new Er(e.storageKey):Q.storage);this.options={storage:t,storageKey:e.storageKey??Q.storageKey,autoRefresh:e.autoRefresh??Q.autoRefresh,refreshThreshold:e.refreshThreshold??Q.refreshThreshold,autoAttach:e.autoAttach??Q.autoAttach,refreshConfig:e.refreshConfig,logoutConfig:e.logoutConfig,inactivityConfig:{timeout:e.inactivityConfig?.timeout??Q.inactivityConfig.timeout,events:e.inactivityConfig?.events??Q.inactivityConfig.events,onInactivity:e.inactivityConfig?.onInactivity},crossTabSync:{enabled:e.crossTabSync?.enabled??Q.crossTabSync.enabled,syncKey:e.crossTabSync?.syncKey??Q.crossTabSync.syncKey}},this.state={authenticated:!1},this.transport=e.transport,this.restoreFromStorage(),this.options.crossTabSync.enabled&&this.enableCrossTabSync(),this.options.inactivityConfig.timeout&&this.options.inactivityConfig.timeout>0&&this.setupInactivityTracking()}getState(){return{...this.state}}isAuthenticated(){return this.state.authenticated}getContext(){return this.state.context}getToken(){return this.state.token}getRefreshToken(){return this.state.refreshToken}getSessionMetadata(){return this.state.sessionMetadata}setAuth(e){if(!e.success||!e.context)return;let t=this.extractTokenValue(e),n=e.metadata?.refreshToken,r=this.state.sessionMetadata||{sessionId:this.generateSessionId(),loginTime:new Date,deviceInfo:{userAgent:typeof navigator<`u`?navigator.userAgent:void 0,platform:typeof navigator<`u`?navigator.platform:void 0,language:typeof navigator<`u`?navigator.language:void 0}};this.state={authenticated:!0,context:e.context,token:t,expiresAt:e.context.token?.expiresAt?new Date(e.context.token.expiresAt):void 0,refreshToken:n,refreshTokenExpiresAt:e.metadata?.refreshTokenExpiresAt?new Date(e.metadata.refreshTokenExpiresAt):void 0,sessionMetadata:r},this.persistToStorage(),this.options.autoRefresh&&this.state.expiresAt&&this.scheduleRefresh(),this.resetInactivityTimer(),this.emit(`authenticated`,{context:e.context}),this.notifyCrossTabSync(`authenticated`)}setRefreshToken(e,t){this.state.refreshToken=e,this.state.refreshTokenExpiresAt=t,this.persistToStorage()}clearAuth(){this.state={authenticated:!1},this.clearStorage(),this.cancelRefresh(),this.cancelInactivityTimer(),this.emit(`unauthenticated`,{}),this.notifyCrossTabSync(`unauthenticated`)}async logout(){let e=this.options.logoutConfig;if(e)try{let t={"Content-Type":`application/json`,...e.headers};e.includeToken!==!1&&this.state.token&&(t.Authorization=`Bearer ${this.state.token}`);let n=await fetch(e.endpoint,{method:e.method||`POST`,headers:t});if(!n.ok)throw Error(`Logout failed: ${n.statusText}`)}catch(e){throw this.emit(`error`,{error:e,context:`logout`}),e}this.clearAuth()}async refreshToken(e){let t=e||this.state.refreshToken;if(!t)return{success:!1,error:`No refresh token available`};if(!this.options.refreshConfig)return{success:!1,error:`Refresh configuration not provided`};if(this.refreshPromise)return this.refreshPromise;this.refreshPromise=this.performTokenRefresh(t);try{return await this.refreshPromise}finally{this.refreshPromise=void 0}}async performTokenRefresh(e){let t=this.options.refreshConfig;try{let n={"Content-Type":`application/json`,...t.headers},r;r=t.buildBody?t.buildBody(e):{refreshToken:e};let i=await fetch(t.endpoint,{method:t.method||`POST`,headers:n,body:JSON.stringify(r)});if(!i.ok){this.clearAuth();let e={success:!1,error:`Token refresh failed: ${i.statusText}`};return this.emit(`error`,{error:e.error,context:`refresh`}),e}let a=await i.json();return a.success&&a.context&&(this.setAuth(a),this.emit(`token-refreshed`,{context:a.context})),a}catch(e){this.clearAuth();let t={success:!1,error:e instanceof Error?e.message:`Unknown error during token refresh`};return this.emit(`error`,{error:e,context:`refresh`}),t}}setToken(e,t){if(!e){this.clearAuth();return}this.state={authenticated:!0,context:t,token:e,expiresAt:t?.token?.expiresAt,refreshToken:this.state.refreshToken,refreshTokenExpiresAt:this.state.refreshTokenExpiresAt,sessionMetadata:this.state.sessionMetadata||{sessionId:this.generateSessionId(),loginTime:new Date,deviceInfo:{userAgent:typeof navigator<`u`?navigator.userAgent:void 0,platform:typeof navigator<`u`?navigator.platform:void 0,language:typeof navigator<`u`?navigator.language:void 0}}},this.persistToStorage(),this.options.autoRefresh&&this.state.expiresAt&&this.scheduleRefresh(),this.resetInactivityTimer(),this.emit(`authenticated`,{context:t}),this.notifyCrossTabSync(`authenticated`)}getAuthHeaders(){if(!this.options.autoAttach)return{};if(this.transport){let e={};return this.transport.prepareRequest({headers:e},this.state.token??null),e}return this.state.token?{Authorization:`Bearer ${this.state.token}`}:{}}getRequestCredentials(){if(!this.transport)return;let e={headers:{}};return this.transport.prepareRequest(e,this.state.token??null),e.credentials}getTransport(){return this.transport}isTokenExpired(){return this.state.expiresAt?Date.now()>=this.state.expiresAt.getTime():!1}isRefreshTokenExpired(){return this.state.refreshTokenExpiresAt?Date.now()>=this.state.refreshTokenExpiresAt.getTime():!1}needsRefresh(){return!this.state.expiresAt||!this.options.autoRefresh?!1:this.state.expiresAt.getTime()-Date.now()<=this.options.refreshThreshold}enableCrossTabSync(){typeof window>`u`||this.storageListener||(this.storageListener=e=>{if(e.key===this.options.crossTabSync.syncKey&&e.newValue)try{let t=JSON.parse(e.newValue);(t.type===`authenticated`||t.type===`unauthenticated`)&&(this.restoreFromStorage(),this.emit(`cross-tab-sync`,{type:t.type,timestamp:t.timestamp}))}catch(e){console.error(`Error processing cross-tab sync:`,e)}},window.addEventListener(`storage`,this.storageListener))}disableCrossTabSync(){typeof window<`u`&&this.storageListener&&(window.removeEventListener(`storage`,this.storageListener),this.storageListener=void 0)}setupInactivityTracking(){typeof window>`u`||this.activityListener||(this.activityListener=()=>{this.lastActivity=Date.now(),this.resetInactivityTimer()},(this.options.inactivityConfig.events||[`click`,`keypress`,`mousemove`]).forEach(e=>{window.addEventListener(e,this.activityListener,{passive:!0})}),this.resetInactivityTimer())}resetInactivityTimer(){this.cancelInactivityTimer(),this.state.authenticated&&this.options.inactivityConfig.timeout&&(this.inactivityTimer=setTimeout(()=>{this.handleInactivity()},this.options.inactivityConfig.timeout))}cancelInactivityTimer(){this.inactivityTimer!==void 0&&(clearTimeout(this.inactivityTimer),this.inactivityTimer=void 0)}handleInactivity(){this.emit(`inactivity`,{lastActivity:new Date(this.lastActivity)}),this.options.inactivityConfig.onInactivity&&this.options.inactivityConfig.onInactivity(),this.clearAuth()}on(e,t){this.eventHandlers.has(e)||this.eventHandlers.set(e,new Set),this.eventHandlers.get(e).add(t)}off(e,t){let n=this.eventHandlers.get(e);n&&n.delete(t)}emit(e,t){let n=this.eventHandlers.get(e);n&&n.forEach(n=>{try{n(t)}catch(t){console.error(`Error in ${e} handler:`,t)}})}extractTokenValue(e){return e.metadata?.accessToken??e.metadata?.token??e.context?.metadata?.token}restoreFromStorage(){try{let e=this.options.storage.getValue(`${this.options.storageKey}_context`);if(e){let t=JSON.parse(e);this.state={authenticated:t.authenticated,context:t.context,token:t.token,expiresAt:t.expiresAt?new Date(t.expiresAt):void 0,refreshToken:t.refreshToken,refreshTokenExpiresAt:t.refreshTokenExpiresAt?new Date(t.refreshTokenExpiresAt):void 0,sessionMetadata:t.sessionMetadata?{...t.sessionMetadata,loginTime:new Date(t.sessionMetadata.loginTime)}:void 0},this.options.autoRefresh&&this.state.expiresAt&&this.scheduleRefresh();return}}catch(e){console.error(`Error restoring auth context from storage:`,e)}let e=this.options.storage.getToken();e&&(this.state={authenticated:!0,token:e})}persistToStorage(){try{this.state.token&&this.options.storage.setToken(this.state.token);let e={authenticated:this.state.authenticated,context:this.state.context,token:this.state.token,expiresAt:this.state.expiresAt?.toISOString(),refreshToken:this.state.refreshToken,refreshTokenExpiresAt:this.state.refreshTokenExpiresAt?.toISOString(),sessionMetadata:this.state.sessionMetadata?{...this.state.sessionMetadata,loginTime:this.state.sessionMetadata.loginTime.toISOString()}:void 0};this.options.storage.setValue(`${this.options.storageKey}_context`,JSON.stringify(e))}catch(e){console.error(`Error persisting auth state to storage:`,e)}}clearStorage(){this.options.storage.removeToken(),this.options.storage.removeValue(`${this.options.storageKey}_context`)}notifyCrossTabSync(e){if(!(!this.options.crossTabSync.enabled||typeof window>`u`))try{let t={type:e,timestamp:Date.now()};this.options.storage.setValue(this.options.crossTabSync.syncKey,JSON.stringify(t))}catch(e){console.error(`Error notifying cross-tab sync:`,e)}}scheduleRefresh(){if(this.cancelRefresh(),!this.state.expiresAt)return;let e=Math.max(0,this.state.expiresAt.getTime()-Date.now()-this.options.refreshThreshold);this.refreshTimer=setTimeout(async()=>{this.state.refreshToken&&this.options.refreshConfig?await this.refreshToken():this.emit(`token-refreshed`,{needsRefresh:!0})},e)}cancelRefresh(){this.refreshTimer!==void 0&&(clearTimeout(this.refreshTimer),this.refreshTimer=void 0)}generateSessionId(){return`${Date.now()}-${Math.random().toString(36).slice(2,11)}`}destroy(){this.cancelRefresh(),this.cancelInactivityTimer(),this.disableCrossTabSync(),typeof window<`u`&&this.activityListener&&((this.options.inactivityConfig.events||[`click`,`keypress`,`mousemove`]).forEach(e=>{window.removeEventListener(e,this.activityListener)}),this.activityListener=void 0),this.eventHandlers.clear()}},kr=class{baseUrl;backendConfigs;backendClients;poolEntries;auth;middleware;defaultTimeout;defaultHeaders;healthCheckInterval;healthCheckTimer;enableHealthChecks;constructor(e){this.baseUrl=e.baseUrl.endsWith(`/`)?e.baseUrl.slice(0,-1):e.baseUrl,this.backendConfigs=new Map(Object.entries(e.backends)),this.backendClients=new Map,this.poolEntries=new Map,this.auth=e.auth,this.middleware=e.middleware,this.defaultTimeout=e.defaultTimeout||3e4,this.defaultHeaders=e.defaultHeaders||{},this.healthCheckInterval=e.healthCheckInterval||3e4,this.enableHealthChecks=e.enableHealthChecks||!1;for(let[e,t]of this.backendConfigs)this.poolEntries.set(e,{name:e,config:t,connected:!1,healthy:!0});this.enableHealthChecks&&this.startHealthChecks()}get(e){let t=this.backendClients.get(e);if(t)return t;let n=this.backendConfigs.get(e);if(!n)throw Error(`Backend '${e}' not found in pool`);let r;return n.auth&&(r=n.auth instanceof Or?n.auth:new Or(n.auth)),t=new Tr({name:e,config:n,baseUrl:this.baseUrl,auth:r||this.auth,middleware:this.middleware,defaultTimeout:this.defaultTimeout,defaultHeaders:this.defaultHeaders}),this.backendClients.set(e,t),t}has(e){return this.backendConfigs.has(e)}getNames(){return Array.from(this.backendConfigs.keys())}async connect(e){await this.get(e).connect();let t=this.poolEntries.get(e);t&&(t.connected=!0,t.healthy=!0)}async connectAll(){let e=Array.from(this.backendConfigs.keys()).map(e=>this.connect(e));await Promise.all(e)}async disconnect(e){let t=this.backendClients.get(e);if(t){await t.disconnect();let n=this.poolEntries.get(e);n&&(n.connected=!1)}}async disconnectAll(){let e=Array.from(this.backendClients.keys()).map(e=>this.disconnect(e));await Promise.all(e)}isConnected(e){return this.backendClients.get(e)?.isConnected()||!1}allConnected(){for(let e of this.backendConfigs.keys())if(!this.isConnected(e))return!1;return!0}getMetrics(e){let t=this.backendClients.get(e);if(t)return t.getMetrics();let n=this.backendConfigs.get(e);return{id:e,url:n?`${this.baseUrl}${n.path}`:this.baseUrl,state:Cr.DISCONNECTED,transport:n?.transport||`http`,requestsSent:0,responsesReceived:0,errors:0}}getAggregatedMetrics(){let e={},t=0,n=0,r=0,i=0,a=0;for(let o of this.backendConfigs.keys()){let s=this.getMetrics(o);e[o]=s,t+=s.requestsSent,n+=s.responsesReceived,r+=s.errors,s.avgLatency!==void 0&&(i+=s.avgLatency,a++)}return{backends:e,totalRequestsSent:t,totalResponsesReceived:n,totalErrors:r,avgLatency:a>0?i/a:0}}getPoolEntry(e){return this.poolEntries.get(e)}getAllPoolEntries(){return Array.from(this.poolEntries.values())}async checkHealth(e){let t=this.poolEntries.get(e);if(!t)return!1;try{let n=this.backendClients.get(e);if(!n)return t.healthy=!1,t.lastHealthCheck=Date.now(),!1;let r=n.isConnected();return t.healthy=r,t.lastHealthCheck=Date.now(),r}catch{return t.healthy=!1,t.lastHealthCheck=Date.now(),!1}}async checkAllHealth(){let e=new Map,t=Array.from(this.backendConfigs.keys()).map(async t=>{let n=await this.checkHealth(t);e.set(t,n)});return await Promise.all(t),e}getHealthyBackends(){return Array.from(this.poolEntries.values()).filter(e=>e.healthy).map(e=>e.name)}getUnhealthyBackends(){return Array.from(this.poolEntries.values()).filter(e=>!e.healthy).map(e=>e.name)}startHealthChecks(){this.healthCheckTimer||=setInterval(async()=>{await this.checkAllHealth()},this.healthCheckInterval)}stopHealthChecks(){this.healthCheckTimer&&=(clearInterval(this.healthCheckTimer),void 0)}addBackend(e,t){if(this.backendConfigs.has(e))throw Error(`Backend '${e}' already exists in pool`);this.backendConfigs.set(e,t),this.poolEntries.set(e,{name:e,config:t,connected:!1,healthy:!0})}async removeBackend(e){let t=this.backendClients.get(e);t&&(await t.destroy(),this.backendClients.delete(e)),this.backendConfigs.delete(e),this.poolEntries.delete(e)}async updateBackend(e,t){if(!this.backendConfigs.has(e))throw Error(`Backend '${e}' not found in pool`);let n=this.backendClients.get(e);n&&(await n.destroy(),this.backendClients.delete(e)),this.backendConfigs.set(e,t),this.poolEntries.set(e,{name:e,config:t,connected:!1,healthy:!0})}async destroy(){this.stopHealthChecks();let e=Array.from(this.backendClients.values()).map(e=>e.destroy());await Promise.all(e),this.backendClients.clear(),this.backendConfigs.clear(),this.poolEntries.clear()}},Ar=class{config;defaultBackend;availableBackends;constructor(e,t,n){this.config=e,this.defaultBackend=t,this.availableBackends=new Set(n||[])}resolve(e){let t=this.parseServiceName(e);if(t.backend)return this.availableBackends.size>0&&!this.availableBackends.has(t.backend)?(console.warn(`ServiceRouter: Backend '${t.backend}' not found in available backends, using default backend '${this.defaultBackend}'`),this.defaultBackend):t.backend;let n=t.service;if(this.config.services?.[n])return this.config.services[n];if(this.config.patterns){for(let{pattern:e,backend:t}of this.config.patterns)if(this.matchPattern(n,e))return t}return this.defaultBackend}getServiceName(e){return this.parseServiceName(e).service}parseServiceName(e){let t=e.split(`.`);if(t.length>=2){let n=t[0];if((this.availableBackends.has(n)||this.config.services?.[e]===void 0)&&this.availableBackends.size>0&&this.availableBackends.has(n))return{backend:n,service:t.slice(1).join(`.`)}}return{service:e}}matchPattern(e,t){return t instanceof RegExp?t.test(e):e===t||e.startsWith(`${t}.`)||e.startsWith(t)}addServiceMapping(e,t){this.config.services||(this.config.services={}),this.config.services[e]=t}removeServiceMapping(e){return this.config.services?.[e]!==void 0&&(delete this.config.services[e],!0)}addPattern(e,t){this.config.patterns||(this.config.patterns=[]),this.config.patterns.push({pattern:e,backend:t})}getConfig(){return this.config}getDefaultBackend(){return this.defaultBackend}setDefaultBackend(e){this.defaultBackend=e}setAvailableBackends(e){this.availableBackends=new Set(e)}isBackendAvailable(e){return this.availableBackends.size===0||this.availableBackends.has(e)}};Kn();var jr=class{baseUrl;pool;router;middleware;defaultBackend;backendNames;eventListeners=new Map;transportUnsubs=[];constructor(e){if(this.baseUrl=e.baseUrl.endsWith(`/`)?e.baseUrl.slice(0,-1):e.baseUrl,this.backendNames=Object.keys(e.backends),this.defaultBackend=e.defaultBackend||this.backendNames[0]||``,this.defaultBackend&&!this.backendNames.includes(this.defaultBackend))throw Error(`Default backend '${this.defaultBackend}' not found in backends configuration`);if(this.middleware=new Gn,e.shared?.middleware)for(let t of e.shared.middleware)this.middleware.use(t.middleware,t.config,t.stage);let t={baseUrl:this.baseUrl,backends:e.backends,auth:e.shared?.auth,middleware:this.middleware,defaultTimeout:e.shared?.timeout,defaultHeaders:e.shared?.headers};this.pool=new kr(t),this.router=new Ar(e.routing||{},this.defaultBackend,this.backendNames)}backend(e){return this.pool.get(e)}service(e){let t=this.router.resolve(e),n=this.router.getServiceName(e);return this.pool.get(t).service(n)}async invoke(e,t,n,r=[],i){return await this.pool.get(e).invoke(t,n,r,i)}getMetrics(){return this.pool.getAggregatedMetrics()}isConnected(e){return e?this.pool.isConnected(e):this.pool.allConnected()}async connect(e){e?await this.pool.connect(e):await this.pool.connectAll()}async disconnect(e){e?await this.pool.disconnect(e):await this.pool.disconnectAll()}getMiddleware(){return this.middleware}on(e,t){let n=this.eventListeners.get(e);return n||(n=new Set,this.eventListeners.set(e,n),this.wireTransportEvents()),n.add(t),()=>{this.eventListeners.get(e)?.delete(t)}}off(e,t){this.eventListeners.get(e)?.delete(t)}emitEvent(e,t){let n=this.eventListeners.get(e);if(n&&n.size!==0)for(let e of n)try{e(t)}catch{}}wireTransportEvents(){if(!(this.transportUnsubs.length>0))for(let e of this.backendNames){let t=this.pool.get(e);if(typeof t.on!=`function`)continue;let n=()=>this.emitEvent(`reconnect`,e),r=()=>this.emitEvent(`disconnect`,e),i=t.on(`reconnect`,n),a=t.on(`disconnect`,r);typeof i==`function`&&this.transportUnsubs.push(i),typeof a==`function`&&this.transportUnsubs.push(a)}}async destroy(){for(let e of this.transportUnsubs)try{e()}catch{}this.transportUnsubs.length=0,this.eventListeners.clear(),await this.pool.destroy(),this.middleware.clear()}getRouter(){return this.router}getPool(){return this.pool}getBackendNames(){return[...this.backendNames]}getDefaultBackend(){return this.defaultBackend}getBaseUrl(){return this.baseUrl}use(e,t,n){return this.middleware.use(e,t,n),this}async getHealth(){return await this.pool.checkAllHealth()}getHealthyBackends(){return this.pool.getHealthyBackends()}getUnhealthyBackends(){return this.pool.getUnhealthyBackends()}};function Mr(e){let t=new jr(e);return new Proxy(t,{get(e,t){if(t in e||typeof t==`symbol`){let n=e[t];return typeof n==`function`?n.bind(e):n}if(e.getBackendNames().includes(t))return new Proxy({},{get(n,r){if(typeof r!=`symbol`)return e.backend(t).service(r)}})}})}Un(),q(),hr(),In(),q(),hr(),q(),q(),q(),q(),tr(),Un(),qn(),qn(),$n(),q(),tr();var Nr={PRE_REQUEST:`pre-request`,POST_RESPONSE:`post-response`,ERROR:`error`},Pr=e({alerts:()=>Vr,audit:()=>qr,auth:()=>zr,authRpc:()=>Qr,clearSession:()=>ni,daemon:()=>Rr,daemonClient:()=>$,deploy:()=>Wr,errorStatus:()=>Lr,getSessionId:()=>ei,getStorageToken:()=>ri,infra:()=>Ur,logs:()=>Br,metrics:()=>Hr,nodes:()=>Xr,pipelines:()=>Gr,project:()=>Jr,releases:()=>Zr,setStorageToken:()=>ti,systemInfo:()=>Yr,traces:()=>Kr}),Fr=`omnitron_token`,Ir=new Or({storage:new Dr(Fr),storageKey:Fr,autoRefresh:!1,autoAttach:!0,crossTabSync:{enabled:!1},inactivityConfig:{timeout:0}}),$=Mr({baseUrl:``,backends:{daemon:{path:``,auth:Ir}},defaultBackend:`daemon`});$.use(async(e,t)=>{if(await t(),Lr(e.error)!==401||typeof window>`u`||window.location.pathname.startsWith(`/auth/`))return;let n=encodeURIComponent(window.location.pathname+window.location.search);window.location.href=`/auth/sign-in?returnTo=${n}`},{name:`session-expired-redirect`,priority:10},Nr.ERROR);function Lr(e){if(!e||typeof e!=`object`)return;let t=e,n=[t.status,t.statusCode,t.code,t.response?.status,t.data?.code,t.details?.error?.code,t.data?.error?.code];for(let e of n){if(typeof e==`number`&&Number.isFinite(e))return e;if(typeof e==`string`&&/^\d{3}$/.test(e))return Number(e)}}var Rr=$.daemon.OmnitronDaemon,zr=$.daemon.OmnitronAuth,Br=$.daemon.OmnitronLogs;$.daemon.OmnitronFleet;var Vr=$.daemon.OmnitronAlerts,Hr=$.daemon.OmnitronMetrics,Ur=$.daemon.OmnitronInfra,Wr=$.daemon.OmnitronDeploy,Gr=$.daemon.OmnitronPipelines,Kr=$.daemon.OmnitronTraces;$.daemon.OmnitronBackups,$.daemon.OmnitronKubernetes,$.daemon.OmnitronHealth,$.daemon.OmnitronDiscovery,$.daemon.OmnitronSecrets;var qr=$.daemon.OmnitronAudit,Jr=$.daemon.OmnitronProject,Yr=$.daemon.OmnitronSystemInfo,Xr=$.daemon.OmnitronNodes,Zr=$.daemon.OmnitronRelease;function Qr(e,...t){let n=e===`signIn`||e===`validateToken`||e===`refreshSession`;return $.invoke(`daemon`,`OmnitronAuth`,e,t,n?{skipAuth:!0}:void 0)}function $r(e){try{let t=e.split(`.`);if(t.length!==3)return null;let n=atob(t[1].replace(/-/g,`+`).replace(/_/g,`/`));return JSON.parse(n)}catch{return null}}function ei(){let e=sessionStorage.getItem(Fr);return e?$r(e)?.sid??null:null}function ti(e){Ir.setToken(e)}function ni(){Ir.clearAuth()}function ri(){return sessionStorage.getItem(Fr)}export{xr as S,Jr as _,ni as a,Yr as b,$ as c,ri as d,Ur as f,Gr as g,Xr as h,Qr as i,Wr as l,Hr as m,qr as n,Pr as o,Br as p,zr as r,Rr as s,Vr as t,ei as u,Zr as v,Kr as x,ti as y};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={online:`success`,running:`success`,healthy:`success`,starting:`warning`,stopping:`warning`,restarting:`warning`,degraded:`warning`,provisioning:`warning`,stopped:`default`,exited:`default`,created:`default`,none:`default`,unknown:`default`,not_found:`default`,crashed:`error`,errored:`error`,error:`error`,unhealthy:`error`,dead:`error`,offline:`error`};function t(t){return t&&e[t]||`default`}var n={fatal:`#dc2626`,error:`#ef4444`,warn:`#f59e0b`,info:`#3b82f6`,debug:`#6b7280`,trace:`#9ca3af`};export{e as n,t as r,n as t};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{t as n}from"./Grid-BZ7xhoHQ.js";import{f as r}from"./client-CGbBvy9k.js";import{B as i,Bt as a,D as o,Dn as s,P as c,Qn as l,Qt as u,St as d,Wn as f,_ as p,_n as m,_t as h,en as g,er as _,in as v,j as y,jt as b,kt as ee,nn as x,nt as S,on as C,qt as te,sn as w,st as T,tn as E,v as D,vn as O,vt as k,yn as A,zt as j}from"./index-DiZbrwxT.js";import{t as M}from"./use-stack-context-CZUgPq88.js";var N=e(t(),1),P=l();function F(e){let t=Object.entries(e??{});return t.length===0?`--`:t.sort(([,e],[,t])=>e-t).map(([e,t])=>`${e}→${t}`).join(`, `)}var I={running:`success`,exited:`error`,created:`default`,restarting:`warning`,paused:`info`},L={healthy:`success`,unhealthy:`error`,none:`default`,starting:`warning`};function R({title:e,value:t,icon:n,color:r,loading:i}){return(0,P.jsx)(C,{variant:`outlined`,children:(0,P.jsx)(v,{children:(0,P.jsxs)(j,{direction:`row`,spacing:2,sx:{alignItems:`center`,justifyContent:`space-between`},children:[(0,P.jsxs)(j,{spacing:.5,children:[(0,P.jsx)(m,{variant:`body2`,sx:{color:`text.secondary`},children:e}),i?(0,P.jsx)(d,{width:60,height:40}):(0,P.jsx)(m,{variant:`h4`,children:t})]}),(0,P.jsx)(w,{sx:{p:1.5,borderRadius:2,bgcolor:e=>f(e.palette[r].main,.12),color:`${r}.main`,display:`flex`},children:n})]})})})}function z({open:e,containerName:t,logs:n,onClose:r}){return(0,P.jsxs)(x,{open:e,onClose:r,maxWidth:`md`,fullWidth:!0,children:[(0,P.jsxs)(u,{sx:{fontFamily:`monospace`},children:[`Logs: `,t]}),(0,P.jsx)(g,{dividers:!0,children:(0,P.jsx)(w,{sx:{bgcolor:`#0d1117`,color:`#c9d1d9`,fontFamily:`monospace`,fontSize:12,lineHeight:1.6,p:2,borderRadius:1,maxHeight:400,overflow:`auto`,whiteSpace:`pre-wrap`,wordBreak:`break-all`},children:n.length===0?`No logs available.`:n.map((e,t)=>(0,P.jsx)(`div`,{children:e},t))})}),(0,P.jsx)(E,{children:(0,P.jsx)(A,{onClick:r,size:`small`,children:`Close`})})]})}function B(){let{activeProject:e,activeStack:t}=M(),l=T().filter(e=>e.type!==`local`&&(!t||e.name===t)),{data:u,loading:d,error:f,refresh:g}=S(async()=>{let e=await r.listContainers();return Array.isArray(e)?e:[]},{intervalMs:1e4,describeError:e=>`Could not ask the container runtime: ${e instanceof Error?e.message:String(e)}`}),[v,x]=(0,N.useState)(null),[C,w]=(0,N.useState)(null),[E,A]=(0,N.useState)(0),[B,V]=(0,N.useState)(25),H=(u??[]).filter(n=>!e||!n.project||n.project===e&&(!t||n.stack===t)),[U,W]=(0,N.useState)(!1),[G,K]=(0,N.useState)(``),[q,J]=(0,N.useState)([]),Y=u!==null,X=e=>Y?e:`—`,Z=H.length,ne=H.filter(e=>e.status===`running`).length,Q=H.filter(e=>e.status===`exited`).length,$=H.filter(e=>e.health===`unhealthy`).length,re=async e=>{try{await r.startContainer({name:e}),g()}catch(e){x(e?.message??`Failed to start container`)}},ie=async e=>{try{await r.stopContainer({name:e}),g()}catch(e){x(e?.message??`Failed to stop container`)}},ae=async()=>{let e=C;if(e)try{await r.removeContainer({name:e}),w(null),await g()}catch(e){x(e?.message??`Failed to remove container`)}},oe=async e=>{try{let{logs:t}=await r.getContainerLogs({name:e.name,tail:200});K(e.name),J(t?t.split(`
|
|
2
|
+
`):[]),W(!0)}catch(e){x(e?.message??`Failed to fetch container logs`)}},se=H.slice(E*B,E*B+B);return(0,P.jsxs)(j,{spacing:3,children:[(0,P.jsx)(ee,{open:C!==null,onClose:()=>w(null),onConfirm:ae,title:`Remove container?`,content:(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(`b`,{children:C}),` will be removed. Data outside a named volume is lost, and the daemon recreates the container on the next `,(0,P.jsx)(`code`,{children:`omnitron up`}),`.`]}),confirmLabel:`Remove`,confirmColor:`error`}),(0,P.jsx)(h,{links:[{name:`Containers`}],action:(0,P.jsx)(s,{size:`small`,onClick:g,title:`Refresh`,children:(0,P.jsx)(c,{})})}),(f||v)&&(0,P.jsx)(k,{closable:!0,severity:`warning`,variant:`outlined`,onClose:()=>x(null),children:v??f}),l.length>0&&(0,P.jsxs)(k,{severity:`info`,variant:`outlined`,children:[`These are this machine's containers.`,` `,l.map((e,t)=>(0,P.jsxs)(`span`,{children:[t>0&&`, `,(0,P.jsx)(te,{component:_,to:`/stacks/${encodeURIComponent(e.name)}`,children:e.name})]},e.name)),` `,l.length===1?`runs`:`run`,` on `,l.length===1?`its node`:`their nodes`,`; its infrastructure is on its stack page, as the node reports it.`]}),(0,P.jsxs)(n,{container:!0,spacing:3,children:[(0,P.jsx)(n,{size:{xs:12,sm:6,md:3},children:(0,P.jsx)(R,{title:`Total`,value:X(Z),icon:(0,P.jsx)(D,{}),color:`primary`,loading:d})}),(0,P.jsx)(n,{size:{xs:12,sm:6,md:3},children:(0,P.jsx)(R,{title:`Running`,value:X(ne),icon:(0,P.jsx)(D,{}),color:`success`,loading:d})}),(0,P.jsx)(n,{size:{xs:12,sm:6,md:3},children:(0,P.jsx)(R,{title:`Stopped`,value:X(Q),icon:(0,P.jsx)(D,{}),color:Q>0?`error`:`info`,loading:d})}),(0,P.jsx)(n,{size:{xs:12,sm:6,md:3},children:(0,P.jsx)(R,{title:`Unhealthy`,value:X($),icon:(0,P.jsx)(D,{}),color:$>0?`error`:`success`,loading:d})})]}),(0,P.jsx)(b,{columns:[{key:`name`,header:`Name`,render:e=>(0,P.jsx)(m,{variant:`body2`,sx:{fontWeight:600},children:e.name})},{key:`image`,header:`Image`,render:e=>(0,P.jsx)(m,{variant:`body2`,sx:{fontFamily:`monospace`,fontSize:13},children:e.image})},{key:`status`,header:`Status`,render:e=>(0,P.jsx)(O,{label:e.status,size:`small`,color:I[e.status]??`default`,variant:`filled`,sx:{textTransform:`capitalize`,fontWeight:600}})},{key:`health`,header:`Health`,render:e=>(0,P.jsx)(O,{label:e.health??`none`,size:`small`,color:L[e.health??`none`]??`default`,variant:`outlined`,sx:{textTransform:`capitalize`}})},{key:`ports`,header:`Ports`,render:e=>(0,P.jsx)(m,{variant:`caption`,sx:{fontFamily:`monospace`,fontSize:12},children:F(e.ports)})},{key:`actions`,header:`Actions`,align:`right`,render:e=>(0,P.jsxs)(j,{direction:`row`,spacing:.5,sx:{justifyContent:`flex-end`},children:[(0,P.jsx)(a,{title:`Remove`,children:(0,P.jsx)(s,{size:`small`,color:`error`,onClick:()=>w(e.name),children:(0,P.jsx)(p,{fontSize:`small`})})}),(0,P.jsx)(a,{title:`Logs`,children:(0,P.jsx)(s,{size:`small`,onClick:()=>oe(e),children:(0,P.jsx)(o,{fontSize:`small`})})}),e.status!==`running`&&(0,P.jsx)(a,{title:`Start`,children:(0,P.jsx)(s,{size:`small`,color:`success`,onClick:()=>re(e.name),children:(0,P.jsx)(y,{fontSize:`small`})})}),e.status===`running`&&(0,P.jsx)(a,{title:`Stop`,children:(0,P.jsx)(s,{size:`small`,color:`warning`,onClick:()=>ie(e.name),children:(0,P.jsx)(i,{fontSize:`small`})})})]})}],data:se,total:H.length,loading:d,loadError:f??null,emptyMessage:`No containers found. Infrastructure containers will appear here when Docker is running.`,rowKey:e=>e.name,page:E,pageSize:B,onPageChange:A,onPageSizeChange:e=>{V(e),A(0)},dense:!0}),(0,P.jsx)(z,{open:U,containerName:G,logs:q,onClose:()=>W(!1)})]})}export{B as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=e=>e.apps.reduce((e,t)=>e+t.memory,0),t=t=>t.appsMemory??e(t),n=t=>t.daemonMemory??t.totalMemory-e(t);export{n,t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{t as n}from"./Grid-BZ7xhoHQ.js";import{_ as r,m as i,s as ee}from"./client-CGbBvy9k.js";import{At as a,O as o,Qn as s,Wn as c,Zt as l,_n as u,f as d,in as f,it as p,on as m,rt as h,sn as g,st as _,tt as v,v as y,vn as b,vt as x,z as S,zn as C,zt as w}from"./index-DiZbrwxT.js";import{i as T,s as E}from"./formatters-BqjL73N3.js";import{t as D}from"./use-stack-context-CZUgPq88.js";var O=e(t(),1),k=s();function A({app:e}){let t=C(),n=e.status===`online`?t.palette.success.main:e.status===`errored`||e.status===`crashed`?t.palette.error.main:e.status===`starting`?t.palette.warning.main:t.palette.text.disabled,r=[{label:`PID`,value:e.pid??`--`},{label:`Uptime`,value:E(e.uptime)},{label:`CPU`,value:e.cpu>0?`${e.cpu.toFixed(1)}%`:`--`},{label:`Memory`,value:T(e.memory)},{label:`Restarts`,value:e.restarts}];return(0,k.jsx)(m,{variant:`outlined`,sx:{height:`100%`,borderRadius:2},children:(0,k.jsxs)(f,{sx:{p:2.5,"&:last-child":{pb:2.5}},children:[(0,k.jsxs)(w,{direction:`row`,sx:{alignItems:`center`,justifyContent:`space-between`,mb:1.5},children:[(0,k.jsx)(u,{variant:`subtitle2`,sx:{fontWeight:700},children:e.name}),(0,k.jsx)(b,{label:e.status,size:`small`,sx:{height:22,fontSize:`0.7rem`,fontWeight:600,bgcolor:c(n,.12),color:n,border:`1px solid ${c(n,.3)}`}})]}),(0,k.jsx)(l,{sx:{mb:1}}),(0,k.jsx)(w,{spacing:.5,children:r.map(e=>(0,k.jsxs)(w,{direction:`row`,sx:{justifyContent:`space-between`,alignItems:`center`,py:.25},children:[(0,k.jsx)(u,{variant:`caption`,sx:{color:`text.secondary`},children:e.label}),(0,k.jsx)(u,{variant:`caption`,sx:{fontWeight:600},children:e.value})]},e.label))}),e.processes&&e.processes.length>0&&(0,k.jsxs)(k.Fragment,{children:[(0,k.jsx)(l,{sx:{my:1}}),(0,k.jsx)(u,{variant:`caption`,sx:{color:`text.secondary`,fontWeight:600,mb:.5,display:`block`},children:`Processes`}),(0,k.jsx)(w,{spacing:.25,children:e.processes.map(e=>(0,k.jsxs)(w,{direction:`row`,sx:{justifyContent:`space-between`,alignItems:`center`},children:[(0,k.jsx)(u,{variant:`caption`,sx:{color:`text.secondary`,fontSize:`0.68rem`},children:e.name}),(0,k.jsx)(b,{label:e.status,size:`small`,sx:{height:16,fontSize:`0.6rem`,fontWeight:600,bgcolor:c(e.status===`online`?`#22c55e`:e.status===`stopped`?`#6b7280`:`#ef4444`,.1),color:e.status===`online`?`#22c55e`:e.status===`stopped`?`#6b7280`:`#ef4444`}})]},e.name))})]})]})})}function j({apps:e,activeStack:t}){if(t||e.every(e=>e.stack===null))return(0,k.jsx)(n,{container:!0,spacing:2.5,children:e.map(e=>(0,k.jsx)(n,{size:{xs:12,sm:6,md:4,lg:3},children:(0,k.jsx)(A,{app:e})},e.key))});let r=new Map;for(let t of e){let e=t.stack??`default`;r.has(e)||r.set(e,[]),r.get(e).push(t)}return(0,k.jsx)(w,{spacing:3,children:Array.from(r.entries()).map(([e,t])=>(0,k.jsxs)(g,{children:[(0,k.jsxs)(w,{direction:`row`,sx:{alignItems:`center`,gap:1,mb:1.5},children:[(0,k.jsx)(g,{sx:{width:8,height:8,borderRadius:`50%`,bgcolor:t.every(e=>e.status===`online`)?`#22c55e`:`#eab308`}}),(0,k.jsxs)(u,{variant:`subtitle2`,sx:{fontWeight:700,textTransform:`uppercase`,letterSpacing:.5},children:[e,t.some(e=>e.remote)?` · remote`:``]}),(0,k.jsxs)(u,{variant:`caption`,sx:{color:`text.secondary`},children:[t.filter(e=>e.status===`online`).length,`/`,t.length,` online`]})]}),(0,k.jsx)(n,{container:!0,spacing:2.5,children:t.map(e=>(0,k.jsx)(n,{size:{xs:12,sm:6,md:4,lg:3},children:(0,k.jsx)(A,{app:e})},e.key))})]},e))})}function M(){return(0,k.jsx)(k.Fragment,{children:Array.from({length:4}).map((e,t)=>(0,k.jsx)(n,{size:{xs:6,sm:3},children:(0,k.jsx)(a,{label:``,value:``,loading:!0,sx:{height:`100%`}})},t))})}function N(){C();let[e,t]=(0,O.useState)([]),[s,c]=(0,O.useState)(null),[l,f]=(0,O.useState)(null),[m,b]=(0,O.useState)(!0),[E,A]=(0,O.useState)(null),N=(0,O.useRef)(!0),{activeProject:P,activeStack:F}=D(),I=_(),L=(0,O.useCallback)(async()=>{try{let[e,n,a]=await Promise.allSettled([P?r.getProjectApps({project:P}):Promise.resolve(null),ee.list(),i.getSnapshot()]);P&&e.status===`fulfilled`&&e.value&&c({project:P,apps:e.value}),n.status===`fulfilled`&&t(n.value),a.status===`fulfilled`&&f(a.value);let o=[e.status===`rejected`?`${P}'s apps`:null,n.status===`rejected`?`the app list`:null,a.status===`rejected`?`metrics`:null].filter(Boolean);if(o.length>0){let t=(e.status===`rejected`?e.reason?.message:null)??(n.status===`rejected`?n.reason?.message:null)??(a.status===`rejected`?a.reason?.message:null)??`the daemon did not answer`;A(`Could not refresh ${o.join(` and `)} — ${t}. Figures below are the last received.`);return}A(null)}catch(e){A(e?.message??`Failed to connect to daemon`)}finally{N.current&&=(b(!1),!1)}},[P]),R=(0,O.useRef)(!1);(0,O.useEffect)(()=>{if(!R.current){R.current=!0;return}L()},[L]);let z=p(e=>e.connected),B=p(e=>e.lastEvent),V=p(e=>e.initialize);(0,O.useEffect)(()=>V(),[V]),h(()=>void L(),{intervalMs:z?15e3:5e3}),(0,O.useEffect)(()=>{B&&L()},[B,L]);let H=v(P,F,s?.project===P?s.apps:null,e),U=H??[],W=l?.apps??{},G=e=>e.remote?void 0:W[e.key],K=U.length,q=U.filter(e=>e.status===`online`).length,J=K-q,Y=U.reduce((e,t)=>e+(G(t)?.cpu??t.cpu),0),X=U.reduce((e,t)=>e+(G(t)?.memory??t.memory),0),Z=I.filter(e=>e.status===`running`).length,Q=Y>80?`error`:Y>60?`warning`:`success`,$=X/1048576,te=$>2048?`error`:$>1024?`warning`:`info`;return(0,k.jsxs)(w,{spacing:3,children:[E&&(0,k.jsx)(x,{severity:`warning`,variant:`outlined`,children:E}),(0,k.jsx)(n,{container:!0,spacing:2.5,children:m||H===null?(0,k.jsx)(M,{}):(0,k.jsxs)(k.Fragment,{children:[(0,k.jsx)(n,{size:{xs:6,sm:3},children:(0,k.jsx)(a,{label:`Applications`,value:K===0?`0`:`${q}/${K}`,subtitle:K===0?`No apps yet`:J>0?`${J} offline`:`All online`,icon:(0,k.jsx)(d,{sx:{fontSize:28}}),color:K===0?`secondary`:J>0?`warning`:`success`,sx:{height:`100%`}})}),(0,k.jsx)(n,{size:{xs:6,sm:3},children:(0,k.jsx)(a,{label:`Stacks`,value:I.length>0?`${Z}/${I.length}`:`1`,subtitle:I.length>0?`${Z} running`:`Local`,icon:(0,k.jsx)(S,{sx:{fontSize:28}}),color:Z>0?`primary`:`secondary`,sx:{height:`100%`}})}),(0,k.jsx)(n,{size:{xs:6,sm:3},children:(0,k.jsx)(a,{label:`CPU Usage`,value:`${Y.toFixed(1)}%`,icon:(0,k.jsx)(o,{sx:{fontSize:28}}),color:Q,sx:{height:`100%`}})}),(0,k.jsx)(n,{size:{xs:6,sm:3},children:(0,k.jsx)(a,{label:`Memory`,value:T(X),icon:(0,k.jsx)(y,{sx:{fontSize:28}}),color:te,sx:{height:`100%`}})})]})}),U.length>0&&(0,k.jsxs)(g,{children:[(0,k.jsx)(u,{variant:`h6`,sx:{fontWeight:700,mb:2},children:`Application Status`}),(0,k.jsx)(j,{apps:U,activeStack:F})]})]})}export{N as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{t as n}from"./Grid-BZ7xhoHQ.js";import{t as r}from"./Switch-DGSAxQPM.js";import{s as i,t as a}from"./client-CGbBvy9k.js";import{Bt as o,Dn as s,Jt as c,M as l,Nt as u,P as d,Qn as f,Qt as p,St as m,Ut as h,Wn as g,_,_n as v,_t as y,dt as b,en as x,in as S,lt as C,nn as w,on as T,sn as E,tn as D,vn as O,yn as k,yt as A,zn as j,zt as M}from"./index-DiZbrwxT.js";import{i as N,s as P}from"./formatters-BqjL73N3.js";import F from"./react-apexcharts.esm-Dy0Fez42.js";import{n as I,t as L}from"./daemon-memory-CCPZ4cV_.js";var R=e(t(),1),z=f(),B=`omnitron_dashboards_v2`;function V(){return C(B,[])}function H(e){b(B,e)}var U={small:{xs:6,sm:4,md:3},medium:{xs:12,sm:6,md:4},large:{xs:12,md:6},full:{xs:12}};function W(e){let[t,n]=(0,R.useState)({status:null,apps:[],loading:!0,error:null});return(0,R.useEffect)(()=>{let e=!0;return(async()=>{try{let[t,r]=await Promise.all([i.status(),i.list()]);e&&n({status:t,apps:r,loading:!1,error:null})}catch(t){e&&n(e=>({...e,loading:!1,error:t?.message??`Failed to fetch`}))}})(),()=>{e=!1}},[e]),t}function G(e,t,n,r=60){let i=(0,R.useRef)([]);return(0,R.useEffect)(()=>{if(e.length===0)return;let t=Date.now(),a={};for(let t of e)a[t.name]=n===`cpu`?t.cpu:t.memory/1048576;i.current.push({time:t,values:a}),i.current.length>r&&(i.current=i.current.slice(-r))},[e,t,n,r]),i.current}function K({data:e}){let t=j();if(e.loading)return(0,z.jsx)(m,{variant:`rectangular`,height:120});if(!e.status)return(0,z.jsx)(v,{variant:`body2`,sx:{color:`text.secondary`},children:`Daemon offline`});let{status:n}=e,r=e.apps.filter(e=>e.status===`online`).length,i=[{label:`PID`,value:String(n.pid)},{label:`Version`,value:n.version},{label:`Uptime`,value:P(n.uptime)},{label:`Memory`,value:N(I(n))},{label:`Apps`,value:`${r} / ${e.apps.length}`}];return(0,z.jsxs)(M,{spacing:.75,children:[(0,z.jsxs)(M,{direction:`row`,spacing:1,sx:{alignItems:`center`,mb:.5},children:[(0,z.jsx)(E,{sx:{width:8,height:8,borderRadius:`50%`,bgcolor:t.palette.success.main}}),(0,z.jsx)(v,{variant:`caption`,sx:{fontWeight:600,color:`success.main`},children:`RUNNING`})]}),i.map(e=>(0,z.jsxs)(M,{direction:`row`,sx:{justifyContent:`space-between`},children:[(0,z.jsx)(v,{variant:`caption`,sx:{color:`text.secondary`},children:e.label}),(0,z.jsx)(v,{variant:`caption`,sx:{fontWeight:600},children:e.value})]},e.label))]})}function q({data:e}){let t=j();return e.loading?(0,z.jsx)(m,{variant:`rectangular`,height:100}):(0,z.jsxs)(M,{spacing:.5,children:[e.apps.map(e=>{let n=e.status===`online`?t.palette.success.main:e.status===`errored`||e.status===`crashed`?t.palette.error.main:t.palette.text.disabled;return(0,z.jsxs)(M,{direction:`row`,sx:{alignItems:`center`,justifyContent:`space-between`,py:.5},children:[(0,z.jsxs)(M,{direction:`row`,spacing:1,sx:{alignItems:`center`},children:[(0,z.jsx)(E,{sx:{width:6,height:6,borderRadius:`50%`,bgcolor:n}}),(0,z.jsx)(v,{variant:`body2`,sx:{fontWeight:500},children:e.name})]}),(0,z.jsxs)(M,{direction:`row`,spacing:1.5,sx:{alignItems:`center`},children:[e.cpu>0&&(0,z.jsxs)(v,{variant:`caption`,sx:{color:`text.secondary`},children:[e.cpu.toFixed(1),`%`]}),e.memory>0&&(0,z.jsx)(v,{variant:`caption`,sx:{color:`text.secondary`},children:N(e.memory)}),(0,z.jsx)(O,{label:e.status,size:`small`,sx:{height:18,fontSize:`0.6rem`,fontWeight:600,bgcolor:g(n,.12),color:n}})]})]},e.name)}),e.apps.length===0&&(0,z.jsx)(v,{variant:`caption`,sx:{color:`text.secondary`},children:e.error?`Could not read the app list`:`No applications configured`})]})}function J({data:e,refreshKey:t,metric:n}){let r=j(),i=G(e.apps,t,n),a=(0,R.useMemo)(()=>e.apps.map(e=>e.name),[e.apps]),o=(0,R.useMemo)(()=>a.map(e=>({name:e,data:i.map(t=>({x:t.time,y:Math.round((t.values[e]??0)*10)/10}))})),[a,i]),s=(0,R.useMemo)(()=>({chart:{background:`transparent`,toolbar:{show:!1},animations:{enabled:!0,easing:`linear`,dynamicAnimation:{speed:1e3}}},theme:{mode:`dark`},colors:[`#6366f1`,`#22d3ee`,`#f97316`,`#a78bfa`,`#22c55e`],grid:{borderColor:g(r.palette.divider,.3),strokeDashArray:3},xaxis:{type:`datetime`,labels:{style:{colors:r.palette.text.disabled,fontSize:`10px`},datetimeFormatter:{hour:`HH:mm`,minute:`HH:mm:ss`}},axisBorder:{show:!1},axisTicks:{show:!1}},yaxis:{labels:{style:{colors:r.palette.text.disabled,fontSize:`10px`},formatter:e=>n===`memory`?`${Math.round(e)}MB`:`${e.toFixed(1)}%`},min:0},stroke:{curve:`smooth`,width:2},fill:{type:`gradient`,gradient:{shadeIntensity:0,opacityFrom:.3,opacityTo:.05}},tooltip:{theme:`dark`,x:{format:`HH:mm:ss`}},legend:{labels:{colors:r.palette.text.secondary},fontSize:`11px`,position:`bottom`,offsetY:4}}),[r,n]);return e.loading?(0,z.jsx)(m,{variant:`rectangular`,height:200}):i.length<2?(0,z.jsx)(E,{sx:{display:`flex`,alignItems:`center`,justifyContent:`center`,height:200},children:(0,z.jsxs)(M,{spacing:1,sx:{alignItems:`center`},children:[(0,z.jsx)(v,{variant:`caption`,sx:{color:`text.secondary`},children:`Collecting data...`}),(0,z.jsx)(c,{sx:{width:120}})]})}):(0,z.jsx)(F,{type:`area`,height:200,options:s,series:o})}function Y({data:e,config:t}){let n=j(),r=t.metric??`total_apps`;if(e.loading)return(0,z.jsx)(m,{width:80,height:50});let i=`--`,a,o=n.palette.primary.main,s=e.apps.filter(e=>e.status===`online`).length,c=e.status?.totalCpu??e.apps.reduce((e,t)=>e+t.cpu,0),l=e.status?L(e.status):e.apps.reduce((e,t)=>e+t.memory,0);switch(r){case`total_apps`:i=e.apps.length,a=`Total Apps`;break;case`online_apps`:i=s,a=`Online`,o=s>0?n.palette.success.main:n.palette.error.main;break;case`errored_apps`:i=e.apps.filter(e=>e.status===`errored`||e.status===`crashed`).length,a=`Errored`,o=n.palette.error.main;break;case`total_cpu`:i=`${c.toFixed(1)}%`,a=`CPU`,o=c>80?n.palette.error.main:c>60?n.palette.warning.main:n.palette.success.main;break;case`total_memory`:i=N(l),a=`Memory`,o=n.palette.info.main;break;case`uptime`:i=e.status?P(e.status.uptime):`--`,a=`Uptime`,o=n.palette.success.main;break;case`restarts`:i=e.apps.reduce((e,t)=>e+t.restarts,0),a=`Restarts`,o=Number(i)>0?n.palette.warning.main:n.palette.text.disabled;break;default:a=`Unknown metric: ${r}`,o=n.palette.text.disabled}return(0,z.jsxs)(E,{sx:{textAlign:`center`,py:1.5},children:[(0,z.jsx)(v,{variant:`h3`,sx:{fontWeight:800,color:o,lineHeight:1.2},children:i}),(0,z.jsx)(v,{variant:`caption`,sx:{color:`text.secondary`,fontWeight:600,textTransform:`uppercase`,letterSpacing:.5},children:a})]})}function X(){let e=j(),[t,n]=(0,R.useState)(null),[r,i]=(0,R.useState)(!0);if((0,R.useEffect)(()=>{(async()=>{try{let e=await a.getSummary();n(e)}catch{n(null)}finally{i(!1)}})()},[]),r)return(0,z.jsx)(m,{variant:`rectangular`,height:80});let o=[{label:`Critical`,count:t?.bySeverity?.critical??0,color:e.palette.error.main},{label:`Warning`,count:t?.bySeverity?.warning??0,color:e.palette.warning.main},{label:`Info`,count:t?.bySeverity?.info??0,color:e.palette.info.main}];return(0,z.jsx)(M,{spacing:1,children:o.map(e=>(0,z.jsxs)(M,{direction:`row`,sx:{alignItems:`center`,justifyContent:`space-between`,py:.5,px:1,borderRadius:1,bgcolor:g(e.color,.06)},children:[(0,z.jsxs)(M,{direction:`row`,spacing:1,sx:{alignItems:`center`},children:[(0,z.jsx)(E,{sx:{width:8,height:8,borderRadius:`50%`,bgcolor:e.color}}),(0,z.jsx)(v,{variant:`body2`,sx:{fontWeight:500},children:e.label})]}),(0,z.jsx)(v,{variant:`subtitle2`,sx:{fontWeight:700,color:e.color},children:e.count})]},e.label))})}function Z({data:e}){let t=j(),n=e.apps.filter(e=>e.status===`errored`||e.status===`crashed`),r=e.apps.reduce((e,t)=>e+t.restarts,0);return e.loading?(0,z.jsx)(m,{variant:`rectangular`,height:80}):n.length===0&&r===0?(0,z.jsx)(E,{sx:{py:3,textAlign:`center`},children:(0,z.jsx)(v,{variant:`body2`,sx:{color:`text.secondary`},children:`No errors or restarts`})}):(0,z.jsxs)(M,{spacing:.5,children:[n.map(e=>(0,z.jsxs)(M,{direction:`row`,spacing:1,sx:{alignItems:`center`,py:.5,px:1,borderRadius:1,bgcolor:g(t.palette.error.main,.06)},children:[(0,z.jsx)(E,{sx:{width:6,height:6,borderRadius:`50%`,bgcolor:t.palette.error.main}}),(0,z.jsx)(v,{variant:`caption`,sx:{fontWeight:600},children:e.name}),(0,z.jsx)(v,{variant:`caption`,sx:{color:`text.secondary`},children:e.status})]},e.name)),r>0&&(0,z.jsxs)(v,{variant:`caption`,sx:{color:`warning.main`,pt:.5},children:[r,` total restart`,r===1?``:`s`,` across all apps`]})]})}function Q({panel:e,data:t,refreshKey:n}){switch(e.type){case`daemon-info`:return(0,z.jsx)(K,{data:t});case`app-grid`:return(0,z.jsx)(q,{data:t});case`cpu-chart`:return(0,z.jsx)(J,{data:t,refreshKey:n,metric:`cpu`});case`memory-chart`:return(0,z.jsx)(J,{data:t,refreshKey:n,metric:`memory`});case`stat`:return(0,z.jsx)(Y,{data:t,config:e.config});case`alert-summary`:return(0,z.jsx)(X,{});case`recent-errors`:return(0,z.jsx)(Z,{data:t});default:return(0,z.jsx)(v,{variant:`body2`,sx:{color:`text.secondary`},children:`Unknown panel type`})}}var $=[{value:`stat`,label:`Stat`,description:`Single metric value`,defaultSize:`small`},{value:`daemon-info`,label:`Daemon Info`,description:`Daemon process information`,defaultSize:`medium`},{value:`app-grid`,label:`App Status`,description:`Application status list`,defaultSize:`large`},{value:`cpu-chart`,label:`CPU Chart`,description:`Per-app CPU usage over time`,defaultSize:`large`},{value:`memory-chart`,label:`Memory Chart`,description:`Per-app memory usage over time`,defaultSize:`large`},{value:`alert-summary`,label:`Alerts`,description:`Active alerts by severity`,defaultSize:`medium`},{value:`recent-errors`,label:`Errors`,description:`Recent errors and restarts`,defaultSize:`medium`}],ee=[{value:`total_apps`,label:`Total Apps`},{value:`online_apps`,label:`Online Apps`},{value:`errored_apps`,label:`Errored Apps`},{value:`total_cpu`,label:`Apps' CPU`},{value:`total_memory`,label:`Apps' memory`},{value:`uptime`,label:`Daemon Uptime`},{value:`restarts`,label:`Total Restarts`}];function te(){return{id:crypto.randomUUID(),name:`Overview`,panels:[{id:crypto.randomUUID(),type:`stat`,title:`Online`,size:`small`,config:{metric:`online_apps`}},{id:crypto.randomUUID(),type:`stat`,title:`Errored`,size:`small`,config:{metric:`errored_apps`}},{id:crypto.randomUUID(),type:`stat`,title:`CPU`,size:`small`,config:{metric:`total_cpu`}},{id:crypto.randomUUID(),type:`stat`,title:`Memory`,size:`small`,config:{metric:`total_memory`}},{id:crypto.randomUUID(),type:`cpu-chart`,title:`CPU Usage`,size:`large`,config:{}},{id:crypto.randomUUID(),type:`memory-chart`,title:`Memory Usage`,size:`large`,config:{}},{id:crypto.randomUUID(),type:`app-grid`,title:`Applications`,size:`large`,config:{}},{id:crypto.randomUUID(),type:`daemon-info`,title:`Daemon`,size:`medium`,config:{}},{id:crypto.randomUUID(),type:`recent-errors`,title:`Errors & Restarts`,size:`medium`,config:{}}],refreshInterval:5e3}}function ne({open:e,onClose:t,onAdd:n}){let[r,i]=(0,R.useState)(`stat`),[a,o]=(0,R.useState)(``),[s,c]=(0,R.useState)(`online_apps`),[l,d]=(0,R.useState)(`small`);return(0,R.useEffect)(()=>{let e=$.find(e=>e.value===r);e&&d(e.defaultSize)},[r]),(0,z.jsxs)(w,{open:e,onClose:t,maxWidth:`xs`,fullWidth:!0,children:[(0,z.jsx)(p,{sx:{fontWeight:700},children:`Add Panel`}),(0,z.jsx)(x,{children:(0,z.jsxs)(M,{spacing:2.5,sx:{mt:1},children:[(0,z.jsx)(u,{select:!0,label:`Panel Type`,value:r,onChange:e=>i(e.target.value),size:`small`,fullWidth:!0,children:$.map(e=>(0,z.jsx)(h,{value:e.value,children:(0,z.jsxs)(M,{children:[(0,z.jsx)(v,{variant:`body2`,sx:{fontWeight:600},children:e.label}),(0,z.jsx)(v,{variant:`caption`,sx:{color:`text.secondary`},children:e.description})]})},e.value))}),(0,z.jsx)(u,{label:`Title`,value:a,onChange:e=>o(e.target.value),size:`small`,fullWidth:!0,placeholder:`Optional custom title`}),r===`stat`&&(0,z.jsx)(u,{select:!0,label:`Metric`,value:s,onChange:e=>c(e.target.value),size:`small`,fullWidth:!0,children:ee.map(e=>(0,z.jsx)(h,{value:e.value,children:e.label},e.value))}),(0,z.jsxs)(u,{select:!0,label:`Size`,value:l,onChange:e=>d(e.target.value),size:`small`,fullWidth:!0,children:[(0,z.jsx)(h,{value:`small`,children:`Small (1/4 width)`}),(0,z.jsx)(h,{value:`medium`,children:`Medium (1/3 width)`}),(0,z.jsx)(h,{value:`large`,children:`Large (1/2 width)`}),(0,z.jsx)(h,{value:`full`,children:`Full width`})]})]})}),(0,z.jsxs)(D,{children:[(0,z.jsx)(k,{onClick:t,size:`small`,children:`Cancel`}),(0,z.jsx)(k,{variant:`contained`,onClick:()=>{let e={};r===`stat`&&(e.metric=s),n({id:crypto.randomUUID(),type:r,title:a||$.find(e=>e.value===r)?.label||`Panel`,size:l,config:e}),o(``),i(`stat`),t()},size:`small`,children:`Add`})]})]})}function re(){let e=j(),[t,i]=(0,R.useState)(()=>V()),[a,c]=(0,R.useState)(null),[u,f]=(0,R.useState)(!1),[p,m]=(0,R.useState)(!0),[h,b]=(0,R.useState)(0);(0,R.useEffect)(()=>{if(t.length===0){let e=te();i([e]),c(e.id),H([e])}else a||c(t[0].id)},[t,a]);let x=t.find(e=>e.id===a);(0,R.useEffect)(()=>{if(!p||!x)return;let e=setInterval(()=>b(e=>e+1),x.refreshInterval);return()=>clearInterval(e)},[p,x]);let C=W(h),w=(0,R.useCallback)(e=>{i(t=>{let n=t.map(t=>t.id===a?e(t):t);return H(n),n})},[a]),E=e=>{w(t=>({...t,panels:[...t.panels,e]}))},D=e=>{w(t=>({...t,panels:t.panels.filter(t=>t.id!==e)}))};return(0,z.jsxs)(M,{spacing:2.5,children:[C.error&&(0,z.jsx)(A,{children:C.error}),(0,z.jsx)(y,{links:[{name:`Dashboard Builder`}],action:(0,z.jsxs)(M,{direction:`row`,spacing:1,sx:{alignItems:`center`},children:[(0,z.jsx)(v,{variant:`caption`,sx:{color:`text.secondary`},children:`Auto-refresh`}),(0,z.jsx)(r,{size:`small`,checked:p,onChange:(e,t)=>m(t)}),(0,z.jsx)(o,{title:`Refresh now`,children:(0,z.jsx)(s,{size:`small`,onClick:()=>b(e=>e+1),children:(0,z.jsx)(d,{})})})]})}),(0,z.jsxs)(M,{direction:`row`,spacing:1,sx:{alignItems:`center`,flexWrap:`wrap`},children:[t.map(e=>(0,z.jsx)(O,{label:e.name,onClick:()=>c(e.id),color:e.id===a?`primary`:`default`,variant:e.id===a?`filled`:`outlined`,size:`small`},e.id)),t.length>1&&(0,z.jsx)(k,{size:`small`,color:`error`,onClick:()=>{if(!a||t.length<=1)return;let e=t.filter(e=>e.id!==a);i(e),c(e[0]?.id??null),H(e)},sx:{textTransform:`none`,fontSize:`0.75rem`},children:`Delete`}),(0,z.jsx)(k,{size:`small`,startIcon:(0,z.jsx)(l,{}),onClick:()=>{let e={id:crypto.randomUUID(),name:`Dashboard ${t.length+1}`,panels:[],refreshInterval:5e3},n=[...t,e];i(n),c(e.id),H(n)},sx:{textTransform:`none`,fontSize:`0.75rem`},children:`New`})]}),x&&(0,z.jsxs)(n,{container:!0,spacing:2.5,children:[x.panels.map(t=>(0,z.jsx)(n,{size:U[t.size]??U.medium,children:(0,z.jsxs)(T,{variant:`outlined`,sx:{height:`100%`,borderRadius:2,transition:`box-shadow 0.2s`,"&:hover":{boxShadow:`0 0 0 1px ${g(e.palette.primary.main,.2)}`}},children:[(0,z.jsxs)(M,{direction:`row`,sx:{alignItems:`center`,justifyContent:`space-between`,px:2,pt:1.5,pb:0},children:[(0,z.jsx)(v,{variant:`caption`,sx:{fontWeight:700,color:`text.secondary`,textTransform:`uppercase`,letterSpacing:.5},children:t.title}),(0,z.jsx)(s,{size:`small`,onClick:()=>D(t.id),sx:{opacity:.4,"&:hover":{opacity:1}},children:(0,z.jsx)(_,{sx:{fontSize:14}})})]}),(0,z.jsx)(S,{sx:{pt:1,pb:2,"&:last-child":{pb:2}},children:(0,z.jsx)(Q,{panel:t,data:C,refreshKey:h})})]})},t.id)),(0,z.jsx)(n,{size:{xs:12,sm:6,md:3},children:(0,z.jsx)(T,{variant:`outlined`,sx:{height:`100%`,minHeight:120,display:`flex`,alignItems:`center`,justifyContent:`center`,cursor:`pointer`,borderStyle:`dashed`,borderRadius:2,transition:`all 0.2s`,"&:hover":{bgcolor:`action.hover`,borderColor:`primary.main`}},onClick:()=>f(!0),children:(0,z.jsxs)(M,{spacing:.5,sx:{alignItems:`center`},children:[(0,z.jsx)(l,{sx:{fontSize:20,color:`text.disabled`}}),(0,z.jsx)(v,{variant:`caption`,sx:{color:`text.secondary`,fontWeight:600},children:`Add Panel`})]})})})]}),(0,z.jsx)(ne,{open:u,onClose:()=>f(!1),onAdd:E})]})}export{re as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{_ as n,n as r,v as i}from"./client-CGbBvy9k.js";import{Nt as a,On as o,Qn as s,Qt as c,Ut as l,_n as u,at as d,b as f,ct as p,en as m,ln as h,nn as g,nr as _,sn as v,tn as y,vn as b,yn as x,zt as S}from"./index-DiZbrwxT.js";import{a as C,l as w,o as T,p as E,r as D}from"./release-bits-Dj4EOhhb.js";var O=e(t(),1);function k(e){let t=/-\d{12}-([0-9a-f]{8})-([0-9a-f]{8})$/.exec(e);return{project:t?.[1]??null,omni:t?.[2]??null}}function A(e){let t=k(e.id);return{id:e.id,project:e.project??e.id.replace(/-\d{12}-[0-9a-f]{8}-[0-9a-f]{8}$/,``),complete:e.complete??!1,builtAt:e.builtAt??null,builtBy:e.builtBy??null,builtWith:e.builtWith??null,projectCommit:e.projectCommit??t.project,omniCommit:e.omniCommit??t.omni,projectRepo:e.projectRepo??null,omniRepo:e.omniRepo??null,onRemote:e.onRemote??{project:null,omni:null},gates:e.gates??{total:0,passed:0,failed:0,notRun:0},gateList:e.gateList??[],artifacts:e.artifacts??{count:0,bytes:0,apps:[],failed:[]},statics:e.statics??null,bytes:e.bytes??0,keptSource:e.keptSource??!1,machine:e.machine??null,verified:e.verified??[]}}function j(e){return{...e,history:e.history??[],gates:e.gates??[],request:e.request??{project:`(unknown)`}}}var M={async list(){let e=await i.list();return{root:e?.root??``,releases:(e?.releases??[]).map(A)}},async get(e){let t=await i.get({id:e});return{...A(t),manifest:t.manifest??null,logs:t.logs??[],root:t.root??``,attestations:t.attestations??[]}},async builds(){return(await i.builds()??[]).map(j)},async preflight(){let e=await i.preflight();return{root:e.root,canBuild:e.canBuild,missingTools:e.missingTools??[],path:e.path??[],load:Array.isArray(e.load)&&e.load.length===3?e.load:null,cpus:typeof e.cpus==`number`&&e.cpus>0?e.cpus:null}},async deployments(e=200){let[t,n]=await Promise.all([r.available().catch(()=>null),i.deployments({limit:e})]),a=(n??[]).map(e=>({...e,releaseUnnamed:e.releaseUnnamed??!1}));return E(t?.available===!0,a)}},N=s();function P({open:e,onClose:t,project:r,release:i,stack:s}){let E=_(),k=p(e=>e.stacksByProject),A=p(e=>e.fetchStacks),j=p(e=>e.startStack),P=k[r]??[],[F,I]=(0,O.useState)([]),[L,R]=(0,O.useState)(``),[z,B]=(0,O.useState)(s??``),[V,H]=(0,O.useState)(null),[U,W]=(0,O.useState)(!1),[G,K]=(0,O.useState)(!1),[q,J]=(0,O.useState)(null);(0,O.useEffect)(()=>{e&&P.length===0&&A(r)},[e,r,P.length,A]),(0,O.useEffect)(()=>{if(!e||i)return;let t=!0;return M.list().then(({releases:e})=>{if(!t)return;let n=e.filter(e=>e.project===r&&e.complete);I(n),R(e=>e||n[0]?.id||``)}).catch(e=>{t&&J(`The release store could not be read: ${e.message}`)}),()=>{t=!1}},[e,i,r]);let Y=i??F.find(e=>e.id===L)??null,X=Y?.id??``;(0,O.useEffect)(()=>{e&&(B(s??``),H(null),J(null))},[e,s,i?.id]),(0,O.useEffect)(()=>{if(H(null),!e||!X||!z)return;let t=!0;return W(!0),n.checkRelease({project:r,stack:z,release:X}).then(e=>{t&&H(e)}).catch(e=>{t&&H({ok:!1,because:`The daemon could not answer: ${e.message}`})}).finally(()=>{t&&W(!1)}),()=>{t=!1}},[e,r,z,X]);let Z=(0,O.useCallback)(async()=>{if(Y&&z){K(!0),J(null);try{await j(r,z,{release:Y.id});let e=p.getState().error;if(e){J(e),K(!1);return}t(),E(`/stacks/${z}`)}catch(e){if(d(e)){t(),E(`/stacks/${z}`);return}J(e.message)}finally{K(!1)}}},[Y,z,r,j,E,t]),Q=P.find(e=>e.name===z)?.config?.release?.mode===`required`;return(0,N.jsxs)(g,{open:e,onClose:G?void 0:t,maxWidth:`sm`,fullWidth:!0,children:[(0,N.jsx)(c,{children:`Deploy a release`}),(0,N.jsx)(m,{children:(0,N.jsxs)(S,{spacing:2.5,sx:{mt:1},children:[!i&&(0,N.jsxs)(a,{select:!0,label:`Release`,value:L,onChange:e=>R(e.target.value),size:`small`,fullWidth:!0,disabled:G,children:[F.length===0&&(0,N.jsxs)(l,{disabled:!0,value:``,children:[`Nothing has been built for `,r,` yet`]}),F.map(e=>(0,N.jsx)(l,{value:e.id,children:(0,N.jsxs)(S,{direction:`row`,spacing:1,sx:{width:`100%`,alignItems:`center`},children:[(0,N.jsx)(u,{variant:`body2`,sx:{fontFamily:`monospace`},children:e.id}),(0,N.jsx)(v,{sx:{flex:1}}),(0,N.jsx)(C,{release:e,variant:`caption`}),e.statics&&(0,N.jsx)(b,{label:e.statics.stack,size:`small`,variant:`outlined`,sx:{height:18,fontSize:10}})]})},e.id))]}),Y?(0,N.jsxs)(v,{children:[(0,N.jsx)(u,{variant:`body2`,sx:{fontFamily:`monospace`,fontWeight:600},children:Y.id}),(0,N.jsxs)(S,{direction:`row`,spacing:1.5,sx:{alignItems:`center`,mt:.75},children:[(0,N.jsx)(D,{projectCommit:Y.projectCommit,omniCommit:Y.omniCommit,onRemote:Y.onRemote,project:Y.project}),(0,N.jsx)(b,{size:`small`,variant:`outlined`,label:`${Y.artifacts.count} app${Y.artifacts.count===1?``:`s`}`,sx:{height:20,fontSize:11}}),Y.statics&&(0,N.jsx)(b,{size:`small`,variant:`outlined`,label:`statics: ${Y.statics.stack}`,sx:{height:20,fontSize:11}})]})]}):(0,N.jsx)(h,{severity:`warning`,children:`No release chosen.`}),(0,N.jsxs)(a,{select:!0,label:`Stack`,value:z,onChange:e=>B(e.target.value),size:`small`,fullWidth:!0,disabled:G,helperText:`A release is deployed to a remote or cluster stack; a local stack runs the working tree.`,children:[P.length===0&&(0,N.jsx)(l,{disabled:!0,value:``,children:`This project has no stacks`}),P.map(e=>(0,N.jsx)(l,{value:e.name,disabled:e.type===`local`,children:(0,N.jsxs)(S,{direction:`row`,spacing:1,sx:{alignItems:`center`,width:`100%`},children:[(0,N.jsx)(u,{variant:`body2`,children:e.name}),(0,N.jsx)(b,{label:e.type,size:`small`,variant:`outlined`,sx:{height:18,fontSize:10}}),e.config?.release?.mode===`required`&&(0,N.jsx)(b,{label:`releases only`,size:`small`,color:`info`,variant:`outlined`,sx:{height:18,fontSize:10}}),(0,N.jsx)(v,{sx:{flex:1}}),(0,N.jsx)(u,{variant:`caption`,sx:{color:`text.secondary`},children:e.status})]})},e.name))]}),Y&&Y.gates.total>0&&(0,N.jsxs)(v,{children:[(0,N.jsx)(u,{variant:`caption`,sx:{color:`text.secondary`},children:w(Y.gateList)}),(0,N.jsx)(v,{sx:{mt:.5},children:(0,N.jsx)(T,{gates:Y.gateList})})]}),U&&(0,N.jsxs)(S,{direction:`row`,spacing:1,sx:{alignItems:`center`},children:[(0,N.jsx)(o,{size:16}),(0,N.jsx)(u,{variant:`body2`,sx:{color:`text.secondary`},children:`Asking the daemon whether it would take this release…`})]}),V&&(0,N.jsx)(h,{severity:V.ok?`success`:`error`,children:(0,N.jsx)(u,{variant:`body2`,sx:{whiteSpace:`pre-wrap`},children:V.because})}),Q&&(0,N.jsxs)(u,{variant:`caption`,sx:{color:`text.secondary`},children:[z,` takes releases only — its plain Start is refused by the daemon on purpose.`]}),q&&(0,N.jsx)(h,{severity:`error`,children:(0,N.jsx)(u,{variant:`body2`,sx:{whiteSpace:`pre-wrap`},children:q})})]})}),(0,N.jsxs)(y,{children:[(0,N.jsx)(x,{onClick:t,size:`small`,disabled:G,children:`Cancel`}),(0,N.jsx)(x,{variant:`contained`,size:`small`,startIcon:G?(0,N.jsx)(o,{size:14,color:`inherit`}):(0,N.jsx)(f,{}),disabled:!Y||!z||G||U||V?.ok!==!0,onClick:Z,children:G?`Deploying…`:`Deploy`})]})]})}export{M as n,P as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{_ as n,l as r}from"./client-CGbBvy9k.js";import{Dn as i,Jt as a,M as o,Nt as s,P as c,Qn as l,Qt as u,Ut as d,_n as f,_t as p,b as m,en as h,er as g,ft as _,jt as v,nn as y,nt as b,qt as x,sn as S,tn as C,vn as w,vt as T,yn as E,zt as D}from"./index-DiZbrwxT.js";import{r as O,t as k}from"./formatters-BqjL73N3.js";import{t as A}from"./settled-pair-C7SjZuns.js";var j=e(t(),1),M=l(),N={pending:{label:`Connecting`,tone:`default`},transferring:{label:`Transferring artifact`,tone:`info`},extracting:{label:`Unpacking`,tone:`info`},installing:{label:`Installing dependencies on the node`,tone:`info`},restarting:{label:`Starting`,tone:`info`},verifying:{label:`Verifying`,tone:`info`},success:{label:`Deployed`,tone:`success`},failed:{label:`Failed`,tone:`error`}};function P(e){return e!==`success`&&e!==`failed`}function F(e,t=Date.now()){let n=Math.max(0,Math.round((t-new Date(e).getTime())/1e3));if(n<10)return`just now`;if(n<60)return`${n}s ago`;let r=Math.round(n/60);return r<60?`${r}m ago`:`${Math.round(r/60)}h ago`}function I({record:e,now:t}){let n=N[e.status]??{label:e.status,tone:`default`},r=P(e.status);return(0,M.jsxs)(S,{sx:{py:1},children:[(0,M.jsxs)(D,{direction:`row`,spacing:1,sx:{mb:.5,alignItems:`center`,flexWrap:`wrap`,rowGap:.5},children:[(0,M.jsx)(f,{variant:`body2`,sx:{fontWeight:600,minWidth:0},children:e.app}),(0,M.jsx)(f,{variant:`caption`,sx:{color:`text.secondary`,fontFamily:`monospace`},children:e.node}),(0,M.jsx)(S,{sx:{flex:1}}),(0,M.jsx)(w,{size:`small`,variant:`filled`,color:n.tone,label:n.label,sx:{fontWeight:600}}),(0,M.jsx)(f,{variant:`caption`,sx:{color:`text.secondary`},children:F(e.at,t)})]}),(0,M.jsx)(a,{variant:r?`indeterminate`:`determinate`,value:e.status===`success`?100:e.progress,color:n.tone==="default"?`inherit`:n.tone,sx:{height:4,borderRadius:2}}),e.message?(0,M.jsx)(f,{variant:`caption`,sx:{display:`block`,mt:.5,color:e.status===`failed`?`error.main`:`text.secondary`,wordBreak:`break-word`},children:e.message}):null]})}function L({records:e,now:t=Date.now()}){if(e.length===0)return null;let n=e.filter(e=>P(e.status)).length;return(0,M.jsxs)(S,{sx:{mb:3},children:[(0,M.jsxs)(D,{direction:`row`,spacing:1,sx:{mb:1,alignItems:`center`},children:[(0,M.jsx)(f,{variant:`subtitle2`,sx:{fontWeight:700},children:`Deployment progress`}),n>0?(0,M.jsx)(w,{size:`small`,color:`info`,variant:`filled`,label:`${n} in flight`,sx:{fontWeight:600}}):null]}),(0,M.jsx)(S,{sx:{border:1,borderColor:`divider`,borderRadius:1,px:2,py:.5},children:e.map(e=>(0,M.jsx)(I,{record:e,now:t},`${e.node}|${e.app}`))})]})}function R(e){return e.completedAt?new Date(e.completedAt).getTime()-new Date(e.startedAt).getTime():null}var z={success:`success`,failed:`error`,deploying:`info`,rolled_back:`warning`},B={success:`Success`,failed:`Failed`,deploying:`Deploying`,rolled_back:`Rolled Back`},V=[{value:`all-at-once`,label:`All at Once`},{value:`rolling`,label:`Rolling`},{value:`blue-green`,label:`Blue/Green`},{value:`canary`,label:`Canary`}];function H({open:e,onClose:t,onDeploy:n,apps:r}){let[i,a]=(0,j.useState)(``),[o,c]=(0,j.useState)(``),[l,f]=(0,j.useState)(`all-at-once`);return(0,M.jsxs)(y,{open:e,onClose:t,maxWidth:`xs`,fullWidth:!0,children:[(0,M.jsx)(u,{children:`New Deployment`}),(0,M.jsx)(h,{children:(0,M.jsxs)(D,{spacing:2.5,sx:{mt:1},children:[(0,M.jsx)(s,{select:!0,label:`Application`,value:i,onChange:e=>a(e.target.value),size:`small`,fullWidth:!0,children:r.length>0?r.map(e=>(0,M.jsx)(d,{value:e,children:e},e)):(0,M.jsx)(d,{disabled:!0,value:``,children:`No applications available`})}),(0,M.jsx)(s,{label:`Version`,placeholder:`e.g. 1.2.0`,value:o,onChange:e=>c(e.target.value),size:`small`,fullWidth:!0}),(0,M.jsx)(s,{select:!0,label:`Strategy`,value:l,onChange:e=>f(e.target.value),size:`small`,fullWidth:!0,children:V.map(e=>(0,M.jsx)(d,{value:e.value,children:e.label},e.value))})]})}),(0,M.jsxs)(C,{children:[(0,M.jsx)(E,{onClick:t,size:`small`,children:`Cancel`}),(0,M.jsx)(E,{variant:`contained`,onClick:()=>{i&&o&&(n(i,o,l),a(``),c(``),f(`all-at-once`),t())},size:`small`,disabled:!i||!o,startIcon:(0,M.jsx)(m,{}),children:`Deploy`})]})]})}function U(){let[e,t]=(0,j.useState)(!1),{data:a,loading:s,error:l,refresh:u}=b(async()=>{let{first:e,second:t,partialFailure:n}=await A([r.getHistory(),r.listDeployableApps()],[[],[]]);return{deployments:e,availableApps:t,partialFailure:n}},{intervalMs:15e3}),{data:d}=b(()=>n.getDeployProgress(),{intervalMs:3e3}),[m,h]=(0,j.useState)(null),[y,S]=(0,j.useState)(0),[C,N]=(0,j.useState)(25),P=a?.deployments??[],F=a?.availableApps??[],I=a?.partialFailure??null,V=async(e,t,n)=>{try{let i=_.getState().user?.username??`unknown`;await r.deployApp({app:e,version:t,strategy:n,deployedBy:i}),u()}catch(e){h(e?.message??`Failed to start deployment`)}},U=P.slice(y*C,y*C+C);return(0,M.jsxs)(D,{spacing:3,children:[(0,M.jsx)(p,{links:[{name:`Deployments`}],action:(0,M.jsxs)(D,{direction:`row`,spacing:1,children:[(0,M.jsx)(i,{size:`small`,onClick:u,title:`Refresh`,children:(0,M.jsx)(c,{})}),(0,M.jsx)(E,{variant:`contained`,size:`small`,startIcon:(0,M.jsx)(o,{}),onClick:()=>t(!0),children:`Deploy`})]})}),m&&(0,M.jsx)(T,{closable:!0,severity:`warning`,variant:`outlined`,onClose:()=>h(null),children:m}),(0,M.jsx)(L,{records:d??[]}),(0,M.jsxs)(f,{variant:`caption`,sx:{color:`text.secondary`},children:[`Apps deployed one at a time. A stack deployed from a release is on`,` `,(0,M.jsx)(x,{component:g,to:`/releases`,children:`Releases`}),` `,`and on its stack's page.`]}),(0,M.jsx)(v,{columns:[{key:`app`,header:`App`,render:e=>(0,M.jsx)(f,{variant:`body2`,sx:{fontWeight:600},children:e.app})},{key:`version`,header:`Version`,render:e=>(0,M.jsx)(f,{variant:`body2`,sx:{fontFamily:`monospace`,fontSize:13},children:e.version})},{key:`previousVersion`,header:`Previous`,render:e=>(0,M.jsx)(f,{variant:`caption`,sx:{color:`text.secondary`,fontFamily:`monospace`,fontSize:12},children:e.previousVersion||`--`})},{key:`strategy`,header:`Strategy`,render:e=>(0,M.jsx)(w,{label:e.strategy,size:`small`,variant:`outlined`,sx:{textTransform:`capitalize`,fontSize:11}})},{key:`status`,header:`Status`,render:e=>(0,M.jsx)(w,{label:B[e.status]??e.status,size:`small`,color:z[e.status]??`default`,variant:`filled`,sx:{fontWeight:600}})},{key:`startedAt`,header:`Started`,render:e=>(0,M.jsx)(f,{variant:`caption`,sx:{color:`text.secondary`},children:k(e.startedAt)})},{key:`duration`,header:`Duration`,render:e=>{let t=R(e);return(0,M.jsx)(f,{variant:`caption`,sx:{fontFamily:`monospace`},children:t===null?`--`:O(t)})}},{key:`deployedBy`,header:`Deployed By`,render:e=>(0,M.jsx)(f,{variant:`caption`,sx:{color:`text.secondary`},children:e.deployedBy??`--`})}],data:U,total:P.length,loading:s,loadError:l??I??null,emptyMessage:`No app has been deployed one at a time`,rowKey:e=>e.id,page:y,pageSize:C,onPageChange:S,onPageSizeChange:e=>{N(e),S(0)},dense:!0}),(0,M.jsx)(H,{open:e,onClose:()=>t(!1),onDeploy:V,apps:F})]})}export{U as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{$t as n,B as r,Bt as i,Ct as a,Dn as o,Dt as s,On as c,P as l,Qn as u,Qt as d,V as f,_n as p,_t as ee,b as m,ct as h,en as g,er as _,in as v,j as y,nn as b,nr as x,nt as S,on as C,ot as te,rr as w,rt as T,sn as E,st as ne,tn as re,vn as D,vt as O,y as k,yn as A,yt as ie,zt as j}from"./index-DiZbrwxT.js";import{s as M}from"./formatters-BqjL73N3.js";import{a as N,f as P,o as F}from"./release-bits-Dj4EOhhb.js";import{n as I,t as ae}from"./deploy-release-dialog-D6C-XcKY.js";import{n as L,r as R,t as z}from"./sync-reading-C3PnJ7AX.js";var B=e(t(),1),V=u();function H({project:e,stack:t,requiresRelease:n,local:r,onDeploy:a}){let{data:o,error:s}=S(async()=>{let[e,t]=await Promise.all([I.list(),I.deployments(200)]);return{releases:e.releases,deployments:t}},{intervalMs:2e4,enabled:!r}),c=(0,B.useMemo)(()=>o?.deployments.known?o.deployments.deployments.find(n=>n.project===e&&n.stack===t)??null:null,[o?.deployments,e,t]),l=o&&!o.deployments.known?o.deployments.why:null,u=(0,B.useMemo)(()=>c?.release?(o?.releases??[]).find(e=>e.id===c.release)??null:null,[o?.releases,c?.release]),d=(0,B.useMemo)(()=>(o?.releases??[]).find(t=>t.project===e&&t.complete)??null,[o?.releases,e]),f=d&&c?.release&&d.id!==c.release;return r?null:(0,V.jsx)(C,{variant:`outlined`,sx:{mb:2},children:(0,V.jsxs)(v,{children:[(0,V.jsxs)(j,{direction:`row`,spacing:1.5,sx:{mb:1,alignItems:`center`},children:[(0,V.jsx)(p,{variant:`overline`,sx:{color:`text.secondary`,fontSize:`0.65rem`},children:`Release`}),n&&(0,V.jsx)(i,{title:`This stack's config says release.mode = required: a plain Start is refused, deliberately.`,arrow:!0,children:(0,V.jsx)(D,{label:`releases only`,size:`small`,color:`info`,variant:`outlined`,sx:{height:18,fontSize:10}})}),(0,V.jsx)(E,{sx:{flex:1}}),(0,V.jsx)(A,{size:`small`,variant:`contained`,startIcon:(0,V.jsx)(m,{}),onClick:a,children:`Deploy release…`})]}),s&&(0,V.jsxs)(p,{variant:`caption`,sx:{color:`warning.main`},children:[`The release store could not be read — `,s]}),l&&!s&&(0,V.jsxs)(p,{variant:`body2`,sx:{color:`warning.main`},children:[`Which release this stack runs is unknown — `,l,`.`]}),o&&!c&&!l&&!s&&(0,V.jsx)(p,{variant:`body2`,sx:{color:`text.secondary`},children:`No recorded deployment of this stack yet.`}),c&&(0,V.jsxs)(j,{spacing:.75,children:[(0,V.jsxs)(j,{direction:`row`,spacing:1.5,sx:{alignItems:`center`,flexWrap:`wrap`},children:[c.release?(0,V.jsx)(p,{component:_,to:`/releases/${c.release}`,variant:`body2`,sx:{fontFamily:`monospace`,fontWeight:600,textDecoration:`none`,color:`text.primary`,"&:hover":{color:`primary.main`}},children:c.release}):c.releaseUnnamed?(0,V.jsx)(i,{title:`A release went out, and this row cannot name it — it was written before the audit trail flattened that field`,arrow:!0,children:(0,V.jsx)(D,{label:`a release, name not recorded`,size:`small`,variant:`outlined`,sx:{height:20,fontSize:11}})}):(0,V.jsx)(i,{title:`Started from the master's working tree — no release named`,arrow:!0,children:(0,V.jsx)(D,{label:`working tree`,size:`small`,color:`warning`,variant:`outlined`,sx:{height:20,fontSize:11}})}),u&&(0,V.jsx)(N,{release:u}),u&&(0,V.jsx)(F,{gates:u.gateList,size:8,columns:11})]}),u&&(0,V.jsx)(p,{variant:`caption`,sx:{color:(()=>{let e=u.verified.find(e=>e.stack===t);return e?e.passed===e.total?`success.main`:`warning.main`:`text.secondary`})()},children:(()=>{let e=u.verified.find(e=>e.stack===t);return e?`verified here: ${e.passed} of ${e.total} probes passed, measured ${P(e.at)}`:`not verified on this stack — its probes have not been run against this release`})()}),(0,V.jsxs)(p,{variant:`caption`,sx:{color:`text.secondary`},children:[`last deployed `,P(c.at),` · `,c.source??`unknown`,c.actorId?` · ${c.actorId}`:``,c.projectCommit?` · ${e} ${c.projectCommit}`:``,c.omniCommit?` + omni ${c.omniCommit}`:``]}),f&&d&&(0,V.jsxs)(j,{direction:`row`,spacing:1,sx:{alignItems:`center`},children:[(0,V.jsx)(D,{label:`newer release available`,size:`small`,color:`info`,variant:`outlined`,sx:{height:20,fontSize:11}}),(0,V.jsx)(p,{component:_,to:`/releases/${d.id}`,variant:`caption`,sx:{fontFamily:`monospace`,color:`text.secondary`,textDecoration:`none`},children:d.id}),(0,V.jsxs)(p,{variant:`caption`,sx:{color:`text.secondary`},children:[`built `,P(d.builtAt)]})]})]})]})})}var U={running:`#22c55e`,starting:`#eab308`,stopping:`#eab308`,degraded:`#f97316`,error:`#ef4444`,stopped:`#6b7280`};function W(){let{name:e}=w(),t=x(),i=te(),u=ne(),S=h(e=>e.fetchStacks),j=h(e=>e.startStack),N=h(e=>e.stopStack),P=h(e=>e.deleteStack),F=h(e=>e.error),I=h(e=>e.clearError),L=h(e=>e.pendingOps),[R,z]=(0,B.useState)(!1),[W,J]=(0,B.useState)(!1),Y=u.find(t=>t.name===e),X=i&&e?L[`${i}/${e}`]??null:null;(0,B.useEffect)(()=>{i&&S(i)},[i,S]);let se=Object.keys(L).length>0;T(()=>void(i&&S(i)),{intervalMs:se?3e3:1e4,enabled:!!i});let ce=(0,B.useCallback)(async()=>{i&&e&&await j(i,e)},[i,e,j]),le=(0,B.useCallback)(async()=>{i&&e&&await N(i,e)},[i,e,N]),ue=(0,B.useCallback)(async()=>{if(i&&e){try{await P(i,e),t(`/stacks`)}catch{}z(!1)}},[i,e,P,t]);if(!Y)return(0,V.jsx)(s,{children:(0,V.jsxs)(O,{severity:`warning`,children:[`Stack "`,e,`" not found.`,` `,(0,V.jsx)(A,{size:`small`,onClick:()=>t(`/stacks`),children:`Back to Stacks`})]})});let de=[{id:`name`,label:`App`,render:e=>(0,V.jsx)(E,{sx:{fontWeight:600},children:e.name})},{id:`status`,label:`Status`,render:e=>(0,V.jsx)(D,{label:e.status,size:`small`,color:e.status===`online`?`success`:e.status===`crashed`||e.status===`errored`?`error`:`default`,sx:{height:18,fontSize:`0.6rem`}})},{id:`pid`,label:`PID`,render:e=>(0,V.jsx)(E,{sx:{fontFamily:`monospace`,fontSize:`0.8rem`},children:e.pid??`—`})},{id:`instances`,label:`Instances`,render:e=>e.instances},{id:`uptime`,label:`Uptime`,render:e=>(0,V.jsx)(E,{sx:{fontFamily:`monospace`,fontSize:`0.8rem`},children:e.uptime>0?M(e.uptime):`—`})}],fe=[{id:`host`,label:`Host`,render:e=>(0,V.jsxs)(E,{sx:{fontFamily:`monospace`,fontSize:`0.8rem`},children:[e.host,`:`,e.port,e.label&&(0,V.jsxs)(p,{component:`span`,variant:`caption`,sx:{ml:1,color:`text.secondary`},children:[`(`,e.label,`)`]})]})},{id:`role`,label:`Role`,render:e=>(0,V.jsx)(D,{label:e.role,size:`small`,sx:{height:18,fontSize:`0.6rem`}})},{id:`daemonRole`,label:`Daemon`,render:e=>(0,V.jsx)(D,{label:e.daemonRole,size:`small`,color:e.daemonRole===`master`?`primary`:`default`,sx:{height:18,fontSize:`0.6rem`}})},{id:`connected`,label:`Status`,render:e=>(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(E,{component:`span`,sx:{display:`inline-block`,width:8,height:8,borderRadius:`50%`,bgcolor:e.connected?`#22c55e`:`#ef4444`,mr:.5}}),e.connected?`Connected`:`Disconnected`]})},{id:`lastSeen`,label:`Last Seen`,render:e=>(0,V.jsx)(E,{sx:{fontFamily:`monospace`,fontSize:`0.75rem`},children:e.lastSeen?new Date(e.lastSeen).toLocaleTimeString():`—`})}],Z=Y.config?.release?.mode===`required`,Q=Y.status===`running`,$=Y.status===`stopped`,pe=Y.status===`starting`||Y.status===`stopping`||!!X,me=!!X;return(0,V.jsxs)(s,{children:[(0,V.jsx)(ee,{linkComponent:_,links:[{name:`Stacks`,href:`/stacks`},{name:Y.name}],action:(0,V.jsxs)(E,{sx:{display:`flex`,gap:1,alignItems:`center`},children:[(0,V.jsx)(D,{label:Y.status.charAt(0).toUpperCase()+Y.status.slice(1),size:`small`,sx:{bgcolor:U[Y.status]??U.stopped,color:`white`,fontWeight:600}}),$&&!me&&(0,V.jsx)(o,{size:`small`,color:`error`,onClick:()=>z(!0),title:`Delete stack`,children:(0,V.jsx)(k,{})}),(0,V.jsx)(o,{size:`small`,onClick:()=>i&&S(i),children:(0,V.jsx)(l,{})}),pe?(0,V.jsx)(A,{variant:`outlined`,size:`small`,disabled:!0,startIcon:(0,V.jsx)(c,{size:14}),children:X===`starting`||Y.status===`starting`?`Starting...`:`Stopping...`}):$?Z?(0,V.jsx)(A,{startIcon:(0,V.jsx)(m,{}),color:`success`,variant:`contained`,size:`small`,onClick:()=>J(!0),children:`Deploy release…`}):(0,V.jsx)(A,{startIcon:(0,V.jsx)(y,{}),color:`success`,variant:`contained`,size:`small`,onClick:ce,children:`Start`}):Q?(0,V.jsx)(A,{startIcon:(0,V.jsx)(r,{}),color:`error`,variant:`outlined`,size:`small`,onClick:le,children:`Stop`}):null]})}),F&&(0,V.jsx)(ie,{sx:{mb:2},onClose:I,children:F}),i&&e&&(0,V.jsx)(H,{project:i,stack:e,requiresRelease:!!Z,local:Y.type===`local`,onDeploy:()=>J(!0)}),Y.type!==`local`&&Q&&(0,V.jsx)(C,{variant:`outlined`,sx:{mb:2,p:2},children:(0,V.jsxs)(E,{sx:{display:`flex`,alignItems:`center`,gap:2},children:[(0,V.jsx)(m,{sx:{fontSize:20,color:`primary.main`}}),(0,V.jsxs)(E,{sx:{flex:1},children:[(0,V.jsxs)(p,{variant:`body2`,sx:{fontWeight:600},children:[Y.nodes.filter(e=>e.connected).length,`/`,Y.nodes.length,` nodes connected`]}),(0,V.jsxs)(p,{variant:`caption`,sx:{color:`text.secondary`},children:[Y.type===`remote`?`SSH`:`Cluster`,` deployment — `,K(Y.nodes)]})]}),Y.nodes.some(e=>!e.connected)&&(0,V.jsx)(D,{label:`${Y.nodes.filter(e=>!e.connected).length} offline`,size:`small`,color:`warning`,sx:{height:22,fontSize:`0.65rem`}})]})}),(0,V.jsx)(C,{variant:`outlined`,children:(0,V.jsxs)(v,{children:[(0,V.jsxs)(p,{variant:`overline`,sx:{color:`text.secondary`,fontSize:`0.65rem`,mb:1,display:`block`},children:[`Applications (`,Y.apps.length,`)`]}),(0,V.jsx)(a,{columns:de,data:Y.apps,rowKey:e=>e.handleKey,dense:!0,containerSx:{border:`none`,borderRadius:0},emptyContent:(0,V.jsx)(p,{variant:`caption`,sx:{color:`text.disabled`},children:`No apps configured`})})]})}),(0,V.jsx)(C,{variant:`outlined`,children:(0,V.jsxs)(v,{children:[(0,V.jsx)(p,{variant:`overline`,sx:{color:`text.secondary`,fontSize:`0.65rem`},children:`Overview`}),(0,V.jsx)(G,{label:`Type`,value:Y.type===`local`?`Local`:Y.type===`remote`?`Remote (SSH)`:`Cluster`}),(0,V.jsx)(G,{label:`Apps`,value:`${Y.apps.filter(e=>e.status===`online`).length} / ${Y.apps.length}`}),(0,V.jsx)(G,{label:`Nodes`,value:`${Y.nodes.filter(e=>e.connected).length} / ${Y.nodes.length}`}),Y.uptime>0&&(0,V.jsx)(G,{label:`Uptime`,value:M(Y.uptime)}),Y.portRange&&(0,V.jsx)(G,{label:`Port Range`,value:`${Y.portRange.start}–${Y.portRange.end}`,mono:!0}),Y.type===`local`?Y.startedAt&&(0,V.jsx)(G,{label:`Started`,value:new Date(Y.startedAt).toLocaleString()}):(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(G,{label:`Started`,value:Y.startedAt?`${new Date(Y.startedAt).toLocaleString()}, as its nodes report`:`unknown — no node reported an app of it running`}),Y.attachedAt&&(0,V.jsx)(G,{label:`Attached`,value:`${new Date(Y.attachedAt).toLocaleString()} — by this master`})]})]})}),(0,V.jsx)(oe,{stack:Y}),Y.type!==`local`&&(0,V.jsx)(C,{variant:`outlined`,children:(0,V.jsxs)(v,{children:[(0,V.jsxs)(E,{sx:{display:`flex`,alignItems:`center`,gap:.5,mb:1},children:[(0,V.jsx)(f,{sx:{fontSize:16}}),(0,V.jsx)(p,{variant:`overline`,sx:{color:`text.secondary`,fontSize:`0.65rem`},children:`Sync Status`})]}),Y.nodes.map(e=>(0,V.jsx)(q,{node:e},e.host)),Y.nodes.length===0&&(0,V.jsx)(p,{variant:`caption`,sx:{color:`text.disabled`},children:`No nodes configured`})]})}),Y.nodes.length>0&&(0,V.jsx)(C,{variant:`outlined`,children:(0,V.jsxs)(v,{children:[(0,V.jsxs)(p,{variant:`overline`,sx:{color:`text.secondary`,fontSize:`0.65rem`,mb:1,display:`block`},children:[`Nodes (`,Y.nodes.length,`)`]}),(0,V.jsx)(a,{columns:fe,data:Y.nodes,rowKey:e=>e.host,dense:!0,containerSx:{border:`none`,borderRadius:0}})]})}),(0,V.jsx)(ae,{open:W,onClose:()=>J(!1),project:i??``,release:null,...e?{stack:e}:{}}),(0,V.jsxs)(b,{open:R,onClose:()=>z(!1),children:[(0,V.jsx)(d,{children:`Delete Stack`}),(0,V.jsx)(g,{children:(0,V.jsxs)(n,{children:[`Are you sure you want to delete stack `,(0,V.jsx)(`strong`,{children:Y.name}),`? This action cannot be undone. All infrastructure configuration for this stack will be removed.`]})}),(0,V.jsxs)(re,{children:[(0,V.jsx)(A,{onClick:()=>z(!1),children:`Cancel`}),(0,V.jsx)(A,{onClick:ue,color:`error`,variant:`contained`,children:`Delete`})]})]})]})}function G({label:e,value:t,mono:n}){return(0,V.jsxs)(E,{sx:{display:`flex`,justifyContent:`space-between`,py:.5},children:[(0,V.jsx)(p,{variant:`body2`,sx:{color:`text.secondary`},children:e}),(0,V.jsx)(p,{variant:`body2`,sx:{fontWeight:600,...n&&{fontFamily:`monospace`,fontSize:`0.8rem`}},children:t})]})}function K(e){let t=e.map(e=>e.syncStatus?L(e.syncStatus):null),n=t.filter(e=>e&&!z(e)).length,r=t.filter(e=>e===null).length;return n===0&&r===0?`replication in sync`:[n>0&&`${n} of ${e.length} behind`,r>0&&`${r} not reporting`].filter(Boolean).join(`, `)}function q({node:e}){let t=e.syncStatus,n=t?L(t):null;return(0,V.jsxs)(E,{sx:{py:.75},children:[(0,V.jsxs)(E,{sx:{display:`flex`,alignItems:`center`,justifyContent:`space-between`},children:[(0,V.jsxs)(E,{sx:{display:`flex`,alignItems:`center`,gap:1},children:[(0,V.jsx)(E,{sx:{width:8,height:8,borderRadius:`50%`,bgcolor:e.connected?`#22c55e`:`#ef4444`,...e.connected&&{boxShadow:`0 0 6px rgba(34,197,94,0.5)`}}}),(0,V.jsxs)(E,{children:[(0,V.jsxs)(p,{variant:`body2`,sx:{fontFamily:`monospace`,fontSize:`0.8rem`,fontWeight:600},children:[e.host,`:`,e.port]}),(0,V.jsxs)(p,{variant:`caption`,sx:{color:`text.secondary`,fontSize:`0.6rem`},children:[e.daemonRole,e.label?` — ${e.label}`:``]})]})]}),t&&n?(0,V.jsxs)(E,{sx:{textAlign:`right`},children:[(0,V.jsx)(D,{label:R(n),size:`small`,color:z(n)?`success`:`error`,variant:`outlined`,sx:{height:20,fontSize:`0.6rem`,fontWeight:600}}),t.lastSyncAt&&(0,V.jsxs)(p,{variant:`caption`,sx:{color:`text.disabled`,display:`block`,fontSize:`0.5rem`,mt:.25},children:[`last sync `,new Date(t.lastSyncAt).toLocaleTimeString()]})]}):(0,V.jsx)(D,{label:e.connected?`Connected`:`Offline`,size:`small`,color:e.connected?`success`:`default`,variant:`outlined`,sx:{height:20,fontSize:`0.6rem`}})]}),t?.lastError&&(0,V.jsx)(p,{variant:`caption`,sx:{color:`error.main`,fontSize:`0.55rem`,mt:.25,display:`block`,ml:2.5},children:t.lastError})]})}function oe({stack:e}){let t=e.config?.infrastructure,n=e.infrastructure?.services??{},r=t&&Object.keys(t).length>0,i=Object.keys(n).length>0;if(!r&&!i)return null;let a=t?.postgres,o=t?.redis,s=t?.minio;return(0,V.jsxs)(V.Fragment,{children:[a&&(0,V.jsx)(C,{variant:`outlined`,children:(0,V.jsxs)(v,{children:[(0,V.jsxs)(E,{sx:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,mb:1},children:[(0,V.jsx)(p,{variant:`overline`,sx:{color:`text.secondary`,fontSize:`0.65rem`},children:`PostgreSQL`}),(0,V.jsx)(J,{name:`postgres`,runtime:n})]}),(0,V.jsx)(G,{label:`Port`,value:String(a.port??5432),mono:!0}),a.databases&&Object.keys(a.databases).length>0&&(0,V.jsxs)(V.Fragment,{children:[(0,V.jsxs)(p,{variant:`caption`,sx:{color:`text.secondary`,mt:1,display:`block`},children:[`Databases (`,Object.keys(a.databases).length,`)`]}),Object.entries(a.databases).map(([e,t])=>(0,V.jsxs)(E,{sx:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,py:.25,pl:1},children:[(0,V.jsx)(p,{variant:`body2`,sx:{fontFamily:`monospace`,fontSize:`0.8rem`},children:e}),t?.migrate&&(0,V.jsx)(D,{label:`migrate`,size:`small`,sx:{height:16,fontSize:`0.55rem`}})]},e))]})]})}),o&&(0,V.jsx)(C,{variant:`outlined`,children:(0,V.jsxs)(v,{children:[(0,V.jsxs)(E,{sx:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,mb:1},children:[(0,V.jsx)(p,{variant:`overline`,sx:{color:`text.secondary`,fontSize:`0.65rem`},children:`Redis`}),(0,V.jsx)(J,{name:`redis`,runtime:n})]}),(0,V.jsx)(G,{label:`Port`,value:String(o.port??6379),mono:!0}),o.databases&&Object.keys(o.databases).length>0&&(0,V.jsxs)(V.Fragment,{children:[(0,V.jsxs)(p,{variant:`caption`,sx:{color:`text.secondary`,mt:1,display:`block`},children:[`DB Allocations (`,Object.keys(o.databases).length,`)`]}),Object.entries(o.databases).map(([e,t])=>{let n=e.includes(`:`);return(0,V.jsxs)(E,{sx:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,py:.25,pl:1},children:[(0,V.jsx)(p,{variant:`body2`,sx:{fontFamily:`monospace`,fontSize:`0.8rem`},children:n?e.split(`:`)[1]:e}),(0,V.jsxs)(E,{sx:{display:`flex`,gap:.5,alignItems:`center`},children:[n&&(0,V.jsx)(D,{label:e.split(`:`)[0],size:`small`,variant:`outlined`,sx:{height:16,fontSize:`0.5rem`}}),(0,V.jsxs)(p,{variant:`body2`,sx:{fontFamily:`monospace`,fontSize:`0.75rem`,color:`text.secondary`,minWidth:28,textAlign:`right`},children:[`DB `,t]})]})]},e)})]})]})}),s&&(0,V.jsx)(C,{variant:`outlined`,children:(0,V.jsxs)(v,{children:[(0,V.jsxs)(E,{sx:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,mb:1},children:[(0,V.jsx)(p,{variant:`overline`,sx:{color:`text.secondary`,fontSize:`0.65rem`},children:`MinIO / S3`}),(0,V.jsx)(J,{name:`minio`,runtime:n})]}),s.ports&&(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(G,{label:`API Port`,value:String(s.ports.api??9e3),mono:!0}),(0,V.jsx)(G,{label:`Console Port`,value:String(s.ports.console??9001),mono:!0})]}),s.buckets&&s.buckets.length>0&&(0,V.jsxs)(V.Fragment,{children:[(0,V.jsxs)(p,{variant:`caption`,sx:{color:`text.secondary`,mt:1,display:`block`},children:[`Buckets (`,s.buckets.length,`)`]}),s.buckets.map(e=>(0,V.jsx)(p,{variant:`body2`,sx:{fontFamily:`monospace`,fontSize:`0.8rem`,pl:1,py:.25},children:e},e))]})]})})]})}function J({name:e,runtime:t}){let n=t[e];return n?(0,V.jsx)(D,{label:n.status,size:`small`,color:n.status===`running`?`success`:n.status===`error`?`error`:`default`,sx:{height:18,fontSize:`0.6rem`}}):(0,V.jsx)(D,{label:`Stopped`,size:`small`,sx:{height:18,fontSize:`0.6rem`}})}export{W as default};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{t}from"./react-CwJFpaho.js";import{t as n}from"./Grid-BZ7xhoHQ.js";import{c as r,v as i}from"./client-CGbBvy9k.js";import{Bt as a,Cn as o,Dn as s,Ft as c,Lt as l,Nt as u,On as d,P as f,Qn as p,Rt as m,Tt as h,Ut as g,Wn as _,Zt as v,_n as y,_t as b,b as x,ct as S,in as C,ln as w,nt as T,on as E,rr as D,sn as O,vn as k,vt as A,wn as j,yn as M,zt as N}from"./index-DiZbrwxT.js";import{c as P,d as F,f as I,i as L,o as R,s as z,u as B}from"./release-bits-Dj4EOhhb.js";import{n as V,t as H}from"./deploy-release-dialog-D6C-XcKY.js";import{t as U}from"./release-build-panel-D6OCVlhT.js";var W=e(t(),1),G=p(),K={provisioned:` Accounts were created by the run and removed at its end.`,"not-declared":` No accounts were provisioned — the stack does not declare release.attest.provision, so probes that sign in said NOT RUN.`,"producer-cannot":` No accounts were provisioned — the stack allows it, but this release's producer predates --provision.`};function q(e,t){return r.invoke(`daemon`,`OmnitronRelease`,`attestOnNode`,[{release:e,stack:t}],{timeout:6e5})}function J({output:e}){let[t,n]=(0,W.useState)(!1);return(0,G.jsxs)(O,{sx:{pl:2,mb:.5},children:[(0,G.jsx)(M,{size:`small`,onClick:()=>n(e=>!e),sx:{minWidth:0,p:0,fontSize:11,textTransform:`none`},children:t?`hide what it printed`:`what it printed`}),t&&(0,G.jsx)(O,{component:`pre`,sx:{m:0,mt:.5,p:1,maxHeight:240,overflow:`auto`,borderRadius:1,bgcolor:`action.hover`,fontFamily:`monospace`,fontSize:11,whiteSpace:`pre-wrap`,wordBreak:`break-word`},children:e})]})}function Y(e){return/^HTTP 50\d|Request timeout|Gateway Time-?out/i.test(e)}function X({attestation:e}){let t=e.cleanup;if(!t&&!e.legalTextsUnread)return null;let n=Object.entries(t?.removed??{}).filter(([,e])=>e>0).map(([e,t])=>`${t} ${e}`),r=Object.entries(t?.retired??{}).filter(([,e])=>e>0).map(([e,t])=>`${t} ${e}`);return(0,G.jsxs)(O,{sx:{mt:.75,pl:1},"data-testid":`cleanup-${e.stack}`,children:[t&&(0,G.jsx)(y,{variant:`caption`,sx:{display:`block`,color:t.failed||t.run===null?`warning.main`:`text.secondary`},children:t.run===null?`cleanup not run — ${t.notRun??`the run had no name to remove by`}`:`cleanup: run ${t.run} removed ${n.length?n.join(`, `):`nothing — it had made nothing to remove`}`+(t.failed?` — FAILED: ${t.failed}`:``)}),r.length>0&&(0,G.jsxs)(y,{variant:`caption`,sx:{display:`block`,color:`text.secondary`},children:[`retired: `,r.join(`, `),` — blocked in place, their real-chain addresses still watched`]}),(t?.leftBehind??[]).map(e=>(0,G.jsxs)(y,{variant:`caption`,sx:{display:`block`,color:`warning.main`},children:[`left behind: `,e.what,` — `,e.why.join(`; `)||`no reason given`]},e.what)),e.legalTextsUnread&&(0,G.jsxs)(y,{variant:`caption`,sx:{display:`block`,color:`warning.main`},children:[`legal texts could not be read — `,e.legalTextsUnread]})]})}function Z({releaseId:e,project:t,attestations:n,onChanged:r}){let i=S(e=>e.stacksByProject),o=S(e=>e.fetchStacks),s=(0,W.useMemo)(()=>(i[t]??[]).filter(e=>e.type!==`local`),[i,t]),[c,l]=(0,W.useState)(``),[f,p]=(0,W.useState)(!1),[m,h]=(0,W.useState)(null),[_,v]=(0,W.useState)(null),[b,x]=(0,W.useState)(null);(0,W.useEffect)(()=>{i[t]||o(t)},[t,i,o]),(0,W.useEffect)(()=>{!c&&s.length>0&&l(s[0].name)},[s,c]),(0,W.useEffect)(()=>{if(b===null)return;if(n.some(e=>e.stack===c&&Date.parse(e.storedAt)>=b)||Date.now()-b>6e5){x(null);return}let e=setTimeout(r,5e3);return()=>clearTimeout(e)},[b,n,c,r]);let T=(0,W.useCallback)(async()=>{if(!c)return;let t=Date.now();p(!0),v(null),h(null);try{h(await q(e,c)),r()}catch(e){let n=e.message;Y(n)?x(t):v(n)}finally{p(!1)}},[e,c,r]);return(0,G.jsx)(E,{variant:`outlined`,children:(0,G.jsxs)(C,{children:[(0,G.jsxs)(N,{direction:`row`,spacing:1.5,sx:{alignItems:`center`,mb:1.5},children:[(0,G.jsx)(y,{variant:`subtitle2`,children:`Verified on stacks`}),(0,G.jsx)(y,{variant:`caption`,sx:{color:`text.secondary`},children:`probes a running stack measured against this release`}),(0,G.jsx)(O,{sx:{flex:1}}),s.length>0&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(u,{select:!0,size:`small`,value:c,onChange:e=>l(e.target.value),disabled:f,sx:{minWidth:120},children:s.map(e=>(0,G.jsx)(g,{value:e.name,children:e.name},e.name))}),(0,G.jsx)(a,{title:`Uploads this release's own scripts to the stack's node and runs the probes there, under the node's deploy lease. The stack should be carrying this release — an attestation older than the last deployment is refused.`,arrow:!0,children:(0,G.jsx)(`span`,{children:(0,G.jsx)(M,{size:`small`,variant:`outlined`,onClick:()=>void T(),disabled:f||b!==null||!c,startIcon:f||b!==null?(0,G.jsx)(d,{size:14}):void 0,children:f?`Running on the node…`:b===null?`Run the probes`:`Still running…`})})})]})]}),b!==null&&(0,G.jsx)(w,{severity:`info`,sx:{mb:1.5},children:`The gateway stopped waiting after 120 seconds; the master did not. The probes are still running on the node, and the result will appear here when it is written.`}),m&&(0,G.jsxs)(w,{severity:m.passed===m.gates?`success`:`warning`,sx:{mb:1.5},children:[m.passed,` of `,m.gates,` probes passed on `,m.node,` — probes from`,` `,m.scriptsFrom===`release`?`the release itself`:`the release's commit`,typeof m.sourceFiles==`number`&&(m.sourceFiles>0?`, with ${m.sourceFiles} application source files from that commit`:`, with no application sources — probes that read code said NOT RUN`),`.`,m.accounts?K[m.accounts]:``]}),_&&(0,G.jsx)(w,{severity:`error`,sx:{mb:1.5},children:(0,G.jsx)(y,{variant:`body2`,sx:{whiteSpace:`pre-wrap`},children:_})}),n.length===0?(0,G.jsxs)(y,{variant:`body2`,sx:{color:`text.secondary`},children:[`No stack has attested this release. A stack whose policy declares `,(0,G.jsx)(`code`,{children:`verifiedOn`}),` refuses it until one does.`]}):(0,G.jsx)(N,{spacing:2,children:n.map(e=>{let t=e.gates.filter(e=>e.status===`passed`).length;return(0,G.jsxs)(O,{children:[(0,G.jsxs)(N,{direction:`row`,spacing:1,sx:{alignItems:`center`,flexWrap:`wrap`},children:[(0,G.jsx)(k,{label:e.stack,size:`small`,variant:`outlined`,sx:{height:20,fontSize:11}}),(0,G.jsxs)(y,{variant:`body2`,sx:{fontWeight:600,fontFamily:`monospace`,color:t===e.gates.length?`success.main`:`error.main`},children:[t,`/`,e.gates.length]}),(0,G.jsx)(R,{gates:e.gates,size:9}),(0,G.jsx)(O,{sx:{flex:1}}),(0,G.jsxs)(y,{variant:`caption`,sx:{color:`text.secondary`},children:[`measured `,I(e.at),e.onNode.hosts.length>0?` on ${e.onNode.hosts.join(`, `)}`:``]}),e.onNode.claimed&&(0,G.jsx)(a,{title:e.onNode.matched===!0?`The producer confirmed it ran on one of the stack's nodes.`:`The producer could not confirm the machine it ran on.`,arrow:!0,children:(0,G.jsx)(k,{label:e.onNode.matched===!0?`on the node`:`node unconfirmed`,size:`small`,color:e.onNode.matched===!0?`success`:`warning`,variant:`outlined`,sx:{height:18,fontSize:10}})})]}),e.gates.some(e=>e.status!==`passed`)&&(0,G.jsx)(O,{sx:{mt:.75,pl:1},children:e.gates.filter(e=>e.status!==`passed`).map(e=>(0,G.jsxs)(O,{children:[(0,G.jsxs)(y,{variant:`caption`,sx:{display:`block`,color:`text.secondary`},children:[(0,G.jsx)(O,{component:`span`,sx:{color:L[e.status].color,fontWeight:600},children:L[e.status].label}),` `,(0,G.jsx)(O,{component:`span`,sx:{fontFamily:`monospace`},children:e.name}),e.detail?` — ${e.detail}`:``]}),e.output&&(0,G.jsx)(J,{output:e.output})]},e.name))}),(0,G.jsx)(X,{attestation:e})]},e.stack)})})]})})}function Q(){let{id:e=``}=D(),[t,r]=(0,W.useState)(!1),[u,d]=(0,W.useState)(null),[p,g]=(0,W.useState)(null),{data:S,loading:w,error:K,refresh:q}=T(async()=>{let[t,n]=await Promise.all([V.get(e),V.builds().catch(()=>[])]);return{detail:t,builds:n}},{intervalMs:15e3,enabled:!!e}),J=(0,W.useCallback)(async t=>{g(null);try{let n=await i.getLog({id:e,name:t,lines:400});d({name:n.name,tail:n.tail})}catch(e){g(e.message)}},[e]);if(w&&!S)return(0,G.jsx)(h,{});if(K&&!S)return(0,G.jsxs)(N,{spacing:3,children:[(0,G.jsx)(b,{links:[{name:`Releases`,href:`/releases`},{name:e}]}),(0,G.jsx)(A,{severity:`error`,variant:`outlined`,children:K})]});let Y=S.detail,X=Y.manifest,Q=(S.builds??[]).find(t=>t.releaseId===e)??null;return(0,G.jsxs)(N,{spacing:3,children:[(0,G.jsx)(b,{links:[{name:`Releases`,href:`/releases`},{name:e}],action:(0,G.jsxs)(N,{direction:`row`,spacing:1,children:[(0,G.jsx)(s,{size:`small`,onClick:()=>void q(),title:`Refresh`,children:(0,G.jsx)(f,{})}),(0,G.jsx)(M,{variant:`contained`,size:`small`,startIcon:(0,G.jsx)(x,{}),disabled:!Y.complete,onClick:()=>r(!0),children:`Deploy…`})]})}),!Y.complete&&(0,G.jsx)(A,{severity:`warning`,variant:`outlined`,children:`This directory holds no manifest: the build did not finish, and what is here is its logs. Nothing can be deployed from it.`}),Q&&(0,G.jsx)(U,{record:Q,compact:Q.state!==`running`}),(0,G.jsxs)(n,{container:!0,spacing:2,children:[(0,G.jsx)(n,{size:{xs:12,md:6},children:(0,G.jsx)(E,{variant:`outlined`,sx:{height:`100%`},children:(0,G.jsxs)(C,{children:[(0,G.jsx)(y,{variant:`subtitle2`,sx:{mb:1.5},children:`Built from`}),(0,G.jsx)(N,{spacing:1.5,children:[[`project`,Y.projectCommit,Y.projectRepo,Y.onRemote.project],[`omni`,Y.omniCommit,Y.omniRepo,Y.onRemote.omni]].map(([e,t,n,r])=>(0,G.jsxs)(O,{children:[(0,G.jsxs)(N,{direction:`row`,spacing:1,sx:{alignItems:`center`},children:[(0,G.jsx)(y,{variant:`body2`,sx:{fontWeight:600,minWidth:56},children:e===`project`?Y.project:`omni`}),(0,G.jsx)(y,{variant:`body2`,sx:{fontFamily:`monospace`},children:t?.slice(0,12)??`—`}),r===!1&&(0,G.jsx)(k,{label:`on no remote branch`,size:`small`,color:`warning`,variant:`outlined`,sx:{height:18,fontSize:10}}),r===null&&(0,G.jsx)(k,{label:`no remote to ask`,size:`small`,variant:`outlined`,sx:{height:18,fontSize:10}})]}),(0,G.jsx)(y,{variant:`caption`,sx:{color:`text.secondary`},children:n??`—`})]},e))})]})})}),(0,G.jsx)(n,{size:{xs:12,md:6},children:(0,G.jsx)(E,{variant:`outlined`,sx:{height:`100%`},children:(0,G.jsxs)(C,{children:[(0,G.jsx)(y,{variant:`subtitle2`,sx:{mb:1.5},children:`Built with`}),(0,G.jsxs)(N,{spacing:.75,children:[(0,G.jsxs)(y,{variant:`body2`,children:[I(Y.builtAt),` · `,Y.builtBy??`—`]}),(0,G.jsxs)(y,{variant:`body2`,sx:{fontFamily:`monospace`,fontSize:13},children:[`omnitron `,Y.builtWith??`—`]}),(0,G.jsxs)(y,{variant:`caption`,sx:{color:`text.secondary`},children:[X?.builtWith?.packages?.length??0,` linked omni package(s); `,z(Y.bytes),` on disk at`,` `,Y.root]}),Y.statics&&(0,G.jsxs)(y,{variant:`caption`,sx:{color:`text.secondary`},children:[`statics for `,(0,G.jsx)(`strong`,{children:Y.statics.stack}),` — `,Y.statics.files,` files,`,` `,z(Y.statics.bytes),` from `,X?.statics?.dir]}),Y.machine&&(0,G.jsxs)(y,{variant:`caption`,sx:{color:F(Y.machine)?`warning.main`:`text.secondary`},children:[`machine while the gates ran: `,B(Y.machine),F(Y.machine)?` — more than its cores, so read a red gate here as the machine first`:``]})]})]})})})]}),(0,G.jsx)(E,{variant:`outlined`,children:(0,G.jsxs)(C,{children:[(0,G.jsxs)(N,{direction:`row`,spacing:1.5,sx:{alignItems:`center`,mb:1.5},children:[(0,G.jsx)(y,{variant:`subtitle2`,children:`Gates`}),(0,G.jsx)(y,{variant:`caption`,sx:{color:`text.secondary`},children:Y.gates.total===0?`none recorded — a stack that requires any refuses this release`:`${Y.gates.passed} of ${Y.gates.total} passed`}),(0,G.jsx)(O,{sx:{flex:1}}),(0,G.jsx)(R,{gates:Y.gateList})]}),Y.gateList.length>0&&(0,G.jsxs)(m,{size:`small`,children:[(0,G.jsx)(c,{children:(0,G.jsxs)(j,{children:[(0,G.jsx)(o,{children:`Gate`}),(0,G.jsx)(o,{children:`Outcome`}),(0,G.jsx)(o,{align:`right`,children:`Took`}),(0,G.jsx)(o,{children:`Detail`})]})}),(0,G.jsx)(l,{children:Y.gateList.map((e,t)=>(0,G.jsxs)(j,{children:[(0,G.jsxs)(o,{sx:{fontFamily:`monospace`,fontSize:13},children:[e.name,e.checks!=null&&(0,G.jsxs)(y,{component:`span`,variant:`caption`,sx:{color:`text.secondary`,ml:1},children:[e.checks,` checks`]})]}),(0,G.jsx)(o,{children:(0,G.jsx)(y,{variant:`caption`,sx:{color:L[e.status].color,fontWeight:600},children:L[e.status].label})}),(0,G.jsx)(o,{align:`right`,children:(0,G.jsx)(y,{variant:`caption`,sx:{color:`text.secondary`,fontFamily:`monospace`},children:e.durationMs?P(e.durationMs):`—`})}),(0,G.jsx)(o,{children:(0,G.jsx)(y,{variant:`caption`,sx:{color:`text.secondary`,whiteSpace:`pre-wrap`},children:e.detail??``})})]},`${e.name}-${t}`))})]})]})}),Y.complete&&(0,G.jsx)(Z,{releaseId:Y.id,project:Y.project,attestations:Y.attestations,onChanged:()=>void q()}),(0,G.jsx)(E,{variant:`outlined`,children:(0,G.jsxs)(C,{children:[(0,G.jsx)(y,{variant:`subtitle2`,sx:{mb:1.5},children:`Artifacts`}),(X?.artifacts??[]).length===0?(0,G.jsx)(y,{variant:`body2`,sx:{color:`text.secondary`},children:`None.`}):(0,G.jsxs)(m,{size:`small`,children:[(0,G.jsx)(c,{children:(0,G.jsxs)(j,{children:[(0,G.jsx)(o,{children:`App`}),(0,G.jsx)(o,{children:`Version`}),(0,G.jsx)(o,{align:`right`,children:`Size`}),(0,G.jsx)(o,{children:`sha256`})]})}),(0,G.jsx)(l,{children:(X?.artifacts??[]).map(e=>(0,G.jsxs)(j,{children:[(0,G.jsx)(o,{sx:{fontWeight:600},children:e.app}),(0,G.jsx)(o,{sx:{fontFamily:`monospace`,fontSize:13},children:e.version}),(0,G.jsx)(o,{align:`right`,sx:{fontFamily:`monospace`,fontSize:13},children:z(e.bytes)}),(0,G.jsx)(o,{children:(0,G.jsx)(a,{title:e.sha256||`none recorded`,arrow:!0,children:(0,G.jsx)(y,{variant:`caption`,sx:{fontFamily:`monospace`,color:`text.secondary`},children:e.sha256?`${e.sha256.slice(0,16)}…`:`—`})})})]},`${e.app}-${e.version}`))})]}),(X?.artifactFailures??[]).map(e=>(0,G.jsx)(A,{severity:`error`,variant:`outlined`,sx:{mt:1},children:(0,G.jsxs)(y,{variant:`body2`,sx:{whiteSpace:`pre-wrap`},children:[(0,G.jsx)(`strong`,{children:e.app}),` did not build — `,e.error.split(`
|
|
2
|
+
`)[0]]})},e.app))]})}),(0,G.jsx)(E,{variant:`outlined`,children:(0,G.jsxs)(C,{children:[(0,G.jsx)(y,{variant:`subtitle2`,sx:{mb:1.5},children:`Build logs`}),Y.logs.length===0?(0,G.jsx)(y,{variant:`body2`,sx:{color:`text.secondary`},children:`This build wrote no logs.`}):(0,G.jsx)(N,{direction:`row`,spacing:1,sx:{flexWrap:`wrap`},children:Y.logs.map(e=>(0,G.jsx)(k,{label:`${e.name} · ${z(e.bytes)}`,size:`small`,variant:u?.name===e.name?`filled`:`outlined`,onClick:()=>void J(e.name),sx:{fontFamily:`monospace`,fontSize:11}},e.name))}),p&&(0,G.jsx)(A,{severity:`warning`,variant:`outlined`,sx:{mt:1.5},children:p}),u&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(v,{sx:{my:1.5}}),(0,G.jsx)(O,{sx:{maxHeight:420,overflow:`auto`,p:1.5,borderRadius:1,bgcolor:e=>_(e.palette.text.primary,.04)},children:(0,G.jsx)(y,{variant:`caption`,sx:{fontFamily:`monospace`,whiteSpace:`pre`,display:`block`},children:u.tail})})]})]})}),(0,G.jsx)(H,{open:t,onClose:()=>r(!1),project:Y.project,release:Y})]})}export{Q as default};
|