@undefineds.co/xpod 0.4.20 → 0.4.27
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 +9 -0
- package/dist/api/ApiServer.js +113 -16
- package/dist/api/ai-config/AiConfigStore.js +18 -6
- 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 +16 -1
- package/dist/api/ai-gateway/connect/index.js +119 -31
- package/dist/api/ai-gateway/models/ProviderModelsAdapter.js +5 -2
- 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 +100 -17
- package/dist/api/container/index.js +24 -8
- package/dist/api/container/local.js +6 -3
- 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.d.ts +1 -0
- package/dist/api/handlers/AiGatewayHandler.js +57 -3
- package/dist/api/handlers/AiGatewayManagementHandler.js +17 -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 +200 -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/network/NetworkEnvironmentConfigurationStore.js +1 -1
- 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 -3
- package/dist/api/runs/ManagedRunWorker.js +101 -88
- package/dist/api/runs/PiAgentRuntimeDriver.d.ts +24 -0
- package/dist/api/runs/PiAgentRuntimeDriver.js +274 -15
- 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 +130 -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 +7 -1
- package/dist/api/runs/store.js +32 -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 +174 -126
- package/dist/api/tasks/TaskResumeDiagnostics.d.ts +28 -0
- package/dist/api/tasks/TaskResumeDiagnostics.js +148 -0
- package/dist/api/tasks/TaskService.d.ts +28 -3
- package/dist/api/tasks/TaskService.js +142 -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 +41 -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/dist/util/task-model-diagnostics.d.ts +67 -0
- package/dist/util/task-model-diagnostics.js +118 -0
- 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 +4 -3
- package/node_modules/@undefineds.co/ai-connections/dist/AiApiKeyPool.js +3 -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 +6 -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 +4 -3
- package/node_modules/@undefineds.co/ai-connections/dist/AiCredentialPoolSection.js +20 -45
- 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 +12 -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 +140 -32
- 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 +5 -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/AiSortableCredentialList.js +59 -59
- 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/collection-runtime.js +2 -0
- package/node_modules/@undefineds.co/ai-connections/dist/collections.d.ts +2 -2
- package/node_modules/@undefineds.co/ai-connections/dist/collections.js +16 -8
- package/node_modules/@undefineds.co/ai-connections/dist/contract/ai-connections-client.d.ts +7 -6
- package/node_modules/@undefineds.co/ai-connections/dist/contract/ai-connections-client.js +1 -0
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client/gateway-model-roles.d.ts +11 -0
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client/gateway-model-roles.js +11 -0
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client/normalize.d.ts +2 -1
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client/normalize.js +21 -15
- 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/request.js +10 -2
- package/node_modules/@undefineds.co/ai-connections/dist/contract/client/types.d.ts +18 -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 +7 -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 +93 -46
- package/node_modules/@undefineds.co/pod-collections/dist/mapping.d.ts +16 -1
- package/node_modules/@undefineds.co/pod-collections/dist/mapping.js +51 -0
- package/node_modules/@undefineds.co/pod-collections/dist/mutations.js +14 -18
- 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 +32 -0
- package/node_modules/@undefineds.co/shared-ui/dist/list.js +24 -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 +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/IdpChrome.js +1 -1
- 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 +5 -4
- 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 +1 -1
- package/node_modules/@undefineds.co/shared-ui/dist/pod-sign-in/PodSignInFrame.js +1 -1
- 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 +11 -13
- 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 +141 -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-Dv52SZc6.js +1 -0
- package/static/dashboard/assets/DesktopOidcCallback-DaT_Rumf.js +1 -0
- package/static/dashboard/assets/DevicePages-HjclpIVm.js +2 -0
- package/static/dashboard/assets/ModelsPage-Be2TPd-x.js +11 -0
- package/static/dashboard/assets/PaneListHeader-DtvnRmFq.js +1 -0
- package/static/dashboard/assets/PodDeletionAuthorizationPanel-BJk_8rJq.js +42 -0
- package/static/dashboard/assets/PodPage-C4gzEspV.js +1 -0
- package/static/dashboard/assets/SystemSettingsPage-HaNrP1H1.js +1 -0
- package/static/dashboard/assets/TasksPage-BdO5K2L7.js +1 -0
- package/static/dashboard/assets/TasksPage-DPpAgn4C.css +1 -0
- package/static/dashboard/assets/WebDesktopEntry-Cj9_ZfJU.js +1 -0
- package/static/dashboard/assets/XpodAiConnectionsPodStore-B7gmXBmC.js +3 -0
- package/static/dashboard/assets/XpodShellApp-Bwom2xL3.css +1 -0
- package/static/dashboard/assets/XpodShellApp-D_KY4nCW.js +4 -0
- package/static/dashboard/assets/account-session-DlcKNG7k.js +1 -0
- package/static/dashboard/assets/button-wslF55uZ.js +1 -0
- package/static/dashboard/assets/collection-runtime-uxxgEu13.js +1 -0
- package/static/dashboard/assets/createLucideIcon-BJQl82Qk.js +1 -0
- package/static/dashboard/assets/dashboard-CbJ-JkrI.css +1 -0
- package/static/dashboard/assets/dashboard-Or0gnkou.js +12 -0
- package/static/dashboard/assets/index-BqFeOML9.js +1 -0
- package/static/dashboard/assets/index-DgKn1twH.js +20 -0
- package/static/dashboard/assets/label-CS6Sx6Zb.js +1 -0
- package/static/dashboard/assets/list-UyhlCFKk.js +1 -0
- package/static/dashboard/assets/nav-item-style-CW1Nnorq.js +1 -0
- package/static/dashboard/assets/pod-collections-host-DjK2xf-b.js +8 -0
- package/static/dashboard/assets/safe-continuation-ClWAhcma.js +1 -0
- package/static/dashboard/assets/section-header-CEIEcco-.js +1 -0
- package/static/dashboard/assets/setting-row-CaYv3dfF.js +1 -0
- package/static/dashboard/assets/xpod-remembered-login-BUF9fin1.js +310 -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-Chqd38oU.js +1 -0
- package/static/settings/assets/DesktopOidcCallback-VUrOSM_q.js +1 -0
- package/static/settings/assets/DevicePages-C6qwvWwu.js +2 -0
- package/static/settings/assets/ModelsPage-Ry_dObRQ.js +11 -0
- package/static/settings/assets/PaneListHeader-B5RkRqr4.js +1 -0
- package/static/settings/assets/PodDeletionAuthorizationPanel-DPM-5Izt.js +42 -0
- package/static/settings/assets/PodPage-CxND6wwc.js +1 -0
- package/static/settings/assets/SystemSettingsPage-C8EdMkW7.js +1 -0
- package/static/settings/assets/TasksPage-DPpAgn4C.css +1 -0
- package/static/settings/assets/TasksPage-DuqptEm8.js +1 -0
- package/static/settings/assets/WebDesktopEntry-BRcyktkv.js +1 -0
- package/static/settings/assets/XpodAiConnectionsPodStore-CyA_BJVC.js +3 -0
- package/static/settings/assets/XpodShellApp-Bwom2xL3.css +1 -0
- package/static/settings/assets/XpodShellApp-CsivHJl0.js +4 -0
- package/static/settings/assets/XpodThemeProvider-CbJ-JkrI.css +1 -0
- package/static/settings/assets/XpodThemeProvider-DK3pIdRG.js +12 -0
- package/static/settings/assets/account-session-DJOZ03xr.js +1 -0
- package/static/settings/assets/auth-callback-GIBYEz_7.js +1 -0
- package/static/settings/assets/button-D3yW-2o1.js +1 -0
- package/static/settings/assets/collection-runtime-DfGo25mh.js +1 -0
- package/static/settings/assets/createLucideIcon-CacwLsmB.js +1 -0
- package/static/settings/assets/index-r5KRYsKC.js +20 -0
- package/static/settings/assets/label-MJjUmvzG.js +1 -0
- package/static/settings/assets/list-Ce-5k1MX.js +1 -0
- package/static/settings/assets/nav-item-style-ZUbL8KOZ.js +1 -0
- package/static/settings/assets/pod-collections-host-DjK2xf-b.js +8 -0
- package/static/settings/assets/safe-continuation-vlBZFSlU.js +1 -0
- package/static/settings/assets/section-header-DGJdEvQw.js +1 -0
- package/static/settings/assets/setting-row-C7tuFiho.js +1 -0
- package/static/settings/assets/settings-CyQPih1O.js +1 -0
- package/static/settings/assets/xpod-remembered-login-D-TzzT5K.js +567 -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/pod-collections-host-KnnGFZHL.js +0 -8
- 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/pod-collections-host-KnnGFZHL.js +0 -8
- 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
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as t}from"./XpodThemeProvider-DK3pIdRG.js";function s({title:e}){return t.jsx("div",{className:"flex h-full items-center px-4 text-sm font-semibold text-foreground",children:e})}export{s as P};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/AccountAuthBoundary-Chqd38oU.js","assets/XpodThemeProvider-DK3pIdRG.js","assets/XpodThemeProvider-CbJ-JkrI.css","assets/button-D3yW-2o1.js","assets/account-session-DJOZ03xr.js","assets/xpod-remembered-login-D-TzzT5K.js","assets/createLucideIcon-CacwLsmB.js","assets/label-MJjUmvzG.js","assets/SystemSettingsPage-C8EdMkW7.js","assets/nav-item-style-ZUbL8KOZ.js","assets/PaneListHeader-B5RkRqr4.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{e as cn,r as o,j as u,R as ye,d as be,O as He,f as un,_ as rt}from"./XpodThemeProvider-DK3pIdRG.js";import{b as ot,c as T,u as se,i as ln,B as te,d as dn}from"./button-D3yW-2o1.js";var at=cn(),fn=Object.defineProperty,k=(e,t)=>fn(e,"name",{value:t,configurable:!0});function mn(e,t){const n=o.createContext(t);n.displayName=e+"Context";const r=k(s=>{const{children:i,...c}=s,l=o.useMemo(()=>c,Object.values(c));return u.jsx(n.Provider,{value:l,children:i})},"Provider");r.displayName=e+"Provider";function a(s,i={}){const{optional:c=!1}=i,l=o.useContext(n);if(l)return l;if(t!==void 0)return t;if(!c)throw new Error(`\`${s}\` must be used within \`${e}\``)}return k(a,"useContext"),[r,a]}k(mn,"createContext");function st(e,t=[]){let n=[];function r(s,i){const c=o.createContext(i);c.displayName=s+"Context";const l=n.length;n=[...n,i];const h=k(d=>{const{scope:f,children:y,...g}=d,v=f?.[e]?.[l]||c,m=o.useMemo(()=>g,Object.values(g));return u.jsx(v.Provider,{value:m,children:y})},"Provider");h.displayName=s+"Provider";function p(d,f,y={}){const{optional:g=!1}=y,v=f?.[e]?.[l]||c,m=o.useContext(v);if(m)return m;if(i!==void 0)return i;if(!g)throw new Error(`\`${d}\` must be used within \`${s}\``)}return k(p,"useContext"),[h,p]}k(r,"createContext");const a=k(()=>{const s=n.map(i=>o.createContext(i));return k(function(c){const l=c?.[e]||s;return o.useMemo(()=>({[`__scope${e}`]:{...c,[e]:l}}),[c,l])},"useScope")},"createScope");return a.scopeName=e,[r,it(a,...t)]}k(st,"createContextScope");function it(...e){const t=e[0];if(e.length===1)return t;const n=k(()=>{const r=e.map(a=>({useScope:a(),scopeName:a.scopeName}));return k(function(s){const i=r.reduce((c,{useScope:l,scopeName:h})=>{const d=l(s)[`__scope${h}`];return{...c,...d}},{});return o.useMemo(()=>({[`__scope${t.scopeName}`]:i}),[i])},"useComposedScopes")},"createScope");return n.scopeName=t.scopeName,n}k(it,"composeContextScopes");var pn=Object.defineProperty,vn=(e,t)=>pn(e,"name",{value:t,configurable:!0});function re(e){const t=o.useRef(e);return o.useEffect(()=>{t.current=e}),o.useMemo(()=>((...n)=>t.current?.(...n)),[])}vn(re,"useCallbackRef");var G=globalThis?.document?o.useLayoutEffect:()=>{},hn=Object.defineProperty,gn=(e,t)=>hn(e,"name",{value:t,configurable:!0}),yn=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],K=yn.reduce((e,t)=>{const n=ot(`Primitive.${t}`),r=o.forwardRef((a,s)=>{const{asChild:i,...c}=a,l=i?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),u.jsx(l,{...c,ref:s})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function ct(e,t){e&&at.flushSync(()=>e.dispatchEvent(t))}gn(ct,"dispatchDiscreteCustomEvent");const ut=o.forwardRef(({className:e,...t},n)=>u.jsx("div",{ref:n,className:T("rounded-2xl border border-border/50 bg-card shadow-lg shadow-black/5 transition-all duration-200",e),...t}));ut.displayName="Card";const lt=o.forwardRef(({className:e,...t},n)=>u.jsx("div",{ref:n,className:T("flex flex-col gap-1 p-6",e),...t}));lt.displayName="CardHeader";const dt=o.forwardRef(({className:e,...t},n)=>u.jsx("h3",{ref:n,className:T("text-2xl font-semibold tracking-tight",e),...t}));dt.displayName="CardTitle";const ft=o.forwardRef(({className:e,...t},n)=>u.jsx("p",{ref:n,className:T("text-sm text-muted-foreground",e),...t}));ft.displayName="CardDescription";const mt=o.forwardRef(({className:e,...t},n)=>u.jsx("div",{ref:n,className:T("p-6 pt-0",e),...t}));mt.displayName="CardContent";const bn=o.forwardRef(({className:e,...t},n)=>u.jsx("div",{ref:n,className:T("flex items-center p-6 pt-0",e),...t}));bn.displayName="CardFooter";const En=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),Cn=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase()),Ve=e=>{const t=Cn(e);return t.charAt(0).toUpperCase()+t.slice(1)},pt=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim(),wn=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0};var xn={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const Pn=o.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:a="",children:s,iconNode:i,...c},l)=>o.createElement("svg",{ref:l,...xn,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:pt("lucide",a),...!s&&!wn(c)&&{"aria-hidden":"true"},...c},[...i.map(([h,p])=>o.createElement(h,p)),...Array.isArray(s)?s:[s]]));const Dn=(e,t)=>{const n=o.forwardRef(({className:r,...a},s)=>o.createElement(Pn,{ref:s,iconNode:t,className:pt(`lucide-${En(Ve(e))}`,`lucide-${e}`,r),...a}));return n.displayName=Ve(e),n};const Sn=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Rn=Dn("x",Sn);var On=Object.defineProperty,oe=(e,t)=>On(e,"name",{value:t,configurable:!0}),vt=!!(typeof window<"u"&&window.document&&window.document.createElement);function B(e,t,{checkForDefaultPrevented:n=!0}={}){return oe(function(a){if(e?.(a),n===!1||!a||!a.defaultPrevented)return t?.(a)},"handleEvent")}oe(B,"composeEventHandlers");function Nn(e){if(!vt)throw new Error("Cannot access window outside of the DOM");return e?.ownerDocument?.defaultView??window}oe(Nn,"getOwnerWindow");function Oe(e){if(!vt)throw new Error("Cannot access document outside of the DOM");return e?.ownerDocument??document}oe(Oe,"getOwnerDocument");function ht(e,t=!1){const{activeElement:n}=Oe(e);if(!n?.nodeName)return null;if(gt(n)&&n.contentDocument)return ht(n.contentDocument.body,t);if(t){const r=n.getAttribute("aria-activedescendant");if(r){const a=Oe(n).getElementById(r);if(a)return a}}return n}oe(ht,"getActiveElement");function gt(e){return e.tagName==="IFRAME"}oe(gt,"isFrame");var _n=Object.defineProperty,R=(e,t)=>_n(e,"name",{value:t,configurable:!0}),Ne="dismissableLayer.update",An="dismissableLayer.pointerDownOutside",Tn="dismissableLayer.focusOutside",Xe,yt=o.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),In=o.forwardRef(R(function(t,n){const{disableOutsidePointerEvents:r=!1,deferPointerDownOutside:a=!1,onEscapeKeyDown:s,onPointerDownOutside:i,onFocusOutside:c,onInteractOutside:l,onDismiss:h,...p}=t,d=o.useContext(yt),[f,y]=o.useState(null),g=f?.ownerDocument??globalThis?.document,[,v]=o.useState({}),m=se(n,y),E=Array.from(d.layers),[C]=[...d.layersWithOutsidePointerEventsDisabled].slice(-1),w=C?E.indexOf(C):-1,P=f?E.indexOf(f):-1,x=d.layersWithOutsidePointerEventsDisabled.size>0,D=P>=w,N=o.useRef(!1),H=Et(b=>{i?.(b),l?.(b),b.defaultPrevented||h?.()},{ownerDocument:g,deferPointerDownOutside:a,isDeferredPointerDownOutsideRef:N,dismissableSurfaces:d.dismissableSurfaces,shouldHandlePointerDownOutside:o.useCallback(b=>{if(!(b instanceof Node))return!1;const S=[...d.branches].some(O=>O.contains(b));return D&&!S},[d.branches,D])}),V=Ct(b=>{if(a&&N.current)return;const S=b.target;[...d.branches].some(j=>j.contains(S))||(c?.(b),l?.(b),b.defaultPrevented||h?.())},g),q=f?P===E.length-1:!1,M=re(b=>{b.key==="Escape"&&(s?.(b),!b.defaultPrevented&&h&&(b.preventDefault(),h()))});return o.useEffect(()=>{if(q)return g.addEventListener("keydown",M,{capture:!0}),()=>g.removeEventListener("keydown",M,{capture:!0})},[g,q,M]),o.useEffect(()=>{if(f)return r&&(d.layersWithOutsidePointerEventsDisabled.size===0&&(Xe=g.body.style.pointerEvents,g.body.style.pointerEvents="none"),d.layersWithOutsidePointerEventsDisabled.add(f)),d.layers.add(f),_e(),()=>{r&&(d.layersWithOutsidePointerEventsDisabled.delete(f),d.layersWithOutsidePointerEventsDisabled.size===0&&(g.body.style.pointerEvents=Xe))}},[f,g,r,d]),o.useEffect(()=>()=>{f&&(d.layers.delete(f),d.layersWithOutsidePointerEventsDisabled.delete(f),_e())},[f,d]),o.useEffect(()=>{const b=R(()=>v({}),"handleUpdate");return document.addEventListener(Ne,b),()=>document.removeEventListener(Ne,b)},[]),u.jsx(K.div,{...p,ref:m,style:{pointerEvents:x?D?"auto":"none":void 0,...t.style},onFocusCapture:B(t.onFocusCapture,V.onFocusCapture),onBlurCapture:B(t.onBlurCapture,V.onBlurCapture),onPointerDownCapture:B(t.onPointerDownCapture,H.onPointerDownCapture)})},"DismissableLayer"));function bt(){const e=o.useContext(yt),[t,n]=o.useState(null);return o.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}R(bt,"useDismissableLayerSurface");var jn=R(()=>!0,"IS_TRUE");function Et(e,t){const{ownerDocument:n=globalThis?.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:a,dismissableSurfaces:s,shouldHandlePointerDownOutside:i=jn}=t,c=re(e),l=o.useRef(!1),h=o.useRef(!1),p=o.useRef(new Map),d=o.useRef(()=>{});return o.useEffect(()=>{function f(){h.current=!1,a.current=!1,p.current.clear()}R(f,"resetOutsideInteraction");function y(){return Array.from(p.current.values()).some(Boolean)}R(y,"isOutsideInteractionIntercepted");function g(w){if(!h.current)return;const P=w.target;P instanceof Node&&[...s].some(D=>D.contains(P))||p.current.set(w.type,!0),w.type==="click"&&window.setTimeout(()=>{h.current&&d.current()},0)}R(g,"handleInteractionCapture");function v(w){h.current&&p.current.set(w.type,!1)}R(v,"handleInteractionBubble");const m=R(w=>{if(w.target&&!l.current){let P=function(){n.removeEventListener("click",d.current);const D=y();f(),D||Me(An,c,x,{discrete:!0})};if(R(P,"handleAndDispatchPointerDownOutsideEvent"),!i(w.target)){n.removeEventListener("click",d.current),f(),l.current=!1;return}const x={originalEvent:w};h.current=!0,a.current=r&&w.button===0,p.current.clear(),!r||w.button!==0?P():(n.removeEventListener("click",d.current),d.current=P,n.addEventListener("click",d.current,{once:!0}))}else n.removeEventListener("click",d.current),f();l.current=!1},"handlePointerDown"),E=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(const w of E)n.addEventListener(w,g,!0),n.addEventListener(w,v);const C=window.setTimeout(()=>{n.addEventListener("pointerdown",m)},0);return()=>{window.clearTimeout(C),n.removeEventListener("pointerdown",m),n.removeEventListener("click",d.current);for(const w of E)n.removeEventListener(w,g,!0),n.removeEventListener(w,v)}},[n,c,r,a,s,i]),{onPointerDownCapture:R(()=>l.current=!0,"onPointerDownCapture")}}R(Et,"usePointerDownOutside");function Ct(e,t=globalThis?.document){const n=re(e),r=o.useRef(!1);return o.useEffect(()=>{const a=R(s=>{s.target&&!r.current&&Me(Tn,n,{originalEvent:s},{discrete:!1})},"handleFocus");return t.addEventListener("focusin",a),()=>t.removeEventListener("focusin",a)},[t,n]),{onFocusCapture:R(()=>r.current=!0,"onFocusCapture"),onBlurCapture:R(()=>r.current=!1,"onBlurCapture")}}R(Ct,"useFocusOutside");function _e(){const e=new CustomEvent(Ne);document.dispatchEvent(e)}R(_e,"dispatchUpdate");function Me(e,t,n,{discrete:r}){const a=n.originalEvent.target,s=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&a.addEventListener(e,t,{once:!0}),r?ct(a,s):a.dispatchEvent(s)}R(Me,"handleAndDispatchCustomEvent");var Ln=Object.defineProperty,kn=(e,t)=>Ln(e,"name",{value:t,configurable:!0}),Mn=ye[" useId ".trim().toString()]||(()=>{}),Fn=0;function ve(e){const[t,n]=o.useState(Mn());return G(()=>{e||n(r=>r??String(Fn++))},[e]),e||(t?`radix-${t}`:"")}kn(ve,"useId");var Un=Object.defineProperty,$n=(e,t)=>Un(e,"name",{value:t,configurable:!0}),Wn=o.forwardRef($n(function(t,n){const{container:r,...a}=t,[s,i]=o.useState(!1);G(()=>i(!0),[]);const c=r||s&&globalThis?.document?.body;return c?at.createPortal(u.jsx(K.div,{...a,ref:n}),c):null},"Portal")),Bn=Object.defineProperty,z=(e,t)=>Bn(e,"name",{value:t,configurable:!0});function wt(e,t){return o.useReducer((n,r)=>t[n][r]??n,e)}z(wt,"useStateMachine");var Fe=z(e=>{const{present:t,children:n}=e,r=xt(t),a=typeof n=="function"?n({present:r.isPresent}):o.Children.only(n),s=Pt(r.ref,Dt(a));return typeof n=="function"||r.isPresent?o.cloneElement(a,{ref:s}):null},"Presence");function xt(e){const[t,n]=o.useState(),r=o.useRef(null),a=o.useRef(e),s=o.useRef("none"),i=o.useRef(void 0),c=e?"mounted":"unmounted",[l,h]=wt(c,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return o.useEffect(()=>{l==="mounted"?(s.current=i.current??ee(r.current),i.current=void 0):s.current="none"},[l]),G(()=>{const p=r.current,d=a.current;if(d!==e){const y=s.current,g=ee(p);e?(i.current=g,h("MOUNT")):g==="none"||p?.display==="none"?h("UNMOUNT"):h(d&&y!==g?"ANIMATION_OUT":"UNMOUNT"),a.current=e}},[e,h]),G(()=>{if(t){let p;const d=t.ownerDocument.defaultView??window,f=z(g=>{const m=ee(r.current).includes(CSS.escape(g.animationName));if(g.target===t&&m&&(h("ANIMATION_END"),!a.current)){const E=t.style.animationFillMode;t.style.animationFillMode="forwards",p=d.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=E)})}},"handleAnimationEnd"),y=z(g=>{g.target===t&&(s.current=ee(r.current))},"handleAnimationStart");return t.addEventListener("animationstart",y),t.addEventListener("animationcancel",f),t.addEventListener("animationend",f),()=>{d.clearTimeout(p),t.removeEventListener("animationstart",y),t.removeEventListener("animationcancel",f),t.removeEventListener("animationend",f)}}else h("ANIMATION_END")},[t,h]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:o.useCallback(p=>{if(p){const d=getComputedStyle(p);r.current=d,i.current=ee(d)}else r.current=null;n(p)},[])}}z(xt,"usePresence");function Ae(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}z(Ae,"setRef");function Pt(...e){const t=o.useRef(e);return t.current=e,o.useCallback(n=>{const r=t.current;let a=!1;const s=r.map(i=>{const c=Ae(i,n);return!a&&typeof c=="function"&&(a=!0),c});if(a)return()=>{for(let i=0;i<s.length;i++){const c=s[i];typeof c=="function"?c():Ae(r[i],null)}}},[])}z(Pt,"useStableComposedRefs");function ee(e){return e?.animationName||"none"}z(ee,"getAnimationName");function Dt(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}z(Dt,"getElementRef");var zn=Object.defineProperty,Hn=(e,t)=>zn(e,"name",{value:t,configurable:!0}),Ge=ye[" useEffectEvent ".trim().toString()],Ke=ye[" useInsertionEffect ".trim().toString()];function St(e){if(typeof Ge=="function")return Ge(e);const t=o.useRef(()=>{throw new Error("Cannot call an event handler while rendering.")});return typeof Ke=="function"?Ke(()=>{t.current=e}):G(()=>{t.current=e}),o.useMemo(()=>((...n)=>t.current?.(...n)),[])}Hn(St,"useEffectEvent");var Vn=Object.defineProperty,ie=(e,t)=>Vn(e,"name",{value:t,configurable:!0}),Xn=ye[" useInsertionEffect ".trim().toString()]||G;function Rt({prop:e,defaultProp:t,onChange:n=ie(()=>{},"onChange"),caller:r}){const[a,s,i]=Ot({defaultProp:t,onChange:n}),c=e!==void 0,l=c?e:a,h=o.useCallback(p=>{if(c){const d=Nt(p)?p(e):p;d!==e&&i.current?.(d)}else s(p)},[c,e,s,i]);return[l,h]}ie(Rt,"useControllableState");function Ot({defaultProp:e,onChange:t}){const[n,r]=o.useState(e),a=o.useRef(n),s=o.useRef(t);return Xn(()=>{s.current=t},[t]),o.useEffect(()=>{a.current!==n&&(s.current?.(n),a.current=n)},[n,a]),[n,r,s]}ie(Ot,"useUncontrolledState");function Nt(e){return typeof e=="function"}ie(Nt,"isFunction");var qe=Symbol("RADIX:SYNC_STATE");function Gn(e,t,n,r){const{prop:a,defaultProp:s,onChange:i,caller:c}=t,l=a!==void 0,h=St(i),p=[{...n,state:s}];r&&p.push(r);const[d,f]=o.useReducer((m,E)=>{if(E.type===qe)return{...m,state:E.state};const C=e(m,E);return l&&!Object.is(C.state,m.state)&&h(C.state),C},...p),y=d.state,g=o.useRef(y);o.useEffect(()=>{g.current!==y&&(g.current=y,l||h(y))},[y,g,l]);const v=o.useMemo(()=>a!==void 0?{...d,state:a}:d,[d,a]);return o.useEffect(()=>{l&&!Object.is(a,d.state)&&f({type:qe,state:a})},[a,d.state,l]),[v,f]}ie(Gn,"useControllableStateReducer");var Kn=Object.defineProperty,A=(e,t)=>Kn(e,"name",{value:t,configurable:!0}),we="focusScope.autoFocusOnMount",xe="focusScope.autoFocusOnUnmount",Ye={bubbles:!1,cancelable:!0},qn=o.forwardRef(A(function(t,n){const{loop:r=!1,trapped:a=!1,onMountAutoFocus:s,onUnmountAutoFocus:i,...c}=t,[l,h]=o.useState(null),p=re(s),d=re(i),f=o.useRef(null),y=se(n,h),g=o.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;o.useEffect(()=>{if(a){let m=function(P){if(g.paused||!l)return;const x=P.target;l.contains(x)?f.current=x:W(f.current,{select:!0})},E=function(P){if(g.paused||!l)return;const x=P.relatedTarget;x!==null&&(l.contains(x)||W(f.current,{select:!0}))},C=function(P){if(document.activeElement===document.body)for(const D of P)D.removedNodes.length>0&&W(l)};A(m,"handleFocusIn"),A(E,"handleFocusOut"),A(C,"handleMutations"),document.addEventListener("focusin",m),document.addEventListener("focusout",E);const w=new MutationObserver(C);return l&&w.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",m),document.removeEventListener("focusout",E),w.disconnect()}}},[a,l,g.paused]),o.useEffect(()=>{if(l){Ze.add(g);const m=document.activeElement;if(!l.contains(m)){const C=new CustomEvent(we,Ye);l.addEventListener(we,p),l.dispatchEvent(C),C.defaultPrevented||(_t(Lt(Ue(l)),{select:!0}),document.activeElement===m&&W(l))}return()=>{l.removeEventListener(we,p),setTimeout(()=>{const C=new CustomEvent(xe,Ye);l.addEventListener(xe,d),l.dispatchEvent(C),C.defaultPrevented||W(m??document.body,{select:!0}),l.removeEventListener(xe,d),Ze.remove(g)},0)}}},[l,p,d,g]);const v=o.useCallback(m=>{if(!r&&!a||g.paused)return;const E=m.key==="Tab"&&!m.altKey&&!m.ctrlKey&&!m.metaKey,C=document.activeElement;if(E&&C){const w=m.currentTarget,[P,x]=At(w);P&&x?!m.shiftKey&&C===x?(m.preventDefault(),r&&W(P,{select:!0})):m.shiftKey&&C===P&&(m.preventDefault(),r&&W(x,{select:!0})):C===w&&m.preventDefault()}},[r,a,g.paused]);return u.jsx(K.div,{tabIndex:-1,...c,ref:y,onKeyDown:v})},"FocusScope"));function _t(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(W(r,{select:t}),document.activeElement!==n)return}A(_t,"focusFirst");function At(e){const t=Ue(e),n=Te(t,e),r=Te(t.reverse(),e);return[n,r]}A(At,"getTabbableEdges");function Ue(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:A(r=>{const a=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||a?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;n.nextNode();)t.push(n.currentNode);return t}A(Ue,"getTabbableCandidates");function Te(e,t){const n=typeof t.checkVisibility=="function"&&t.checkVisibility({checkVisibilityCSS:!0});for(const r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):Tt(r,{upTo:t})))return r}A(Te,"findVisible");function Tt(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}A(Tt,"isHidden");function It(e){return e instanceof HTMLInputElement&&"select"in e}A(It,"isSelectableInput");function W(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&It(e)&&t&&e.select()}}A(W,"focus");var Ze=jt();function jt(){let e=[];return{add(t){const n=e[0];t!==n&&n?.pause(),e=Ie(e,t),e.unshift(t)},remove(t){e=Ie(e,t),e[0]?.resume()}}}A(jt,"createFocusScopesStack");function Ie(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}A(Ie,"arrayRemove");function Lt(e){return e.filter(t=>t.tagName!=="A")}A(Lt,"removeLinks");var Yn=Object.defineProperty,$e=(e,t)=>Yn(e,"name",{value:t,configurable:!0}),ue=0,Y=null;function Zn(e){return We(),e.children}$e(Zn,"FocusGuards");function We(){o.useEffect(()=>{Y||(Y={start:je(),end:je()});const{start:e,end:t}=Y;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),ue++,()=>{ue===1&&(Y?.start.remove(),Y?.end.remove(),Y=null),ue=Math.max(0,ue-1)}},[])}$e(We,"useFocusGuards");function je(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}$e(je,"createFocusGuard");var U=function(){return U=Object.assign||function(t){for(var n,r=1,a=arguments.length;r<a;r++){n=arguments[r];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(t[s]=n[s])}return t},U.apply(this,arguments)};function kt(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,r=Object.getOwnPropertySymbols(e);a<r.length;a++)t.indexOf(r[a])<0&&Object.prototype.propertyIsEnumerable.call(e,r[a])&&(n[r[a]]=e[r[a]]);return n}function Qn(e,t,n){if(n||arguments.length===2)for(var r=0,a=t.length,s;r<a;r++)(s||!(r in t))&&(s||(s=Array.prototype.slice.call(t,0,r)),s[r]=t[r]);return e.concat(s||Array.prototype.slice.call(t))}var he="right-scroll-bar-position",ge="width-before-scroll-bar",Jn="with-scroll-bars-hidden",er="--removed-body-scroll-bar-size";function Pe(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function tr(e,t){var n=o.useState(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(r){var a=n.value;a!==r&&(n.value=r,n.callback(r,a))}}}})[0];return n.callback=t,n.facade}var nr=typeof window<"u"?o.useLayoutEffect:o.useEffect,Qe=new WeakMap;function rr(e,t){var n=tr(null,function(r){return e.forEach(function(a){return Pe(a,r)})});return nr(function(){var r=Qe.get(n);if(r){var a=new Set(r),s=new Set(e),i=n.current;a.forEach(function(c){s.has(c)||Pe(c,null)}),s.forEach(function(c){a.has(c)||Pe(c,i)})}Qe.set(n,e)},[e]),n}function or(e){return e}function ar(e,t){t===void 0&&(t=or);var n=[],r=!1,a={read:function(){if(r)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(s){var i=t(s,r);return n.push(i),function(){n=n.filter(function(c){return c!==i})}},assignSyncMedium:function(s){for(r=!0;n.length;){var i=n;n=[],i.forEach(s)}n={push:function(c){return s(c)},filter:function(){return n}}},assignMedium:function(s){r=!0;var i=[];if(n.length){var c=n;n=[],c.forEach(s),i=n}var l=function(){var p=i;i=[],p.forEach(s)},h=function(){return Promise.resolve().then(l)};h(),n={push:function(p){i.push(p),h()},filter:function(p){return i=i.filter(p),n}}}};return a}function sr(e){e===void 0&&(e={});var t=ar(null);return t.options=U({async:!0,ssr:!1},e),t}var Mt=function(e){var t=e.sideCar,n=kt(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw new Error("Sidecar medium not found");return o.createElement(r,U({},n))};Mt.isSideCarExport=!0;function ir(e,t){return e.useMedium(t),Mt}var Ft=sr(),De=function(){},Ee=o.forwardRef(function(e,t){var n=o.useRef(null),r=o.useState({onScrollCapture:De,onWheelCapture:De,onTouchMoveCapture:De}),a=r[0],s=r[1],i=e.forwardProps,c=e.children,l=e.className,h=e.removeScrollBar,p=e.enabled,d=e.shards,f=e.sideCar,y=e.noRelative,g=e.noIsolation,v=e.inert,m=e.allowPinchZoom,E=e.as,C=E===void 0?"div":E,w=e.gapMode,P=kt(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),x=f,D=rr([n,t]),N=U(U({},P),a);return o.createElement(o.Fragment,null,p&&o.createElement(x,{sideCar:Ft,removeScrollBar:h,shards:d,noRelative:y,noIsolation:g,inert:v,setCallbacks:s,allowPinchZoom:!!m,lockRef:n,gapMode:w}),i?o.cloneElement(o.Children.only(c),U(U({},N),{ref:D})):o.createElement(C,U({},N,{className:l,ref:D}),c))});Ee.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};Ee.classNames={fullWidth:ge,zeroRight:he};var cr=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function ur(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=cr();return t&&e.setAttribute("nonce",t),e}function lr(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function dr(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var fr=function(){var e=0,t=null;return{add:function(n){e==0&&(t=ur())&&(lr(t,n),dr(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},mr=function(){var e=fr();return function(t,n){o.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},Ut=function(){var e=mr(),t=function(n){var r=n.styles,a=n.dynamic;return e(r,a),null};return t},pr={left:0,top:0,right:0,gap:0},Se=function(e){return parseInt(e||"",10)||0},vr=function(e){var t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],r=t[e==="padding"?"paddingTop":"marginTop"],a=t[e==="padding"?"paddingRight":"marginRight"];return[Se(n),Se(r),Se(a)]},hr=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return pr;var t=vr(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},gr=Ut(),ne="data-scroll-locked",yr=function(e,t,n,r){var a=e.left,s=e.top,i=e.right,c=e.gap;return n===void 0&&(n="margin"),`
|
|
3
|
+
.`.concat(Jn,` {
|
|
4
|
+
overflow: hidden `).concat(r,`;
|
|
5
|
+
padding-right: `).concat(c,"px ").concat(r,`;
|
|
6
|
+
}
|
|
7
|
+
body[`).concat(ne,`] {
|
|
8
|
+
overflow: hidden `).concat(r,`;
|
|
9
|
+
overscroll-behavior: contain;
|
|
10
|
+
`).concat([t&&"position: relative ".concat(r,";"),n==="margin"&&`
|
|
11
|
+
padding-left: `.concat(a,`px;
|
|
12
|
+
padding-top: `).concat(s,`px;
|
|
13
|
+
padding-right: `).concat(i,`px;
|
|
14
|
+
margin-left:0;
|
|
15
|
+
margin-top:0;
|
|
16
|
+
margin-right: `).concat(c,"px ").concat(r,`;
|
|
17
|
+
`),n==="padding"&&"padding-right: ".concat(c,"px ").concat(r,";")].filter(Boolean).join(""),`
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.`).concat(he,` {
|
|
21
|
+
right: `).concat(c,"px ").concat(r,`;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.`).concat(ge,` {
|
|
25
|
+
margin-right: `).concat(c,"px ").concat(r,`;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.`).concat(he," .").concat(he,` {
|
|
29
|
+
right: 0 `).concat(r,`;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.`).concat(ge," .").concat(ge,` {
|
|
33
|
+
margin-right: 0 `).concat(r,`;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
body[`).concat(ne,`] {
|
|
37
|
+
`).concat(er,": ").concat(c,`px;
|
|
38
|
+
}
|
|
39
|
+
`)},Je=function(){var e=parseInt(document.body.getAttribute(ne)||"0",10);return isFinite(e)?e:0},br=function(){o.useEffect(function(){return document.body.setAttribute(ne,(Je()+1).toString()),function(){var e=Je()-1;e<=0?document.body.removeAttribute(ne):document.body.setAttribute(ne,e.toString())}},[])},Er=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,a=r===void 0?"margin":r;br();var s=o.useMemo(function(){return hr(a)},[a]);return o.createElement(gr,{styles:yr(s,!t,a,n?"":"!important")})},Le=!1;if(typeof window<"u")try{var le=Object.defineProperty({},"passive",{get:function(){return Le=!0,!0}});window.addEventListener("test",le,le),window.removeEventListener("test",le,le)}catch{Le=!1}var Z=Le?{passive:!1}:!1,Cr=function(e){return e.tagName==="TEXTAREA"},$t=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!Cr(e)&&n[t]==="visible")},wr=function(e){return $t(e,"overflowY")},xr=function(e){return $t(e,"overflowX")},et=function(e,t){var n=t.ownerDocument,r=t;do{typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&(r=r.host);var a=Wt(e,r);if(a){var s=Bt(e,r),i=s[1],c=s[2];if(i>c)return!0}r=r.parentNode}while(r&&r!==n.body);return!1},Pr=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},Dr=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},Wt=function(e,t){return e==="v"?wr(t):xr(t)},Bt=function(e,t){return e==="v"?Pr(t):Dr(t)},Sr=function(e,t){return e==="h"&&t==="rtl"?-1:1},Rr=function(e,t,n,r,a){var s=Sr(e,window.getComputedStyle(t).direction),i=s*r,c=n.target,l=t.contains(c),h=!1,p=i>0,d=0,f=0;do{if(!c)break;var y=Bt(e,c),g=y[0],v=y[1],m=y[2],E=v-m-s*g;(g||E)&&Wt(e,c)&&(d+=E,f+=g);var C=c.parentNode;c=C&&C.nodeType===Node.DOCUMENT_FRAGMENT_NODE?C.host:C}while(!l&&c!==document.body||l&&(t.contains(c)||t===c));return(p&&Math.abs(d)<1||!p&&Math.abs(f)<1)&&(h=!0),h},de=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},tt=function(e){return[e.deltaX,e.deltaY]},nt=function(e){return e&&"current"in e?e.current:e},Or=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Nr=function(e){return`
|
|
40
|
+
.block-interactivity-`.concat(e,` {pointer-events: none;}
|
|
41
|
+
.allow-interactivity-`).concat(e,` {pointer-events: all;}
|
|
42
|
+
`)},_r=0,Q=[];function Ar(e){var t=o.useRef([]),n=o.useRef([0,0]),r=o.useRef(),a=o.useState(_r++)[0],s=o.useState(Ut)[0],i=o.useRef(e);o.useEffect(function(){i.current=e},[e]),o.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(a));var v=Qn([e.lockRef.current],(e.shards||[]).map(nt),!0).filter(Boolean);return v.forEach(function(m){return m.classList.add("allow-interactivity-".concat(a))}),function(){document.body.classList.remove("block-interactivity-".concat(a)),v.forEach(function(m){return m.classList.remove("allow-interactivity-".concat(a))})}}},[e.inert,e.lockRef.current,e.shards]);var c=o.useCallback(function(v,m){if("touches"in v&&v.touches.length===2||v.type==="wheel"&&v.ctrlKey)return!i.current.allowPinchZoom;var E=de(v),C=n.current,w="deltaX"in v?v.deltaX:C[0]-E[0],P="deltaY"in v?v.deltaY:C[1]-E[1],x,D=v.target,N=Math.abs(w)>Math.abs(P)?"h":"v";if("touches"in v&&N==="h"&&D.type==="range")return!1;var H=window.getSelection(),V=H&&H.anchorNode,q=V?V===D||V.contains(D):!1;if(q)return!1;var M=et(N,D);if(!M)return!0;if(M?x=N:(x=N==="v"?"h":"v",M=et(N,D)),!M)return!1;if(!r.current&&"changedTouches"in v&&(w||P)&&(r.current=x),!x)return!0;var b=r.current||x;return Rr(b,m,v,b==="h"?w:P)},[]),l=o.useCallback(function(v){var m=v;if(!(!Q.length||Q[Q.length-1]!==s)){var E="deltaY"in m?tt(m):de(m),C=t.current.filter(function(x){return x.name===m.type&&(x.target===m.target||m.target===x.shadowParent)&&Or(x.delta,E)})[0];if(C&&C.should){m.cancelable&&m.preventDefault();return}if(!C){var w=(i.current.shards||[]).map(nt).filter(Boolean).filter(function(x){return x.contains(m.target)}),P=w.length>0?c(m,w[0]):!i.current.noIsolation;P&&m.cancelable&&m.preventDefault()}}},[]),h=o.useCallback(function(v,m,E,C){var w={name:v,delta:m,target:E,should:C,shadowParent:Tr(E)};t.current.push(w),setTimeout(function(){t.current=t.current.filter(function(P){return P!==w})},1)},[]),p=o.useCallback(function(v){n.current=de(v),r.current=void 0},[]),d=o.useCallback(function(v){h(v.type,tt(v),v.target,c(v,e.lockRef.current))},[]),f=o.useCallback(function(v){h(v.type,de(v),v.target,c(v,e.lockRef.current))},[]);o.useEffect(function(){return Q.push(s),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener("wheel",l,Z),document.addEventListener("touchmove",l,Z),document.addEventListener("touchstart",p,Z),function(){Q=Q.filter(function(v){return v!==s}),document.removeEventListener("wheel",l,Z),document.removeEventListener("touchmove",l,Z),document.removeEventListener("touchstart",p,Z)}},[]);var y=e.removeScrollBar,g=e.inert;return o.createElement(o.Fragment,null,g?o.createElement(s,{styles:Nr(a)}):null,y?o.createElement(Er,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Tr(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const Ir=ir(Ft,Ar);var zt=o.forwardRef(function(e,t){return o.createElement(Ee,U({},e,{ref:t,sideCar:Ir}))});zt.classNames=Ee.classNames;var jr=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},J=new WeakMap,fe=new WeakMap,me={},Re=0,Ht=function(e){return e&&(e.host||Ht(e.parentNode))},Lr=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=Ht(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},kr=function(e,t,n,r){var a=Lr(t,Array.isArray(e)?e:[e]);me[n]||(me[n]=new WeakMap);var s=me[n],i=[],c=new Set,l=new Set(a),h=function(d){!d||c.has(d)||(c.add(d),h(d.parentNode))};a.forEach(h);var p=function(d){!d||l.has(d)||Array.prototype.forEach.call(d.children,function(f){if(c.has(f))p(f);else try{var y=f.getAttribute(r),g=y!==null&&y!=="false",v=(J.get(f)||0)+1,m=(s.get(f)||0)+1;J.set(f,v),s.set(f,m),i.push(f),v===1&&g&&fe.set(f,!0),m===1&&f.setAttribute(n,"true"),g||f.setAttribute(r,"true")}catch(E){console.error("aria-hidden: cannot operate on ",f,E)}})};return p(t),c.clear(),Re++,function(){i.forEach(function(d){var f=J.get(d)-1,y=s.get(d)-1;J.set(d,f),s.set(d,y),f||(fe.has(d)||d.removeAttribute(r),fe.delete(d)),y||d.removeAttribute(n)}),Re--,Re||(J=new WeakMap,J=new WeakMap,fe=new WeakMap,me={})}},Mr=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),a=jr(e);return a?(r.push.apply(r,Array.from(a.querySelectorAll("[aria-live], script"))),kr(r,a,n,"aria-hidden")):function(){return null}},Fr=Object.defineProperty,I=(e,t)=>Fr(e,"name",{value:t,configurable:!0}),Be="Dialog",[Vt,mo]=st(Be),[Ur,F]=Vt(Be),$r=I(e=>{const{__scopeDialog:t,children:n,open:r,defaultOpen:a,onOpenChange:s,modal:i=!0}=e,c=o.useRef(null),l=o.useRef(null),[h,p]=Rt({prop:r,defaultProp:a??!1,onChange:s,caller:Be}),[d,f]=o.useState(0),[y,g]=o.useState(0);return u.jsx(Ur,{scope:t,triggerRef:c,contentRef:l,contentId:ve(),titleId:ve(),descriptionId:ve(),titlePresent:d>0,descriptionPresent:y>0,setTitleCount:f,setDescriptionCount:g,open:h,onOpenChange:p,onOpenToggle:o.useCallback(()=>p(v=>!v),[p]),modal:i,children:n})},"Dialog"),Wr="DialogTrigger",Br=o.forwardRef(I(function(t,n){const{__scopeDialog:r,...a}=t,s=F(Wr,r),i=se(n,s.triggerRef);return u.jsx(K.button,{type:"button","aria-haspopup":"dialog","aria-expanded":s.open,"aria-controls":s.open?s.contentId:void 0,"data-state":Ce(s.open),...a,ref:i,onClick:B(t.onClick,s.onOpenToggle)})},"DialogTrigger")),Xt="DialogPortal",[zr,Gt]=Vt(Xt,{forceMount:void 0}),Hr=I(e=>{const{__scopeDialog:t,forceMount:n,children:r,container:a}=e,s=F(Xt,t);return u.jsx(zr,{scope:t,forceMount:n,children:o.Children.map(r,i=>u.jsx(Fe,{present:n||s.open,children:u.jsx(Wn,{asChild:!0,container:a,children:i})}))})},"DialogPortal"),ke="DialogOverlay",Kt=o.forwardRef(I(function(t,n){const r=Gt(ke,t.__scopeDialog),{forceMount:a=r.forceMount,...s}=t,i=F(ke,t.__scopeDialog);return i.modal?u.jsx(Fe,{present:a||i.open,children:u.jsx(Xr,{...s,ref:n})}):null},"DialogOverlay")),Vr=ot("DialogOverlay.RemoveScroll"),Xr=o.forwardRef(I(function(t,n){const{__scopeDialog:r,...a}=t,s=F(ke,r),i=bt(),c=se(n,i);return u.jsx(zt,{as:Vr,allowPinchZoom:!0,shards:[s.contentRef],children:u.jsx(K.div,{"data-state":Ce(s.open),...a,ref:c,style:{pointerEvents:"auto",...a.style}})})},"DialogOverlayImpl")),ae="DialogContent",qt=o.forwardRef(I(function(t,n){const r=Gt(ae,t.__scopeDialog),{forceMount:a=r.forceMount,...s}=t,i=F(ae,t.__scopeDialog);return u.jsx(Fe,{present:a||i.open,children:i.modal?u.jsx(Gr,{...s,ref:n}):u.jsx(Kr,{...s,ref:n})})},"DialogContent")),Gr=o.forwardRef(I(function(t,n){const r=F(ae,t.__scopeDialog),a=o.useRef(null),s=se(n,r.contentRef,a);return o.useEffect(()=>{const i=a.current;if(i)return Mr(i)},[]),u.jsx(Yt,{...t,ref:s,trapFocus:r.open,disableOutsidePointerEvents:r.open,onCloseAutoFocus:B(t.onCloseAutoFocus,i=>{i.preventDefault(),r.triggerRef.current?.focus()}),onPointerDownOutside:B(t.onPointerDownOutside,i=>{const c=i.detail.originalEvent,l=c.button===0&&c.ctrlKey===!0;(c.button===2||l)&&i.preventDefault()}),onFocusOutside:B(t.onFocusOutside,i=>i.preventDefault())})},"DialogContentModal")),Kr=o.forwardRef(I(function(t,n){const r=F(ae,t.__scopeDialog),a=o.useRef(!1),s=o.useRef(!1);return u.jsx(Yt,{...t,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:i=>{t.onCloseAutoFocus?.(i),i.defaultPrevented||(a.current||r.triggerRef.current?.focus(),i.preventDefault()),a.current=!1,s.current=!1},onInteractOutside:i=>{t.onInteractOutside?.(i),i.defaultPrevented||(a.current=!0,i.detail.originalEvent.type==="pointerdown"&&(s.current=!0));const c=i.target;r.triggerRef.current?.contains(c)&&i.preventDefault(),i.detail.originalEvent.type==="focusin"&&s.current&&i.preventDefault()}})},"DialogContentNonModal")),Yt=o.forwardRef(I(function(t,n){const{__scopeDialog:r,trapFocus:a,onOpenAutoFocus:s,onCloseAutoFocus:i,...c}=t,l=F(ae,r);return We(),u.jsx(u.Fragment,{children:u.jsx(qn,{asChild:!0,loop:!0,trapped:a,onMountAutoFocus:s,onUnmountAutoFocus:i,children:u.jsx(In,{role:"dialog",id:l.contentId,"aria-describedby":l.descriptionPresent?l.descriptionId:void 0,"aria-labelledby":l.titlePresent?l.titleId:void 0,"data-state":Ce(l.open),...c,ref:n,deferPointerDownOutside:!0,onDismiss:()=>l.onOpenChange(!1)})})})},"DialogContentImpl")),qr="DialogTitle",Zt=o.forwardRef(I(function(t,n){const{__scopeDialog:r,...a}=t,s=F(qr,r),{setTitleCount:i}=s;return G(()=>(i(c=>c+1),()=>i(c=>c-1)),[i]),u.jsx(K.h2,{id:s.titleId,...a,ref:n})},"DialogTitle")),Yr="DialogDescription",Qt=o.forwardRef(I(function(t,n){const{__scopeDialog:r,...a}=t,s=F(Yr,r),{setDescriptionCount:i}=s;return G(()=>(i(c=>c+1),()=>i(c=>c-1)),[i]),u.jsx(K.p,{id:s.descriptionId,...a,ref:n})},"DialogDescription")),Zr="DialogClose",Qr=o.forwardRef(I(function(t,n){const{__scopeDialog:r,...a}=t,s=F(Zr,r);return u.jsx(K.button,{type:"button",...a,ref:n,onClick:B(t.onClick,()=>s.onOpenChange(!1))})},"DialogClose"));function Ce(e){return e?"open":"closed"}I(Ce,"getState");const Jr=$r,po=Br,eo=Hr,Jt=o.forwardRef(({className:e,...t},n)=>u.jsx(Kt,{ref:n,className:T("fixed inset-0 z-[var(--layer-backdrop)] xpod-overlay-scrim","data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t}));Jt.displayName=Kt.displayName;const en=o.forwardRef(({className:e,children:t,variant:n="center",closeLabel:r="Close",closeDisabled:a=!1,hideCloseButton:s=!1,...i},c)=>u.jsxs(eo,{children:[u.jsx(Jt,{}),u.jsxs(qt,{ref:c,className:T(n==="sheet-left"?"fixed inset-y-0 left-0 z-[var(--layer-modal)] flex h-dvh w-[min(88vw,320px)] flex-col border-r bg-background p-0 shadow-[16px_0_30px_rgba(15,23,42,0.08)] duration-200 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]:slide-out-to-left-full data-[state=open]:slide-in-from-left-full rounded-none":n==="sheet-right"?"fixed inset-y-0 right-0 z-[var(--layer-modal)] flex h-dvh w-full max-w-4xl flex-col border-l bg-background p-0 shadow-[-16px_0_30px_rgba(15,23,42,0.08)] duration-200 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]:slide-out-to-right-full data-[state=open]:slide-in-from-right-full rounded-none":"fixed left-[50%] top-[50%] z-[var(--layer-modal)] grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 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-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] rounded-lg",e),...i,children:[t,s?null:u.jsxs(Qr,{disabled:a,className:T("absolute right-4 top-4 rounded-xl opacity-70 transition-all hover:opacity-100 hover:bg-muted/50 p-1 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",ln),children:[u.jsx(Rn,{className:"h-4 w-4"}),u.jsx("span",{className:"sr-only",children:r})]})]})]}));en.displayName=qt.displayName;const tn=({className:e,...t})=>u.jsx("div",{className:T("flex flex-col space-y-1.5 text-center sm:text-left",e),...t});tn.displayName="DialogHeader";const nn=({className:e,...t})=>u.jsx("div",{className:T("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});nn.displayName="DialogFooter";const rn=o.forwardRef(({className:e,...t},n)=>u.jsx(Zt,{ref:n,className:T("text-lg font-semibold leading-none tracking-tight",e),...t}));rn.displayName=Zt.displayName;const on=o.forwardRef(({className:e,...t},n)=>u.jsx(Qt,{ref:n,className:T("text-sm text-muted-foreground",e),...t}));on.displayName=Qt.displayName;function to({open:e,onOpenChange:t,title:n,description:r,children:a,confirmLabel:s,cancelLabel:i,pending:c=!1,error:l,onConfirm:h,confirmVariant:p="destructive"}){const d=o.useRef(null),f=o.useRef(null);return u.jsx(Jr,{open:e,onOpenChange:y=>{c||t(y)},children:u.jsxs(en,{hideCloseButton:!0,className:"w-[calc(100%_-_2rem)] max-h-[calc(100dvh_-_2rem)] overflow-y-auto","aria-busy":c,onOpenAutoFocus:y=>{f.current=document.activeElement instanceof HTMLElement?document.activeElement:null,y.preventDefault(),d.current?.focus()},onCloseAutoFocus:y=>{f.current?.isConnected&&(y.preventDefault(),f.current.focus())},onEscapeKeyDown:y=>{c&&y.preventDefault()},onInteractOutside:y=>{c&&y.preventDefault()},children:[u.jsxs(tn,{children:[u.jsx(rn,{children:n}),u.jsx(on,{children:r})]}),a,l?u.jsx("p",{role:"alert",className:"text-sm text-destructive",children:l}):null,u.jsxs(nn,{className:"gap-2",children:[u.jsx(te,{ref:d,variant:"outline",disabled:c,onClick:()=>t(!1),children:i}),u.jsx(te,{variant:p,disabled:c,onClick:h,children:s})]})]})})}const no=`w-full rounded-md border border-input bg-background px-3 py-2 text-sm transition-[border-color] placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50 ${dn}`,an=o.forwardRef(({className:e,type:t="text",...n},r)=>u.jsx("input",{ref:r,type:t,className:T(no,"flex min-h-10 file:border-0 file:bg-transparent file:text-sm file:font-medium",e),...n}));an.displayName="Input";function sn({children:e}){return u.jsx(ro,{children:u.jsx(o.Suspense,{fallback:u.jsx("div",{className:"p-6 text-sm text-muted-foreground",children:"正在打开…"}),children:e})})}class ro extends o.Component{state={};static getDerivedStateFromError(t){return{error:t}}componentDidCatch(t,n){console.error("Route module failed to load",t,n.componentStack)}render(){if(!this.state.error)return this.props.children;const t=/Failed to fetch dynamically imported module|Importing a module script failed|Loading chunk .* failed/i.test(this.state.error.message);return u.jsxs("div",{className:"mx-auto flex min-h-64 max-w-md flex-col items-start justify-center gap-3 p-6",children:[u.jsx("div",{className:"text-base font-medium",children:t?"页面已更新":"页面暂时无法打开"}),u.jsx("div",{className:"text-sm text-muted-foreground",children:t?"当前窗口仍在使用旧版页面资源,请重新载入。":"页面加载遇到了问题,请重试。这不表示登录已失效。"}),!1,u.jsx("button",{type:"button",className:"rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground",onClick:()=>window.location.reload(),children:"重新载入"})]})}}const vo={productName:"Xpod 账号",loginTitle:"登录",registerTitle:"创建账号",usernameLabel:"Pod 名称",usernamePlaceholder:"选择 Pod 名称",emailLabel:"邮箱",emailPlaceholder:"you@example.com",passwordLabel:"密码",passwordPlaceholder:"输入密码",confirmationLabel:"确认密码",confirmationPlaceholder:"再次输入密码",loginAction:"登录",registerAction:"创建账号",switchToRegister:"切换用户",switchToLogin:"返回登录",usernameChecking:"正在检查 Pod 名称…",usernameAvailable:"Pod 名称可用",usernameUnavailable:"Pod 名称不可用",suggestionsLabel:"可用建议",mismatchError:"两次输入的密码不一致"},ho={forgotPassword:"忘记密码?"},go={emailAlreadyRegisteredPasswordMismatch:"该邮箱已注册,但密码不正确,请登录或重置密码。"};function yo(e){return e===401||e===403?"邮箱或密码不正确。":e===429?"尝试次数过多,请稍后再试。":"登录失败,请重试。"}const oo={"zh-CN":{title:"启用 Pod 删除",lead:"允许这个账号管理下方当前的 Pod。授权成功后,请返回账号页面;删除数据仍需另行确认。",account:"授权给账号",address:"当前 Pod 地址",identities:"当前 Pod 的身份",allow:"允许这个账号删除此 Pod",cancel:"取消",loading:"正在核对设备与 Pod…",pending:"正在授权…",retry:"重新核对",back:"返回账号页面",done:"已启用删除。这个 Pod 的数据尚未删除。",operator:"请在存放这个 Pod 的设备上打开 Xpod,再完成授权。当前访问没有设备管理权限。",localAddress:"本机 Xpod 管理地址",localHint:"仅当这台电脑就是存放这个 Pod 的设备时继续。请从这台设备上的 Xpod 复制管理地址;不会自动探测本机服务。",localContinue:"在本机继续",localInvalid:"请输入本机 localhost、127.0.0.1 或 [::1] 的 HTTP(S) 地址,不得包含账号密码、查询参数或片段。",invalid:"授权请求已失效,请返回账号页面重新开始。",changed:"这个地址的 Pod 已发生变化。请返回账号页面重新发起授权。",unavailable:"暂时无法连接账号服务,请稍后重试。",failed:"未能完成授权,请重试。"},en:{title:"Enable Pod deletion",lead:"Allow this account to manage the current Pod below. Return to the account page afterwards; deleting data still requires a separate confirmation.",account:"Authorize account",address:"Current Pod address",identities:"Current Pod identities",allow:"Allow this account to delete this Pod",cancel:"Cancel",loading:"Checking the device and Pod…",pending:"Authorizing…",retry:"Check again",back:"Return to account",done:"Deletion is enabled. The Pod data has not been deleted.",operator:"Open Xpod on the device hosting this Pod to authorize it. This connection has no device management access.",localAddress:"Xpod address on this device",localHint:"Continue only if this computer hosts the Pod. Copy the management address from Xpod on this device. Local services are not probed automatically.",localContinue:"Continue on this device",localInvalid:"Enter an HTTP(S) address on localhost, 127.0.0.1, or [::1], without credentials, query parameters, or a fragment.",invalid:"This authorization request is no longer valid. Start again from your account page.",changed:"The Pod at this address has changed. Start a new authorization from your account page.",unavailable:"Cannot reach the account service. Try again later.",failed:"Could not authorize this Pod. Try again."}},ao=o.lazy(()=>rt(()=>import("./AccountAuthBoundary-Chqd38oU.js"),__vite__mapDeps([0,1,2,3,4,5,6,7])).then(e=>({default:e.AccountAuthBoundary}))),so=o.lazy(()=>rt(()=>import("./SystemSettingsPage-C8EdMkW7.js"),__vite__mapDeps([8,1,2,6,9,3,10])));function io({to:e}){return new URLSearchParams(be().search).has("deletionAuthorization")?u.jsx(ze,{}):u.jsx(un,{to:e,replace:!0})}function co(){return new URLSearchParams(be().search).has("deletionAuthorization")?u.jsx(He,{}):u.jsx(sn,{children:u.jsx(ao,{surface:"embedded",children:u.jsx(He,{})})})}function uo(){return new URLSearchParams(be().search).has("deletionAuthorization")?u.jsx(ze,{}):u.jsx(sn,{children:u.jsx(so,{})})}function pe(e){if(typeof e!="string")return null;try{const t=new URL(e);return["http:","https:"].includes(t.protocol)&&!t.username&&!t.password&&!t.search&&!t.hash&&t.pathname.endsWith("/.account/account/")?t.href:null}catch{return null}}function ze({locale:e="zh-CN"}){const{search:t}=be(),n=oo[e],[r,a]=o.useState(null),[s,i]=o.useState(!1),[c,l]=o.useState(""),[h,p]=o.useState(!1),[d,f]=o.useState(!1),[y,g]=o.useState(null),[v,m]=o.useState(!1),[E,C]=o.useState(""),[w,P]=o.useState(""),x=o.useRef(!1),D=o.useRef(0),N=o.useCallback(b=>{switch(b){case"POD_DELETE_OPERATOR_REQUIRED":case"POD_DELETE_ORIGIN_REQUIRED":return n.operator;case"POD_DELETE_AUTHORIZATION_INVALID":return n.invalid;case"POD_DELETE_GENERATION_CHANGED":case"POD_DELETE_AUTHORIZATION_CONFLICT":case"POD_DELETE_NOT_FOUND":return n.changed;case"POD_DELETE_NODE_UNAVAILABLE":return n.unavailable;default:return n.failed}},[n]),H=o.useCallback(async()=>{if(x.current)return;const b=++D.current,S=new URLSearchParams(t),O=S.get("deletionAuthorization"),j=S.get("podName");if(a(null),g(null),l(""),f(!1),p(!1),m(!1),P(""),!O||O.length>2048||!j||!/^[a-zA-Z0-9_-]{1,64}$/.test(j)){l(n.invalid);return}x.current=!0,i(!0);try{const $=await fetch("/provision/pods",{method:"POST",credentials:"same-origin",redirect:"error",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"inspectDeletionAuthorization",challenge:O,podName:j})}),X=await $.json().catch(()=>({}));if(b!==D.current)return;if(!$.ok){const L=X.code??X.error??X.message,ce=$.status===401||L==="POD_DELETE_OPERATOR_REQUIRED"||L==="POD_DELETE_ORIGIN_REQUIRED";m(ce),l(ce?n.operator:N(L));return}const _=X.deletionAuthorization;if(!_||_.challenge!==O||_.podName!==j||!(_.expiresAt>Date.now())||!pe(_.returnUrl)||!["cloudAccountId","cloudPodId","nodeId","storageUrl","currentLocalPodId"].every(L=>typeof _[L]=="string"&&_[L])||!Array.isArray(_.ownerWebIds)||_.ownerWebIds.some(L=>typeof L!="string")){l(n.invalid);return}a(_),g(pe(_.returnUrl))}catch{b===D.current&&l(n.unavailable)}finally{b===D.current&&(x.current=!1,i(!1))}},[t,n,N]);o.useEffect(()=>{let b=!0;queueMicrotask(()=>{b&&H()});const S=()=>{D.current++,x.current=!1};return()=>{b=!1,S()}},[H]);const V=async()=>{if(!r||x.current)return;if(r.expiresAt<=Date.now()){a(null),p(!1),l(n.invalid);return}const b=D.current;x.current=!0,i(!0),l("");try{const S=await fetch("/provision/pods",{method:"POST",credentials:"same-origin",redirect:"error",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"authorizeDeletion",challenge:r.challenge,podName:r.podName,expectedLocalPodId:r.currentLocalPodId})}),O=await S.json().catch(()=>({}));if(b!==D.current)return;if(!S.ok){const j=O.code??O.error??O.message,$=S.status===401||j==="POD_DELETE_OPERATOR_REQUIRED"||j==="POD_DELETE_ORIGIN_REQUIRED";m($),l($?n.operator:N(j)),(S.status===401||S.status===403||S.status===404||S.status===409)&&(a(null),p(!1));return}if(O.success!==!0||pe(O.returnUrl)!==pe(r.returnUrl)){l(n.invalid);return}f(!0),p(!1)}catch{b===D.current&&l(n.unavailable)}finally{b===D.current&&(x.current=!1,i(!1))}},q=b=>{b.preventDefault(),P("");try{const S=new URL(E.trim()),O=S.hostname.toLowerCase(),j=/^127(?:\.\d{1,3}){3}$/.test(O)&&O.split(".").every(ce=>Number(ce)<=255);if(!["http:","https:"].includes(S.protocol)||!(["localhost","[::1]"].includes(O)||j)||S.username||S.password||S.search||S.hash||E.includes("?")||E.includes("#")||/^https?:\/\/[^/]*@/i.test(E.trim()))throw new Error("invalid-local-address");const $=new URLSearchParams(t),X=$.get("deletionAuthorization"),_=$.get("podName");if(!X||X.length>2048||!_||!/^[a-zA-Z0-9_-]{1,64}$/.test(_))throw new Error("invalid-request");const L=S.pathname.replace(/\/+$/,"");S.pathname=L.endsWith("/settings/pod")?L:`${L}/settings/pod`,S.searchParams.set("deletionAuthorization",X),S.searchParams.set("podName",_),window.location.assign(S.href)}catch{P(n.localInvalid)}},M=r?u.jsxs("dl",{className:"space-y-3 text-sm",children:[u.jsxs("div",{children:[u.jsx("dt",{className:"text-muted-foreground",children:n.account}),u.jsx("dd",{className:"break-all",children:r.cloudAccountId})]}),u.jsxs("div",{children:[u.jsx("dt",{className:"text-muted-foreground",children:n.address}),u.jsx("dd",{className:"break-all font-mono",children:r.storageUrl})]}),r.ownerWebIds.length?u.jsxs("div",{children:[u.jsx("dt",{className:"text-muted-foreground",children:n.identities}),u.jsx("dd",{className:"space-y-1 break-all",children:r.ownerWebIds.map(b=>u.jsx("p",{children:b},b))})]}):null]}):null;return u.jsxs("section",{className:"mx-auto w-full max-w-2xl p-4 sm:p-6","aria-label":n.title,children:[u.jsxs(ut,{children:[u.jsxs(lt,{children:[u.jsx(dt,{children:n.title}),u.jsx(ft,{children:n.lead})]}),u.jsxs(mt,{className:"space-y-4",children:[s&&!r?u.jsx("p",{role:"status",children:n.loading}):null,c&&!h?u.jsx("p",{role:"alert",className:"text-sm text-destructive",children:c}):null,M,v?u.jsxs("form",{onSubmit:q,className:"space-y-3",children:[u.jsx("p",{className:"text-sm text-muted-foreground",id:"local-xpod-hint",children:n.localHint}),u.jsx("label",{htmlFor:"local-xpod-address",className:"block text-sm font-medium",children:n.localAddress}),u.jsx(an,{id:"local-xpod-address",value:E,onChange:b=>C(b.target.value),"aria-describedby":"local-xpod-hint",autoComplete:"off",spellCheck:!1,required:!0}),w?u.jsx("p",{role:"alert",className:"text-sm text-destructive",children:w}):null,u.jsx(te,{type:"submit",children:n.localContinue})]}):null,d?u.jsx("p",{role:"status",children:n.done}):null,u.jsxs("div",{className:"flex flex-wrap gap-2",children:[r&&!d?u.jsx(te,{disabled:s,onClick:()=>p(!0),children:n.allow}):null,y&&!s?u.jsx(te,{asChild:!0,variant:"outline",children:u.jsx("a",{href:y,children:d||!r?n.back:n.cancel})}):null,!r&&!s?u.jsx(te,{variant:"outline",onClick:()=>{H()},children:n.retry}):null]})]})]}),u.jsx(to,{open:h,onOpenChange:p,title:n.title,description:n.lead,confirmVariant:"default",confirmLabel:s?n.pending:n.allow,cancelLabel:n.cancel,pending:s,error:c,onConfirm:()=>{V()},children:M})]})}const bo=Object.freeze(Object.defineProperty({__proto__:null,PodDeletionAuthorizationPanel:ze,PodManagementBoundary:co,PodManagementFrame:uo,PodManagementTaskRoute:io},Symbol.toStringTag,{value:"Module"}));export{io as A,bo as B,lt as C,Jr as D,an as I,K as P,sn as R,Rn as X,B as a,dt as b,st as c,ft as d,mt as e,ut as f,vo as g,ho as h,no as i,po as j,en as k,tn as l,rn as m,on as n,nn as o,Dn as p,re as q,G as r,yo as s,at as t,Rt as u,Fe as v,In as w,go as x,ve as y,Wn as z};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as c,j as t}from"./XpodThemeProvider-DK3pIdRG.js";import{w as q,x as ee,F as H,t as le,y as de,z as Q,A as ue,B as ce}from"./xpod-remembered-login-D-TzzT5K.js";import{f as ge,A as fe,g as me,m as be}from"./XpodAiConnectionsPodStore-CyA_BJVC.js";import{g as T,u as z,l as he}from"./XpodShellApp-CsivHJl0.js";import{D as pe,j as xe,k as ve,l as we,m as ye,n as Ce,o as Ee}from"./PodDeletionAuthorizationPanel-DPM-5Izt.js";import{S as X,B as je}from"./section-header-DGJdEvQw.js";import{B as M}from"./button-D3yW-2o1.js";import{S as Fe}from"./setting-row-C7tuFiho.js";import"./createLucideIcon-CacwLsmB.js";import"./account-session-DJOZ03xr.js";import"./safe-continuation-vlBZFSlU.js";import"./nav-item-style-ZUbL8KOZ.js";function $(e){return e.map(a=>{const i=q(a)??q(a.toLowerCase().replaceAll("-","_"));return i?ee(i)??a:a})}function ae(e,a){const i={chatModel:"chat",ocrModel:"vision",readerModel:"document_understanding",embeddingModel:"embedding",indexerModel:"indexing",rerankerModel:"reranking"}[a];return e.filter(n=>$(n.capabilities).includes(i))}function Ae(e,a){const i=ae(e,"embeddingModel");return a?.restricted?i.filter(n=>a.allowed.some(l=>l.provider===n.owner&&l.model===n.id)):i}const R="flex min-h-14 flex-wrap items-center justify-between gap-3 border-b border-border py-3",ke={queued:"排队中",running:"进行中",succeeded:"已完成",failed:"失败"},De={loading:"正在读取模型…",available:"Xpod 管理",empty:"已连接 Xpod,暂无模型",unauthorized:"请登录并允许 Xpod 访问",error:"模型读取失败,请重试",unavailable:"当前模型暂不可用"};function Be(e){const[a,i]=c.useState(!1),[n,l]=c.useState("platform"),[d,f]=c.useState(""),[y,g]=c.useState(),[F,p]=c.useState(!1),[b,A]=c.useState("all"),v=async(r,s="已保存")=>{p(!0),g(void 0);try{await r(),g(s)}catch{g("操作未完成,请重试。")}finally{p(!1)}},m=e.busy||F,E=r=>r.map(s=>t.jsx(Fe,{label:s.label,description:s.description,control:({id:u,"aria-describedby":C})=>t.jsx(le,{id:u,"aria-describedby":C,checked:s.checked,disabled:m,onChange:N=>{v(()=>e.onToggle(s.id,N.target.checked))}})},s.id));return t.jsx(pe,{open:a,onOpenChange:r=>{m||i(r)},children:t.jsxs("div",{className:"mx-auto max-w-4xl space-y-6 p-6",children:[(y||e.error)&&t.jsx("p",{role:"status",className:"text-sm leading-normal",children:e.error?"Pod 设置暂时无法保存,请重试。":y}),e.section==="models"&&t.jsxs("section",{"aria-label":"默认模型",children:[t.jsx("p",{className:"text-sm leading-normal text-muted-foreground",children:"应用没有指定模型时用这里的默认值,随时可以改。"}),Array.from(new Set(e.models.map(r=>r.group))).map(r=>t.jsxs("section",{className:"mt-5",children:[t.jsx(X,{level:2,title:r,titleClassName:"text-xs leading-normal text-muted-foreground"}),e.models.filter(s=>s.group===r).map(s=>t.jsxs("div",{className:R,children:[t.jsx("label",{htmlFor:`pod-model-${s.id}`,className:"min-w-28 text-sm leading-normal",children:s.label}),s.id==="embeddingModel"?t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"flex-1 text-sm leading-normal",children:e.embeddingLabel}),t.jsx(M,{variant:"outline",size:"sm",onClick:()=>e.onSection("search"),children:"去更换 ›"})]}):s.models?t.jsxs(t.Fragment,{children:[t.jsxs(T,{id:`pod-model-${s.id}`,className:"min-w-[10ch] flex-1",value:s.value??"",disabled:m,onChange:u=>{v(()=>e.onModel(s.id,u.target.value))},children:[t.jsx("option",{value:"",children:s.defaultLabel}),s.value&&!s.models.some(u=>u.ref===s.value)&&t.jsx("option",{value:s.value,children:"当前模型(暂不可用)"}),s.models.map(u=>t.jsx("option",{value:u.ref,children:u.label},u.ref))]}),s.models.length===0&&e.freeQuotaUrl&&t.jsx("a",{href:e.freeQuotaUrl,className:"text-sm leading-normal text-primary",children:"领免费额度 ›"})]}):t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"flex-1 text-sm leading-normal text-muted-foreground",children:s.defaultLabel}),!s.supported&&t.jsx(W,{})]}),s.status&&(s.models||s.supported)&&t.jsx("span",{className:"text-xs leading-normal text-muted-foreground",children:De[s.status]}),s.id!=="embeddingModel"&&s.testable&&t.jsx(M,{variant:"outline",size:"sm",disabled:m||!(s.testValue??s.value),onClick:()=>{v(()=>e.onTest(s.id,s.testValue??s.value),"测试通过")},children:"测试"})]},s.id))]},r))]}),e.section==="search"&&t.jsxs(t.Fragment,{children:[t.jsxs("section",{"aria-label":"检索",children:[E(e.search),t.jsxs("div",{className:R,children:[t.jsxs("span",{className:"text-sm leading-normal",children:["语义检索用的 Embedding",t.jsx("br",{}),t.jsx("span",{className:"text-xs leading-normal text-muted-foreground",children:e.embeddingLabel})]}),t.jsx(xe,{asChild:!0,children:t.jsx(M,{variant:"outline",size:"sm",disabled:m||!e.canChangeEmbedding,onClick:()=>{f(""),l("platform")},children:"更换"})})]})]}),t.jsxs("section",{"aria-label":"索引",children:[t.jsx(X,{level:2,title:"索引",titleClassName:"font-semibold",description:t.jsxs(t.Fragment,{children:["待处理 ",e.pending??0," · 配置版本 ",e.version??"默认"]}),actions:t.jsxs(t.Fragment,{children:[t.jsxs(T,{"aria-label":"重建哪部分",className:"min-w-[10ch] w-auto",value:b,onChange:r=>A(r.target.value),children:[t.jsx("option",{value:"all",children:"重建全部"}),t.jsx("option",{value:"fts",children:"只重建全文"}),t.jsx("option",{value:"vector",children:"只重建向量"})]}),t.jsx(M,{variant:"outline",size:"sm",disabled:m||!e.rebuildTargets.includes(b),onClick:()=>{v(()=>e.onRebuild(b),"重建已排队")},children:"重建"})]})}),e.jobs.length?e.jobs.map(r=>t.jsxs("div",{className:R,children:[t.jsx("span",{className:"text-sm leading-normal",children:r.label}),t.jsxs("span",{className:"text-sm leading-normal",children:[ke[r.status],r.progress===void 0?"":` · ${r.progress}%`]})]},r.id)):t.jsx("p",{className:"py-4 text-sm leading-normal text-muted-foreground",children:"还没有重建记录"}),E(e.maintenance),t.jsx("p",{className:"mt-3 text-xs leading-normal text-muted-foreground",children:"重建只重算索引,不改动 Pod 里的原始资料。"})]}),e.error?.includes("service_access_missing")&&t.jsx(M,{variant:"outline",size:"sm",disabled:m||e.backgroundAccess.busy,onClick:()=>{v(e.onGrant,"已允许 Xpod 访问")},children:"允许 Xpod 访问"})]}),e.section==="apps"&&t.jsxs("section",{"aria-label":"授权应用",children:[t.jsx("p",{className:"text-sm leading-normal text-muted-foreground",children:"哪些应用和服务能读写这个 Pod。"}),t.jsxs("div",{className:R,children:[t.jsxs("details",{className:"flex-1",children:[t.jsxs("summary",{className:"cursor-pointer text-sm leading-normal font-medium",children:["Xpod 后台访问 · ",e.backgroundAccess.loading?"读取中":e.backgroundAccess.granted?"已授权":"未授权"]}),t.jsx("p",{className:"py-3 text-xs leading-normal text-muted-foreground",children:"用于索引维护和后台任务。流量与访问记录:待接入。"})]}),e.backgroundAccess.granted?t.jsxs("details",{children:[t.jsx("summary",{"aria-label":"Xpod 后台访问的更多操作",className:"cursor-pointer p-2",children:"⋯"}),t.jsx("span",{className:"block py-2 text-xs leading-normal text-muted-foreground",children:"修改权限 · 待接入"}),t.jsx(M,{variant:"outline",size:"sm",disabled:m||e.backgroundAccess.busy,onClick:()=>{v(e.onRevoke,"已撤销授权")},children:"撤销"})]}):t.jsx(M,{variant:"outline",size:"sm",disabled:m||e.backgroundAccess.busy||e.backgroundAccess.loading,onClick:()=>{v(e.onGrant,"已允许 Xpod 访问")},children:"允许"})]}),e.backgroundAccess.error&&t.jsx("p",{role:"alert",className:"text-sm leading-normal",children:"授权操作暂时不可用,请重试。"}),t.jsx("p",{className:"mt-4 text-xs leading-normal text-muted-foreground",children:"其他授权应用 · 待接入"})]}),e.section==="data"&&t.jsxs(t.Fragment,{children:[t.jsxs("section",{"aria-label":"用量",children:[t.jsx(X,{level:2,title:"用量",titleClassName:"font-semibold"}),t.jsx("div",{className:"mt-3 grid grid-cols-2 gap-3",children:e.usage.map(r=>t.jsxs("div",{className:"rounded-xl border border-border p-4",children:[t.jsx("span",{className:"block text-xs leading-normal text-muted-foreground",children:r.label}),t.jsx("span",{className:"mt-2 block text-sm leading-normal",children:r.value})]},r.label))})]}),t.jsx("section",{"aria-label":"数据管理",children:["导入","导出","迁移"].map(r=>t.jsxs("div",{className:R,children:[t.jsx("span",{className:"text-sm leading-normal",children:r}),t.jsx(W,{}),r==="迁移"&&e.accountUrl&&t.jsx("a",{className:"text-sm leading-normal text-primary",href:e.accountUrl,children:"管理账号 ↗"})]},r))})]}),t.jsxs(ve,{closeLabel:"关闭",closeDisabled:m,className:"max-h-[90dvh] w-[calc(100%-2rem)] overflow-y-auto",onEscapeKeyDown:r=>{m&&r.preventDefault()},onInteractOutside:r=>{m&&r.preventDefault()},children:[t.jsx(we,{children:t.jsx(ye,{children:"更换语义检索模型"})}),t.jsx(H,{label:"来源",children:r=>t.jsxs(T,{...r,value:n,disabled:m,onChange:s=>{l(s.target.value),f("")},children:[t.jsx("option",{value:"platform",children:"Xpod 提供"}),t.jsx("option",{value:"own",children:"用我自己的 Key"})]})}),t.jsx(H,{label:"模型",children:r=>t.jsxs(T,{...r,value:d,disabled:m,onChange:s=>f(s.target.value),children:[t.jsx("option",{value:"",children:"请选择"}),e.embeddingModels.filter(s=>s.source===n).map(s=>t.jsx("option",{value:s.ref,children:s.label},s.ref))]})}),!e.embeddingModels.some(r=>r.source===n)&&t.jsx("p",{className:"text-xs leading-normal text-muted-foreground",children:n==="platform"?"Xpod 提供的模型目录 · 待接入":"暂无可用向量模型,请先在 AI 连接中添加。"}),t.jsx(Ce,{children:"更换后会重建全部语义索引,重建期间只能全文检索。"}),t.jsxs(Ee,{className:"gap-2",children:[t.jsx(M,{variant:"outline",disabled:m,onClick:()=>i(!1),children:"取消"}),t.jsx(M,{disabled:m||!e.canChangeEmbedding||!e.embeddingModels.some(r=>r.ref===d&&r.source===n),onClick:()=>{v(async()=>{await e.onEmbedding(d),i(!1)},"更换已保存,重建已排队")},children:"更换并重建索引"})]})]})]})})}function W(){return t.jsx(je,{variant:"pending",className:"font-normal",children:"待接入"})}async function Y(e){return te(e(L("/api/ai/config"),{method:"GET",credentials:"include",headers:{accept:"application/json"}}))}async function Se(e,a){return te(e(L("/api/ai/config"),{method:"PATCH",credentials:"include",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify(a)}))}async function Ie(e,a){const i=await e(L("/api/ai/config/rebuild"),{method:"POST",credentials:"include",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify({target:a})}),n=await i.json().catch(()=>{});if(!i.ok||!n?.job)throw new Error(n?.error??"Index rebuild request failed");return n.job}async function Me(e,a){const i=a.capabilities.some(l=>l.toLowerCase()==="embedding"),n=await e(L(i?"/v1/embeddings":"/v1/chat/completions"),{method:"POST",credentials:"include",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify(i?{model:a.id,input:"xpod readiness probe"}:{model:a.id,messages:[{role:"user",content:"Reply OK."}],max_tokens:1,stream:!1})});if(!n.ok){const l=await n.json().catch(()=>{}),d=typeof l?.error=="string"?l.error:l?.error?.message;throw new Error(d??"Model readiness probe failed")}await n.arrayBuffer()}function L(e){if(typeof window>"u")throw new Error("AI Config API requires the current browser origin");return new URL(e,window.location.origin).toString()}async function te(e){const a=await e,i=await a.json().catch(()=>{});if(!a.ok||!i?.config||!i.capabilities)throw new Error(i?.error??"AI Config request failed");return i}const ne=c.createContext(void 0),Ne=2e3;function Pe({children:e}){const a=z(),[i,n]=c.useState(),[l,d]=c.useState(),[f,y]=c.useState([]),[g,F]=c.useState(),[p,b]=c.useState(),[A,v]=c.useState(!0),[m,E]=c.useState(!1),[r,s]=c.useState(!1),[u,C]=c.useState(),[N,k]=c.useState(0),o=!!(a.webId&&a.currentPod);c.useEffect(()=>{if(!a.webId||!a.currentPod)return;let x=!1;return queueMicrotask(()=>{if(x||!a.webId||!a.currentPod)return;v(!0),C(void 0),F({webId:a.webId,podUrl:a.currentPod.podUrl,status:"loading",models:[]});const h=ge({webId:a.webId,podUrl:a.currentPod.podUrl,authenticatedFetch:a.fetch}),B={webId:a.webId,podUrl:a.currentPod.podUrl};h.listGatewayCatalogModels?h.listGatewayCatalogModels().then(j=>{x||F({...B,status:"available",models:j})}).catch(j=>{x||F({...B,models:[],status:j instanceof fe&&(j.status===401||j.status===403)?"unauthorized":"error"})}):F({...B,status:"error",models:[]});const se=me({database:a.currentPod.database,authenticatedFetch:a.fetch,podUrl:a.currentPod.podUrl,webId:a.currentPod.webId}).listModels?.()?.catch(()=>[])??Promise.resolve([]);Promise.all([Y(a.fetch),h.listModels().catch(()=>[]),se]).then(([j,re,oe])=>{x||(n(j.config),d(j.capabilities),b(j.lifecycle),y(Re(Ue(oe,re),B.podUrl)))}).catch(j=>{x||C(j instanceof Error?j.message:String(j))}).finally(()=>{x||v(!1)})}),()=>{x=!0}},[N,a.currentPod,a.fetch,a.webId]);const w=c.useCallback(()=>{k(x=>x+1)},[]),S=p?.pending??0;c.useEffect(()=>{if(S<=0||!a.webId||!a.currentPod)return;let x=!1;const h=setInterval(()=>{Y(a.fetch).then(B=>{x||b(B.lifecycle)}).catch(()=>{})},Ne);return()=>{x=!0,clearInterval(h)}},[S,a.currentPod,a.fetch,a.webId]);const I=c.useCallback(async x=>{E(!0),C(void 0);try{const h=await Se(a.fetch,x);n(h.config),d(h.capabilities),b(h.lifecycle)}catch(h){throw C(h instanceof Error?h.message:String(h)),h}finally{E(!1)}},[a.fetch]),D=c.useCallback(async x=>{s(!0),C(void 0);try{const h=await Ie(a.fetch,x);b(B=>({configurationVersion:B?.configurationVersion,pending:(B?.pending??0)+1,recent:[h,...B?.recent??[]].slice(0,20)}))}catch(h){throw C(h instanceof Error?h.message:String(h)),h}finally{s(!1)}},[a.fetch]),P=c.useCallback(async(x,h)=>{await I(x),await D(h)},[D,I]),U=o?A:!1,J=c.useMemo(()=>o?g&&g.webId===a.webId&&g.podUrl===a.currentPod?.podUrl?g:{status:"loading",models:[]}:{status:"unauthorized",models:[]},[o,g,a.webId,a.currentPod?.podUrl]),ie=c.useMemo(()=>({config:i,capabilities:l,lifecycle:p,models:f,gatewayCatalog:J,loading:U,saving:m,rebuilding:r,error:u,reload:w,save:I,rebuild:D,saveAndRebuild:P}),[l,i,U,u,p,f,J,D,r,w,I,P,m]);return t.jsx(ne.Provider,{value:ie,children:e})}function Ue(e,a){const i=new Map,n=l=>`${l.provider}\0${O(l.id)}`;for(const l of[...e,...a]){const d=n(l),f=i.get(d);if(!f){i.set(d,{...l,id:O(l.id)});continue}const y=[...new Set([...f.capabilities??[],...l.capabilities??[]])];i.set(d,{...f,...l,id:O(l.id),resourceId:f.resourceId??l.resourceId,displayName:f.displayName??l.displayName,availability:f.availability==="available"?f.availability:l.availability,modelType:f.modelType??l.modelType,...y.length>0?{capabilities:y}:{},...f.inputModalities??l.inputModalities?{inputModalities:f.inputModalities??l.inputModalities}:{}})}return[...i.values()]}function O(e){const a=e.lastIndexOf("#");return a>=0?e.slice(a+1):e}function Re(e,a){return e.map(i=>{const n=[...i.capabilities??[]],l=i.modelType?de(i.modelType):void 0,d=l?ce[l]:void 0;d&&!n.some(y=>q(y)===d)&&n.push(ee(d));const f=Q.parseRef(ue(i.provider,i.id));if(!f)throw new Error("Invalid AI model resource reference");return{id:i.id,displayName:i.displayName,owner:i.provider,ref:Q.buildIri(a,{id:f.resourceId}),capabilities:n}})}function Te(){const e=c.useContext(ne);if(!e)throw new Error("useAiConfig must be used within AiConfigProvider");return e}function Z(e,a=!1){if(a)return!0;const i=Xe(e)?.phase;return i==="queued"||i==="running"}function Le(e){const a=e?.rebuildTargets??[];if(a.includes("vector"))return"vector";if(a.includes("all"))return"all"}function Xe(e){if(!e)return;const a=e.recent[0];if(!a)return e.pending>0?{phase:"queued",pending:e.pending}:void 0;if(!(a.status==="queued"&&e.pending<=0))return{phase:a.status,pending:e.pending,target:a.target,...a.progress!==void 0?{progress:a.progress}:{},...a.error?{error:a.error}:{}}}function G(e,a){const i=a??(typeof window>"u"?void 0:window.location.origin);if(!i)throw new Error("task credential request needs a current browser origin");return new URL(e,i).toString()}async function V(e){const a=await e.text().catch(()=>"");if(a)try{const i=JSON.parse(a);return i&&typeof i=="object"&&!Array.isArray(i)?i:void 0}catch{return}}function K(e,a){const i=e?.error;return typeof i=="string"&&i?i:a}async function Oe(e){const a=await e.fetch(G("/api/ai/task-credentials",e.origin),{method:"GET",credentials:"include",headers:{accept:"application/json"}}),i=await V(a);if(!a.ok)throw new Error(K(i,"Task credential request failed"));const n=i?.data;return Array.isArray(n)?n:[]}async function _e(e){const a=await e.fetch(G("/api/ai/task-credentials",e.origin),{method:"POST",credentials:"include",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify({apiKey:e.apiKey,...e.name?{name:e.name}:{}})}),i=await V(a);if(!a.ok)throw new Error(K(i,"Task credential grant failed"));const n=i?.credential;if(!n||typeof n!="object")throw new Error("Task credential grant returned no grant");return n}async function qe(e){const a=await e.fetch(G(`/api/ai/task-credentials/${encodeURIComponent(e.credentialRef)}`,e.origin),{method:"DELETE",credentials:"include",headers:{accept:"application/json"}});if(!a.ok)throw new Error(K(await V(a),"Task credential revocation failed"))}function $e(e,a){return e.filter(i=>i.status==="active"&&(!a||i.issuer===a)).sort((i,n)=>n.version-i.version)[0]}function ze(e,a){return e?`${e}\0${a??""}`:void 0}function _(e){return e instanceof Error?e.message:String(e)}const Ge=()=>({loaded:!1,working:!1});function Ve(){const e=z(),{fetch:a,issuer:i,requestPodApiKey:n,webId:l}=e,d=ze(l,i),[f,y]=c.useState(()=>({scope:d,generation:0}));f.scope!==d&&y({scope:d,generation:f.generation+1});const{generation:g}=f,F=c.useRef(g);c.useLayoutEffect(()=>{F.current=g},[g]);const p=f.scope===d?f.entry:void 0,b=c.useCallback((r,s)=>{y(u=>u.generation===r?{...u,entry:s(u.entry??Ge())}:u)},[]),A=c.useCallback(r=>Oe({fetch:a}).then(s=>{b(r,u=>({...u,credential:$e(s,i),loaded:!0,error:void 0}))}).catch(s=>{b(r,u=>({...u,loaded:!0,error:_(s)}))}),[i,a,b]);c.useEffect(()=>{d!==void 0&&A(g)},[g,A,d]);const v=c.useCallback(async()=>{d!==void 0&&await A(g)},[g,A,d]),m=c.useCallback(async()=>{if(d===void 0)return;const r=g;b(r,s=>({...s,working:!0,error:void 0}));try{const s=await n?.();if(!s)throw new Error("当前会话无法准备凭据");if(F.current!==r)throw new Error("会话已改变,本次授权已取消");const u=await _e({fetch:a,apiKey:s,name:"Xpod 后台任务"});b(r,C=>({...C,credential:u,loaded:!0,working:!1,error:void 0}))}catch(s){throw b(r,u=>({...u,loaded:!0,working:!1,error:_(s)})),s}},[g,n,a,d,b]),E=c.useCallback(async()=>{if(d===void 0||!p?.credential)return;const r=g,s=p.credential.credentialRef;b(r,u=>({...u,working:!0,error:void 0}));try{await qe({fetch:a,credentialRef:s}),b(r,u=>({...u,credential:void 0,loaded:!0,working:!1,error:void 0}))}catch(u){throw b(r,C=>({...C,loaded:!0,working:!1,error:_(u)})),u}},[p,g,a,d,b]);return{...p?.credential?{credential:p.credential}:{},loading:d!==void 0&&p?.loaded!==!0,working:p?.working===!0,...p?.error?{error:p.error}:{},grant:m,revoke:E,reload:v}}function oa(e){return t.jsx(Pe,{children:t.jsx(Ke,{...e})})}function Ke({section:e,onSection:a,accountUrl:i}){const n=Te(),l=z(),d=Ve(),[f,y]=c.useState();if(c.useEffect(()=>{let o=!1;if(!(e!=="data"||!l.webId||!l.currentPod))return he({webId:l.webId,podUrl:l.currentPod.podUrl,authenticatedFetch:l.fetch}).then(w=>{o||y({webId:l.webId,podUrl:l.currentPod.podUrl,value:w.storage})}).catch(()=>{o||y({webId:l.webId,podUrl:l.currentPod.podUrl,value:{status:"error"}})}),()=>{o=!0}},[e,l.webId,l.currentPod,l.fetch]),(e==="models"||e==="search")&&!n.config)return t.jsxs("div",{className:"p-6 text-sm",children:[n.loading?"正在读取 Pod 设置…":"暂时无法读取 Pod 设置。",!n.loading&&(n.error?.includes("service_access_missing")?t.jsx("button",{className:"ml-3 text-primary",disabled:d.working||d.loading,onClick:()=>{d.grant().then(n.reload).catch(()=>{})},children:"允许 Xpod 访问"}):t.jsx("button",{className:"ml-3 text-primary",onClick:n.reload,children:"重试"}))]});const g=n.config,F=n.gatewayCatalog.status==="available"&&n.gatewayCatalog.models.length===0?"empty":n.gatewayCatalog.status,p=o=>n.gatewayCatalog.models.find(w=>be(w.id,o)),b=o=>({ref:o.ref,label:`${o.displayName??o.id} · ${o.owner}`,capabilities:o.capabilities,source:"own"}),A=(o,w,S,I)=>{const D=ae(n.models,o),P=D.find(U=>U.ref===g?.models[o]);return{id:o,label:w,group:S,defaultLabel:I,value:g?.models[o],models:D.map(b),supported:!0,status:g?.models[o]&&!P?"unavailable":void 0,testable:!!(P&&$(P.capabilities).some(U=>["chat","embedding"].includes(U)))}},v=p("smart"),m=p("fast"),E=A("chatModel","智能","对话",v?.displayName??"Xpod 提供");E.value||(E.status=F,E.testable=n.gatewayCatalog.status==="available"&&!!v,E.testValue=v?.id);const r=[E,{id:"fast",label:"快速",group:"对话",defaultLabel:m?.displayName??"Xpod 提供",supported:!0,status:F,testable:n.gatewayCatalog.status==="available"&&!!m,testValue:m?.id},A("ocrModel","视觉辅助","对话","不使用"),A("readerModel","文档理解","文档理解","PaddleOCR · 百度(Xpod 提供)"),{id:"embeddingModel",label:"语义检索",group:"向量",defaultLabel:""},...["语音合成","语音识别"].map(o=>({id:o,label:o,group:"语音",defaultLabel:"不使用"})),...["图像生成","视频生成"].map(o=>({id:o,label:o,group:"图像与视频",defaultLabel:"不使用"})),{id:"decision",label:"决策",group:"决策",defaultLabel:"不使用"}],s=n.models.find(o=>o.ref===g?.models.embeddingModel),u=Le(n.capabilities),C=async(o,w)=>{o==="ftsEnabled"||o==="vectorEnabled"||o==="progressiveIndexingEnabled"?await n.save({searchIndexing:{[o]:w}}):(o==="automaticIndexing"||o==="refreshAfterSourceUpdate"||o==="removeAfterSourceDeletion")&&await n.save({lifecycle:{[o]:w}})},N=f?.webId===l.webId&&f?.podUrl===l.currentPod?.podUrl?f?.value:void 0,k=N?.status==="available"?N.usage:void 0;return t.jsx(Be,{section:e,onSection:a,accountUrl:i,busy:n.saving||n.rebuilding,error:n.error,models:r,embeddingLabel:s?b(s).label:g?.models.embeddingModel?"当前模型暂不可用":"Xpod 提供",embeddingValue:g?.models.embeddingModel,embeddingModels:Ae(n.models,n.capabilities?.embeddingModels).map(b),canChangeEmbedding:!!u&&!Z(n.lifecycle,n.rebuilding),search:[{id:"ftsEnabled",label:"全文检索",checked:g?.searchIndexing.ftsEnabled??!1},{id:"vectorEnabled",label:"语义检索",checked:g?.searchIndexing.vectorEnabled??!1,description:"资料片段会发给向量模型的服务商。"},{id:"progressiveIndexingEnabled",label:"渐进式索引",checked:g?.searchIndexing.progressiveIndexingEnabled??!1}],maintenance:[{id:"automaticIndexing",label:"自动索引新资料",checked:g?.lifecycle.automaticIndexing??!1},{id:"refreshAfterSourceUpdate",label:"资料更新后刷新索引",checked:g?.lifecycle.refreshAfterSourceUpdate??!1},{id:"removeAfterSourceDeletion",label:"资料删除后清理索引",checked:g?.lifecycle.removeAfterSourceDeletion??!1}],pending:n.lifecycle?.pending,version:n.lifecycle?.configurationVersion,jobs:(n.lifecycle?.recent??[]).map(o=>({id:o.id,label:{all:"全部索引",fts:"全文索引",vector:"语义索引"}[o.target],status:o.status,progress:o.progress})),rebuildTargets:n.capabilities?.rebuildTargets??[],onRebuild:n.rebuild,backgroundAccess:{granted:!!d.credential,loading:d.loading,busy:d.working,error:d.error},onGrant:d.grant,onRevoke:d.revoke,usage:[{label:"存储",value:k?`${(k.storageBytes/1024/1024).toFixed(1)} MiB`:"—"},{label:"流量",value:k?`${((k.ingressBytes+k.egressBytes)/1024/1024).toFixed(1)} MiB`:"—"},{label:"AI 用量",value:k?`${k.tokensUsed.toLocaleString()} tokens`:"—"},{label:"计算时长",value:k?`${k.computeSeconds.toLocaleString()} 秒`:"—"}],onModel:async(o,w)=>{(o==="chatModel"||o==="ocrModel"||o==="readerModel")&&await n.save({models:{[o]:w||null}})},onTest:async(o,w)=>{const S=n.models.find(D=>D.ref===w),I=n.gatewayCatalog.models.find(D=>D.id===w);if(!S&&!I)throw new Error("Model unavailable");await Me(l.fetch,S?{...S,capabilities:$(S.capabilities)}:{id:I.id,capabilities:["chat"]})},onToggle:C,onEmbedding:async o=>{if(!u||Z(n.lifecycle,n.rebuilding))throw new Error("Rebuild unavailable");o===g?.models.embeddingModel?await n.rebuild(u):await n.saveAndRebuild({models:{embeddingModel:o}},u)}})}export{oa as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{d as m,r,j as e,O as u,N as x}from"./XpodThemeProvider-DK3pIdRG.js";import{c as o}from"./createLucideIcon-CacwLsmB.js";import{D as y,g,a as b,T as f,u as k,h as v,b as j}from"./nav-item-style-ZUbL8KOZ.js";import{P as N}from"./PaneListHeader-B5RkRqr4.js";import"./button-D3yW-2o1.js";const S=[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]],w=o("box",S);const M=[["path",{d:"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z",key:"p7xjir"}]],P=o("cloud",M);const A=[["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"}]],C=o("key-round",A);const L=[["path",{d:"m10.852 14.772-.383.923",key:"11vil6"}],["path",{d:"M13.148 14.772a3 3 0 1 0-2.296-5.544l-.383-.923",key:"1v3clb"}],["path",{d:"m13.148 9.228.383-.923",key:"t2zzyc"}],["path",{d:"m13.53 15.696-.382-.924a3 3 0 1 1-2.296-5.544",key:"1bxfiv"}],["path",{d:"m14.772 10.852.923-.383",key:"k9m8cz"}],["path",{d:"m14.772 13.148.923.383",key:"1xvhww"}],["path",{d:"M4.5 10H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2h-.5",key:"tn8das"}],["path",{d:"M4.5 14H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-4a2 2 0 0 0-2-2h-.5",key:"1g2pve"}],["path",{d:"M6 18h.01",key:"uhywen"}],["path",{d:"M6 6h.01",key:"1utrut"}],["path",{d:"m9.228 10.852-.923-.383",key:"1wtb30"}],["path",{d:"m9.228 13.148-.923.383",key:"1a830x"}]],_=o("server-cog",L);const D=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],H=o("wrench",D),z=[{scope:"account",label:"Account",description:"Your Pod and its session.",items:[{id:"pod",label:"Pod",path:"pod",description:"Current Pod identity and data boundary.",icon:w},{id:"identity-access",label:"Identity & Access",path:"identity-access",description:"Session, WebID, and account access.",icon:C}]},{scope:"node",label:"This node",description:"Shared by every Pod on this machine.",items:[{id:"storage",label:"Storage",path:"storage",description:"Authority storage backend and limits.",icon:y},{id:"runtime",label:"Runtime",path:"runtime",description:"Low-frequency runtime configuration.",icon:_},{id:"cloud",label:"Cloud",path:"cloud",description:"Cloud coordination settings when supported.",icon:P},{id:"advanced",label:"Advanced",path:"advanced",description:"Expert and compatibility controls.",icon:H}]}];function I(s){return{cloud:s.registered||s.managed||s.domainAllocated}}function V(){const s=m(),[d,n]=r.useState(!1);r.useEffect(()=>{let t=!1;return Promise.all([g(),b()]).then(([l,h])=>{t||n(I({registered:l?.registered===!0,managed:l?.managed===!0,domainAllocated:h?.allocated===!0}).cloud)}),()=>{t=!0}},[]);const a=r.useMemo(()=>z.map(t=>({...t,items:t.items.filter(l=>l.id!=="cloud"||d)})).filter(t=>t.items.length>0),[d]),c=r.useMemo(()=>a.flatMap(t=>t.items),[a]),i=c.find(t=>s.pathname.endsWith(`/${t.path}`))??c[0],p=a.find(t=>t.items.includes(i))?.scope;return e.jsx(f,{mode:"auto",listHeader:e.jsx(N,{title:"Settings"}),list:e.jsx($,{groups:a}),mainHeader:e.jsx("div",{className:"flex h-full items-center px-4",children:e.jsxs("div",{children:[e.jsxs("h1",{className:"text-sm font-semibold",children:["Settings · ",i.label]}),e.jsx("div",{className:"text-xs text-muted-foreground",children:i.description}),p==="node"?e.jsx("div",{className:"text-xs text-warning dark:text-warning",children:"Applies to every Pod on this machine."}):null]})}),main:e.jsx("section",{className:"min-h-full bg-background",children:e.jsx(u,{})}),className:"min-h-full"})}function $({groups:s}){const d=k();return e.jsx("aside",{className:"h-full border-r border-border bg-muted/20 py-2",children:e.jsx("nav",{"aria-label":"Settings sections","data-list-navigation":!0,children:s.map(n=>e.jsxs("div",{children:[e.jsxs("div",{className:"px-4 pb-1 pt-3",children:[e.jsx("div",{className:"text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:n.label}),e.jsx("div",{className:"text-xs leading-4 text-muted-foreground",children:n.description})]}),n.items.map(a=>{const c=a.icon;return e.jsxs(x,{to:a.path,"aria-label":a.label,onKeyDown:v,onClick:()=>d.openMain(),className:({isActive:i})=>j(i,{compact:!1}),children:[e.jsx(c,{className:"mt-0.5 h-4 w-4 shrink-0","aria-hidden":"true"}),e.jsxs("span",{children:[e.jsx("span",{className:"block text-sm font-medium",children:a.label}),e.jsx("span",{className:"block text-xs leading-4 text-muted-foreground",children:a.description})]})]},a.id)})]},n.scope))})})}export{V as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.tasks-panel{display:flex;min-height:580px;height:100%;color:var(--foreground,#2b2621);background:var(--background,#f7f4ed);font:14px inherit}.tasks-panel *{box-sizing:border-box}.tasks-list{width:290px;min-width:250px;display:flex;flex-direction:column;background:var(--muted,#f2ede2);border-right:1px solid var(--border,#dfdbd5)}.tasks-list header{display:flex;gap:6px;padding:10px;border-bottom:1px solid var(--border,#dfdbd5)}.tasks-toolbar{padding:9px;display:flex;gap:6px;flex-wrap:wrap}.tasks-scroll{overflow:auto;flex:1;padding:6px}.tasks-scroll h3,.tasks-scroll summary{font-size:12px;color:var(--muted-foreground,#655d53);padding:10px 8px;margin:0;font-weight:500}.tasks-scroll h3 small,.tasks-scroll summary small{float:right}.tasks-scroll details{margin-bottom:8px}.tasks-scroll summary{cursor:pointer}.task-row{display:flex;gap:9px;align-items:center;border-radius:7px;padding:3px 9px}.task-row.selected{background:var(--accent,#e8e0f0)}.task-row>span{font-size:20px}.task-row>button{cursor:pointer;border:0;background:transparent;text-align:left;flex:1;min-width:0;padding:6px 0;display:flex;flex-direction:column;gap:3px}.task-row strong{font-weight:500;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.task-row small{font-size:11px;color:var(--muted-foreground,#655d53)}.task-quick-add{display:flex;align-items:center;gap:8px;padding:6px 10px}.tasks-panel .task-more{margin:4px 28px}.tasks-list footer{padding:10px;border-top:1px solid var(--border,#dfdbd5)}.tasks-detail{flex:1;min-width:0;overflow:auto;padding:24px 32px}.tasks-detail>header,.task-run-detail header,.task-form header{display:flex;align-items:center;justify-content:space-between;gap:12px}.tasks-detail h2{font-size:22px;margin:6px 0 14px;letter-spacing:-.4px;font-weight:600}.tasks-detail h3{font-size:13px;font-weight:500;margin:0 0 10px}.tasks-detail section{margin:26px 0}.task-eyebrow{font-size:11px;color:var(--muted-foreground,#655d53)}.task-badge{border:1px solid var(--border,#dfdbd5);border-radius:20px;padding:4px 10px;font-size:12px;white-space:nowrap}.task-instruction{white-space:pre-wrap;line-height:1.8}.task-muted{color:var(--muted-foreground,#7a7268);font-size:12px;line-height:1.6}.tasks-scroll section>.task-muted{padding:0 10px}.task-actions{display:flex;flex-wrap:wrap;gap:8px}.task-form{max-width:620px;display:flex;flex-direction:column;gap:20px;margin:20px 0}.task-form>label{display:flex;flex-direction:column;gap:8px;font-size:13px}.task-form textarea{min-height:100px}.task-form fieldset{border:1px solid var(--border,#dfdbd5);border-radius:8px;display:flex;gap:25px;padding:14px}.task-form small{color:var(--muted-foreground,#655d53)}.tasks-panel .task-run-row{cursor:pointer;display:flex;justify-content:space-between;width:100%;padding:12px 0;border:0;border-bottom:1px solid var(--border,#dfdbd5);background:transparent;border-radius:0}.task-run-detail{padding:18px;background:var(--card,#fbfaf7);border:1px solid var(--border,#dfdbd5);border-radius:8px}.task-run-detail ol{padding-left:20px;line-height:1.8}.task-run-detail li span{color:var(--muted-foreground,#655d53);font-size:12px}.task-notice{max-width:100%;overflow-wrap:anywhere;word-break:break-word}.tasks-empty{padding:16vh 20px;text-align:center}.tasks-empty p{line-height:1.8}.tasks-detail a{color:var(--primary,#563e84)}@media(max-width:760px){.tasks-panel{flex-direction:column;height:auto;min-height:100%}.tasks-list{width:100%;min-width:0;max-height:45vh;border-right:0;border-bottom:1px solid var(--border,#dfdbd5)}.tasks-detail{padding:22px 18px;overflow:visible}.tasks-empty{padding:30px 0}.tasks-detail h2{font-size:20px}}.tasks-panel{min-height:0}.tasks-panel .tasks-list{width:auto;min-width:0;border:0}.tasks-list-header,.tasks-main-header{height:100%;display:flex;align-items:center;gap:8px;padding:8px 12px}.tasks-main-header>span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tasks-panel .tasks-detail{height:100%;overflow:auto}.tasks-panel .tasks-scroll{overflow:visible}@media(max-width:760px){.tasks-panel .tasks-list{max-height:none}.tasks-panel .tasks-detail{overflow:auto}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as i,j as e,u as ve,b as Ee}from"./XpodThemeProvider-DK3pIdRG.js";import{t as Fe,v as be}from"./xpod-remembered-login-D-TzzT5K.js";import{I as Z,S as ke,g as Ce,u as Ae,h as Be,i as we,A as De,j as ye,k as Ne}from"./XpodShellApp-CsivHJl0.js";import{i as Se,I as P}from"./PodDeletionAuthorizationPanel-DPM-5Izt.js";import{T as Te,u as te,W as ze}from"./nav-item-style-ZUbL8KOZ.js";import{c as ee,B as F,i as I}from"./button-D3yW-2o1.js";import"./createLucideIcon-CacwLsmB.js";import"./account-session-DJOZ03xr.js";import"./safe-continuation-vlBZFSlU.js";const ae=i.forwardRef(({className:s,...u},c)=>e.jsx("textarea",{ref:c,className:ee(Se,"min-h-20 resize-y",s),...u}));ae.displayName="Textarea";const Ie={sm:"min-h-9 px-2.5 text-xs [@media(pointer:coarse)]:min-h-11",md:"min-h-9 px-3 text-sm [@media(pointer:coarse)]:min-h-11"},Le="bg-card font-semibold text-primary shadow-sm",Re="text-foreground hover:text-primary";function se({value:s,onValueChange:u,options:c,ariaLabel:d,name:o,size:x="md",className:n,onKeyDown:p,...h}){const m=i.useId(),g=o??m,A=i.useRef([]),k=c.findIndex(r=>r.value===s),b=c.map((r,j)=>r.disabled?-1:j).filter(r=>r>=0),f=k>=0&&!c[k]?.disabled?k:b[0],_=r=>{const j=c[r];!j||j.disabled||(A.current[r]?.focus(),j.value!==s&&u(j.value))},N=(r,j)=>{if(b.length===0)return;const C=b.indexOf(r),y=C<0?j>0?0:b.length-1:(C+j+b.length)%b.length;_(b[y])},W=r=>{if(p?.(r),r.defaultPrevented)return;const j=A.current.findIndex(y=>y===document.activeElement),C=j>=0?j:f;switch(r.key){case"ArrowRight":case"ArrowDown":r.preventDefault(),N(C,1);break;case"ArrowLeft":case"ArrowUp":r.preventDefault(),N(C,-1);break;case"Home":r.preventDefault(),N(-1,1);break;case"End":r.preventDefault(),N(-1,-1);break}};return e.jsx("div",{role:"radiogroup","aria-label":d,className:ee("inline-flex items-center gap-0.5 rounded-lg bg-muted p-0.5",n),onKeyDown:W,...h,children:c.map((r,j)=>{const C=r.value===s,y=r["aria-label"];return e.jsxs("label",{className:ee("relative inline-flex min-w-0 grow cursor-pointer select-none items-center justify-center gap-1.5 rounded-md transition-colors",Ie[x],C?Le:Re,r.disabled&&"cursor-not-allowed opacity-50"),children:[e.jsx("input",{ref:R=>{A.current[j]=R},type:"radio",className:"absolute inset-0 m-0 h-full w-full cursor-pointer appearance-none opacity-0 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring disabled:cursor-not-allowed",name:g,value:r.value,checked:C,disabled:r.disabled,tabIndex:j===f?0:-1,"aria-label":y,onChange:()=>_(j)}),r.icon?e.jsx("span",{"aria-hidden":"true",className:"inline-flex shrink-0 items-center",children:r.icon}):null,r.label?e.jsx("span",{className:"min-w-0 break-words text-center",children:r.label}):null]},r.value)})})}const q=s=>["completed","failed","cancelled"].includes(s.status),B=(s,u)=>s.assignedTo===u;function $e(s,u,c,d){const o=s.filter(n=>c==="all"||(c==="mine"?B(n,u):!!n.assignedTo&&!B(n,u))),x=o.filter(n=>!q(n));return{waiting:x.filter(n=>n.waiting),mine:x.filter(n=>!n.waiting&&B(n,u)).sort((n,p)=>(n.dueAt??1/0)-(p.dueAt??1/0)||n.createdAt-p.createdAt),ai:x.filter(n=>!n.waiting&&!!n.assignedTo&&!B(n,u)),unassigned:x.filter(n=>!n.waiting&&!n.assignedTo),recent:o.filter(n=>q(n)&&n.completedAt!==void 0&&n.completedAt>=d-7*86400),ended:o.filter(q)}}function Me(s,u,c){const d=new Date(c.getFullYear(),c.getMonth(),c.getDate()),o=new Date(d);o.setDate(o.getDate()+1);const x=new Date(d);x.setDate(x.getDate()+2);const n=new Date(d);n.setDate(n.getDate()+(7-(d.getDay()+6)%7));const p={overdue:[],today:[],tomorrow:[],week:[],later:[]};for(const h of s.filter(m=>!q(m))){const m=B(h,u)?h.dueAt:h.schedule?.kind==="cron"||h.schedule?.kind==="once"?h.schedule.nextRunAt:void 0;if(m===void 0)continue;const g=m*1e3,A=g<+d?"overdue":g<+o?"today":g<+x?"tomorrow":g<+n?"week":"later";p[A].push(h)}for(const h of Object.values(p))h.sort((m,g)=>(m.dueAt??m.schedule?.nextRunAt??0)-(g.dueAt??g.schedule?.nextRunAt??0));return p}const ce={createAi:!1,resumeStep:!1,handoff:!1,approve:!1},U={open:"待办",active:"按计划运行",blocked:"已暂停",completed:"已完成",failed:"失败",cancelled:"已取消",running:"进行中",queued:"等待执行",waiting_input:"在等你",waiting_runner:"等待执行环境"},L={cron:"定时",interval:"周期",event:"事件",once:"定时"},V=s=>s===void 0?"未设置":new Date(s*1e3).toLocaleString("zh-CN",{month:"numeric",day:"numeric",hour:"2-digit",minute:"2-digit"}),Pe=s=>{const u=/^(\d+) (\d+) \* \* \*$/.exec(s??"");return u?`每天 ${u[2].padStart(2,"0")}:${u[1].padStart(2,"0")}`:"自定义计划"},oe=s=>s&&/^https?:\/\//.test(s)?s:void 0;function qe({client:s,webId:u,workspace:c,onOpenConnections:d,selectedTaskId:o,selectedRunId:x,renderApproval:n,headerActions:p}){const[h,m]=i.useState([]),[g,A]=i.useState(ce),[k,b]=i.useState(),[f,_]=i.useState("all"),[N,W]=i.useState("list"),[r,j]=i.useState(""),[C,y]=i.useState(""),[R,he]=i.useState(!1),[$,me]=i.useState(!1),[ne,M]=i.useState(!1),[ue,H]=i.useState([]),[E,T]=i.useState(),[O,K]=i.useState(),[pe,X]=i.useState([]),[Y,S]=i.useState(""),[w,ie]=i.useState(!1),[xe,le]=i.useState(!0),G=async()=>{const t=await s.list();m(t.tasks),A(t.capabilities)};i.useEffect(()=>{let t=!0;return le(!0),m([]),A(ce),b(void 0),K(void 0),S(""),s.list().then(a=>{t&&(m(a.tasks),A(a.capabilities))}).catch(a=>{t&&S(String(a.message??a))}).finally(()=>{t&&le(!1)}),()=>{t=!1}},[s,u]),i.useEffect(()=>{let t=!0;return H([]),T(void 0),X([]),k&&s.runs(k).then(a=>{t&&(H(a.runs),O&&T(a.runs.find(Q=>Q.id===O.id)??O))}).catch(a=>{t&&S(String(a.message??a))}),()=>{t=!1}},[s,k,O]),i.useEffect(()=>{let t=!0;return X([]),E&&s.steps(E.id).then(a=>{t&&X(a.steps)}).catch(a=>{t&&S(String(a.message??a))}),()=>{t=!1}},[s,E?.id]),i.useEffect(()=>{if(!o)return;const t=h.find(a=>a.id===o||a.iri===o);t&&(b(t.id),M(!1))},[o,h]),i.useEffect(()=>{let t=!0;return x&&s.selection(x).then(a=>{t&&(b(a.taskId),K(a.run),M(!1))}).catch(a=>{t&&S(String(a.message??a))}),()=>{t=!1}},[s,x]);const D=async t=>{if(!w){ie(!0),S("");try{await t(),await G()}catch(a){S(a instanceof Error?a.message:String(a))}finally{ie(!1)}}},l=h.find(t=>t.id===k),re=h.filter(t=>`${t.title??""} ${t.instruction}`.toLowerCase().includes(r.toLowerCase())),v=$e(re,u,f,Date.now()/1e3),fe=Me(re.filter(t=>f==="all"||(f==="mine"?B(t,u):!!t.assignedTo&&!B(t,u))),u,new Date),J=t=>{b(t.id),K(void 0),M(!1)},z=t=>t.map(a=>e.jsxs("div",{className:`task-row ${k===a.id?"selected":""}`,children:[B(a,u)?e.jsx(Fe,{"aria-label":`完成 ${a.title??a.instruction}`,checked:a.status==="completed",disabled:w,onChange:Q=>{D(()=>s.update(a.id,{completed:Q.target.checked}))}}):e.jsx("span",{"aria-label":L[a.schedule?.kind??""]??"任务",children:a.schedule?.kind==="event"?"ϟ":a.schedule?.kind==="interval"?"↻":"▦"}),e.jsxs(_e,{onClick:()=>J(a),"aria-current":k===a.id?"true":void 0,children:[e.jsx("strong",{children:a.title??a.instruction}),e.jsx("small",{children:a.waiting?"在等你":a.dueAt?V(a.dueAt):U[a.status]??a.status})]})]},a.id)),je=t=>{t.preventDefault(),C.trim()&&D(async()=>{const a=await s.create({prompt:C.trim(),kind:"todo",workspace:c});y(""),J(a.task)})},ge=e.jsxs("form",{onSubmit:je,className:"task-quick-add",children:[e.jsx("span",{"aria-hidden":!0,children:"+"}),e.jsx(P,{"aria-label":"添加待办",placeholder:"添加待办,回车",value:C,onChange:t=>y(t.target.value),disabled:w})]});return e.jsx(Te,{className:"tasks-panel",pageType:"collection",hasObjectCollection:!0,listHeader:e.jsxs("div",{className:"tasks-list-header",children:[e.jsx(ke,{"aria-label":"搜索任务",value:r,onChange:t=>j(t.target.value)}),e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"button","aria-label":"新建任务",onClick:()=>{M(!0),b(void 0)},children:"+"})]}),list:e.jsxs("div",{className:"tasks-list",children:[e.jsx(He,{selection:k??(ne?"create":void 0)}),e.jsxs("div",{className:"tasks-toolbar",children:[e.jsx(se,{className:"flex-1",size:"sm",ariaLabel:"交给谁",value:f,onValueChange:_,options:[{value:"all",label:"全部"},{value:"mine",label:"我的"},{value:"ai",label:"AI 的"}]}),e.jsx(se,{size:"sm",ariaLabel:"视图",value:N,onValueChange:W,options:[{value:"list",icon:e.jsx(We,{}),"aria-label":"清单"},{value:"agenda",icon:e.jsx(Ke,{}),"aria-label":"日程"}]})]}),e.jsx("div",{className:"tasks-scroll",children:xe?e.jsx("p",{role:"status",children:"正在读取任务…"}):e.jsxs(e.Fragment,{children:[v.waiting.length>0&&e.jsxs("section",{children:[e.jsxs("h3",{children:["在等你 ",e.jsx("small",{children:v.waiting.length})]}),z(v.waiting)]}),N==="list"?e.jsxs(e.Fragment,{children:[f!=="ai"&&e.jsxs("section",{children:[e.jsxs("h3",{children:["我的待办 ",e.jsx("small",{children:v.mine.length})]}),ge,z(R?v.mine:v.mine.slice(0,5)),v.mine.length>5&&e.jsx(F,{size:"sm",variant:"ghost",className:"task-more h-auto min-h-9 whitespace-normal py-1",type:"button",onClick:()=>he(!R),children:R?"收起":`还有 ${v.mine.length-5} 条`})]}),f!=="mine"&&e.jsxs("details",{children:[e.jsxs("summary",{className:I,children:["AI 按计划在做 ",e.jsx("small",{children:v.ai.length})]}),z(v.ai)]}),v.unassigned.length>0&&e.jsxs("details",{children:[e.jsxs("summary",{className:I,children:["未分配 ",e.jsx("small",{children:v.unassigned.length})]}),z(v.unassigned)]}),e.jsxs("details",{children:[e.jsxs("summary",{className:I,children:["已结束 · ",$?"全部":"最近 7 天"," ",e.jsx("small",{children:($?v.ended:v.recent).length})]}),z($?v.ended:v.recent),e.jsx(F,{size:"sm",variant:"ghost",className:"task-more h-auto min-h-9 whitespace-normal py-1",type:"button",onClick:()=>me(!$),children:$?"只看最近 7 天":"查看全部已完成"})]})]}):Object.entries(fe).map(([t,a])=>e.jsxs("section",{children:[e.jsx("h3",{children:{overdue:"已逾期",today:"今天",tomorrow:"明天",week:"本周",later:"以后"}[t]}),a.length?z(a):e.jsx("p",{className:"task-muted",children:"没有安排"})]},t))]})}),e.jsx("footer",{children:e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"button",disabled:w,onClick:()=>{D(G)},children:"刷新"})})]}),mainHeader:e.jsxs("div",{className:"tasks-main-header",children:[e.jsx(Oe,{}),e.jsx("span",{children:"任务与待办"}),p]}),main:e.jsxs("div",{className:"tasks-detail",children:[Y&&e.jsx(Z,{className:"task-notice",tone:"destructive",role:"alert",action:e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"button",onClick:()=>{D(G)},children:"重试"}),d&&e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"button",onClick:d,children:"检查连接与授权"})]}),children:e.jsx("p",{children:/[\u4e00-\u9fff]/.test(Y)?Y:"暂时无法加载任务,请检查连接后重试"})}),ne?e.jsx(Ve,{supported:g.createAi,busy:w,onCancel:()=>M(!1),onSubmit:t=>{D(async()=>{const a=await s.create({...t,workspace:c});J(a.task)})}},"create"):l?e.jsxs(e.Fragment,{children:[e.jsxs("header",{children:[e.jsxs("div",{children:[e.jsx("span",{className:"task-eyebrow",children:B(l,u)?"我的待办":L[l.schedule?.kind??""]??"任务"}),e.jsx("h2",{children:l.title??l.instruction})]}),e.jsx("span",{className:"task-badge",children:U[l.status]??l.status})]}),e.jsxs("section",{children:[e.jsx("h3",{children:"要做什么"}),e.jsx("p",{className:"task-instruction",children:l.instruction})]}),B(l,u)?e.jsx(Ue,{task:l,busy:w,onSave:t=>{D(()=>s.update(l.id,t))}},`${l.id}:${l.updatedAt}`):e.jsxs(e.Fragment,{children:[e.jsxs("section",{children:[e.jsx("h3",{children:"什么时候"}),e.jsxs("p",{children:[L[l.schedule?.kind??""]??"未设置"," · ",(l.schedule?.cron?Pe(l.schedule.cron):void 0)??(l.schedule?.intervalSeconds?`每 ${l.schedule.intervalSeconds} 秒`:l.schedule?.eventName??"待接入")]}),e.jsxs("p",{children:["下次运行:",V(l.schedule?.nextRunAt)]})]}),e.jsxs("section",{children:[e.jsx("h3",{children:"能动哪些资料"}),e.jsx("p",{className:"task-muted",children:"资料授权明细待接入"})]}),e.jsxs("div",{className:"task-actions",children:[e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"button",disabled:w||!["active","blocked"].includes(l.status)||!l.schedule,onClick:()=>{D(async()=>{const t=await s.run(l.id);T(t.run),H((await s.runs(l.id)).runs)})},children:"立即运行一次"}),e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"button",disabled:w||q(l)||!l.schedule||l.schedule.kind==="once",onClick:()=>{D(()=>s.pause(l.id,!l.schedule?.paused))},children:l.schedule?.paused?"恢复后续运行":"暂停后续运行"})]})]}),e.jsxs("section",{children:[e.jsx("h3",{children:"怎么来的"}),oe(l.source)?e.jsx("a",{className:I,href:oe(l.source),target:"_blank",rel:"noreferrer",children:"查看来源对话"}):e.jsx("p",{className:"task-muted",children:"未记录来源"})]}),e.jsxs("section",{children:[e.jsx("h3",{children:"最近运行"}),ue.length?ue.map(t=>e.jsxs("button",{type:"button",className:`task-run-row ${I}`,onClick:()=>T(t),children:[e.jsx("span",{children:V(t.createdAt)}),e.jsx("span",{children:U[t.status]??t.status})]},t.id)):e.jsx("p",{className:"task-muted",children:"暂无运行记录"})]}),E&&e.jsxs("section",{className:"task-run-detail","aria-label":"运行详情",children:[e.jsxs("header",{children:[e.jsxs("h3",{children:["这次运行 · ",U[E.status]??E.status]}),e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"button",onClick:()=>T(void 0),children:"关闭"})]}),E.status==="waiting_input"&&(n?n(E):e.jsx("p",{children:"这次运行在等你确认。继续同一次运行的确认入口待接入。"})),E.error&&e.jsx(Z,{className:"task-notice",tone:"destructive",role:"alert",children:/[\u4e00-\u9fff]/.test(E.error)?E.error:"本次执行未完成,请检查连接与授权后重试"}),e.jsx("ol",{children:pe.map(t=>e.jsxs("li",{children:[e.jsx("span",{children:V(t.createdAt)})," ",t.message??t.type]},t.id))}),E.status==="failed"&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"task-muted",children:"以上是已记录的执行步骤;未记录的副作用无法确认。"}),d&&e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"button",onClick:d,children:"检查并修复连接"}),e.jsx("p",{className:"task-muted",children:"从失败这一步继续 · 待接入"})]}),["queued","running","waiting_input","waiting_runner"].includes(E.status)&&e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"button",disabled:w||!!E.cancelRequestedAt,onClick:()=>{D(async()=>{const t=await s.stop(E.id);T(t.run),H((await s.runs(l.id)).runs)})},children:E.cancelRequestedAt?"已请求停止":"停止这次运行"})]})]}):e.jsxs("div",{className:"tasks-empty",children:[e.jsx("span",{className:"task-eyebrow",children:"任务与待办"}),e.jsx("h2",{children:"把想做的事,安排好"}),e.jsx("p",{children:"记下自己的待办,或让 AI 按计划完成任务。"}),e.jsx("p",{className:"task-muted",children:"从左边选择一项,查看详情和运行记录。"})]})]})})}function _e({onClick:s,children:u,...c}){const{openMain:d}=te();return e.jsx("button",{className:I,type:"button",...c,onClick:()=>{s(),d()},children:u})}function He({selection:s}){const{openMain:u}=te();return i.useEffect(()=>{s&&u()},[s,u]),null}function Oe(){const{mode:s,openList:u}=te();return!i.useContext(ze)&&s==="stack"?e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"button",onClick:u,"aria-label":"返回任务清单",children:"‹"}):null}function Ue({task:s,busy:u,onSave:c}){const[d,o]=i.useState(s.notes??""),[x,n]=i.useState(s.priority??"normal"),[p,h]=i.useState(s.dueAt?new Date(s.dueAt*1e3-new Date(s.dueAt*1e3).getTimezoneOffset()*6e4).toISOString().slice(0,16):"");return e.jsxs("form",{className:"task-form",onSubmit:m=>{m.preventDefault(),c({notes:d,priority:x,dueAt:p?new Date(p).getTime()/1e3:null})},children:[e.jsxs("label",{children:["截止日期",e.jsx(P,{type:"datetime-local",value:p,onChange:m=>h(m.target.value)})]}),e.jsxs("label",{children:["重要程度",e.jsxs(Ce,{value:x,onChange:m=>n(m.target.value),children:[e.jsx("option",{value:"normal",children:"普通"}),e.jsx("option",{value:"high",children:"重要"}),e.jsx("option",{value:"urgent",children:"紧急"})]})]}),e.jsxs("label",{children:["备注",e.jsx(ae,{value:d,onChange:m=>o(m.target.value)})]}),e.jsxs("div",{className:"task-actions",children:[e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"submit",disabled:u,children:"保存待办"}),e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"button",disabled:u,onClick:()=>c({completed:s.status!=="completed"}),children:s.status==="completed"?"重新打开":"标记完成"})]}),e.jsx("p",{className:"task-muted",children:"交给 AI 去做 · 待接入"})]})}function Ve({supported:s,busy:u,onSubmit:c,onCancel:d}){const[o,x]=i.useState(""),[n,p]=i.useState("cron"),[h,m]=i.useState("09:00"),[g,A]=i.useState(60),[k,b]=i.useState("");return e.jsxs("form",{className:"task-form",onSubmit:f=>{f.preventDefault(),c({prompt:o,kind:n,...n==="cron"?{cron:`${Number(h.split(":")[1])} ${Number(h.split(":")[0])} * * *`}:n==="interval"?{intervalSeconds:g*60}:{eventName:k}})},children:[e.jsxs("header",{children:[e.jsx("h2",{children:"新建任务"}),e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"button",onClick:d,children:"取消"})]}),e.jsxs("label",{children:["要做什么",e.jsx(ae,{required:!0,value:o,placeholder:"例如,每天整理我关注的信息",onChange:f=>x(f.target.value)})]}),e.jsxs("fieldset",{children:[e.jsx("legend",{children:"什么时候"}),e.jsx(se,{className:"grow",size:"sm",ariaLabel:"什么时候",value:n,onValueChange:p,options:[{value:"cron",label:L.cron},{value:"interval",label:L.interval},{value:"event",label:L.event}]})]}),n==="cron"?e.jsxs("label",{children:["每天几点",e.jsx(P,{type:"time",required:!0,value:h,onChange:f=>m(f.target.value)}),e.jsx("small",{children:"按执行环境的时区安排。"})]}):n==="interval"?e.jsxs("label",{children:["每隔多少分钟",e.jsx(P,{type:"number",min:"1",required:!0,value:g,onChange:f=>A(Number(f.target.value))})]}):e.jsxs("label",{children:["事件名称",e.jsx(P,{required:!0,value:k,onChange:f=>b(f.target.value)})]}),!s&&e.jsx(Z,{tone:"info",role:"status",children:"代理执行身份待接入。你可以先在清单中添加自己的待办。"}),e.jsx(F,{size:"sm",variant:"outline",className:"h-auto min-h-9 whitespace-normal py-1",type:"submit",disabled:u||!s||!o.trim(),children:"创建任务"})]})}const de={width:15,height:15,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};function We(){return e.jsx("svg",{...de,children:e.jsx("path",{d:"M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01"})})}function Ke(){return e.jsx("svg",{...de,children:e.jsx("path",{d:"M4 5h16v15H4zM4 10h16M8 3v4M16 3v4"})})}function Xe(s,u,c){if(!u.thread)return;const d=s.filter(o=>o.approvalId&&o.run===u.id&&o.thread===u.thread);return d.find(o=>o.approvalId===c)??d[0]}function ns(){const s=Ae(),u=ve(),[c]=Ee(),d=Be(),o=i.useMemo(()=>{const n=we({fetch:s.fetch,baseUrl:window.location.origin});return{...n,stop:async p=>{const h=await n.stop(p);return window.dispatchEvent(new Event("xpod:pod-changed")),h}}},[s.fetch]),x=c.get("approval");return e.jsx(qe,{client:o,webId:s.webId,workspace:s.currentPod.podUrl,selectedTaskId:c.get("task")??void 0,selectedRunId:c.get("run")??void 0,onOpenConnections:()=>u("/ai-connections"),headerActions:e.jsx(Ne,{}),renderApproval:n=>{const p=s.currentPod.database.resolveRowIri(be,{id:n.id}),h=Xe(d.snapshot.attention,{...n,id:p},x),m=d.snapshot.attention.some(g=>g.id===p&&g.resumeApproval);return e.jsxs(e.Fragment,{children:[h?e.jsx(De,{item:h}):!m&&e.jsx("p",{className:"text-sm text-muted-foreground",children:"这次运行在等你确认,暂未收到对应的申请。"}),e.jsx(ye,{run:p})]})}},`${s.webId}:${s.currentPod?.podUrl}`)}export{ns as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as e,r as c}from"./XpodThemeProvider-DK3pIdRG.js";import{A as C,r as w,a as A,b as v,c as g,d as y,e as I}from"./safe-continuation-vlBZFSlU.js";import{u as E,a as N,s as b,X as T}from"./account-session-DJOZ03xr.js";import{B as i}from"./button-D3yW-2o1.js";function X(){const a=E(),s=w(a.controls,a.identity),x=N(a.idpIndex),[p,d]=c.useState(null),[f,m]=c.useState(""),[l,h]=c.useState(!1),u=a.bindAccountCapability,o=p?.record.accountId===s?p:null;c.useEffect(()=>{if(document.title="Xpod · 桌面管理",!s||!u)return;let t=!0;const n=u();return(async()=>{const r=await A({accountId:s},{assertCurrent:n,headers:b({Accept:"application/json"})});if(t)try{n();const j=r??v({accountId:s});d(j?{record:j,assertCurrent:n}:null)}catch{d(null)}})(),()=>{t=!1}},[s,u]);const k=async()=>{if(!o||l)return;h(!0),m("");const{record:t,assertCurrent:n}=o;try{if(n(),t.kind==="consent"){if(!await g(t,{assertCurrent:n,headers:b({Accept:"application/json"})})||!y(t,{accountId:t.accountId},{assertCurrent:n}))throw new Error("expired-task")}else{const r=v({accountId:t.accountId});if(!r||r.createdAt!==t.createdAt||r.returnTo!==t.returnTo)throw new Error("expired-task");if(!I({accountId:t.accountId}))throw new Error("expired-task")}n(),window.location.assign(t.returnTo)}catch{d(null),h(!1),m("原任务已失效,请回到账号或应用重新发起。")}};return e.jsxs("main",{className:"mx-auto flex min-h-screen w-full max-w-2xl flex-col justify-center gap-6 px-6 py-12",children:[e.jsx(T,{size:56}),e.jsxs("div",{className:"space-y-3",children:[e.jsx("h1",{className:"text-2xl font-semibold",children:"在桌面 Xpod 中管理"}),e.jsx("p",{className:"text-muted-foreground",children:"Web 提供登录、应用授权、账号管理和快速创建 Pod。管理自己的部署、AI 连接和系统设置,请使用桌面 Xpod。"})]}),e.jsxs("div",{className:"flex flex-wrap gap-3",children:[e.jsx(i,{asChild:!0,children:e.jsx("a",{href:"https://github.com/undefinedsco/xpod/releases/latest",target:"_blank",rel:"noopener noreferrer",children:"下载桌面 Xpod"})}),x?e.jsx(i,{asChild:!0,variant:"outline",children:e.jsx("a",{href:x,children:"账号页面"})}):e.jsx(i,{variant:"outline",disabled:!0,children:"账号页面"})]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"已安装?打开桌面 Xpod,在其中管理本机部署。"}),o?e.jsxs("section",{"aria-label":"原任务",className:"space-y-3 rounded-xl border border-border bg-card p-4",children:[e.jsx("p",{children:"当前任务保留在这个浏览器标签页中。完成桌面操作后,回到这里继续。"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:o.record.kind==="consent"?"返回授权后重新选择 Pod,再确认授权;也可以在那里取消本次请求。":"返回原来的账号页面查看 Pod。"}),e.jsx(i,{variant:"outline",disabled:l,onClick:()=>{k()},children:l?"正在确认…":o.record.kind==="consent"?"回到授权":"返回账号"})]}):null,f?e.jsx("p",{role:"alert",className:"text-sm text-destructive",children:f}):null]})}function B(){return e.jsx(C,{children:e.jsx(X,{})})}export{X as DesktopEntryContent,B as default};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{D as gt,G as A,H as wt,a as h,z as I,y as be,I as It,c as Ce,J as At,x as _t,K as Pt}from"./xpod-remembered-login-D-TzzT5K.js";const W=["openai","anthropic","kimi","bailian","deepseek","zhipu","ollama","custom"],Be={smart:{id:"linx"},fast:{id:"linx-lite"}};function Ct(e,t){const r=e.toLowerCase(),n=Be[t].id;return r===n||r===`undefineds/${n}`}const He={openai:"OpenAI",anthropic:"Anthropic",kimi:"Kimi",bailian:"百炼",deepseek:"DeepSeek",zhipu:"智谱 AI",ollama:"Ollama",custom:"Custom"},Ge=[{id:"api-platform",label:"API Platform",kind:"api-platform",lifecycle:"active",authModes:["apiKey"]}],Ut={id:"api-key",authMode:"apiKey",lifecycle:"active"},St={id:"browser-login",authMode:"apiKey",connectMode:"browserAssistedApiKey",lifecycle:"active"},q=[Ut,St],B=[{id:"openai-compatible",label:"OpenAI Compatible",kind:"api-platform",lifecycle:"active",authModes:["apiKey"],runtimeProviderIds:["custom"],consoleUrl:"https://undefineds.co",subscriptionUrl:"https://undefineds.co",endpoints:[{protocol:"chatCompletions",baseUrl:"https://example.invalid/v1"}],modelDiscovery:{strategy:"openaiCompatible",path:"/models",endpointProtocol:"chatCompletions"},quota:{strategy:"unsupported",url:"https://undefineds.co"}},{id:"anthropic-compatible",label:"Anthropic Compatible",kind:"api-platform",lifecycle:"active",authModes:["apiKey"],runtimeProviderIds:["custom"],consoleUrl:"https://undefineds.co",subscriptionUrl:"https://undefineds.co",endpoints:[{protocol:"anthropic",baseUrl:"https://example.invalid/v1"}],modelDiscovery:{strategy:"anthropic",path:"/models",endpointProtocol:"anthropic"},quota:{strategy:"unsupported",url:"https://undefineds.co"}}],Ue="https://www.kimi.com/code",Et="https://www.kimi.com/code/console",kt="https://www.kimi.com/user/agreement",Mt="https://api.kimi.com/coding/v1",Rt="https://api.kimi.com/coding/",Ot="https://platform.moonshot.cn/console/api-keys",Se="https://platform.moonshot.cn/console/account",Tt="https://platform.moonshot.cn/docs/intro",xt="https://api.moonshot.ai/v1",J="https://bailian.console.aliyun.com/",X="https://help.aliyun.com/zh/model-studio/",Ee="https://open.bigmodel.cn/usercenter/apikeys",ke="https://open.bigmodel.cn/",Lt="https://open.bigmodel.cn/api/paas/v4",$t="https://open.bigmodel.cn/api/coding/paas/v4",Ve={openai:[{id:"official-subscription",label:"OpenAI Subscription",kind:"oauth-subscription",lifecycle:"unavailable",authModes:["oauth","local"],productLabel:"OpenAI",runtimeProviderIds:["openai"],credentialPrefixHints:[],consoleUrl:"https://chatgpt.com/codex",subscriptionUrl:"https://chatgpt.com/codex",endpoints:[{protocol:"responses",baseUrl:"https://chatgpt.com/backend-api/codex"}],modelDiscovery:{strategy:"unsupported",path:"/models",endpointProtocol:"responses"},quota:{strategy:"subscription",url:"https://chatgpt.com/codex"},usagePolicyUrl:"https://openai.com/policies/usage-policies/",region:"global"},{id:"api-platform",label:"API Platform",kind:"api-platform",lifecycle:"active",authModes:["apiKey"],authorizationMethods:q,productLabel:"OpenAI",runtimeProviderIds:["openai"],credentialPrefixHints:["sk-"],consoleUrl:"https://platform.openai.com/api-keys",subscriptionUrl:"https://platform.openai.com/settings/organization/billing/overview",endpoints:[{protocol:"responses",baseUrl:"https://api.openai.com/v1"},{protocol:"chatCompletions",baseUrl:"https://api.openai.com/v1"}],modelDiscovery:{strategy:"openaiCompatible",path:"/models",endpointProtocol:"responses"},quota:{strategy:"providerApi",url:"https://platform.openai.com/usage"},usagePolicyUrl:"https://openai.com/policies/usage-policies/",region:"global"}],anthropic:[{id:"official-subscription",label:"Claude Pro / Max",kind:"oauth-subscription",lifecycle:"unavailable",authModes:["oauth"],authorizationMethods:[],productLabel:"Claude Code",runtimeProviderIds:["anthropic"],credentialPrefixHints:[],consoleUrl:"https://claude.ai/",subscriptionUrl:"https://claude.com/pricing",endpoints:[],modelDiscovery:{strategy:"unsupported",path:"/models",endpointProtocol:"anthropic"},quota:{strategy:"subscription",url:"https://claude.ai/settings/usage"},usagePolicyUrl:"https://www.anthropic.com/legal/aup",region:"global"},{id:"api-platform",label:"API Platform",kind:"api-platform",lifecycle:"active",authModes:["apiKey"],authorizationMethods:q,productLabel:"Anthropic",runtimeProviderIds:["anthropic"],credentialPrefixHints:["sk-ant-"],consoleUrl:"https://console.anthropic.com/settings/keys",subscriptionUrl:"https://console.anthropic.com/settings/plans",endpoints:[{protocol:"anthropic",baseUrl:"https://api.anthropic.com/v1"}],modelDiscovery:{strategy:"anthropic",path:"/models",endpointProtocol:"anthropic"},quota:{strategy:"console",url:"https://console.anthropic.com/settings/limits"},usagePolicyUrl:"https://www.anthropic.com/legal/aup",region:"global"}],kimi:[Me({id:"subscription-key",label:"Token Plan",kind:"token-plan",authModes:["apiKey"],productLabel:"Kimi Coding",runtimeProviderIds:["kimi"],credentialPrefixHints:["sk-kimi-"],baseUrl:Mt,anthropicBaseUrl:Rt,quotaStrategy:"subscription",quotaUrl:Ue,consoleUrl:Et,subscriptionUrl:Ue,usagePolicyUrl:kt,supportsDeveloperMessages:!1}),Me({id:"api-platform",label:"API Platform",kind:"api-platform",authModes:["apiKey"],productLabel:"Moonshot AI",runtimeProviderIds:["kimi"],credentialPrefixHints:["sk-"],baseUrl:xt,quotaStrategy:"console",quotaUrl:Se,consoleUrl:Ot,subscriptionUrl:Se,usagePolicyUrl:Tt})],bailian:[Y({id:"pay-as-you-go",label:"Pay as You Go",kind:"api-platform",runtimeProviderIds:["bailian"],credentialPrefixHints:["sk-"],region:"cn",baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1",anthropicBaseUrl:"https://dashscope.aliyuncs.com/apps/anthropic",quotaStrategy:"console",consoleUrl:J,usagePolicyUrl:X}),Y({id:"token-plan",label:"Token Plan Personal",kind:"token-plan",runtimeProviderIds:["bailian-token-plan"],credentialPrefixHints:["sk-"],region:"cn-beijing",baseUrl:"https://token-plan.cn-beijing.maas.aliyuncs.com/compatible-mode/v1",anthropicBaseUrl:"https://token-plan.cn-beijing.maas.aliyuncs.com/apps/anthropic",quotaStrategy:"subscription",consoleUrl:J,usagePolicyUrl:X}),Y({id:"token-plan-team",label:"Token Plan Team",kind:"token-plan",runtimeProviderIds:["bailian-token-plan"],credentialPrefixHints:["sk-"],region:"cn-beijing",baseUrl:"https://token-plan.cn-beijing.maas.aliyuncs.com/compatible-mode/v1",anthropicBaseUrl:"https://token-plan.cn-beijing.maas.aliyuncs.com/apps/anthropic",quotaStrategy:"subscription",consoleUrl:J,usagePolicyUrl:X}),Y({id:"coding-plan",label:"Coding Plan Pro",kind:"token-plan",runtimeProviderIds:["bailian-coding-plan"],credentialPrefixHints:["sk-sp-"],region:"cn",baseUrl:"https://coding.dashscope.aliyuncs.com/v1",anthropicBaseUrl:"https://coding.dashscope.aliyuncs.com/apps/anthropic",quotaStrategy:"subscription",consoleUrl:J,usagePolicyUrl:X})],deepseek:[{id:"api-platform",label:"API Platform",kind:"api-platform",lifecycle:"active",authModes:["apiKey"],productLabel:"DeepSeek",runtimeProviderIds:["deepseek"],credentialPrefixHints:["sk-"],consoleUrl:"https://platform.deepseek.com/api_keys",subscriptionUrl:"https://platform.deepseek.com/usage",endpoints:[{protocol:"chatCompletions",baseUrl:"https://api.deepseek.com/v1"}],modelDiscovery:{strategy:"openaiCompatible",path:"/models",endpointProtocol:"chatCompletions"},quota:{strategy:"console",url:"https://platform.deepseek.com/usage"},usagePolicyUrl:"https://cdn.deepseek.com/policies/en-US/deepseek-open-platform-terms-of-use.html",region:"global"}],ollama:[{id:"local",label:"Local Ollama",kind:"local",lifecycle:"active",authModes:["local"],productLabel:"Ollama",runtimeProviderIds:["ollama"],credentialPrefixHints:[],consoleUrl:"https://ollama.com",subscriptionUrl:"https://ollama.com",endpoints:[{protocol:"chatCompletions",baseUrl:"http://localhost:11434/v1"}],modelDiscovery:{strategy:"openaiCompatible",path:"/models",endpointProtocol:"chatCompletions"},quota:{strategy:"unsupported",url:"https://ollama.com"},usagePolicyUrl:"https://ollama.com",region:"local"}],zhipu:[{id:"api-platform",label:"API Platform",kind:"api-platform",lifecycle:"active",authModes:["apiKey"],authorizationMethods:q,productLabel:"智谱 AI",runtimeProviderIds:["zhipu"],credentialPrefixHints:["id."],consoleUrl:Ee,subscriptionUrl:"https://open.bigmodel.cn/finance-center/expense-manage",endpoints:[{protocol:"chatCompletions",baseUrl:Lt,region:"cn"}],modelDiscovery:{strategy:"openaiCompatible",path:"/models",endpointProtocol:"chatCompletions"},quota:{strategy:"console",url:"https://open.bigmodel.cn/finance-center/expense-manage"},usagePolicyUrl:ke,region:"cn"},{id:"coding-plan",label:"GLM Coding Plan",kind:"token-plan",lifecycle:"active",authModes:["apiKey"],authorizationMethods:q,productLabel:"智谱 AI",runtimeProviderIds:["zhipu"],credentialPrefixHints:["id."],consoleUrl:Ee,subscriptionUrl:"https://bigmodel.cn/glm-coding",endpoints:[{protocol:"chatCompletions",baseUrl:$t,region:"cn"}],modelDiscovery:{strategy:"openaiCompatible",path:"/models",endpointProtocol:"chatCompletions"},quota:{strategy:"subscription",url:"https://bigmodel.cn/glm-coding"},usagePolicyUrl:ke,region:"cn"}]};function Me(e){return{id:e.id,label:e.label,kind:e.kind,lifecycle:"active",authModes:e.authModes,authorizationMethods:q,productLabel:e.productLabel,runtimeProviderIds:e.runtimeProviderIds,credentialPrefixHints:e.credentialPrefixHints,consoleUrl:e.consoleUrl,subscriptionUrl:e.subscriptionUrl,endpoints:We(e.baseUrl,e.anthropicBaseUrl,"cn",e.supportsDeveloperMessages),modelDiscovery:{strategy:"openaiCompatible",path:"/models",endpointProtocol:"chatCompletions"},quota:{strategy:e.quotaStrategy,url:e.quotaUrl},usagePolicyUrl:e.usagePolicyUrl,region:"cn"}}function Y(e){return{id:e.id,label:e.label,lifecycle:"active",productLabel:"Alibaba Bailian",kind:e.kind,authModes:["apiKey"],authorizationMethods:q,runtimeProviderIds:e.runtimeProviderIds,credentialPrefixHints:e.credentialPrefixHints,consoleUrl:e.consoleUrl,subscriptionUrl:e.consoleUrl,endpoints:We(e.baseUrl,e.anthropicBaseUrl,e.region),modelDiscovery:{strategy:"openaiCompatible",path:"/models",endpointProtocol:"chatCompletions"},quota:{strategy:e.quotaStrategy,url:e.consoleUrl},usagePolicyUrl:e.usagePolicyUrl,region:e.region}}function We(e,t,r,n){return[{protocol:"chatCompletions",baseUrl:e,region:r,...n===void 0?{}:{supportsDeveloperMessages:n}},...t?[{protocol:"anthropic",baseUrl:t,region:r}]:[]]}function Je(e,t=!1){return(Ve[e]??Ge).map(r=>e==="openai"&&r.id==="official-subscription"&&t?{...r,lifecycle:"active",authModes:Array.from(new Set([...r.authModes??[],"local"])),authorizationMethods:[{id:"device-code",authMode:"deviceCode",connectMode:"deviceCodeOAuth",lifecycle:"active"},{id:"local-session-import",authMode:"local",lifecycle:"active"}]}:{...r})}const fn=W.flatMap(e=>[e,...Nt(e).map(t=>`${e}-${t.id}`)]);function Nt(e){return e==="custom"?B:Ve[e]??Ge}function zt(e,t){return e==="anthropic"||t==="anthropic-compatible"?"anthropic":"openai"}function G(e,t){return e==="openai"&&(t==="local"||t==="oauth"||t==="deviceCode")?"official-subscription":e==="kimi"&&(t==="oauth"||t==="deviceCode")?"subscription-key":e==="bailian"?"pay-as-you-go":e==="ollama"?"local":e==="custom"?"openai-compatible":"api-platform"}function Re(e,t){const r=Je(e).find(i=>i.id===(t??G(e,"apiKey")));if(!r)return;const n=r.modelDiscovery?.endpointProtocol;return r.endpoints?.find(i=>i.protocol===n)?.baseUrl??r.endpoints?.[0]?.baseUrl}function Z(e,t){const r=t.trim().toLowerCase();if(e==="bailian"){if(r==="token-plan-personal")return"token-plan";if(r==="coding-plan-pro")return"coding-plan"}return r}function Q(e){return{offeringId:e.offeringId,priority:e.priority??100,enabled:e.enabled??!0,health:e.health??"unknown",...e.baseUrl?{baseUrl:e.baseUrl}:{}}}function yn(e){if(e==null||!e.trim())return;let t;try{t=new URL(e.trim())}catch{throw new Error("invalid_proxy_url")}if(!["http:","https:"].includes(t.protocol)||t.username||t.password||t.hash)throw new Error("invalid_proxy_url");if(!t.hostname)throw new Error("invalid_proxy_url");return t.href.replace(/\/$/u,"")}class te extends Error{constructor(t,r,n={}){const i=Xe(t);super(i?`AI Connection request failed: ${i}`:`AI Connection request failed (HTTP ${r})`),this.name="AiConnectionsRequestError",this.code=i,this.status=r,this.providerStatus=b(t)&&typeof t.providerStatus=="number"?t.providerStatus:void 0,this.payload=t,this.provider=n.provider,this.authMode=n.authMode}}function Xe(e){if(b(e)){if(typeof e.code=="string")return e.code;if(typeof e.errorCode=="string")return e.errorCode;if(typeof e.error=="string"&&/^[a-z][a-z0-9_:-]{0,80}$/i.test(e.error))return e.error}}async function Oe(e){const t=await e.text();if(t)try{return JSON.parse(t)}catch{throw new Error(`AI Connection returned invalid JSON (${e.status})`)}}function qt(e){if(!W.includes(e))throw new Error(`Unsupported AI provider: ${e}`)}function ae(e){if(!(!b(e)||typeof e.id!="string"||typeof e.owner!="string"||!Array.isArray(e.scopes)||!e.scopes.every(t=>typeof t=="string")||typeof e.createdAt!="string"))return g({id:e.id,kind:e.kind==="client-credentials"?e.kind:void 0,credentialResource:u(e.credentialResource),fingerprint:u(e.fingerprint),owner:e.owner,scopes:e.scopes,createdAt:e.createdAt,expiresAt:u(e.expiresAt),lastUsedAt:u(e.lastUsedAt),disabledAt:u(e.disabledAt),revokedAt:u(e.revokedAt),name:u(e.name),maskedHint:u(e.maskedHint),plaintextAvailable:typeof e.plaintextAvailable=="boolean"?e.plaintextAvailable:void 0,clientCredentialId:u(e.clientCredentialId),appliedTo:u(e.appliedTo),appliedOn:u(e.appliedOn),appliedAt:u(e.appliedAt),appliedClients:K(e.appliedClients)})}function Te(e){if(!Array.isArray(e))throw new Error("AI Connection returned an invalid custom models response");const t=[];for(const r of e)!b(r)||typeof r.id!="string"||!r.id||t.push(g({id:r.id,displayName:u(r.displayName),inputModalities:K(r.inputModalities),outputModalities:K(r.outputModalities),capabilities:K(r.capabilities)}));return t}function K(e){if(!Array.isArray(e))return;const t=e.filter(r=>typeof r=="string");return t.length>0?t:void 0}function Ye(e){if(!b(e)||typeof e.id!="string"||vt(e.id))return;const t=U(e.provider)??U(e.providerId)??U(e.owned_by)??Ft(e.id);if(!t)return;const r=b(e.capabilities)?e.capabilities.imageInput:void 0;return g({id:e.id,provider:t,offeringId:u(e.offeringId),resourceId:u(e.resourceId),displayName:u(e.displayName)??u(e.display_name)??u(e.name),modelType:typeof e.modelType=="string"&&Object.prototype.hasOwnProperty.call(gt,e.modelType)?e.modelType:void 0,contextWindow:pe(e.contextWindow)??pe(e.context_window),dimension:typeof e.dimension=="number"&&Number.isInteger(e.dimension)&&e.dimension>0?e.dimension:void 0,protocols:Array.isArray(e.protocols)?e.protocols.filter(n=>typeof n=="string"):void 0,custom:e.custom===!0?!0:void 0,inputModalities:xe(e.modalities,"input")??(r===!0?["text","image"]:r===!1?["text"]:void 0),outputModalities:xe(e.modalities,"output"),capabilities:Kt(e)})}function Dt(e){if(!(!b(e)||typeof e.id!="string"||!e.id))return g({id:e.id,displayName:u(e.displayName)??u(e.display_name)??u(e.name),provider:u(e.provider)??u(e.providerId)??u(e.owned_by)})}function xe(e,t){if(!b(e))return;const r=e[t];if(!Array.isArray(r))return;const n=r.filter(i=>typeof i=="string");return n.length>0?n:void 0}function Kt(e){if(Array.isArray(e.custom_capabilities)){const r=e.custom_capabilities.filter(n=>typeof n=="string");if(r.length>0)return r}if(!b(e.capabilities))return;const t=[];return e.capabilities.imageInput===!0&&t.push("image"),e.capabilities.toolCalls===!0&&t.push("tool_call"),e.capabilities.reasoningEffort===!0&&t.push("reasoning"),e.capabilities.fast===!0&&t.push("fast"),e.capabilities.embedding===!0&&t.push("embedding"),t.length>0?t:void 0}function vt(e){return Object.keys(Be).some(t=>Ct(e,t))}function U(e){if(typeof e!="string")return;const t=e.toLowerCase().trim();return t==="alibaba"||t==="dashscope"||t==="alibaba-bailian"||t==="bailian-coding-plan"||t==="bailian-token-plan"?"bailian":W.includes(t)?t:void 0}function Ft(e){const t=e.split("/",1)[0];return e.includes("/")?U(t):void 0}function pe(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}function jt(e){const t=new Map;for(const r of e){const n=Bt(r);if(!n)continue;const i=t.get(n.id);t.set(n.id,i?er(i,n):n)}return[...t.values()]}function Bt(e){return Gt(e)??Ht(e)}function Ht(e){if(!b(e)||typeof e.provider!="string"||!mr(e.status)||!b(e.connect)||!Array.isArray(e.connect.modes)||!e.connect.modes.every(ge)||typeof e.connect.configured!="boolean")return;const t=U(e.provider);if(!t)return;const r=ir(e,t);return{id:t,name:it(t),offerings:[],credentials:r?[r]:[],selectedModels:[],status:rr(e.status)}}function Gt(e){if(!b(e))return;const t=U(e.id)??U(e.provider);if(!t||!cr(e.status))return;const r=k(e.offerings,Vt),n=k(e.credentials,H),i=k(e.selectedModels,Ye);return{id:t,name:u(e.name)??it(t),offerings:r,credentials:n,selectedModels:i,status:e.status}}function Vt(e){if(!b(e)||typeof e.id!="string"||!e.id)return;const t=k(e.authModes,rt);return g({id:e.id,label:u(e.label),kind:u(e.kind),lifecycle:Xt(e.lifecycle),authModes:t,authorizationMethods:k(e.authorizationMethods,Ze),runtimeProviderIds:K(e.runtimeProviderIds),productLabel:u(e.productLabel),credentialPrefixHints:K(e.credentialPrefixHints),consoleUrl:u(e.consoleUrl),subscriptionUrl:u(e.subscriptionUrl),endpoints:k(e.endpoints,Qe),modelDiscovery:Yt(e.modelDiscovery),quota:Zt(e.quota),usagePolicyUrl:u(e.usagePolicyUrl),region:u(e.region)})}function Wt(e){if(!b(e)||typeof e.offeringId!="string"||!e.offeringId)return;const t=U(e.provider);if(!t)return;const r=k(e.authorizationMethods,Ze);return{provider:t,offeringId:e.offeringId,...Array.isArray(e.endpoints)?{endpoints:k(e.endpoints,Qe)}:{},authorizationMethods:r}}function Ze(e){if(!b(e)||typeof e.id!="string"||!e.id)return;const t=rt(e.authMode),r=Jt(e.lifecycle);if(!t||!r)return;const n=ge(e.connectMode)?e.connectMode:void 0;return g({id:e.id,authMode:t,connectMode:n,label:u(e.label),lifecycle:r,reason:u(e.reason)})}function Jt(e){return e==="active"||e==="unavailable"?e:void 0}function Xt(e){return e==="active"||e==="legacy"||e==="unavailable"?e:void 0}function Qe(e){if(!b(e))return;const t=u(e.protocol),r=u(e.baseUrl);if(!(!t||!r))return g({protocol:t,baseUrl:r,region:u(e.region)})}function Yt(e){if(!b(e))return;const t=u(e.strategy),r=u(e.path),n=u(e.endpointProtocol);return t&&r&&n?{strategy:t,path:r,endpointProtocol:n}:void 0}function Zt(e){if(!b(e))return;const t=u(e.strategy),r=u(e.url);return t&&r?{strategy:t,url:r}:void 0}function H(e){if(!(!b(e)||typeof e.id!="string"||!e.id||typeof e.offeringId!="string"||!e.offeringId||!nt(e.authMode)||typeof e.enabled!="boolean"||typeof e.priority!="number"||!Number.isFinite(e.priority)||!sr(e.health)||typeof e.version!="number"||!Number.isFinite(e.version)))return g({id:e.id,provider:U(e.provider),offeringId:e.offeringId,authMode:e.authMode,label:u(e.label),enabled:e.enabled,priority:e.priority,health:e.health,maskedHint:u(e.maskedHint),baseUrl:u(e.baseUrl),proxyUrl:u(e.proxyUrl),expiresAt:u(e.expiresAt),lastFailureCode:u(e.lastFailureCode),lastFailureAt:u(e.lastFailureAt),rateLimitResetAt:u(e.rateLimitResetAt),failCount:pe(e.failCount),version:e.version})}function et(e){return b(e)?Object.fromEntries(Object.entries(e).filter(([t])=>!Qt(t)).map(([t,r])=>[t,tt(r)])):{}}function tt(e){return Array.isArray(e)?e.map(tt):b(e)?et(e):e}function Qt(e){const t=e.toLocaleLowerCase();return t.includes("secret")||t.includes("token")||t.includes("apikey")||t==="api_key"||t==="key"||t==="authorization"}function er(e,t){const r=se([...e.credentials,...t.credentials],o=>o.id),n=se([...e.offerings,...t.offerings],o=>o.id),i=se([...e.selectedModels,...t.selectedModels],tr);return{id:e.id,name:e.name??t.name,offerings:n,credentials:r,selectedModels:i,status:nr(e.status,t.status)}}function tr(e){return e.resourceId??`${e.provider}:${e.offeringId??""}:${e.id}`}function rr(e){return e==="connected"?"available":e==="reauthRequired"?"attention":"unconfigured"}function nr(e,t){return e==="available"||t==="available"?"available":e==="attention"||t==="attention"?"attention":e==="configured"||t==="configured"?"configured":e==="unconfigured"||t==="unconfigured"?"unconfigured":"unavailable"}function ir(e,t){if(e.status==="disconnected")return;const r=or(e.authMode);return g({id:u(e.credentialIri)??`${t}:current`,offeringId:ar(t,r),authMode:r,label:u(e.accountLabel),enabled:e.status==="connected",priority:0,health:e.status==="reauthRequired"||e.reauthRequired===!0?"expired":"healthy",maskedHint:u(e.maskedHint),baseUrl:u(e.baseUrl),proxyUrl:u(e.proxyUrl),expiresAt:u(e.expiresAt),version:typeof e.version=="number"?e.version:0})}function or(e){return e==="deviceCodeOAuth"?"deviceCode":"apiKey"}function ar(e,t){return e==="kimi"&&(t==="deviceCode"||t==="oauth")?"subscription-key":t==="deviceCode"||t==="oauth"?"official-subscription":"api-platform"}function rt(e){return nt(e)?e:void 0}function nt(e){return e==="oauth"||e==="deviceCode"||e==="apiKey"||e==="local"}function sr(e){return e==="healthy"||e==="expired"||e==="invalid"||e==="unknown"}function cr(e){return e==="unconfigured"||e==="configured"||e==="available"||e==="attention"||e==="unavailable"}function k(e,t){return Array.isArray(e)?e.map(t).filter(D):[]}function se(e,t){const r=new Set,n=[];for(const i of e){const o=t(i);r.has(o)||(r.add(o),n.push(i))}return n}function it(e){return He[e]}function dr(e){if(!b(e)||typeof e.id!="string"||typeof e.credentialIri!="string"||typeof e.webId!="string"||typeof e.provider!="string"||typeof e.authMode!="string"||typeof e.status!="string")return;const t=U(e.provider);if(t)return g({id:e.id,credentialIri:e.credentialIri,webId:e.webId,provider:t,authMode:e.authMode,status:e.status,accountLabel:u(e.accountLabel),expiresAt:u(e.expiresAt),version:typeof e.version=="number"?e.version:void 0,reauthRequired:typeof e.reauthRequired=="boolean"?e.reauthRequired:void 0})}function lr(e,t){if(!b(e)||!ge(e.mode)||!yr(e.status)||e.provider!==t)throw new Error("AI Connection returned an invalid Connect response");return g({mode:e.mode,status:e.status,provider:t,attemptId:u(e.attemptId),state:u(e.state),signature:u(e.signature),expiresAt:u(e.expiresAt),authorizationUrl:ce(e.authorizationUrl),userCode:u(e.userCode),verificationUri:ce(e.verificationUri),verificationUriComplete:ce(e.verificationUriComplete),intervalSeconds:typeof e.intervalSeconds=="number"?e.intervalSeconds:void 0,apiKeyManagementSupported:typeof e.apiKeyManagementSupported=="boolean"?e.apiKeyManagementSupported:void 0,credentialId:u(e.credentialId),offeringId:u(e.offeringId),authorizationMethodId:u(e.authorizationMethodId),oauthCredential:ur(e.oauthCredential),message:u(e.message)})}function ur(e){if(e!==void 0){if(!b(e)||typeof e.accessToken!="string"||!e.accessToken||typeof e.refreshToken!="string"||!e.refreshToken)throw new Error("AI Connection returned an invalid OAuth credential payload");return g({accessToken:e.accessToken,refreshToken:e.refreshToken,expiresAt:u(e.expiresAt),scope:u(e.scope),idToken:u(e.idToken),accountSubject:u(e.accountSubject),accountId:u(e.accountId),accountLabel:u(e.accountLabel),offeringId:u(e.offeringId),authorizationMethodId:u(e.authorizationMethodId),expectedVersion:typeof e.expectedVersion=="number"?e.expectedVersion:void 0})}}function pr(e,t){if(!b(e)||!Array.isArray(e.models))throw new Error("AI Connection returned an invalid model discovery response");const r=e.models.map(n=>{if(!b(n)||typeof n.id!="string"||!n.id)return;const i=Array.isArray(n.capabilities)?n.capabilities.filter(c=>typeof c=="string"):void 0,o=fr(n.modelType);return g({id:n.id,displayName:u(n.displayName),capabilities:i??(o==="embedding"?["embedding"]:void 0),modelType:o})}).filter(D);return{provider:t,credential:typeof e.credential=="string"?e.credential:"",models:r,observedAt:typeof e.observedAt=="string"?e.observedAt:new Date(0).toISOString(),source:typeof e.source=="string"?e.source:""}}function g(e){return Object.fromEntries(Object.entries(e).filter(([,t])=>t!==void 0))}function fr(e){return e==="chat"||e==="embedding"?e:void 0}function u(e){return typeof e=="string"?e:void 0}function ce(e){if(typeof e=="string")try{const t=new URL(e);return t.protocol==="https:"||t.protocol==="http:"?t.href:void 0}catch{return}}function ge(e){return e==="browserAssistedApiKey"||e==="deviceCodeOAuth"||e==="authorizationCodeOAuth"||e==="connectUnsupported"}function yr(e){return e==="pending"||e==="authorization_pending"||e==="slow_down"||e==="completed"||e==="expired"||e==="cancelled"||e==="unsupported"}function mr(e){return e==="connected"||e==="disconnected"||e==="reauthRequired"}function b(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function D(e){return e!==void 0}function we(e){const t=new URL(e);if(t.protocol!=="https:"&&t.protocol!=="http:")throw new Error("Current Pod URL must use HTTP or HTTPS");return t.origin}function hr({webId:e,podBaseUrl:t,authenticatedFetch:r}){const n=we(t),i=async(a,s,d,f={})=>{const m=await r(`${n}${a}`,{method:s,credentials:"omit",mode:"cors",headers:{accept:"application/json",...d?{"content-type":"application/json"}:{}},...d?{body:JSON.stringify(d)}:{}}),w=await Oe(m);if(!m.ok)throw new te(w,m.status,f);return w},o=a=>(qt(a),`/api/ai/gateway/providers/${a}`),c=async(a,s,d,f)=>{const m=await i(`${o(a)}${s}`,d,f,{provider:a});return lr(m,a)},l=()=>i("/v1/models","GET"),y=async()=>{const a=await l();return Array.isArray(a.data)?a.data.map(Ye).filter(D):[]};return{webId:e,apiBase:n,getServiceAccess(){return i("/api/applets/service-access/ai-connections","GET")},async listProviders(){const a=await i("/api/ai/providers","GET");return Array.isArray(a.data)?jt(a.data):[]},async listAuthorizationMethods(){const a=await r(`${n}/api/ai/connections/authorization-methods`,{method:"GET",credentials:"omit",mode:"cors",headers:{accept:"application/json"}});if(a.status===404)return[];const s=await Oe(a);if(!a.ok)throw new te(s,a.status);return b(s)&&Array.isArray(s.data)?s.data.map(Wt).filter(D):[]},listModels:y,listGatewayModels:y,async listGatewayCatalogModels(){const a=await l();if(!b(a)||!Array.isArray(a.data))throw new Error("AI Connection returned an invalid Gateway model catalog response");return a.data.map(Dt).filter(D)},async listGatewayKeys(){const a=await i("/api/ai/gateway/keys","GET");return Array.isArray(a.data)?a.data.map(ae).filter(D):[]},async createGatewayKey(a){const s=await i("/api/ai/gateway/keys","POST",g(a));if(typeof s.key!="string"||!s.key)throw new Error("Xpod did not return the new API Key");const d=ae(s.record);if(!d)throw new Error("Xpod returned an invalid API Key record");return{plaintext:s.key,record:d}},async updateGatewayKey(a,s){const d=await i(`/api/ai/gateway/keys/${encodeURIComponent(a)}`,"PATCH",s),f=ae(d.record);if(!f)throw new Error("Xpod returned an invalid API Key record");return f},async deleteGatewayKey(a){await i(`/api/ai/gateway/keys/${encodeURIComponent(a)}`,"DELETE")},async beginConnect(a,s,d){return await c(a,"/connect/begin","POST",g({mode:s,offeringId:d?.offeringId,authorizationMethodId:d?.authorizationMethodId}))},connectStatus(a,s){if(!s.attemptId)throw new Error("Connect attempt id is required");const d=new URLSearchParams({state:s.state??"",signature:s.signature??""});return s.mode&&d.set("mode",s.mode),c(a,`/connect/status/${encodeURIComponent(s.attemptId)}?${d}`,"GET")},completeApiKey(a,s,d,f,m){return c(a,"/connect/complete-api-key","POST",g({attemptId:s.attemptId,state:s.state,signature:s.signature,offeringId:s.offeringId,apiKey:d,accountLabel:f,baseUrl:m}))},pollDevice(a,s){return c(a,"/connect/poll","POST",g({mode:s.mode,attemptId:s.attemptId,state:s.state,signature:s.signature,offeringId:s.offeringId}))},cancelConnect(a,s){return c(a,"/connect/cancel","POST",g({mode:s.mode,attemptId:s.attemptId,state:s.state,signature:s.signature,offeringId:s.offeringId}))},refreshOAuthCredential(a,s,d,f,m,w){return c(a,"/connect/refresh","POST",{credentialId:s,refreshToken:d,expectedVersion:f,...m?{offeringId:m}:{},...w?{mode:w}:{}})},async disconnect(a,s){const d=s?`?${new URLSearchParams({credentialId:s})}`:"",f=await i(`${o(a)}/connect${d}`,"DELETE");return dr(f.record)},async createApiKeyCredential(a,s){const d=await i(`/api/ai/providers/${a}/credentials/api-key`,"POST",g({...s}),{provider:a}),f=H(d.credential);if(!f)throw new Error("AI Connection returned an invalid Provider credential");return f},async createLocalCredential(a,s){const d=await i(`/api/ai/providers/${a}/credentials/local`,"POST",g(s),{provider:a}),f=H(d.credential);if(!f)throw new Error("AI Connection returned an invalid Provider credential");return f},async updateProviderCredential(a,s,d){const f=await i(`/api/ai/providers/${a}/credentials/${encodeURIComponent(s)}`,"PATCH",g({...d}),{provider:a}),m=H(f.credential);if(!m)throw new Error("AI Connection returned an invalid Provider credential");return m},async deleteProviderCredential(a,s){const d=await i(`/api/ai/providers/${a}/credentials/${encodeURIComponent(s)}`,"DELETE",void 0,{provider:a});return H(d.credential)},async testProviderCredential(a,s){const d=await i(`/api/ai/providers/${a}/credentials/test`,"POST",g({...s}),{provider:a});return et(d.result)},quota(a,s=!1,d){const f=!s&&d?.credentialIri?`?credentialIri=${encodeURIComponent(d.credentialIri)}${d.offeringId?`&offeringId=${encodeURIComponent(d.offeringId)}`:""}`:"";return i(`${o(a)}/quota/${s?"refresh":"status"}${f}`,s?"POST":"GET",s?g({offeringId:d?.offeringId,credentialId:d?.credentialId,credentialIri:d?.credentialIri}):void 0,{provider:a})},quotaFromSecret(a,s){return i(`${o(a)}/quota/refresh`,"POST",g(s),{provider:a})},async discoverModels(a,s){const d=await i(`${o(a)}/models/refresh`,"POST",g({...s}),{provider:a,authMode:s?.authMode});return pr(d,a)},async saveProviderModel(a,s){const d=await i(o(a)+"/models","POST",g({id:s.id,displayName:s.displayName,inputModalities:s.inputModalities,outputModalities:s.outputModalities,capabilities:s.capabilities}),{provider:a});return Te(d.data)},async deleteProviderModel(a,s){const d=await i(`${o(a)}/models/${encodeURIComponent(s)}`,"DELETE",void 0,{provider:a});return Te(d.data)}}}function br(e){const t=new TextEncoder().encode(JSON.stringify(e));let r="";for(const n of t)r+=String.fromCharCode(n);return btoa(r)}function gr(e){const t=atob(e),r=Uint8Array.from(t,n=>n.charCodeAt(0));return JSON.parse(new TextDecoder().decode(r))}function wr(e){return JSON.stringify({algorithm:"PLAINTEXT",encoding:"base64",ciphertext:br(e.secret),webId:e.webId,credentialIri:e.credentialIri,provider:e.provider})}function Ir(e){if(!(typeof e.envelope!="string"||!e.envelope.trim()))try{const t=JSON.parse(e.envelope);if(t.algorithm!=="PLAINTEXT"||t.webId!==e.webId||t.provider!==e.provider||t.credentialIri!==e.credentialIri)return;const r=t.encoding==="base64"?gr(String(t.ciphertext)):JSON.parse(String(t.ciphertext));return typeof r=="object"&&r!==null&&!Array.isArray(r)?r:void 0}catch{return}}function Ar(e){return A.buildId({id:e})}function _r(e){return A.buildId({id:`custom-instance-${encodeURIComponent(e)}.ttl#this`})}function Le(e,t){const r=crypto.randomUUID();return t==="local"?`${e}-local-${r}`:`${e}-${r}`}function mn(e){const t=(e.split("#",1)[0]??e).split("/").filter(Boolean).at(-1)??"",r=t.endsWith(".ttl")?t.slice(0,-4):t;if(r)return r.startsWith("custom-")||r==="custom"?"custom":W.find(n=>r===n||r.startsWith(`${n}-`))}function x(e){if(!e)return;const t=e.split("#",1)[0]??e,r=t.split("/").filter(Boolean).at(-1)??t;if(!r)return;const n=r.endsWith(".ttl")?r:`${r}.ttl`,i=e.indexOf("#");return i<0?n:`${n}${e.slice(i)}`}function M(e){const t=x(e);if(t)return(t.split("#",1)[0]??t).replace(/\.ttl$/u,"")}const ot="AI Connection request failed. Please try again.";function ee(e){return typeof e=="object"&&e!==null}const at="订阅登录态自动刷新失败,请稍后重试。",st="订阅登录态已失效,请在原客户端重新登录后重读,或使用设备码登录。",ct="模型服务请求超时。请检查网络或代理设置,稍后重试同步模型。",dt="订阅登录态不可用,请重读登录态或重新登录后再同步模型。",lt=new Set([ct,dt,at,st,"密钥不可用。请检查密钥是否填写正确,或换一个密钥后重试。","模型服务地址不正确。请检查服务地址后重试。","请求太频繁。请稍等一会儿再试。","模型服务暂时没有响应。请稍后重试。","模型列表获取失败。请检查密钥、服务地址或网络后重试。"]);function $e(e){if(e.startsWith("provider_models_response_error:"))return Ie(e.slice(31))??"模型列表获取失败。请检查密钥、服务地址或网络后重试。";const t=re(e);if(t)return t;const r=e.split(":",1)[0]?.trim(),n=r?re(r):void 0;return n||(e==="AI Connection service identity is unavailable"||lt.has(e)||Er(e)?e:e.startsWith("invalid_")?"AI Connection returned an invalid response.":ot)}function Pr(e){return e instanceof te?Cr(e.payload,e.status,{provider:e.provider,authMode:e.authMode}):e instanceof Error?$e(e.message):$e(String(e))}function Cr(e,t,r={}){const n=Xe(e);if(n==="provider_models_response_error"){const c=ee(e)&&typeof e.message=="string"?Ie(e.message):void 0;return c||"模型列表获取失败。请检查密钥、服务地址或网络后重试。"}if(n==="provider_models_fetch_failed"){const c=ee(e)&&typeof e.providerStatus=="number"?e.providerStatus:void 0,l=ee(e)&&typeof e.providerMessage=="string"?e.providerMessage.trim():void 0;return Sr(Ur(c,r.authMode),l)}const i=n?re(n,r.provider):void 0;if(i)return i;const o=ee(e)&&typeof e.error=="string"?e.error:void 0;if(o){const c=re(o,r.provider);if(c)return c;if(o==="AI Connection service identity is unavailable")return o;if(o==="Provider credential not found for current identity")return"当前身份没有可用的额度凭证。";if(o==="Provider quota adapter not found"||o==="Provider quota lookup failed")return"该接入方式不支持查询官方额度。"}return t===401?"Please sign in again to continue.":t===403?"AI Connection permission was denied.":t===404&&r.provider?`${fe(r.provider)} connection is not configured.`:t===429?"AI Connection is rate limited. Please try again later.":t===503?"AI Connection service is unavailable.":ot}function re(e,t){switch(e.trim().toLowerCase().replace(/-/g,"_")){case"not_configured":case"notconfigured":return t?`${fe(t)} connection is not configured.`:"AI provider connection is not configured.";case"unsupported":return t?`${fe(t)} does not support this operation.`:"This AI Connection operation is not supported.";case"service_access_missing":case"pod_interface_key_missing":case"pod_interface_key_rejected":case"caller_dpop_replay_unsupported":return"Xpod 尚未获准访问这个 Pod,请到 Pod 的授权应用中允许 Xpod 访问。";case"unauthorized":return"Please sign in again to continue.";case"forbidden":case"permission_denied":return"AI Connection permission was denied.";case"rate_limited":return"AI Connection is rate limited. Please try again later.";case"service_unavailable":return"AI Connection service is unavailable.";case"unsafe_provider_base_url":return"该服务地址指向 Xpod 不允许访问的网络,请改用公网 HTTPS 地址。";case"provider_request_timeout":return ct;case"invalid_proxy_url":return"代理地址必须是无账号密码的 HTTP 或 HTTPS 地址。";case"oauth_refresh_failed":case"oauth_refresh_unavailable":case"local_session_refresh_failed":return at;case"oauth_session_reauth_required":case"oauth_refresh_token_required":case"local_session_reauth_required":case"local_session_missing_refresh_token":return st;case"models_persistence_failed":return"模型已获取,但保存到 Pod 失败。请重试同步模型。";case"quota_credential_not_found":return"当前身份没有可用的额度凭证。";case"credential_secret_unavailable":return"当前凭证密钥不可用,请重新保存后再查询额度。";case"gateway_api_key_plaintext_unavailable":return"Pod 中未找到此 API Key 的原文,无法复制配置。请创建新的 Key,更新客户端后再删除旧 Key。";case"quota_adapter_not_found":return"该接入方式不支持查询官方额度。";default:return}}function Ur(e,t){return e===401||e===403?t==="deviceCodeOAuth"?dt:"密钥不可用。请检查密钥是否填写正确,或换一个密钥后重试。":e===404?"模型服务地址不正确。请检查服务地址后重试。":e===429?"请求太频繁。请稍等一会儿再试。":e!==void 0&&e>=500?"模型服务暂时没有响应。请稍后重试。":"模型列表获取失败。请检查密钥、服务地址或网络后重试。"}function Sr(e,t){const r=t?Ie(t):void 0;return r?`${e} 上游返回:${r}`:e}function Er(e){const r=e.indexOf(" 上游返回:");return r<=0?!1:lt.has(e.slice(0,r))}function Ie(e){return e.replace(/[\u0000-\u001f\u007f]/gu," ").replace(/\bBearer\s+[^\s,;]+/giu,"Bearer [REDACTED]").replace(/(?:sk|id)[._-][A-Za-z0-9._-]{8,}/gu,"[REDACTED]").replace(/https?:\/\/[^\s]+/giu,"[URL]").trim().slice(0,240)||void 0}function fe(e){switch(e){case"openai":return"OpenAI";case"anthropic":return"Anthropic";case"kimi":return"Kimi";case"bailian":return"Bailian";case"deepseek":return"DeepSeek";case"zhipu":return"Zhipu";case"ollama":return"Ollama";case"custom":return"Custom"}}function kr(e){const t={...e};for(const[r,n]of Object.entries(e))typeof n=="function"&&(t[r]=async(...i)=>{try{return await n.apply(e,i)}catch(o){throw o instanceof te&&(o.message=Pr(o)),o}});return t}const Mr={"api-key":"添加 API Key","browser-login":"打开控制台","browser-oauth":"浏览器登录","device-code":"设备码登录","local-session-import":"已有登录态","local-service":"本地服务"};function Rr(e){return e.label??Mr[e.id]}function hn(e){return e.map(t=>{const r=Rr(t);return r===t.label?t:{...t,label:r}})}function ne(e){return He[e]}const Or=3e4;function bn({webId:e,podUrl:t,authenticatedFetch:r}){return kr(hr({webId:e,podBaseUrl:t,authenticatedFetch:Tr(r)}))}function Tr(e){return(async(t,r)=>ye(await e(t,r)))}function xr({podUrl:e,authenticatedFetch:t,invocationFetch:r=t,now:n=()=>new Date,invocationSelector:i=zr}){const o=we(e);let c,l;const y=async(f,m)=>{const w=await t(f,m);return c=await Nr(w.clone(),i),w},a=async()=>{if(Dr(c,n()))return c;if(l)return l;l=s();try{return await l}finally{l=void 0}},s=async()=>{if(!(await y(`${o}/api/applets/service-access/ai-connections`,{method:"GET",credentials:"include",headers:{accept:"application/json"}})).ok)throw new Error("AI Connection request failed. Please try again.");const m=c;if(!m?.token)throw new Error("AI Connection request failed. Please try again.");return m},d=async(f,m)=>{const w=await a(),S=Kr(w);if(!S)throw new Error("AI Connection request failed. Please try again.");const F=new Headers(m?.headers);return F.set("Authorization",`Bearer ${S}`),r(f,{...m,credentials:"omit",headers:F})};return(async(f,m)=>{if(Lr(f,o))return y(f,m);if(!$r(f,o))return t(f,m);const w=await d(f,m);if(w.status!==401)return ye(w);await w.arrayBuffer(),c=void 0;const S=await d(f,m);return ye(S)})}function gn({podUrl:e,controlPlaneOrigin:t,authenticatedFetch:r,invocationFetch:n,now:i}){const o=we(e),c=n??r,y=xr({podUrl:e,authenticatedFetch:r,invocationFetch:(a,s)=>{const d=new URL(a instanceof Request?a.url:String(a),o);if(t&&d.origin===o&&d.pathname.startsWith("/api/ai/client-configuration/")){const f=new URL(`${d.pathname}${d.search}`,t);return c(a instanceof Request?new Request(f,a):f.href,s)}return c(a,s)},now:i,invocationSelector:qr});return{inspect:async a=>{const s=await y($(o,a),{method:"GET",credentials:"omit",headers:{accept:"application/json"}});return s.status===403||s.status===404||s.status===503?(await s.arrayBuffer(),Ne()):N(s)},plan:async a=>N(await y(`${$(o,a.client)}/plan`,{method:"POST",credentials:"omit",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify({endpoint:t?new URL(t).origin:a.endpoint,...a.activeModels!==void 0?{activeModels:a.activeModels}:{}})})),apply:async a=>N(await y(`${$(o,a.client)}/apply`,{method:"POST",credentials:"omit",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify({planId:a.planId,apiKey:a.apiKey,confirmation:a.confirmation})})),verify:async a=>N(await y(`${$(o,a.client)}/verify`,{method:"POST",credentials:"omit",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify({planId:a.planId})})),launch:async a=>N(await y(`${$(o,a)}/launch`,{method:"POST",credentials:"omit",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify({})})),restore:async a=>{const s=await y(`${$(o,a)}/restore`,{method:"POST",credentials:"omit",headers:{accept:"application/json","content-type":"application/json"},body:JSON.stringify({})});return s.status===403||s.status===404||s.status===503?(await s.arrayBuffer(),Ne()):N(s)}}}function Lr(e,t){try{const r=new URL(String(e),t),n=new URL(t);return r.origin===n.origin&&r.pathname==="/api/applets/service-access/ai-connections"}catch{return!1}}function $r(e,t){try{const r=new URL(String(e),t),n=new URL(t);return r.origin===n.origin&&(r.pathname.startsWith("/api/ai/")||r.pathname.startsWith("/v1/"))}catch{return!1}}async function Nr(e,t){if(!(!e.ok||!e.headers.get("content-type")?.includes("application/json")))try{const r=await e.json();return vr(t(r))}catch{return}}function zr(e){return e.invocation}function qr(e){const t=e.aiClientConfiguration;return ie(t)?t.invocation:void 0}function Dr(e,t){if(!e?.token)return!1;if(!e.expiresAt)return!0;const r=Date.parse(e.expiresAt);return Number.isFinite(r)&&r-t.getTime()>Or}function Kr(e){return e?.token}function vr(e){if(!ie(e))return;const t=["gateway","Key"].join("");return{token:typeof e.token=="string"?e.token:typeof e.apiKey=="string"?e.apiKey:typeof e[t]=="string"?e[t]:void 0,baseUrl:typeof e.baseUrl=="string"?e.baseUrl:void 0,expiresAt:typeof e.expiresAt=="string"?e.expiresAt:void 0}}async function ye(e){return e.ok?e:e.headers.get("content-type")?.includes("application/json")?jr(e):(await e.arrayBuffer(),new Response(JSON.stringify({error:"internal_error"}),{status:e.status,statusText:e.statusText,headers:{"content-type":"application/json"}}))}function $(e,t){return`${e}/api/ai/client-configuration/${encodeURIComponent(t)}`}async function N(e){if(!e.ok)throw await Fr(e);if(!e.headers.get("content-type")?.includes("application/json"))throw await e.arrayBuffer(),new Error("AI client configuration request failed. Please try again.");return await e.json()}async function Fr(e){let t;try{t=e.headers.get("content-type")?.includes("application/json")?await e.json():void 0}catch{t=void 0}if(ie(t)){const r=typeof t.code=="string"?t.code:typeof t.error=="string"?t.error:void 0,n=typeof t.message=="string"?t.message:"AI client configuration request failed. Please try again.",i=new Error(n);return i.code=r,i.status=e.status,i.details=t.details,i}return await e.arrayBuffer().catch(()=>{}),new Error("AI client configuration request failed. Please try again.")}function Ne(){return{status:"unavailable",message:"Host does not support local client configuration. Use the manual setup instructions for your client."}}async function jr(e){let t;try{t=await e.clone().json()}catch{return e}const r=Hr(t);return r?new Response(JSON.stringify({code:r}),{status:e.status,statusText:e.statusText,headers:{"content-type":"application/json"}}):Br(t)?new Response(JSON.stringify({code:t.error.code,error:t.error.message}),{status:e.status,statusText:e.statusText,headers:{"content-type":"application/json"}}):e}function Br(e){if(!e||typeof e!="object"||Array.isArray(e))return!1;const t=e.error;return!!(t&&typeof t=="object"&&!Array.isArray(t)&&typeof t.code=="string"&&typeof t.message=="string"&&typeof t.status=="number")}function Hr(e){if(!(!ie(e)||typeof e.error!="string")&&e.error==="Gateway API Key plaintext is not available")return"gateway_api_key_plaintext_unavailable"}function ie(e){return!!(e&&typeof e=="object"&&!Array.isArray(e))}const V=Array.from(new Set([...W,"zhipu","ollama","custom"])),ze=new WeakMap,Gr=Ce.storage.base.slice(Ce.storage.base.lastIndexOf("/")+1);function Vr(e){const t=e.indexOf("#");return t<0?e:e.slice(0,t)}function wn(e){wt();const t=new URL("settings/-/sparql",e.podUrl).toString();return h.setSparqlEndpoint(t),A.setSparqlEndpoint(t),I.setSparqlEndpoint(t),{credentialsTableDocument(){return h.buildIri(e.podUrl,{id:Gr})},providerTableDocument(r,n){const i=P(r);if(!i)throw new Error("unsupported_provider");const o=i==="custom"&&n?me(n):R(i);return A.buildIri(e.podUrl,{id:Vr(o)})},async listModels(){return await e.database.init?.(I),(await e.database.select().from(I).execute()).map(Qr).filter(T)},async listProviders(){await e.database.init?.(h,A,I);const r=await e.database.select().from(h).execute(),n=await e.database.select().from(A).execute(),i=await e.database.select().from(I).execute();return Jr(e,r,n,i)},async createApiKeyCredential(r,n){const i=P(r);if(!i)throw new Error("unsupported_provider");await e.database.init?.(h,A);const o=p(n.id),c=o??h.buildId({id:Le(i,"apiKey")}),l=1,y=Z(i,n.offeringId??G(i,"apiKey")),a=n.baseUrl??Re(i,y),s=de(n.proxyUrl),d={id:c,provider:i==="custom"?me(c):R(i),service:"ai",authMode:"apiKey",offeringId:y,status:"active",accountLabel:n.label,label:n.label,baseUrl:a,proxyUrl:s,keyVersion:String(l),reauthRequired:!1,encryptedSecret:j(e,i,c,{type:"apiKey",apiKey:n.apiKey}),encryptionAlgorithm:"PLAINTEXT",metadata:{...Q({offeringId:y,baseUrl:a,priority:n.priority}),...n.compatibility?{compatibility:n.compatibility}:{}}};return await De(e,c,d,o!==void 0),_(e,i,d)},async createLocalCredential(r,n){const i=P(r);if(!i)throw new Error("unsupported_provider");await e.database.init?.(h,A);const o=p(n.id),c=o??h.buildId({id:Le(i,"local")}),l=Z(i,n.offeringId??G(i,"local")),y=n.baseUrl??Re(i,l),a={id:c,provider:R(i),service:"ai",authMode:"local",offeringId:l,status:"active",accountLabel:n.label??"Local",label:n.label??"Local",baseUrl:y,keyVersion:"1",reauthRequired:!1,encryptedSecret:j(e,i,c,{type:"local"}),encryptionAlgorithm:"PLAINTEXT",metadata:Q({offeringId:l,baseUrl:y,priority:n.priority})};return await De(e,c,a,o!==void 0),_(e,i,a)},async saveOAuthCredential(r,n){const i=P(r);if(!i)throw new Error("unsupported_provider");const c=(ze.get(e.database)??Promise.resolve()).then(async()=>{await e.database.init?.(h,A);const l=Z(i,n.offeringId??G(i,"deviceCode")),a=(await e.database.select().from(h).execute()).find(E=>{const L=_(e,i,E);if(!L||L.authMode!=="deviceCode"&&L.authMode!=="oauth"||ve(i,L.offeringId)!==ve(i,l)||E.status!=="active"&&E.status!=="disabled")return!1;const bt=z(e,i,L.id,E.encryptedSecret);return Xr(n,C(E.metadata),bt)}),s=a&&_(e,i,a),d=C(a?.metadata),f=s&&z(e,i,s.id,a?.encryptedSecret),m=s?.id??h.buildId({id:`${i}-oauth-${crypto.randomUUID()}`}),w=n.accountLabel??"OAuth",S=n.accountId??p(d?.accountId)??p(f?.accountId),F=n.accountSubject??p(d?.authoritativeSubject)??p(f?.accountSubject)??p(f?.authoritativeSubject),oe={...a,id:m,provider:R(i),service:"ai",authMode:"deviceCodeOAuth",offeringId:l,status:s?.enabled===!1?"disabled":"active",accountLabel:a?.accountLabel??w,label:a?.label??w,expiresAt:n.expiresAt,scopes:n.scope?n.scope.split(/\s+/u).filter(Boolean):void 0,keyVersion:String((s?.version??0)+1),reauthRequired:!1,failCount:0,lastFailureCode:null,lastFailureAt:null,rateLimitResetAt:null,encryptedSecret:j(e,i,m,{type:"deviceCodeOAuth",accessToken:n.accessToken,refreshToken:n.refreshToken,expiresAt:n.expiresAt,scope:n.scope,idToken:n.idToken,accountId:S,accountSubject:F,accountLabel:n.accountLabel,offeringId:l,authorizationMethodId:n.authorizationMethodId}),encryptionAlgorithm:"PLAINTEXT",metadata:{...d,...Q({offeringId:l,priority:s?.priority,enabled:s?.enabled,health:"healthy"}),authoritativeSubject:F,accountId:S,authorizationMethodId:n.authorizationMethodId}};if(a){const E={...oe};if(delete E.id,!await e.database.updateById(h,m,E))throw new Error("credential_version_conflict")}else await e.database.insert(h).values(oe).execute();return _(e,i,oe)});return ze.set(e.database,c.then(()=>{},()=>{})),c},async updateOAuthCredential(r,n,i,o){const c=P(r);if(!c)throw new Error("unsupported_provider");await e.database.init?.(h,A);const l=await e.database.findById(h,n),y=l&&_(e,c,l);if(!l||!y||y.authMode!=="deviceCode")throw new Error("oauth_credential_not_found");if(y.version!==i)throw new Error("credential_version_conflict");const a=z(e,c,n,l.encryptedSecret),s=o.accountId??p(C(l.metadata)?.accountId)??p(a?.accountId),d=o.accountSubject??p(C(l.metadata)?.authoritativeSubject)??p(a?.accountSubject)??p(a?.authoritativeSubject),f=Z(c,o.offeringId??y.offeringId),m={expiresAt:o.expiresAt,scopes:o.scope?o.scope.split(/\s+/u).filter(Boolean):void 0,keyVersion:String(i+1),reauthRequired:!1,failCount:0,lastFailureCode:null,lastFailureAt:null,rateLimitResetAt:null,status:"active",encryptedSecret:j(e,c,n,{type:"deviceCodeOAuth",accessToken:o.accessToken,refreshToken:o.refreshToken,expiresAt:o.expiresAt,scope:o.scope,idToken:o.idToken,accountId:s,accountSubject:d,accountLabel:o.accountLabel??p(l.accountLabel),offeringId:f,authorizationMethodId:o.authorizationMethodId??p(C(l.metadata)?.authorizationMethodId)}),accountLabel:o.accountLabel??p(l.accountLabel),label:o.accountLabel??p(l.label),offeringId:f,metadata:{...C(l.metadata),...Q({offeringId:f,health:"healthy"}),authoritativeSubject:d,accountId:s,authorizationMethodId:o.authorizationMethodId??p(C(l.metadata)?.authorizationMethodId)}},w=await e.database.updateById(h,n,m);if(!w)throw new Error("credential_version_conflict");return _(e,c,w)},async updateProviderCredential(r,n,i){const o=P(r);if(!o)throw new Error("unsupported_provider");await e.database.init?.(h,A);const c=await e.database.findById(h,n),l=c&&_(e,o,c);if(!c||!l)throw new Error("credential_not_found");if(l.version!==i.expectedVersion)throw new Error("credential_version_conflict");if(i.apiKey!==void 0&&(l.authMode!=="apiKey"||typeof i.apiKey!="string"||!i.apiKey.trim()))throw new Error("invalid_api_key_replacement");const y=i.apiKey!==void 0&&z(e,o,n,c.encryptedSecret)?.apiKey!==i.apiKey,a={...C(c.metadata),...i.priority===void 0?{}:{priority:i.priority},...i.enabled===void 0?{}:{enabled:i.enabled},...i.baseUrl===void 0?{}:{baseUrl:i.baseUrl},...i.proxyUrl===void 0?{}:{proxyUrl:de(i.proxyUrl)},...y?{health:"unknown"}:{}},s={...i.label===void 0?{}:{accountLabel:i.label,label:i.label},...i.baseUrl===void 0?{}:{baseUrl:i.baseUrl},...i.proxyUrl===void 0?{}:{proxyUrl:de(i.proxyUrl)},...i.enabled===void 0?{}:{status:i.enabled?"active":"disabled"},...y?{encryptedSecret:j(e,o,n,{type:"apiKey",apiKey:i.apiKey}),encryptionAlgorithm:"PLAINTEXT",reauthRequired:!1,failCount:0,lastFailureCode:null,lastFailureAt:null,rateLimitResetAt:null}:{},keyVersion:String(l.version+1),metadata:a},d=await e.database.updateById(h,n,s);if(!d)throw new Error("credential_update_failed");const f=_(e,o,d);if(!f)throw new Error("credential_update_failed");return f},async markCredentialHealth(r,n,i,o){const c=P(r);if(!c)throw new Error("unsupported_provider");await e.database.init?.(h);const l=await e.database.findById(h,n),y=l&&_(e,c,l);if(!l||!y)throw new Error("credential_not_found");if(y.version!==o)throw new Error("credential_version_conflict");const a=await e.database.updateById(h,n,{keyVersion:String(y.version+1),metadata:{...C(l.metadata),health:i},...i==="healthy"?{failCount:0,lastFailureCode:null,lastFailureAt:null,rateLimitResetAt:null,reauthRequired:!1}:{}});if(!a)throw new Error("credential_update_failed");const s=_(e,c,a);if(!s)throw new Error("credential_update_failed");return s},async deleteProviderCredential(r,n){const i=P(r);if(!i)throw new Error("unsupported_provider");await e.database.init?.(h,A);const o=await e.database.findById(h,n),c=o&&_(e,i,o);if(c)return await e.database.deleteById(h,n),c},async readCredentialSecret(r,n){const i=P(r);if(!i)throw new Error("unsupported_provider");const o=await e.database.findById(h,n);if(!o||!_(e,i,o))throw new Error("credential_not_found");const c=z(e,i,n,o.encryptedSecret);if(!c)throw new Error("credential_secret_unavailable");return c},async saveDiscoveredModels(r,n,i){const o=P(r);if(!o)throw new Error("unsupported_provider");await e.database.init?.(h,A,I);const c=await qe(e,n),l=Ke(o,c);await Fe(e.database,l,ne(o));const y=await e.database.select().from(I).execute(),a=new Set(y.map(f=>p(f.id)).filter(T)),s=i.map(en).filter(T),d=new Set(s.map(f=>f.id));for(const f of y.filter(m=>tn(m,l,o))){const m=O(p(f.id),l)??yt(p(f.id));m&&!d.has(m)&&p(f.status)!=="unavailable"&&await e.database.updateById(I,String(f.id),{status:"unavailable"})}for(const f of s)await rn(e,l,f,a)},async saveModelSelection(r,n,i){const o=P(r);if(!o)throw new Error("unsupported_provider");await e.database.init?.(A,I);const c=o==="custom"&&i?await qe(e,i):null;if(o==="custom"&&i&&!c)throw new Error("credential_not_found");const l=c?Ke(o,c):R(o);await Fe(e.database,l,ne(o));const a=(await e.database.select().from(A).execute()).find(m=>v(p(m.id),l)),s=p(a?.id)??l,d=await e.database.select().from(I).execute(),f=[...new Set(n.map(m=>on(o,m,d,c?l:void 0)))];await Wr(e,s,f)}}}async function ut(e,t,r,n){if(n.length===0)return;if(!e.authenticatedFetch)throw new Error("uri_array_authenticated_fetch_required");const i=pt(t,e.podUrl,r),o=y=>{if(!/^[a-z][a-z0-9+.-]*:/iu.test(y)||/[\s<>"{}|^`\\]/u.test(y))throw new Error("uri_array_invalid_iri");return`<${y}>`},c=n.flatMap(({column:y,values:a})=>{const s=y.options.predicate;if(!y.options.isArray||y.options.baseType!=="uri"||!s)throw new Error("uri_array_column_required");const d=`${o(i)} ${o(s)}`,f=[...new Set(a)].map(m=>`${d} ${o(m)} .`).join(`
|
|
2
|
+
`);return[`DELETE WHERE { ${d} ?previous . }`,...f?[`INSERT DATA { ${f} }`]:[]]}),l=await e.authenticatedFetch(i.split("#",1)[0],{method:"PATCH",headers:{"content-type":"application/sparql-update"},body:c.join(`;
|
|
3
|
+
`)});if(!l.ok)throw new Error(`uri_array_persist_failed:${l.status}`)}async function Wr(e,t,r){await ut(e,A,t,[{column:A.columns.hasModel,values:r.map(n=>pt(I,e.podUrl,n))}])}function pt(e,t,r){return/^https?:\/\//u.test(r)?r:e.buildIri(t,{id:r})}async function qe(e,t){const r=await e.database.findById(h,t);return r||((await e.database.select().from(h).execute()).find(i=>{const o=p(i.id);return o===t||(o?h.buildIri(e.podUrl,{id:o})===t:!1)})??null)}function Jr(e,t,r,n){const i=t.filter(o=>p(o.service)==="ai").filter(o=>p(o.status)!=="revoked");return V.map(o=>{const c=i.map(s=>_(e,o,s)).filter(T).sort((s,d)=>s.priority-d.priority||s.id.localeCompare(d.id)),l=r.find(s=>M(p(s.id))===o),a=mt(l?.hasModel).map(s=>Zr(o,s,n));return{id:o,name:o==="custom"?c.find(s=>s.label)?.label??ne(o):ne(o),offerings:o==="custom"?an(i.filter(s=>_(e,o,s))):Je(o,e.openAiSubscriptionImportAvailable===!0),credentials:c,selectedModels:a,status:sn(c)}})}async function De(e,t,r,n){if(!(n?await e.database.findById(h,t):null)){await e.database.insert(h).values(r).execute();return}const o={...r};if(delete o.id,!await e.database.updateById(h,t,o))throw new Error("credential_create_failed")}function j(e,t,r,n){return wr({webId:e.webId,provider:t,credentialIri:h.buildIri(e.podUrl,{id:r}),secret:n})}function Xr(e,t,r){let n=!1;for(const[i,o]of[[e.accountId,[t?.accountId,r?.accountId]],[e.accountSubject,[t?.authoritativeSubject,r?.accountSubject,r?.authoritativeSubject]]]){const c=[...new Set(o.map(p).filter(T).filter(l=>l.trim()))];if(c.length>1)return!1;if(!(!i?.trim()||!c.length)){if(c[0]!==i)return!1;n=!0}}return n}function _(e,t,r){const n=p(r.id);if(!n)return;const i=_e(p(r.provider))??dn(n);if(i!==t)return;const o=C(r.metadata),c=ht(r.authMode);if(c)return{id:n,provider:i,offeringId:ft(r,i,c),authMode:c,label:p(r.accountLabel)??p(r.label),enabled:je(o?.enabled)??p(r.status)==="active",priority:le(o?.priority)??100,health:un(o?.health)??(je(r.reauthRequired)?"expired":"healthy"),lastFailureCode:p(r.lastFailureCode),lastFailureAt:ue(r.lastFailureAt),rateLimitResetAt:ue(r.rateLimitResetAt),failCount:le(r.failCount),maskedHint:cn(e,i,n,r.encryptedSecret),baseUrl:p(r.baseUrl),proxyUrl:ln(p(r.proxyUrl)??p(o?.proxyUrl)),compatibility:Yr(o?.compatibility),expiresAt:ue(r.expiresAt),version:le(r.keyVersion)??0}}function Yr(e){return e==="auto"||e==="openai"||e==="anthropic"?e:void 0}function ft(e,t,r){return p(e.offeringId)??p(C(e.metadata)?.offeringId)??Pe(p(e.provider))??G(t,r)}function Zr(e,t,r){const n=r.find(l=>x(p(l.id))===x(t)),i=p(n?.isProvidedBy),o=n?O(t,i??e)??t:O(t,e)??t,c=n??r.find(l=>{const y=p(l.id),a=p(l.isProvidedBy);return y===t||O(y,e)===o||_e(a)===e&&O(y,a??e)===o});return{id:o,provider:e,offeringId:Pe(p(c?.isProvidedBy)),credentialId:Ae(i),resourceId:p(c?.id)??t,displayName:p(c?.displayName),availability:p(c?.status)==="unavailable"||!c?"unavailable":"available"}}function Qr(e){const t=p(e.isProvidedBy),r=_e(t),n=r&&O(p(e.id),t??r);if(!(!r||!n))return{id:n,provider:r,offeringId:Pe(t),credentialId:Ae(t),resourceId:p(e.id),displayName:p(e.displayName),availability:p(e.status)==="unavailable"?"unavailable":"available",...nn(e)}}function en(e){const t=C(e),r=p(t?.id);if(!r)return;const n=p(t?.modelType)?.trim(),i=n?be(n):void 0;return{id:r,displayName:p(t?.displayName),...i?{rdfType:[I.getType(),i]}:{},...Array.isArray(t?.capabilities)?{capabilities:It(t.capabilities)}:{}}}function Ke(e,t){const r=Ae(p(t?.provider));return r?me(r):R(e)}function R(e){return Ar(e)}function me(e){return _r(e)}function Ae(e){const t=M(e),r=t?.startsWith("custom-instance-")?t.slice(16):void 0;if(r)try{return decodeURIComponent(r)}catch{return}}function ve(e,t){if(!t)return;const r=t.trim().toLowerCase();if(e==="bailian"){if(r==="token-plan")return"token-plan-personal";if(r==="coding-plan")return"coding-plan-pro";if(r==="payg")return"pay-as-you-go"}return r}function v(e,t){const r=x(e),n=x(t);return r!==void 0&&r===n}function tn(e,t,r){const n=p(e.isProvidedBy);return v(n,t)?!0:r==="custom"?!1:M(n)?.startsWith(`${r}-`)===!0}function yt(e){if(!e)return;const t=e.lastIndexOf("#");if(t<0||t===e.length-1)return;const r=e.slice(t+1);try{return decodeURIComponent(r)}catch{return r}}async function Fe(e,t,r){(await e.select().from(A).execute()).some(i=>v(p(i.id),t))||await e.insert(A).values({id:t,displayName:r}).execute()}async function rn(e,t,r,n){const i=he(t,r.id),o=n.has(i),c=o?await e.database.findById(I,i):void 0,l={displayName:r.displayName??r.id,isProvidedBy:t,status:"active"};if(o)await e.database.updateById(I,i,l);else{const a=e.database.insert(I).values({id:i,...l}).toIR();for(const s of a.rows)delete s.rdfType,delete s.capabilities;await e.database.session.execute({type:"insert",table:I,values:a.rows[0],plan:a})}const y=[];if(!o||r.rdfType){const a=mt(c?.rdfType).filter(s=>/^[a-z][a-z0-9+.-]*:/iu.test(s)&&be(s)!==s);y.push({column:I.columns.rdfType,values:[...new Set([I.getType(),...a,...r.rdfType??[]])]})}r.capabilities!==void 0&&y.push({column:I.columns.capabilities,values:r.capabilities}),await ut(e,I,i,y),n.add(i)}function nn(e){const t=Array.isArray(e.rdfType)?e.rdfType:[e.rdfType],r=t.find(i=>typeof i=="string"&&be(i)===i),n=At({rdfType:t,capabilities:e.capabilities}).capabilities.map(_t).filter(T);return{...r?{modelType:Pt(r)}:{},...n.length>0?{capabilities:n}:{}}}function he(e,t){const r=x(e)??`${e}.ttl`;return`${r.split("#",1)[0]??r}#${encodeURIComponent(t)}`}function on(e,t,r,n){const i=p(t.resourceId),o=n??R(e),c=p(t.id),l=c?r.filter(a=>{const s=p(a.isProvidedBy),d=M(s);return(n?v(s,n):d===e||d?.startsWith(`${e}-`)===!0)&&O(p(a.id),s??o)===c}):[],y=n||l.length===1?l[0]:void 0;if(i){const a=r.find(m=>p(m.id)===i);if(!a&&y)return String(y.id);const s=p(a?.isProvidedBy),d=M(s),f=n?v(s,n):d===e||d?.startsWith(`${e}-`)===!0;if(a&&!f)throw new Error("invalid_model_selection_resource");if(!a){const m=c??yt(i),w=M(i),S=n?v(w,n):w===e||w?.startsWith(`${e}-`)===!0;if(!m||!S)throw new Error("invalid_model_selection_resource");return he(o,m)}return i}if(!c)throw new Error("invalid_model_selection_resource");return p(y?.id)??he(o,c)}function O(e,t){if(!e)return;const n=x(t)?.split("#",1)[0]??t,i=n.endsWith(".ttl")?`${n}#`:`${n}.ttl#`,o=e.lastIndexOf(i);if(!(o<0))try{return decodeURIComponent(e.slice(o+i.length))}catch{return e.slice(o+i.length)}}function mt(e){if(Array.isArray(e))return e.map(p).filter(T);const t=p(e);return t?[t]:[]}function an(e){const t=new Map;for(const r of e){const n=C(r.metadata),i=ft(r,"custom",ht(r.authMode)??"apiKey"),o=zt(n?.compatibility,i),c=p(r.baseUrl)??p(n?.baseUrl),l=B.find(y=>y.id===i)??B.find(y=>y.id===`${o}-compatible`)??B[0];t.set(i,{...l,id:i,endpoints:c?[{protocol:o==="anthropic"?"anthropic":"chatCompletions",baseUrl:c}]:l.endpoints,modelDiscovery:o==="anthropic"?{strategy:"anthropic",path:"/models",endpointProtocol:"anthropic"}:{strategy:"openaiCompatible",path:"/models",endpointProtocol:"chatCompletions"}})}return t.size>0?[...t.values()]:B}function sn(e){return e.some(t=>t.health==="expired"||t.health==="invalid")?"attention":e.some(t=>t.enabled)?"available":e.length>0?"configured":"unconfigured"}function cn(e,t,r,n){const i=z(e,t,r,n),o=p(i?.apiKey);if(o)return o.length<=8?`${o.slice(0,2)}…`:`${o.slice(0,3)}...${o.slice(-4)}`}function z(e,t,r,n){return Ir({webId:e.webId,provider:t,credentialIri:h.buildIri(e.podUrl,{id:r}),envelope:n})}function _e(e){const t=M(e),r=P(t);return r||V.find(n=>t?.startsWith(`${n}-`))}function Pe(e){const t=M(e);if(t&&!t.startsWith("custom-instance-")){if(t==="bailian-token-plan-personal")return"token-plan";if(t==="bailian-token-plan-team")return"token-plan-team";if(t==="bailian-coding-plan-pro")return"coding-plan";if(t==="bailian-pay-as-you-go")return"pay-as-you-go";for(const r of V)if(t.startsWith(`${r}-`))return t.slice(r.length+1)}}function dn(e){const t=/\/([^/#]+)\.ttl#/u.exec(e);return P(t?.[1])}function P(e){if(typeof e!="string"||!e.trim())return;const t=e.trim().toLowerCase();if(t==="zhipu"||t.startsWith("zhipu-"))return"zhipu";if(V.includes(t))return t;for(const r of V)if(t.startsWith(`${r}-`)||r==="bailian"&&(t==="bailian-token-plan"||t==="bailian-coding-plan"))return r}function de(e){if(e==null||!e.trim())return;let t;try{t=new URL(e.trim())}catch{throw new Error("invalid_proxy_url")}if(!["http:","https:"].includes(t.protocol)||t.username||t.password||t.hash||!t.hostname)throw new Error("invalid_proxy_url");return t.toString().replace(/\/$/u,"")}function ln(e){if(e==null||!e.trim())return;let t;try{t=new URL(e.trim())}catch{return}if(!(!["http:","https:"].includes(t.protocol)||!t.hostname))return t.username="",t.password="",t.search="",t.hash="",t.toString().replace(/\/$/u,"")}function ht(e){if(e==="oauth"||e==="deviceCode"||e==="apiKey"||e==="local")return e;if(e==="deviceCodeOAuth")return"deviceCode"}function un(e){if(e==="healthy"||e==="expired"||e==="invalid"||e==="unknown")return e;if(e==="reauthRequired")return"expired";if(e==="disabled")return"unknown"}function C(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:void 0}function p(e){return typeof e=="string"&&e.trim()?e:void 0}function le(e){if(typeof e=="number"&&Number.isFinite(e))return e;if(typeof e=="string"&&e.trim()){const t=Number(e);return Number.isFinite(t)?t:void 0}}function je(e){if(typeof e=="boolean")return e;if(e==="true")return!0;if(e==="false")return!1}function ue(e){return e instanceof Date?e.toISOString():p(e)}function T(e){return e!==void 0}export{te as A,He as P,Q as a,_r as b,Le as c,G as d,Ar as e,bn as f,wn as g,fn as h,W as i,mn as j,hr as k,Pr as l,Ct as m,yn as n,Re as o,M as p,gn as q,Z as s,hn as w};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.xpod-desktop-shell{display:grid;grid-template-columns:64px minmax(0,1fr);height:var(--xpod-shell-height,100dvh);min-height:0;background:hsl(var(--background))}.xpod-rail{display:flex;flex-direction:column;align-items:center;gap:24px;padding:16px 0;min-height:0;border-right:1px solid hsl(var(--border));background:hsl(var(--layout-sidebar))}.xpod-rail-profile{flex-shrink:0}.xpod-rail-host{margin-top:auto;width:100%}.xpod-shell-content{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.xpod-narrow-header,.xpod-drawer-close,.xpod-drawer-backdrop{display:none}.xpod-desktop-shell [data-workspace-layout=two-pane]>[data-workspace-object-column=shown]{grid-template-columns:270px minmax(0,1fr)!important}.xpod-desktop-shell [data-workspace-pane=list],.xpod-desktop-shell [data-workspace-pane=main]{min-width:0}@media(max-width:767px){.xpod-desktop-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:48px minmax(0,1fr)}.xpod-narrow-header{display:flex;align-items:center;gap:8px;border-bottom:1px solid hsl(var(--border));min-width:0;padding:0 12px;font-size:14px}.xpod-narrow-header button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0}.xpod-narrow-header span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xpod-rail{display:none}.xpod-desktop-shell [data-workspace-layout=two-pane]>[data-workspace-layout-mode]{grid-template-columns:minmax(0,1fr)!important}.xpod-desktop-shell [data-workspace-pane=list]{display:none}.xpod-desktop-shell[data-drawer-open=true] .xpod-rail{display:flex;position:fixed;inset:0 auto 0 0;width:64px;z-index:61;background:hsl(var(--background))}.xpod-desktop-shell[data-drawer-open=true] [data-workspace-pane=list]{display:flex;position:fixed;inset:0 auto 0 64px;width:min(280px,calc(100vw - 104px));z-index:61;background:hsl(var(--background));border-right:1px solid hsl(var(--border))}.xpod-drawer-backdrop{display:block;position:fixed;inset:0;z-index:60;background:#00000059}.xpod-drawer-close{display:flex;align-items:center;justify-content:center;position:fixed;right:4px;top:6px;width:36px;height:36px;z-index:62;border-radius:8px;background:hsl(var(--background))}}.xpod-navigation-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0}.xpod-header-parent{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;color:hsl(var(--muted-foreground))}@media(max-width:767px){.xpod-desktop-shell:has([data-workspace-main-header]){grid-template-rows:minmax(0,1fr)}.xpod-desktop-shell:has([data-workspace-main-header])>.xpod-narrow-header{display:none}.xpod-desktop-shell [data-workspace-header-leading]{padding-left:8px}}
|