@undefineds.co/xpod 0.4.20 → 0.4.25
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/config/cloud.json +54 -11
- package/config/components-ignore.json +13 -8
- package/config/local.json +32 -1
- package/config/xpod.base.json +271 -1
- package/config/xpod.json +17 -1
- package/dist/agent-directory/client/AgentDirectoryClient.d.ts +54 -0
- package/dist/agent-directory/client/AgentDirectoryClient.js +152 -0
- package/dist/agent-directory/client/index.d.ts +1 -0
- package/dist/agent-directory/client/index.js +18 -0
- package/dist/agent-directory/index.d.ts +1 -0
- package/dist/agent-directory/index.js +18 -0
- package/dist/agent-directory/protocol.d.ts +126 -0
- package/dist/agent-directory/protocol.js +13 -0
- package/dist/agent-directory/protocol.jsonld +296 -0
- package/dist/api/ApiServer.d.ts +8 -0
- package/dist/api/ApiServer.js +75 -16
- package/dist/api/ai-gateway/AiGatewayService.d.ts +9 -1
- package/dist/api/ai-gateway/AiGatewayService.js +22 -7
- package/dist/api/ai-gateway/CloudGatewayModelsClient.d.ts +3 -0
- package/dist/api/ai-gateway/CloudGatewayModelsClient.js +2 -0
- package/dist/api/ai-gateway/InvocationMetadata.d.ts +9 -0
- package/dist/api/ai-gateway/InvocationMetadata.js +40 -0
- package/dist/api/ai-gateway/auth/AiConnectionsInvocationKeyIssuer.d.ts +14 -0
- package/dist/api/ai-gateway/auth/AiConnectionsInvocationKeyIssuer.js +24 -5
- package/dist/api/ai-gateway/connect/AuthorizationCallbackPage.d.ts +4 -0
- package/dist/api/ai-gateway/connect/AuthorizationCallbackPage.js +75 -0
- package/dist/api/ai-gateway/connect/LoopbackAuthorizationCallbackReceiver.js +6 -5
- package/dist/api/ai-gateway/connect/index.d.ts +15 -1
- package/dist/api/ai-gateway/connect/index.js +80 -13
- package/dist/api/ai-gateway/pod/HostedPodRoute.d.ts +0 -7
- package/dist/api/ai-gateway/pod/HostedPodRoute.js +3 -71
- package/dist/api/ai-gateway/pod/OwnerPodAccess.d.ts +0 -1
- package/dist/api/ai-gateway/pod/OwnerPodAccess.js +59 -19
- package/dist/api/ai-gateway/providers/AnthropicRuntimeAdapter.js +2 -0
- package/dist/api/ai-gateway/providers/BailianRuntimeAdapter.js +4 -0
- package/dist/api/ai-gateway/providers/OpenAiRuntimeAdapter.js +2 -1
- package/dist/api/ai-gateway/providers/ProviderRegistry.d.ts +2 -8
- package/dist/api/ai-gateway/providers/ProviderRegistry.js +21 -132
- package/dist/api/ai-gateway/providers/ProviderRuntimeAdapter.d.ts +3 -1
- package/dist/api/ai-gateway/providers/ProviderRuntimeAdapter.js +25 -4
- package/dist/api/ai-gateway/routing/ModelRouter.js +13 -0
- package/dist/api/auth/SolidSessionFactory.d.ts +2 -1
- package/dist/api/auth/SolidSessionFactory.js +33 -11
- package/dist/api/background-service-supervisor.d.ts +63 -0
- package/dist/api/background-service-supervisor.js +144 -0
- package/dist/api/chatkit/pod-store.d.ts +34 -4
- package/dist/api/chatkit/pod-store.js +315 -185
- package/dist/api/chatkit/store.d.ts +2 -1
- package/dist/api/chatkit/store.js +7 -8
- package/dist/api/container/common.js +92 -15
- package/dist/api/container/index.js +22 -6
- package/dist/api/container/rdf.d.ts +4 -0
- package/dist/api/container/rdf.js +5 -1
- package/dist/api/container/routes.js +30 -0
- package/dist/api/container/types.d.ts +4 -2
- package/dist/api/handlers/AdminHandler.d.ts +4 -3
- package/dist/api/handlers/AdminHandler.js +27 -39
- package/dist/api/handlers/AiConfigHandler.d.ts +12 -0
- package/dist/api/handlers/AiConfigHandler.js +7 -5
- package/dist/api/handlers/AiGatewayHandler.js +4 -0
- package/dist/api/handlers/AiGatewayManagementHandler.js +8 -0
- package/dist/api/handlers/DeviceNotificationRuntime.d.ts +1 -1
- package/dist/api/handlers/DeviceNotificationRuntime.js +5 -8
- package/dist/api/handlers/InngestHandler.d.ts +7 -0
- package/dist/api/handlers/InngestHandler.js +45 -0
- package/dist/api/handlers/NetworkSettingsHandler.d.ts +31 -1
- package/dist/api/handlers/NetworkSettingsHandler.js +76 -3
- package/dist/api/handlers/PodAccessFailureResponse.d.ts +2 -1
- package/dist/api/handlers/PodAccessFailureResponse.js +4 -5
- package/dist/api/handlers/PodDeletionGrantHandler.d.ts +9 -0
- package/dist/api/handlers/PodDeletionGrantHandler.js +129 -0
- package/dist/api/handlers/PodManagementHandler.d.ts +2 -0
- package/dist/api/handlers/PodManagementHandler.js +137 -71
- package/dist/api/handlers/ProvisionHandler.d.ts +2 -0
- package/dist/api/handlers/ProvisionHandler.js +13 -1
- package/dist/api/handlers/ReachabilityHandler.js +5 -0
- package/dist/api/handlers/RunHandler.js +7 -27
- package/dist/api/handlers/ServiceInfoHandler.d.ts +10 -0
- package/dist/api/handlers/ServiceInfoHandler.js +32 -0
- package/dist/api/handlers/SettingsHandler.js +5 -0
- package/dist/api/handlers/TaskHandler.d.ts +41 -0
- package/dist/api/handlers/TaskHandler.js +195 -0
- package/dist/api/matrix/PodMatrixStore.js +16 -9
- package/dist/api/network/EndpointReachabilityProbe.d.ts +40 -0
- package/dist/api/network/EndpointReachabilityProbe.js +129 -0
- package/dist/api/runs/AgentRuntimeTypes.d.ts +7 -0
- package/dist/api/runs/ConditionalResourceDocument.d.ts +20 -0
- package/dist/api/runs/ConditionalResourceDocument.js +100 -0
- package/dist/api/runs/EmbeddedInngestService.d.ts +80 -0
- package/dist/api/runs/EmbeddedInngestService.js +311 -37
- package/dist/api/runs/InngestRunExecutionBackend.d.ts +2 -2
- package/dist/api/runs/InngestRunExecutionBackend.js +5 -0
- package/dist/api/runs/ManagedRunWorker.d.ts +0 -2
- package/dist/api/runs/ManagedRunWorker.js +100 -75
- package/dist/api/runs/PiAgentRuntimeDriver.d.ts +32 -0
- package/dist/api/runs/PiAgentRuntimeDriver.js +229 -14
- package/dist/api/runs/PiAgentRuntimeWorker.js +12 -2
- package/dist/api/runs/PodRdfAccessScopeResolver.d.ts +16 -0
- package/dist/api/runs/PodRdfAccessScopeResolver.js +83 -0
- package/dist/api/runs/RdfRunContextRetriever.d.ts +1 -1
- package/dist/api/runs/RdfRunContextRetriever.js +5 -6
- package/dist/api/runs/RunApproval.d.ts +17 -0
- package/dist/api/runs/RunApproval.js +45 -0
- package/dist/api/runs/RunCancellation.d.ts +20 -0
- package/dist/api/runs/RunCancellation.js +83 -0
- package/dist/api/runs/RunExecutionBackend.d.ts +2 -0
- package/dist/api/runs/RunStateCenter.d.ts +0 -3
- package/dist/api/runs/RunStateCenter.js +129 -116
- package/dist/api/runs/RunStateMerge.d.ts +4 -0
- package/dist/api/runs/RunStateMerge.js +19 -0
- package/dist/api/runs/store.d.ts +6 -1
- package/dist/api/runs/store.js +19 -1
- package/dist/api/runtime.js +51 -21
- package/dist/api/service/provider-http-transport.d.ts +14 -1
- package/dist/api/service/provider-http-transport.js +173 -20
- package/dist/api/tasks/InngestTaskScheduler.d.ts +4 -4
- package/dist/api/tasks/TaskAgentBinding.d.ts +14 -0
- package/dist/api/tasks/TaskAgentBinding.js +25 -0
- package/dist/api/tasks/TaskAuthBinding.js +16 -2
- package/dist/api/tasks/TaskMaterializer.d.ts +5 -4
- package/dist/api/tasks/TaskMaterializer.js +167 -126
- package/dist/api/tasks/TaskService.d.ts +28 -3
- package/dist/api/tasks/TaskService.js +125 -44
- package/dist/api/tasks/cron.d.ts +2 -0
- package/dist/api/tasks/cron.js +51 -0
- package/dist/api/tasks/schema.d.ts +3 -0
- package/dist/api/tasks/store.d.ts +10 -1
- package/dist/authentication/ConfiguredLoopbackDPoPWebIdExtractor.d.ts +6 -1
- package/dist/authentication/ConfiguredLoopbackDPoPWebIdExtractor.js +33 -9
- package/dist/authentication/ConfiguredLoopbackDPoPWebIdExtractor.jsonld +9 -1
- package/dist/authentication/SolidTokenCaches.js +44 -10
- package/dist/cli/agent-fs/args.d.ts +37 -0
- package/dist/cli/agent-fs/args.js +254 -0
- package/dist/cli/agent-fs/auth-proxy.d.ts +27 -0
- package/dist/cli/agent-fs/auth-proxy.js +208 -0
- package/dist/cli/agent-fs/install.d.ts +18 -0
- package/dist/cli/agent-fs/install.js +54 -0
- package/dist/cli/agent-fs/mount.d.ts +35 -0
- package/dist/cli/agent-fs/mount.js +111 -0
- package/dist/cli/agent-fs/native.d.ts +6 -0
- package/dist/cli/agent-fs/native.js +104 -0
- package/dist/cli/agent-fs/pending-store.d.ts +14 -0
- package/dist/cli/agent-fs/pending-store.js +37 -0
- package/dist/cli/agent-fs/pod-lower.d.ts +127 -0
- package/dist/cli/agent-fs/pod-lower.js +398 -0
- package/dist/cli/agent-fs/rg-entry.d.ts +6 -0
- package/dist/cli/agent-fs/rg-entry.js +132 -0
- package/dist/cli/agent-fs/roots.d.ts +18 -0
- package/dist/cli/agent-fs/roots.js +152 -0
- package/dist/cli/agent-fs/runner.d.ts +18 -0
- package/dist/cli/agent-fs/runner.js +145 -0
- package/dist/cli/agent-fs/session-view.d.ts +7 -0
- package/dist/cli/agent-fs/session-view.js +31 -0
- package/dist/cli/commands/agent-fs.d.ts +2 -0
- package/dist/cli/commands/agent-fs.js +491 -0
- package/dist/cli/commands/start.d.ts +11 -18
- package/dist/cli/commands/start.js +38 -37
- package/dist/cli/commands/stop.js +7 -1
- package/dist/cli/index.js +11 -2
- package/dist/cli/lib/auth-context.d.ts +6 -0
- package/dist/cli/lib/auth-context.js +1 -1
- package/dist/cli/lib/launcher.d.ts +2 -0
- package/dist/cli/lib/launcher.js +19 -0
- package/dist/components/components.jsonld +18 -0
- package/dist/components/context.jsonld +472 -6
- package/dist/dns/cloudflare/CloudflareDnsProvider.d.ts +10 -1
- package/dist/dns/cloudflare/CloudflareDnsProvider.js +59 -28
- package/dist/edge/EdgeNodeAgent.d.ts +5 -0
- package/dist/edge/EdgeNodeAgent.js +8 -0
- package/dist/edge/acme/AcmeCertificateManager.d.ts +24 -0
- package/dist/edge/acme/AcmeCertificateManager.js +75 -7
- package/dist/edge/acme/AcmeCertificateManager.jsonld +24 -0
- package/dist/edge/acme/CertificateRenewalScheduler.d.ts +67 -0
- package/dist/edge/acme/CertificateRenewalScheduler.js +116 -0
- package/dist/edge/frp/FrpcProcessManager.d.ts +16 -0
- package/dist/edge/frp/FrpcProcessManager.js +73 -13
- package/dist/edge/reachability/ManagedClientFetch.d.ts +2 -0
- package/dist/edge/reachability/ManagedClientFetch.js +24 -12
- package/dist/edge/reachability/ManagedClientFetch.jsonld +4 -0
- package/dist/edge/reachability/ManagedRouteSelector.d.ts +2 -0
- package/dist/edge/reachability/ManagedRouteSelector.js +8 -13
- package/dist/edge/reachability/ManagedRouteSelector.jsonld +4 -0
- package/dist/edge/reachability/P2PDataPlane.d.ts +67 -4
- package/dist/edge/reachability/P2PDataPlane.js +156 -15
- package/dist/edge/reachability/P2PDataPlane.jsonld +64 -0
- package/dist/edge/reachability/P2PDataPlaneCrypto.d.ts +42 -0
- package/dist/edge/reachability/P2PDataPlaneCrypto.js +113 -0
- package/dist/edge/reachability/P2PDataPlaneCrypto.jsonld +69 -0
- package/dist/edge/reachability/P2PSignalingClient.d.ts +2 -0
- package/dist/edge/reachability/P2PSignalingClient.js +1 -0
- package/dist/edge/reachability/P2PSignalingClient.jsonld +4 -0
- package/dist/edge/reachability/ReachabilitySessionService.d.ts +19 -0
- package/dist/edge/reachability/ReachabilitySessionService.js +122 -52
- package/dist/edge/reachability/ReachabilitySessionService.jsonld +26 -0
- package/dist/edge/reachability/RouteValidation.d.ts +29 -0
- package/dist/edge/reachability/RouteValidation.js +58 -0
- package/dist/edge/reachability/TcpP2PDataPlaneTransport.d.ts +28 -4
- package/dist/edge/reachability/TcpP2PDataPlaneTransport.js +540 -32
- package/dist/edge/reachability/TcpP2PDataPlaneTransport.jsonld +51 -0
- package/dist/edge/reachability/TcpP2PSignalingSession.d.ts +7 -0
- package/dist/edge/reachability/TcpP2PSignalingSession.js +25 -1
- package/dist/edge/reachability/TcpP2PSignalingSession.jsonld +12 -0
- package/dist/edge/reachability/index.d.ts +1 -0
- package/dist/edge/reachability/index.js +1 -0
- package/dist/edge/reachability/types.d.ts +8 -0
- package/dist/edge/reachability/types.jsonld +8 -0
- package/dist/http/DeviceNotificationWebSocketServer.d.ts +5 -1
- package/dist/http/DeviceNotificationWebSocketServer.js +36 -8
- package/dist/http/DeviceNotificationWebSocketServer.jsonld +16 -0
- package/dist/http/HeadSafeResponseWriter.d.ts +9 -0
- package/dist/http/HeadSafeResponseWriter.js +22 -0
- package/dist/http/HeadSafeResponseWriter.jsonld +39 -0
- package/dist/http/LocalPodDeletionHttpHandler.d.ts +21 -0
- package/dist/http/LocalPodDeletionHttpHandler.js +125 -0
- package/dist/http/LocalPodDeletionHttpHandler.jsonld +115 -0
- package/dist/http/PodDeletionMutationGuard.d.ts +9 -0
- package/dist/http/PodDeletionMutationGuard.js +29 -0
- package/dist/http/PodDeletionMutationGuard.jsonld +58 -0
- package/dist/http/PodMutationLockingHttpHandler.d.ts +14 -0
- package/dist/http/PodMutationLockingHttpHandler.js +93 -0
- package/dist/http/PodMutationLockingHttpHandler.jsonld +99 -0
- package/dist/http/StoragePutOperationHandler.d.ts +7 -0
- package/dist/http/StoragePutOperationHandler.js +27 -0
- package/dist/http/StoragePutOperationHandler.jsonld +57 -0
- package/dist/http/SubgraphSparqlHttpHandler.d.ts +3 -1
- package/dist/http/SubgraphSparqlHttpHandler.js +107 -33
- package/dist/http/SubgraphSparqlHttpHandler.jsonld +19 -0
- package/dist/http/agent-directory/AgentDirectoryHttpHandler.d.ts +87 -0
- package/dist/http/agent-directory/AgentDirectoryHttpHandler.js +717 -0
- package/dist/http/agent-directory/AgentDirectoryHttpHandler.jsonld +302 -0
- package/dist/http/agent-directory/index.d.ts +1 -0
- package/dist/http/agent-directory/index.js +18 -0
- package/dist/identity/CloudProfilePreparationHandler.d.ts +7 -0
- package/dist/identity/CloudProfilePreparationHandler.js +24 -0
- package/dist/identity/CloudProfilePreparationHandler.jsonld +42 -0
- package/dist/identity/PodDeletionInteractionHandler.d.ts +12 -0
- package/dist/identity/PodDeletionInteractionHandler.js +35 -0
- package/dist/identity/PodDeletionInteractionHandler.jsonld +73 -0
- package/dist/identity/PodDeletionInventoryHandler.d.ts +11 -0
- package/dist/identity/PodDeletionInventoryHandler.js +40 -0
- package/dist/identity/PodDeletionInventoryHandler.jsonld +69 -0
- package/dist/identity/ValidatingIdentityProviderHttpHandler.js +29 -10
- package/dist/identity/drizzle/EdgeNodeRepository.d.ts +17 -0
- package/dist/identity/drizzle/EdgeNodeRepository.js +61 -0
- package/dist/identity/drizzle/PodDeletionOperationRepository.d.ts +64 -0
- package/dist/identity/drizzle/PodDeletionOperationRepository.js +241 -0
- package/dist/identity/drizzle/db.d.ts +8 -0
- package/dist/identity/drizzle/db.js +17 -0
- package/dist/index.d.ts +18 -1
- package/dist/index.js +28 -3
- package/dist/logging/log-secrets.d.ts +2 -0
- package/dist/logging/log-secrets.js +35 -0
- package/dist/logging/normalize-log.d.ts +5 -0
- package/dist/logging/normalize-log.js +12 -0
- package/dist/main.js +2 -0
- package/dist/pods/ReservedSuffixIdentifierGenerator.js +2 -1
- package/dist/provision/CloudProfileCreator.d.ts +35 -0
- package/dist/provision/CloudProfileCreator.js +229 -0
- package/dist/provision/CloudProfileCreator.jsonld +186 -0
- package/dist/provision/LocalPodProvisioningService.d.ts +2 -0
- package/dist/provision/LocalPodProvisioningService.js +76 -32
- package/dist/provision/LocalPodProvisioningService.jsonld +8 -0
- package/dist/provision/PodDeletionRoute.d.ts +2 -0
- package/dist/provision/PodDeletionRoute.js +12 -0
- package/dist/provision/PodMutationLock.d.ts +5 -0
- package/dist/provision/PodMutationLock.js +13 -0
- package/dist/provision/ProvisionPodCreator.d.ts +9 -13
- package/dist/provision/ProvisionPodCreator.js +48 -17
- package/dist/provision/ProvisionPodCreator.jsonld +31 -1
- package/dist/provision/ProvisionPodStore.js +19 -5
- package/dist/provision/ProvisionReceiptCodec.d.ts +4 -0
- package/dist/provision/ProvisionReceiptCodec.js +2 -0
- package/dist/runtime/GatewayAdminProxyAuth.d.ts +2 -2
- package/dist/runtime/Proxy.d.ts +2 -0
- package/dist/runtime/Proxy.js +55 -22
- package/dist/runtime/XpodRuntime.js +20 -4
- package/dist/runtime/bootstrap.js +1 -0
- package/dist/runtime/compat/ensureSupportedBun.d.ts +2 -0
- package/dist/runtime/compat/ensureSupportedBun.js +23 -0
- package/dist/runtime/css-process.d.ts +3 -3
- package/dist/runtime/gateway-locator-secret.js +9 -135
- package/dist/runtime/host/node/NodeRuntimeHost.d.ts +3 -2
- package/dist/runtime/host/node/NodeRuntimeHost.js +37 -12
- package/dist/runtime/host/types.d.ts +8 -1
- package/dist/runtime/index.d.ts +7 -1
- package/dist/runtime/index.js +21 -1
- package/dist/runtime/ingress-occupant.d.ts +39 -0
- package/dist/runtime/ingress-occupant.js +111 -0
- package/dist/runtime/ingress-port.d.ts +89 -0
- package/dist/runtime/ingress-port.js +165 -0
- package/dist/runtime/lifecycle.js +22 -5
- package/dist/runtime/local-secret-file.d.ts +9 -0
- package/dist/runtime/local-secret-file.js +152 -0
- package/dist/runtime/port-finder.d.ts +23 -3
- package/dist/runtime/port-finder.js +43 -20
- package/dist/runtime/port-reservations.d.ts +86 -0
- package/dist/runtime/port-reservations.js +183 -0
- package/dist/runtime/runner/node/CommunitySolidServerCssRunner.js +2 -0
- package/dist/runtime/runtime-types.d.ts +2 -0
- package/dist/runtime/safe-env.d.ts +1 -1
- package/dist/runtime/secret-cell-root-key.d.ts +7 -0
- package/dist/runtime/secret-cell-root-key.js +38 -0
- package/dist/runtime/socket-http.js +5 -1
- package/dist/runtime/socket-transport.js +3 -4
- package/dist/runtime/user-env.d.ts +2 -2
- package/dist/service/PodDataDeletionService.d.ts +28 -0
- package/dist/service/PodDataDeletionService.js +126 -0
- package/dist/service/PodDataDeletionService.jsonld +111 -0
- package/dist/service/PodDeletionLifecycleService.d.ts +39 -0
- package/dist/service/PodDeletionLifecycleService.js +262 -0
- package/dist/service/PodDeletionLifecycleService.jsonld +210 -0
- package/dist/shared/xpod-route-policy.d.ts +3 -1
- package/dist/shared/xpod-route-policy.js +19 -1
- package/dist/solidfs/LocalRdfAuthorityRecoveryInitializer.js +1 -1
- package/dist/solidfs/PodSolidFsHttpClient.d.ts +5 -5
- package/dist/solidfs/PodSolidFsHttpClient.js +14 -55
- package/dist/solidfs/PodSolidFsHydrator.d.ts +2 -4
- package/dist/solidfs/PodSolidFsHydrator.js +6 -6
- package/dist/solidfs/PodSolidFsSyncer.d.ts +10 -8
- package/dist/solidfs/PodSolidFsSyncer.js +20 -16
- package/dist/solidfs/RdfIndexSolidFsSyncer.d.ts +3 -0
- package/dist/solidfs/RdfIndexSolidFsSyncer.js +4 -3
- package/dist/solidfs/SolidFsSyncJournal.d.ts +11 -0
- package/dist/solidfs/SolidFsSyncJournal.js +130 -21
- package/dist/solidfs/SolidFsSyncJournal.jsonld +4 -0
- package/dist/storage/HierarchyLockingResourceStore.d.ts +17 -0
- package/dist/storage/HierarchyLockingResourceStore.js +147 -0
- package/dist/storage/HierarchyLockingResourceStore.jsonld +104 -0
- package/dist/storage/RepresentationPartialConvertingStore.js +11 -2
- package/dist/storage/SparqlUpdateResourceStore.js +5 -0
- package/dist/storage/StorageVersion.d.ts +16 -0
- package/dist/storage/StorageVersion.js +36 -0
- package/dist/storage/accessors/MinioDataAccessor.js +2 -1
- package/dist/storage/accessors/MixDataAccessor.d.ts +7 -0
- package/dist/storage/accessors/MixDataAccessor.js +99 -10
- package/dist/storage/accessors/MixDataAccessor.jsonld +8 -0
- package/dist/storage/accessors/SolidRdfDataAccessor.d.ts +3 -0
- package/dist/storage/accessors/SolidRdfDataAccessor.js +30 -7
- package/dist/storage/accessors/SolidRdfDataAccessor.jsonld +8 -0
- package/dist/storage/conditions/StorageETagHandler.d.ts +9 -0
- package/dist/storage/conditions/StorageETagHandler.js +32 -0
- package/dist/storage/conditions/StorageETagHandler.jsonld +34 -0
- package/dist/storage/locking/PodLifecycleLocker.d.ts +8 -0
- package/dist/storage/locking/PodLifecycleLocker.js +17 -0
- package/dist/storage/locking/PodLifecycleLocker.jsonld +47 -0
- package/dist/storage/locking/PodLifecycleRedisLocker.d.ts +19 -0
- package/dist/storage/locking/PodLifecycleRedisLocker.js +52 -0
- package/dist/storage/locking/PodLifecycleRedisLocker.jsonld +156 -0
- package/dist/storage/locking/UrlAwareRedisLocker.d.ts +21 -9
- package/dist/storage/locking/UrlAwareRedisLocker.js +80 -121
- package/dist/storage/locking/UrlAwareRedisLocker.jsonld +71 -21
- package/dist/storage/rdf/PostgresRdfEngine.d.ts +2 -1
- package/dist/storage/rdf/PostgresRdfEngine.js +3 -0
- package/dist/storage/rdf/PostgresRdfEngine.jsonld +4 -0
- package/dist/storage/rdf/RdfAccessScope.js +23 -18
- package/dist/supervisor/Supervisor.d.ts +29 -5
- package/dist/supervisor/Supervisor.js +137 -27
- package/dist/supervisor/types.d.ts +14 -1
- package/dist/test-utils/local-managed-client-p2p-e2e-smoke.js +15 -0
- package/dist/tunnel/LocalTunnelProvider.d.ts +7 -0
- package/dist/tunnel/LocalTunnelProvider.js +11 -3
- package/dist/tunnel/LocalTunnelProvider.jsonld +39 -0
- package/dist/tunnel/NgrokTunnelProvider.d.ts +2 -0
- package/dist/tunnel/NgrokTunnelProvider.js +3 -1
- package/dist/tunnel/NgrokTunnelProvider.jsonld +39 -0
- package/dist/tunnel/SakuraFrpTunnelProvider.d.ts +3 -1
- package/dist/tunnel/SakuraFrpTunnelProvider.js +7 -3
- package/dist/tunnel/TunnelClientManager.d.ts +73 -0
- package/dist/tunnel/TunnelClientManager.js +181 -0
- package/dist/tunnel/TunnelClientResolver.d.ts +56 -0
- package/dist/tunnel/TunnelClientResolver.js +135 -0
- package/dist/tunnel/TunnelDeclaredOrigin.d.ts +78 -0
- package/dist/tunnel/TunnelDeclaredOrigin.js +185 -0
- package/dist/tunnel/TunnelLifecycle.d.ts +9 -1
- package/dist/tunnel/TunnelLifecycle.js +24 -3
- package/dist/tunnel/TunnelProviderCatalog.d.ts +32 -0
- package/dist/tunnel/TunnelProviderCatalog.js +43 -0
- package/dist/util/identifiers/ClusterIdentifierStrategy.d.ts +1 -0
- package/dist/util/identifiers/ClusterIdentifierStrategy.js +3 -3
- package/node_modules/@inrupt/solid-client-authn-core/dist/authenticatedFetch/dpopUtils.d.ts +3 -1
- package/node_modules/@inrupt/solid-client-authn-core/dist/index.js +85 -58
- package/node_modules/@inrupt/solid-client-authn-core/dist/index.mjs +86 -59
- package/node_modules/@undefineds.co/ai-connections/dist/AiApiKeyPool.d.ts +3 -3
- package/node_modules/@undefineds.co/ai-connections/dist/AiApiKeyPool.js +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/AiAuthorizationActions.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiClientConfigurationSection.d.ts +2 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiClientConfigurationSection.js +39 -10
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectDialog.d.ts +5 -5
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectDialog.js +9 -8
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsHeader.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsHeader.js +4 -4
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsList.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsList.js +7 -6
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsMain.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsMain.js +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsMainHeader.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsPanel.d.ts +6 -5
- package/node_modules/@undefineds.co/ai-connections/dist/AiConnectionsPanel.js +10 -8
- package/node_modules/@undefineds.co/ai-connections/dist/AiCredentialPoolSection.d.ts +3 -3
- package/node_modules/@undefineds.co/ai-connections/dist/AiCredentialPoolSection.js +11 -36
- package/node_modules/@undefineds.co/ai-connections/dist/AiCredentialRow.d.ts +5 -3
- package/node_modules/@undefineds.co/ai-connections/dist/AiCredentialRow.js +16 -4
- package/node_modules/@undefineds.co/ai-connections/dist/AiCustomProviderDialog.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiCustomProviderDialog.js +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/AiEndpointList.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayKeyRow.d.ts +10 -3
- package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayKeyRow.js +14 -5
- package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayKeysSection.d.ts +5 -4
- package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayKeysSection.js +84 -30
- package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayModelsSection.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiGatewayModelsSection.js +4 -4
- package/node_modules/@undefineds.co/ai-connections/dist/AiModelCatalog.d.ts +11 -5
- package/node_modules/@undefineds.co/ai-connections/dist/AiModelCatalog.js +16 -7
- package/node_modules/@undefineds.co/ai-connections/dist/AiOfferingDetails.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiOfferingDetails.js +2 -4
- package/node_modules/@undefineds.co/ai-connections/dist/AiProviderCard.d.ts +4 -4
- package/node_modules/@undefineds.co/ai-connections/dist/AiProviderCard.js +14 -9
- package/node_modules/@undefineds.co/ai-connections/dist/AiProviderHeader.d.ts +2 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiProviderHeader.js +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/AiQuotaCard.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/AiQuotaCard.js +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/AiSortableCredentialList.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/authorization-methods.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/client-visuals.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/collection-runtime.d.ts +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/collections.d.ts +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/collections.js +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/contract/ai-connections-client.d.ts +6 -6
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client/normalize.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client/normalize.js +9 -10
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client/request.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client/types.d.ts +8 -1
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/base-adapter.d.ts +3 -3
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/codex.d.ts +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/index.cjs +42 -40
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/index.d.ts +6 -6
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/json-env-adapter.d.ts +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/pi.d.ts +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client-config/transaction.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/contract/index.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/contract/provider-catalog.cjs +28 -15
- package/node_modules/@undefineds.co/ai-connections/dist/contract/provider-catalog.d.ts +4 -4
- package/node_modules/@undefineds.co/ai-connections/dist/contract/provider-catalog.js +18 -7
- package/node_modules/@undefineds.co/ai-connections/dist/controller.d.ts +5 -4
- package/node_modules/@undefineds.co/ai-connections/dist/controller.js +24 -9
- package/node_modules/@undefineds.co/ai-connections/dist/credential-labels.d.ts +5 -1
- package/node_modules/@undefineds.co/ai-connections/dist/credential-labels.js +24 -0
- package/node_modules/@undefineds.co/ai-connections/dist/display-wording.d.ts +2 -7
- package/node_modules/@undefineds.co/ai-connections/dist/display-wording.js +4 -25
- package/node_modules/@undefineds.co/ai-connections/dist/error-wording.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/error-wording.js +5 -1
- package/node_modules/@undefineds.co/ai-connections/dist/gateway-endpoints.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/index.d.ts +25 -25
- package/node_modules/@undefineds.co/ai-connections/dist/offering-endpoints.d.ts +1 -1
- package/node_modules/@undefineds.co/ai-connections/dist/offering-label.d.ts +3 -1
- package/node_modules/@undefineds.co/ai-connections/dist/offering-label.js +7 -1
- package/node_modules/@undefineds.co/ai-connections/dist/provider-visuals.d.ts +4 -3
- package/node_modules/@undefineds.co/ai-connections/dist/provider-visuals.js +3 -2
- package/node_modules/@undefineds.co/ai-connections/dist/useAiConnectDialog.d.ts +3 -2
- package/node_modules/@undefineds.co/ai-connections/dist/useAiConnectDialog.js +18 -5
- package/node_modules/@undefineds.co/ai-connections/package.json +2 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/select-query-builder.js +3 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/subject/resolver.js +2 -3
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/triple/builder.js +2 -5
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/uri/resolver.d.ts +2 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/uri/resolver.js +12 -3
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/select-query-builder.js +3 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/subject/resolver.js +2 -3
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/builder.js +2 -5
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/uri/resolver.js +11 -3
- package/node_modules/@undefineds.co/drizzle-solid/package.json +1 -1
- package/node_modules/@undefineds.co/extension-sdk/dist/index.d.ts +6 -5
- package/node_modules/@undefineds.co/extension-sdk/dist/index.js +1 -0
- package/node_modules/@undefineds.co/extension-sdk/dist/layout.d.ts +39 -0
- package/node_modules/@undefineds.co/extension-sdk/dist/layout.js +40 -0
- package/node_modules/@undefineds.co/extension-sdk/dist/react/app-layout.d.ts +13 -1
- package/node_modules/@undefineds.co/extension-sdk/dist/react/app-layout.js +11 -3
- package/node_modules/@undefineds.co/extension-sdk/dist/react/workspace-layout.d.ts +29 -5
- package/node_modules/@undefineds.co/extension-sdk/dist/react/workspace-layout.js +77 -13
- package/node_modules/@undefineds.co/extension-sdk/dist/react.d.ts +5 -5
- package/node_modules/@undefineds.co/extension-sdk/dist/shell-state.d.ts +55 -0
- package/node_modules/@undefineds.co/extension-sdk/dist/shell-state.js +1 -0
- package/node_modules/@undefineds.co/extension-sdk/dist/solid-permissions.d.ts +1 -1
- package/node_modules/@undefineds.co/extension-sdk/dist/testing.d.ts +1 -1
- package/node_modules/@undefineds.co/extension-sdk/dist/web.d.ts +6 -6
- package/node_modules/@undefineds.co/extension-sdk/package.json +2 -2
- package/node_modules/@undefineds.co/extensions/dist-cjs/adapters/langchain.js +49 -0
- package/node_modules/@undefineds.co/extensions/dist-cjs/adapters/llamaindex.js +54 -0
- package/node_modules/@undefineds.co/extensions/dist-cjs/index.js +22 -0
- package/node_modules/@undefineds.co/extensions/dist-cjs/package.json +3 -0
- package/node_modules/@undefineds.co/extensions/dist-cjs/paddleocr.js +304 -0
- package/node_modules/@undefineds.co/extensions/dist-cjs/reader.js +44 -0
- package/node_modules/@undefineds.co/extensions/dist-cjs/registry.js +99 -0
- package/node_modules/@undefineds.co/extensions/dist-cjs/types.js +2 -0
- package/node_modules/@undefineds.co/models/dist/approval.repository.d.ts +20 -0
- package/node_modules/@undefineds.co/models/dist/approval.repository.js +81 -0
- package/node_modules/@undefineds.co/models/dist/credential.schema.d.ts +12 -0
- package/node_modules/@undefineds.co/models/dist/credential.schema.js +5 -0
- package/node_modules/@undefineds.co/models/dist/index.d.ts +1 -1
- package/node_modules/@undefineds.co/models/dist/index.js +1 -1
- package/node_modules/@undefineds.co/models/dist/namespaces.js +3 -0
- package/node_modules/@undefineds.co/models/dist/pod-storage-descriptor.d.ts +50 -0
- package/node_modules/@undefineds.co/models/dist/pod-storage-descriptor.js +16 -1
- package/node_modules/@undefineds.co/models/dist/schema.d.ts +10 -0
- package/node_modules/@undefineds.co/models/dist/task.schema.d.ts +6 -0
- package/node_modules/@undefineds.co/models/dist/task.schema.js +3 -0
- package/node_modules/@undefineds.co/models/package.json +2 -2
- package/node_modules/@undefineds.co/pod-collections/dist/index.cjs +33 -33
- package/node_modules/@undefineds.co/pod-collections/package.json +2 -2
- package/node_modules/@undefineds.co/shared-ui/dist/auth-surface.js +6 -6
- package/node_modules/@undefineds.co/shared-ui/dist/badge.d.ts +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/badge.js +2 -0
- package/node_modules/@undefineds.co/shared-ui/dist/brand-info.d.ts +9 -0
- package/node_modules/@undefineds.co/shared-ui/dist/brand-info.js +19 -0
- package/node_modules/@undefineds.co/shared-ui/dist/button.js +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/checkbox.d.ts +6 -0
- package/node_modules/@undefineds.co/shared-ui/dist/checkbox.js +16 -0
- package/node_modules/@undefineds.co/shared-ui/dist/confirmation-dialog.d.ts +16 -0
- package/node_modules/@undefineds.co/shared-ui/dist/confirmation-dialog.js +22 -0
- package/node_modules/@undefineds.co/shared-ui/dist/dialog.d.ts +3 -0
- package/node_modules/@undefineds.co/shared-ui/dist/dialog.js +5 -5
- package/node_modules/@undefineds.co/shared-ui/dist/email-input.d.ts +9 -0
- package/node_modules/@undefineds.co/shared-ui/dist/email-input.js +42 -0
- package/node_modules/@undefineds.co/shared-ui/dist/empty-state.d.ts +8 -0
- package/node_modules/@undefineds.co/shared-ui/dist/empty-state.js +6 -0
- package/node_modules/@undefineds.co/shared-ui/dist/focus.d.ts +3 -4
- package/node_modules/@undefineds.co/shared-ui/dist/focus.js +3 -4
- package/node_modules/@undefineds.co/shared-ui/dist/form-control.d.ts +2 -0
- package/node_modules/@undefineds.co/shared-ui/dist/form-control.js +3 -0
- package/node_modules/@undefineds.co/shared-ui/dist/form-field.d.ts +15 -0
- package/node_modules/@undefineds.co/shared-ui/dist/form-field.js +11 -0
- package/node_modules/@undefineds.co/shared-ui/dist/index.d.ts +45 -28
- package/node_modules/@undefineds.co/shared-ui/dist/index.js +17 -0
- package/node_modules/@undefineds.co/shared-ui/dist/input.js +2 -2
- package/node_modules/@undefineds.co/shared-ui/dist/list.d.ts +25 -0
- package/node_modules/@undefineds.co/shared-ui/dist/list.js +21 -0
- package/node_modules/@undefineds.co/shared-ui/dist/login/LocalReachabilitySummary.d.ts +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/login/LoginModal.d.ts +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/login/LoginView.d.ts +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/login/error-messages.d.ts +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/login/index.d.ts +5 -5
- package/node_modules/@undefineds.co/shared-ui/dist/login/presentation.d.ts +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/login/provider-model.d.ts +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/login/types.d.ts +3 -3
- package/node_modules/@undefineds.co/shared-ui/dist/login.d.ts +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/login.js +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/meter.d.ts +24 -0
- package/node_modules/@undefineds.co/shared-ui/dist/meter.js +22 -0
- package/node_modules/@undefineds.co/shared-ui/dist/native-select.d.ts +5 -0
- package/node_modules/@undefineds.co/shared-ui/dist/native-select.js +7 -0
- package/node_modules/@undefineds.co/shared-ui/dist/notice.d.ts +25 -0
- package/node_modules/@undefineds.co/shared-ui/dist/notice.js +32 -0
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/AccountSections.d.ts +12 -5
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/AccountSections.js +8 -2
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/ConsentView.d.ts +4 -2
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/ConsentView.js +3 -3
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/DeviceDialogs.d.ts +3 -3
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/IdpChrome.d.ts +2 -2
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/IdpChrome.js +2 -2
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/IdpViews.d.ts +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/IdpViews.js +6 -5
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/NetworkPanel.d.ts +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/PodSignIn.d.ts +5 -3
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/PodSignIn.js +2 -2
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/PodSignInFrame.d.ts +4 -4
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/PodSignInFrame.js +6 -6
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/StorageBadge.d.ts +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/account-parts.d.ts +2 -2
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/copy.d.ts +5 -0
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/copy.js +10 -0
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/index.d.ts +15 -15
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/parts.d.ts +9 -18
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/parts.js +12 -14
- package/node_modules/@undefineds.co/shared-ui/dist/search-input.d.ts +5 -0
- package/node_modules/@undefineds.co/shared-ui/dist/search-input.js +8 -0
- package/node_modules/@undefineds.co/shared-ui/dist/section-header.d.ts +13 -0
- package/node_modules/@undefineds.co/shared-ui/dist/section-header.js +10 -0
- package/node_modules/@undefineds.co/shared-ui/dist/segmented-control.d.ts +30 -0
- package/node_modules/@undefineds.co/shared-ui/dist/segmented-control.js +81 -0
- package/node_modules/@undefineds.co/shared-ui/dist/select.d.ts +10 -0
- package/node_modules/@undefineds.co/shared-ui/dist/select.js +20 -0
- package/node_modules/@undefineds.co/shared-ui/dist/setting-row.d.ts +23 -0
- package/node_modules/@undefineds.co/shared-ui/dist/setting-row.js +14 -0
- package/node_modules/@undefineds.co/shared-ui/dist/status.d.ts +35 -0
- package/node_modules/@undefineds.co/shared-ui/dist/status.js +29 -0
- package/node_modules/@undefineds.co/shared-ui/dist/textarea.d.ts +4 -0
- package/node_modules/@undefineds.co/shared-ui/dist/textarea.js +6 -0
- package/node_modules/@undefineds.co/shared-ui/dist/theme.css +168 -75
- package/node_modules/@undefineds.co/shared-ui/dist/toast.js +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/tooltip.d.ts +2 -1
- package/node_modules/@undefineds.co/shared-ui/dist/tooltip.js +3 -2
- package/node_modules/@undefineds.co/shared-ui/dist/workspace.d.ts +14 -0
- package/node_modules/@undefineds.co/shared-ui/dist/workspace.js +14 -0
- package/node_modules/@undefineds.co/shared-ui/package.json +3 -2
- package/node_modules/@undefineds.co/solid-sdk/dist/access-route.cjs +13 -9
- package/node_modules/@undefineds.co/solid-sdk/dist/access-route.d.ts +2 -1
- package/node_modules/@undefineds.co/solid-sdk/dist/access-route.js +20 -10
- package/node_modules/@undefineds.co/solid-sdk/dist/index.bun.js +9 -0
- package/node_modules/@undefineds.co/solid-sdk/dist/index.cjs +177 -101
- package/node_modules/@undefineds.co/solid-sdk/dist/index.d.ts +8 -8
- package/node_modules/@undefineds.co/solid-sdk/dist/local-route-fetch.cjs +61 -17
- package/node_modules/@undefineds.co/solid-sdk/dist/local-route-fetch.d.ts +23 -0
- package/node_modules/@undefineds.co/solid-sdk/dist/local-route-fetch.js +73 -11
- package/node_modules/@undefineds.co/solid-sdk/dist/react.d.ts +2 -2
- package/node_modules/@undefineds.co/solid-sdk/dist/session.cjs +333 -0
- package/node_modules/@undefineds.co/solid-sdk/dist/session.js +54 -25
- package/node_modules/@undefineds.co/solid-sdk/dist/storage-selection.d.ts +2 -2
- package/node_modules/@undefineds.co/solid-sdk/package.json +4 -2
- package/node_modules/jose/package.json +120 -30
- package/node_modules/openid-client/node_modules/jose/package.json +1 -1
- package/node_modules/openid-client/types/index.d.ts +623 -0
- package/package.json +13 -7
- package/scripts/patch-jose.js +5 -3
- package/static/app/assets/index-hMwukuNA.js +230 -0
- package/static/app/assets/inrupt-smoke.js +57 -56
- package/static/app/assets/main.css +1 -1
- package/static/app/assets/main.js +30 -30
- package/static/app/auth.html +2 -2
- package/static/app/brand/xpod-app-16.svg +1 -0
- package/static/app/brand/xpod-app-24.svg +1 -0
- package/static/app/index.html +3 -3
- package/static/app/inrupt-smoke.html +2 -1
- package/static/dashboard/assets/AccountAuthBoundary-BvoDydRz.js +1 -0
- package/static/dashboard/assets/DesktopOidcCallback-BwIj874x.js +1 -0
- package/static/dashboard/assets/DevicePages-jOjMcvsr.js +2 -0
- package/static/dashboard/assets/ModelsPage-CMTdfqBR.js +11 -0
- package/static/dashboard/assets/PaneListHeader-Dn5O0mwy.js +1 -0
- package/static/dashboard/assets/PodDeletionAuthorizationPanel-D3NOG6ZM.js +42 -0
- package/static/dashboard/assets/PodPage-BueBdJ9_.js +1 -0
- package/static/dashboard/assets/SystemSettingsPage-BNQP_Yuc.js +1 -0
- package/static/dashboard/assets/TasksPage-CxtLJiSF.js +1 -0
- package/static/dashboard/assets/TasksPage-DPpAgn4C.css +1 -0
- package/static/dashboard/assets/WebDesktopEntry-vnb4CZWp.js +1 -0
- package/static/dashboard/assets/XpodAiConnectionsPodStore-wx3Ttupm.js +18 -0
- package/static/dashboard/assets/XpodShellApp-5FWY8-d5.js +4 -0
- package/static/dashboard/assets/XpodShellApp-Bwom2xL3.css +1 -0
- package/static/dashboard/assets/account-session-DCUmCop1.js +1 -0
- package/static/dashboard/assets/button-By5Bgvmb.js +1 -0
- package/static/dashboard/assets/collection-runtime-BnomuB0E.js +1 -0
- package/static/dashboard/assets/createLucideIcon-bunMzPms.js +1 -0
- package/static/dashboard/assets/dashboard-C64R553B.css +1 -0
- package/static/dashboard/assets/dashboard-mlsg3yaw.js +12 -0
- package/static/dashboard/assets/index-DvMG5pHk.js +20 -0
- package/static/dashboard/assets/label-Bj03L9xs.js +1 -0
- package/static/dashboard/assets/nav-item-style-BNqWQY6p.js +1 -0
- package/static/dashboard/assets/safe-continuation-D9AhcWiB.js +1 -0
- package/static/dashboard/assets/section-header-CLCzbOp_.js +1 -0
- package/static/dashboard/assets/setting-row-DTCec8A2.js +1 -0
- package/static/dashboard/assets/xpod-remembered-login-Dr69A0Rv.js +295 -0
- package/static/dashboard/auth.html +2 -2
- package/static/dashboard/brand/xpod-app-16.svg +1 -0
- package/static/dashboard/brand/xpod-app-24.svg +1 -0
- package/static/dashboard/dashboard.html +4 -3
- package/static/settings/assets/AccountAuthBoundary-C0og_gIA.js +1 -0
- package/static/settings/assets/DesktopOidcCallback-C5q4oFZ0.js +1 -0
- package/static/settings/assets/DevicePages-fyHjjucT.js +2 -0
- package/static/settings/assets/ModelsPage-EyOByLyE.js +11 -0
- package/static/settings/assets/PaneListHeader-DqVlMe2D.js +1 -0
- package/static/settings/assets/PodDeletionAuthorizationPanel-DgVvarVY.js +42 -0
- package/static/settings/assets/PodPage-DY4Oi9wg.js +1 -0
- package/static/settings/assets/SystemSettingsPage-Crzm_DrI.js +1 -0
- package/static/settings/assets/TasksPage-CfXJbnlt.js +1 -0
- package/static/settings/assets/TasksPage-DPpAgn4C.css +1 -0
- package/static/settings/assets/WebDesktopEntry-BGC5eRF2.js +1 -0
- package/static/settings/assets/XpodAiConnectionsPodStore-CXcmgKmQ.js +3 -0
- package/static/settings/assets/XpodShellApp-Bwom2xL3.css +1 -0
- package/static/settings/assets/XpodShellApp-D1PS3Iut.js +4 -0
- package/static/settings/assets/XpodThemeProvider-C64R553B.css +1 -0
- package/static/settings/assets/XpodThemeProvider-CB6LepTA.js +12 -0
- package/static/settings/assets/account-session-BcLjCj0x.js +1 -0
- package/static/settings/assets/auth-callback-DSPQ28ar.js +1 -0
- package/static/settings/assets/button-BObT8pTE.js +1 -0
- package/static/settings/assets/collection-runtime-DzNbdZGe.js +1 -0
- package/static/settings/assets/createLucideIcon-BVsUxXpZ.js +1 -0
- package/static/settings/assets/index-browser-3WfrNbcG.js +273 -0
- package/static/settings/assets/index-ktjMkj7-.js +20 -0
- package/static/settings/assets/label-BrqO8_m_.js +1 -0
- package/static/settings/assets/nav-item-style-Di2CxkDU.js +1 -0
- package/static/settings/assets/safe-continuation-Dx6ceJpY.js +1 -0
- package/static/settings/assets/section-header-Dtl7yjVr.js +1 -0
- package/static/settings/assets/setting-row-BL6Hhe8N.js +1 -0
- package/static/settings/assets/settings-DaRBxoZk.js +1 -0
- package/static/settings/assets/xpod-remembered-login-Q66DH12t.js +295 -0
- package/static/settings/auth-callback.html +4 -3
- package/static/settings/auth.html +2 -2
- package/static/settings/brand/xpod-app-16.svg +1 -0
- package/static/settings/brand/xpod-app-24.svg +1 -0
- package/static/settings/settings.html +5 -4
- package/node_modules/@solid/access-token-verifier/node_modules/n3/browser/n3.min.js +0 -1
- package/node_modules/@solid/community-server/node_modules/n3/browser/n3.min.js +0 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/aggregates.d.ts +0 -19
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/ast-to-sparql.d.ts +0 -66
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/compile-time-types.d.ts +0 -40
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/comunica-patch.d.ts +0 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/conflict-resolution.d.ts +0 -110
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/composite-discovery.d.ts +0 -18
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/index.d.ts +0 -7
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/interop-discovery.d.ts +0 -36
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/interop-tables.d.ts +0 -37
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/interop-types.d.ts +0 -36
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/provider-cache.d.ts +0 -99
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/typeindex-discovery.d.ts +0 -32
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/types.d.ts +0 -132
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/exact-records.d.ts +0 -21
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/index.d.ts +0 -14
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-executor.d.ts +0 -76
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-strategy.d.ts +0 -53
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/pod-executor-types.d.ts +0 -9
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/pod-executor.d.ts +0 -73
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/sparql-strategy.d.ts +0 -31
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/strategy-factory.d.ts +0 -42
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/types.d.ts +0 -85
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/expressions.d.ts +0 -40
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/federated/executor.d.ts +0 -98
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/federated/index.d.ts +0 -3
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/federated/types.d.ts +0 -69
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/channels/base-channel.d.ts +0 -29
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/channels/index.d.ts +0 -4
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/channels/sse-channel.d.ts +0 -50
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/channels/websocket-channel.d.ts +0 -16
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/index.d.ts +0 -3
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/notifications-client.d.ts +0 -88
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/notifications/types.d.ts +0 -228
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/order-by.d.ts +0 -9
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-database.d.ts +0 -548
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-dialect.d.ts +0 -324
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-discovery.d.ts +0 -20
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-session.d.ts +0 -52
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/profile-manager.d.ts +0 -90
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/default-id-template.d.ts +0 -10
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/delete-query-builder.d.ts +0 -31
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/helpers.d.ts +0 -11
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/index.d.ts +0 -7
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/insert-query-builder.d.ts +0 -37
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/select-query-builder.d.ts +0 -150
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/types.d.ts +0 -40
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/update-query-builder.d.ts +0 -34
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-conditions.d.ts +0 -60
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-where-policy.d.ts +0 -8
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/rdf-constants.d.ts +0 -16
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/rdf-schema-parser.d.ts +0 -34
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/repository.d.ts +0 -78
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-reference.d.ts +0 -31
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/base-resolver.d.ts +0 -141
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/document-resolver.d.ts +0 -36
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/factory.d.ts +0 -27
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/fragment-resolver.d.ts +0 -34
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/index.d.ts +0 -11
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/types.d.ts +0 -57
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/runtime/pod-runtime.d.ts +0 -60
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/columns.d.ts +0 -74
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/defs.d.ts +0 -101
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/factories.d.ts +0 -29
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/index.d.ts +0 -9
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/pod-table.d.ts +0 -118
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/relations.d.ts +0 -26
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/solid-schema.d.ts +0 -22
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/types.d.ts +0 -45
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/utils.d.ts +0 -15
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/select-plan.d.ts +0 -50
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/services/pod-services.d.ts +0 -43
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/generator.d.ts +0 -12
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/index.d.ts +0 -4
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/manager.d.ts +0 -45
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/shacl-parser.d.ts +0 -19
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/shacl.d.ts +0 -11
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/types.d.ts +0 -149
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/shape/validator.d.ts +0 -11
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/solid-n3-client.d.ts +0 -86
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/builder/expression-builder.d.ts +0 -56
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/builder/select-builder.d.ts +0 -44
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/builder/update-builder.d.ts +0 -33
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/helpers.d.ts +0 -19
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql/types.d.ts +0 -10
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql-engine.d.ts +0 -16
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/sparql-executor.d.ts +0 -40
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/subject/index.d.ts +0 -29
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/subject/resolver.d.ts +0 -116
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/subject/types.d.ts +0 -97
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/builder.d.ts +0 -86
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/array.d.ts +0 -23
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/default.d.ts +0 -20
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/index.d.ts +0 -35
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/inline.d.ts +0 -35
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/inverse.d.ts +0 -26
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/uri.d.ts +0 -28
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/index.d.ts +0 -9
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/types.d.ts +0 -156
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/typeindex-manager.d.ts +0 -130
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/types.d.ts +0 -57
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/uri/index.d.ts +0 -8
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/uri/resolver.d.ts +0 -153
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/uri/types.d.ts +0 -154
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/utils/debug-logger.d.ts +0 -19
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/utils/origin-auth.d.ts +0 -28
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/utils/pod-root.d.ts +0 -15
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/zod-integration.d.ts +0 -97
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/driver.d.ts +0 -60
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/index.d.ts +0 -31
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/pod.d.ts +0 -140
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/solid.d.ts +0 -21
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/test-utils/real-test-helpers.d.ts +0 -5
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/types/sparql-types.d.ts +0 -27
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/find-by-iri.d.ts +0 -11
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/helpers.d.ts +0 -17
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/namespace.d.ts +0 -4
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/rdf-helpers.d.ts +0 -17
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/rdf-validation.d.ts +0 -27
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/thing-operations.d.ts +0 -28
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/webid-resolver.d.ts +0 -23
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/index.ts +0 -4
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/locales/index.ts +0 -1
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/mini/index.ts +0 -3
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/ZodError.ts +0 -330
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/datetime.ts +0 -58
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +0 -80
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/index.ts +0 -59
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/ipv4.ts +0 -57
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/object.ts +0 -69
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/primitives.ts +0 -162
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/realworld.ts +0 -63
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/string.ts +0 -55
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/benchmarks/union.ts +0 -80
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/errors.ts +0 -13
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/external.ts +0 -6
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/helpers/enumUtil.ts +0 -17
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/helpers/errorUtil.ts +0 -8
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/helpers/parseUtil.ts +0 -176
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/helpers/partialUtil.ts +0 -34
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/helpers/typeAliases.ts +0 -2
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/helpers/util.ts +0 -224
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/index.ts +0 -4
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/locales/en.ts +0 -124
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/standard-schema.ts +0 -113
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/Mocker.ts +0 -54
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/all-errors.test.ts +0 -157
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/anyunknown.test.ts +0 -28
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/array.test.ts +0 -71
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/async-parsing.test.ts +0 -388
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/async-refinements.test.ts +0 -46
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/base.test.ts +0 -29
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/bigint.test.ts +0 -55
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/branded.test.ts +0 -53
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/catch.test.ts +0 -220
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/coerce.test.ts +0 -133
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/complex.test.ts +0 -70
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/custom.test.ts +0 -31
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/date.test.ts +0 -32
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/deepmasking.test.ts +0 -186
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/default.test.ts +0 -112
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/description.test.ts +0 -33
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +0 -315
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/enum.test.ts +0 -80
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/error.test.ts +0 -551
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/firstparty.test.ts +0 -87
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +0 -21
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/function.test.ts +0 -261
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/generics.test.ts +0 -48
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/instanceof.test.ts +0 -37
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/intersection.test.ts +0 -110
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/language-server.source.ts +0 -76
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/language-server.test.ts +0 -207
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/literal.test.ts +0 -36
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/map.test.ts +0 -110
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/masking.test.ts +0 -4
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/mocker.test.ts +0 -19
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/nan.test.ts +0 -24
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/nativeEnum.test.ts +0 -87
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/nullable.test.ts +0 -42
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/number.test.ts +0 -176
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/object-augmentation.test.ts +0 -29
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +0 -29
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/object.test.ts +0 -434
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/optional.test.ts +0 -42
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/parseUtil.test.ts +0 -23
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/parser.test.ts +0 -41
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/partials.test.ts +0 -243
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/pickomit.test.ts +0 -111
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/pipeline.test.ts +0 -29
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/preprocess.test.ts +0 -186
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/primitive.test.ts +0 -440
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/promise.test.ts +0 -90
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/readonly.test.ts +0 -194
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/record.test.ts +0 -171
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/recursive.test.ts +0 -197
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/refine.test.ts +0 -313
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/safeparse.test.ts +0 -27
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/set.test.ts +0 -142
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/standard-schema.test.ts +0 -83
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/string.test.ts +0 -916
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/transformer.test.ts +0 -233
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/tuple.test.ts +0 -90
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/unions.test.ts +0 -57
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/validations.test.ts +0 -133
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/tests/void.test.ts +0 -15
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v3/types.ts +0 -5138
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/checks.ts +0 -32
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/coerce.ts +0 -27
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/compat.ts +0 -70
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/errors.ts +0 -82
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/external.ts +0 -52
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/from-json-schema.ts +0 -659
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/index.ts +0 -5
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/iso.ts +0 -90
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/parse.ts +0 -82
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/schemas.ts +0 -2672
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +0 -26
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/apply.test.ts +0 -59
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/array.test.ts +0 -264
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/assignability.test.ts +0 -216
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +0 -381
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +0 -68
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/base.test.ts +0 -7
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/bigint.test.ts +0 -54
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/brand.test.ts +0 -106
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/catch.test.ts +0 -326
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +0 -20
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +0 -573
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/codec.test.ts +0 -703
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/coerce.test.ts +0 -160
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/continuability.test.ts +0 -374
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/custom.test.ts +0 -40
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/date.test.ts +0 -62
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/datetime.test.ts +0 -302
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/default.test.ts +0 -409
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +0 -27
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/description.test.ts +0 -32
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +0 -197
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +0 -694
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/enum.test.ts +0 -285
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +0 -807
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/error.test.ts +0 -711
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/file.test.ts +0 -96
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +0 -179
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +0 -26
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +0 -895
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/function.test.ts +0 -360
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/generics.test.ts +0 -72
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/global-config.test.ts +0 -39
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/hash.test.ts +0 -68
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/index.test.ts +0 -939
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +0 -60
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/intersection.test.ts +0 -198
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +0 -46
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/json.test.ts +0 -109
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/lazy.test.ts +0 -227
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/literal.test.ts +0 -117
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/locales_ka.test.ts +0 -29
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/locales_ro.test.ts +0 -24
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/map.test.ts +0 -330
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/nan.test.ts +0 -21
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +0 -168
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +0 -101
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/nullable.test.ts +0 -22
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/number.test.ts +0 -325
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/object.test.ts +0 -717
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/optional.test.ts +0 -333
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/partial.test.ts +0 -450
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +0 -211
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/pipe.test.ts +0 -101
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/prefault.test.ts +0 -74
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +0 -26
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +0 -351
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/primitive.test.ts +0 -175
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/promise.test.ts +0 -81
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +0 -23
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/readonly.test.ts +0 -252
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/record.test.ts +0 -717
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +0 -631
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/refine.test.ts +0 -633
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/registries.test.ts +0 -243
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/set.test.ts +0 -181
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +0 -134
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +0 -125
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/string.test.ts +0 -1224
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +0 -106
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +0 -771
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +0 -438
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +0 -3125
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/transform.test.ts +0 -378
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/tuple.test.ts +0 -496
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/union.test.ts +0 -273
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/url.test.ts +0 -13
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/validations.test.ts +0 -283
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/classic/tests/void.test.ts +0 -12
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/api.ts +0 -1823
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/checks.ts +0 -1293
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/config.ts +0 -15
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/core.ts +0 -153
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/doc.ts +0 -44
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/errors.ts +0 -455
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/index.ts +0 -16
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/json-schema-generator.ts +0 -126
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/json-schema-processors.ts +0 -666
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/json-schema.ts +0 -147
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/parse.ts +0 -195
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/regexes.ts +0 -190
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/registries.ts +0 -105
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/schemas.ts +0 -4730
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/standard-schema.ts +0 -159
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/extend.test.ts +0 -59
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/index.test.ts +0 -46
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/be.test.ts +0 -124
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/el.test.ts +0 -215
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/en.test.ts +0 -22
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/es.test.ts +0 -181
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +0 -72
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/he.test.ts +0 -379
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/hr.test.ts +0 -163
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +0 -46
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +0 -128
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +0 -69
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +0 -105
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +0 -125
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +0 -45
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/to-json-schema.ts +0 -622
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/util.ts +0 -983
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/versions.ts +0 -5
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/core/zsf.ts +0 -323
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/index.ts +0 -4
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ar.ts +0 -115
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/az.ts +0 -111
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/be.ts +0 -176
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/bg.ts +0 -128
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ca.ts +0 -116
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/cs.ts +0 -118
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/da.ts +0 -123
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/de.ts +0 -116
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/el.ts +0 -121
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/en.ts +0 -123
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/eo.ts +0 -118
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/es.ts +0 -141
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/fa.ts +0 -126
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/fi.ts +0 -121
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/fr-CA.ts +0 -116
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/fr.ts +0 -132
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/he.ts +0 -246
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/hr.ts +0 -131
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/hu.ts +0 -117
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/hy.ts +0 -164
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/id.ts +0 -115
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/index.ts +0 -52
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/is.ts +0 -119
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/it.ts +0 -116
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ja.ts +0 -114
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ka.ts +0 -123
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/kh.ts +0 -7
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/km.ts +0 -119
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ko.ts +0 -121
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/lt.ts +0 -239
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/mk.ts +0 -118
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ms.ts +0 -115
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/nl.ts +0 -121
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/no.ts +0 -116
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ota.ts +0 -117
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/pl.ts +0 -118
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ps.ts +0 -126
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/pt.ts +0 -116
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ro.ts +0 -129
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ru.ts +0 -176
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/sl.ts +0 -118
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/sv.ts +0 -119
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ta.ts +0 -118
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/th.ts +0 -119
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/tr.ts +0 -111
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ua.ts +0 -7
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/uk.ts +0 -117
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/ur.ts +0 -119
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/uz.ts +0 -117
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/vi.ts +0 -117
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/yo.ts +0 -124
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/zh-CN.ts +0 -116
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/locales/zh-TW.ts +0 -115
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/checks.ts +0 -32
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/coerce.ts +0 -27
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/external.ts +0 -41
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/index.ts +0 -3
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/iso.ts +0 -66
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/parse.ts +0 -14
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/schemas.ts +0 -1947
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/apply.test.ts +0 -24
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/assignability.test.ts +0 -129
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/brand.test.ts +0 -94
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/checks.test.ts +0 -144
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/codec.test.ts +0 -548
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/computed.test.ts +0 -36
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/error.test.ts +0 -22
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/functions.test.ts +0 -5
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/index.test.ts +0 -993
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/number.test.ts +0 -95
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/object.test.ts +0 -227
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +0 -43
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +0 -325
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +0 -50
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4/mini/tests/string.test.ts +0 -352
- package/node_modules/@undefineds.co/drizzle-solid/node_modules/zod/src/v4-mini/index.ts +0 -3
- package/node_modules/@undefineds.co/models/node_modules/n3/browser/n3.min.js +0 -1
- package/node_modules/jose/dist/browser/index.js +0 -30
- package/node_modules/jose/dist/browser/jwe/compact/decrypt.js +0 -27
- package/node_modules/jose/dist/browser/jwe/compact/encrypt.js +0 -26
- package/node_modules/jose/dist/browser/jwe/flattened/decrypt.js +0 -161
- package/node_modules/jose/dist/browser/jwe/flattened/encrypt.js +0 -153
- package/node_modules/jose/dist/browser/jwe/general/decrypt.js +0 -31
- package/node_modules/jose/dist/browser/jwe/general/encrypt.js +0 -174
- package/node_modules/jose/dist/browser/jwk/embedded.js +0 -17
- package/node_modules/jose/dist/browser/jwk/thumbprint.js +0 -53
- package/node_modules/jose/dist/browser/jwks/local.js +0 -124
- package/node_modules/jose/dist/browser/jwks/remote.js +0 -139
- package/node_modules/jose/dist/browser/jws/compact/sign.js +0 -17
- package/node_modules/jose/dist/browser/jws/compact/verify.js +0 -21
- package/node_modules/jose/dist/browser/jws/flattened/sign.js +0 -81
- package/node_modules/jose/dist/browser/jws/flattened/verify.js +0 -122
- package/node_modules/jose/dist/browser/jws/general/sign.js +0 -67
- package/node_modules/jose/dist/browser/jws/general/verify.js +0 -24
- package/node_modules/jose/dist/browser/jwt/decrypt.js +0 -23
- package/node_modules/jose/dist/browser/jwt/encrypt.js +0 -68
- package/node_modules/jose/dist/browser/jwt/produce.js +0 -75
- package/node_modules/jose/dist/browser/jwt/sign.js +0 -20
- package/node_modules/jose/dist/browser/jwt/unsecured.js +0 -32
- package/node_modules/jose/dist/browser/jwt/verify.js +0 -15
- package/node_modules/jose/dist/browser/key/export.js +0 -12
- package/node_modules/jose/dist/browser/key/generate_key_pair.js +0 -4
- package/node_modules/jose/dist/browser/key/generate_secret.js +0 -4
- package/node_modules/jose/dist/browser/key/import.js +0 -45
- package/node_modules/jose/dist/browser/lib/aesgcmkw.js +0 -16
- package/node_modules/jose/dist/browser/lib/buffer_utils.js +0 -51
- package/node_modules/jose/dist/browser/lib/cek.js +0 -20
- package/node_modules/jose/dist/browser/lib/check_iv_length.js +0 -8
- package/node_modules/jose/dist/browser/lib/check_key_type.js +0 -77
- package/node_modules/jose/dist/browser/lib/check_p2s.js +0 -6
- package/node_modules/jose/dist/browser/lib/crypto_key.js +0 -157
- package/node_modules/jose/dist/browser/lib/decrypt_key_management.js +0 -129
- package/node_modules/jose/dist/browser/lib/encrypt_key_management.js +0 -89
- package/node_modules/jose/dist/browser/lib/epoch.js +0 -1
- package/node_modules/jose/dist/browser/lib/format_pem.js +0 -4
- package/node_modules/jose/dist/browser/lib/invalid_key_input.js +0 -31
- package/node_modules/jose/dist/browser/lib/is_disjoint.js +0 -22
- package/node_modules/jose/dist/browser/lib/is_jwk.js +0 -13
- package/node_modules/jose/dist/browser/lib/is_object.js +0 -16
- package/node_modules/jose/dist/browser/lib/iv.js +0 -20
- package/node_modules/jose/dist/browser/lib/jwt_claims_set.js +0 -104
- package/node_modules/jose/dist/browser/lib/private_symbols.js +0 -1
- package/node_modules/jose/dist/browser/lib/secs.js +0 -55
- package/node_modules/jose/dist/browser/lib/validate_algorithms.js +0 -11
- package/node_modules/jose/dist/browser/lib/validate_crit.js +0 -34
- package/node_modules/jose/dist/browser/package.json +0 -1
- package/node_modules/jose/dist/browser/runtime/aeskw.js +0 -32
- package/node_modules/jose/dist/browser/runtime/asn1.js +0 -205
- package/node_modules/jose/dist/browser/runtime/base64url.js +0 -37
- package/node_modules/jose/dist/browser/runtime/bogus.js +0 -6
- package/node_modules/jose/dist/browser/runtime/check_cek_length.js +0 -8
- package/node_modules/jose/dist/browser/runtime/check_key_length.js +0 -8
- package/node_modules/jose/dist/browser/runtime/decrypt.js +0 -91
- package/node_modules/jose/dist/browser/runtime/digest.js +0 -6
- package/node_modules/jose/dist/browser/runtime/ecdhes.js +0 -47
- package/node_modules/jose/dist/browser/runtime/encrypt.js +0 -76
- package/node_modules/jose/dist/browser/runtime/fetch_jwks.js +0 -34
- package/node_modules/jose/dist/browser/runtime/generate.js +0 -143
- package/node_modules/jose/dist/browser/runtime/get_sign_verify_key.js +0 -24
- package/node_modules/jose/dist/browser/runtime/is_key_like.js +0 -8
- package/node_modules/jose/dist/browser/runtime/jwk_to_key.js +0 -104
- package/node_modules/jose/dist/browser/runtime/key_to_jwk.js +0 -21
- package/node_modules/jose/dist/browser/runtime/normalize_key.js +0 -68
- package/node_modules/jose/dist/browser/runtime/pbes2kw.js +0 -51
- package/node_modules/jose/dist/browser/runtime/random.js +0 -2
- package/node_modules/jose/dist/browser/runtime/rsaes.js +0 -37
- package/node_modules/jose/dist/browser/runtime/runtime.js +0 -1
- package/node_modules/jose/dist/browser/runtime/sign.js +0 -11
- package/node_modules/jose/dist/browser/runtime/subtle_dsa.js +0 -28
- package/node_modules/jose/dist/browser/runtime/subtle_rsaes.js +0 -12
- package/node_modules/jose/dist/browser/runtime/timing_safe_equal.js +0 -19
- package/node_modules/jose/dist/browser/runtime/verify.js +0 -16
- package/node_modules/jose/dist/browser/runtime/webcrypto.js +0 -2
- package/node_modules/jose/dist/browser/util/base64url.js +0 -3
- package/node_modules/jose/dist/browser/util/decode_jwt.js +0 -32
- package/node_modules/jose/dist/browser/util/decode_protected_header.js +0 -34
- package/node_modules/jose/dist/browser/util/errors.js +0 -114
- package/node_modules/jose/dist/browser/util/runtime.js +0 -2
- package/node_modules/openid-client/node_modules/jose/dist/browser/index.js +0 -32
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwe/compact/decrypt.js +0 -27
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwe/compact/encrypt.js +0 -26
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwe/flattened/decrypt.js +0 -166
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwe/flattened/encrypt.js +0 -175
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwe/general/decrypt.js +0 -31
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwe/general/encrypt.js +0 -178
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwk/embedded.js +0 -17
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwk/thumbprint.js +0 -53
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwks/local.js +0 -116
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwks/remote.js +0 -76
- package/node_modules/openid-client/node_modules/jose/dist/browser/jws/compact/sign.js +0 -17
- package/node_modules/openid-client/node_modules/jose/dist/browser/jws/compact/verify.js +0 -21
- package/node_modules/openid-client/node_modules/jose/dist/browser/jws/flattened/sign.js +0 -81
- package/node_modules/openid-client/node_modules/jose/dist/browser/jws/flattened/verify.js +0 -115
- package/node_modules/openid-client/node_modules/jose/dist/browser/jws/general/sign.js +0 -67
- package/node_modules/openid-client/node_modules/jose/dist/browser/jws/general/verify.js +0 -24
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwt/decrypt.js +0 -23
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwt/encrypt.js +0 -68
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwt/produce.js +0 -54
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwt/sign.js +0 -21
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwt/unsecured.js +0 -32
- package/node_modules/openid-client/node_modules/jose/dist/browser/jwt/verify.js +0 -16
- package/node_modules/openid-client/node_modules/jose/dist/browser/key/export.js +0 -12
- package/node_modules/openid-client/node_modules/jose/dist/browser/key/generate_key_pair.js +0 -4
- package/node_modules/openid-client/node_modules/jose/dist/browser/key/generate_secret.js +0 -4
- package/node_modules/openid-client/node_modules/jose/dist/browser/key/import.js +0 -50
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/aesgcmkw.js +0 -14
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/buffer_utils.js +0 -51
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/cek.js +0 -20
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/check_iv_length.js +0 -8
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/check_key_type.js +0 -45
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/check_p2s.js +0 -6
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/crypto_key.js +0 -152
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/decrypt_key_management.js +0 -127
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/encrypt_key_management.js +0 -87
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/epoch.js +0 -1
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/format_pem.js +0 -4
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/invalid_key_input.js +0 -30
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/is_disjoint.js +0 -22
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/is_object.js +0 -16
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/iv.js +0 -20
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/jwt_claims_set.js +0 -102
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/secs.js +0 -44
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/validate_algorithms.js +0 -11
- package/node_modules/openid-client/node_modules/jose/dist/browser/lib/validate_crit.js +0 -34
- package/node_modules/openid-client/node_modules/jose/dist/browser/package.json +0 -1
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/aeskw.js +0 -32
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/asn1.js +0 -202
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/base64url.js +0 -37
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/bogus.js +0 -6
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/check_cek_length.js +0 -8
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/check_key_length.js +0 -8
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/decrypt.js +0 -85
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/digest.js +0 -6
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/ecdhes.js +0 -46
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/encrypt.js +0 -68
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/fetch_jwks.js +0 -34
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/generate.js +0 -141
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/get_sign_verify_key.js +0 -17
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/is_key_like.js +0 -5
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/jwk_to_key.js +0 -143
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/key_to_jwk.js +0 -21
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/pbes2kw.js +0 -51
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/random.js +0 -2
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/rsaes.js +0 -37
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/runtime.js +0 -1
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/sign.js +0 -11
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/subtle_dsa.js +0 -26
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/subtle_rsaes.js +0 -12
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/timing_safe_equal.js +0 -19
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/verify.js +0 -16
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/webcrypto.js +0 -2
- package/node_modules/openid-client/node_modules/jose/dist/browser/runtime/zlib.js +0 -7
- package/node_modules/openid-client/node_modules/jose/dist/browser/util/base64url.js +0 -3
- package/node_modules/openid-client/node_modules/jose/dist/browser/util/decode_jwt.js +0 -32
- package/node_modules/openid-client/node_modules/jose/dist/browser/util/decode_protected_header.js +0 -34
- package/node_modules/openid-client/node_modules/jose/dist/browser/util/errors.js +0 -158
- package/node_modules/openid-client/node_modules/jose/dist/browser/util/runtime.js +0 -2
- package/static/app/assets/index-BCZVzMpj.js +0 -230
- package/static/dashboard/assets/AiConfigContext-CZEW16so.js +0 -1
- package/static/dashboard/assets/AiConfigPage-Cfp0fRX1.js +0 -1
- package/static/dashboard/assets/DocumentProcessingPanel-DaaRCLp6.js +0 -1
- package/static/dashboard/assets/IndexLifecyclePanel-BCz3jNM8.js +0 -1
- package/static/dashboard/assets/IndexSubjectPanel-DVCVIt7V.js +0 -1
- package/static/dashboard/assets/ModelAssignmentsPanel-DxauxtEY.js +0 -1
- package/static/dashboard/assets/ModelsPage-B8F3AtZL.js +0 -11
- package/static/dashboard/assets/NetworkPage-Cu7ty71x.js +0 -2
- package/static/dashboard/assets/PaneListHeader-BEAXSlD9.js +0 -1
- package/static/dashboard/assets/SearchIndexingPanel-DEr1EDDC.js +0 -1
- package/static/dashboard/assets/StatusSubjectPanel-Cg92MGhO.js +0 -1
- package/static/dashboard/assets/StatusWorkspace-BmJSOF3z.js +0 -1
- package/static/dashboard/assets/SystemSettingsPage-rziu4Q3U.js +0 -1
- package/static/dashboard/assets/SystemSettingsSubjectPanel-D16DGDNW.js +0 -33
- package/static/dashboard/assets/XpodAiConnectionsPodStore-FlZ0LEn0.js +0 -18
- package/static/dashboard/assets/activity-D55X-5L5.js +0 -1
- package/static/dashboard/assets/admin-C6qCRFiY.js +0 -1
- package/static/dashboard/assets/ai-connections-Dr4-rSzX.js +0 -1
- package/static/dashboard/assets/badge-CRf1ISRJ.js +0 -1
- package/static/dashboard/assets/collection-runtime-CfXMuwNc.js +0 -1
- package/static/dashboard/assets/dashboard-B3kGI946.css +0 -1
- package/static/dashboard/assets/dashboard-D4DWPaAy.js +0 -306
- package/static/dashboard/assets/dialog-EVyIyybL.js +0 -1
- package/static/dashboard/assets/download-Et4aRDT2.js +0 -1
- package/static/dashboard/assets/external-link-DT746o7t.js +0 -1
- package/static/dashboard/assets/index-D2agcVRx.js +0 -41
- package/static/dashboard/assets/index-_wC13YGI.js +0 -1
- package/static/dashboard/assets/index-z6TnJzW6.js +0 -4
- package/static/dashboard/assets/key-round-CHnogQ1D.js +0 -1
- package/static/dashboard/assets/rotate-ccw-BNVDC4Zr.js +0 -1
- package/static/dashboard/assets/settings-projection-CUkyprDQ.js +0 -1
- package/static/dashboard/assets/skeleton-BzsZekVf.js +0 -1
- package/static/dashboard/assets/waypoints-CLZA22UN.js +0 -1
- package/static/dashboard/assets/workspace-layout-urYcwAhS.js +0 -1
- package/static/settings/assets/AiConfigContext-B2cVJFNu.js +0 -1
- package/static/settings/assets/AiConfigPage-D_5jSPPF.js +0 -1
- package/static/settings/assets/DocumentProcessingPanel-DodGlYIk.js +0 -1
- package/static/settings/assets/IndexLifecyclePanel-BtH-0GKv.js +0 -1
- package/static/settings/assets/IndexSubjectPanel-CqKhUcw2.js +0 -1
- package/static/settings/assets/ModelAssignmentsPanel-Cam9V9BN.js +0 -1
- package/static/settings/assets/ModelsPage-DWFic09l.js +0 -11
- package/static/settings/assets/NetworkPage-CSwHoAWm.js +0 -2
- package/static/settings/assets/PaneListHeader-270Z179Z.js +0 -1
- package/static/settings/assets/SearchIndexingPanel-ATHKMDBQ.js +0 -1
- package/static/settings/assets/StatusSubjectPanel-DDWo3v3d.js +0 -1
- package/static/settings/assets/StatusWorkspace-BYgqeCBM.js +0 -1
- package/static/settings/assets/SystemSettingsPage-BRaQAFWC.js +0 -1
- package/static/settings/assets/SystemSettingsSubjectPanel-Dc0roh9d.js +0 -33
- package/static/settings/assets/XpodAiConnectionsPodStore-OndzbigX.js +0 -3
- package/static/settings/assets/activity-BAZEToJ3.js +0 -1
- package/static/settings/assets/admin-C6qCRFiY.js +0 -1
- package/static/settings/assets/ai-connections-DexTPyfC.js +0 -1
- package/static/settings/assets/auth-callback-Bd3tvCOa.js +0 -1
- package/static/settings/assets/badge-Cpol0LWF.js +0 -1
- package/static/settings/assets/collection-runtime-B5vGx3gk.js +0 -1
- package/static/settings/assets/dialog-_7AVvv5q.js +0 -1
- package/static/settings/assets/download-DRAi-dnn.js +0 -1
- package/static/settings/assets/external-link--Yq8inDb.js +0 -1
- package/static/settings/assets/global-B3kGI946.css +0 -1
- package/static/settings/assets/global-DMtP8ZF4.js +0 -306
- package/static/settings/assets/index-C36H49PZ.js +0 -4
- package/static/settings/assets/index-CQR3iePj.js +0 -41
- package/static/settings/assets/index-DURnCfoQ.js +0 -1
- package/static/settings/assets/index-browser-kAl2JmYB.js +0 -273
- package/static/settings/assets/key-round-DzpWBVN9.js +0 -1
- package/static/settings/assets/rotate-ccw-CtVsCcAx.js +0 -1
- package/static/settings/assets/settings-DQtt6lql.js +0 -1
- package/static/settings/assets/settings-projection-CUkyprDQ.js +0 -1
- package/static/settings/assets/skeleton-R_ACks7d.js +0 -1
- package/static/settings/assets/waypoints-D-Qv_sME.js +0 -1
- package/static/settings/assets/workspace-layout-BSMCQq35.js +0 -1
- /package/static/app/assets/{_commonjsHelpers-B-UnjaXt.js → global-BsV9-QbH.js} +0 -0
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
var St=t=>{throw TypeError(t)};var wt=(t,n,s)=>n.has(t)||St("Cannot "+s);var xe=(t,n,s)=>(wt(t,n,"read from private field"),s?s.call(t):n.get(t)),Ct=(t,n,s)=>n.has(t)?St("Cannot add the same private member more than once"):n instanceof WeakSet?n.add(t):n.set(t,s),st=(t,n,s,o)=>(wt(t,n,"write to private field"),o?o.call(t,s):n.set(t,s),s);import{r as a,c as Ee,j as e,$ as ae,R as mt,D as Nn,G as Sn,O as wn,Y as Et,a0 as Cn,l as ye,m as ft,n as He,P as Te,u as Be,w as ht,v as Wt,a1 as En}from"./dashboard-D4DWPaAy.js";import{g as Tn,f as Tt,i as _n,s as Rn,j as Ln,a as Pn,k as Dn,c as kn,e as On,h as An,u as In,t as qn}from"./admin-C6qCRFiY.js";import{A as Mn}from"./activity-D55X-5L5.js";import{E as $n}from"./external-link-DT746o7t.js";import{c as be,a as Un,P as Fn,e as Qt,h as Hn,b as Bn,R as Vn,F as Kn,D as zn,d as _t}from"./index-D2agcVRx.js";import{A as Xn,c as Yt,C as Gn,V as Wn,R as Qn}from"./index-_wC13YGI.js";import{D as Yn}from"./download-Et4aRDT2.js";import{K as Jn}from"./key-round-CHnogQ1D.js";var Zn=Object.defineProperty,es=(t,n)=>Zn(t,"name",{value:n,configurable:!0}),ts=a.createContext(void 0);function Jt(t){const n=a.useContext(ts);return t||n||"ltr"}es(Jt,"useDirection");var ns=Object.defineProperty,ss=(t,n)=>ns(t,"name",{value:n,configurable:!0});function lt(t,[n,s]){return Math.min(s,Math.max(n,t))}ss(lt,"clamp");const os=[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]],cs=Ee("chart-column",os);const rs=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],as=Ee("check",rs);const ls=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],is=Ee("chevron-down",ls);const ds=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M12 18v-6",key:"17g6i2"}],["path",{d:"m9 15 3 3 3-3",key:"1npd3o"}]],us=Ee("file-down",ds);const ps=[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1",key:"kaeet6"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1",key:"1wsw3u"}]],ms=Ee("pause",ps);const fs=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],hs=Ee("play",fs);const xs=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],Rt=Ee("search",xs);const gs=[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],bs=Ee("trash-2",gs);const vs=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],xt=Ee("triangle-alert",vs);const ys=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],js=Ee("x",ys);function me(t){const{className:n,variant:s="default",size:o="default",children:c,...r}=t,i="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors focus:outline-none focus:ring-0 focus-visible:outline-none active:translate-y-px disabled:opacity-50 disabled:pointer-events-none",p={default:"bg-primary text-primary-foreground hover:bg-primary/90 focus-visible:bg-primary/80",secondary:"bg-muted text-foreground hover:bg-muted/80 focus-visible:bg-muted/60",ghost:"bg-transparent hover:bg-muted focus-visible:bg-muted text-foreground"},m={default:"h-10 px-4 py-2",sm:"h-8 px-3",icon:"h-9 w-9 p-0"};return e.jsx("button",{className:ae(i,p[s],m[o],n),...r,children:c})}function te(t){const{className:n,variant:s,children:o}=t;return e.jsx("div",{className:ae("rounded-xl bg-background",s==="bordered"&&"border border-border",n),children:o})}function ce(t){const{className:n,children:s}=t;return e.jsx("div",{className:ae("px-5 pt-5",n),children:s})}function re(t){const{className:n,children:s}=t;return e.jsx("div",{className:ae("text-base font-semibold",n),children:s})}function ne(t){const{className:n,children:s}=t;return e.jsx("div",{className:ae("px-5 pb-5 pt-4",n),children:s})}function Ze(t){const{className:n,...s}=t;return e.jsx("input",{className:ae("w-full h-10 rounded-md border border-input bg-background px-3 py-2 text-sm","placeholder:text-muted-foreground","focus:outline-none focus-visible:border-primary",n),...s})}function Oe(t){const{className:n,...s}=t;return e.jsx("label",{className:ae("text-sm font-medium text-foreground",n),...s})}const Ns={"not-cloud":"非 Cloud 模式","missing-sparql-endpoint":"缺少 PostgreSQL 端点","unsupported-sparql-endpoint":"非 PostgreSQL 端点"};function Ss(t){const n=t.trim();return n?{cacheScopeQuery:n,cacheScopeLimit:50}:{}}function EF(){const[t,n]=a.useState(null),[s,o]=a.useState(!0),[c,r]=a.useState(!1),[i,p]=a.useState(""),[m,f]=a.useState(""),[y,S]=a.useState(""),C=a.useRef(!1),R=a.useCallback(async(g=!1,w=y)=>{g?o(!0):r(!0),p("");try{const v=await Tn(Ss(w));v?n(v):p("RDF 统计不可用")}finally{o(!1),r(!1)}},[y]);a.useEffect(()=>{C.current||(C.current=!0,R(!0))},[R]),a.useEffect(()=>{const g=setInterval(()=>{R(!1)},1e4);return()=>clearInterval(g)},[R]);const L=g=>{g.preventDefault();const w=m.trim();S(w),R(!1,w)},T=()=>{f(""),S(""),R(!1,"")},x=t?et(t.generatedAt):"-";return s?e.jsx("div",{className:"p-8 text-foreground",children:"加载中..."}):e.jsxs("div",{className:"p-8",children:[e.jsxs("div",{className:"mb-6 flex flex-wrap items-center justify-between gap-3",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"type-h1",children:"RDF 索引"}),e.jsxs("div",{className:"mt-1 text-sm text-muted-foreground",children:["更新时间 ",x]})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsxs("form",{className:"flex min-w-0 items-center gap-2",onSubmit:L,children:[e.jsxs("div",{className:"relative w-72 max-w-[70vw]",children:[e.jsx(Rt,{className:"pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground"}),e.jsx(Ze,{value:m,onChange:g=>f(g.target.value),className:"pl-9",placeholder:"principal / base / version"})]}),e.jsxs(me,{type:"submit",variant:"secondary",size:"sm",className:"gap-2",children:[e.jsx(Rt,{className:"h-4 w-4"}),"搜索"]}),y&&e.jsx(me,{type:"button",variant:"ghost",size:"sm",onClick:T,"aria-label":"清除 scope 搜索",children:e.jsx(js,{className:"h-4 w-4"})})]}),e.jsxs(me,{type:"button",variant:"secondary",size:"sm",onClick:()=>{R(!1)},disabled:c,className:"gap-2",children:[e.jsx(mt,{className:ae("h-4 w-4",c&&"animate-spin")}),"刷新"]})]})]}),i&&e.jsx("div",{className:"mb-5 rounded-md border border-destructive/30 bg-destructive/5 px-4 py-3 text-sm text-destructive",children:i}),t?.available?e.jsx(ws,{snapshot:t,scopeQuery:y}):e.jsxs(e.Fragment,{children:[e.jsx(Cs,{snapshot:t}),e.jsx("div",{className:"mt-8",children:e.jsx(Zt,{snapshot:t?.benchmarkReports})})]})]})}function ws(t){const{snapshot:n,scopeQuery:s}=t,o=n.stats,c=o.rdf3x,r=o.slowQueries?.entries??[],i=o.derivedCache,p=i?.scopeEntries??[],m=o.pgAcceleration,f=o.lifecycle,y=f?.coldStart,S=y?.phases.reduce((C,R)=>R.durationMs>C.durationMs?R:C,{name:"-",durationMs:0});return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"mb-8 grid grid-cols-1 gap-5 md:grid-cols-2 xl:grid-cols-5",children:[e.jsx(Fe,{icon:Nn,label:"引擎",value:n.engine,detail:m?.profile??"baseline",tone:m?.enabled?"good":"neutral"}),e.jsx(Fe,{icon:Mn,label:"RDF-3X",value:c?.syncedWithFacts?"已同步":`${c?.refreshLag??0} 版本延迟`,detail:`facts ${c?.factsDataVersion??0} / rdf3x ${c?.rdf3xFactsDataVersion??0} / pending ${c?.pendingSources??0}`,tone:c?.syncedWithFacts?"good":"warn"}),e.jsx(Fe,{icon:Sn,label:"存储",value:pe(o.totalBytes),detail:`facts ${pe(o.factsBytes)} / derived ${pe(o.derivedBytes)}`,tone:"neutral"}),e.jsx(Fe,{icon:mt,label:"冷启动",value:Ce(y?.durationMs??f?.lastOpenDurationMs??0),detail:`${f?.status??"unknown"} / open ${f?.openCount??0}`,tone:f?.status==="failed"?"warn":"neutral"}),e.jsx(Fe,{icon:xt,label:"慢查询",value:`${o.slowQueries?.entryCount??0}`,detail:`保留 ${o.slowQueries?.maxEntries??0} 条`,tone:(o.slowQueries?.entryCount??0)>0?"warn":"good"})]}),e.jsxs("div",{className:"mb-8 grid grid-cols-1 gap-5 xl:grid-cols-5",children:[e.jsxs(te,{variant:"bordered",children:[e.jsx(ce,{children:e.jsx(re,{children:"空间占用"})}),e.jsxs(ne,{className:"space-y-3",children:[e.jsx(U,{label:"derived/facts",value:it(o.derivedToFactsRatio)}),e.jsx(U,{label:"total/facts",value:it(o.totalToFactsRatio)}),e.jsx(U,{label:"result cache",value:pe(o.queryResultCache?.totalBytes??0)}),e.jsx(U,{label:"materialized",value:pe(o.materializedResultCache?.totalBytes??0)}),e.jsx(U,{label:"template",value:pe(o.queryTemplateCache?.totalBytes??0)})]})]}),e.jsxs(te,{variant:"bordered",children:[e.jsx(ce,{children:e.jsx(re,{children:"Cache"})}),e.jsxs(ne,{className:"space-y-3",children:[e.jsx(U,{label:"result entries",value:`${o.queryResultCache?.entryCount??0}`}),e.jsx(U,{label:"result scopes",value:`${o.queryResultCache?.scopeCount??0}`}),e.jsx(U,{label:"materialized entries",value:`${o.materializedResultCache?.entryCount??0}`}),e.jsx(U,{label:"materialized scopes",value:`${o.materializedResultCache?.scopeCount??0}`}),e.jsx(U,{label:"result hit rate",value:Pt(o.queryResultCache)}),e.jsx(U,{label:"materialized hit rate",value:Pt(o.materializedResultCache)}),e.jsx(U,{label:"template entries",value:`${o.queryTemplateCache?.entryCount??0}`}),e.jsx(U,{label:"cache pressure",value:Ve(i?.cachePressure??0)})]})]}),e.jsxs(te,{variant:"bordered",children:[e.jsx(ce,{children:e.jsx(re,{children:"生命周期"})}),e.jsxs(ne,{className:"space-y-3",children:[e.jsx(U,{label:"driver",value:f?.driver??"-"}),e.jsx(U,{label:"ready at",value:f?.lastReadyAt?et(f.lastReadyAt):"-"}),e.jsx(U,{label:"slowest phase",value:`${S?.name??"-"} ${Ce(S?.durationMs??0)}`}),e.jsx(U,{label:"dirty sources",value:`${c?.pendingSources??0}`}),e.jsx(U,{label:"custom index",value:y?y.customIndexDeferred?"deferred":"startup":"-"}),e.jsx(U,{label:"maintenance",value:y?y.maintenanceEnabled?"enabled":"disabled":"-"})]})]}),e.jsxs(te,{variant:"bordered",children:[e.jsx(ce,{children:e.jsx(re,{children:"权限 Scope"})}),e.jsxs(ne,{className:"space-y-3",children:[e.jsx(U,{label:"scope versions",value:`${i?.scopeVersionCount??0}`}),e.jsx(U,{label:"max scope",value:pe(i?.maxScopeBytes??0)}),e.jsx(U,{label:"largest scope",value:pe(i?.largestScopeBytes??0)}),e.jsx(U,{label:"scope pressure",value:Ve(i?.largestScopePressure??0)}),e.jsx(U,{label:"scope hash",value:Ke(i?.largestScopeHash??"-")}),e.jsx(U,{label:"facts version",value:`${i?.largestScopeFactsDataVersion??"-"}`})]})]}),e.jsxs(te,{variant:"bordered",children:[e.jsx(ce,{children:e.jsx(re,{children:"PG 加速"})}),e.jsxs(ne,{className:"space-y-3",children:[e.jsx(U,{label:"profile",value:m?.profile??"baseline"}),e.jsx(U,{label:"provider",value:m?.provider??"-"}),e.jsx(U,{label:"enabled",value:m?.enabled?"true":"false"}),e.jsx(U,{label:"capabilities",value:`${m?.capabilities?.length??0}`}),e.jsx(U,{label:"active operators",value:ze(m?.activeOperators)}),e.jsx(U,{label:"missing caps",value:ze(m?.missingCapabilities)}),e.jsx(U,{label:"fallback",value:m?.fallbackReason??"-"})]})]})]}),e.jsxs("div",{className:"mb-8 grid grid-cols-1 gap-5 xl:grid-cols-2",children:[e.jsxs(te,{variant:"bordered",children:[e.jsx(ce,{children:e.jsx(re,{children:"Cache 淘汰"})}),e.jsxs(ne,{className:"space-y-3",children:[e.jsx(U,{label:"total",value:`${i?.evictionCount??0}`}),e.jsx(Rs,{evictions:i?.evictions})]})]}),e.jsxs(te,{variant:"bordered",children:[e.jsx(ce,{children:e.jsx(re,{children:"Cache 载荷"})}),e.jsxs(ne,{className:"space-y-3",children:[e.jsx(U,{label:"result payload",value:pe(i?.queryResultPayloadBytes??0)}),e.jsx(U,{label:"materialized payload",value:pe(i?.materializedResultPayloadBytes??0)}),e.jsx(U,{label:"template bytes",value:pe(i?.queryTemplateBytes??0)}),e.jsx(U,{label:"result table/index",value:`${pe(o.queryResultCache?.tableBytes??0)} / ${pe(o.queryResultCache?.indexBytes??0)}`}),e.jsx(U,{label:"materialized table/index",value:`${pe(o.materializedResultCache?.tableBytes??0)} / ${pe(o.materializedResultCache?.indexBytes??0)}`})]})]})]}),e.jsx("div",{className:"mb-8",children:e.jsx(_s,{entries:p,totalCount:i?.scopeVersionCount??0,query:s})}),e.jsx("div",{className:"mb-8",children:e.jsx(Zt,{snapshot:n.benchmarkReports})}),e.jsx(Es,{entries:r})]})}function Cs(t){const{snapshot:n}=t,s=n?.available===!1?Ns[n.reason]:"无数据";return e.jsx(te,{variant:"bordered",children:e.jsx(ne,{children:e.jsxs("div",{className:"flex items-center gap-3 text-muted-foreground",children:[e.jsx(xt,{className:"h-5 w-5 text-yellow-600"}),e.jsx("span",{children:s})]})})})}function Fe(t){const n=t.icon;return e.jsx(te,{variant:"bordered",children:e.jsxs(ne,{children:[e.jsxs("div",{className:"mb-3 flex items-center justify-between gap-3",children:[e.jsx("div",{className:"text-sm text-muted-foreground",children:t.label}),e.jsx(n,{className:"h-4 w-4 text-muted-foreground"})]}),e.jsx("div",{className:ae("text-xl font-semibold",t.tone==="good"&&"text-green-600",t.tone==="warn"&&"text-yellow-700"),children:t.value}),e.jsx("div",{className:"mt-1 truncate text-sm text-muted-foreground",children:t.detail})]})})}function U(t){return e.jsxs("div",{className:"flex items-center justify-between gap-4 text-sm",children:[e.jsx("span",{className:"text-muted-foreground",children:t.label}),e.jsx("span",{className:"min-w-0 truncate font-mono",children:t.value})]})}function Es(t){return e.jsxs(te,{variant:"bordered",children:[e.jsx(ce,{children:e.jsx(re,{children:"最近慢查询"})}),e.jsx(ne,{className:"p-0",children:t.entries.length===0?e.jsx("div",{className:"px-5 pb-5 pt-4 text-sm text-muted-foreground",children:"暂无慢查询"}):e.jsx("div",{className:"overflow-auto",children:e.jsxs("table",{className:"w-full min-w-[920px] border-collapse text-left text-sm",children:[e.jsx("thead",{className:"border-b border-border text-muted-foreground",children:e.jsxs("tr",{children:[e.jsx("th",{className:"px-5 py-3 font-medium",children:"时间"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"路径"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"耗时"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"扫描"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"Cache"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"原因"})]})}),e.jsx("tbody",{children:t.entries.map(n=>e.jsxs("tr",{className:"border-b border-border/60 last:border-0",children:[e.jsx("td",{className:"whitespace-nowrap px-5 py-3 font-mono text-xs",children:et(n.generatedAt)}),e.jsxs("td",{className:"px-5 py-3",children:[e.jsx("div",{className:"font-medium",children:n.selectedPath}),e.jsx("div",{className:"mt-1 max-w-[240px] truncate font-mono text-xs text-muted-foreground",children:Ke(n.queryKey)})]}),e.jsx("td",{className:"whitespace-nowrap px-5 py-3 font-mono",children:Ce(n.runtime.durationMs)}),e.jsxs("td",{className:"whitespace-nowrap px-5 py-3 font-mono",children:[le(n.runtime.scannedRows)," / ",le(n.runtime.returnedRows)]}),e.jsxs("td",{className:"px-5 py-3",children:[e.jsxs("div",{className:"font-mono text-xs",children:["tpl ",n.cache.templateStatus??"-"," / res ",n.cache.resultStatus??"-"," / mat ",n.cache.materializedStatus??"-"]}),e.jsx("div",{className:"mt-1 max-w-[220px] truncate font-mono text-xs text-muted-foreground",children:Ds(n)}),e.jsx("div",{className:"mt-1 max-w-[220px] truncate text-xs text-muted-foreground",children:ks(n)}),e.jsx("div",{className:"mt-1 max-w-[220px] truncate text-xs text-muted-foreground",children:n.cache.scopeBasePath??n.cache.scopeHash}),n.cache.scopePrincipal&&e.jsx("div",{className:"mt-1 max-w-[220px] truncate text-xs text-muted-foreground",children:n.cache.scopePrincipal})]}),e.jsxs("td",{className:"px-5 py-3",children:[e.jsx(Ps,{reasons:n.slowQuery.reasons}),e.jsx(Ts,{entry:n})]})]},`${n.generatedAt}-${n.queryKey}`))})]})})})]})}function Ts(t){const n=Os(t.entry),s=As(t.entry);return!n&&!s?null:e.jsxs("div",{className:"mt-2 max-w-[320px] space-y-1 text-xs text-muted-foreground",children:[n&&e.jsx("div",{className:"truncate",children:n}),s&&e.jsx("div",{className:"truncate",children:s})]})}function _s(t){return e.jsxs(te,{variant:"bordered",children:[e.jsxs(ce,{className:"flex flex-row items-start justify-between gap-3",children:[e.jsx(re,{children:"权限 Scope 明细"}),e.jsxs("div",{className:"text-sm text-muted-foreground",children:[le(t.entries.length)," / ",le(t.totalCount)]})]}),e.jsx(ne,{className:"p-0",children:t.entries.length===0?e.jsx("div",{className:"px-5 pb-5 pt-4 text-sm text-muted-foreground",children:t.query?"没有匹配的缓存 scope":"暂无缓存 scope"}):e.jsx("div",{className:"overflow-auto",children:e.jsxs("table",{className:"w-full min-w-[1020px] border-collapse text-left text-sm",children:[e.jsx("thead",{className:"border-b border-border text-muted-foreground",children:e.jsxs("tr",{children:[e.jsx("th",{className:"px-5 py-3 font-medium",children:"Scope"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"Principal"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"Base"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"权限"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"版本"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"Payload"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"Entries"})]})}),e.jsx("tbody",{children:t.entries.map(n=>e.jsxs("tr",{className:"border-b border-border/60 last:border-0",children:[e.jsxs("td",{className:"whitespace-nowrap px-5 py-3 font-mono text-xs",children:[e.jsx("div",{children:Ke(n.scopeHash)}),e.jsxs("div",{className:"mt-1 text-muted-foreground",children:["facts ",n.factsDataVersion]})]}),e.jsx("td",{className:"px-5 py-3",children:e.jsx("div",{className:"max-w-[220px] truncate",children:n.principal??"-"})}),e.jsx("td",{className:"px-5 py-3",children:e.jsx("div",{className:"max-w-[260px] truncate",children:n.basePath??"-"})}),e.jsxs("td",{className:"whitespace-nowrap px-5 py-3 font-mono text-xs",children:[n.authorizationModel??"-","/",n.mode??"-"]}),e.jsx("td",{className:"px-5 py-3",children:e.jsx("div",{className:"max-w-[180px] truncate font-mono text-xs",children:n.permissionVersion??"-"})}),e.jsxs("td",{className:"whitespace-nowrap px-5 py-3 font-mono",children:[e.jsx("div",{children:pe(n.payloadBytes)}),e.jsxs("div",{className:"mt-1 text-xs text-muted-foreground",children:["r ",pe(n.queryResultPayloadBytes)," / m ",pe(n.materializedResultPayloadBytes)]})]}),e.jsxs("td",{className:"whitespace-nowrap px-5 py-3 font-mono",children:[le(n.queryResultEntries)," / ",le(n.materializedResultEntries)]})]},`${n.scopeHash}-${n.factsDataVersion}`))})]})})})]})}function Rs(t){const n=Object.entries(t.evictions??{}).filter(([,s])=>s>0);return n.length===0?e.jsx("div",{className:"text-sm text-muted-foreground",children:"暂无淘汰"}):e.jsx("div",{className:"grid grid-cols-1 gap-2 sm:grid-cols-2",children:n.map(([s,o])=>e.jsxs("div",{className:"flex items-center justify-between gap-3 rounded-md bg-muted px-3 py-2 text-sm",children:[e.jsx("span",{className:"min-w-0 truncate text-muted-foreground",children:s}),e.jsx("span",{className:"font-mono",children:le(o)})]},s))})}function Zt(t){const n=t.snapshot?.reports??[],s=t.snapshot?.errors??[];return e.jsxs(te,{variant:"bordered",children:[e.jsxs(ce,{className:"flex flex-row items-start justify-between gap-3",children:[e.jsxs("div",{children:[e.jsx(re,{children:"Benchmark 报告"}),e.jsx("div",{className:"mt-1 max-w-[720px] truncate text-sm text-muted-foreground",children:(t.snapshot?.roots??[]).join(", ")||"未配置目录"})]}),e.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsx(cs,{className:"h-4 w-4"}),le(t.snapshot?.reportCount??n.length)]})]}),e.jsxs(ne,{className:"p-0",children:[s.length>0&&e.jsxs("div",{className:"border-b border-border px-5 py-3 text-sm text-yellow-700",children:[le(s.length)," 个报告读取失败,最近一个:",s[0].path," - ",s[0].message]}),n.length===0?e.jsx("div",{className:"px-5 pb-5 pt-4 text-sm text-muted-foreground",children:"暂无 benchmark report"}):e.jsx("div",{className:"overflow-auto",children:e.jsxs("table",{className:"w-full min-w-[1180px] border-collapse text-left text-sm",children:[e.jsx("thead",{className:"border-b border-border text-muted-foreground",children:e.jsxs("tr",{children:[e.jsx("th",{className:"px-5 py-3 font-medium",children:"时间"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"Profile"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"规模"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"Gate"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"Ingest"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"Refresh"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"Cold / Warm"}),e.jsx("th",{className:"px-5 py-3 font-medium",children:"Storage"})]})}),e.jsx("tbody",{children:n.map(o=>e.jsx(Ls,{report:o},`${o.path}-${o.generatedAt}`))})]})})]})]})}function Ls(t){const n=t.report,s=n.failedPlanCases.length,o=n.failedConcurrencyCases.length;return e.jsxs("tr",{className:"border-b border-border/60 last:border-0",children:[e.jsxs("td",{className:"whitespace-nowrap px-5 py-3",children:[e.jsx("div",{className:"font-mono text-xs",children:et(n.generatedAt)}),e.jsx("div",{className:"mt-1 max-w-[220px] truncate font-mono text-xs text-muted-foreground",children:n.path})]}),e.jsxs("td",{className:"px-5 py-3",children:[e.jsx("div",{className:"font-medium",children:n.rdfAccelerationProfile??n.engine}),e.jsxs("div",{className:"mt-1 text-xs text-muted-foreground",children:[n.driver??n.engine," / ",n.caseProfile??"-"]}),e.jsx("div",{className:"mt-1 max-w-[220px] truncate text-xs text-muted-foreground",children:n.pgAccelerationFallbackReason??ze(n.pgActiveOperators)})]}),e.jsxs("td",{className:"whitespace-nowrap px-5 py-3 font-mono",children:[e.jsxs("div",{children:[le(n.seedQuadCount??0)," / ",le(n.targetQuadCount??0)]}),e.jsxs("div",{className:"mt-1 text-xs text-muted-foreground",children:[n.scale??"-"," / ",n.fullScale===!1?"partial":"full"]})]}),e.jsxs("td",{className:"px-5 py-3",children:[e.jsx(Lt,{ok:n.planMatched!==!1&&s===0,label:`plan ${n.planMatched===!1?"fail":"ok"}`}),e.jsx("div",{className:"mt-1",children:e.jsx(Lt,{ok:n.concurrencyMatched!==!1&&o===0,label:`conc ${n.concurrency??1}`})}),(s>0||o>0)&&e.jsxs("div",{className:"mt-1 text-xs text-yellow-700",children:["fail ",le(s+o)]})]}),e.jsxs("td",{className:"whitespace-nowrap px-5 py-3 font-mono",children:[e.jsx("div",{children:Ce(n.ingestDurationMs??0)}),e.jsxs("div",{className:"mt-1 text-xs text-muted-foreground",children:["COPY ",le(n.copyRows??0)," / fb ",le(n.copyFallbacks??0)]})]}),e.jsxs("td",{className:"whitespace-nowrap px-5 py-3 font-mono",children:[e.jsx("div",{children:Ce(n.refreshDurationMs??0)}),e.jsxs("div",{className:"mt-1 text-xs text-muted-foreground",children:["planner ",Ce(n.plannerStatsDurationMs??0)," / ",le(n.plannerStatsAnalyzedTables?.length??0)]})]}),e.jsxs("td",{className:"whitespace-nowrap px-5 py-3 font-mono",children:[e.jsxs("div",{children:[Ce(n.coldStartDurationMs??0)," / ",Ce(n.firstQueryDurationMs??0)]}),e.jsxs("div",{className:"mt-1 text-xs text-muted-foreground",children:["p50/p95 ",Ce(n.warmP50DurationMs??0)," / ",Ce(n.warmP95DurationMs??0)]})]}),e.jsxs("td",{className:"whitespace-nowrap px-5 py-3 font-mono",children:[e.jsx("div",{children:it(n.storageTotalToFactsRatio??0)}),e.jsx("div",{className:"mt-1 text-xs text-muted-foreground",children:pe(n.storageTotalBytes??0)})]})]})}function Lt(t){return e.jsx("span",{className:ae("inline-flex rounded-md px-2 py-0.5 text-xs",t.ok?"bg-green-100 text-green-700":"bg-yellow-100 text-yellow-800"),children:t.label})}function Ps(t){return e.jsx("div",{className:"flex max-w-[320px] flex-wrap gap-1.5",children:t.reasons.map(n=>e.jsx("span",{className:"rounded-md bg-yellow-100 px-2 py-0.5 text-xs text-yellow-800",children:n},n))})}function pe(t){if(!Number.isFinite(t)||t<=0)return"0 B";const n=["B","KiB","MiB","GiB","TiB"];let s=t,o=0;for(;s>=1024&&o<n.length-1;)s/=1024,o+=1;return`${s>=10||o===0?s.toFixed(0):s.toFixed(1)} ${n[o]}`}function it(t){return Number.isFinite(t)?`${t.toFixed(2)}x`:"0.00x"}function Ve(t){return Number.isFinite(t)?`${Math.round(t*100)}%`:"0%"}function Pt(t){const n=t?.hitCount??0,s=t?.missCount??0,o=n+s;return o<=0?"-":`${Ve(n/o)} (${le(n)}/${le(o)})`}function Ds(t){const n=t.cache.materialized?.key;if(n)return`mat ${Ke(n)}`;const s=t.cache.result?.key??t.queryKey;return`res ${Ke(s)}`}function ks(t){const n=t.derivedCache,s=Ve(n.cachePressure),o=Ve(n.largestScopePressure),c=n.evictionCount;return`pressure ${s} / scope ${o} / evict ${le(c)}`}function Os(t){const n=t.histogramHints??[];if(n.length===0)return"";const s=n.map(o=>`${o.kind}:${le(o.quadCount)}`);return`hist ${le(n.length)} ${ze(s)}`}function As(t){const n=t.rejectedNativeOperators??[];if(n.length===0)return"";const s=n.map(o=>`${o.capability}:${o.reason}`);return`native rejected ${le(n.length)} ${ze(s)}`}function Ce(t){return Number.isFinite(t)?`${Math.round(t)} ms`:"0 ms"}function le(t){return Number.isFinite(t)?new Intl.NumberFormat().format(t):"0"}function et(t){const n=new Date(t);return Number.isNaN(n.getTime())?t:n.toLocaleString()}function Ke(t){return t.length<=16?t:`${t.slice(0,12)}...${t.slice(-4)}`}function ze(t){return t?.length?t.length<=2?t.join(", "):`${t.slice(0,2).join(", ")} +${t.length-2}`:"-"}function TF(){return e.jsx(wn,{})}const Is={healthy:"border-green-200 bg-green-50 text-green-700 dark:border-green-900 dark:bg-green-950/40 dark:text-green-300",degraded:"border-amber-200 bg-amber-50 text-amber-700 dark:border-amber-900 dark:bg-amber-950/40 dark:text-amber-300",failed:"border-destructive/30 bg-destructive/10 text-destructive",unknown:"border-border bg-muted text-muted-foreground"};function Ye(t){const{state:n,children:s,className:o}=t;return e.jsx("span",{className:ae("inline-flex items-center rounded-md border px-2 py-1 text-xs font-medium",Is[n],o),children:s})}const qs=a.createContext(null);function en(){return a.useContext(qs)}function Ms(t,n,s,o=[]){const c=$s(t.XPOD_TUNNEL_PROFILES,s);if(c)return c;const r=o.find(i=>i.id===n);for(const i of r?.legacyPublicUrlKeys??[])if(t[i])return t[i];return"未配置"}function $s(t,n){if(!t||!n||n==="none")return"";try{const s=JSON.parse(t);if(!Array.isArray(s))return"";const o=s.find(r=>r&&typeof r=="object"&&!Array.isArray(r)&&r.id===n);return(typeof o?.publicUrl=="string"?o.publicUrl.trim():"")||""}catch{return""}}function Je(t){switch(t){case"healthy":return"可用";case"degraded":return"降级";case"failed":return"失败";default:return"未知"}}function Dt(t){return t?t.status==="running"?"healthy":t.status==="starting"?"degraded":"failed":"unknown"}function Us(t,n){return t?n?"healthy":"failed":"unknown"}function kt(t){if(!t)return"未知";const n=Math.floor(t/1e3),s=Math.floor(n/60),o=Math.floor(s/60);return o>0?`${o}h ${s%60}m`:s>0?`${s}m ${n%60}s`:`${n}s`}function Fs(t){return["Public","User tunnel","LAN","Loopback"].map(s=>t.find(o=>o.name===s&&o.state==="healthy")).find(s=>!!s)??t.find(s=>s.state==="degraded")??t.find(s=>s.state==="unknown")??null}function Hs(t){try{const n=new URL(t).hostname;if(n==="localhost"||n==="::1"||n.startsWith("127.")||n.startsWith("10.")||n.startsWith("192.168."))return!0;const s=n.match(/^172\.(\d+)\./u);return s?Number(s[1])>=16&&Number(s[1])<=31:!1}catch{return!1}}function Bs(t){return e.jsxs(te,{variant:"bordered",children:[e.jsx(ce,{children:e.jsx(re,{children:"访问路径"})}),e.jsx(ne,{children:e.jsx("div",{"data-testid":"runtime-access-path-list",className:"divide-y divide-border rounded-xl border border-border",children:t.routes.map(n=>e.jsxs("div",{"data-testid":"runtime-access-path-row","data-route-name":n.name,className:"flex min-w-0 flex-col gap-3 p-3 sm:flex-row sm:items-center sm:justify-between",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("div",{className:"text-sm font-medium",children:n.label}),e.jsx("div",{className:"mt-1 min-w-0 break-all font-mono text-xs text-muted-foreground",title:n.target,children:n.target}),e.jsx("div",{className:"mt-1 text-xs text-muted-foreground",children:n.detail})]}),e.jsx("div",{className:"shrink-0 sm:self-start",children:e.jsx(Ye,{state:n.state,children:n.statusLabel??Je(n.state)})})]},n.name))})})]})}function Vs(t){return e.jsxs(te,{variant:"bordered",children:[e.jsx(ce,{children:e.jsx(re,{children:"完整路径详情"})}),e.jsx(ne,{children:e.jsx("div",{className:"overflow-x-auto rounded-md border border-border",children:e.jsxs("table",{className:"w-full min-w-[720px] text-sm",children:[e.jsx("thead",{className:"bg-muted/60 text-muted-foreground",children:e.jsxs("tr",{children:[e.jsx("th",{className:"px-3 py-2 text-left font-medium",children:"路径"}),e.jsx("th",{className:"px-3 py-2 text-left font-medium",children:"目标"}),e.jsx("th",{className:"px-3 py-2 text-left font-medium",children:"状态"}),e.jsx("th",{className:"px-3 py-2 text-left font-medium",children:"证据"})]})}),e.jsx("tbody",{className:"divide-y divide-border",children:t.routes.map(n=>e.jsxs("tr",{children:[e.jsx("td",{className:"px-3 py-2 font-medium",children:n.label}),e.jsx("td",{className:"px-3 py-2 font-mono text-xs break-all",children:n.target}),e.jsx("td",{className:"px-3 py-2",children:e.jsx(Ye,{state:n.state,children:n.statusLabel??Je(n.state)})}),e.jsx("td",{className:"px-3 py-2 text-muted-foreground",children:n.detail})]},n.name))})]})})})]})}function Ks(t){if(!t.servicesKnown||t.servicesHealthy&&!t.publicAccessProblem)return null;const n=!t.servicesHealthy,s=n?"服务异常":"外部访问异常",o=n?"Solid Server 或 API Server 未运行,当前无法正常使用 Xpod。请先查看日志。":"Xpod 在本机运行正常,但从外网暂时无法访问。请检查公网域名、端口映射或用户隧道。";return e.jsxs(te,{variant:"bordered",className:"border-amber-200 bg-amber-50/60 dark:border-amber-900 dark:bg-amber-950/20",children:[e.jsx(ce,{children:e.jsx(re,{children:s})}),e.jsxs(ne,{className:"space-y-3",children:[e.jsx("p",{className:"text-sm text-amber-800 dark:text-amber-200",children:o}),n?e.jsx(me,{variant:"secondary",onClick:()=>window.location.assign("/status/logs"),children:"查看日志"}):e.jsx(me,{variant:"secondary",onClick:()=>window.location.assign("/network"),children:"打开网络设置"})]})]})}function _F(){const t=en(),[n,s]=a.useState(null),[o,c]=a.useState(null),[r,i]=a.useState(null),[p,m]=a.useState(null),[f,y]=a.useState(null),[S,C]=a.useState(!0),[R,L]=a.useState(""),[T,x]=a.useState(""),[g,w]=a.useState(null),v=a.useCallback(P=>{s(P.servicesData),c(P.adminData),i(P.configData),m(P.ddnsData),y(P.publicCheck),w(P.checkedAt),x(""),C(!1)},[]),b=a.useCallback(async()=>{try{v(await Tt())}catch{x("状态加载失败,请查看日志或稍后刷新。"),C(!1)}},[v]),I=a.useCallback(async()=>{C(!0),await b()},[b]);a.useEffect(()=>{if(t)return;let P=!1;return Tt().then(se=>{P||v(se)}).catch(()=>{P||(x("状态加载失败,请查看日志或稍后刷新。"),C(!1))}),()=>{P=!0}},[v,t]);const D=t?.snapshot,k=D?.servicesData??n,O=D?.adminData??o,A=D?.configData??r,z=D?.ddnsData??p,Y=D?.publicCheck??f,l=D?.checkedAt??g,u=t?t.loading&&!D:S,d=t?.error??T,j=k?.find(P=>P.name==="css"),E=k?.find(P=>P.name==="api"),N=k?"healthy":"unknown",B=Dt(j),J=Dt(E),M=B==="healthy"&&J==="healthy",V=A?.env??{},q=V.XPOD_TUNNEL_PROVIDER||z?.tunnelProvider||"none",ie=V.XPOD_TUNNEL_ACTIVE_PROFILE_ID||q,W=_n(V,z,window.location.origin),ue=Hs(W),oe=Ms(V,q,ie,A?.providers),fe=a.useMemo(()=>{const P=Y?.status==="pass"?"healthy":ue?"unknown":Y?.status==="fail"?"failed":"unknown",se=q==="none"?"unknown":z?.mode==="tunnel"||oe!=="未配置"?"healthy":"degraded";return[{name:"Loopback",label:"本机",target:`http://127.0.0.1:${V.CSS_PORT||"3000"}`,state:Us(k,M),detail:k?M?"当前设备可以使用。":"核心服务未运行。":"正在检查本机服务。"},{name:"LAN",label:"局域网",target:z?.ipv4?`http://${z.ipv4}:${V.CSS_PORT||"3000"}`:"等待本机地址上报",state:z?.ipv4&&M?"healthy":"unknown",detail:z?.ipv4?"同一网络中的设备可以使用这个地址。":"尚未发现局域网地址。"},{name:"Public",label:"公网",target:W,state:P,statusLabel:ue?"未配置":void 0,detail:ue?"尚未开放公网访问。目前可以在本机或局域网使用。":Y?.detail||"尚未检查外网是否可以访问。"},{name:"User tunnel",label:"用户隧道",target:oe,state:se,statusLabel:q==="none"?"未启用":void 0,detail:q==="none"?"未启用远程访问隧道。":`已启用 ${q}。`},{name:"P2P backup",label:"P2P 备用",target:"信令协调的原生客户端",state:"unknown",statusLabel:"备用",detail:"备用连接方式,浏览器不会默认使用。"}]},[M,W,z,V.CSS_PORT,ue,Y,k,q,oe]),_=!ue&&fe.some(P=>(P.name==="Public"||P.name==="User tunnel")&&P.state==="failed"),F=k?M?_?"degraded":"healthy":"failed":"unknown",K=Fs(fe),X=[{name:"Gateway",state:N,detail:k?"当前控制台可访问":"等待网关状态上报",uptime:l?`检查于 ${l.toLocaleTimeString()}`:"等待检查"},{name:"Solid Server",state:B,detail:j?.pid?`PID ${j.pid}`:"CSS 请求处理与 Pod 数据服务",uptime:kt(j?.uptime)},{name:"API Server",state:J,detail:E?.pid?`PID ${E.pid}`:"管理 API 与本机控制能力",uptime:kt(E?.uptime)}],G=async()=>{const P={lastCheckedAt:l?.toISOString()??null,services:k,adminStatus:O,ddnsStatus:z,publicIpCheck:Y,routes:fe,stableDataUrl:W,recommendedRoute:K,sanitizedConfig:A?{env:A.env,secrets:A.secrets??{}}:null};await navigator.clipboard.writeText(JSON.stringify(P,null,2)),L("状态 JSON 已复制")},H=async()=>{await navigator.clipboard.writeText(W),L("稳定资料入口已复制")};return e.jsxs("div",{className:"p-4 sm:p-8 max-w-6xl space-y-6",children:[e.jsxs("div",{className:"flex flex-col gap-4 lg:flex-row lg:items-start lg:justify-between",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"type-h1",children:"状态"}),e.jsx("p",{className:"mt-2 max-w-[65ch] text-sm text-muted-foreground",children:"查看 Xpod 是否正常运行,以及当前可以从哪里访问。"})]}),e.jsxs("div",{"data-testid":"status-page-actions",className:"flex items-center gap-1 self-end lg:shrink-0 lg:self-start",children:[e.jsx(me,{type:"button",variant:"ghost",size:"icon","aria-label":"刷新状态",title:"刷新状态",onClick:()=>t?t.refresh():void I(),disabled:u||t?.refreshing,children:e.jsx(mt,{className:`h-4 w-4 ${u||t?.refreshing?"animate-spin":""}`,"aria-hidden":"true"})}),e.jsx(me,{type:"button",variant:"ghost",size:"icon","aria-label":"复制状态 JSON",title:"复制状态 JSON",onClick:()=>{G()},children:e.jsx(Et,{className:"h-4 w-4","aria-hidden":"true"})})]})]}),R?e.jsx("p",{className:"text-sm text-green-700 dark:text-green-300",children:R}):null,d?e.jsx("div",{className:"rounded-md border border-destructive/30 bg-destructive/10 px-3 py-2 text-sm text-destructive",children:d}):null,e.jsx(te,{variant:"bordered",children:e.jsx(ne,{className:"pt-5",children:e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(Ye,{state:F,children:Je(F)}),e.jsx("div",{className:"text-2xl font-semibold",children:"Xpod runtime"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:l?`最后检查: ${l.toLocaleString()}`:"等待第一次检查。"}),e.jsxs("div",{className:"pt-3",children:[e.jsx("div",{className:"text-sm font-medium",children:"稳定资料入口"}),e.jsxs("div",{"data-testid":"stable-entry-row",className:"mt-1 flex min-w-0 items-center gap-1 rounded-md border border-border bg-muted/30 p-1 pl-3",children:[e.jsx("div",{className:"min-w-0 flex-1 break-all font-mono text-sm",children:W||"等待稳定入口"}),e.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[e.jsx(me,{type:"button",variant:"ghost",size:"icon","aria-label":"复制入口 URL",title:"复制入口 URL",onClick:()=>{H()},disabled:!W,children:e.jsx(Et,{className:"h-4 w-4","aria-hidden":"true"})}),e.jsx(me,{type:"button",variant:"ghost",size:"icon","aria-label":"打开入口",title:"打开入口",onClick:()=>window.open(W,"_blank"),disabled:!W,children:e.jsx($n,{className:"h-4 w-4","aria-hidden":"true"})})]})]})]}),e.jsxs("div",{children:[e.jsx("div",{className:"text-sm font-medium",children:"当前建议路径"}),e.jsx("p",{className:"mt-1 text-sm text-muted-foreground",children:K?`${K.label}: ${K.detail}`:"正在检查可用的访问方式。"})]})]}),e.jsxs("div",{className:"border-t border-border pt-5",children:[e.jsxs("div",{className:"mb-3",children:[e.jsx("div",{className:"text-base font-semibold",children:"Services"}),e.jsx("p",{className:"mt-1 text-sm text-muted-foreground",children:"核心运行服务,不包含访问路径或隧道。"})]}),e.jsx("div",{"data-testid":"runtime-services-list",className:"divide-y divide-border rounded-xl border border-border",children:X.map(P=>e.jsxs("div",{"data-testid":"runtime-service-row","data-service-name":P.name,className:"flex min-w-0 flex-col gap-2 p-3 sm:flex-row sm:items-center sm:justify-between",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[e.jsx("span",{className:"text-sm font-medium",children:P.name}),e.jsx(Ye,{state:P.state,children:Je(P.state)})]}),e.jsx("div",{className:"mt-1 break-words text-xs text-muted-foreground",children:P.detail})]}),e.jsxs("div",{className:"shrink-0 text-xs text-muted-foreground sm:text-right",children:[e.jsx("span",{className:"text-muted-foreground",children:"uptime"}),e.jsx("span",{className:"ml-2 font-mono",children:P.uptime})]})]},P.name))})]})]})})}),e.jsx(Ks,{servicesKnown:!!k,servicesHealthy:M,publicAccessProblem:_}),e.jsx("div",{"data-testid":"runtime-access-paths",children:e.jsx(Bs,{routes:fe})}),e.jsx(Vs,{routes:fe}),e.jsxs(te,{variant:"bordered",children:[e.jsx(ce,{children:e.jsx(re,{children:"Cloud 协调"})}),e.jsxs(ne,{className:"space-y-2 text-sm",children:[e.jsxs("div",{className:"grid grid-cols-[140px_1fr] gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"nodeId"}),e.jsx("span",{className:"font-mono break-all",children:V.XPOD_NODE_ID||"未上报"})]}),e.jsxs("div",{className:"grid grid-cols-[140px_1fr] gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"spDomain"}),e.jsx("span",{className:"font-mono break-all",children:V.XPOD_SP_DOMAIN||z?.fqdn||"未分配"})]}),e.jsxs("div",{className:"grid grid-cols-[140px_1fr] gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"DDNS"}),e.jsx("span",{children:z?.detail||"未上报"})]}),e.jsxs("div",{className:"grid grid-cols-[140px_1fr] gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"heartbeat"}),e.jsx("span",{children:z?.enabled?"已启用":"未启用或未上报"})]}),e.jsxs("div",{className:"grid grid-cols-[140px_1fr] gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"模式"}),e.jsx("span",{children:z?.mode||"unknown"})]}),e.jsx("p",{className:"pt-2 text-muted-foreground",children:"Cloud 负责稳定域名和 IDP,本地 SP 负责数据存储与实际接入。"})]})]}),e.jsxs(te,{variant:"bordered",className:"bg-muted/30",children:[e.jsx(ce,{children:e.jsx(re,{children:"配置摘要"})}),e.jsxs(ne,{className:"space-y-2 text-sm",children:[e.jsxs("div",{className:"grid grid-cols-[140px_1fr] gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"edition"}),e.jsx("span",{children:O?.env.XPOD_EDITION||"local"})]}),e.jsxs("div",{className:"grid grid-cols-[140px_1fr] gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"baseUrl"}),e.jsx("span",{className:"font-mono break-all",children:W})]}),e.jsxs("div",{className:"grid grid-cols-[140px_1fr] gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"storage"}),e.jsx("span",{className:"font-mono break-all",children:V.CSS_ROOT_FILE_PATH||"./data"})]}),e.jsxs("div",{className:"grid grid-cols-[140px_1fr] gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"provider"}),e.jsx("span",{children:q})]}),e.jsxs("div",{className:"grid grid-cols-[140px_1fr] gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"tunnelProfile"}),e.jsx("span",{children:ie})]}),e.jsxs("div",{className:"grid grid-cols-[140px_1fr] gap-2",children:[e.jsx("span",{className:"text-muted-foreground",children:"secrets"}),e.jsxs("span",{children:[Object.entries(A?.secrets??{}).filter(([,P])=>P.configured).length," 个已配置"]})]})]})]}),e.jsxs("div",{className:"text-sm text-muted-foreground",children:["修改运行方式时,请进入 ",e.jsx(Cn,{className:"text-primary underline-offset-4 hover:underline",to:"/services/configuration",children:"配置"}),"。"]})]})}var zs=Object.defineProperty,he=(t,n)=>zs(t,"name",{value:n,configurable:!0});function tn(t){const n=t+"CollectionProvider",[s,o]=ft(n),[c,r]=s(n,{collectionRef:{current:null},itemMap:new Map}),i=he(T=>{const{scope:x,children:g}=T,w=a.useRef(null),v=a.useRef(new Map).current;return e.jsx(c,{scope:x,itemMap:v,collectionRef:w,children:g})},"CollectionProvider");i.displayName=n;const p=t+"CollectionSlot",m=He(p),f=a.forwardRef((T,x)=>{const{scope:g,children:w}=T,v=r(p,g),b=ye(x,v.collectionRef);return e.jsx(m,{ref:b,children:w})});f.displayName=p;const y=t+"CollectionItemSlot",S="data-radix-collection-item",C=He(y),R=a.forwardRef((T,x)=>{const{scope:g,children:w,...v}=T,b=a.useRef(null),I=ye(x,b),D=r(y,g);return a.useEffect(()=>(D.itemMap.set(b,{ref:b,...v}),()=>{D.itemMap.delete(b)})),e.jsx(C,{[S]:"",ref:I,children:w})});R.displayName=y;function L(T){const x=r(t+"CollectionConsumer",T);return a.useCallback(()=>{const w=x.collectionRef.current;if(!w)return[];const v=Array.from(w.querySelectorAll(`[${S}]`));return Array.from(x.itemMap.values()).sort((D,k)=>v.indexOf(D.ref.current)-v.indexOf(k.ref.current))},[x.collectionRef,x.itemMap])}return he(L,"useCollection"),[{Provider:i,Slot:f,ItemSlot:R},L,o]}he(tn,"createCollection");var Ot=new WeakMap,de,ve,ot=(ve=class extends Map{constructor(s){super(s);Ct(this,de);st(this,de,[...super.keys()]),Ot.set(this,!0)}set(s,o){return Ot.get(this)&&(this.has(s)?xe(this,de)[xe(this,de).indexOf(s)]=s:xe(this,de).push(s)),super.set(s,o),this}insert(s,o,c){const r=this.has(o),i=xe(this,de).length,p=gt(s);let m=p>=0?p:i+p;const f=m<0||m>=i?-1:m;if(f===this.size||r&&f===this.size-1||f===-1)return this.set(o,c),this;const y=this.size+(r?0:1);p<0&&m++;const S=[...xe(this,de)];let C,R=!1;for(let L=m;L<y;L++)if(m===L){let T=S[L];S[L]===o&&(T=S[L+1]),r&&this.delete(o),C=this.get(T),this.set(o,c)}else{!R&&S[L-1]===o&&(R=!0);const T=S[R?L:L-1],x=C;C=this.get(T),this.delete(T),this.set(T,x)}return this}with(s,o,c){const r=new ve(this);return r.insert(s,o,c),r}before(s){const o=xe(this,de).indexOf(s)-1;if(!(o<0))return this.entryAt(o)}setBefore(s,o,c){const r=xe(this,de).indexOf(s);return r===-1?this:this.insert(r,o,c)}after(s){let o=xe(this,de).indexOf(s);if(o=o===-1||o===this.size-1?-1:o+1,o!==-1)return this.entryAt(o)}setAfter(s,o,c){const r=xe(this,de).indexOf(s);return r===-1?this:this.insert(r+1,o,c)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return st(this,de,[]),super.clear()}delete(s){const o=super.delete(s);return o&&xe(this,de).splice(xe(this,de).indexOf(s),1),o}deleteAt(s){const o=this.keyAt(s);return o!==void 0?this.delete(o):!1}at(s){const o=Qe(xe(this,de),s);if(o!==void 0)return this.get(o)}entryAt(s){const o=Qe(xe(this,de),s);if(o!==void 0)return[o,this.get(o)]}indexOf(s){return xe(this,de).indexOf(s)}keyAt(s){return Qe(xe(this,de),s)}from(s,o){const c=this.indexOf(s);if(c===-1)return;let r=c+o;return r<0&&(r=0),r>=this.size&&(r=this.size-1),this.at(r)}keyFrom(s,o){const c=this.indexOf(s);if(c===-1)return;let r=c+o;return r<0&&(r=0),r>=this.size&&(r=this.size-1),this.keyAt(r)}find(s,o){let c=0;for(const r of this){if(Reflect.apply(s,o,[r,c,this]))return r;c++}}findIndex(s,o){let c=0;for(const r of this){if(Reflect.apply(s,o,[r,c,this]))return c;c++}return-1}filter(s,o){const c=[];let r=0;for(const i of this)Reflect.apply(s,o,[i,r,this])&&c.push(i),r++;return new ve(c)}map(s,o){const c=[];let r=0;for(const i of this)c.push([i[0],Reflect.apply(s,o,[i,r,this])]),r++;return new ve(c)}reduce(...s){const[o,c]=s;let r=0,i=c??this.at(0);for(const p of this)r===0&&s.length===1?i=p:i=Reflect.apply(o,this,[i,p,r,this]),r++;return i}reduceRight(...s){const[o,c]=s;let r=c??this.at(-1);for(let i=this.size-1;i>=0;i--){const p=this.at(i);i===this.size-1&&s.length===1?r=p:r=Reflect.apply(o,this,[r,p,i,this])}return r}toSorted(s){const o=[...this.entries()].sort(s);return new ve(o)}toReversed(){const s=new ve;for(let o=this.size-1;o>=0;o--){const c=this.keyAt(o),r=this.get(c);s.set(c,r)}return s}toSpliced(...s){const o=[...this.entries()];return o.splice(...s),new ve(o)}slice(s,o){const c=new ve;let r=this.size-1;if(s===void 0)return c;s<0&&(s=s+this.size),o!==void 0&&o>0&&(r=o-1);for(let i=s;i<=r;i++){const p=this.keyAt(i),m=this.get(p);c.set(p,m)}return c}every(s,o){let c=0;for(const r of this){if(!Reflect.apply(s,o,[r,c,this]))return!1;c++}return!0}some(s,o){let c=0;for(const r of this){if(Reflect.apply(s,o,[r,c,this]))return!0;c++}return!1}},de=new WeakMap,he(ve,"OrderedDict"),ve);function Qe(t,n){if("at"in Array.prototype)return Array.prototype.at.call(t,n);const s=nn(t,n);return s===-1?void 0:t[s]}he(Qe,"at");function nn(t,n){const s=t.length,o=gt(n),c=o>=0?o:s+o;return c<0||c>=s?-1:c}he(nn,"toSafeIndex");function gt(t){return t!==t||t===0?0:Math.trunc(t)}he(gt,"toSafeInteger");function Xs(t){const n=t+"CollectionProvider",[s,o]=ft(n),[c,r]=s(n,{collectionElement:null,collectionRef:{current:null},collectionRefObject:{current:null},itemMap:new ot,setItemMap:he(()=>{},"setItemMap")}),i=he(({state:v,...b})=>v?e.jsx(m,{...b,state:v}):e.jsx(p,{...b}),"CollectionProvider");i.displayName=n;const p=he(v=>{const b=x();return e.jsx(m,{...v,state:b})},"CollectionInit");p.displayName=n+"Init";const m=he(v=>{const{scope:b,children:I,state:D}=v,k=a.useRef(null),[O,A]=a.useState(null),z=ye(k,A),[Y,l]=D;return a.useEffect(()=>{if(!O)return;const u=cn(()=>{});return u.observe(O,{childList:!0,subtree:!0}),()=>{u.disconnect()}},[O]),e.jsx(c,{scope:b,itemMap:Y,setItemMap:l,collectionRef:z,collectionRefObject:k,collectionElement:O,children:I})},"CollectionProviderImpl");m.displayName=n+"Impl";const f=t+"CollectionSlot",y=He(f),S=a.forwardRef((v,b)=>{const{scope:I,children:D}=v,k=r(f,I),O=ye(b,k.collectionRef);return e.jsx(y,{ref:O,children:D})});S.displayName=f;const C=t+"CollectionItemSlot",R="data-radix-collection-item",L=He(C),T=a.forwardRef((v,b)=>{const{scope:I,children:D,...k}=v,O=a.useRef(null),[A,z]=a.useState(null),Y=ye(b,O,z),l=r(C,I),{setItemMap:u}=l,d=a.useRef(k);sn(d.current,k)||(d.current=k);const j=d.current;return a.useEffect(()=>{const E=j;return u(N=>A?N.has(A)?N.set(A,{...E,element:A}).toSorted(dt):(N.set(A,{...E,element:A}),N.toSorted(dt)):N),()=>{u(N=>!A||!N.has(A)?N:(N.delete(A),new ot(N)))}},[A,j,u]),e.jsx(L,{[R]:"",ref:Y,children:D})});T.displayName=C;function x(){return a.useState(new ot)}he(x,"useInitCollection");function g(v){const{itemMap:b}=r(t+"CollectionConsumer",v);return b}return he(g,"useCollection"),[{Provider:i,Slot:S,ItemSlot:T},{createCollectionScope:o,useCollection:g,useInitCollection:x}]}he(Xs,"createCollection");function sn(t,n){if(t===n)return!0;if(typeof t!="object"||typeof n!="object"||t==null||n==null)return!1;const s=Object.keys(t),o=Object.keys(n);if(s.length!==o.length)return!1;for(const c of s)if(!Object.prototype.hasOwnProperty.call(n,c)||t[c]!==n[c])return!1;return!0}he(sn,"shallowEqual");function on(t,n){return!!(n.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_PRECEDING)}he(on,"isElementPreceding");function dt(t,n){return!t[1].element||!n[1].element?0:on(t[1].element,n[1].element)?-1:1}he(dt,"sortByDocumentPosition");function cn(t){return new MutationObserver(s=>{for(const o of s)if(o.type==="childList"){t();return}})}he(cn,"getChildListObserver");var Gs=Object.defineProperty,Ws=(t,n)=>Gs(t,"name",{value:n,configurable:!0});function rn(t){const n=a.useRef({value:t,previous:t});return a.useMemo(()=>(n.current.value!==t&&(n.current.previous=n.current.value,n.current.value=t),n.current.previous),[t])}Ws(rn,"usePrevious");var Qs=Object.defineProperty,Q=(t,n)=>Qs(t,"name",{value:n,configurable:!0}),Ys=[" ","Enter","ArrowUp","ArrowDown"],Js=[" ","Enter"],Ue="Select",[tt,bt,Zs]=tn(Ue),[Me,RF]=ft(Ue,[Zs,Yt]),vt=Yt(),[eo,De]=Me(Ue),[to,no]=Me(Ue);function an(t){const{__scopeSelect:n,children:s,open:o,defaultOpen:c,onOpenChange:r,value:i,defaultValue:p,onValueChange:m,dir:f,name:y,autoComplete:S,disabled:C,required:R,form:L,internal_do_not_use_render:T}=t,x=vt(n),[g,w]=a.useState(null),[v,b]=a.useState(null),[I,D]=a.useState(!1),k=Jt(f),[O,A]=_t({prop:o,defaultProp:c??!1,onChange:r,caller:Ue}),[z,Y]=_t({prop:i,defaultProp:p,onChange:m,caller:Ue}),l=a.useRef(null),u=a.useRef(z);a.useEffect(()=>{const q=L?g?.ownerDocument.getElementById(L):g?.form;if(q instanceof HTMLFormElement){const ie=Q(()=>Y(u.current),"reset");return q.addEventListener("reset",ie),()=>q.removeEventListener("reset",ie)}},[L,g,Y]);const d=g?!!L||!!g.closest("form"):!0,[j,E]=a.useState(new Set),N=Qt(),B=Array.from(j).map(q=>q.props.value).join(";"),J=a.useCallback(q=>{E(ie=>new Set(ie).add(q))},[]),M=a.useCallback(q=>{E(ie=>{const W=new Set(ie);return W.delete(q),W})},[]),V={required:R,trigger:g,onTriggerChange:w,valueNode:v,onValueNodeChange:b,valueNodeHasChildren:I,onValueNodeHasChildrenChange:D,contentId:N,value:z,onValueChange:Y,open:O,onOpenChange:A,dir:k,triggerPointerDownPosRef:l,disabled:C,name:y,autoComplete:S,form:L,nativeOptions:j,nativeSelectKey:B,isFormControl:d};return e.jsx(Qn,{...x,children:e.jsx(eo,{scope:n,...V,children:e.jsx(tt.Provider,{scope:n,children:e.jsx(to,{scope:n,onNativeOptionAdd:J,onNativeOptionRemove:M,children:hn(T)?T(V):s})})})})}Q(an,"SelectProvider");var so=Q(t=>{const{__scopeSelect:n,children:s,...o}=t;return e.jsx(an,{__scopeSelect:n,...o,internal_do_not_use_render:({isFormControl:c})=>e.jsxs(e.Fragment,{children:[s,c?e.jsx(_o,{__scopeSelect:n}):null]})})},"Select"),oo="SelectTrigger",ln=a.forwardRef(Q(function(n,s){const{__scopeSelect:o,disabled:c=!1,...r}=n,i=vt(o),p=De(oo,o),m=p.disabled||c,f=ye(s,p.onTriggerChange),y=bt(o),S=a.useRef("touch"),[C,R,L]=yt(x=>{const g=y().filter(b=>!b.disabled),w=g.find(b=>b.value===p.value),v=jt(g,x,w);v!==void 0&&p.onValueChange(v.value)}),T=Q(x=>{m||(p.onOpenChange(!0),L()),x&&(p.triggerPointerDownPosRef.current={x:Math.round(x.pageX),y:Math.round(x.pageY)})},"handleOpen");return e.jsx(Xn,{asChild:!0,...i,children:e.jsx(Te.button,{type:"button",role:"combobox","aria-controls":p.open?p.contentId:void 0,"aria-expanded":p.open,"aria-required":p.required,"aria-autocomplete":"none",dir:p.dir,"data-state":p.open?"open":"closed",disabled:m,"data-disabled":m?"":void 0,"data-placeholder":Xe(p.value)?"":void 0,...r,ref:f,onClick:be(r.onClick,x=>{x.currentTarget.focus(),S.current!=="mouse"&&T(x)}),onPointerDown:be(r.onPointerDown,x=>{S.current=x.pointerType;const g=x.target;g.hasPointerCapture(x.pointerId)&&g.releasePointerCapture(x.pointerId),x.button===0&&x.ctrlKey===!1&&x.pointerType==="mouse"&&(T(x),x.preventDefault())}),onKeyDown:be(r.onKeyDown,x=>{const g=C.current!=="";!(x.ctrlKey||x.altKey||x.metaKey)&&x.key.length===1&&R(x.key),!(g&&x.key===" ")&&Ys.includes(x.key)&&(T(),x.preventDefault())})})})},"SelectTrigger")),co="SelectValue",ro=a.forwardRef(Q(function(n,s){const{__scopeSelect:o,className:c,style:r,children:i,placeholder:p="",...m}=n,f=De(co,o),{onValueNodeHasChildrenChange:y}=f,S=i!==void 0,C=ye(s,f.onValueNodeChange);Be(()=>{y(S)},[y,S]);const R=Xe(f.value);return e.jsx(Te.span,{...m,asChild:R?!1:m.asChild,ref:C,style:{pointerEvents:"none"},children:e.jsx(a.Fragment,{children:R?p:i},R?"placeholder":"value")})},"SelectValue")),ao=a.forwardRef(Q(function(n,s){const{__scopeSelect:o,children:c,...r}=n;return e.jsx(Te.span,{"aria-hidden":!0,...r,ref:s,children:c||"▼"})},"SelectIcon")),lo="SelectPortal",[io,uo]=Me(lo,{forceMount:void 0}),po=Q(t=>{const{__scopeSelect:n,forceMount:s,...o}=t;return e.jsx(io,{scope:t.__scopeSelect,forceMount:s,children:e.jsx(Un,{asChild:!0,...o})})},"SelectPortal"),qe="SelectContent",dn=a.forwardRef(Q(function(n,s){const o=uo(qe,n.__scopeSelect),{forceMount:c=o.forceMount,...r}=n,i=De(qe,n.__scopeSelect),[p,m]=a.useState();return Be(()=>{m(new DocumentFragment)},[]),e.jsx(Fn,{present:c||i.open,children:({present:f})=>f?e.jsx(ho,{...r,ref:s}):e.jsx(mo,{...r,fragment:p})})},"SelectContent")),mo=a.forwardRef(Q(function(n,s){const{__scopeSelect:o,children:c,fragment:r}=n;return r?Wt.createPortal(e.jsx(un,{scope:o,children:e.jsx(tt.Slot,{scope:o,children:e.jsx("div",{ref:s,children:c})})}),r):null},"SelectContentFragment")),Se=10,[un,nt]=Me(qe),fo=He("SelectContent.RemoveScroll"),ho=a.forwardRef(Q(function(n,s){const{__scopeSelect:o}=n,{position:c="item-aligned",onCloseAutoFocus:r,onEscapeKeyDown:i,onPointerDownOutside:p,side:m,sideOffset:f,align:y,alignOffset:S,arrowPadding:C,collisionBoundary:R,collisionPadding:L,sticky:T,hideWhenDetached:x,avoidCollisions:g,...w}=n,v=De(qe,o),[b,I]=a.useState(null),[D,k]=a.useState(null),O=ye(s,I),[A,z]=a.useState(null),[Y,l]=a.useState(null),u=bt(o),[d,j]=a.useState(!1),E=a.useRef(!1);a.useEffect(()=>{if(b)return Hn(b)},[b]),Bn();const N=a.useCallback(_=>{const[F,...K]=u().map(H=>H.ref.current),[X]=K.slice(-1),G=document.activeElement;for(const H of _)if(H===G||(H?.scrollIntoView({block:"nearest"}),H===F&&D&&(D.scrollTop=0),H===X&&D&&(D.scrollTop=D.scrollHeight),H?.focus(),document.activeElement!==G))return},[u,D]),B=a.useCallback(()=>N([A,b]),[N,A,b]);a.useEffect(()=>{d&&B()},[d,B]);const{onOpenChange:J,triggerPointerDownPosRef:M}=v;a.useEffect(()=>{if(b){let _={x:0,y:0};const F=Q(X=>{_={x:Math.abs(Math.round(X.pageX)-(M.current?.x??0)),y:Math.abs(Math.round(X.pageY)-(M.current?.y??0))}},"handlePointerMove"),K=Q(X=>{_.x<=10&&_.y<=10?X.preventDefault():X.composedPath().includes(b)||J(!1),document.removeEventListener("pointermove",F),M.current=null},"handlePointerUp");return M.current!==null&&(document.addEventListener("pointermove",F),document.addEventListener("pointerup",K,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",F),document.removeEventListener("pointerup",K,{capture:!0})}}},[b,J,M]),a.useEffect(()=>{const _=Q(()=>J(!1),"close");return window.addEventListener("blur",_),window.addEventListener("resize",_),()=>{window.removeEventListener("blur",_),window.removeEventListener("resize",_)}},[J]);const[V,q]=yt(_=>{const F=u().filter(G=>!G.disabled),K=F.find(G=>G.ref.current===document.activeElement),X=jt(F,_,K);X&&setTimeout(()=>X.ref.current?.focus())}),ie=a.useCallback((_,F,K)=>{const X=!E.current&&!K;(v.value!==void 0&&v.value===F||X)&&(z(_),X&&(E.current=!0))},[v.value]),W=a.useCallback(()=>b?.focus(),[b]),ue=a.useCallback((_,F,K)=>{const X=!E.current&&!K;(v.value!==void 0&&v.value===F||X)&&l(_)},[v.value]),oe=c==="popper"?At:xo,fe=oe===At?{side:m,sideOffset:f,align:y,alignOffset:S,arrowPadding:C,collisionBoundary:R,collisionPadding:L,sticky:T,hideWhenDetached:x,avoidCollisions:g}:{};return e.jsx(un,{scope:o,content:b,viewport:D,onViewportChange:k,itemRefCallback:ie,selectedItem:A,onItemLeave:W,itemTextRefCallback:ue,focusSelectedItem:B,selectedItemText:Y,position:c,isPositioned:d,searchRef:V,children:e.jsx(Vn,{as:fo,allowPinchZoom:!0,children:e.jsx(Kn,{asChild:!0,trapped:v.open,onMountAutoFocus:_=>{_.preventDefault()},onUnmountAutoFocus:be(r,_=>{v.trigger?.focus({preventScroll:!0}),_.preventDefault()}),children:e.jsx(zn,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:i,onPointerDownOutside:p,onFocusOutside:_=>_.preventDefault(),onDismiss:()=>v.onOpenChange(!1),children:e.jsx(oe,{role:"listbox",id:v.contentId,"data-state":v.open?"open":"closed",dir:v.dir,onContextMenu:_=>_.preventDefault(),...w,...fe,onPlaced:()=>j(!0),ref:O,style:{display:"flex",flexDirection:"column",outline:"none",...w.style},onKeyDown:be(w.onKeyDown,_=>{const F=_.ctrlKey||_.altKey||_.metaKey;if(_.key==="Tab"&&_.preventDefault(),!F&&_.key.length===1&&q(_.key),["ArrowUp","ArrowDown","Home","End"].includes(_.key)){let X=u().filter(G=>!G.disabled).map(G=>G.ref.current);if(["ArrowUp","End"].includes(_.key)&&(X=X.slice().reverse()),["ArrowUp","ArrowDown"].includes(_.key)){const G=_.target,H=X.indexOf(G);X=X.slice(H+1)}setTimeout(()=>N(X)),_.preventDefault()}})})})})})})},"SelectContentImpl")),xo=a.forwardRef(Q(function(n,s){const{__scopeSelect:o,onPlaced:c,...r}=n,i=De(qe,o),p=nt(qe,o),[m,f]=a.useState(null),[y,S]=a.useState(null),C=ye(s,S),R=bt(o),L=a.useRef(!1),T=a.useRef(!0),{viewport:x,selectedItem:g,selectedItemText:w,focusSelectedItem:v}=p,b=a.useCallback(()=>{if(i.trigger&&i.valueNode&&m&&y&&x&&g&&w){const O=i.trigger.getBoundingClientRect(),A=y.getBoundingClientRect(),z=i.valueNode.getBoundingClientRect(),Y=w.getBoundingClientRect();if(i.dir!=="rtl"){const G=Y.left-A.left,H=z.left-G,P=O.left-H,se=O.width+P,_e=Math.max(se,A.width),Re=window.innerWidth-Se,ke=lt(H,[Se,Math.max(Se,Re-_e)]);m.style.minWidth=se+"px",m.style.left=ke+"px"}else{const G=A.right-Y.right,H=window.innerWidth-z.right-G,P=window.innerWidth-O.right-H,se=O.width+P,_e=Math.max(se,A.width),Re=window.innerWidth-Se,ke=lt(H,[Se,Math.max(Se,Re-_e)]);m.style.minWidth=se+"px",m.style.right=ke+"px"}const l=R(),u=window.innerHeight-Se*2,d=x.scrollHeight,j=window.getComputedStyle(y),E=parseInt(j.borderTopWidth,10),N=parseInt(j.paddingTop,10),B=parseInt(j.borderBottomWidth,10),J=parseInt(j.paddingBottom,10),M=E+N+d+J+B,V=Math.min(g.offsetHeight*5,M),q=window.getComputedStyle(x),ie=parseInt(q.paddingTop,10),W=parseInt(q.paddingBottom,10),ue=O.top+O.height/2-Se,oe=u-ue,fe=g.offsetHeight/2,_=g.offsetTop+fe,F=E+N+_,K=M-F;if(F<=ue){const G=l.length>0&&g===l[l.length-1].ref.current;m.style.bottom="0px";const H=y.clientHeight-x.offsetTop-x.offsetHeight,P=Math.max(oe,fe+(G?W:0)+H+B),se=F+P;m.style.height=se+"px"}else{const G=l.length>0&&g===l[0].ref.current;m.style.top="0px";const P=Math.max(ue,E+x.offsetTop+(G?ie:0)+fe)+K;m.style.height=P+"px",x.scrollTop=F-ue+x.offsetTop}m.style.margin=`${Se}px 0`,m.style.minHeight=V+"px",m.style.maxHeight=u+"px",c?.(),requestAnimationFrame(()=>L.current=!0)}},[R,i.trigger,i.valueNode,m,y,x,g,w,i.dir,c]);Be(()=>b(),[b]);const[I,D]=a.useState();Be(()=>{y&&D(window.getComputedStyle(y).zIndex)},[y]);const k=a.useCallback(O=>{O&&T.current===!0&&(b(),v?.(),T.current=!1)},[b,v]);return e.jsx(go,{scope:o,contentWrapper:m,shouldExpandOnScrollRef:L,onScrollButtonChange:k,children:e.jsx("div",{ref:f,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:I},children:e.jsx(Te.div,{...r,ref:C,style:{boxSizing:"border-box",maxHeight:"100%",...r.style}})})})},"SelectItemAlignedPosition")),At=a.forwardRef(Q(function(n,s){const{__scopeSelect:o,align:c="start",collisionPadding:r=Se,...i}=n,p=vt(o);return e.jsx(Gn,{...p,...i,ref:s,align:c,collisionPadding:r,style:{boxSizing:"border-box",...i.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})},"SelectPopperPosition")),[go,bo]=Me(qe,{}),It="SelectViewport",vo=a.forwardRef(Q(function(n,s){const{__scopeSelect:o,nonce:c,...r}=n,i=nt(It,o),p=bo(It,o),m=ye(s,i.onViewportChange),f=a.useRef(0);return e.jsxs(e.Fragment,{children:[e.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:c}),e.jsx(tt.Slot,{scope:o,children:e.jsx(Te.div,{"data-radix-select-viewport":"",role:"presentation",...r,ref:m,style:{position:"relative",flex:1,overflow:"hidden auto",...r.style},onScroll:be(r.onScroll,y=>{const S=y.currentTarget,{contentWrapper:C,shouldExpandOnScrollRef:R}=p;if(R?.current&&C){const L=Math.abs(f.current-S.scrollTop);if(L>0){const T=window.innerHeight-Se*2,x=parseFloat(C.style.minHeight),g=parseFloat(C.style.height),w=Math.max(x,g);if(w<T){const v=w+L,b=Math.min(T,v),I=v-b;C.style.height=b+"px",C.style.bottom==="0px"&&(S.scrollTop=I>0?I:0,C.style.justifyContent="flex-end")}}}f.current=S.scrollTop})})})]})},"SelectViewport")),yo="SelectGroup",[LF,jo]=Me(yo),No="SelectLabel",pn=a.forwardRef(Q(function(n,s){const{__scopeSelect:o,...c}=n,r=jo(No,o);return e.jsx(Te.div,{id:r.id,...c,ref:s})},"SelectLabel")),ut="SelectItem",[So,mn]=Me(ut),fn=a.forwardRef(Q(function(n,s){const{__scopeSelect:o,value:c,disabled:r=!1,textValue:i,...p}=n,m=De(ut,o),f=nt(ut,o),y=m.value===c,[S,C]=a.useState(i??""),[R,L]=a.useState(!1),T=ht(b=>f.itemRefCallback?.(b,c,r)),x=ye(s,T),g=Qt(),w=a.useRef("touch"),v=Q(()=>{r||(m.onValueChange(c),m.onOpenChange(!1))},"handleSelect");return e.jsx(So,{scope:o,value:c,disabled:r,textId:g,isSelected:y,onItemTextChange:a.useCallback(b=>{C(I=>I||(b?.textContent??"").trim())},[]),children:e.jsx(tt.ItemSlot,{scope:o,value:c,disabled:r,textValue:S,children:e.jsx(Te.div,{role:"option","aria-labelledby":g,"data-highlighted":R?"":void 0,"aria-selected":y&&R,"data-state":y?"checked":"unchecked","aria-disabled":r||void 0,"data-disabled":r?"":void 0,tabIndex:r?void 0:-1,...p,ref:x,onFocus:be(p.onFocus,()=>L(!0)),onBlur:be(p.onBlur,()=>L(!1)),onClick:be(p.onClick,()=>{w.current!=="mouse"&&v()}),onPointerUp:be(p.onPointerUp,()=>{w.current==="mouse"&&v()}),onPointerDown:be(p.onPointerDown,b=>{w.current=b.pointerType}),onPointerMove:be(p.onPointerMove,b=>{w.current=b.pointerType,r?f.onItemLeave?.():w.current==="mouse"&&b.currentTarget.focus({preventScroll:!0})}),onPointerLeave:be(p.onPointerLeave,b=>{b.currentTarget===document.activeElement&&f.onItemLeave?.()}),onKeyDown:be(p.onKeyDown,b=>{r||b.target!==b.currentTarget||f.searchRef?.current!==""&&b.key===" "||(Js.includes(b.key)&&v(),b.key===" "&&b.preventDefault())})})})})},"SelectItem")),Ge="SelectItemText",wo=a.forwardRef(Q(function(n,s){const{__scopeSelect:o,className:c,style:r,...i}=n,p=De(Ge,o),m=nt(Ge,o),f=mn(Ge,o),y=no(Ge,o),[S,C]=a.useState(null),R=ht(v=>m.itemTextRefCallback?.(v,f.value,f.disabled)),L=ye(s,C,f.onItemTextChange,R),T=S?.textContent,x=a.useMemo(()=>e.jsx("option",{value:f.value,disabled:f.disabled,children:T},f.value),[f.disabled,f.value,T]),{onNativeOptionAdd:g,onNativeOptionRemove:w}=y;return Be(()=>(g(x),()=>w(x)),[g,w,x]),e.jsxs(e.Fragment,{children:[e.jsx(Te.span,{id:f.textId,...i,ref:L}),f.isSelected&&p.valueNode&&!p.valueNodeHasChildren&&!Xe(p.value)?Wt.createPortal(i.children,p.valueNode):null]})},"SelectItemText")),Co="SelectItemIndicator",Eo=a.forwardRef(Q(function(n,s){const{__scopeSelect:o,...c}=n;return mn(Co,o).isSelected?e.jsx(Te.span,{"aria-hidden":!0,...c,ref:s}):null},"SelectItemIndicator")),To="SelectBubbleInput",_o=a.forwardRef(Q(function({__scopeSelect:n,...s},o){const c=De(To,n),{value:r,onValueChange:i,required:p,disabled:m,name:f,autoComplete:y,form:S}=c,{nativeOptions:C,nativeSelectKey:R}=c,L=a.useRef(null),T=ye(o,L),x=r??"",g=rn(x),w=Array.from(C).some(v=>(v.props.value??"")==="");return a.useEffect(()=>{const v=L.current;if(!v)return;const b=window.HTMLSelectElement.prototype,D=Object.getOwnPropertyDescriptor(b,"value").set;if(g!==x&&D){const k=new Event("change",{bubbles:!0});D.call(v,x),v.dispatchEvent(k)}},[g,x]),e.jsxs(Te.select,{"aria-hidden":!0,required:p,tabIndex:-1,name:f,autoComplete:y,disabled:m,form:S,onChange:v=>i(v.target.value),...s,style:{...Wn,...s.style},ref:T,defaultValue:x,children:[Xe(r)&&!w?e.jsx("option",{value:""}):null,Array.from(C)]},R)},"SelectBubbleInput"));function hn(t){return typeof t=="function"}Q(hn,"isFunction");function Xe(t){return t===""||t===void 0}Q(Xe,"shouldShowPlaceholder");function yt(t){const n=ht(t),s=a.useRef(""),o=a.useRef(0),c=a.useCallback(i=>{const p=s.current+i;n(p),Q((function m(f){s.current=f,window.clearTimeout(o.current),f!==""&&(o.current=window.setTimeout(()=>m(""),1e3))}),"updateSearch")(p)},[n]),r=a.useCallback(()=>{s.current="",window.clearTimeout(o.current)},[]);return a.useEffect(()=>()=>window.clearTimeout(o.current),[]),[s,c,r]}Q(yt,"useTypeaheadSearch");function jt(t,n,s){const c=n.length>1&&Array.from(n).every(f=>f===n[0])?n[0]:n,r=s?t.indexOf(s):-1;let i=xn(t,Math.max(r,0));c.length===1&&(i=i.filter(f=>f!==s));const m=i.find(f=>f.textValue.toLowerCase().startsWith(c.toLowerCase()));return m!==s?m:void 0}Q(jt,"findNextItem");function xn(t,n){return t.map((s,o)=>t[(n+o)%t.length])}Q(xn,"wrapArray");const Ae=so,Ie=ro,Le=a.forwardRef(({className:t,children:n,...s},o)=>e.jsxs(ln,{ref:o,className:ae("flex h-9 items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm","placeholder:text-muted-foreground focus:outline-none focus-visible:border-primary","disabled:cursor-not-allowed disabled:opacity-50",t),...s,children:[n,e.jsx(ao,{asChild:!0,children:e.jsx(is,{className:"h-4 w-4 opacity-50"})})]}));Le.displayName=ln.displayName;const Pe=a.forwardRef(({className:t,children:n,position:s="popper",...o},c)=>e.jsx(po,{children:e.jsx(dn,{ref:c,className:ae("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md","data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2","data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",s==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:s,...o,children:e.jsx(vo,{className:ae("p-1",s==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:n})})}));Pe.displayName=dn.displayName;const Ro=a.forwardRef(({className:t,...n},s)=>e.jsx(pn,{ref:s,className:ae("px-2 py-1.5 text-sm font-semibold",t),...n}));Ro.displayName=pn.displayName;const ee=a.forwardRef(({className:t,children:n,...s},o)=>e.jsxs(fn,{ref:o,className:ae("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none","focus:bg-accent focus:text-accent-foreground","data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...s,children:[e.jsx("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(Eo,{children:e.jsx(as,{className:"h-4 w-4"})})}),e.jsx(wo,{children:n})]}));ee.displayName=fn.displayName;var ct={},Ne={};const Lo="Á",Po="á",Do="Ă",ko="ă",Oo="∾",Ao="∿",Io="∾̳",qo="Â",Mo="â",$o="´",Uo="А",Fo="а",Ho="Æ",Bo="æ",Vo="",Ko="𝔄",zo="𝔞",Xo="À",Go="à",Wo="ℵ",Qo="ℵ",Yo="Α",Jo="α",Zo="Ā",ec="ā",tc="⨿",nc="&",sc="&",oc="⩕",cc="⩓",rc="∧",ac="⩜",lc="⩘",ic="⩚",dc="∠",uc="⦤",pc="∠",mc="⦨",fc="⦩",hc="⦪",xc="⦫",gc="⦬",bc="⦭",vc="⦮",yc="⦯",jc="∡",Nc="∟",Sc="⊾",wc="⦝",Cc="∢",Ec="Å",Tc="⍼",_c="Ą",Rc="ą",Lc="𝔸",Pc="𝕒",Dc="⩯",kc="≈",Oc="⩰",Ac="≊",Ic="≋",qc="'",Mc="",$c="≈",Uc="≊",Fc="Å",Hc="å",Bc="𝒜",Vc="𝒶",Kc="≔",zc="*",Xc="≈",Gc="≍",Wc="Ã",Qc="ã",Yc="Ä",Jc="ä",Zc="∳",er="⨑",tr="≌",nr="϶",sr="‵",or="∽",cr="⋍",rr="∖",ar="⫧",lr="⊽",ir="⌅",dr="⌆",ur="⌅",pr="⎵",mr="⎶",fr="≌",hr="Б",xr="б",gr="„",br="∵",vr="∵",yr="∵",jr="⦰",Nr="϶",Sr="ℬ",wr="ℬ",Cr="Β",Er="β",Tr="ℶ",_r="≬",Rr="𝔅",Lr="𝔟",Pr="⋂",Dr="◯",kr="⋃",Or="⨀",Ar="⨁",Ir="⨂",qr="⨆",Mr="★",$r="▽",Ur="△",Fr="⨄",Hr="⋁",Br="⋀",Vr="⤍",Kr="⧫",zr="▪",Xr="▴",Gr="▾",Wr="◂",Qr="▸",Yr="␣",Jr="▒",Zr="░",ea="▓",ta="█",na="=⃥",sa="≡⃥",oa="⫭",ca="⌐",ra="𝔹",aa="𝕓",la="⊥",ia="⊥",da="⋈",ua="⧉",pa="┐",ma="╕",fa="╖",ha="╗",xa="┌",ga="╒",ba="╓",va="╔",ya="─",ja="═",Na="┬",Sa="╤",wa="╥",Ca="╦",Ea="┴",Ta="╧",_a="╨",Ra="╩",La="⊟",Pa="⊞",Da="⊠",ka="┘",Oa="╛",Aa="╜",Ia="╝",qa="└",Ma="╘",$a="╙",Ua="╚",Fa="│",Ha="║",Ba="┼",Va="╪",Ka="╫",za="╬",Xa="┤",Ga="╡",Wa="╢",Qa="╣",Ya="├",Ja="╞",Za="╟",el="╠",tl="‵",nl="˘",sl="˘",ol="¦",cl="𝒷",rl="ℬ",al="⁏",ll="∽",il="⋍",dl="⧅",ul="\\",pl="⟈",ml="•",fl="•",hl="≎",xl="⪮",gl="≏",bl="≎",vl="≏",yl="Ć",jl="ć",Nl="⩄",Sl="⩉",wl="⩋",Cl="∩",El="⋒",Tl="⩇",_l="⩀",Rl="ⅅ",Ll="∩︀",Pl="⁁",Dl="ˇ",kl="ℭ",Ol="⩍",Al="Č",Il="č",ql="Ç",Ml="ç",$l="Ĉ",Ul="ĉ",Fl="∰",Hl="⩌",Bl="⩐",Vl="Ċ",Kl="ċ",zl="¸",Xl="¸",Gl="⦲",Wl="¢",Ql="·",Yl="·",Jl="𝔠",Zl="ℭ",ei="Ч",ti="ч",ni="✓",si="✓",oi="Χ",ci="χ",ri="ˆ",ai="≗",li="↺",ii="↻",di="⊛",ui="⊚",pi="⊝",mi="⊙",fi="®",hi="Ⓢ",xi="⊖",gi="⊕",bi="⊗",vi="○",yi="⧃",ji="≗",Ni="⨐",Si="⫯",wi="⧂",Ci="∲",Ei="”",Ti="’",_i="♣",Ri="♣",Li=":",Pi="∷",Di="⩴",ki="≔",Oi="≔",Ai=",",Ii="@",qi="∁",Mi="∘",$i="∁",Ui="ℂ",Fi="≅",Hi="⩭",Bi="≡",Vi="∮",Ki="∯",zi="∮",Xi="𝕔",Gi="ℂ",Wi="∐",Qi="∐",Yi="©",Ji="©",Zi="℗",ed="∳",td="↵",nd="✗",sd="⨯",od="𝒞",cd="𝒸",rd="⫏",ad="⫑",ld="⫐",id="⫒",dd="⋯",ud="⤸",pd="⤵",md="⋞",fd="⋟",hd="↶",xd="⤽",gd="⩈",bd="⩆",vd="≍",yd="∪",jd="⋓",Nd="⩊",Sd="⊍",wd="⩅",Cd="∪︀",Ed="↷",Td="⤼",_d="⋞",Rd="⋟",Ld="⋎",Pd="⋏",Dd="¤",kd="↶",Od="↷",Ad="⋎",Id="⋏",qd="∲",Md="∱",$d="⌭",Ud="†",Fd="‡",Hd="ℸ",Bd="↓",Vd="↡",Kd="⇓",zd="‐",Xd="⫤",Gd="⊣",Wd="⤏",Qd="˝",Yd="Ď",Jd="ď",Zd="Д",eu="д",tu="‡",nu="⇊",su="ⅅ",ou="ⅆ",cu="⤑",ru="⩷",au="°",lu="∇",iu="Δ",du="δ",uu="⦱",pu="⥿",mu="𝔇",fu="𝔡",hu="⥥",xu="⇃",gu="⇂",bu="´",vu="˙",yu="˝",ju="`",Nu="˜",Su="⋄",wu="⋄",Cu="⋄",Eu="♦",Tu="♦",_u="¨",Ru="ⅆ",Lu="ϝ",Pu="⋲",Du="÷",ku="÷",Ou="⋇",Au="⋇",Iu="Ђ",qu="ђ",Mu="⌞",$u="⌍",Uu="$",Fu="𝔻",Hu="𝕕",Bu="¨",Vu="˙",Ku="⃜",zu="≐",Xu="≑",Gu="≐",Wu="∸",Qu="∔",Yu="⊡",Ju="⌆",Zu="∯",ep="¨",tp="⇓",np="⇐",sp="⇔",op="⫤",cp="⟸",rp="⟺",ap="⟹",lp="⇒",ip="⊨",dp="⇑",up="⇕",pp="∥",mp="⤓",fp="↓",hp="↓",xp="⇓",gp="⇵",bp="̑",vp="⇊",yp="⇃",jp="⇂",Np="⥐",Sp="⥞",wp="⥖",Cp="↽",Ep="⥟",Tp="⥗",_p="⇁",Rp="↧",Lp="⊤",Pp="⤐",Dp="⌟",kp="⌌",Op="𝒟",Ap="𝒹",Ip="Ѕ",qp="ѕ",Mp="⧶",$p="Đ",Up="đ",Fp="⋱",Hp="▿",Bp="▾",Vp="⇵",Kp="⥯",zp="⦦",Xp="Џ",Gp="џ",Wp="⟿",Qp="É",Yp="é",Jp="⩮",Zp="Ě",em="ě",tm="Ê",nm="ê",sm="≖",om="≕",cm="Э",rm="э",am="⩷",lm="Ė",im="ė",dm="≑",um="ⅇ",pm="≒",mm="𝔈",fm="𝔢",hm="⪚",xm="È",gm="è",bm="⪖",vm="⪘",ym="⪙",jm="∈",Nm="⏧",Sm="ℓ",wm="⪕",Cm="⪗",Em="Ē",Tm="ē",_m="∅",Rm="∅",Lm="◻",Pm="∅",Dm="▫",km=" ",Om=" ",Am=" ",Im="Ŋ",qm="ŋ",Mm=" ",$m="Ę",Um="ę",Fm="𝔼",Hm="𝕖",Bm="⋕",Vm="⧣",Km="⩱",zm="ε",Xm="Ε",Gm="ε",Wm="ϵ",Qm="≖",Ym="≕",Jm="≂",Zm="⪖",ef="⪕",tf="⩵",nf="=",sf="≂",of="≟",cf="⇌",rf="≡",af="⩸",lf="⧥",df="⥱",uf="≓",pf="ℯ",mf="ℰ",ff="≐",hf="⩳",xf="≂",gf="Η",bf="η",vf="Ð",yf="ð",jf="Ë",Nf="ë",Sf="€",wf="!",Cf="∃",Ef="∃",Tf="ℰ",_f="ⅇ",Rf="ⅇ",Lf="≒",Pf="Ф",Df="ф",kf="♀",Of="ffi",Af="ff",If="ffl",qf="𝔉",Mf="𝔣",$f="fi",Uf="◼",Ff="▪",Hf="fj",Bf="♭",Vf="fl",Kf="▱",zf="ƒ",Xf="𝔽",Gf="𝕗",Wf="∀",Qf="∀",Yf="⋔",Jf="⫙",Zf="ℱ",eh="⨍",th="½",nh="⅓",sh="¼",oh="⅕",ch="⅙",rh="⅛",ah="⅔",lh="⅖",ih="¾",dh="⅗",uh="⅜",ph="⅘",mh="⅚",fh="⅝",hh="⅞",xh="⁄",gh="⌢",bh="𝒻",vh="ℱ",yh="ǵ",jh="Γ",Nh="γ",Sh="Ϝ",wh="ϝ",Ch="⪆",Eh="Ğ",Th="ğ",_h="Ģ",Rh="Ĝ",Lh="ĝ",Ph="Г",Dh="г",kh="Ġ",Oh="ġ",Ah="≥",Ih="≧",qh="⪌",Mh="⋛",$h="≥",Uh="≧",Fh="⩾",Hh="⪩",Bh="⩾",Vh="⪀",Kh="⪂",zh="⪄",Xh="⋛︀",Gh="⪔",Wh="𝔊",Qh="𝔤",Yh="≫",Jh="⋙",Zh="⋙",ex="ℷ",tx="Ѓ",nx="ѓ",sx="⪥",ox="≷",cx="⪒",rx="⪤",ax="⪊",lx="⪊",ix="⪈",dx="≩",ux="⪈",px="≩",mx="⋧",fx="𝔾",hx="𝕘",xx="`",gx="≥",bx="⋛",vx="≧",yx="⪢",jx="≷",Nx="⩾",Sx="≳",wx="𝒢",Cx="ℊ",Ex="≳",Tx="⪎",_x="⪐",Rx="⪧",Lx="⩺",Px=">",Dx=">",kx="≫",Ox="⋗",Ax="⦕",Ix="⩼",qx="⪆",Mx="⥸",$x="⋗",Ux="⋛",Fx="⪌",Hx="≷",Bx="≳",Vx="≩︀",Kx="≩︀",zx="ˇ",Xx=" ",Gx="½",Wx="ℋ",Qx="Ъ",Yx="ъ",Jx="⥈",Zx="↔",eg="⇔",tg="↭",ng="^",sg="ℏ",og="Ĥ",cg="ĥ",rg="♥",ag="♥",lg="…",ig="⊹",dg="𝔥",ug="ℌ",pg="ℋ",mg="⤥",fg="⤦",hg="⇿",xg="∻",gg="↩",bg="↪",vg="𝕙",yg="ℍ",jg="―",Ng="─",Sg="𝒽",wg="ℋ",Cg="ℏ",Eg="Ħ",Tg="ħ",_g="≎",Rg="≏",Lg="⁃",Pg="‐",Dg="Í",kg="í",Og="",Ag="Î",Ig="î",qg="И",Mg="и",$g="İ",Ug="Е",Fg="е",Hg="¡",Bg="⇔",Vg="𝔦",Kg="ℑ",zg="Ì",Xg="ì",Gg="ⅈ",Wg="⨌",Qg="∭",Yg="⧜",Jg="℩",Zg="IJ",eb="ij",tb="Ī",nb="ī",sb="ℑ",ob="ⅈ",cb="ℐ",rb="ℑ",ab="ı",lb="ℑ",ib="⊷",db="Ƶ",ub="⇒",pb="℅",mb="∞",fb="⧝",hb="ı",xb="⊺",gb="∫",bb="∬",vb="ℤ",yb="∫",jb="⊺",Nb="⋂",Sb="⨗",wb="⨼",Cb="",Eb="",Tb="Ё",_b="ё",Rb="Į",Lb="į",Pb="𝕀",Db="𝕚",kb="Ι",Ob="ι",Ab="⨼",Ib="¿",qb="𝒾",Mb="ℐ",$b="∈",Ub="⋵",Fb="⋹",Hb="⋴",Bb="⋳",Vb="∈",Kb="",zb="Ĩ",Xb="ĩ",Gb="І",Wb="і",Qb="Ï",Yb="ï",Jb="Ĵ",Zb="ĵ",ev="Й",tv="й",nv="𝔍",sv="𝔧",ov="ȷ",cv="𝕁",rv="𝕛",av="𝒥",lv="𝒿",iv="Ј",dv="ј",uv="Є",pv="є",mv="Κ",fv="κ",hv="ϰ",xv="Ķ",gv="ķ",bv="К",vv="к",yv="𝔎",jv="𝔨",Nv="ĸ",Sv="Х",wv="х",Cv="Ќ",Ev="ќ",Tv="𝕂",_v="𝕜",Rv="𝒦",Lv="𝓀",Pv="⇚",Dv="Ĺ",kv="ĺ",Ov="⦴",Av="ℒ",Iv="Λ",qv="λ",Mv="⟨",$v="⟪",Uv="⦑",Fv="⟨",Hv="⪅",Bv="ℒ",Vv="«",Kv="⇤",zv="⤟",Xv="←",Gv="↞",Wv="⇐",Qv="⤝",Yv="↩",Jv="↫",Zv="⤹",ey="⥳",ty="↢",ny="⤙",sy="⤛",oy="⪫",cy="⪭",ry="⪭︀",ay="⤌",ly="⤎",iy="❲",dy="{",uy="[",py="⦋",my="⦏",fy="⦍",hy="Ľ",xy="ľ",gy="Ļ",by="ļ",vy="⌈",yy="{",jy="Л",Ny="л",Sy="⤶",wy="“",Cy="„",Ey="⥧",Ty="⥋",_y="↲",Ry="≤",Ly="≦",Py="⟨",Dy="⇤",ky="←",Oy="←",Ay="⇐",Iy="⇆",qy="↢",My="⌈",$y="⟦",Uy="⥡",Fy="⥙",Hy="⇃",By="⌊",Vy="↽",Ky="↼",zy="⇇",Xy="↔",Gy="↔",Wy="⇔",Qy="⇆",Yy="⇋",Jy="↭",Zy="⥎",ej="↤",tj="⊣",nj="⥚",sj="⋋",oj="⧏",cj="⊲",rj="⊴",aj="⥑",lj="⥠",ij="⥘",dj="↿",uj="⥒",pj="↼",mj="⪋",fj="⋚",hj="≤",xj="≦",gj="⩽",bj="⪨",vj="⩽",yj="⩿",jj="⪁",Nj="⪃",Sj="⋚︀",wj="⪓",Cj="⪅",Ej="⋖",Tj="⋚",_j="⪋",Rj="⋚",Lj="≦",Pj="≶",Dj="≶",kj="⪡",Oj="≲",Aj="⩽",Ij="≲",qj="⥼",Mj="⌊",$j="𝔏",Uj="𝔩",Fj="≶",Hj="⪑",Bj="⥢",Vj="↽",Kj="↼",zj="⥪",Xj="▄",Gj="Љ",Wj="љ",Qj="⇇",Yj="≪",Jj="⋘",Zj="⌞",eN="⇚",tN="⥫",nN="◺",sN="Ŀ",oN="ŀ",cN="⎰",rN="⎰",aN="⪉",lN="⪉",iN="⪇",dN="≨",uN="⪇",pN="≨",mN="⋦",fN="⟬",hN="⇽",xN="⟦",gN="⟵",bN="⟵",vN="⟸",yN="⟷",jN="⟷",NN="⟺",SN="⟼",wN="⟶",CN="⟶",EN="⟹",TN="↫",_N="↬",RN="⦅",LN="𝕃",PN="𝕝",DN="⨭",kN="⨴",ON="∗",AN="_",IN="↙",qN="↘",MN="◊",$N="◊",UN="⧫",FN="(",HN="⦓",BN="⇆",VN="⌟",KN="⇋",zN="⥭",XN="",GN="⊿",WN="‹",QN="𝓁",YN="ℒ",JN="↰",ZN="↰",eS="≲",tS="⪍",nS="⪏",sS="[",oS="‘",cS="‚",rS="Ł",aS="ł",lS="⪦",iS="⩹",dS="<",uS="<",pS="≪",mS="⋖",fS="⋋",hS="⋉",xS="⥶",gS="⩻",bS="◃",vS="⊴",yS="◂",jS="⦖",NS="⥊",SS="⥦",wS="≨︀",CS="≨︀",ES="¯",TS="♂",_S="✠",RS="✠",LS="↦",PS="↦",DS="↧",kS="↤",OS="↥",AS="▮",IS="⨩",qS="М",MS="м",$S="—",US="∺",FS="∡",HS=" ",BS="ℳ",VS="𝔐",KS="𝔪",zS="℧",XS="µ",GS="*",WS="⫰",QS="∣",YS="·",JS="⊟",ZS="−",ew="∸",tw="⨪",nw="∓",sw="⫛",ow="…",cw="∓",rw="⊧",aw="𝕄",lw="𝕞",iw="∓",dw="𝓂",uw="ℳ",pw="∾",mw="Μ",fw="μ",hw="⊸",xw="⊸",gw="∇",bw="Ń",vw="ń",yw="∠⃒",jw="≉",Nw="⩰̸",Sw="≋̸",ww="ʼn",Cw="≉",Ew="♮",Tw="ℕ",_w="♮",Rw=" ",Lw="≎̸",Pw="≏̸",Dw="⩃",kw="Ň",Ow="ň",Aw="Ņ",Iw="ņ",qw="≇",Mw="⩭̸",$w="⩂",Uw="Н",Fw="н",Hw="–",Bw="⤤",Vw="↗",Kw="⇗",zw="↗",Xw="≠",Gw="≐̸",Ww="",Qw="",Yw="",Jw="",Zw="≢",e0="⤨",t0="≂̸",n0="≫",s0="≪",o0=`
|
|
2
|
-
`,c0="∄",r0="∄",a0="𝔑",l0="𝔫",i0="≧̸",d0="≱",u0="≱",p0="≧̸",m0="⩾̸",f0="⩾̸",h0="⋙̸",x0="≵",g0="≫⃒",b0="≯",v0="≯",y0="≫̸",j0="↮",N0="⇎",S0="⫲",w0="∋",C0="⋼",E0="⋺",T0="∋",_0="Њ",R0="њ",L0="↚",P0="⇍",D0="‥",k0="≦̸",O0="≰",A0="↚",I0="⇍",q0="↮",M0="⇎",$0="≰",U0="≦̸",F0="⩽̸",H0="⩽̸",B0="≮",V0="⋘̸",K0="≴",z0="≪⃒",X0="≮",G0="⋪",W0="⋬",Q0="≪̸",Y0="∤",J0="",Z0=" ",eC="𝕟",tC="ℕ",nC="⫬",sC="¬",oC="≢",cC="≭",rC="∦",aC="∉",lC="≠",iC="≂̸",dC="∄",uC="≯",pC="≱",mC="≧̸",fC="≫̸",hC="≹",xC="⩾̸",gC="≵",bC="≎̸",vC="≏̸",yC="∉",jC="⋵̸",NC="⋹̸",SC="∉",wC="⋷",CC="⋶",EC="⧏̸",TC="⋪",_C="⋬",RC="≮",LC="≰",PC="≸",DC="≪̸",kC="⩽̸",OC="≴",AC="⪢̸",IC="⪡̸",qC="∌",MC="∌",$C="⋾",UC="⋽",FC="⊀",HC="⪯̸",BC="⋠",VC="∌",KC="⧐̸",zC="⋫",XC="⋭",GC="⊏̸",WC="⋢",QC="⊐̸",YC="⋣",JC="⊂⃒",ZC="⊈",e1="⊁",t1="⪰̸",n1="⋡",s1="≿̸",o1="⊃⃒",c1="⊉",r1="≁",a1="≄",l1="≇",i1="≉",d1="∤",u1="∦",p1="∦",m1="⫽⃥",f1="∂̸",h1="⨔",x1="⊀",g1="⋠",b1="⊀",v1="⪯̸",y1="⪯̸",j1="⤳̸",N1="↛",S1="⇏",w1="↝̸",C1="↛",E1="⇏",T1="⋫",_1="⋭",R1="⊁",L1="⋡",P1="⪰̸",D1="𝒩",k1="𝓃",O1="∤",A1="∦",I1="≁",q1="≄",M1="≄",$1="∤",U1="∦",F1="⋢",H1="⋣",B1="⊄",V1="⫅̸",K1="⊈",z1="⊂⃒",X1="⊈",G1="⫅̸",W1="⊁",Q1="⪰̸",Y1="⊅",J1="⫆̸",Z1="⊉",eE="⊃⃒",tE="⊉",nE="⫆̸",sE="≹",oE="Ñ",cE="ñ",rE="≸",aE="⋪",lE="⋬",iE="⋫",dE="⋭",uE="Ν",pE="ν",mE="#",fE="№",hE=" ",xE="≍⃒",gE="⊬",bE="⊭",vE="⊮",yE="⊯",jE="≥⃒",NE=">⃒",SE="⤄",wE="⧞",CE="⤂",EE="≤⃒",TE="<⃒",_E="⊴⃒",RE="⤃",LE="⊵⃒",PE="∼⃒",DE="⤣",kE="↖",OE="⇖",AE="↖",IE="⤧",qE="Ó",ME="ó",$E="⊛",UE="Ô",FE="ô",HE="⊚",BE="О",VE="о",KE="⊝",zE="Ő",XE="ő",GE="⨸",WE="⊙",QE="⦼",YE="Œ",JE="œ",ZE="⦿",eT="𝔒",tT="𝔬",nT="˛",sT="Ò",oT="ò",cT="⧁",rT="⦵",aT="Ω",lT="∮",iT="↺",dT="⦾",uT="⦻",pT="‾",mT="⧀",fT="Ō",hT="ō",xT="Ω",gT="ω",bT="Ο",vT="ο",yT="⦶",jT="⊖",NT="𝕆",ST="𝕠",wT="⦷",CT="“",ET="‘",TT="⦹",_T="⊕",RT="↻",LT="⩔",PT="∨",DT="⩝",kT="ℴ",OT="ℴ",AT="ª",IT="º",qT="⊶",MT="⩖",$T="⩗",UT="⩛",FT="Ⓢ",HT="𝒪",BT="ℴ",VT="Ø",KT="ø",zT="⊘",XT="Õ",GT="õ",WT="⨶",QT="⨷",YT="⊗",JT="Ö",ZT="ö",e_="⌽",t_="‾",n_="⏞",s_="⎴",o_="⏜",c_="¶",r_="∥",a_="∥",l_="⫳",i_="⫽",d_="∂",u_="∂",p_="П",m_="п",f_="%",h_=".",x_="‰",g_="⊥",b_="‱",v_="𝔓",y_="𝔭",j_="Φ",N_="φ",S_="ϕ",w_="ℳ",C_="☎",E_="Π",T_="π",__="⋔",R_="ϖ",L_="ℏ",P_="ℎ",D_="ℏ",k_="⨣",O_="⊞",A_="⨢",I_="+",q_="∔",M_="⨥",$_="⩲",U_="±",F_="±",H_="⨦",B_="⨧",V_="±",K_="ℌ",z_="⨕",X_="𝕡",G_="ℙ",W_="£",Q_="⪷",Y_="⪻",J_="≺",Z_="≼",eR="⪷",tR="≺",nR="≼",sR="≺",oR="⪯",cR="≼",rR="≾",aR="⪯",lR="⪹",iR="⪵",dR="⋨",uR="⪯",pR="⪳",mR="≾",fR="′",hR="″",xR="ℙ",gR="⪹",bR="⪵",vR="⋨",yR="∏",jR="∏",NR="⌮",SR="⌒",wR="⌓",CR="∝",ER="∝",TR="∷",_R="∝",RR="≾",LR="⊰",PR="𝒫",DR="𝓅",kR="Ψ",OR="ψ",AR=" ",IR="𝔔",qR="𝔮",MR="⨌",$R="𝕢",UR="ℚ",FR="⁗",HR="𝒬",BR="𝓆",VR="ℍ",KR="⨖",zR="?",XR="≟",GR='"',WR='"',QR="⇛",YR="∽̱",JR="Ŕ",ZR="ŕ",eL="√",tL="⦳",nL="⟩",sL="⟫",oL="⦒",cL="⦥",rL="⟩",aL="»",lL="⥵",iL="⇥",dL="⤠",uL="⤳",pL="→",mL="↠",fL="⇒",hL="⤞",xL="↪",gL="↬",bL="⥅",vL="⥴",yL="⤖",jL="↣",NL="↝",SL="⤚",wL="⤜",CL="∶",EL="ℚ",TL="⤍",_L="⤏",RL="⤐",LL="❳",PL="}",DL="]",kL="⦌",OL="⦎",AL="⦐",IL="Ř",qL="ř",ML="Ŗ",$L="ŗ",UL="⌉",FL="}",HL="Р",BL="р",VL="⤷",KL="⥩",zL="”",XL="”",GL="↳",WL="ℜ",QL="ℛ",YL="ℜ",JL="ℝ",ZL="ℜ",eP="▭",tP="®",nP="®",sP="∋",oP="⇋",cP="⥯",rP="⥽",aP="⌋",lP="𝔯",iP="ℜ",dP="⥤",uP="⇁",pP="⇀",mP="⥬",fP="Ρ",hP="ρ",xP="ϱ",gP="⟩",bP="⇥",vP="→",yP="→",jP="⇒",NP="⇄",SP="↣",wP="⌉",CP="⟧",EP="⥝",TP="⥕",_P="⇂",RP="⌋",LP="⇁",PP="⇀",DP="⇄",kP="⇌",OP="⇉",AP="↝",IP="↦",qP="⊢",MP="⥛",$P="⋌",UP="⧐",FP="⊳",HP="⊵",BP="⥏",VP="⥜",KP="⥔",zP="↾",XP="⥓",GP="⇀",WP="˚",QP="≓",YP="⇄",JP="⇌",ZP="",eD="⎱",tD="⎱",nD="⫮",sD="⟭",oD="⇾",cD="⟧",rD="⦆",aD="𝕣",lD="ℝ",iD="⨮",dD="⨵",uD="⥰",pD=")",mD="⦔",fD="⨒",hD="⇉",xD="⇛",gD="›",bD="𝓇",vD="ℛ",yD="↱",jD="↱",ND="]",SD="’",wD="’",CD="⋌",ED="⋊",TD="▹",_D="⊵",RD="▸",LD="⧎",PD="⧴",DD="⥨",kD="℞",OD="Ś",AD="ś",ID="‚",qD="⪸",MD="Š",$D="š",UD="⪼",FD="≻",HD="≽",BD="⪰",VD="⪴",KD="Ş",zD="ş",XD="Ŝ",GD="ŝ",WD="⪺",QD="⪶",YD="⋩",JD="⨓",ZD="≿",ek="С",tk="с",nk="⊡",sk="⋅",ok="⩦",ck="⤥",rk="↘",ak="⇘",lk="↘",ik="§",dk=";",uk="⤩",pk="∖",mk="∖",fk="✶",hk="𝔖",xk="𝔰",gk="⌢",bk="♯",vk="Щ",yk="щ",jk="Ш",Nk="ш",Sk="↓",wk="←",Ck="∣",Ek="∥",Tk="→",_k="↑",Rk="",Lk="Σ",Pk="σ",Dk="ς",kk="ς",Ok="∼",Ak="⩪",Ik="≃",qk="≃",Mk="⪞",$k="⪠",Uk="⪝",Fk="⪟",Hk="≆",Bk="⨤",Vk="⥲",Kk="←",zk="∘",Xk="∖",Gk="⨳",Wk="⧤",Qk="∣",Yk="⌣",Jk="⪪",Zk="⪬",eO="⪬︀",tO="Ь",nO="ь",sO="⌿",oO="⧄",cO="/",rO="𝕊",aO="𝕤",lO="♠",iO="♠",dO="∥",uO="⊓",pO="⊓︀",mO="⊔",fO="⊔︀",hO="√",xO="⊏",gO="⊑",bO="⊏",vO="⊑",yO="⊐",jO="⊒",NO="⊐",SO="⊒",wO="□",CO="□",EO="⊓",TO="⊏",_O="⊑",RO="⊐",LO="⊒",PO="⊔",DO="▪",kO="□",OO="▪",AO="→",IO="𝒮",qO="𝓈",MO="∖",$O="⌣",UO="⋆",FO="⋆",HO="☆",BO="★",VO="ϵ",KO="ϕ",zO="¯",XO="⊂",GO="⋐",WO="⪽",QO="⫅",YO="⊆",JO="⫃",ZO="⫁",eA="⫋",tA="⊊",nA="⪿",sA="⥹",oA="⊂",cA="⋐",rA="⊆",aA="⫅",lA="⊆",iA="⊊",dA="⫋",uA="⫇",pA="⫕",mA="⫓",fA="⪸",hA="≻",xA="≽",gA="≻",bA="⪰",vA="≽",yA="≿",jA="⪰",NA="⪺",SA="⪶",wA="⋩",CA="≿",EA="∋",TA="∑",_A="∑",RA="♪",LA="¹",PA="²",DA="³",kA="⊃",OA="⋑",AA="⪾",IA="⫘",qA="⫆",MA="⊇",$A="⫄",UA="⊃",FA="⊇",HA="⟉",BA="⫗",VA="⥻",KA="⫂",zA="⫌",XA="⊋",GA="⫀",WA="⊃",QA="⋑",YA="⊇",JA="⫆",ZA="⊋",eI="⫌",tI="⫈",nI="⫔",sI="⫖",oI="⤦",cI="↙",rI="⇙",aI="↙",lI="⤪",iI="ß",dI=" ",uI="⌖",pI="Τ",mI="τ",fI="⎴",hI="Ť",xI="ť",gI="Ţ",bI="ţ",vI="Т",yI="т",jI="⃛",NI="⌕",SI="𝔗",wI="𝔱",CI="∴",EI="∴",TI="∴",_I="Θ",RI="θ",LI="ϑ",PI="ϑ",DI="≈",kI="∼",OI=" ",AI=" ",II=" ",qI="≈",MI="∼",$I="Þ",UI="þ",FI="˜",HI="∼",BI="≃",VI="≅",KI="≈",zI="⨱",XI="⊠",GI="×",WI="⨰",QI="∭",YI="⤨",JI="⌶",ZI="⫱",e2="⊤",t2="𝕋",n2="𝕥",s2="⫚",o2="⤩",c2="‴",r2="™",a2="™",l2="▵",i2="▿",d2="◃",u2="⊴",p2="≜",m2="▹",f2="⊵",h2="◬",x2="≜",g2="⨺",b2="⃛",v2="⨹",y2="⧍",j2="⨻",N2="⏢",S2="𝒯",w2="𝓉",C2="Ц",E2="ц",T2="Ћ",_2="ћ",R2="Ŧ",L2="ŧ",P2="≬",D2="↞",k2="↠",O2="Ú",A2="ú",I2="↑",q2="↟",M2="⇑",$2="⥉",U2="Ў",F2="ў",H2="Ŭ",B2="ŭ",V2="Û",K2="û",z2="У",X2="у",G2="⇅",W2="Ű",Q2="ű",Y2="⥮",J2="⥾",Z2="𝔘",eq="𝔲",tq="Ù",nq="ù",sq="⥣",oq="↿",cq="↾",rq="▀",aq="⌜",lq="⌜",iq="⌏",dq="◸",uq="Ū",pq="ū",mq="¨",fq="_",hq="⏟",xq="⎵",gq="⏝",bq="⋃",vq="⊎",yq="Ų",jq="ų",Nq="𝕌",Sq="𝕦",wq="⤒",Cq="↑",Eq="↑",Tq="⇑",_q="⇅",Rq="↕",Lq="↕",Pq="⇕",Dq="⥮",kq="↿",Oq="↾",Aq="⊎",Iq="↖",qq="↗",Mq="υ",$q="ϒ",Uq="ϒ",Fq="Υ",Hq="υ",Bq="↥",Vq="⊥",Kq="⇈",zq="⌝",Xq="⌝",Gq="⌎",Wq="Ů",Qq="ů",Yq="◹",Jq="𝒰",Zq="𝓊",eM="⋰",tM="Ũ",nM="ũ",sM="▵",oM="▴",cM="⇈",rM="Ü",aM="ü",lM="⦧",iM="⦜",dM="ϵ",uM="ϰ",pM="∅",mM="ϕ",fM="ϖ",hM="∝",xM="↕",gM="⇕",bM="ϱ",vM="ς",yM="⊊︀",jM="⫋︀",NM="⊋︀",SM="⫌︀",wM="ϑ",CM="⊲",EM="⊳",TM="⫨",_M="⫫",RM="⫩",LM="В",PM="в",DM="⊢",kM="⊨",OM="⊩",AM="⊫",IM="⫦",qM="⊻",MM="∨",$M="⋁",UM="≚",FM="⋮",HM="|",BM="‖",VM="|",KM="‖",zM="∣",XM="|",GM="❘",WM="≀",QM=" ",YM="𝔙",JM="𝔳",ZM="⊲",e$="⊂⃒",t$="⊃⃒",n$="𝕍",s$="𝕧",o$="∝",c$="⊳",r$="𝒱",a$="𝓋",l$="⫋︀",i$="⊊︀",d$="⫌︀",u$="⊋︀",p$="⊪",m$="⦚",f$="Ŵ",h$="ŵ",x$="⩟",g$="∧",b$="⋀",v$="≙",y$="℘",j$="𝔚",N$="𝔴",S$="𝕎",w$="𝕨",C$="℘",E$="≀",T$="≀",_$="𝒲",R$="𝓌",L$="⋂",P$="◯",D$="⋃",k$="▽",O$="𝔛",A$="𝔵",I$="⟷",q$="⟺",M$="Ξ",$$="ξ",U$="⟵",F$="⟸",H$="⟼",B$="⋻",V$="⨀",K$="𝕏",z$="𝕩",X$="⨁",G$="⨂",W$="⟶",Q$="⟹",Y$="𝒳",J$="𝓍",Z$="⨆",e3="⨄",t3="△",n3="⋁",s3="⋀",o3="Ý",c3="ý",r3="Я",a3="я",l3="Ŷ",i3="ŷ",d3="Ы",u3="ы",p3="¥",m3="𝔜",f3="𝔶",h3="Ї",x3="ї",g3="𝕐",b3="𝕪",v3="𝒴",y3="𝓎",j3="Ю",N3="ю",S3="ÿ",w3="Ÿ",C3="Ź",E3="ź",T3="Ž",_3="ž",R3="З",L3="з",P3="Ż",D3="ż",k3="ℨ",O3="",A3="Ζ",I3="ζ",q3="𝔷",M3="ℨ",$3="Ж",U3="ж",F3="⇝",H3="𝕫",B3="ℤ",V3="𝒵",K3="𝓏",z3="",X3="",gn={Aacute:Lo,aacute:Po,Abreve:Do,abreve:ko,ac:Oo,acd:Ao,acE:Io,Acirc:qo,acirc:Mo,acute:$o,Acy:Uo,acy:Fo,AElig:Ho,aelig:Bo,af:Vo,Afr:Ko,afr:zo,Agrave:Xo,agrave:Go,alefsym:Wo,aleph:Qo,Alpha:Yo,alpha:Jo,Amacr:Zo,amacr:ec,amalg:tc,amp:nc,AMP:sc,andand:oc,And:cc,and:rc,andd:ac,andslope:lc,andv:ic,ang:dc,ange:uc,angle:pc,angmsdaa:mc,angmsdab:fc,angmsdac:hc,angmsdad:xc,angmsdae:gc,angmsdaf:bc,angmsdag:vc,angmsdah:yc,angmsd:jc,angrt:Nc,angrtvb:Sc,angrtvbd:wc,angsph:Cc,angst:Ec,angzarr:Tc,Aogon:_c,aogon:Rc,Aopf:Lc,aopf:Pc,apacir:Dc,ap:kc,apE:Oc,ape:Ac,apid:Ic,apos:qc,ApplyFunction:Mc,approx:$c,approxeq:Uc,Aring:Fc,aring:Hc,Ascr:Bc,ascr:Vc,Assign:Kc,ast:zc,asymp:Xc,asympeq:Gc,Atilde:Wc,atilde:Qc,Auml:Yc,auml:Jc,awconint:Zc,awint:er,backcong:tr,backepsilon:nr,backprime:sr,backsim:or,backsimeq:cr,Backslash:rr,Barv:ar,barvee:lr,barwed:ir,Barwed:dr,barwedge:ur,bbrk:pr,bbrktbrk:mr,bcong:fr,Bcy:hr,bcy:xr,bdquo:gr,becaus:br,because:vr,Because:yr,bemptyv:jr,bepsi:Nr,bernou:Sr,Bernoullis:wr,Beta:Cr,beta:Er,beth:Tr,between:_r,Bfr:Rr,bfr:Lr,bigcap:Pr,bigcirc:Dr,bigcup:kr,bigodot:Or,bigoplus:Ar,bigotimes:Ir,bigsqcup:qr,bigstar:Mr,bigtriangledown:$r,bigtriangleup:Ur,biguplus:Fr,bigvee:Hr,bigwedge:Br,bkarow:Vr,blacklozenge:Kr,blacksquare:zr,blacktriangle:Xr,blacktriangledown:Gr,blacktriangleleft:Wr,blacktriangleright:Qr,blank:Yr,blk12:Jr,blk14:Zr,blk34:ea,block:ta,bne:na,bnequiv:sa,bNot:oa,bnot:ca,Bopf:ra,bopf:aa,bot:la,bottom:ia,bowtie:da,boxbox:ua,boxdl:pa,boxdL:ma,boxDl:fa,boxDL:ha,boxdr:xa,boxdR:ga,boxDr:ba,boxDR:va,boxh:ya,boxH:ja,boxhd:Na,boxHd:Sa,boxhD:wa,boxHD:Ca,boxhu:Ea,boxHu:Ta,boxhU:_a,boxHU:Ra,boxminus:La,boxplus:Pa,boxtimes:Da,boxul:ka,boxuL:Oa,boxUl:Aa,boxUL:Ia,boxur:qa,boxuR:Ma,boxUr:$a,boxUR:Ua,boxv:Fa,boxV:Ha,boxvh:Ba,boxvH:Va,boxVh:Ka,boxVH:za,boxvl:Xa,boxvL:Ga,boxVl:Wa,boxVL:Qa,boxvr:Ya,boxvR:Ja,boxVr:Za,boxVR:el,bprime:tl,breve:nl,Breve:sl,brvbar:ol,bscr:cl,Bscr:rl,bsemi:al,bsim:ll,bsime:il,bsolb:dl,bsol:ul,bsolhsub:pl,bull:ml,bullet:fl,bump:hl,bumpE:xl,bumpe:gl,Bumpeq:bl,bumpeq:vl,Cacute:yl,cacute:jl,capand:Nl,capbrcup:Sl,capcap:wl,cap:Cl,Cap:El,capcup:Tl,capdot:_l,CapitalDifferentialD:Rl,caps:Ll,caret:Pl,caron:Dl,Cayleys:kl,ccaps:Ol,Ccaron:Al,ccaron:Il,Ccedil:ql,ccedil:Ml,Ccirc:$l,ccirc:Ul,Cconint:Fl,ccups:Hl,ccupssm:Bl,Cdot:Vl,cdot:Kl,cedil:zl,Cedilla:Xl,cemptyv:Gl,cent:Wl,centerdot:Ql,CenterDot:Yl,cfr:Jl,Cfr:Zl,CHcy:ei,chcy:ti,check:ni,checkmark:si,Chi:oi,chi:ci,circ:ri,circeq:ai,circlearrowleft:li,circlearrowright:ii,circledast:di,circledcirc:ui,circleddash:pi,CircleDot:mi,circledR:fi,circledS:hi,CircleMinus:xi,CirclePlus:gi,CircleTimes:bi,cir:vi,cirE:yi,cire:ji,cirfnint:Ni,cirmid:Si,cirscir:wi,ClockwiseContourIntegral:Ci,CloseCurlyDoubleQuote:Ei,CloseCurlyQuote:Ti,clubs:_i,clubsuit:Ri,colon:Li,Colon:Pi,Colone:Di,colone:ki,coloneq:Oi,comma:Ai,commat:Ii,comp:qi,compfn:Mi,complement:$i,complexes:Ui,cong:Fi,congdot:Hi,Congruent:Bi,conint:Vi,Conint:Ki,ContourIntegral:zi,copf:Xi,Copf:Gi,coprod:Wi,Coproduct:Qi,copy:Yi,COPY:Ji,copysr:Zi,CounterClockwiseContourIntegral:ed,crarr:td,cross:nd,Cross:sd,Cscr:od,cscr:cd,csub:rd,csube:ad,csup:ld,csupe:id,ctdot:dd,cudarrl:ud,cudarrr:pd,cuepr:md,cuesc:fd,cularr:hd,cularrp:xd,cupbrcap:gd,cupcap:bd,CupCap:vd,cup:yd,Cup:jd,cupcup:Nd,cupdot:Sd,cupor:wd,cups:Cd,curarr:Ed,curarrm:Td,curlyeqprec:_d,curlyeqsucc:Rd,curlyvee:Ld,curlywedge:Pd,curren:Dd,curvearrowleft:kd,curvearrowright:Od,cuvee:Ad,cuwed:Id,cwconint:qd,cwint:Md,cylcty:$d,dagger:Ud,Dagger:Fd,daleth:Hd,darr:Bd,Darr:Vd,dArr:Kd,dash:zd,Dashv:Xd,dashv:Gd,dbkarow:Wd,dblac:Qd,Dcaron:Yd,dcaron:Jd,Dcy:Zd,dcy:eu,ddagger:tu,ddarr:nu,DD:su,dd:ou,DDotrahd:cu,ddotseq:ru,deg:au,Del:lu,Delta:iu,delta:du,demptyv:uu,dfisht:pu,Dfr:mu,dfr:fu,dHar:hu,dharl:xu,dharr:gu,DiacriticalAcute:bu,DiacriticalDot:vu,DiacriticalDoubleAcute:yu,DiacriticalGrave:ju,DiacriticalTilde:Nu,diam:Su,diamond:wu,Diamond:Cu,diamondsuit:Eu,diams:Tu,die:_u,DifferentialD:Ru,digamma:Lu,disin:Pu,div:Du,divide:ku,divideontimes:Ou,divonx:Au,DJcy:Iu,djcy:qu,dlcorn:Mu,dlcrop:$u,dollar:Uu,Dopf:Fu,dopf:Hu,Dot:Bu,dot:Vu,DotDot:Ku,doteq:zu,doteqdot:Xu,DotEqual:Gu,dotminus:Wu,dotplus:Qu,dotsquare:Yu,doublebarwedge:Ju,DoubleContourIntegral:Zu,DoubleDot:ep,DoubleDownArrow:tp,DoubleLeftArrow:np,DoubleLeftRightArrow:sp,DoubleLeftTee:op,DoubleLongLeftArrow:cp,DoubleLongLeftRightArrow:rp,DoubleLongRightArrow:ap,DoubleRightArrow:lp,DoubleRightTee:ip,DoubleUpArrow:dp,DoubleUpDownArrow:up,DoubleVerticalBar:pp,DownArrowBar:mp,downarrow:fp,DownArrow:hp,Downarrow:xp,DownArrowUpArrow:gp,DownBreve:bp,downdownarrows:vp,downharpoonleft:yp,downharpoonright:jp,DownLeftRightVector:Np,DownLeftTeeVector:Sp,DownLeftVectorBar:wp,DownLeftVector:Cp,DownRightTeeVector:Ep,DownRightVectorBar:Tp,DownRightVector:_p,DownTeeArrow:Rp,DownTee:Lp,drbkarow:Pp,drcorn:Dp,drcrop:kp,Dscr:Op,dscr:Ap,DScy:Ip,dscy:qp,dsol:Mp,Dstrok:$p,dstrok:Up,dtdot:Fp,dtri:Hp,dtrif:Bp,duarr:Vp,duhar:Kp,dwangle:zp,DZcy:Xp,dzcy:Gp,dzigrarr:Wp,Eacute:Qp,eacute:Yp,easter:Jp,Ecaron:Zp,ecaron:em,Ecirc:tm,ecirc:nm,ecir:sm,ecolon:om,Ecy:cm,ecy:rm,eDDot:am,Edot:lm,edot:im,eDot:dm,ee:um,efDot:pm,Efr:mm,efr:fm,eg:hm,Egrave:xm,egrave:gm,egs:bm,egsdot:vm,el:ym,Element:jm,elinters:Nm,ell:Sm,els:wm,elsdot:Cm,Emacr:Em,emacr:Tm,empty:_m,emptyset:Rm,EmptySmallSquare:Lm,emptyv:Pm,EmptyVerySmallSquare:Dm,emsp13:km,emsp14:Om,emsp:Am,ENG:Im,eng:qm,ensp:Mm,Eogon:$m,eogon:Um,Eopf:Fm,eopf:Hm,epar:Bm,eparsl:Vm,eplus:Km,epsi:zm,Epsilon:Xm,epsilon:Gm,epsiv:Wm,eqcirc:Qm,eqcolon:Ym,eqsim:Jm,eqslantgtr:Zm,eqslantless:ef,Equal:tf,equals:nf,EqualTilde:sf,equest:of,Equilibrium:cf,equiv:rf,equivDD:af,eqvparsl:lf,erarr:df,erDot:uf,escr:pf,Escr:mf,esdot:ff,Esim:hf,esim:xf,Eta:gf,eta:bf,ETH:vf,eth:yf,Euml:jf,euml:Nf,euro:Sf,excl:wf,exist:Cf,Exists:Ef,expectation:Tf,exponentiale:_f,ExponentialE:Rf,fallingdotseq:Lf,Fcy:Pf,fcy:Df,female:kf,ffilig:Of,fflig:Af,ffllig:If,Ffr:qf,ffr:Mf,filig:$f,FilledSmallSquare:Uf,FilledVerySmallSquare:Ff,fjlig:Hf,flat:Bf,fllig:Vf,fltns:Kf,fnof:zf,Fopf:Xf,fopf:Gf,forall:Wf,ForAll:Qf,fork:Yf,forkv:Jf,Fouriertrf:Zf,fpartint:eh,frac12:th,frac13:nh,frac14:sh,frac15:oh,frac16:ch,frac18:rh,frac23:ah,frac25:lh,frac34:ih,frac35:dh,frac38:uh,frac45:ph,frac56:mh,frac58:fh,frac78:hh,frasl:xh,frown:gh,fscr:bh,Fscr:vh,gacute:yh,Gamma:jh,gamma:Nh,Gammad:Sh,gammad:wh,gap:Ch,Gbreve:Eh,gbreve:Th,Gcedil:_h,Gcirc:Rh,gcirc:Lh,Gcy:Ph,gcy:Dh,Gdot:kh,gdot:Oh,ge:Ah,gE:Ih,gEl:qh,gel:Mh,geq:$h,geqq:Uh,geqslant:Fh,gescc:Hh,ges:Bh,gesdot:Vh,gesdoto:Kh,gesdotol:zh,gesl:Xh,gesles:Gh,Gfr:Wh,gfr:Qh,gg:Yh,Gg:Jh,ggg:Zh,gimel:ex,GJcy:tx,gjcy:nx,gla:sx,gl:ox,glE:cx,glj:rx,gnap:ax,gnapprox:lx,gne:ix,gnE:dx,gneq:ux,gneqq:px,gnsim:mx,Gopf:fx,gopf:hx,grave:xx,GreaterEqual:gx,GreaterEqualLess:bx,GreaterFullEqual:vx,GreaterGreater:yx,GreaterLess:jx,GreaterSlantEqual:Nx,GreaterTilde:Sx,Gscr:wx,gscr:Cx,gsim:Ex,gsime:Tx,gsiml:_x,gtcc:Rx,gtcir:Lx,gt:Px,GT:Dx,Gt:kx,gtdot:Ox,gtlPar:Ax,gtquest:Ix,gtrapprox:qx,gtrarr:Mx,gtrdot:$x,gtreqless:Ux,gtreqqless:Fx,gtrless:Hx,gtrsim:Bx,gvertneqq:Vx,gvnE:Kx,Hacek:zx,hairsp:Xx,half:Gx,hamilt:Wx,HARDcy:Qx,hardcy:Yx,harrcir:Jx,harr:Zx,hArr:eg,harrw:tg,Hat:ng,hbar:sg,Hcirc:og,hcirc:cg,hearts:rg,heartsuit:ag,hellip:lg,hercon:ig,hfr:dg,Hfr:ug,HilbertSpace:pg,hksearow:mg,hkswarow:fg,hoarr:hg,homtht:xg,hookleftarrow:gg,hookrightarrow:bg,hopf:vg,Hopf:yg,horbar:jg,HorizontalLine:Ng,hscr:Sg,Hscr:wg,hslash:Cg,Hstrok:Eg,hstrok:Tg,HumpDownHump:_g,HumpEqual:Rg,hybull:Lg,hyphen:Pg,Iacute:Dg,iacute:kg,ic:Og,Icirc:Ag,icirc:Ig,Icy:qg,icy:Mg,Idot:$g,IEcy:Ug,iecy:Fg,iexcl:Hg,iff:Bg,ifr:Vg,Ifr:Kg,Igrave:zg,igrave:Xg,ii:Gg,iiiint:Wg,iiint:Qg,iinfin:Yg,iiota:Jg,IJlig:Zg,ijlig:eb,Imacr:tb,imacr:nb,image:sb,ImaginaryI:ob,imagline:cb,imagpart:rb,imath:ab,Im:lb,imof:ib,imped:db,Implies:ub,incare:pb,in:"∈",infin:mb,infintie:fb,inodot:hb,intcal:xb,int:gb,Int:bb,integers:vb,Integral:yb,intercal:jb,Intersection:Nb,intlarhk:Sb,intprod:wb,InvisibleComma:Cb,InvisibleTimes:Eb,IOcy:Tb,iocy:_b,Iogon:Rb,iogon:Lb,Iopf:Pb,iopf:Db,Iota:kb,iota:Ob,iprod:Ab,iquest:Ib,iscr:qb,Iscr:Mb,isin:$b,isindot:Ub,isinE:Fb,isins:Hb,isinsv:Bb,isinv:Vb,it:Kb,Itilde:zb,itilde:Xb,Iukcy:Gb,iukcy:Wb,Iuml:Qb,iuml:Yb,Jcirc:Jb,jcirc:Zb,Jcy:ev,jcy:tv,Jfr:nv,jfr:sv,jmath:ov,Jopf:cv,jopf:rv,Jscr:av,jscr:lv,Jsercy:iv,jsercy:dv,Jukcy:uv,jukcy:pv,Kappa:mv,kappa:fv,kappav:hv,Kcedil:xv,kcedil:gv,Kcy:bv,kcy:vv,Kfr:yv,kfr:jv,kgreen:Nv,KHcy:Sv,khcy:wv,KJcy:Cv,kjcy:Ev,Kopf:Tv,kopf:_v,Kscr:Rv,kscr:Lv,lAarr:Pv,Lacute:Dv,lacute:kv,laemptyv:Ov,lagran:Av,Lambda:Iv,lambda:qv,lang:Mv,Lang:$v,langd:Uv,langle:Fv,lap:Hv,Laplacetrf:Bv,laquo:Vv,larrb:Kv,larrbfs:zv,larr:Xv,Larr:Gv,lArr:Wv,larrfs:Qv,larrhk:Yv,larrlp:Jv,larrpl:Zv,larrsim:ey,larrtl:ty,latail:ny,lAtail:sy,lat:oy,late:cy,lates:ry,lbarr:ay,lBarr:ly,lbbrk:iy,lbrace:dy,lbrack:uy,lbrke:py,lbrksld:my,lbrkslu:fy,Lcaron:hy,lcaron:xy,Lcedil:gy,lcedil:by,lceil:vy,lcub:yy,Lcy:jy,lcy:Ny,ldca:Sy,ldquo:wy,ldquor:Cy,ldrdhar:Ey,ldrushar:Ty,ldsh:_y,le:Ry,lE:Ly,LeftAngleBracket:Py,LeftArrowBar:Dy,leftarrow:ky,LeftArrow:Oy,Leftarrow:Ay,LeftArrowRightArrow:Iy,leftarrowtail:qy,LeftCeiling:My,LeftDoubleBracket:$y,LeftDownTeeVector:Uy,LeftDownVectorBar:Fy,LeftDownVector:Hy,LeftFloor:By,leftharpoondown:Vy,leftharpoonup:Ky,leftleftarrows:zy,leftrightarrow:Xy,LeftRightArrow:Gy,Leftrightarrow:Wy,leftrightarrows:Qy,leftrightharpoons:Yy,leftrightsquigarrow:Jy,LeftRightVector:Zy,LeftTeeArrow:ej,LeftTee:tj,LeftTeeVector:nj,leftthreetimes:sj,LeftTriangleBar:oj,LeftTriangle:cj,LeftTriangleEqual:rj,LeftUpDownVector:aj,LeftUpTeeVector:lj,LeftUpVectorBar:ij,LeftUpVector:dj,LeftVectorBar:uj,LeftVector:pj,lEg:mj,leg:fj,leq:hj,leqq:xj,leqslant:gj,lescc:bj,les:vj,lesdot:yj,lesdoto:jj,lesdotor:Nj,lesg:Sj,lesges:wj,lessapprox:Cj,lessdot:Ej,lesseqgtr:Tj,lesseqqgtr:_j,LessEqualGreater:Rj,LessFullEqual:Lj,LessGreater:Pj,lessgtr:Dj,LessLess:kj,lesssim:Oj,LessSlantEqual:Aj,LessTilde:Ij,lfisht:qj,lfloor:Mj,Lfr:$j,lfr:Uj,lg:Fj,lgE:Hj,lHar:Bj,lhard:Vj,lharu:Kj,lharul:zj,lhblk:Xj,LJcy:Gj,ljcy:Wj,llarr:Qj,ll:Yj,Ll:Jj,llcorner:Zj,Lleftarrow:eN,llhard:tN,lltri:nN,Lmidot:sN,lmidot:oN,lmoustache:cN,lmoust:rN,lnap:aN,lnapprox:lN,lne:iN,lnE:dN,lneq:uN,lneqq:pN,lnsim:mN,loang:fN,loarr:hN,lobrk:xN,longleftarrow:gN,LongLeftArrow:bN,Longleftarrow:vN,longleftrightarrow:yN,LongLeftRightArrow:jN,Longleftrightarrow:NN,longmapsto:SN,longrightarrow:wN,LongRightArrow:CN,Longrightarrow:EN,looparrowleft:TN,looparrowright:_N,lopar:RN,Lopf:LN,lopf:PN,loplus:DN,lotimes:kN,lowast:ON,lowbar:AN,LowerLeftArrow:IN,LowerRightArrow:qN,loz:MN,lozenge:$N,lozf:UN,lpar:FN,lparlt:HN,lrarr:BN,lrcorner:VN,lrhar:KN,lrhard:zN,lrm:XN,lrtri:GN,lsaquo:WN,lscr:QN,Lscr:YN,lsh:JN,Lsh:ZN,lsim:eS,lsime:tS,lsimg:nS,lsqb:sS,lsquo:oS,lsquor:cS,Lstrok:rS,lstrok:aS,ltcc:lS,ltcir:iS,lt:dS,LT:uS,Lt:pS,ltdot:mS,lthree:fS,ltimes:hS,ltlarr:xS,ltquest:gS,ltri:bS,ltrie:vS,ltrif:yS,ltrPar:jS,lurdshar:NS,luruhar:SS,lvertneqq:wS,lvnE:CS,macr:ES,male:TS,malt:_S,maltese:RS,Map:"⤅",map:LS,mapsto:PS,mapstodown:DS,mapstoleft:kS,mapstoup:OS,marker:AS,mcomma:IS,Mcy:qS,mcy:MS,mdash:$S,mDDot:US,measuredangle:FS,MediumSpace:HS,Mellintrf:BS,Mfr:VS,mfr:KS,mho:zS,micro:XS,midast:GS,midcir:WS,mid:QS,middot:YS,minusb:JS,minus:ZS,minusd:ew,minusdu:tw,MinusPlus:nw,mlcp:sw,mldr:ow,mnplus:cw,models:rw,Mopf:aw,mopf:lw,mp:iw,mscr:dw,Mscr:uw,mstpos:pw,Mu:mw,mu:fw,multimap:hw,mumap:xw,nabla:gw,Nacute:bw,nacute:vw,nang:yw,nap:jw,napE:Nw,napid:Sw,napos:ww,napprox:Cw,natural:Ew,naturals:Tw,natur:_w,nbsp:Rw,nbump:Lw,nbumpe:Pw,ncap:Dw,Ncaron:kw,ncaron:Ow,Ncedil:Aw,ncedil:Iw,ncong:qw,ncongdot:Mw,ncup:$w,Ncy:Uw,ncy:Fw,ndash:Hw,nearhk:Bw,nearr:Vw,neArr:Kw,nearrow:zw,ne:Xw,nedot:Gw,NegativeMediumSpace:Ww,NegativeThickSpace:Qw,NegativeThinSpace:Yw,NegativeVeryThinSpace:Jw,nequiv:Zw,nesear:e0,nesim:t0,NestedGreaterGreater:n0,NestedLessLess:s0,NewLine:o0,nexist:c0,nexists:r0,Nfr:a0,nfr:l0,ngE:i0,nge:d0,ngeq:u0,ngeqq:p0,ngeqslant:m0,nges:f0,nGg:h0,ngsim:x0,nGt:g0,ngt:b0,ngtr:v0,nGtv:y0,nharr:j0,nhArr:N0,nhpar:S0,ni:w0,nis:C0,nisd:E0,niv:T0,NJcy:_0,njcy:R0,nlarr:L0,nlArr:P0,nldr:D0,nlE:k0,nle:O0,nleftarrow:A0,nLeftarrow:I0,nleftrightarrow:q0,nLeftrightarrow:M0,nleq:$0,nleqq:U0,nleqslant:F0,nles:H0,nless:B0,nLl:V0,nlsim:K0,nLt:z0,nlt:X0,nltri:G0,nltrie:W0,nLtv:Q0,nmid:Y0,NoBreak:J0,NonBreakingSpace:Z0,nopf:eC,Nopf:tC,Not:nC,not:sC,NotCongruent:oC,NotCupCap:cC,NotDoubleVerticalBar:rC,NotElement:aC,NotEqual:lC,NotEqualTilde:iC,NotExists:dC,NotGreater:uC,NotGreaterEqual:pC,NotGreaterFullEqual:mC,NotGreaterGreater:fC,NotGreaterLess:hC,NotGreaterSlantEqual:xC,NotGreaterTilde:gC,NotHumpDownHump:bC,NotHumpEqual:vC,notin:yC,notindot:jC,notinE:NC,notinva:SC,notinvb:wC,notinvc:CC,NotLeftTriangleBar:EC,NotLeftTriangle:TC,NotLeftTriangleEqual:_C,NotLess:RC,NotLessEqual:LC,NotLessGreater:PC,NotLessLess:DC,NotLessSlantEqual:kC,NotLessTilde:OC,NotNestedGreaterGreater:AC,NotNestedLessLess:IC,notni:qC,notniva:MC,notnivb:$C,notnivc:UC,NotPrecedes:FC,NotPrecedesEqual:HC,NotPrecedesSlantEqual:BC,NotReverseElement:VC,NotRightTriangleBar:KC,NotRightTriangle:zC,NotRightTriangleEqual:XC,NotSquareSubset:GC,NotSquareSubsetEqual:WC,NotSquareSuperset:QC,NotSquareSupersetEqual:YC,NotSubset:JC,NotSubsetEqual:ZC,NotSucceeds:e1,NotSucceedsEqual:t1,NotSucceedsSlantEqual:n1,NotSucceedsTilde:s1,NotSuperset:o1,NotSupersetEqual:c1,NotTilde:r1,NotTildeEqual:a1,NotTildeFullEqual:l1,NotTildeTilde:i1,NotVerticalBar:d1,nparallel:u1,npar:p1,nparsl:m1,npart:f1,npolint:h1,npr:x1,nprcue:g1,nprec:b1,npreceq:v1,npre:y1,nrarrc:j1,nrarr:N1,nrArr:S1,nrarrw:w1,nrightarrow:C1,nRightarrow:E1,nrtri:T1,nrtrie:_1,nsc:R1,nsccue:L1,nsce:P1,Nscr:D1,nscr:k1,nshortmid:O1,nshortparallel:A1,nsim:I1,nsime:q1,nsimeq:M1,nsmid:$1,nspar:U1,nsqsube:F1,nsqsupe:H1,nsub:B1,nsubE:V1,nsube:K1,nsubset:z1,nsubseteq:X1,nsubseteqq:G1,nsucc:W1,nsucceq:Q1,nsup:Y1,nsupE:J1,nsupe:Z1,nsupset:eE,nsupseteq:tE,nsupseteqq:nE,ntgl:sE,Ntilde:oE,ntilde:cE,ntlg:rE,ntriangleleft:aE,ntrianglelefteq:lE,ntriangleright:iE,ntrianglerighteq:dE,Nu:uE,nu:pE,num:mE,numero:fE,numsp:hE,nvap:xE,nvdash:gE,nvDash:bE,nVdash:vE,nVDash:yE,nvge:jE,nvgt:NE,nvHarr:SE,nvinfin:wE,nvlArr:CE,nvle:EE,nvlt:TE,nvltrie:_E,nvrArr:RE,nvrtrie:LE,nvsim:PE,nwarhk:DE,nwarr:kE,nwArr:OE,nwarrow:AE,nwnear:IE,Oacute:qE,oacute:ME,oast:$E,Ocirc:UE,ocirc:FE,ocir:HE,Ocy:BE,ocy:VE,odash:KE,Odblac:zE,odblac:XE,odiv:GE,odot:WE,odsold:QE,OElig:YE,oelig:JE,ofcir:ZE,Ofr:eT,ofr:tT,ogon:nT,Ograve:sT,ograve:oT,ogt:cT,ohbar:rT,ohm:aT,oint:lT,olarr:iT,olcir:dT,olcross:uT,oline:pT,olt:mT,Omacr:fT,omacr:hT,Omega:xT,omega:gT,Omicron:bT,omicron:vT,omid:yT,ominus:jT,Oopf:NT,oopf:ST,opar:wT,OpenCurlyDoubleQuote:CT,OpenCurlyQuote:ET,operp:TT,oplus:_T,orarr:RT,Or:LT,or:PT,ord:DT,order:kT,orderof:OT,ordf:AT,ordm:IT,origof:qT,oror:MT,orslope:$T,orv:UT,oS:FT,Oscr:HT,oscr:BT,Oslash:VT,oslash:KT,osol:zT,Otilde:XT,otilde:GT,otimesas:WT,Otimes:QT,otimes:YT,Ouml:JT,ouml:ZT,ovbar:e_,OverBar:t_,OverBrace:n_,OverBracket:s_,OverParenthesis:o_,para:c_,parallel:r_,par:a_,parsim:l_,parsl:i_,part:d_,PartialD:u_,Pcy:p_,pcy:m_,percnt:f_,period:h_,permil:x_,perp:g_,pertenk:b_,Pfr:v_,pfr:y_,Phi:j_,phi:N_,phiv:S_,phmmat:w_,phone:C_,Pi:E_,pi:T_,pitchfork:__,piv:R_,planck:L_,planckh:P_,plankv:D_,plusacir:k_,plusb:O_,pluscir:A_,plus:I_,plusdo:q_,plusdu:M_,pluse:$_,PlusMinus:U_,plusmn:F_,plussim:H_,plustwo:B_,pm:V_,Poincareplane:K_,pointint:z_,popf:X_,Popf:G_,pound:W_,prap:Q_,Pr:Y_,pr:J_,prcue:Z_,precapprox:eR,prec:tR,preccurlyeq:nR,Precedes:sR,PrecedesEqual:oR,PrecedesSlantEqual:cR,PrecedesTilde:rR,preceq:aR,precnapprox:lR,precneqq:iR,precnsim:dR,pre:uR,prE:pR,precsim:mR,prime:fR,Prime:hR,primes:xR,prnap:gR,prnE:bR,prnsim:vR,prod:yR,Product:jR,profalar:NR,profline:SR,profsurf:wR,prop:CR,Proportional:ER,Proportion:TR,propto:_R,prsim:RR,prurel:LR,Pscr:PR,pscr:DR,Psi:kR,psi:OR,puncsp:AR,Qfr:IR,qfr:qR,qint:MR,qopf:$R,Qopf:UR,qprime:FR,Qscr:HR,qscr:BR,quaternions:VR,quatint:KR,quest:zR,questeq:XR,quot:GR,QUOT:WR,rAarr:QR,race:YR,Racute:JR,racute:ZR,radic:eL,raemptyv:tL,rang:nL,Rang:sL,rangd:oL,range:cL,rangle:rL,raquo:aL,rarrap:lL,rarrb:iL,rarrbfs:dL,rarrc:uL,rarr:pL,Rarr:mL,rArr:fL,rarrfs:hL,rarrhk:xL,rarrlp:gL,rarrpl:bL,rarrsim:vL,Rarrtl:yL,rarrtl:jL,rarrw:NL,ratail:SL,rAtail:wL,ratio:CL,rationals:EL,rbarr:TL,rBarr:_L,RBarr:RL,rbbrk:LL,rbrace:PL,rbrack:DL,rbrke:kL,rbrksld:OL,rbrkslu:AL,Rcaron:IL,rcaron:qL,Rcedil:ML,rcedil:$L,rceil:UL,rcub:FL,Rcy:HL,rcy:BL,rdca:VL,rdldhar:KL,rdquo:zL,rdquor:XL,rdsh:GL,real:WL,realine:QL,realpart:YL,reals:JL,Re:ZL,rect:eP,reg:tP,REG:nP,ReverseElement:sP,ReverseEquilibrium:oP,ReverseUpEquilibrium:cP,rfisht:rP,rfloor:aP,rfr:lP,Rfr:iP,rHar:dP,rhard:uP,rharu:pP,rharul:mP,Rho:fP,rho:hP,rhov:xP,RightAngleBracket:gP,RightArrowBar:bP,rightarrow:vP,RightArrow:yP,Rightarrow:jP,RightArrowLeftArrow:NP,rightarrowtail:SP,RightCeiling:wP,RightDoubleBracket:CP,RightDownTeeVector:EP,RightDownVectorBar:TP,RightDownVector:_P,RightFloor:RP,rightharpoondown:LP,rightharpoonup:PP,rightleftarrows:DP,rightleftharpoons:kP,rightrightarrows:OP,rightsquigarrow:AP,RightTeeArrow:IP,RightTee:qP,RightTeeVector:MP,rightthreetimes:$P,RightTriangleBar:UP,RightTriangle:FP,RightTriangleEqual:HP,RightUpDownVector:BP,RightUpTeeVector:VP,RightUpVectorBar:KP,RightUpVector:zP,RightVectorBar:XP,RightVector:GP,ring:WP,risingdotseq:QP,rlarr:YP,rlhar:JP,rlm:ZP,rmoustache:eD,rmoust:tD,rnmid:nD,roang:sD,roarr:oD,robrk:cD,ropar:rD,ropf:aD,Ropf:lD,roplus:iD,rotimes:dD,RoundImplies:uD,rpar:pD,rpargt:mD,rppolint:fD,rrarr:hD,Rrightarrow:xD,rsaquo:gD,rscr:bD,Rscr:vD,rsh:yD,Rsh:jD,rsqb:ND,rsquo:SD,rsquor:wD,rthree:CD,rtimes:ED,rtri:TD,rtrie:_D,rtrif:RD,rtriltri:LD,RuleDelayed:PD,ruluhar:DD,rx:kD,Sacute:OD,sacute:AD,sbquo:ID,scap:qD,Scaron:MD,scaron:$D,Sc:UD,sc:FD,sccue:HD,sce:BD,scE:VD,Scedil:KD,scedil:zD,Scirc:XD,scirc:GD,scnap:WD,scnE:QD,scnsim:YD,scpolint:JD,scsim:ZD,Scy:ek,scy:tk,sdotb:nk,sdot:sk,sdote:ok,searhk:ck,searr:rk,seArr:ak,searrow:lk,sect:ik,semi:dk,seswar:uk,setminus:pk,setmn:mk,sext:fk,Sfr:hk,sfr:xk,sfrown:gk,sharp:bk,SHCHcy:vk,shchcy:yk,SHcy:jk,shcy:Nk,ShortDownArrow:Sk,ShortLeftArrow:wk,shortmid:Ck,shortparallel:Ek,ShortRightArrow:Tk,ShortUpArrow:_k,shy:Rk,Sigma:Lk,sigma:Pk,sigmaf:Dk,sigmav:kk,sim:Ok,simdot:Ak,sime:Ik,simeq:qk,simg:Mk,simgE:$k,siml:Uk,simlE:Fk,simne:Hk,simplus:Bk,simrarr:Vk,slarr:Kk,SmallCircle:zk,smallsetminus:Xk,smashp:Gk,smeparsl:Wk,smid:Qk,smile:Yk,smt:Jk,smte:Zk,smtes:eO,SOFTcy:tO,softcy:nO,solbar:sO,solb:oO,sol:cO,Sopf:rO,sopf:aO,spades:lO,spadesuit:iO,spar:dO,sqcap:uO,sqcaps:pO,sqcup:mO,sqcups:fO,Sqrt:hO,sqsub:xO,sqsube:gO,sqsubset:bO,sqsubseteq:vO,sqsup:yO,sqsupe:jO,sqsupset:NO,sqsupseteq:SO,square:wO,Square:CO,SquareIntersection:EO,SquareSubset:TO,SquareSubsetEqual:_O,SquareSuperset:RO,SquareSupersetEqual:LO,SquareUnion:PO,squarf:DO,squ:kO,squf:OO,srarr:AO,Sscr:IO,sscr:qO,ssetmn:MO,ssmile:$O,sstarf:UO,Star:FO,star:HO,starf:BO,straightepsilon:VO,straightphi:KO,strns:zO,sub:XO,Sub:GO,subdot:WO,subE:QO,sube:YO,subedot:JO,submult:ZO,subnE:eA,subne:tA,subplus:nA,subrarr:sA,subset:oA,Subset:cA,subseteq:rA,subseteqq:aA,SubsetEqual:lA,subsetneq:iA,subsetneqq:dA,subsim:uA,subsub:pA,subsup:mA,succapprox:fA,succ:hA,succcurlyeq:xA,Succeeds:gA,SucceedsEqual:bA,SucceedsSlantEqual:vA,SucceedsTilde:yA,succeq:jA,succnapprox:NA,succneqq:SA,succnsim:wA,succsim:CA,SuchThat:EA,sum:TA,Sum:_A,sung:RA,sup1:LA,sup2:PA,sup3:DA,sup:kA,Sup:OA,supdot:AA,supdsub:IA,supE:qA,supe:MA,supedot:$A,Superset:UA,SupersetEqual:FA,suphsol:HA,suphsub:BA,suplarr:VA,supmult:KA,supnE:zA,supne:XA,supplus:GA,supset:WA,Supset:QA,supseteq:YA,supseteqq:JA,supsetneq:ZA,supsetneqq:eI,supsim:tI,supsub:nI,supsup:sI,swarhk:oI,swarr:cI,swArr:rI,swarrow:aI,swnwar:lI,szlig:iI,Tab:dI,target:uI,Tau:pI,tau:mI,tbrk:fI,Tcaron:hI,tcaron:xI,Tcedil:gI,tcedil:bI,Tcy:vI,tcy:yI,tdot:jI,telrec:NI,Tfr:SI,tfr:wI,there4:CI,therefore:EI,Therefore:TI,Theta:_I,theta:RI,thetasym:LI,thetav:PI,thickapprox:DI,thicksim:kI,ThickSpace:OI,ThinSpace:AI,thinsp:II,thkap:qI,thksim:MI,THORN:$I,thorn:UI,tilde:FI,Tilde:HI,TildeEqual:BI,TildeFullEqual:VI,TildeTilde:KI,timesbar:zI,timesb:XI,times:GI,timesd:WI,tint:QI,toea:YI,topbot:JI,topcir:ZI,top:e2,Topf:t2,topf:n2,topfork:s2,tosa:o2,tprime:c2,trade:r2,TRADE:a2,triangle:l2,triangledown:i2,triangleleft:d2,trianglelefteq:u2,triangleq:p2,triangleright:m2,trianglerighteq:f2,tridot:h2,trie:x2,triminus:g2,TripleDot:b2,triplus:v2,trisb:y2,tritime:j2,trpezium:N2,Tscr:S2,tscr:w2,TScy:C2,tscy:E2,TSHcy:T2,tshcy:_2,Tstrok:R2,tstrok:L2,twixt:P2,twoheadleftarrow:D2,twoheadrightarrow:k2,Uacute:O2,uacute:A2,uarr:I2,Uarr:q2,uArr:M2,Uarrocir:$2,Ubrcy:U2,ubrcy:F2,Ubreve:H2,ubreve:B2,Ucirc:V2,ucirc:K2,Ucy:z2,ucy:X2,udarr:G2,Udblac:W2,udblac:Q2,udhar:Y2,ufisht:J2,Ufr:Z2,ufr:eq,Ugrave:tq,ugrave:nq,uHar:sq,uharl:oq,uharr:cq,uhblk:rq,ulcorn:aq,ulcorner:lq,ulcrop:iq,ultri:dq,Umacr:uq,umacr:pq,uml:mq,UnderBar:fq,UnderBrace:hq,UnderBracket:xq,UnderParenthesis:gq,Union:bq,UnionPlus:vq,Uogon:yq,uogon:jq,Uopf:Nq,uopf:Sq,UpArrowBar:wq,uparrow:Cq,UpArrow:Eq,Uparrow:Tq,UpArrowDownArrow:_q,updownarrow:Rq,UpDownArrow:Lq,Updownarrow:Pq,UpEquilibrium:Dq,upharpoonleft:kq,upharpoonright:Oq,uplus:Aq,UpperLeftArrow:Iq,UpperRightArrow:qq,upsi:Mq,Upsi:$q,upsih:Uq,Upsilon:Fq,upsilon:Hq,UpTeeArrow:Bq,UpTee:Vq,upuparrows:Kq,urcorn:zq,urcorner:Xq,urcrop:Gq,Uring:Wq,uring:Qq,urtri:Yq,Uscr:Jq,uscr:Zq,utdot:eM,Utilde:tM,utilde:nM,utri:sM,utrif:oM,uuarr:cM,Uuml:rM,uuml:aM,uwangle:lM,vangrt:iM,varepsilon:dM,varkappa:uM,varnothing:pM,varphi:mM,varpi:fM,varpropto:hM,varr:xM,vArr:gM,varrho:bM,varsigma:vM,varsubsetneq:yM,varsubsetneqq:jM,varsupsetneq:NM,varsupsetneqq:SM,vartheta:wM,vartriangleleft:CM,vartriangleright:EM,vBar:TM,Vbar:_M,vBarv:RM,Vcy:LM,vcy:PM,vdash:DM,vDash:kM,Vdash:OM,VDash:AM,Vdashl:IM,veebar:qM,vee:MM,Vee:$M,veeeq:UM,vellip:FM,verbar:HM,Verbar:BM,vert:VM,Vert:KM,VerticalBar:zM,VerticalLine:XM,VerticalSeparator:GM,VerticalTilde:WM,VeryThinSpace:QM,Vfr:YM,vfr:JM,vltri:ZM,vnsub:e$,vnsup:t$,Vopf:n$,vopf:s$,vprop:o$,vrtri:c$,Vscr:r$,vscr:a$,vsubnE:l$,vsubne:i$,vsupnE:d$,vsupne:u$,Vvdash:p$,vzigzag:m$,Wcirc:f$,wcirc:h$,wedbar:x$,wedge:g$,Wedge:b$,wedgeq:v$,weierp:y$,Wfr:j$,wfr:N$,Wopf:S$,wopf:w$,wp:C$,wr:E$,wreath:T$,Wscr:_$,wscr:R$,xcap:L$,xcirc:P$,xcup:D$,xdtri:k$,Xfr:O$,xfr:A$,xharr:I$,xhArr:q$,Xi:M$,xi:$$,xlarr:U$,xlArr:F$,xmap:H$,xnis:B$,xodot:V$,Xopf:K$,xopf:z$,xoplus:X$,xotime:G$,xrarr:W$,xrArr:Q$,Xscr:Y$,xscr:J$,xsqcup:Z$,xuplus:e3,xutri:t3,xvee:n3,xwedge:s3,Yacute:o3,yacute:c3,YAcy:r3,yacy:a3,Ycirc:l3,ycirc:i3,Ycy:d3,ycy:u3,yen:p3,Yfr:m3,yfr:f3,YIcy:h3,yicy:x3,Yopf:g3,yopf:b3,Yscr:v3,yscr:y3,YUcy:j3,yucy:N3,yuml:S3,Yuml:w3,Zacute:C3,zacute:E3,Zcaron:T3,zcaron:_3,Zcy:R3,zcy:L3,Zdot:P3,zdot:D3,zeetrf:k3,ZeroWidthSpace:O3,Zeta:A3,zeta:I3,zfr:q3,Zfr:M3,ZHcy:$3,zhcy:U3,zigrarr:F3,zopf:H3,Zopf:B3,Zscr:V3,zscr:K3,zwj:z3,zwnj:X3},G3="Á",W3="á",Q3="Â",Y3="â",J3="´",Z3="Æ",eU="æ",tU="À",nU="à",sU="&",oU="&",cU="Å",rU="å",aU="Ã",lU="ã",iU="Ä",dU="ä",uU="¦",pU="Ç",mU="ç",fU="¸",hU="¢",xU="©",gU="©",bU="¤",vU="°",yU="÷",jU="É",NU="é",SU="Ê",wU="ê",CU="È",EU="è",TU="Ð",_U="ð",RU="Ë",LU="ë",PU="½",DU="¼",kU="¾",OU=">",AU=">",IU="Í",qU="í",MU="Î",$U="î",UU="¡",FU="Ì",HU="ì",BU="¿",VU="Ï",KU="ï",zU="«",XU="<",GU="<",WU="¯",QU="µ",YU="·",JU=" ",ZU="¬",e5="Ñ",t5="ñ",n5="Ó",s5="ó",o5="Ô",c5="ô",r5="Ò",a5="ò",l5="ª",i5="º",d5="Ø",u5="ø",p5="Õ",m5="õ",f5="Ö",h5="ö",x5="¶",g5="±",b5="£",v5='"',y5='"',j5="»",N5="®",S5="®",w5="§",C5="",E5="¹",T5="²",_5="³",R5="ß",L5="Þ",P5="þ",D5="×",k5="Ú",O5="ú",A5="Û",I5="û",q5="Ù",M5="ù",$5="¨",U5="Ü",F5="ü",H5="Ý",B5="ý",V5="¥",K5="ÿ",z5={Aacute:G3,aacute:W3,Acirc:Q3,acirc:Y3,acute:J3,AElig:Z3,aelig:eU,Agrave:tU,agrave:nU,amp:sU,AMP:oU,Aring:cU,aring:rU,Atilde:aU,atilde:lU,Auml:iU,auml:dU,brvbar:uU,Ccedil:pU,ccedil:mU,cedil:fU,cent:hU,copy:xU,COPY:gU,curren:bU,deg:vU,divide:yU,Eacute:jU,eacute:NU,Ecirc:SU,ecirc:wU,Egrave:CU,egrave:EU,ETH:TU,eth:_U,Euml:RU,euml:LU,frac12:PU,frac14:DU,frac34:kU,gt:OU,GT:AU,Iacute:IU,iacute:qU,Icirc:MU,icirc:$U,iexcl:UU,Igrave:FU,igrave:HU,iquest:BU,Iuml:VU,iuml:KU,laquo:zU,lt:XU,LT:GU,macr:WU,micro:QU,middot:YU,nbsp:JU,not:ZU,Ntilde:e5,ntilde:t5,Oacute:n5,oacute:s5,Ocirc:o5,ocirc:c5,Ograve:r5,ograve:a5,ordf:l5,ordm:i5,Oslash:d5,oslash:u5,Otilde:p5,otilde:m5,Ouml:f5,ouml:h5,para:x5,plusmn:g5,pound:b5,quot:v5,QUOT:y5,raquo:j5,reg:N5,REG:S5,sect:w5,shy:C5,sup1:E5,sup2:T5,sup3:_5,szlig:R5,THORN:L5,thorn:P5,times:D5,Uacute:k5,uacute:O5,Ucirc:A5,ucirc:I5,Ugrave:q5,ugrave:M5,uml:$5,Uuml:U5,uuml:F5,Yacute:H5,yacute:B5,yen:V5,yuml:K5},X5="&",G5="'",W5=">",Q5="<",Y5='"',bn={amp:X5,apos:G5,gt:W5,lt:Q5,quot:Y5};var $e={};const J5={0:65533,128:8364,130:8218,131:402,132:8222,133:8230,134:8224,135:8225,136:710,137:8240,138:352,139:8249,140:338,142:381,145:8216,146:8217,147:8220,148:8221,149:8226,150:8211,151:8212,152:732,153:8482,154:353,155:8250,156:339,158:382,159:376};var qt;function Z5(){if(qt)return $e;qt=1;var t=$e&&$e.__importDefault||function(c){return c&&c.__esModule?c:{default:c}};Object.defineProperty($e,"__esModule",{value:!0});var n=t(J5),s=String.fromCodePoint||function(c){var r="";return c>65535&&(c-=65536,r+=String.fromCharCode(c>>>10&1023|55296),c=56320|c&1023),r+=String.fromCharCode(c),r};function o(c){return c>=55296&&c<=57343||c>1114111?"�":(c in n.default&&(c=n.default[c]),s(c))}return $e.default=o,$e}var Mt;function $t(){if(Mt)return Ne;Mt=1;var t=Ne&&Ne.__importDefault||function(f){return f&&f.__esModule?f:{default:f}};Object.defineProperty(Ne,"__esModule",{value:!0}),Ne.decodeHTML=Ne.decodeHTMLStrict=Ne.decodeXML=void 0;var n=t(gn),s=t(z5),o=t(bn),c=t(Z5()),r=/&(?:[a-zA-Z0-9]+|#[xX][\da-fA-F]+|#\d+);/g;Ne.decodeXML=i(o.default),Ne.decodeHTMLStrict=i(n.default);function i(f){var y=m(f);return function(S){return String(S).replace(r,y)}}var p=function(f,y){return f<y?1:-1};Ne.decodeHTML=(function(){for(var f=Object.keys(s.default).sort(p),y=Object.keys(n.default).sort(p),S=0,C=0;S<y.length;S++)f[C]===y[S]?(y[S]+=";?",C++):y[S]+=";";var R=new RegExp("&(?:"+y.join("|")+"|#[xX][\\da-fA-F]+;?|#\\d+;?)","g"),L=m(n.default);function T(x){return x.substr(-1)!==";"&&(x+=";"),L(x)}return function(x){return String(x).replace(R,T)}})();function m(f){return function(S){if(S.charAt(1)==="#"){var C=S.charAt(2);return C==="X"||C==="x"?c.default(parseInt(S.substr(3),16)):c.default(parseInt(S.substr(2),10))}return f[S.slice(1,-1)]||S}}return Ne}var ge={},Ut;function Ft(){if(Ut)return ge;Ut=1;var t=ge&&ge.__importDefault||function(g){return g&&g.__esModule?g:{default:g}};Object.defineProperty(ge,"__esModule",{value:!0}),ge.escapeUTF8=ge.escape=ge.encodeNonAsciiHTML=ge.encodeHTML=ge.encodeXML=void 0;var n=t(bn),s=p(n.default),o=m(s);ge.encodeXML=x(s);var c=t(gn),r=p(c.default),i=m(r);ge.encodeHTML=C(r,i),ge.encodeNonAsciiHTML=x(r);function p(g){return Object.keys(g).sort().reduce(function(w,v){return w[g[v]]="&"+v+";",w},{})}function m(g){for(var w=[],v=[],b=0,I=Object.keys(g);b<I.length;b++){var D=I[b];D.length===1?w.push("\\"+D):v.push(D)}w.sort();for(var k=0;k<w.length-1;k++){for(var O=k;O<w.length-1&&w[O].charCodeAt(1)+1===w[O+1].charCodeAt(1);)O+=1;var A=1+O-k;A<3||w.splice(k,A,w[k]+"-"+w[O])}return v.unshift("["+w.join("")+"]"),new RegExp(v.join("|"),"g")}var f=/(?:[\x80-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/g,y=String.prototype.codePointAt!=null?function(g){return g.codePointAt(0)}:function(g){return(g.charCodeAt(0)-55296)*1024+g.charCodeAt(1)-56320+65536};function S(g){return"&#x"+(g.length>1?y(g):g.charCodeAt(0)).toString(16).toUpperCase()+";"}function C(g,w){return function(v){return v.replace(w,function(b){return g[b]}).replace(f,S)}}var R=new RegExp(o.source+"|"+f.source,"g");function L(g){return g.replace(R,S)}ge.escape=L;function T(g){return g.replace(o,S)}ge.escapeUTF8=T;function x(g){return function(w){return w.replace(R,function(v){return g[v]||S(v)})}}return ge}var Ht;function eF(){return Ht||(Ht=1,(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.decodeXMLStrict=t.decodeHTML5Strict=t.decodeHTML4Strict=t.decodeHTML5=t.decodeHTML4=t.decodeHTMLStrict=t.decodeHTML=t.decodeXML=t.encodeHTML5=t.encodeHTML4=t.escapeUTF8=t.escape=t.encodeNonAsciiHTML=t.encodeHTML=t.encodeXML=t.encode=t.decodeStrict=t.decode=void 0;var n=$t(),s=Ft();function o(m,f){return(!f||f<=0?n.decodeXML:n.decodeHTML)(m)}t.decode=o;function c(m,f){return(!f||f<=0?n.decodeXML:n.decodeHTMLStrict)(m)}t.decodeStrict=c;function r(m,f){return(!f||f<=0?s.encodeXML:s.encodeHTML)(m)}t.encode=r;var i=Ft();Object.defineProperty(t,"encodeXML",{enumerable:!0,get:function(){return i.encodeXML}}),Object.defineProperty(t,"encodeHTML",{enumerable:!0,get:function(){return i.encodeHTML}}),Object.defineProperty(t,"encodeNonAsciiHTML",{enumerable:!0,get:function(){return i.encodeNonAsciiHTML}}),Object.defineProperty(t,"escape",{enumerable:!0,get:function(){return i.escape}}),Object.defineProperty(t,"escapeUTF8",{enumerable:!0,get:function(){return i.escapeUTF8}}),Object.defineProperty(t,"encodeHTML4",{enumerable:!0,get:function(){return i.encodeHTML}}),Object.defineProperty(t,"encodeHTML5",{enumerable:!0,get:function(){return i.encodeHTML}});var p=$t();Object.defineProperty(t,"decodeXML",{enumerable:!0,get:function(){return p.decodeXML}}),Object.defineProperty(t,"decodeHTML",{enumerable:!0,get:function(){return p.decodeHTML}}),Object.defineProperty(t,"decodeHTMLStrict",{enumerable:!0,get:function(){return p.decodeHTMLStrict}}),Object.defineProperty(t,"decodeHTML4",{enumerable:!0,get:function(){return p.decodeHTML}}),Object.defineProperty(t,"decodeHTML5",{enumerable:!0,get:function(){return p.decodeHTML}}),Object.defineProperty(t,"decodeHTML4Strict",{enumerable:!0,get:function(){return p.decodeHTMLStrict}}),Object.defineProperty(t,"decodeHTML5Strict",{enumerable:!0,get:function(){return p.decodeHTMLStrict}}),Object.defineProperty(t,"decodeXMLStrict",{enumerable:!0,get:function(){return p.decodeXML}})})(ct)),ct}var rt,Bt;function tF(){if(Bt)return rt;Bt=1;function t(l,u){if(!(l instanceof u))throw new TypeError("Cannot call a class as a function")}function n(l,u){for(var d=0;d<u.length;d++){var j=u[d];j.enumerable=j.enumerable||!1,j.configurable=!0,"value"in j&&(j.writable=!0),Object.defineProperty(l,j.key,j)}}function s(l,u,d){return u&&n(l.prototype,u),l}function o(l,u){var d=typeof Symbol<"u"&&l[Symbol.iterator]||l["@@iterator"];if(!d){if(Array.isArray(l)||(d=c(l))||u){d&&(l=d);var j=0,E=function(){};return{s:E,n:function(){return j>=l.length?{done:!0}:{done:!1,value:l[j++]}},e:function(V){throw V},f:E}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
3
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var N=!0,B=!1,J;return{s:function(){d=d.call(l)},n:function(){var V=d.next();return N=V.done,V},e:function(V){B=!0,J=V},f:function(){try{!N&&d.return!=null&&d.return()}finally{if(B)throw J}}}}function c(l,u){if(l){if(typeof l=="string")return r(l,u);var d=Object.prototype.toString.call(l).slice(8,-1);if(d==="Object"&&l.constructor&&(d=l.constructor.name),d==="Map"||d==="Set")return Array.from(l);if(d==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(d))return r(l,u)}}function r(l,u){(u==null||u>l.length)&&(u=l.length);for(var d=0,j=new Array(u);d<u;d++)j[d]=l[d];return j}var i=eF(),p={fg:"#FFF",bg:"#000",newline:!1,escapeXML:!1,stream:!1,colors:m()};function m(){var l={0:"#000",1:"#A00",2:"#0A0",3:"#A50",4:"#00A",5:"#A0A",6:"#0AA",7:"#AAA",8:"#555",9:"#F55",10:"#5F5",11:"#FF5",12:"#55F",13:"#F5F",14:"#5FF",15:"#FFF"};return x(0,5).forEach(function(u){x(0,5).forEach(function(d){x(0,5).forEach(function(j){return f(u,d,j,l)})})}),x(0,23).forEach(function(u){var d=u+232,j=y(u*10+8);l[d]="#"+j+j+j}),l}function f(l,u,d,j){var E=16+l*36+u*6+d,N=l>0?l*40+55:0,B=u>0?u*40+55:0,J=d>0?d*40+55:0;j[E]=S([N,B,J])}function y(l){for(var u=l.toString(16);u.length<2;)u="0"+u;return u}function S(l){var u=[],d=o(l),j;try{for(d.s();!(j=d.n()).done;){var E=j.value;u.push(y(E))}}catch(N){d.e(N)}finally{d.f()}return"#"+u.join("")}function C(l,u,d,j){var E;return u==="text"?E=v(d,j):u==="display"?E=L(l,d,j):u==="xterm256Foreground"?E=D(l,j.colors[d]):u==="xterm256Background"?E=k(l,j.colors[d]):u==="rgb"&&(E=R(l,d)),E}function R(l,u){u=u.substring(2).slice(0,-1);var d=+u.substr(0,2),j=u.substring(5).split(";"),E=j.map(function(N){return("0"+Number(N).toString(16)).substr(-2)}).join("");return I(l,(d===38?"color:#":"background-color:#")+E)}function L(l,u,d){u=parseInt(u,10);var j={"-1":function(){return"<br/>"},0:function(){return l.length&&T(l)},1:function(){return b(l,"b")},3:function(){return b(l,"i")},4:function(){return b(l,"u")},8:function(){return I(l,"display:none")},9:function(){return b(l,"strike")},22:function(){return I(l,"font-weight:normal;text-decoration:none;font-style:normal")},23:function(){return O(l,"i")},24:function(){return O(l,"u")},39:function(){return D(l,d.fg)},49:function(){return k(l,d.bg)},53:function(){return I(l,"text-decoration:overline")}},E;return j[u]?E=j[u]():4<u&&u<7?E=b(l,"blink"):29<u&&u<38?E=D(l,d.colors[u-30]):39<u&&u<48?E=k(l,d.colors[u-40]):89<u&&u<98?E=D(l,d.colors[8+(u-90)]):99<u&&u<108&&(E=k(l,d.colors[8+(u-100)])),E}function T(l){var u=l.slice(0);return l.length=0,u.reverse().map(function(d){return"</"+d+">"}).join("")}function x(l,u){for(var d=[],j=l;j<=u;j++)d.push(j);return d}function g(l){return function(u){return(l===null||u.category!==l)&&l!=="all"}}function w(l){l=parseInt(l,10);var u=null;return l===0?u="all":l===1?u="bold":2<l&&l<5?u="underline":4<l&&l<7?u="blink":l===8?u="hide":l===9?u="strike":29<l&&l<38||l===39||89<l&&l<98?u="foreground-color":(39<l&&l<48||l===49||99<l&&l<108)&&(u="background-color"),u}function v(l,u){return u.escapeXML?i.encodeXML(l):l}function b(l,u,d){return d||(d=""),l.push(u),"<".concat(u).concat(d?' style="'.concat(d,'"'):"",">")}function I(l,u){return b(l,"span",u)}function D(l,u){return b(l,"span","color:"+u)}function k(l,u){return b(l,"span","background-color:"+u)}function O(l,u){var d;if(l.slice(-1)[0]===u&&(d=l.pop()),d)return"</"+u+">"}function A(l,u,d){var j=!1,E=3;function N(){return""}function B(H,P){return d("xterm256Foreground",P),""}function J(H,P){return d("xterm256Background",P),""}function M(H){return u.newline?d("display",-1):d("text",H),""}function V(H,P){j=!0,P.trim().length===0&&(P="0"),P=P.trimRight(";").split(";");var se=o(P),_e;try{for(se.s();!(_e=se.n()).done;){var Re=_e.value;d("display",Re)}}catch(ke){se.e(ke)}finally{se.f()}return""}function q(H){return d("text",H),""}function ie(H){return d("rgb",H),""}var W=[{pattern:/^\x08+/,sub:N},{pattern:/^\x1b\[[012]?K/,sub:N},{pattern:/^\x1b\[\(B/,sub:N},{pattern:/^\x1b\[[34]8;2;\d+;\d+;\d+m/,sub:ie},{pattern:/^\x1b\[38;5;(\d+)m/,sub:B},{pattern:/^\x1b\[48;5;(\d+)m/,sub:J},{pattern:/^\n/,sub:M},{pattern:/^\r+\n/,sub:M},{pattern:/^\r/,sub:M},{pattern:/^\x1b\[((?:\d{1,3};?)+|)m/,sub:V},{pattern:/^\x1b\[\d?J/,sub:N},{pattern:/^\x1b\[\d{0,3};\d{0,3}f/,sub:N},{pattern:/^\x1b\[?[\d;]{0,3}/,sub:N},{pattern:/^(([^\x1b\x08\r\n])+)/,sub:q}];function ue(H,P){P>E&&j||(j=!1,l=l.replace(H.pattern,H.sub))}var oe=[],fe=l,_=fe.length;e:for(;_>0;){for(var F=0,K=0,X=W.length;K<X;F=++K){var G=W[F];if(ue(G,F),l.length!==_){_=l.length;continue e}}if(l.length===_)break;oe.push(0),_=l.length}return oe}function z(l,u,d){return u!=="text"&&(l=l.filter(g(w(d))),l.push({token:u,data:d,category:w(d)})),l}var Y=(function(){function l(u){t(this,l),u=u||{},u.colors&&(u.colors=Object.assign({},p.colors,u.colors)),this.options=Object.assign({},p,u),this.stack=[],this.stickyStack=[]}return s(l,[{key:"toHtml",value:function(d){var j=this;d=typeof d=="string"?[d]:d;var E=this.stack,N=this.options,B=[];return this.stickyStack.forEach(function(J){var M=C(E,J.token,J.data,N);M&&B.push(M)}),A(d.join(""),N,function(J,M){var V=C(E,J,M,N);V&&B.push(V),N.stream&&(j.stickyStack=z(j.stickyStack,J,M))}),E.length&&B.push(T(E)),B.join("")}}]),l})();return rt=Y,rt}var nF=tF();const sF=En(nF),oF={"15m":900*1e3,"1h":3600*1e3,"24h":1440*60*1e3};function cF(t,n){const s=n.keyword.trim().toLowerCase(),o=n.timeRange==="all"?null:(n.now??new Date).getTime()-oF[n.timeRange];return t.filter(c=>{const r=rF(c,n.source),i=n.level==="all"||c.level===n.level,p=!s||`${c.timestamp} ${c.level} ${c.source} ${c.message}`.toLowerCase().includes(s),m=Date.parse(c.timestamp),f=o==null||Number.isFinite(m)&&m>=o;return r&&i&&p&&f})}function rF(t,n){return n==="all"?!0:n==="errors"?t.level==="error":n==="solid-server"?t.source==="css"||t.source==="solid-server":n==="runtime"?t.source==="xpod"||t.source==="runtime":t.source===n}const aF=new sF({fg:"hsl(var(--foreground))",bg:"hsl(var(--background))",newline:!0,escapeXML:!0});function lF(t){return t.includes("ERR_NGROK_8001")?"ERR_NGROK_8001: ngrok agent 无法连到 ngrok edge,通常是本机网络或代理限制。":t.includes("ERR_NGROK_9009")?"ERR_NGROK_9009: 当前 ngrok 计划或代理路径不允许该用法。":t.includes("DNS")||t.includes("DDNS")?"DNS/DDNS 相关错误:检查 Cloud 协调状态和当前公网地址。":null}function iF(t){return e.jsxs(te,{variant:"bordered",className:"mb-4",children:[e.jsx(ce,{className:"pb-2",children:e.jsxs("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",children:[e.jsxs("div",{children:[e.jsx(re,{children:"诊断导出"}),e.jsx("p",{className:"mt-1 text-sm text-muted-foreground",children:"导出可交给开发者的脱敏运行时证据,默认不包含用户 Pod 内容。"})]}),e.jsxs(me,{onClick:t.onExport,disabled:t.exporting,className:"gap-2",children:[e.jsx(us,{className:"h-4 w-4"}),"导出诊断"]})]})}),e.jsxs(ne,{className:"grid gap-3 text-sm lg:grid-cols-[1fr_auto] lg:items-end",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{children:[e.jsx("span",{className:"font-medium",children:"包含:"}),e.jsx("span",{className:"text-muted-foreground",children:"/service/status、隧道、DDNS、运行时配置摘要、最近错误和日志尾部。"})]}),e.jsxs("div",{children:[e.jsx("span",{className:"font-medium",children:"排除:"}),e.jsx("span",{className:"text-muted-foreground",children:"Token、API key、数据库密码、认证 cookie、client secret、用户 Pod 内容。"})]})]}),e.jsxs("div",{className:"text-xs text-muted-foreground lg:text-right",children:["日志文件: ",t.logFileInfo]})]})]})}function PF(){const[t,n]=a.useState([]),[s,o]=a.useState(()=>new URLSearchParams(window.location.search).get("source")||"all"),[c,r]=a.useState("all"),[i,p]=a.useState("all"),[m,f]=a.useState(""),[y,S]=a.useState(!1),[C,R]=a.useState(!0),[L,T]=a.useState(""),[x,g]=a.useState(!1),[w,v]=a.useState("未读取"),b=a.useRef(null),I=a.useRef(null);a.useEffect(()=>{(async()=>{const j=await Pn({limit:500});n(j);const E=await Dn({lines:20});v(E?.file??"未找到日志文件")})()},[]),a.useEffect(()=>{if(y){I.current?.(),I.current=null;return}const d=Rn(j=>{T(""),n(E=>[...E,...j].slice(-500))},()=>{T("日志流连接异常,已保留当前视图。")});return I.current=d,()=>{d(),I.current=null}},[y]),a.useEffect(()=>{C&&!y&&b.current?.scrollIntoView({block:"end"})},[t,y,C]);const D=a.useMemo(()=>cF(t,{source:s,level:c,keyword:m,timeRange:i}),[t,s,c,m,i]),k=a.useCallback(()=>{n([])},[]),O=a.useCallback(()=>{const d=D.map(B=>`[${B.timestamp}] [${B.level.toUpperCase()}] [${B.source}] ${B.message}`).join(`
|
|
4
|
-
`),j=new Blob([d],{type:"text/plain"}),E=URL.createObjectURL(j),N=document.createElement("a");N.href=E,N.download=`xpod-logs-${new Date().toISOString().slice(0,10)}.txt`,N.click(),URL.revokeObjectURL(E)},[D]),A=a.useCallback(async()=>{g(!0);try{const d=await Ln(),j=new Blob([JSON.stringify(d,null,2)],{type:"application/json"}),E=URL.createObjectURL(j),N=document.createElement("a");N.href=E,N.download=`xpod-diagnostics-${new Date().toISOString().slice(0,10)}.json`,N.click(),URL.revokeObjectURL(E)}finally{g(!1)}},[]),z=d=>{try{return new Date(d).toLocaleTimeString()}catch{return d}},Y=d=>{switch(d){case"error":return"text-destructive";case"warn":return"text-amber-600 dark:text-amber-300";case"debug":return"text-muted-foreground";default:return"text-foreground"}},l=d=>{switch(d){case"xpod":return"text-primary";case"css":return"text-green-700 dark:text-green-300";case"api":return"text-blue-700 dark:text-blue-300";case"gateway":return"text-amber-700 dark:text-amber-300";default:return"text-muted-foreground"}},u=D.map(d=>lF(d.message)).find(Boolean);return e.jsxs("div",{className:"p-4 sm:p-8 h-full flex flex-col max-w-6xl",children:[e.jsxs("div",{className:"flex flex-col gap-4 mb-6 lg:flex-row lg:items-start lg:justify-between",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"type-h1",children:"日志"}),e.jsx("p",{className:"mt-2 max-w-[65ch] text-sm text-muted-foreground",children:"实时检查运行时输出,并导出不包含 secret 的诊断证据。"})]}),e.jsxs("div",{className:"flex items-center gap-2 shrink-0 flex-wrap",children:[e.jsxs(me,{variant:"ghost",size:"sm",onClick:()=>S(!y),className:"gap-1.5 whitespace-nowrap",children:[y?e.jsx(hs,{className:"w-4 h-4"}):e.jsx(ms,{className:"w-4 h-4"}),y?"继续":"暂停"]}),e.jsxs(me,{variant:"ghost",size:"sm",onClick:O,className:"gap-1.5 whitespace-nowrap",children:[e.jsx(Yn,{className:"w-4 h-4"}),"导出日志"]}),e.jsxs(me,{variant:"ghost",size:"sm",onClick:k,className:"gap-1.5 whitespace-nowrap",children:[e.jsx(bs,{className:"w-4 h-4"}),"清空视图"]})]})]}),e.jsx(iF,{onExport:A,exporting:x,logFileInfo:w}),e.jsxs("div",{className:"mb-4 grid gap-3 lg:grid-cols-[170px_140px_140px_1fr_auto]",children:[e.jsxs(Ae,{value:s,onValueChange:d=>o(d),children:[e.jsx(Le,{className:"h-9 text-sm",children:e.jsx(Ie,{})}),e.jsxs(Pe,{children:[e.jsx(ee,{value:"all",children:"All Sources"}),e.jsx(ee,{value:"runtime",children:"Xpod Runtime"}),e.jsx(ee,{value:"gateway",children:"Gateway"}),e.jsx(ee,{value:"solid-server",children:"Solid Server"}),e.jsx(ee,{value:"api",children:"API Server"}),e.jsx(ee,{value:"errors",children:"Errors"})]})]}),e.jsxs(Ae,{value:i,onValueChange:d=>p(d),children:[e.jsx(Le,{className:"h-9 text-sm",children:e.jsx(Ie,{})}),e.jsxs(Pe,{children:[e.jsx(ee,{value:"all",children:"All time"}),e.jsx(ee,{value:"15m",children:"Last 15 min"}),e.jsx(ee,{value:"1h",children:"Last hour"}),e.jsx(ee,{value:"24h",children:"Last 24 hours"})]})]}),e.jsxs(Ae,{value:c,onValueChange:d=>r(d),children:[e.jsx(Le,{className:"h-9 text-sm",children:e.jsx(Ie,{})}),e.jsxs(Pe,{children:[e.jsx(ee,{value:"all",children:"全部等级"}),e.jsx(ee,{value:"error",children:"错误"}),e.jsx(ee,{value:"warn",children:"警告"}),e.jsx(ee,{value:"info",children:"信息"}),e.jsx(ee,{value:"debug",children:"调试"})]})]}),e.jsxs("div",{children:[e.jsx(Oe,{htmlFor:"keywordFilter",className:"sr-only",children:"关键词"}),e.jsx(Ze,{id:"keywordFilter",value:m,onChange:d=>f(d.target.value),placeholder:"按关键词过滤",className:"h-9"})]}),e.jsxs("label",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsx("input",{type:"checkbox",checked:C,onChange:d=>R(d.target.checked)}),"自动滚动"]})]}),L?e.jsx("div",{className:"mb-3 rounded-md border border-destructive/30 bg-destructive/10 px-3 py-2 text-sm text-destructive",children:L}):null,u?e.jsx("div",{className:"mb-3 rounded-md border border-amber-200 bg-amber-50 px-3 py-2 text-sm text-amber-800 dark:border-amber-900 dark:bg-amber-950/20 dark:text-amber-200",children:u}):null,e.jsx(te,{variant:"bordered",className:"flex-1 min-h-[420px] overflow-hidden",children:e.jsx(ne,{className:"h-full p-0",children:e.jsx("div",{className:"h-full overflow-auto font-mono text-sm bg-background",children:D.length===0?e.jsx("div",{className:"p-6 text-muted-foreground text-center",children:"暂无日志"}):e.jsxs("div",{className:"p-4 space-y-1 min-w-max",children:[D.map((d,j)=>e.jsxs("div",{className:"flex gap-2 hover:bg-muted px-2 py-0.5 rounded w-max min-w-full",children:[e.jsx("span",{className:"text-muted-foreground shrink-0 w-20",children:z(d.timestamp)}),e.jsxs("span",{className:ae("shrink-0 w-14 font-semibold",Y(d.level)),children:["[",d.level.toUpperCase(),"]"]}),e.jsxs("span",{className:ae("shrink-0 w-20",l(d.source)),children:["[",d.source,"]"]}),e.jsx("span",{className:"text-foreground whitespace-pre",dangerouslySetInnerHTML:{__html:aF.toHtml(d.message)}})]},`${d.timestamp}-${j}`)),e.jsx("div",{ref:b})]})})})})]})}function dF(t){const{changes:n,onReset:s}=t;return e.jsxs(te,{variant:"bordered",className:"mb-6",children:[e.jsx(ce,{className:"pb-2",children:e.jsxs("div",{className:"flex items-center justify-between gap-4",children:[e.jsx(re,{children:"待应用变更"}),e.jsx(me,{type:"button",variant:"ghost",size:"sm",onClick:s,disabled:n.length===0,children:"重置未保存"})]})}),e.jsx(ne,{children:n.length===0?e.jsx("p",{className:"text-sm text-muted-foreground",children:"没有未保存的变更。"}):e.jsxs("div",{className:"space-y-3",children:[e.jsx("p",{className:"text-sm text-amber-700 dark:text-amber-300",children:"保存后需要重启运行时才能完全生效。"}),e.jsx("div",{className:"divide-y divide-border rounded-md border border-border",children:n.map(o=>e.jsxs("div",{className:"grid gap-1 px-3 py-2 text-sm sm:grid-cols-[180px_1fr]",children:[e.jsx("span",{className:"font-mono text-xs text-muted-foreground",children:o.key}),e.jsxs("span",{className:"font-mono text-xs text-foreground break-all",children:[o.from||"∅"," → ",o.to||"∅"]})]},o.key))})]})})]})}function We(t){const{id:n,label:s,configured:o,value:c,onChange:r,placeholder:i,helper:p}=t;return e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center justify-between gap-3",children:[e.jsx(Oe,{htmlFor:n,children:s}),e.jsxs("span",{className:ae("inline-flex items-center gap-1.5 rounded-md border px-2 py-1 text-xs",o?"border-green-200 text-green-700 dark:border-green-900 dark:text-green-300":"border-border text-muted-foreground"),children:[e.jsx(Jn,{className:"h-3.5 w-3.5"}),o?"已配置":"未配置"]})]}),e.jsxs("div",{className:"flex flex-col gap-2 sm:flex-row",children:[e.jsx(Ze,{id:n,type:"password",autoComplete:"new-password",value:c,onChange:m=>r(m.target.value),placeholder:i??"填写新 secret","aria-describedby":p?`${n}-helper`:void 0}),c?e.jsx(me,{type:"button",variant:"ghost",onClick:()=>r(""),className:"shrink-0",children:"清除替换值"}):null]}),p?e.jsx("p",{id:`${n}-helper`,className:"text-xs text-muted-foreground",children:p}):null]})}const at=["XPOD_DEPLOY_MODE","CSS_ROOT_FILE_PATH","CSS_BASE_URL","XPOD_TUNNEL_PROVIDER","XPOD_TUNNEL_ACTIVE_PROFILE_ID","XPOD_TUNNEL_PROFILES","XPOD_TUNNEL_PUBLIC_URL","CLOUDFLARE_TUNNEL_URL","SAKURA_TUNNEL_URL","CLOUDFLARE_TUNNEL_TOKEN","SAKURA_TUNNEL_TOKEN","NGROK_AUTHTOKEN","NGROK_URL","FRP_TUNNEL_TOKEN","FRP_TUNNEL_URL","XPOD_HTTPS_MODE","XPOD_HTTPS_CERT_PATH","XPOD_HTTPS_KEY_PATH","XPOD_CLOUD_API_ENDPOINT","XPOD_NODE_ID","XPOD_SP_DOMAIN","XPOD_NODE_TOKEN","XPOD_SERVICE_TOKEN","CSS_PORT","CSS_SPARQL_ENDPOINT","CSS_IDENTITY_DB_URL","CSS_LOGGING_LEVEL","CSS_SHOW_STACK_TRACE"],uF=new Set(["CLOUDFLARE_TUNNEL_TOKEN","SAKURA_TUNNEL_TOKEN","NGROK_AUTHTOKEN","FRP_TUNNEL_TOKEN","XPOD_NODE_TOKEN","XPOD_SERVICE_TOKEN","CSS_IDENTITY_DB_URL"]),pt={ngrok:{publicEndpointKey:"NGROK_URL",publicEndpointLabel:"ngrok 固定入口 URL",publicEndpointPlaceholder:"https://example.ngrok-free.dev",credentialKey:"NGROK_AUTHTOKEN",credentialLabel:"ngrok authtoken"},cloudflare:{publicEndpointKey:"CLOUDFLARE_TUNNEL_URL",publicEndpointLabel:"Cloudflare Tunnel 公开入口",publicEndpointPlaceholder:"https://example.trycloudflare.com",credentialKey:"CLOUDFLARE_TUNNEL_TOKEN",credentialLabel:"Cloudflare Tunnel Token"},sakura_frp:{publicEndpointKey:"SAKURA_TUNNEL_URL",publicEndpointLabel:"Sakura FRP 公开入口 URL",publicEndpointPlaceholder:"https://example.example.com",credentialKey:"SAKURA_TUNNEL_TOKEN",credentialLabel:"Sakura FRP Token"},frp:{publicEndpointKey:"FRP_TUNNEL_URL",publicEndpointLabel:"FRP 公开入口 URL",publicEndpointPlaceholder:"https://example.example.com",credentialKey:"FRP_TUNNEL_TOKEN",credentialLabel:"FRP Token"}};function pF(t){return t==="none"?null:pt[t]}const mF=["ngrok","cloudflare","sakura_frp","frp"];function Nt(t){return t==="ngrok"||t==="cloudflare"||t==="sakura_frp"||t==="frp"?t:t==="sakura-frp"?"sakura_frp":"none"}function Vt(t){switch(t){case"ngrok":return"ngrok";case"cloudflare":return"Cloudflare";case"sakura_frp":return"Sakura FRP";case"frp":return"FRP"}}function fF(t,n,s){const o=[],c=new Set,r=new Map((s??[]).map(i=>[i.id,i]));for(const i of hF(t.XPOD_TUNNEL_PROFILES)){const p=pt[i.provider],m=r.get(i.id),f=m?.credentialEnvKey??i.credentialEnvKey??p.credentialKey,y=m?.publicUrl??i.publicUrl??Kt(t,i.provider,p),S=m?.credentialConfigured??n(f);o.push({id:i.id,provider:i.provider,label:m?.label||i.label||Vt(i.provider),publicEndpointUrl:y,credentialConfigured:S,configured:!0,active:m?.active??!1,credentialEnvKey:f,...m?.parameters??i.parameters?{parameters:m?.parameters??i.parameters}:{},...p,credentialKey:f}),c.add(i.id)}for(const i of mF){if(c.has(i))continue;const p=pt[i],m=Kt(t,i,p),f=n(p.credentialKey),y=r.get(i);o.push({id:i,provider:i,label:Vt(i),publicEndpointUrl:y?.publicUrl??m,credentialConfigured:y?.credentialConfigured??f,configured:!!(m||f||Nt(t.XPOD_TUNNEL_PROVIDER)===i),active:y?.active??!1,credentialEnvKey:y?.credentialEnvKey??p.credentialKey,...y?.parameters?{parameters:y.parameters}:{},...p})}return o}function hF(t){if(!t?.trim())return[];try{const n=JSON.parse(t);return Array.isArray(n)?n.flatMap(s=>{if(!s||typeof s!="object"||Array.isArray(s))return[];const o=s,c=typeof o.id=="string"&&o.id.trim()?o.id.trim():"",r=Nt(typeof o.provider=="string"?o.provider:void 0);return!c||r==="none"?[]:[{id:c,provider:r,label:typeof o.label=="string"?o.label:void 0,publicUrl:typeof o.publicUrl=="string"?o.publicUrl:void 0,credentialEnvKey:typeof o.credentialEnvKey=="string"?o.credentialEnvKey:void 0}]}):[]}catch{return[]}}function Kt(t,n,s){const o=(n==="cloudflare"||n==="sakura_frp")&&t.XPOD_TUNNEL_PUBLIC_URL||"";return t[s.publicEndpointKey]||o||""}function zt(t){const n=t.filter(s=>s.configured).map(s=>({id:s.id,provider:s.provider,label:s.label,publicUrl:s.publicEndpointUrl,...s.parameters&&Object.keys(s.parameters).length>0?{parameters:s.parameters}:{}}));return n.length>0?JSON.stringify(n):""}function xF(t,n,s){const o=t.XPOD_TUNNEL_ACTIVE_PROFILE_ID?.trim();return o||(n!=="none"?n:s.find(c=>c.configured)?.id??"none")}function Xt(t){return uF.has(t)}function Gt(t,n,s){return{...t,[n]:s}}function we(t){return e.jsxs("div",{className:"space-y-2",children:[e.jsx(Oe,{htmlFor:t.id,children:t.label}),e.jsx(Ze,{id:t.id,value:t.value,onChange:n=>t.onChange(n.target.value),placeholder:t.placeholder,readOnly:t.readOnly,"aria-readonly":t.readOnly||void 0}),t.helper?e.jsx("p",{className:"text-xs text-muted-foreground",children:t.helper}):null]})}function DF(){const t=en(),[n,s]=a.useState({}),[o,c]=a.useState({}),[r,i]=a.useState({}),[p,m]=a.useState({}),[f,y]=a.useState([]),[S,C]=a.useState([]),[R,L]=a.useState(null),[T,x]=a.useState(null),[g,w]=a.useState(!0),[v,b]=a.useState(!1),[I,D]=a.useState(!1),[k,O]=a.useState(""),[A,z]=a.useState(!1),Y=n.XPOD_DEPLOY_MODE==="standalone"?"standalone":"local",l=Nt(n.XPOD_TUNNEL_PROVIDER),u=["none","acme","manual"].includes(n.XPOD_HTTPS_MODE)?n.XPOD_HTTPS_MODE:"none",d=R?.status??"unknown",j=Y==="local",E=!!n.XPOD_CLOUD_API_ENDPOINT,N=j&&E,B=T?.baseUrl||n.CSS_BASE_URL||(T?.fqdn?`https://${T.fqdn}/`:""),J=a.useCallback(async()=>{try{const h=await kn();x(h)}catch(h){console.error("Failed to load ddns status:",h),x(null)}},[]),M=a.useCallback(async()=>{try{const h=await On(),$={...h?.env??{}};s($),c($),i({}),m(h?.secrets??{}),y(h?.tunnelProfiles??[]),C(h?.providers??[])}catch(h){console.error("Failed to load config:",h)}finally{w(!1)}},[]),V=a.useCallback(async h=>{D(!0);try{const $=await An(h);L($)}catch($){console.error("Failed to refresh public ip check:",$),L(null)}finally{D(!1)}},[]);a.useEffect(()=>{let h=!0;return Promise.resolve().then(()=>{h&&M()}),()=>{h=!1}},[M]),a.useEffect(()=>{if(g)return;let h=!0;return Promise.resolve().then(()=>{h&&V(N?B:n.CSS_BASE_URL)}),()=>{h=!1}},[n.CSS_BASE_URL,N,B,Y,g,V]),a.useEffect(()=>{if(g)return;let h=!0;return N?Promise.resolve().then(()=>{h&&J()}):Promise.resolve().then(()=>{h&&x(null)}),()=>{h=!1}},[N,J,g]);const q=(h,$)=>{s(Z=>Gt(Z,h,$))},ie=(h,$)=>{i(Z=>Gt(Z,h,$))},W=a.useCallback(h=>!!p[h]?.configured,[p]),ue=a.useCallback(h=>W(h)||!!r[h],[W,r]),oe=a.useMemo(()=>fF(n,ue,f),[n,ue,f]),fe=xF(n,l,oe),_=oe.find(h=>h.id===fe),F=_?.provider??"none",K=pF(F),X=(S??[]).find(h=>h.id===F),G=X?X.endpointSource==="declared":!0,H=h=>{const $=oe.find(Z=>Z.id===h);s(Z=>({...Z,XPOD_TUNNEL_ACTIVE_PROFILE_ID:$?$.id:"",XPOD_TUNNEL_PROVIDER:$?.provider??"none"}))},P=(h,$)=>{const Z=oe.map(je=>je.id===h.id?{...je,publicEndpointUrl:$,configured:!0}:je);s(je=>({...je,[h.publicEndpointKey]:$,XPOD_TUNNEL_PROFILES:zt(Z)}))},se=a.useMemo(()=>{if(K){if(G&&!(_?.publicEndpointUrl||"").trim())return`请填写 ${K.publicEndpointLabel}`;if(!ue(K.credentialKey))return`请填写 ${K.credentialLabel}`}if(N&&T?.mode==="tunnel"&&F==="none")return"当前网络不可直连,必须启用一个隧道供应商。";const $=(n.CSS_BASE_URL||"").trim().startsWith("https://");return!N&&$&&F==="none"&&u==="none"?"独立部署使用 https:// Base URL 时,需要配置 HTTPS 或启用隧道。":""},[_?.publicEndpointUrl,F,T?.mode,G,n.CSS_BASE_URL,u,N,K,ue]),_e=a.useMemo(()=>{const h=[];for(const $ of at){const Z=n[$],je=o[$];if(Xt($)){r[$]&&h.push({key:$,from:W($)?"[configured]":"",to:"[replace]"});continue}(Z??"")!==(je??"")&&h.push({key:$,from:je??"",to:Z??""})}for(const $ of oe){const Z=$.credentialEnvKey;at.includes(Z)||!r[Z]||h.push({key:Z,from:$.credentialConfigured?"[configured]":"",to:"[replace]"})}return h},[n,o,W,r,oe]),Re=async()=>{if(se)return O(se),!1;b(!0),O("");try{const h={};for(const Z of at)Xt(Z)?r[Z]&&(h[Z]=r[Z]):Z in n&&(h[Z]=n[Z]);h.XPOD_TUNNEL_ACTIVE_PROFILE_ID=F==="none"?"":fe,h.XPOD_TUNNEL_PROVIDER=F,h.XPOD_TUNNEL_PROFILES=zt(oe);for(const Z of oe){const je=r[Z.credentialEnvKey];je&&(h[Z.credentialEnvKey]=je)}const $=await In(h);return $?(O("配置已保存,需要重启服务生效"),await M()):O("保存失败"),!!$}catch{return O("保存失败"),!1}finally{b(!1)}},ke=async()=>{if(t&&!t.restartCapability.supported){O("当前入口不支持重启操作。请在本机或携带管理 Token 操作。");return}O("正在重启服务..."),await qn()?(O("重启信号已发送,请稍候..."),setTimeout(()=>window.location.reload(),3e3)):O("重启失败。远程访问时默认禁止重启,请在本机或携带管理 Token 操作。")},vn=async()=>{if(t&&!t.configurationWriteCapability.supported){O("当前入口不支持保存运行时配置。请在本机或携带管理 Token 操作。");return}await Re()&&await ke()},yn=()=>{s(o),i({}),O("未保存变更已重置")},jn=a.useMemo(()=>I?"检测中...":d==="pass"?"可直连":d==="fail"?"不可直连":"未知",[I,d]);return g?e.jsxs("div",{className:"p-4 sm:p-8 max-w-4xl space-y-4",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"type-h1",children:"设置"}),e.jsx("p",{className:"mt-2 text-sm text-muted-foreground",children:"正在读取运行时配置。"})]}),e.jsx(te,{variant:"bordered",children:e.jsxs(ne,{className:"space-y-3 pt-5",children:[e.jsx("div",{className:"h-4 w-40 rounded bg-muted"}),e.jsx("div",{className:"h-10 rounded bg-muted"}),e.jsx("div",{className:"h-10 rounded bg-muted"})]})})]}):e.jsxs("div",{className:"p-4 sm:p-8 max-w-4xl",children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h1",{className:"type-h1",children:"设置"}),e.jsx("p",{className:"mt-2 text-sm text-muted-foreground",children:"高级运行时设置。大多数用户应在常规设置中完成配置。"})]}),e.jsx("div",{className:"mb-6 rounded-xl border border-amber-200 bg-amber-50/70 p-4 text-sm text-amber-900 dark:border-amber-900 dark:bg-amber-950/20 dark:text-amber-200",children:e.jsxs("div",{className:"flex gap-3",children:[e.jsx(xt,{className:"mt-0.5 h-4 w-4 shrink-0"}),e.jsxs("div",{children:[e.jsx("div",{className:"font-medium",children:"高级运行时设置"}),e.jsx("p",{className:"mt-1",children:"这里修改的是本地 Xpod 运行时,不是用户 Pod 资料,也不是 Cloud IDP 账号设置。"})]})]})}),e.jsxs(te,{variant:"bordered",className:"mb-6",children:[e.jsx(ce,{children:e.jsx(re,{children:"运行时"})}),e.jsxs(ne,{className:"space-y-4",children:[e.jsxs("div",{className:"grid gap-4 sm:grid-cols-2",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(Oe,{children:"部署模式"}),e.jsxs(Ae,{value:Y,onValueChange:h=>q("XPOD_DEPLOY_MODE",h),children:[e.jsx(Le,{children:e.jsx(Ie,{})}),e.jsxs(Pe,{children:[e.jsx(ee,{value:"local",children:"边缘部署"}),e.jsx(ee,{value:"standalone",children:"独立部署"})]})]})]}),e.jsx(we,{id:"storageRoot",label:"存储目录",value:n.CSS_ROOT_FILE_PATH||"./data",onChange:h=>q("CSS_ROOT_FILE_PATH",h)})]}),e.jsx(we,{id:"baseUrl",label:"资料入口 URL",value:N?B:n.CSS_BASE_URL||"http://127.0.0.1:3000",onChange:h=>q("CSS_BASE_URL",h),readOnly:N,helper:N?"托管模式下由 Cloud 分配稳定域名,本地只上报状态和隧道入口。":"独立部署需要保证该 URL 可被目标客户端访问。"}),e.jsx("p",{className:"text-xs text-muted-foreground",children:Y==="local"?"边缘部署:Cloud IDP 和稳定域名在云端,数据/SP 保留在本地。":"独立部署:域名、身份认证和证书都由本机或用户自管。"})]})]}),e.jsxs(te,{variant:"bordered",className:"mb-6",children:[e.jsx(ce,{className:"pb-2",children:e.jsxs("div",{className:"flex items-center justify-between gap-4",children:[e.jsx(re,{children:"网络访问"}),e.jsxs("span",{className:"text-sm",children:["外网: ",e.jsx("span",{className:ae(d==="pass"?"text-green-700 dark:text-green-300":d==="fail"?"text-destructive":"text-muted-foreground"),children:jn})]})]})}),e.jsxs(ne,{className:"space-y-4",children:[N&&T?.mode==="tunnel"&&F==="none"?e.jsx("div",{className:"rounded-md border border-destructive/30 bg-destructive/10 px-3 py-2 text-sm text-destructive",children:"当前网络不可直连,请启用一个隧道供应商。"}):null,e.jsxs("div",{className:"space-y-2",children:[e.jsx(Oe,{children:"当前生效"}),e.jsxs(Ae,{value:fe,onValueChange:H,children:[e.jsx(Le,{children:e.jsx(Ie,{})}),e.jsxs(Pe,{children:[e.jsx(ee,{value:"none",children:"不使用隧道"}),oe.map(h=>e.jsx(ee,{value:h.id,children:h.label},h.id))]})]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"可以记录多个隧道配置,但同一时间只启用当前选择的一个。公网、局域网、本机和 P2P 由状态页判断最优接入。"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("div",{className:"text-sm font-medium",children:"已记录隧道"}),e.jsx("div",{className:"grid gap-3 sm:grid-cols-2",children:oe.map(h=>{const $=h.id===fe;return e.jsxs("div",{className:ae("rounded-xl border p-3",$?"border-primary bg-primary/5":"border-border"),children:[e.jsxs("div",{className:"flex items-center justify-between gap-2",children:[e.jsx("span",{className:"text-sm font-medium",children:h.label}),e.jsx(me,{type:"button",variant:$?"secondary":"ghost",size:"sm",onClick:()=>H(h.id),disabled:$,children:$?"当前生效":"设为当前"})]}),e.jsx("div",{className:"mt-2 break-all font-mono text-xs text-muted-foreground",children:h.publicEndpointUrl||"未配置入口"}),e.jsx("div",{className:"mt-1 text-xs text-muted-foreground",children:h.credentialConfigured?"密钥已配置":"未配置密钥"})]},h.id)})})]}),_&&K?e.jsxs("div",{className:"space-y-4 rounded-xl border border-border p-4",children:[e.jsx("div",{className:"text-sm font-medium",children:"编辑当前隧道"}),G?e.jsxs("div",{className:"space-y-1",children:[e.jsx("div",{className:"text-xs text-muted-foreground",children:"隧道入口 URL"}),e.jsx(we,{id:"tunnelPublicEndpoint",label:K.publicEndpointLabel,value:_.publicEndpointUrl,onChange:h=>P(_,h),placeholder:K.publicEndpointPlaceholder,helper:"这是实际数据面入口,不替代上方的稳定资料 URL。"})]}):e.jsxs("div",{className:"rounded-md border border-border bg-muted/30 px-3 py-2 text-xs text-muted-foreground",children:["入口由 ",_.label," 分配,运行时自动读取,无需填写。"]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("div",{className:"text-xs text-muted-foreground",children:"访问密钥"}),e.jsx(We,{id:"tunnelCredential",label:K.credentialLabel,configured:W(K.credentialKey),value:r[_.credentialEnvKey]||"",onChange:h=>ie(_.credentialEnvKey,h)})]})]}):e.jsx("div",{className:"rounded-md border border-border bg-muted/30 px-3 py-2 text-sm text-muted-foreground",children:"不使用隧道时,不填写隧道入口 URL 或访问密钥。"})]})]}),e.jsxs(te,{variant:"bordered",className:"mb-6",children:[e.jsx(ce,{children:e.jsx(re,{children:"Cloud 协调"})}),e.jsxs(ne,{className:"space-y-4",children:[e.jsx(we,{id:"cloudEndpoint",label:"Cloud API endpoint",value:n.XPOD_CLOUD_API_ENDPOINT||"",onChange:h=>q("XPOD_CLOUD_API_ENDPOINT",h)}),e.jsxs("div",{className:"grid gap-4 sm:grid-cols-2",children:[e.jsx(we,{id:"nodeId",label:"nodeId",value:n.XPOD_NODE_ID||"",onChange:h=>q("XPOD_NODE_ID",h)}),e.jsx(we,{id:"spDomain",label:"spDomain",value:n.XPOD_SP_DOMAIN||"",onChange:h=>q("XPOD_SP_DOMAIN",h)})]}),e.jsxs("div",{className:"grid gap-4 sm:grid-cols-2",children:[e.jsx(We,{id:"nodeToken",label:"Node token",configured:W("XPOD_NODE_TOKEN"),value:r.XPOD_NODE_TOKEN||"",onChange:h=>ie("XPOD_NODE_TOKEN",h)}),e.jsx(We,{id:"serviceToken",label:"Service token",configured:W("XPOD_SERVICE_TOKEN"),value:r.XPOD_SERVICE_TOKEN||"",onChange:h=>ie("XPOD_SERVICE_TOKEN",h)})]})]})]}),Y==="standalone"?e.jsxs(te,{variant:"bordered",className:"mb-6",children:[e.jsx(ce,{children:e.jsx(re,{children:"HTTPS"})}),e.jsxs(ne,{className:"space-y-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(Oe,{children:"HTTPS 模式"}),e.jsxs(Ae,{value:u,onValueChange:h=>q("XPOD_HTTPS_MODE",h),children:[e.jsx(Le,{children:e.jsx(Ie,{})}),e.jsxs(Pe,{children:[e.jsx(ee,{value:"none",children:"关闭"}),e.jsx(ee,{value:"acme",children:"自动申请 ACME"}),e.jsx(ee,{value:"manual",children:"手动证书"})]})]})]}),u==="manual"?e.jsxs("div",{className:"grid gap-4 sm:grid-cols-2",children:[e.jsx(we,{id:"certPath",label:"证书路径",value:n.XPOD_HTTPS_CERT_PATH||"",onChange:h=>q("XPOD_HTTPS_CERT_PATH",h)}),e.jsx(we,{id:"keyPath",label:"私钥路径",value:n.XPOD_HTTPS_KEY_PATH||"",onChange:h=>q("XPOD_HTTPS_KEY_PATH",h)})]}):null]})]}):null,e.jsx("div",{className:"mb-6",children:e.jsx(me,{variant:"ghost",size:"sm",onClick:()=>z(h=>!h),children:A?"收起高级设置":"展开高级设置"})}),A?e.jsxs(te,{variant:"bordered",className:"mb-6",children:[e.jsx(ce,{children:e.jsx(re,{children:"高级设置"})}),e.jsxs(ne,{className:"space-y-4",children:[e.jsx(we,{id:"cssPort",label:"端口",value:n.CSS_PORT||"3000",onChange:h=>q("CSS_PORT",h)}),e.jsx(we,{id:"sparqlEndpoint",label:"SPARQL 存储",value:n.CSS_SPARQL_ENDPOINT||"",onChange:h=>q("CSS_SPARQL_ENDPOINT",h)}),e.jsx(We,{id:"identityDb",label:"身份数据库 URL",configured:W("CSS_IDENTITY_DB_URL"),value:r.CSS_IDENTITY_DB_URL||"",onChange:h=>ie("CSS_IDENTITY_DB_URL",h)}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(Oe,{children:"日志级别"}),e.jsxs(Ae,{value:n.CSS_LOGGING_LEVEL||"info",onValueChange:h=>q("CSS_LOGGING_LEVEL",h),children:[e.jsx(Le,{className:"w-40",children:e.jsx(Ie,{})}),e.jsxs(Pe,{children:[e.jsx(ee,{value:"error",children:"error"}),e.jsx(ee,{value:"warn",children:"warn"}),e.jsx(ee,{value:"info",children:"info"}),e.jsx(ee,{value:"debug",children:"debug"})]})]})]}),e.jsxs("label",{className:"flex items-center gap-2 text-sm text-foreground",children:[e.jsx("input",{type:"checkbox",id:"showStackTrace",checked:n.CSS_SHOW_STACK_TRACE==="true",onChange:h=>q("CSS_SHOW_STACK_TRACE",h.target.checked?"true":"false"),className:"rounded border-input"}),"显示错误堆栈"]})]})]}):null,e.jsx(dF,{changes:_e,onReset:yn}),t&&!t.configurationWriteCapability.supported?e.jsxs("div",{className:"rounded-md border border-border bg-muted/40 px-3 py-2 text-sm text-muted-foreground",children:["Configuration changes are not supported from this host capability",t.configurationWriteCapability.reason?`: ${t.configurationWriteCapability.reason}`:"","."]}):e.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[e.jsx(me,{onClick:()=>{Re()},disabled:v||!!se,children:v?"保存中...":"保存配置"}),t&&!t.restartCapability.supported?null:e.jsx(me,{variant:"secondary",onClick:()=>{vn()},disabled:v||!!se,children:"保存并重启"})]}),k||se?e.jsx("div",{className:ae("mt-4 rounded-md border px-3 py-2 text-sm",se||k&&k.includes("失败")?"border-destructive/30 bg-destructive/10 text-destructive":"border-green-200 bg-green-50 text-green-800 dark:border-green-900 dark:bg-green-950/20 dark:text-green-200"),children:k||se}):null]})}export{TF as AdminLayout,PF as LogsPage,EF as RdfPage,DF as SettingsPage,_F as StatusPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c}from"./dashboard-D4DWPaAy.js";const e=[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]],a=c("key-round",e);export{a as K};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as t}from"./dashboard-D4DWPaAy.js";const c=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]],o=t("rotate-ccw",c);export{o as R};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function d(t,e={}){return[{label:"Files",value:t.CSS_ROOT_FILE_PATH||"Runtime default",detail:"Authority file storage root"},{label:"Object storage",value:t.MINIO_ENDPOINT||t.XPOD_STORAGE_S3_ENDPOINT?"Configured":"Not configured",detail:t.MINIO_ENDPOINT||t.XPOD_STORAGE_S3_ENDPOINT||"Filesystem fallback"},{label:"Identity database",value:a(t,e,"CSS_IDENTITY_DB_URL"),detail:r(t.CSS_IDENTITY_DB_URL)},{label:"Cache / coordination",value:a(t,e,"REDIS_URL"),detail:t.REDIS_URL?"Redis":"Runtime fallback"},{label:"RDF / Quadstore",value:a(t,e,"CSS_SPARQL_ENDPOINT"),detail:o(t.CSS_SPARQL_ENDPOINT)}]}function u(t){return{cloud:t.registered||t.managed||t.domainAllocated}}function a(t,e,i){return t[i]||e[i]?.configured?"Configured":"Runtime default"}function r(t){return t?.startsWith("postgres")?"PostgreSQL":t?"SQLite / configured database":"SQLite default"}function o(t){return t?t.startsWith("postgres")?"PostgreSQL RDF":t.startsWith("sqlite")?"SQLite Quadstore":t.startsWith("http")?"Remote SPARQL endpoint":"Configured SPARQL endpoint":"Local Quadstore"}export{d as a,u as p};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{j as t,f as n}from"./dashboard-D4DWPaAy.js";function m({className:e,...s}){return t.jsx("div",{className:n("animate-pulse rounded-md bg-muted/50",e),...s})}export{m as S};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c}from"./dashboard-D4DWPaAy.js";const e=[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]],r=c("network",e);const t=[["path",{d:"m10.586 5.414-5.172 5.172",key:"4mc350"}],["path",{d:"m18.586 13.414-5.172 5.172",key:"8c96vv"}],["path",{d:"M6 12h12",key:"8npq4p"}],["circle",{cx:"12",cy:"20",r:"2",key:"144qzu"}],["circle",{cx:"12",cy:"4",r:"2",key:"muu5ef"}],["circle",{cx:"20",cy:"12",r:"2",key:"1xzzfp"}],["circle",{cx:"4",cy:"12",r:"2",key:"1hvhnz"}]],h=c("waypoints",t);export{r as N,h as W};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as t,j as s,f as w}from"./dashboard-D4DWPaAy.js";const y=t.createContext(null);function P(){const e=t.useContext(y);if(!e)throw new Error("useWorkspaceLayout must be used inside TwoPaneLayout");return e}const g="(max-width: 767px)",v={gridTemplateColumns:"210px minmax(0, 1fr)"};function j(e){return e==="context"?"main":e}function C(e){if(typeof window>"u"||typeof window.matchMedia!="function")return()=>{};const a=window.matchMedia(g);return a.addEventListener("change",e),()=>a.removeEventListener("change",e)}function R(){return typeof window>"u"||typeof window.matchMedia!="function"?"split":window.matchMedia(g).matches?"stack":"split"}function L(){return"split"}function M(e){const a=t.useSyncExternalStore(C,R,L);return e==="auto"?a:e}function N({resolvedMode:e,history:a,resolvePane:l}){const[f,m]=t.useState("list"),c=t.useRef(null),b=t.useRef(null),i=t.useRef(null),r=t.useRef(null),u=t.useMemo(()=>({list:b,main:i,context:r}),[]),o=t.useCallback((n,h={})=>{const d=l?.(n)??n;m(d),e==="stack"&&(c.current=d,h.fromHistory||a?.push(d))},[a,l,e]),p=t.useCallback(()=>o("list"),[o]),x=t.useCallback(()=>o("main"),[o]),k=t.useCallback(()=>o("context"),[o]);return t.useLayoutEffect(()=>{if(e!=="stack"){c.current=null;return}const n=c.current;n&&(c.current=null,u[n].current?.focus())},[f,u,e]),t.useLayoutEffect(()=>{if(!(e!=="stack"||!a))return a.subscribe(n=>{o(n,{fromHistory:!0})})},[a,o,e]),{activePane:f,paneRefs:u,openList:p,openMain:x,openContext:k}}function S({listHeader:e,list:a,mainHeader:l,main:f,mode:m="auto",history:c,className:b}){const i=M(m),{activePane:r,paneRefs:u,openList:o,openMain:p,openContext:x}=N({resolvedMode:i,history:c,resolvePane:j}),k=t.useMemo(()=>({mode:i,activePane:r,openList:o,openMain:p,openContext:x}),[r,x,o,p,i]),n=i==="stack",h=n&&r!=="list",d=n&&r!=="main";return s.jsx(y.Provider,{value:k,children:s.jsx("section",{className:w("flex min-h-0 flex-1 flex-col bg-background",b),"data-workspace-layout":"two-pane","data-workspace-mode":i,children:s.jsxs("div",{className:w("grid min-h-0 flex-1",n?"grid-cols-1":null),style:n?void 0:v,"data-workspace-layout-mode":m,"data-workspace-active-pane":r,children:[s.jsxs("aside",{ref:u.list,className:w("min-h-0 flex-col overflow-hidden bg-layout-list-item @container",h?"hidden":"flex",n?"border-r-0":"border-r border-border"),"data-testid":"workspace-list-pane","data-workspace-pane":"list",hidden:h,tabIndex:n?-1:void 0,children:[s.jsx("header",{className:"h-12 shrink-0 border-b border-border bg-layout-list-header","data-workspace-list-header":"true",children:e}),s.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto",children:a})]}),s.jsxs("main",{ref:u.main,className:w("min-h-0 flex-col overflow-hidden bg-layout-content @container",d?"hidden":"flex"),"data-testid":"workspace-main-pane","data-workspace-pane":"main",hidden:d,tabIndex:n?-1:void 0,children:[s.jsx("header",{className:"h-12 shrink-0 border-b border-border bg-layout-content","data-workspace-main-header":"true",children:l}),s.jsxs("div",{className:"min-h-0 flex-1 overflow-y-auto",children:[n?s.jsx("button",{type:"button",className:"inline-flex items-center px-4 py-3 text-sm text-muted-foreground hover:text-foreground",onClick:o,children:"返回列表"}):null,f]})]})]})})})}export{S as T,y as W,P as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as J,r as a,j as V,v as X}from"./global-DMtP8ZF4.js";import{a as $}from"./ai-connections-DexTPyfC.js";import{d as D}from"./XpodAiConnectionsPodStore-OndzbigX.js";async function R(t){return k(t(h("/api/ai/config"),{method:"GET",credentials:"include",headers:{accept:"application/json"}}))}async function G(t,e){return k(t(h("/api/ai/config"),{method:"PATCH",credentials:"include",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify(e)}))}async function H(t,e){const o=await t(h("/api/ai/config/rebuild"),{method:"POST",credentials:"include",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify({target:e})}),s=await o.json().catch(()=>{});if(!o.ok||!s?.job)throw new Error(s?.error??"Index rebuild request failed");return s.job}async function ee(t,e){const o=e.capabilities.some(i=>i.toLowerCase()==="embedding"),s=await t(h(o?"/v1/embeddings":"/v1/chat/completions"),{method:"POST",credentials:"include",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify(o?{model:e.id,input:"xpod readiness probe"}:{model:e.id,messages:[{role:"user",content:"Reply OK."}],max_tokens:1,stream:!1})});if(!s.ok){const i=await s.json().catch(()=>{}),d=typeof i?.error=="string"?i.error:i?.error?.message;throw new Error(d??"Model readiness probe failed")}await s.arrayBuffer()}function h(t){if(typeof window>"u")throw new Error("AI Config API requires the current browser origin");return new URL(t,window.location.origin).toString()}async function k(t){const e=await t,o=await e.json().catch(()=>{});if(!e.ok||!o?.config||!o.capabilities)throw new Error(o?.error??"AI Config request failed");return o}const L=a.createContext(void 0),K=2e3;function te({children:t}){const e=J(),[o,s]=a.useState(),[i,d]=a.useState(),[c,p]=a.useState([]),[y,g]=a.useState(),[O,v]=a.useState(!0),[C,M]=a.useState(!1),[I,P]=a.useState(!1),[S,u]=a.useState(),[N,T]=a.useState(0),q=!!(e.webId&&e.currentPod);a.useEffect(()=>{if(!e.webId||!e.currentPod)return;let r=!1;return queueMicrotask(()=>{if(r||!e.webId||!e.currentPod)return;v(!0),u(void 0);const n=$({webId:e.webId,podUrl:e.currentPod.podUrl,authenticatedFetch:e.fetch}),_=D({database:e.currentPod.database,authenticatedFetch:e.fetch,podUrl:e.currentPod.podUrl,webId:e.currentPod.webId}).listModels?.()?.catch(()=>[])??Promise.resolve([]);Promise.all([R(e.fetch),n.listModels().catch(()=>[]),_]).then(([l,B,F])=>{r||(s(l.config),d(l.capabilities),g(l.lifecycle),p(Q(z(F,B))))}).catch(l=>{r||u(l instanceof Error?l.message:String(l))}).finally(()=>{r||v(!1)})}),()=>{r=!0}},[N,e.currentPod,e.fetch,e.webId]);const A=a.useCallback(()=>{T(r=>r+1)},[]),j=y?.pending??0;a.useEffect(()=>{if(j<=0||!e.webId||!e.currentPod)return;let r=!1;const n=setInterval(()=>{R(e.fetch).then(f=>{r||g(f.lifecycle)}).catch(()=>{})},K);return()=>{r=!0,clearInterval(n)}},[j,e.currentPod,e.fetch,e.webId]);const b=a.useCallback(async r=>{M(!0),u(void 0);try{const n=await G(e.fetch,r);s(n.config),d(n.capabilities),g(n.lifecycle)}catch(n){throw u(n instanceof Error?n.message:String(n)),n}finally{M(!1)}},[e.fetch]),m=a.useCallback(async r=>{P(!0),u(void 0);try{const n=await H(e.fetch,r);g(f=>({configurationVersion:f?.configurationVersion,pending:(f?.pending??0)+1,recent:[n,...f?.recent??[]].slice(0,20)}))}catch(n){throw u(n instanceof Error?n.message:String(n)),n}finally{P(!1)}},[e.fetch]),E=a.useCallback(async(r,n)=>{await b(r),await m(n)},[m,b]),x=q?O:!1,U=a.useMemo(()=>({config:o,capabilities:i,lifecycle:y,models:c,loading:x,saving:C,rebuilding:I,error:S,reload:A,save:b,rebuild:m,saveAndRebuild:E}),[i,o,x,S,y,c,m,I,A,b,E,C]);return V.jsx(L.Provider,{value:U,children:t})}function z(t,e){const o=new Map,s=i=>`${i.provider}\0${w(i.id)}`;for(const i of[...t,...e]){const d=s(i),c=o.get(d);if(!c){o.set(d,{...i,id:w(i.id)});continue}const p=[...new Set([...c.capabilities??[],...i.capabilities??[]])];o.set(d,{...c,...i,id:w(i.id),resourceId:c.resourceId??i.resourceId,displayName:c.displayName??i.displayName,availability:c.availability==="available"?c.availability:i.availability,modelType:c.modelType??i.modelType,...p.length>0?{capabilities:p}:{},...c.inputModalities??i.inputModalities?{inputModalities:c.inputModalities??i.inputModalities}:{}})}return[...o.values()]}function w(t){const e=t.lastIndexOf("#");return e>=0?t.slice(e+1):t}function Q(t){return t.map(e=>({id:e.id,displayName:e.displayName,owner:e.provider,ref:X(e.provider,e.id),capabilities:e.capabilities??[]}))}function ie(t,e){const s={chatModel:["chat"],ocrModel:["ocr"],readerModel:["document-understanding","documentunderstanding"],embeddingModel:["embedding"],indexerModel:["indexing"],rerankerModel:["reranking","reranker"]}[e];return s?t.filter(i=>i.capabilities.some(d=>s.includes(d.toLowerCase()))):t}function ne(){const t=a.useContext(L);if(!t)throw new Error("useAiConfig must be used within AiConfigProvider");return t}export{te as A,ie as m,ee as t,ne as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as d,j as e,Y as x,r as p,Z as g,_ as f,$ as y,a0 as b}from"./global-DMtP8ZF4.js";import{P as v}from"./PaneListHeader-270Z179Z.js";import{A as j,u as k}from"./AiConfigContext-B2cVJFNu.js";import{T as N,u as w}from"./workspace-layout-BSMCQq35.js";import"./ai-connections-DexTPyfC.js";import"./XpodAiConnectionsPodStore-OndzbigX.js";import"./index-browser-kAl2JmYB.js";const M=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["circle",{cx:"11.5",cy:"14.5",r:"2.5",key:"1bq0ko"}],["path",{d:"M13.3 16.3 15 18",key:"2quom7"}]],C=d("file-search",M);const A=[["path",{d:"M21 5H3",key:"1fi0y6"}],["path",{d:"M7 12H3",key:"13ou7f"}],["path",{d:"M7 19H3",key:"wbqt3n"}],["path",{d:"M12 18a5 5 0 0 0 9-3 4.5 4.5 0 0 0-4.5-4.5c-1.33 0-2.54.54-3.41 1.41L11 14",key:"qth677"}],["path",{d:"M11 10v4h4",key:"172dkj"}]],I=d("list-restart",A);const L=[["path",{d:"M3 7V5a2 2 0 0 1 2-2h2",key:"aa7l1z"}],["path",{d:"M17 3h2a2 2 0 0 1 2 2v2",key:"4qcy5o"}],["path",{d:"M21 17v2a2 2 0 0 1-2 2h-2",key:"6vwrx8"}],["path",{d:"M7 21H5a2 2 0 0 1-2-2v-2",key:"ioqczr"}],["path",{d:"M7 8h8",key:"1jbsf9"}],["path",{d:"M7 12h10",key:"b7w52i"}],["path",{d:"M7 16h6",key:"1vyc9m"}]],H=d("scan-text",L);const _=[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]],q=d("sliders-horizontal",_);function o(s,a,t,n,i){return{id:s,label:a,path:t,href:`/ai-config/${t}`,end:!0,description:n,icon:i}}const l=[o("model-assignments","Model Assignments","model-assignments","Choose the model used by each Xpod capability.",q),o("document-processing","Document Processing","document-processing","Control OCR and structured document reading.",H),o("search-indexing","Search & Indexing","search-indexing","Enable FTS, vector retrieval, and backend selection.",C),o("index-lifecycle","Index Lifecycle","index-lifecycle","Control automatic indexing and derived-index rebuilds.",I)];function O(){return e.jsx(j,{children:e.jsx(S,{})})}function S(){const s=x(),{config:a,loading:t,saving:n,error:i,reload:m}=k(),[u,c]=p.useState(!1),h=l.find(r=>s.pathname.endsWith(r.path))??l[0];return e.jsx(N,{mode:"auto",listHeader:e.jsx(v,{title:"AI Config"}),list:e.jsx(T,{}),mainHeader:e.jsx("div",{className:"flex h-full min-w-0 items-center px-4",children:e.jsxs("div",{className:"min-w-0",children:[e.jsxs("h1",{className:"text-sm font-semibold text-foreground",children:["AI Config · ",h.label]}),e.jsx("div",{className:"truncate text-xs text-muted-foreground",children:"Pod-level AI and derived-index policy"})]})}),main:e.jsxs("section",{className:"min-h-full bg-background",children:[n&&e.jsx("div",{role:"status","aria-live":"polite",className:"border-b border-border px-6 py-2 text-xs text-muted-foreground",children:"Saving AI configuration…"}),i?e.jsx(z,{error:i,showTechnicalDetails:u,onToggleTechnicalDetails:()=>c(r=>!r),onRetry:()=>{c(!1),m()}}):t||!a?e.jsx(P,{}):e.jsx(g,{})]}),className:"min-h-full"})}function z({error:s,showTechnicalDetails:a,onToggleTechnicalDetails:t,onRetry:n}){return e.jsx("div",{className:"mx-auto w-full max-w-4xl p-6",children:e.jsxs("div",{role:"alert","aria-live":"assertive",className:"rounded-lg border border-destructive/30 bg-destructive/5 p-4",children:[e.jsx("h2",{className:"text-sm font-semibold text-foreground",children:"AI configuration could not be loaded"}),e.jsx("p",{className:"mt-1 text-sm text-muted-foreground",children:"Xpod could not read this Pod’s AI settings. Your existing settings were not changed."}),e.jsxs("div",{className:"mt-4 flex flex-wrap gap-2",children:[e.jsx("button",{type:"button",onClick:n,className:"h-9 rounded-md bg-primary px-3 text-sm font-medium text-primary-foreground hover:bg-primary/90",children:"Try again"}),e.jsx("button",{type:"button","aria-expanded":a,onClick:t,className:"h-9 rounded-md border border-input bg-background px-3 text-sm font-medium text-foreground hover:bg-accent",children:a?"Hide details":"Show details"})]}),a&&e.jsx("p",{className:"mt-3 break-words font-mono text-xs text-muted-foreground",children:s})]})})}function P(){return e.jsxs("div",{role:"status","aria-live":"polite",className:"mx-auto w-full max-w-4xl p-6",children:[e.jsx("div",{className:"h-7 w-52 animate-pulse rounded bg-muted"}),e.jsx("div",{className:"mt-3 h-4 w-80 max-w-full animate-pulse rounded bg-muted"}),e.jsx("div",{className:"mt-6 divide-y divide-border overflow-hidden rounded-xl border border-border",children:Array.from({length:4},(s,a)=>e.jsxs("div",{className:"grid gap-4 p-4 lg:grid-cols-[minmax(220px,1fr)_minmax(320px,440px)]",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx("div",{className:"h-4 w-28 animate-pulse rounded bg-muted"}),e.jsx("div",{className:"h-3 w-52 animate-pulse rounded bg-muted"})]}),e.jsx("div",{className:"h-10 animate-pulse rounded-md bg-muted"})]},a))}),e.jsx("span",{className:"sr-only",children:"Loading AI configuration…"})]})}function T(){const s=w();return e.jsx("aside",{className:"h-full border-r border-border bg-muted/20 py-2",children:e.jsx("nav",{"aria-label":"AI Config sections","data-list-navigation":!0,children:l.map(a=>{const t=a.icon;return e.jsxs(f,{to:a.path,end:a.end,onClick:()=>s.openMain(),onKeyDown:y,className:({isActive:n})=>b(n,{compact:!1}),children:[e.jsx(t,{className:"mt-0.5 h-4 w-4 shrink-0","aria-hidden":"true"}),e.jsxs("span",{className:"min-w-0",children:[e.jsx("span",{className:"block text-sm font-medium",children:a.label}),e.jsx("span",{className:"mt-0.5 block text-xs leading-4 text-muted-foreground",children:a.description})]})]},a.id)})})})}export{O as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as u,j as a}from"./global-DMtP8ZF4.js";import{i as g,A as p}from"./ModelAssignmentsPanel-Cam9V9BN.js";import{u as x}from"./AiConfigContext-B2cVJFNu.js";import"./dialog-_7AVvv5q.js";import"./index-CQR3iePj.js";import"./ai-connections-DexTPyfC.js";import"./XpodAiConnectionsPodStore-OndzbigX.js";import"./index-browser-kAl2JmYB.js";function P(){const{config:o,save:t,saving:s}=x(),[e,r]=u.useState(o?.documentProcessing);if(u.useEffect(()=>{let n=!1;return queueMicrotask(()=>{n||r(o?.documentProcessing)}),()=>{n=!0}},[o]),!e)return null;const l=g(e,o?.documentProcessing),b=async n=>{n.preventDefault(),await t({documentProcessing:e})};return a.jsx(p,{title:"Document Processing",description:"Control when Xpod invokes OCR and structured document readers.",onSubmit:b,onRestore:()=>t({documentProcessing:{ocrEnabled:!0,automaticOcr:!0,imageRecognition:!0,pdfRecognition:!0,tableRecognition:!1,processingMode:"auto",ocrFallbackOrder:["ocr","reader","plain-text"],readerPolicy:"auto",readerPriority:"structure-first",maxFileSizeMb:64,maxPages:500,failureFallback:"plain-text"}}),saving:s,dirty:l,children:a.jsxs("div",{className:"space-y-4 rounded-xl border border-border p-4",children:[a.jsx(i,{label:"Enable OCR",description:"Read text from images and scanned documents.",checked:e.ocrEnabled,onChange:n=>r({...e,ocrEnabled:n})}),a.jsx(i,{label:"Automatic OCR",description:"Run OCR when indexed content has no usable text layer.",checked:e.automaticOcr,onChange:n=>r({...e,automaticOcr:n})}),a.jsx(i,{label:"Image recognition",description:"Allow OCR and readers to process image resources.",checked:e.imageRecognition,onChange:n=>r({...e,imageRecognition:n})}),a.jsx(i,{label:"PDF recognition",description:"Process native and scanned PDF resources.",checked:e.pdfRecognition,onChange:n=>r({...e,pdfRecognition:n})}),a.jsx(i,{label:"Table recognition",description:"Preserve detected table structure when the reader supports it.",checked:e.tableRecognition,onChange:n=>r({...e,tableRecognition:n})}),a.jsxs("label",{className:"block space-y-2 text-sm font-medium",children:["Processing mode",a.jsxs("select",{name:"processingMode",value:e.processingMode,onChange:n=>r({...e,processingMode:n.target.value}),className:"block h-10 w-full rounded-md border border-input bg-background px-3 text-sm sm:max-w-xs",children:[a.jsx("option",{value:"auto",children:"Auto"}),a.jsx("option",{value:"on-demand",children:"On demand"})]})]}),a.jsxs("label",{className:"block space-y-2 text-sm font-medium",children:["OCR fallback order",a.jsx("input",{value:e.ocrFallbackOrder.join(", "),onChange:n=>r({...e,ocrFallbackOrder:n.target.value.split(",").map(c=>c.trim()).filter(c=>["ocr","reader","plain-text"].includes(c))}),className:"block h-10 w-full rounded-md border border-input bg-background px-3 text-sm"})]}),a.jsxs("div",{className:"grid gap-4 sm:grid-cols-2",children:[a.jsx(d,{label:"Reader policy",value:e.readerPolicy,options:["auto","always","disabled"],onChange:n=>r({...e,readerPolicy:n})}),a.jsx(d,{label:"Reader priority",value:e.readerPriority,options:["structure-first","speed-first"],onChange:n=>r({...e,readerPriority:n})}),a.jsx(m,{label:"Maximum file size (MB)",value:e.maxFileSizeMb,min:1,max:1024,onChange:n=>r({...e,maxFileSizeMb:n})}),a.jsx(m,{label:"Maximum pages",value:e.maxPages,min:1,max:1e4,onChange:n=>r({...e,maxPages:n})}),a.jsx(d,{label:"Failure fallback",value:e.failureFallback,options:["plain-text","skip"],onChange:n=>r({...e,failureFallback:n})})]})]})})}function d({label:o,value:t,options:s,onChange:e}){return a.jsxs("label",{className:"block space-y-2 text-sm font-medium",children:[o,a.jsx("select",{value:t,onChange:r=>e(r.target.value),className:"block h-10 w-full rounded-md border border-input bg-background px-3 text-sm",children:s.map(r=>a.jsx("option",{value:r,children:r},r))})]})}function m({label:o,value:t,min:s,max:e,onChange:r}){return a.jsxs("label",{className:"block space-y-2 text-sm font-medium",children:[o,a.jsx("input",{type:"number",value:t,min:s,max:e,onChange:l=>r(l.target.valueAsNumber),className:"block h-10 w-full rounded-md border border-input bg-background px-3 text-sm"})]})}function i({label:o,description:t,checked:s,onChange:e}){return a.jsxs("label",{className:"flex items-start justify-between gap-4",children:[a.jsxs("span",{children:[a.jsx("span",{className:"block text-sm font-medium",children:o}),a.jsx("span",{className:"block text-xs text-muted-foreground",children:t})]}),a.jsx("input",{type:"checkbox",checked:s,onChange:r=>e(r.target.checked),className:"mt-1 h-4 w-4 rounded border-input"})]})}export{P as DocumentProcessingPanel};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as o,j as e}from"./global-DMtP8ZF4.js";import{i as y,A as N,B as k}from"./ModelAssignmentsPanel-Cam9V9BN.js";import{u as w}from"./AiConfigContext-B2cVJFNu.js";import"./dialog-_7AVvv5q.js";import"./index-CQR3iePj.js";import"./ai-connections-DexTPyfC.js";import"./XpodAiConnectionsPodStore-OndzbigX.js";import"./index-browser-kAl2JmYB.js";function L(){const{config:t,capabilities:d,lifecycle:i,save:n,rebuild:p,saving:h,rebuilding:b,error:g}=w(),[c,u]=o.useState(),[r,a]=o.useState(t?.lifecycle);if(o.useEffect(()=>{let s=!1;return queueMicrotask(()=>{s||a(t?.lifecycle)}),()=>{s=!0}},[t]),!r)return null;const v=y(r,t?.lifecycle),j=async s=>{s.preventDefault(),await n({lifecycle:r})},m=async s=>{u(void 0);try{await p(s)}catch(l){(l instanceof Error?l.message:String(l)).includes("service_access_missing")&&u(s)}};return e.jsxs(N,{title:"Index Lifecycle",description:"Control automatic maintenance and explicitly schedule rebuilds of derived data.",onSubmit:j,onRestore:()=>n({lifecycle:{automaticIndexing:!0,refreshAfterSourceUpdate:!0,removeAfterSourceDeletion:!0}}),saving:h,dirty:v,children:[e.jsxs("div",{className:"divide-y divide-border rounded-xl border border-border",children:[e.jsxs("label",{className:"flex items-start justify-between gap-4 p-4",children:[e.jsxs("span",{children:[e.jsx("span",{className:"block text-sm font-medium",children:"Automatically index changes"}),e.jsx("span",{className:"block text-xs text-muted-foreground",children:"Index new and updated resources, and remove derived entries after deletion."})]}),e.jsx("input",{name:"automaticIndexing",type:"checkbox",checked:r.automaticIndexing,onChange:s=>a({...r,automaticIndexing:s.target.checked}),className:"mt-1 h-4 w-4 rounded border-input"})]}),e.jsx(x,{label:"Refresh after source updates",checked:r.refreshAfterSourceUpdate,onChange:s=>a({...r,refreshAfterSourceUpdate:s})}),e.jsx(x,{label:"Remove derived entries after source deletion",checked:r.removeAfterSourceDeletion,onChange:s=>a({...r,removeAfterSourceDeletion:s})})]}),e.jsxs("section",{className:"rounded-xl border border-border p-4",children:[e.jsx("h2",{className:"text-sm font-medium",children:"Rebuild derived indexes"}),e.jsx("p",{className:"mt-1 text-xs text-muted-foreground",children:"Rebuild actions never modify authority data in the Pod."}),e.jsx("div",{className:"mt-4 flex flex-wrap gap-2",children:["fts","vector","all"].map(s=>e.jsxs("button",{type:"button",disabled:!d?.rebuildTargets?.includes(s)||b,onClick:()=>{m(s)},className:"h-9 rounded-md border border-input px-3 text-sm font-medium disabled:opacity-50",children:["Rebuild ",s==="all"?"all":s.toUpperCase()]},s))})]}),e.jsx(k,{...c?{notice:g?.includes("service_access_missing")?`Rebuild ${c.toUpperCase()} needs background Pod access.`:void 0,onGranted:()=>m(c)}:{}}),e.jsxs("section",{className:"rounded-xl border border-border p-4",children:[e.jsx("h2",{className:"text-sm font-medium",children:"Lifecycle evidence"}),e.jsxs("div",{className:"mt-3 grid gap-3 sm:grid-cols-2",children:[e.jsx(f,{label:"Configuration version",value:i?.configurationVersion??t?.updatedAt??"Default"}),e.jsx(f,{label:"Pending queue",value:String(i?.pending??0)})]}),e.jsx("div",{className:"mt-4 space-y-2",children:i?.recent.length?i.recent.map(s=>e.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2 rounded-md border border-border p-3 text-sm",children:[e.jsxs("span",{children:[s.target.toUpperCase()," · ",s.status]}),e.jsxs("span",{className:"text-xs text-muted-foreground",children:[s.progress??0,"% · ",new Date(s.createdAt).toLocaleString()]}),s.error?e.jsx("span",{className:"w-full text-xs text-destructive",children:s.error}):null]},s.id)):e.jsx("p",{className:"text-sm text-muted-foreground",children:"No rebuild jobs have been scheduled."})})]})]})}function x({label:t,checked:d,onChange:i}){return e.jsxs("label",{className:"flex items-start justify-between gap-4 p-4",children:[e.jsx("span",{className:"text-sm font-medium",children:t}),e.jsx("input",{type:"checkbox",checked:d,onChange:n=>i(n.target.checked),className:"mt-1 h-4 w-4 rounded border-input"})]})}function f({label:t,value:d}){return e.jsxs("div",{className:"rounded-md border border-border p-3",children:[e.jsx("div",{className:"text-xs text-muted-foreground",children:t}),e.jsx("div",{className:"mt-1 text-sm font-medium",children:d})]})}export{L as IndexLifecyclePanel};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as l,j as e,B as g,R as j,C as p,a as y,b,d as S,e as N}from"./global-DMtP8ZF4.js";import{g as C}from"./admin-C6qCRFiY.js";import{S as m}from"./skeleton-R_ACks7d.js";function F({kind:r}){const[s,n]=l.useState(null),[d,t]=l.useState(!1),i=l.useCallback(async()=>{t(!0);try{n(await C())}finally{t(!1)}},[]);return l.useEffect(()=>{let c=!0;return Promise.resolve().then(()=>{c&&i()}),()=>{c=!1}},[i]),e.jsxs("div",{className:"space-y-4 p-6",children:[e.jsx("div",{className:"flex justify-end",children:e.jsxs(g,{type:"button",size:"sm",variant:"outline",onClick:i,disabled:d,children:[e.jsx(j,{className:"mr-2 h-4 w-4"}),"Refresh"]})}),e.jsx("div",{role:"status","aria-live":"polite",className:"sr-only",children:d?"Refreshing index evidence…":s?"Index evidence refreshed.":"Waiting for index evidence."}),e.jsxs(p,{children:[e.jsxs(y,{children:[e.jsx(b,{children:w[r]}),e.jsx(S,{children:"Observed derived-index state; policy changes belong in AI Config."})]}),e.jsx(N,{children:d&&!s?e.jsx(B,{}):R(r,s)})]})]})}const w={overview:"Index Overview",fts:"FTS",vector:"Vector","retrieval-points":"Retrieval Points",cache:"Cache","slow-queries":"Slow Queries",benchmark:"Benchmark"};function R(r,s){if(!s)return e.jsx("p",{className:"text-sm text-muted-foreground",children:"Waiting for runtime evidence."});if(r==="benchmark"){const t=s.benchmarkReports;return e.jsx(a,{values:[["Reports",String(t?.reportCount??0)],["Skipped files",String(t?.skippedFiles??0)],["Errors",String(t?.errors.length??0)]]})}if(!s.available)return e.jsxs("p",{className:"text-sm text-muted-foreground",children:["Unavailable: ",s.reason]});if(r==="overview"){const t=s.stats.lifecycle;return e.jsxs("div",{className:"space-y-4",children:[e.jsx(a,{values:[["Engine",s.engine],["State",v(t?.status)],["Authority data",o(s.stats.factsBytes)],["Derived storage",o(s.stats.derivedBytes)],["Total storage",o(s.stats.totalBytes)],["Generated",f(s.generatedAt)]]}),e.jsx(x,{children:"Derived indexes are rebuildable runtime evidence; Pod RDF remains the authority data."})]})}if(r==="cache"){const t=s.stats.derivedCache;return t?e.jsx(a,{values:[["Cache bytes",o(t.cacheBytes)],["Limit",o(t.maxCacheBytes)],["Pressure",`${Math.round(t.cachePressure*100)}%`],["Evictions",String(t.evictionCount)]]}):e.jsx(u,{})}if(r==="slow-queries"){const t=s.stats.slowQueries;return t?e.jsxs("div",{className:"space-y-2",children:[e.jsx(a,{values:[["Captured",String(t.entryCount)],["Limit",String(t.maxEntries)]]}),t.entries.slice(0,10).map(i=>e.jsxs("div",{className:"rounded-lg border border-border p-3 text-sm",children:[e.jsxs("div",{className:"font-medium",children:[i.runtime.durationMs," ms · ",i.runtime.returnedRows," rows"]}),e.jsx("div",{className:"mt-1 text-xs text-muted-foreground",children:i.reasons.join(", ")||i.queryKey})]},`${i.generatedAt}-${i.queryKey}`))]}):e.jsx(u,{})}if(r==="retrieval-points"){const t=s.stats.rdf3x;return t?e.jsx(a,{values:[["State",t.syncedWithFacts?"Synchronized":`${t.refreshLag} versions behind`],["Facts version",String(t.factsDataVersion)],["Retrieval version",String(t.rdf3xFactsDataVersion)],["Pending sources",String(t.pendingSources)]]}):e.jsx(u,{})}const n=s.stats.lifecycle,d=r==="fts"?n?.coldStart?.ownsTextIndex:n?.coldStart?.ownsVectorIndex;if((r==="fts"||r==="vector")&&d){const t=s.stats.pgAcceleration,i=s.stats.rdf3x;return e.jsxs("div",{className:"space-y-4",children:[e.jsx(a,{values:[["State",v(n?.status)],["Ownership","Runtime managed"],["Backend",t?.provider?`${h(t.provider)}${t.version?` ${t.version}`:""}`:n?.driver??"Not reported"],["Freshness",i?i.syncedWithFacts?"Current":`${i.refreshLag} versions behind`:"Not reported"],["Indexes",t?.customIndexes?.map(c=>c.name).join(", ")||"Runtime managed"],["Last ready",f(n?.lastReadyAt)]]}),e.jsxs(x,{children:[r==="fts"?"Text retrieval":"Vector retrieval"," is derived from Pod authority data. Enablement and backend policy are configured in AI Config."]})]})}return e.jsx(u,{})}function a({values:r}){return e.jsx("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-4",children:r.map(([s,n])=>e.jsxs("div",{className:"rounded-lg border border-border p-3",children:[e.jsx("div",{className:"text-xs text-muted-foreground",children:s}),e.jsx("div",{className:"mt-1 font-medium",children:n})]},s))})}function B(){return e.jsx("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-4","aria-hidden":"true",children:Array.from({length:4},(r,s)=>e.jsxs("div",{className:"rounded-lg border border-border p-3",children:[e.jsx(m,{className:"h-3 w-20"}),e.jsx(m,{className:"mt-2 h-5 w-28"})]},s))})}function u(){return e.jsx("p",{className:"text-sm text-muted-foreground",children:"This runtime does not report evidence for this index subject."})}function x({children:r}){return e.jsx("p",{className:"text-sm text-muted-foreground",children:r})}function o(r){return r<1024?`${r} B`:r<1024*1024?`${Math.round(r/1024)} KB`:`${(r/(1024*1024)).toFixed(1)} MB`}function f(r){return r?new Date(r).toLocaleString():"Not reported"}function v(r){return r?h(r):"Unknown"}function h(r){return r.charAt(0).toUpperCase()+r.slice(1)}export{F as default};
|