akanjs 3.0.0-beta.2 → 3.0.0-beta.20
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/base/base.ts +6 -11
- package/base/baseEnv.ts +17 -11
- package/base/databaseModes.ts +75 -0
- package/base/index.ts +1 -0
- package/base/primitiveRegistry.ts +38 -47
- package/base/symbols.ts +1 -1
- package/base/types.ts +1 -1
- package/base/utils.ts +3 -6
- package/capacitor.base.config.ts +2 -3
- package/client/capacitor.ts +18 -63
- package/client/cn.ts +3 -13
- package/client/cookie.ts +6 -15
- package/client/createFont.ts +0 -2
- package/client/csrTypes.ts +6 -59
- package/client/decorators.ts +1 -1
- package/client/device.ts +52 -44
- package/client/frameConfig.ts +15 -26
- package/client/index.ts +0 -1
- package/client/makePageProto.tsx +3 -4
- package/client/route/RootLayoutDefinition.ts +0 -6
- package/client/route/RouteDefinition.ts +5 -30
- package/client/route/resolveRouteModule.ts +1 -5
- package/client/router.ts +35 -39
- package/client/rscNavigation.ts +4 -5
- package/client/sharedContext.ts +2 -19
- package/client/storage.ts +29 -38
- package/client/translator.ts +5 -6
- package/client/types.ts +0 -3
- package/common/CodeAgentClient.ts +91 -0
- package/common/CodeTranscript.ts +325 -0
- package/common/Logger.ts +9 -34
- package/common/TrustedProxy.ts +6 -34
- package/common/applyMixins.ts +13 -2
- package/common/authToken.ts +0 -11
- package/common/capitalize.ts +3 -4
- package/common/clamp.ts +0 -1
- package/common/clientAddress.ts +1 -15
- package/common/codeAgentProfile.ts +181 -0
- package/common/codeAgentWire.ts +305 -0
- package/{server/routing → common}/eventStream.ts +1 -6
- package/common/fileUpload.ts +1 -12
- package/common/formatNumber.ts +3 -12
- package/common/index.ts +104 -19
- package/common/interpolateTranslation.ts +1 -6
- package/common/isEmail.ts +0 -1
- package/common/isRecord.ts +2 -0
- package/common/isThenable.ts +1 -8
- package/common/isValidDate.ts +3 -5
- package/common/logContext.ts +1 -1
- package/{ui/Agent → common}/markdownBlocks.ts +0 -3
- package/common/markdownSpans.ts +47 -0
- package/{ui/Agent → common}/markdownTable.ts +1 -5
- package/common/mcpExposure.ts +4 -27
- package/common/objectPath.ts +67 -0
- package/common/objectify.ts +52 -0
- package/common/{isPhoneNumber.ts → phone.ts} +7 -1
- package/common/randomPick.ts +13 -0
- package/common/requestOrigin.ts +0 -17
- package/common/restClient.ts +8 -13
- package/common/round.ts +4 -0
- package/common/routeConvention.ts +21 -14
- package/common/sleep.ts +1 -8
- package/common/subRoute.ts +4 -7
- package/common/toError.ts +1 -0
- package/common/tunnelWire.ts +263 -0
- package/common/types.ts +6 -7
- package/common/{splitVersion.ts → version.ts} +3 -6
- package/common/{websocketBinaryFrame.ts → websocketContract.ts} +43 -9
- package/constant/cascadePaths.ts +6 -9
- package/constant/constantRegistry.ts +21 -57
- package/constant/crystalize.ts +2 -12
- package/constant/dateSlot.ts +0 -15
- package/constant/fieldInfo.ts +30 -109
- package/constant/fieldQueryMeta.ts +2 -10
- package/constant/getDefault.ts +16 -8
- package/constant/hydrationPlan.ts +1 -9
- package/constant/index.ts +0 -1
- package/constant/labelOf.ts +1 -6
- package/constant/mask.ts +36 -38
- package/constant/purify.ts +6 -14
- package/constant/serialize.ts +82 -5
- package/constant/textFieldPaths.ts +2 -3
- package/constant/types.ts +2 -6
- package/constant/via.ts +20 -60
- package/dictionary/DictionaryLookup.ts +1 -7
- package/dictionary/agent.dictionary.ts +43 -11
- package/dictionary/base.dictionary.ts +11 -0
- package/dictionary/dictInfo.ts +145 -626
- package/dictionary/dictShape.ts +54 -0
- package/dictionary/dictionary.ts +1 -2
- package/dictionary/dictionaryRegistry.ts +7 -28
- package/dictionary/locale.ts +24 -116
- package/dictionary/trans.ts +18 -56
- package/document/dataLoader.ts +77 -78
- package/document/database.ts +52 -56
- package/document/documentQuery.ts +32 -32
- package/document/documentSchema.ts +21 -26
- package/document/filterMeta.ts +11 -31
- package/document/index.ts +0 -1
- package/document/into.ts +8 -18
- package/document/loaderInfo.ts +28 -7
- package/document/noDocumentError.ts +2 -7
- package/document/queryEvaluator.ts +21 -43
- package/document/types.ts +0 -1
- package/fetch/client/fetchClient.ts +66 -105
- package/fetch/client/fetchHandle.ts +4 -12
- package/fetch/client/httpClient.ts +35 -68
- package/fetch/client/remoteError.ts +2 -8
- package/fetch/client/sliceInitHandle.ts +3 -6
- package/fetch/client/sliceQueryArgs.ts +11 -0
- package/fetch/client/wsClient.ts +75 -64
- package/fetch/fetchType/appliedReturn.type.ts +5 -24
- package/fetch/fetchType/buildFetch.type.ts +28 -1
- package/fetch/fetchType/index.ts +0 -1
- package/fetch/requestStorage.ts +7 -28
- package/fetch/types.ts +0 -1
- package/index.ts +31 -64
- package/package.json +19 -5
- package/server/akanApp.ts +138 -289
- package/server/akanAppHeaders.ts +2 -3
- package/server/akanOption.ts +25 -27
- package/server/akanServer.ts +98 -219
- package/server/animatedImage.ts +2 -11
- package/server/artifact/builderRpc.ts +24 -64
- package/server/artifact/index.ts +0 -1
- package/server/artifact/ipcTypes.ts +27 -30
- package/server/artifact/routeClientCache.ts +18 -37
- package/server/artifact/routeSeedIndexStore.ts +2 -35
- package/server/artifact/routesManifestStore.ts +13 -38
- package/server/binaryPubsub.ts +0 -9
- package/server/cachePolicy.ts +10 -44
- package/server/console.ts +12 -16
- package/server/consoleSession.ts +55 -12
- package/server/contentEncoding.ts +42 -27
- package/server/decorators.ts +4 -70
- package/server/devtools/constantSerializer.ts +2 -14
- package/server/devtools/depsSerializer.ts +14 -46
- package/server/devtools/devtoolsJson.ts +6 -18
- package/server/devtools/devtoolsRouter.ts +2 -12
- package/server/devtools/signalSerializer.ts +5 -44
- package/server/devtools/types.ts +0 -12
- package/server/di/diLifecycle.ts +141 -221
- package/server/di/predefinedAdaptor.ts +11 -5
- package/server/di/resolveHierarchy.ts +114 -5
- package/server/di/utils.ts +13 -29
- package/server/head.tsx +53 -0
- package/server/hmr/clientScript.ts +2 -8
- package/server/hmr/devHmrController.ts +28 -32
- package/server/hmr/wsHub.ts +9 -7
- package/server/imageOptimizer.ts +5 -26
- package/server/index.ts +1 -1
- package/server/lifecycle/portInUse.ts +1 -4
- package/server/lifecycle/runtimeDir.ts +0 -4
- package/server/lifecycle/shutdownManager.ts +4 -29
- package/server/logging/childOutputReader.ts +0 -12
- package/server/logging/hubFileSink.ts +10 -6
- package/server/logging/logControlSocket.ts +13 -7
- package/server/logging/logForwarder.ts +19 -22
- package/server/logging/logHub.ts +0 -0
- package/server/logging/logQuery.ts +4 -7
- package/server/logging/logStdoutWriter.ts +1 -11
- package/server/logging/logStreamRoute.ts +4 -21
- package/server/logging/logTailClient.ts +1 -8
- package/server/logging/rotatingLogWriter.ts +4 -6
- package/server/mcp/McpAuth.ts +5 -79
- package/server/mcp/McpDispatcher.ts +13 -90
- package/server/mcp/McpEventStream.ts +2 -12
- package/server/mcp/McpExecutionContext.ts +1 -42
- package/server/mcp/McpRateLimiter.ts +61 -30
- package/server/mcp/McpRouter.ts +49 -208
- package/server/mcp/PagePromptComposer.ts +7 -29
- package/server/memoryLimit.ts +1 -13
- package/server/oauth/OAuthAuthorize.ts +3 -7
- package/server/oauth/OAuthClientIdMetadata.ts +2 -27
- package/server/oauth/OAuthErrors.ts +0 -13
- package/server/oauth/OAuthMetadata.ts +1 -7
- package/server/oauth/OAuthPkce.ts +0 -2
- package/server/oauth/OAuthRedirect.ts +0 -9
- package/server/oauth/OAuthRegistration.ts +0 -2
- package/server/oauth/OAuthRevocation.ts +1 -11
- package/server/oauth/OAuthToken.ts +3 -14
- package/server/oauth/oauthTypes.ts +1 -2
- package/server/ops/ageEncryption.ts +317 -0
- package/server/ops/appInfo.ts +92 -0
- package/server/ops/opsCommand.ts +116 -0
- package/server/ops/opsRoute.ts +151 -0
- package/server/ops/opsToken.ts +93 -0
- package/server/ops/snapshotJobs.ts +133 -0
- package/server/ops/snapshotRestore.ts +118 -0
- package/server/ops/snapshotTypes.ts +52 -0
- package/server/ops/sqliteFiles.ts +20 -0
- package/server/ops/sqliteSnapshot.ts +149 -0
- package/server/processMetricsCollector.ts +12 -14
- package/server/proxy/hostBasePathWebProxy.ts +20 -13
- package/server/proxy/index.ts +2 -3
- package/server/proxy/localeWebProxy.ts +3 -17
- package/server/proxy/types.ts +14 -0
- package/server/proxy/webProxyRunner.ts +13 -1
- package/server/resolver/CascadeRunner.ts +7 -23
- package/server/resolver/database.resolver.ts +57 -123
- package/server/resolver/service.resolver.ts +9 -161
- package/server/resolver/signal.resolver.ts +73 -98
- package/server/routeElementComposer.tsx +23 -52
- package/server/routeState.ts +15 -34
- package/server/routeTreeBuilder.ts +24 -83
- package/server/routing/apiRouter.ts +17 -49
- package/server/routing/appWsData.ts +4 -28
- package/server/routing/soloAppRoutes.ts +5 -5
- package/server/rscClient.tsx +31 -37
- package/server/rscClientFetch.ts +7 -3
- package/server/rscClientPatch.ts +4 -25
- package/server/rscHttp.ts +1 -1
- package/server/rscNavigationState.ts +10 -25
- package/server/rscPagePrompts.ts +4 -24
- package/server/rscSegmentOutlet.tsx +1 -5
- package/server/rscWorker.tsx +146 -285
- package/server/rscWorkerCache.ts +74 -8
- package/server/rscWorkerHost.ts +45 -192
- package/server/semaphore.ts +1 -1
- package/server/sitemap.ts +1 -3
- package/server/ssrFromRscRenderer.tsx +31 -124
- package/server/ssrTypes.ts +3 -29
- package/server/staticPath.ts +0 -16
- package/server/systemPageDocument.tsx +65 -2
- package/server/systemPages.tsx +4 -2
- package/server/tunnel/TunnelAgent.ts +237 -0
- package/server/tunnel/TunnelDataSocket.ts +146 -0
- package/server/tunnel/TunnelHttpStream.ts +86 -0
- package/server/tunnel/TunnelTcpStream.ts +96 -0
- package/server/tunnel/TunnelWebsocketStream.ts +110 -0
- package/server/tunnel/index.ts +6 -0
- package/server/tunnel/tunnelStream.ts +32 -0
- package/server/types.tsx +2 -9
- package/server/webRouter.ts +88 -306
- package/service/agent.service.ts +66 -35
- package/service/injectInfo.ts +106 -75
- package/service/ipcTypes.ts +4 -1
- package/service/liveSyncHub.ts +4 -34
- package/service/predefinedAdaptor/anthropicLlm.ts +65 -75
- package/service/predefinedAdaptor/cache.adaptor.ts +257 -75
- package/service/predefinedAdaptor/database.adaptor.ts +366 -108
- package/service/predefinedAdaptor/documentTransfer.ts +89 -0
- package/service/predefinedAdaptor/index.ts +2 -1
- package/service/predefinedAdaptor/insightQuery.ts +89 -79
- package/service/predefinedAdaptor/llm.adaptor.ts +64 -54
- package/service/predefinedAdaptor/llmOverflow.ts +63 -0
- package/service/predefinedAdaptor/openaiDialect.ts +56 -64
- package/service/predefinedAdaptor/openaiLlm.ts +24 -27
- package/service/predefinedAdaptor/queue.adaptor.ts +41 -22
- package/service/predefinedAdaptor/schedule.adaptor.ts +69 -9
- package/service/predefinedAdaptor/searchIndex.ts +76 -325
- package/service/predefinedAdaptor/solidCache.adaptor.ts +135 -12
- package/service/predefinedAdaptor/solidPubsub.adaptor.ts +28 -16
- package/service/predefinedAdaptor/solidQueue.adaptor.ts +61 -10
- package/service/predefinedAdaptor/solidSqlite.ts +10 -16
- package/service/predefinedAdaptor/sql/PendingStoreEnsures.ts +1 -0
- package/service/predefinedAdaptor/sql/PostgresInsightSession.ts +113 -0
- package/service/predefinedAdaptor/sql/QueryCompiler.ts +50 -30
- package/service/predefinedAdaptor/sql/SqlDocumentStore.ts +290 -138
- package/service/predefinedAdaptor/sql/SqliteInsightSession.ts +85 -0
- package/service/predefinedAdaptor/sql/UpdateCompiler.ts +1 -7
- package/service/predefinedAdaptor/sql/dialect/postgres.ts +138 -53
- package/service/predefinedAdaptor/sql/dialect/sqlite.ts +18 -15
- package/service/predefinedAdaptor/sql/driver/bunSqlite.ts +31 -4
- package/service/predefinedAdaptor/sql/driver/libsql.ts +20 -12
- package/service/predefinedAdaptor/sql/driver/postgres.ts +13 -7
- package/service/predefinedAdaptor/sql/search/fts5.ts +249 -0
- package/service/predefinedAdaptor/sql/search/mirror.ts +76 -0
- package/service/predefinedAdaptor/sql/search/postgres.ts +453 -0
- package/service/predefinedAdaptor/sql/search/types.ts +50 -0
- package/service/predefinedAdaptor/sql/types.ts +76 -17
- package/service/predefinedAdaptor/sql/values.ts +40 -2
- package/service/predefinedAdaptor/sqlitePath.ts +12 -0
- package/service/predefinedAdaptor/sseData.ts +23 -0
- package/service/predefinedAdaptor/storage.adaptor.ts +19 -7
- package/service/predefinedAdaptor/websocket.adaptor.ts +154 -184
- package/service/serve.ts +1 -2
- package/service/serviceModule.ts +52 -70
- package/service/toolNames.ts +5 -22
- package/service/types.ts +3 -9
- package/signal/CrossSiteGuard.ts +5 -40
- package/signal/SignalFailure.ts +2 -15
- package/signal/agent/AgentCatalogue.ts +9 -55
- package/signal/agent.signal.ts +9 -6
- package/signal/agentMeter.ts +45 -0
- package/signal/agentTurnStream.ts +48 -46
- package/signal/endpoint.ts +12 -2
- package/signal/endpointCache.ts +59 -0
- package/signal/endpointInfo.ts +13 -27
- package/signal/exception.ts +3 -34
- package/signal/guard.ts +4 -21
- package/signal/guards.ts +2 -10
- package/signal/index.ts +1 -0
- package/signal/internal.ts +3 -7
- package/signal/internalArg.ts +10 -13
- package/signal/internalInfo.ts +1 -1
- package/signal/mcp/McpDocument.ts +21 -90
- package/signal/mcp/McpProgress.ts +6 -19
- package/signal/mcp/McpUriTemplate.ts +1 -27
- package/signal/mcp/Msg.ts +13 -122
- package/signal/mcp/mcpProtocol.ts +3 -26
- package/signal/mcp/pagePrompt.ts +3 -9
- package/signal/middleware.ts +15 -65
- package/signal/openapi/openapi.ts +0 -4
- package/signal/schema/JsonSchemaBuilder.ts +32 -46
- package/signal/serializer/fetch.serializer.ts +37 -43
- package/signal/serverSignal.ts +6 -8
- package/signal/signalContext.ts +70 -161
- package/signal/signalRegistry.ts +11 -17
- package/signal/slice.ts +6 -12
- package/signal/sliceInfo.ts +5 -30
- package/signal/trace.ts +11 -84
- package/signal/types.ts +27 -57
- package/store/SliceRequest.ts +1 -11
- package/store/action.ts +153 -395
- package/store/actionTag.ts +1 -10
- package/store/agent/AgentBridge.ts +3 -25
- package/store/agent/AgentContext.ts +2 -9
- package/store/agent/AgentCursor.ts +160 -0
- package/store/agent/AgentPrompts.ts +0 -15
- package/store/agent/AgentVisual.ts +152 -0
- package/store/agent/ScreenFlash.ts +67 -0
- package/store/agent/ScreenReader.ts +3 -52
- package/store/agent/ScreenSettle.ts +1 -13
- package/store/agent/ScreenTarget.ts +15 -32
- package/store/agent/StoreCatalogue.ts +12 -24
- package/store/agent/StoreSurfaceSource.ts +35 -65
- package/store/agent/index.ts +4 -4
- package/store/agentic/AgentValue.ts +9 -26
- package/store/agentic/StExposeBuilder.ts +3 -12
- package/store/agentic/StExposeDraft.ts +0 -6
- package/store/agentic/StStateBuilder.ts +3 -11
- package/store/agentic/StStateDraft.ts +0 -5
- package/store/agentic/StToolBuilder.ts +48 -41
- package/store/agentic/StToolDraft.ts +0 -7
- package/store/agentic/attachAgentic.ts +2 -10
- package/store/agentic/formFields.ts +8 -42
- package/store/agentic/index.ts +1 -1
- package/store/agentic/useAgentReference.ts +31 -0
- package/store/agentic/useFieldTool.ts +176 -58
- package/store/agentic/useFormTools.ts +4 -21
- package/store/agentic/useRelationFieldTool.ts +2 -15
- package/store/databaseStateNames.ts +0 -9
- package/store/draftStore.ts +4 -54
- package/store/formSetterNames.ts +2 -19
- package/store/hooks.ts +1 -1
- package/store/liveInsert.ts +1 -30
- package/store/sliceKeys.ts +37 -0
- package/store/sliceRole.ts +1 -10
- package/store/state.ts +4 -50
- package/store/stateBuilder.ts +1 -23
- package/store/storeInstance.ts +21 -114
- package/store/storeRegistry.ts +1 -8
- package/store/types.ts +1 -1
- package/test/conformance.ts +299 -0
- package/test/index.ts +2 -2
- package/test/sampleOf.ts +52 -28
- package/test/signalTestRuntime.ts +6 -10
- package/test/testServer.ts +66 -31
- package/types/base/base.d.ts +2 -3
- package/types/base/baseEnv.d.ts +7 -10
- package/types/base/databaseModes.d.ts +28 -0
- package/types/base/index.d.ts +1 -0
- package/types/base/primitiveRegistry.d.ts +23 -10
- package/types/base/symbols.d.ts +1 -1
- package/types/capacitor.base.config.d.ts +1 -1
- package/types/client/cn.d.ts +3 -13
- package/types/client/cookie.d.ts +3 -12
- package/types/client/csrTypes.d.ts +6 -57
- package/types/client/decorators.d.ts +1 -1
- package/types/client/device.d.ts +2 -1
- package/types/client/index.d.ts +0 -1
- package/types/client/route/RootLayoutDefinition.d.ts +0 -1
- package/types/client/route/RouteDefinition.d.ts +4 -16
- package/types/client/route/resolveRouteModule.d.ts +1 -5
- package/types/client/router.d.ts +8 -4
- package/types/client/rscNavigation.d.ts +4 -5
- package/types/client/sharedContext.d.ts +2 -19
- package/types/client/storage.d.ts +1 -1
- package/types/client/types.d.ts +0 -3
- package/types/common/CodeAgentClient.d.ts +20 -0
- package/types/common/CodeTranscript.d.ts +72 -0
- package/types/common/Logger.d.ts +4 -20
- package/types/common/TrustedProxy.d.ts +2 -28
- package/types/common/applyMixins.d.ts +3 -0
- package/types/common/authToken.d.ts +0 -11
- package/types/common/capitalize.d.ts +1 -1
- package/types/common/clamp.d.ts +0 -1
- package/types/common/clientAddress.d.ts +1 -15
- package/types/common/codeAgentProfile.d.ts +115 -0
- package/types/common/codeAgentWire.d.ts +279 -0
- package/types/{server/routing → common}/eventStream.d.ts +0 -5
- package/types/common/fileUpload.d.ts +6 -11
- package/types/common/index.d.ts +20 -19
- package/types/common/interpolateTranslation.d.ts +1 -6
- package/types/common/isEmail.d.ts +0 -1
- package/types/common/isRecord.d.ts +1 -0
- package/types/common/isThenable.d.ts +0 -8
- package/types/common/logContext.d.ts +1 -1
- package/types/{ui/Agent → common}/markdownBlocks.d.ts +0 -3
- package/types/common/markdownSpans.d.ts +30 -0
- package/types/{ui/Agent → common}/markdownTable.d.ts +0 -2
- package/types/common/mcpExposure.d.ts +3 -23
- package/types/common/objectPath.d.ts +10 -0
- package/types/common/objectify.d.ts +7 -0
- package/types/common/phone.d.ts +2 -0
- package/types/common/randomPick.d.ts +1 -0
- package/types/common/requestOrigin.d.ts +0 -17
- package/types/common/restClient.d.ts +0 -7
- package/types/common/round.d.ts +1 -0
- package/types/common/routeConvention.d.ts +2 -5
- package/types/common/sleep.d.ts +0 -1
- package/types/common/subRoute.d.ts +4 -6
- package/types/common/toError.d.ts +1 -0
- package/types/common/tunnelWire.d.ts +161 -0
- package/types/common/types.d.ts +7 -7
- package/types/common/version.d.ts +6 -0
- package/types/common/websocketContract.d.ts +41 -0
- package/types/constant/cascadePaths.d.ts +2 -5
- package/types/constant/constantRegistry.d.ts +4 -4
- package/types/constant/dateSlot.d.ts +0 -5
- package/types/constant/fieldInfo.d.ts +2 -21
- package/types/constant/fieldQueryMeta.d.ts +2 -10
- package/types/constant/getDefault.d.ts +5 -7
- package/types/constant/hydrationPlan.d.ts +0 -8
- package/types/constant/index.d.ts +0 -1
- package/types/constant/labelOf.d.ts +1 -6
- package/types/constant/mask.d.ts +11 -36
- package/types/constant/serialize.d.ts +10 -2
- package/types/constant/types.d.ts +2 -6
- package/types/constant/via.d.ts +0 -1
- package/types/dictionary/DictionaryLookup.d.ts +1 -7
- package/types/dictionary/agent.dictionary.d.ts +2 -1
- package/types/dictionary/base.dictionary.d.ts +1 -1
- package/types/dictionary/dictInfo.d.ts +25 -92
- package/types/dictionary/dictShape.d.ts +26 -0
- package/types/dictionary/dictionary.d.ts +9 -9
- package/types/dictionary/dictionaryRegistry.d.ts +1 -15
- package/types/dictionary/locale.d.ts +9 -28
- package/types/dictionary/trans.d.ts +5 -14
- package/types/document/dataLoader.d.ts +2 -2
- package/types/document/database.d.ts +21 -14
- package/types/document/documentQuery.d.ts +6 -1
- package/types/document/documentSchema.d.ts +3 -7
- package/types/document/filterMeta.d.ts +3 -8
- package/types/document/index.d.ts +0 -1
- package/types/document/into.d.ts +3 -2
- package/types/document/loaderInfo.d.ts +9 -4
- package/types/document/noDocumentError.d.ts +2 -7
- package/types/document/queryEvaluator.d.ts +7 -24
- package/types/document/types.d.ts +0 -1
- package/types/fetch/client/fetchClient.d.ts +6 -9
- package/types/fetch/client/fetchHandle.d.ts +3 -11
- package/types/fetch/client/httpClient.d.ts +5 -1
- package/types/fetch/client/remoteError.d.ts +2 -8
- package/types/fetch/client/sliceInitHandle.d.ts +2 -5
- package/types/fetch/client/sliceQueryArgs.d.ts +3 -0
- package/types/fetch/client/wsClient.d.ts +10 -15
- package/types/fetch/fetchType/appliedReturn.type.d.ts +5 -23
- package/types/fetch/fetchType/buildFetch.type.d.ts +15 -1
- package/types/fetch/fetchType/index.d.ts +0 -1
- package/types/fetch/requestStorage.d.ts +3 -16
- package/types/fetch/types.d.ts +0 -1
- package/types/index.d.ts +30 -64
- package/types/server/akanApp.d.ts +5 -28
- package/types/server/akanAppHeaders.d.ts +0 -1
- package/types/server/akanOption.d.ts +12 -24
- package/types/server/akanServer.d.ts +16 -56
- package/types/server/animatedImage.d.ts +0 -6
- package/types/server/artifact/builderRpc.d.ts +7 -30
- package/types/server/artifact/index.d.ts +0 -1
- package/types/server/artifact/ipcTypes.d.ts +22 -29
- package/types/server/artifact/routeClientCache.d.ts +3 -11
- package/types/server/artifact/routeSeedIndexStore.d.ts +0 -16
- package/types/server/artifact/routesManifestStore.d.ts +1 -1
- package/types/server/binaryPubsub.d.ts +0 -8
- package/types/server/cachePolicy.d.ts +2 -21
- package/types/server/console.d.ts +3 -6
- package/types/server/consoleSession.d.ts +2 -2
- package/types/server/contentEncoding.d.ts +6 -14
- package/types/server/decorators.d.ts +0 -12
- package/types/server/devtools/constantSerializer.d.ts +1 -6
- package/types/server/devtools/depsSerializer.d.ts +1 -7
- package/types/server/devtools/devtoolsJson.d.ts +1 -7
- package/types/server/devtools/devtoolsRouter.d.ts +2 -11
- package/types/server/devtools/signalSerializer.d.ts +1 -9
- package/types/server/devtools/types.d.ts +0 -11
- package/types/server/di/diLifecycle.d.ts +0 -36
- package/types/server/di/predefinedAdaptor.d.ts +3 -2
- package/types/server/di/resolveHierarchy.d.ts +22 -5
- package/types/server/di/utils.d.ts +4 -17
- package/types/server/head.d.ts +9 -0
- package/types/server/hmr/devHmrController.d.ts +0 -2
- package/types/server/hmr/wsHub.d.ts +6 -1
- package/types/server/index.d.ts +1 -1
- package/types/server/lifecycle/portInUse.d.ts +1 -4
- package/types/server/lifecycle/runtimeDir.d.ts +0 -4
- package/types/server/lifecycle/shutdownManager.d.ts +0 -9
- package/types/server/logging/childOutputReader.d.ts +0 -12
- package/types/server/logging/hubFileSink.d.ts +1 -5
- package/types/server/logging/logControlSocket.d.ts +2 -7
- package/types/server/logging/logForwarder.d.ts +3 -15
- package/types/server/logging/logHub.d.ts +1 -15
- package/types/server/logging/logQuery.d.ts +3 -6
- package/types/server/logging/logStdoutWriter.d.ts +0 -6
- package/types/server/logging/logStreamRoute.d.ts +0 -9
- package/types/server/logging/logTailClient.d.ts +0 -5
- package/types/server/mcp/McpAuth.d.ts +3 -71
- package/types/server/mcp/McpDispatcher.d.ts +0 -23
- package/types/server/mcp/McpEventStream.d.ts +1 -12
- package/types/server/mcp/McpExecutionContext.d.ts +0 -33
- package/types/server/mcp/McpRateLimiter.d.ts +10 -13
- package/types/server/mcp/McpRouter.d.ts +1 -47
- package/types/server/mcp/PagePromptComposer.d.ts +1 -13
- package/types/server/memoryLimit.d.ts +1 -13
- package/types/server/oauth/OAuthAuthorize.d.ts +1 -6
- package/types/server/oauth/OAuthClientIdMetadata.d.ts +2 -26
- package/types/server/oauth/OAuthErrors.d.ts +0 -13
- package/types/server/oauth/OAuthMetadata.d.ts +1 -7
- package/types/server/oauth/OAuthPkce.d.ts +0 -1
- package/types/server/oauth/OAuthRedirect.d.ts +0 -9
- package/types/server/oauth/OAuthRegistration.d.ts +0 -1
- package/types/server/oauth/OAuthRevocation.d.ts +1 -11
- package/types/server/oauth/OAuthToken.d.ts +1 -13
- package/types/server/oauth/oauthTypes.d.ts +1 -2
- package/types/server/ops/ageEncryption.d.ts +19 -0
- package/types/server/ops/appInfo.d.ts +36 -0
- package/types/server/ops/opsCommand.d.ts +5 -0
- package/types/server/ops/opsRoute.d.ts +24 -0
- package/types/server/ops/opsToken.d.ts +26 -0
- package/types/server/ops/snapshotJobs.d.ts +24 -0
- package/types/server/ops/snapshotRestore.d.ts +24 -0
- package/types/server/ops/snapshotTypes.d.ts +45 -0
- package/types/server/ops/sqliteFiles.d.ts +5 -0
- package/types/server/ops/sqliteSnapshot.d.ts +32 -0
- package/types/server/processMetricsCollector.d.ts +3 -1
- package/types/server/proxy/hostBasePathWebProxy.d.ts +7 -1
- package/types/server/proxy/index.d.ts +2 -3
- package/types/server/proxy/localeWebProxy.d.ts +1 -1
- package/types/server/proxy/types.d.ts +5 -0
- package/types/server/proxy/webProxyRunner.d.ts +1 -0
- package/types/server/resolver/CascadeRunner.d.ts +0 -4
- package/types/server/resolver/database.resolver.d.ts +1 -1
- package/types/server/resolver/service.resolver.d.ts +2 -2
- package/types/server/resolver/signal.resolver.d.ts +1 -15
- package/types/server/routeElementComposer.d.ts +2 -8
- package/types/server/routeState.d.ts +1 -1
- package/types/server/routing/apiRouter.d.ts +2 -20
- package/types/server/routing/appWsData.d.ts +0 -26
- package/types/server/routing/soloAppRoutes.d.ts +2 -6
- package/types/server/rscClient.d.ts +0 -9
- package/types/server/rscClientFetch.d.ts +6 -6
- package/types/server/rscClientPatch.d.ts +1 -1
- package/types/server/rscHttp.d.ts +1 -0
- package/types/server/rscNavigationState.d.ts +3 -2
- package/types/server/rscPagePrompts.d.ts +0 -9
- package/types/server/rscWorkerCache.d.ts +41 -3
- package/types/server/rscWorkerHost.d.ts +5 -61
- package/types/server/ssrFromRscRenderer.d.ts +0 -12
- package/types/server/ssrTypes.d.ts +2 -29
- package/types/server/staticPath.d.ts +0 -16
- package/types/server/systemPageDocument.d.ts +8 -0
- package/types/server/systemPages.d.ts +2 -3
- package/types/server/tunnel/TunnelAgent.d.ts +29 -0
- package/types/server/tunnel/TunnelDataSocket.d.ts +22 -0
- package/types/server/tunnel/TunnelHttpStream.d.ts +10 -0
- package/types/server/tunnel/TunnelTcpStream.d.ts +11 -0
- package/types/server/tunnel/TunnelWebsocketStream.d.ts +10 -0
- package/types/server/tunnel/index.d.ts +6 -0
- package/types/server/tunnel/tunnelStream.d.ts +19 -0
- package/types/server/tunnel.d.ts +1 -0
- package/types/server/types.d.ts +2 -9
- package/types/server/webRouter.d.ts +2 -19
- package/types/service/agent.service.d.ts +16 -29
- package/types/service/injectInfo.d.ts +26 -15
- package/types/service/ipcTypes.d.ts +6 -0
- package/types/service/liveSyncHub.d.ts +4 -22
- package/types/service/predefinedAdaptor/anthropicLlm.d.ts +20 -29
- package/types/service/predefinedAdaptor/cache.adaptor.d.ts +42 -12
- package/types/service/predefinedAdaptor/database.adaptor.d.ts +20 -16
- package/types/service/predefinedAdaptor/documentTransfer.d.ts +15 -0
- package/types/service/predefinedAdaptor/index.d.ts +2 -1
- package/types/service/predefinedAdaptor/insightQuery.d.ts +7 -30
- package/types/service/predefinedAdaptor/llm.adaptor.d.ts +54 -54
- package/types/service/predefinedAdaptor/llmOverflow.d.ts +16 -0
- package/types/service/predefinedAdaptor/openaiDialect.d.ts +19 -29
- package/types/service/predefinedAdaptor/openaiLlm.d.ts +9 -14
- package/types/service/predefinedAdaptor/queue.adaptor.d.ts +12 -7
- package/types/service/predefinedAdaptor/schedule.adaptor.d.ts +7 -2
- package/types/service/predefinedAdaptor/searchIndex.d.ts +17 -47
- package/types/service/predefinedAdaptor/solidCache.adaptor.d.ts +15 -6
- package/types/service/predefinedAdaptor/solidPubsub.adaptor.d.ts +6 -4
- package/types/service/predefinedAdaptor/solidSqlite.d.ts +2 -1
- package/types/service/predefinedAdaptor/sql/PostgresInsightSession.d.ts +20 -0
- package/types/service/predefinedAdaptor/sql/QueryCompiler.d.ts +9 -11
- package/types/service/predefinedAdaptor/sql/SqlDocumentStore.d.ts +11 -25
- package/types/service/predefinedAdaptor/sql/SqliteInsightSession.d.ts +15 -0
- package/types/service/predefinedAdaptor/sql/UpdateCompiler.d.ts +0 -4
- package/types/service/predefinedAdaptor/sql/dialect/postgres.d.ts +18 -10
- package/types/service/predefinedAdaptor/sql/dialect/sqlite.d.ts +5 -2
- package/types/service/predefinedAdaptor/sql/driver/bunSqlite.d.ts +9 -3
- package/types/service/predefinedAdaptor/sql/driver/libsql.d.ts +8 -5
- package/types/service/predefinedAdaptor/sql/driver/postgres.d.ts +4 -4
- package/types/service/predefinedAdaptor/sql/search/fts5.d.ts +28 -0
- package/types/service/predefinedAdaptor/sql/search/mirror.d.ts +20 -0
- package/types/service/predefinedAdaptor/sql/search/postgres.d.ts +53 -0
- package/types/service/predefinedAdaptor/sql/search/types.d.ts +45 -0
- package/types/service/predefinedAdaptor/sql/types.d.ts +69 -15
- package/types/service/predefinedAdaptor/sql/values.d.ts +8 -0
- package/types/service/predefinedAdaptor/sqlitePath.d.ts +1 -0
- package/types/service/predefinedAdaptor/sseData.d.ts +1 -0
- package/types/service/predefinedAdaptor/storage.adaptor.d.ts +3 -2
- package/types/service/predefinedAdaptor/websocket.adaptor.d.ts +26 -26
- package/types/service/serviceModule.d.ts +7 -7
- package/types/service/toolNames.d.ts +4 -21
- package/types/service/types.d.ts +3 -3
- package/types/signal/CrossSiteGuard.d.ts +3 -28
- package/types/signal/SignalFailure.d.ts +1 -15
- package/types/signal/agent/AgentCatalogue.d.ts +8 -54
- package/types/signal/agent.signal.d.ts +4 -1
- package/types/signal/agentMeter.d.ts +24 -0
- package/types/signal/agentTurnStream.d.ts +10 -11
- package/types/signal/endpoint.d.ts +0 -1
- package/types/signal/endpointCache.d.ts +5 -0
- package/types/signal/endpointInfo.d.ts +1 -9
- package/types/signal/exception.d.ts +1 -34
- package/types/signal/guard.d.ts +4 -15
- package/types/signal/guards.d.ts +2 -10
- package/types/signal/index.d.ts +1 -0
- package/types/signal/internal.d.ts +1 -5
- package/types/signal/internalArg.d.ts +7 -13
- package/types/signal/mcp/McpDocument.d.ts +5 -45
- package/types/signal/mcp/McpProgress.d.ts +6 -19
- package/types/signal/mcp/McpUriTemplate.d.ts +1 -19
- package/types/signal/mcp/Msg.d.ts +13 -70
- package/types/signal/mcp/mcpProtocol.d.ts +1 -26
- package/types/signal/mcp/pagePrompt.d.ts +3 -9
- package/types/signal/middleware.d.ts +0 -18
- package/types/signal/schema/JsonSchemaBuilder.d.ts +15 -43
- package/types/signal/serializer/fetch.serializer.d.ts +1 -6
- package/types/signal/serverSignal.d.ts +0 -1
- package/types/signal/signalContext.d.ts +14 -61
- package/types/signal/signalRegistry.d.ts +0 -1
- package/types/signal/slice.d.ts +3 -9
- package/types/signal/sliceInfo.d.ts +5 -30
- package/types/signal/trace.d.ts +2 -30
- package/types/signal/types.d.ts +27 -57
- package/types/store/SliceRequest.d.ts +1 -11
- package/types/store/action.d.ts +2 -6
- package/types/store/actionTag.d.ts +1 -10
- package/types/store/agent/AgentBridge.d.ts +3 -22
- package/types/store/agent/AgentContext.d.ts +1 -7
- package/types/store/agent/AgentCursor.d.ts +24 -0
- package/types/store/agent/AgentPrompts.d.ts +0 -5
- package/types/store/agent/AgentVisual.d.ts +25 -0
- package/types/store/agent/ScreenFlash.d.ts +23 -0
- package/types/store/agent/ScreenReader.d.ts +3 -26
- package/types/store/agent/ScreenSettle.d.ts +1 -12
- package/types/store/agent/ScreenTarget.d.ts +3 -23
- package/types/store/agent/StoreCatalogue.d.ts +12 -16
- package/types/store/agent/StoreSurfaceSource.d.ts +11 -23
- package/types/store/agent/index.d.ts +4 -3
- package/types/store/agentic/AgentValue.d.ts +3 -23
- package/types/store/agentic/StExposeBuilder.d.ts +2 -11
- package/types/store/agentic/StExposeDraft.d.ts +0 -6
- package/types/store/agentic/StStateBuilder.d.ts +1 -7
- package/types/store/agentic/StStateDraft.d.ts +0 -5
- package/types/store/agentic/StToolBuilder.d.ts +14 -37
- package/types/store/agentic/StToolDraft.d.ts +0 -7
- package/types/store/agentic/attachAgentic.d.ts +2 -10
- package/types/store/agentic/formFields.d.ts +5 -41
- package/types/store/agentic/index.d.ts +1 -1
- package/types/store/agentic/useAgentReference.d.ts +14 -0
- package/types/store/agentic/useFieldTool.d.ts +19 -16
- package/types/store/agentic/useFormTools.d.ts +1 -18
- package/types/store/agentic/useRelationFieldTool.d.ts +1 -14
- package/types/store/baseSt.d.ts +2 -2
- package/types/store/databaseStateNames.d.ts +0 -9
- package/types/store/draftStore.d.ts +4 -30
- package/types/store/formSetterNames.d.ts +0 -19
- package/types/store/hooks.d.ts +1 -1
- package/types/store/liveInsert.d.ts +0 -23
- package/types/store/sliceKeys.d.ts +31 -0
- package/types/store/sliceRole.d.ts +1 -10
- package/types/store/state.d.ts +2 -9
- package/types/store/stateBuilder.d.ts +0 -14
- package/types/store/storeInstance.d.ts +6 -20
- package/types/store/storeRegistry.d.ts +0 -2
- package/types/test/conformance.d.ts +73 -0
- package/types/test/index.d.ts +2 -2
- package/types/test/sampleOf.d.ts +17 -2
- package/types/test/signalTestRuntime.d.ts +1 -1
- package/types/test/testServer.d.ts +4 -3
- package/types/ui/Agent/Attach.d.ts +2 -2
- package/types/ui/Agent/Bubble.d.ts +3 -14
- package/types/ui/Agent/Chat.d.ts +31 -64
- package/types/ui/Agent/ChatCommands.d.ts +4 -14
- package/types/ui/Agent/Composer.d.ts +18 -5
- package/types/ui/Agent/Dock.d.ts +38 -10
- package/types/ui/Agent/Guide.d.ts +1 -5
- package/types/ui/Agent/History.d.ts +1 -18
- package/types/ui/Agent/Launcher.d.ts +2 -2
- package/types/ui/Agent/Markdown.d.ts +2 -6
- package/types/ui/Agent/MentionNode.d.ts +18 -0
- package/types/ui/Agent/Menu.d.ts +4 -4
- package/types/ui/Agent/Question.d.ts +1 -6
- package/types/ui/Agent/Queued.d.ts +1 -6
- package/types/ui/Agent/Refer.d.ts +9 -0
- package/types/ui/Agent/RichInput.d.ts +14 -0
- package/types/ui/Agent/Skip.d.ts +3 -15
- package/types/ui/Agent/Steps.d.ts +17 -0
- package/types/ui/Agent/ToolCard.d.ts +9 -0
- package/types/ui/Agent/Zone.d.ts +13 -30
- package/types/ui/Agent/agentSessionOf.d.ts +20 -16
- package/types/ui/Agent/attachment.d.ts +4 -38
- package/types/ui/Agent/fetchRunner.d.ts +1 -8
- package/types/ui/Agent/index.d.ts +2 -6
- package/types/ui/Agent/mentionDraft.d.ts +9 -0
- package/types/ui/Agent/tokenCount.d.ts +1 -5
- package/types/ui/Agent/useChatAttachments.d.ts +0 -5
- package/types/ui/Agent/useChatQueue.d.ts +3 -14
- package/types/ui/Agent/useChatReferences.d.ts +15 -0
- package/types/ui/Agent/useChatVoice.d.ts +0 -12
- package/types/ui/Agent/useDraftRecall.d.ts +0 -8
- package/types/ui/Agent/useKeyboardInset.d.ts +0 -7
- package/types/ui/Agent/useReferenceMenu.d.ts +35 -0
- package/types/ui/Agent/useSlashMenu.d.ts +0 -2
- package/types/ui/Agent/voice.d.ts +8 -42
- package/types/ui/Badge.d.ts +0 -1
- package/types/ui/BottomSheet.d.ts +2 -5
- package/types/ui/Button.d.ts +6 -23
- package/types/ui/ClientSide.d.ts +0 -2
- package/types/ui/Constant/schemaGraph.d.ts +0 -4
- package/types/ui/Copy.d.ts +2 -3
- package/types/ui/CsrImage.d.ts +2 -1
- package/types/ui/Data/Dashboard.d.ts +1 -4
- package/types/ui/Data/Item.d.ts +1 -1
- package/types/ui/Data/ListContainer.d.ts +1 -10
- package/types/ui/Data/Pagination.d.ts +0 -2
- package/types/ui/Data/QueryMaker.d.ts +0 -7
- package/types/ui/Data/RefPicker.d.ts +0 -7
- package/types/ui/DatePicker.d.ts +0 -11
- package/types/ui/Dialog/LegacyModal.d.ts +1 -4
- package/types/ui/Dialog/Provider.d.ts +37 -4
- package/types/ui/Dialog/index.d.ts +4 -4
- package/types/ui/Dropdown.d.ts +1 -9
- package/types/ui/Empty.d.ts +3 -10
- package/types/ui/Field/Collection.d.ts +1 -16
- package/types/ui/Field/Relation.d.ts +10 -37
- package/types/ui/Field/Text.d.ts +9 -66
- package/types/ui/Field/index.d.ts +0 -9
- package/types/ui/Field/lightRefCache.d.ts +11 -0
- package/types/ui/Field/useRelationOptions.d.ts +28 -0
- package/types/ui/Image.d.ts +8 -12
- package/types/ui/InfiniteScroll.d.ts +2 -6
- package/types/ui/Input.d.ts +8 -15
- package/types/ui/Layout/Role.d.ts +23 -0
- package/types/ui/Layout/Sider.d.ts +21 -0
- package/types/ui/Layout/TopInset.d.ts +5 -0
- package/types/ui/Layout/index.d.ts +7 -7
- package/types/ui/LegacyModal.d.ts +1 -12
- package/types/ui/Link/Action.d.ts +11 -0
- package/types/ui/Link/Anchor.d.ts +20 -0
- package/types/ui/Link/index.d.ts +4 -7
- package/types/ui/Load/Edit_Client.d.ts +1 -1
- package/types/ui/Load/Page.d.ts +3 -5
- package/types/ui/Load/Stream.d.ts +0 -12
- package/types/ui/Load/Units.d.ts +1 -1
- package/types/ui/Load/View.d.ts +2 -7
- package/types/ui/Loading/ProgressBar.d.ts +0 -4
- package/types/ui/Loading/Skeleton.d.ts +2 -0
- package/types/ui/Loading/Spin.d.ts +12 -2
- package/types/ui/Loading/index.d.ts +3 -8
- package/types/ui/Loading/index_.d.ts +3 -10
- package/types/ui/Menu.d.ts +0 -5
- package/types/ui/Modal.d.ts +0 -17
- package/types/ui/Model/AdminPanel.d.ts +1 -4
- package/types/ui/Model/DraftBar.d.ts +2 -7
- package/types/ui/Model/EditModal.d.ts +7 -22
- package/types/ui/Model/LoadStore.d.ts +18 -0
- package/types/ui/Model/Remove.d.ts +0 -2
- package/types/ui/Model/SureToRemove.d.ts +0 -3
- package/types/ui/Model/ViewEditModal.d.ts +0 -2
- package/types/ui/Model/draftScope.d.ts +0 -7
- package/types/ui/Model/index.d.ts +2 -2
- package/types/ui/Model/index_.d.ts +2 -2
- package/types/ui/Pagination.d.ts +4 -12
- package/types/ui/Popconfirm.d.ts +3 -17
- package/types/ui/Radio.d.ts +0 -4
- package/types/ui/RecentTime.d.ts +5 -9
- package/types/ui/Reference/Panel.d.ts +44 -6
- package/types/ui/Reference/Segmented.d.ts +0 -3
- package/types/ui/Reference/{style.d.ts → docUi.d.ts} +6 -2
- package/types/ui/Reference/index.d.ts +3 -7
- package/types/ui/Refresh.d.ts +1 -1
- package/types/ui/ScreenNavigator.d.ts +2 -2
- package/types/ui/Select.d.ts +4 -19
- package/types/ui/Signal/Endpoint.d.ts +43 -0
- package/types/ui/Signal/WebSocket.d.ts +23 -0
- package/types/ui/Signal/endpointEntries.d.ts +2 -4
- package/types/ui/Signal/index.d.ts +1 -3
- package/types/ui/Signal/style.d.ts +1 -2
- package/types/ui/Switch.d.ts +1 -5
- package/types/ui/System/CSR.d.ts +2 -2
- package/types/ui/System/Client.d.ts +2 -6
- package/types/ui/System/Common.d.ts +11 -22
- package/types/ui/System/Root.d.ts +1 -4
- package/types/ui/System/SSR.d.ts +2 -2
- package/types/ui/System/ThemeToggle.d.ts +1 -0
- package/types/ui/System/index.d.ts +1 -0
- package/types/ui/Tab/Provider.d.ts +24 -4
- package/types/ui/Tab/index.d.ts +3 -3
- package/types/ui/Table.d.ts +7 -23
- package/types/ui/Toast.d.ts +9 -16
- package/types/ui/ToggleSelect.d.ts +0 -5
- package/types/ui/Tooltip.d.ts +1 -2
- package/types/ui/UiOverride/{context.d.ts → UiOverride.d.ts} +24 -40
- package/types/ui/UiOverride/index.d.ts +2 -5
- package/types/ui/UiOverride/override.d.ts +2 -18
- package/types/ui/Unauthorized.d.ts +0 -6
- package/types/ui/agentAttrs.d.ts +4 -11
- package/types/ui/index.d.ts +9 -5
- package/types/ui/overlayLayer.d.ts +4 -24
- package/types/ui/overlayPosition.d.ts +0 -12
- package/types/ui/recipe/badgeRecipe.d.ts +2 -2
- package/types/ui/recipe/buttonRecipe.d.ts +2 -2
- package/types/ui/recipe/factory.d.ts +1 -21
- package/types/ui/recipe/index.d.ts +0 -14
- package/types/ui/recipe/inputRecipe.d.ts +3 -3
- package/types/ui/sliceNamesOf.d.ts +78 -0
- package/types/ui/triggerSlot.d.ts +2 -12
- package/types/vendor/use-agentic/AgentProgress.d.ts +12 -0
- package/types/vendor/use-agentic/AgentSession.d.ts +94 -2
- package/types/vendor/use-agentic/Compaction.d.ts +42 -5
- package/types/vendor/use-agentic/Reference.d.ts +56 -0
- package/types/vendor/use-agentic/ToolRunner.d.ts +31 -1
- package/types/vendor/use-agentic/Transcript.d.ts +4 -1
- package/types/vendor/use-agentic/index.d.ts +1 -0
- package/types/vendor/use-agentic/types.d.ts +109 -7
- package/types/webkit/RenderLayer.d.ts +11 -0
- package/types/webkit/index.d.ts +1 -2
- package/types/webkit/lazy.d.ts +3 -12
- package/types/webkit/{createRobotPage.d.ts → seoPages.d.ts} +4 -0
- package/types/webkit/useBodyScrollLock.d.ts +0 -1
- package/types/webkit/useCamera.d.ts +1 -1
- package/types/webkit/useContact.d.ts +1 -1
- package/types/webkit/useDebounce.d.ts +0 -1
- package/types/webkit/useEscapeKey.d.ts +1 -4
- package/types/webkit/useFetch.d.ts +1 -6
- package/types/webkit/useFrameRuntime.d.ts +1 -1
- package/types/webkit/useGeoLocation.d.ts +1 -1
- package/types/webkit/usePageTool.d.ts +2 -9
- package/types/webkit/usePurchase.d.ts +1 -4
- package/types/webkit/useScreenScope.d.ts +2 -13
- package/ui/Agent/Attach.tsx +5 -4
- package/ui/Agent/Bubble.tsx +51 -31
- package/ui/Agent/Chat.tsx +114 -102
- package/ui/Agent/ChatCommands.ts +5 -21
- package/ui/Agent/Composer.tsx +110 -28
- package/ui/Agent/Dock.tsx +176 -16
- package/ui/Agent/Guide.tsx +1 -5
- package/ui/Agent/History.tsx +1 -18
- package/ui/Agent/Launcher.tsx +2 -2
- package/ui/Agent/Markdown.tsx +40 -14
- package/ui/Agent/MentionNode.ts +54 -0
- package/ui/Agent/Menu.tsx +8 -5
- package/ui/Agent/Question.tsx +1 -6
- package/ui/Agent/Queued.tsx +3 -6
- package/ui/Agent/Refer.tsx +40 -0
- package/ui/Agent/RichInput.tsx +146 -0
- package/ui/Agent/Skip.tsx +3 -15
- package/ui/Agent/Steps.tsx +33 -0
- package/ui/Agent/ToolCard.tsx +32 -0
- package/ui/Agent/Zone.tsx +15 -31
- package/ui/Agent/agentSessionOf.ts +115 -15
- package/ui/Agent/attachment.ts +5 -42
- package/ui/Agent/fetchRunner.ts +3 -15
- package/ui/Agent/index.ts +1 -6
- package/ui/Agent/mentionDraft.ts +91 -0
- package/ui/Agent/tokenCount.ts +1 -5
- package/ui/Agent/useChatAttachments.ts +2 -9
- package/ui/Agent/useChatQueue.ts +12 -14
- package/ui/Agent/useChatReferences.ts +51 -0
- package/ui/Agent/useChatVoice.ts +2 -23
- package/ui/Agent/useDraftRecall.ts +0 -9
- package/ui/Agent/useKeyboardInset.ts +0 -7
- package/ui/Agent/useReferenceMenu.ts +93 -0
- package/ui/Agent/useSlashMenu.ts +0 -3
- package/ui/Agent/voice.ts +8 -43
- package/ui/Badge.tsx +0 -2
- package/ui/BottomSheet.tsx +2 -5
- package/ui/Button.tsx +9 -45
- package/ui/ClientSide.tsx +0 -2
- package/ui/Clipboard.tsx +0 -1
- package/ui/Constant/Doc.tsx +274 -265
- package/ui/Constant/Graph.tsx +11 -3
- package/ui/Constant/schemaGraph.ts +0 -9
- package/ui/Copy.tsx +2 -3
- package/ui/CsrImage.tsx +9 -9
- package/ui/Data/CardList.tsx +2 -17
- package/ui/Data/Dashboard.tsx +2 -5
- package/ui/Data/Item.tsx +2 -3
- package/ui/Data/ListContainer.tsx +15 -61
- package/ui/Data/Pagination.tsx +3 -22
- package/ui/Data/QueryMaker.tsx +1 -8
- package/ui/Data/RefPicker.tsx +1 -8
- package/ui/Data/TableList.tsx +2 -15
- package/ui/DatePicker.tsx +1 -12
- package/ui/Dialog/LegacyModal.tsx +3 -7
- package/ui/Dialog/Modal.tsx +3 -4
- package/ui/Dialog/Provider.tsx +85 -7
- package/ui/Dialog/index.tsx +1 -5
- package/ui/DraggableList.tsx +1 -4
- package/ui/Dropdown.tsx +4 -17
- package/ui/Empty.tsx +4 -12
- package/ui/Field/Choice.tsx +1 -1
- package/ui/Field/Collection.tsx +7 -29
- package/ui/Field/DateField.tsx +2 -7
- package/ui/Field/Label.tsx +0 -1
- package/ui/Field/NumberField.tsx +0 -1
- package/ui/Field/Relation.tsx +79 -199
- package/ui/Field/Text.tsx +25 -86
- package/ui/Field/index.tsx +0 -9
- package/ui/Field/lightRefCache.ts +61 -0
- package/ui/Field/useRelationOptions.ts +97 -0
- package/ui/Image.tsx +35 -65
- package/ui/InfiniteScroll.tsx +3 -21
- package/ui/Input.tsx +82 -174
- package/ui/Layout/Role.tsx +42 -0
- package/ui/Layout/Sider.tsx +82 -1
- package/ui/Layout/TopInset.tsx +23 -1
- package/ui/Layout/index.ts +3 -9
- package/ui/LegacyModal.tsx +1 -12
- package/ui/Link/Action.tsx +29 -0
- package/ui/Link/Anchor.tsx +118 -0
- package/ui/Link/index.tsx +7 -8
- package/ui/Load/Edit_Client.tsx +2 -37
- package/ui/Load/Page.tsx +3 -6
- package/ui/Load/Pagination.tsx +4 -19
- package/ui/Load/Stream.tsx +0 -12
- package/ui/Load/Units.tsx +13 -86
- package/ui/Load/View.tsx +4 -21
- package/ui/Loading/ProgressBar.tsx +0 -4
- package/ui/Loading/Skeleton.tsx +14 -0
- package/ui/Loading/Spin.tsx +34 -5
- package/ui/Loading/index.ts +0 -5
- package/ui/Loading/index_.tsx +2 -12
- package/ui/Menu.tsx +3 -21
- package/ui/Modal.tsx +0 -17
- package/ui/Model/AdminPanel.tsx +2 -5
- package/ui/Model/DraftBar.tsx +3 -14
- package/ui/Model/EditModal.tsx +11 -48
- package/ui/Model/EditWrapper.tsx +2 -3
- package/ui/Model/LoadStore.tsx +18 -0
- package/ui/Model/NewWrapper_Client.tsx +1 -1
- package/ui/Model/Remove.tsx +4 -12
- package/ui/Model/RemoveWrapper.tsx +2 -3
- package/ui/Model/SureToRemove.tsx +4 -13
- package/ui/Model/ViewEditModal.tsx +0 -6
- package/ui/Model/ViewModal.tsx +1 -5
- package/ui/Model/ViewWrapper.tsx +1 -2
- package/ui/Model/draftScope.ts +0 -7
- package/ui/Model/index_.tsx +2 -22
- package/ui/Pagination.tsx +4 -12
- package/ui/Popconfirm.tsx +3 -18
- package/ui/Portal.tsx +2 -3
- package/ui/Radio.tsx +1 -5
- package/ui/RecentTime.tsx +19 -31
- package/ui/Reference/Panel.tsx +102 -6
- package/ui/Reference/Segmented.tsx +5 -11
- package/ui/Reference/{style.ts → docUi.ts} +10 -2
- package/ui/Reference/index.ts +3 -7
- package/ui/Refresh.tsx +79 -13
- package/ui/ScreenNavigator.tsx +8 -13
- package/ui/Select.tsx +29 -37
- package/ui/Signal/Endpoint.tsx +154 -0
- package/ui/Signal/Listener.tsx +1 -4
- package/ui/Signal/Object.tsx +67 -73
- package/ui/Signal/RestApi.tsx +30 -76
- package/ui/Signal/WebSocket.tsx +253 -2
- package/ui/Signal/endpointEntries.ts +3 -5
- package/ui/Signal/index.ts +1 -3
- package/ui/Signal/style.ts +1 -2
- package/ui/Switch.tsx +1 -5
- package/ui/System/CSR.tsx +29 -109
- package/ui/System/Client.tsx +15 -19
- package/ui/System/Common.tsx +31 -22
- package/ui/System/Messages.tsx +2 -2
- package/ui/System/Reconnect.tsx +1 -6
- package/ui/System/Root.tsx +1 -4
- package/ui/System/SSR.tsx +10 -16
- package/ui/System/ThemeToggle.tsx +15 -0
- package/ui/System/index.tsx +2 -2
- package/ui/Tab/Provider.tsx +115 -7
- package/ui/Tab/index.tsx +1 -4
- package/ui/Table.tsx +7 -23
- package/ui/Toast.tsx +9 -16
- package/ui/ToggleSelect.tsx +10 -24
- package/ui/Tooltip.tsx +2 -8
- package/ui/UiOverride/{context.ts → UiOverride.tsx} +54 -42
- package/ui/UiOverride/index.ts +9 -6
- package/ui/UiOverride/override.ts +2 -18
- package/ui/Unauthorized.tsx +1 -8
- package/ui/agentAttrs.ts +9 -12
- package/ui/index.ts +20 -5
- package/ui/overlayLayer.ts +4 -25
- package/ui/overlayPosition.ts +2 -14
- package/ui/recipe/badgeRecipe.ts +1 -1
- package/ui/recipe/buttonRecipe.ts +4 -4
- package/ui/recipe/factory.ts +1 -22
- package/ui/recipe/index.ts +1 -14
- package/ui/recipe/inputRecipe.ts +2 -2
- package/ui/sliceNamesOf.ts +26 -0
- package/ui/styles.css +195 -1
- package/ui/triggerSlot.tsx +2 -12
- package/vendor/use-agentic/AgentProgress.ts +13 -1
- package/vendor/use-agentic/AgentSession.ts +313 -29
- package/vendor/use-agentic/AgenticSurface.ts +2 -0
- package/vendor/use-agentic/Compaction.ts +91 -9
- package/vendor/use-agentic/Reference.ts +99 -0
- package/vendor/use-agentic/ToolRunner.ts +77 -2
- package/vendor/use-agentic/Transcript.ts +15 -4
- package/vendor/use-agentic/WIRE.md +16 -2
- package/vendor/use-agentic/httpRunner.ts +19 -4
- package/vendor/use-agentic/index.ts +1 -1
- package/vendor/use-agentic/types.ts +121 -10
- package/webkit/RenderLayer.tsx +45 -0
- package/webkit/bootCsr.tsx +4 -57
- package/webkit/index.ts +1 -2
- package/webkit/lazy.tsx +3 -13
- package/webkit/{createRobotPage.ts → seoPages.ts} +5 -0
- package/webkit/useBodyScrollLock.tsx +0 -6
- package/webkit/useCamera.tsx +10 -28
- package/webkit/useCodepush.tsx +8 -31
- package/webkit/useContact.tsx +1 -8
- package/webkit/useCsrValues.ts +203 -428
- package/webkit/useDebounce.ts +0 -3
- package/webkit/useEscapeKey.tsx +1 -12
- package/webkit/useFetch.ts +7 -13
- package/webkit/useFrameRuntime.ts +5 -43
- package/webkit/useGeoLocation.tsx +1 -1
- package/webkit/useLocation.ts +5 -8
- package/webkit/usePageTool.tsx +2 -9
- package/webkit/usePurchase.tsx +17 -33
- package/webkit/useScreenScope.tsx +2 -13
- package/client/fetch.ts +0 -1
- package/client/frameDebug.ts +0 -29
- package/common/deepObjectify.ts +0 -42
- package/common/dynamicRecord.ts +0 -12
- package/common/formatPhone.ts +0 -7
- package/common/getAllPropertyDescriptors.ts +0 -13
- package/common/lowerlize.ts +0 -4
- package/common/mergeVersion.ts +0 -10
- package/common/pathGet.ts +0 -13
- package/common/pathGetLoose.ts +0 -31
- package/common/pathSet.ts +0 -28
- package/common/plainFieldsOf.ts +0 -13
- package/common/randomPicks.ts +0 -12
- package/common/websocketAuth.ts +0 -24
- package/constant/deserialize.ts +0 -98
- package/dictionary/agentTurn.dictionary.ts +0 -33
- package/document/schema.ts +0 -24
- package/fetch/fetchType/clientSignal.type.ts +0 -22
- package/local/apps/akan/akan-local.db +0 -0
- package/local/apps/akan/akan-local.db-shm +0 -0
- package/local/apps/akan/akan-local.db-wal +0 -0
- package/local/apps/akan/akan-local_solid.db +0 -0
- package/local/apps/akan/akan-local_solid.db-shm +0 -0
- package/local/apps/akan/akan-local_solid.db-wal +0 -0
- package/local/apps/serverLifecycle/serverLifecycle-local.db +0 -0
- package/local/apps/serverLifecycle/serverLifecycle-local.db-shm +0 -0
- package/local/apps/serverLifecycle/serverLifecycle-local.db-wal +0 -0
- package/local/apps/serverLifecycle/serverLifecycle-local_solid.db +0 -0
- package/local/apps/serverLifecycle/serverLifecycle-local_solid.db-shm +0 -0
- package/local/apps/serverLifecycle/serverLifecycle-local_solid.db-wal +0 -0
- package/server/artifact/manifestTypes.ts +0 -19
- package/server/assetEncoding.ts +0 -27
- package/server/consoleEvaluator.ts +0 -51
- package/server/di/index.ts +0 -4
- package/server/di/resolveAdaptorHierarchy.ts +0 -91
- package/server/di/resolveServiceHierarchy.ts +0 -47
- package/server/hmr/changeBatch.ts +0 -14
- package/server/hmr/index.ts +0 -4
- package/server/metadata.tsx +0 -198
- package/server/proxy/akanResponse.ts +0 -16
- package/server/proxy/bunRequestFields.ts +0 -12
- package/server/rscPartialCommit.ts +0 -3
- package/server/rscPatchSafety.ts +0 -57
- package/server/rscWorkerReplay.ts +0 -49
- package/server/subRouteIndexDocument.tsx +0 -61
- package/service/predefinedAdaptor/deepseekLlm.ts +0 -82
- package/service/predefinedAdaptor/sqlDescriptor.ts +0 -25
- package/store/agent/storeSurface.ts +0 -28
- package/store/agent/types.ts +0 -16
- package/store/agentic/useFileFieldTool.ts +0 -221
- package/store/stateInfo.ts +0 -66
- package/test/playwright.config.base.ts +0 -48
- package/test/playwright.pageAgent.ts +0 -41
- package/test/sample.ts +0 -19
- package/types/client/fetch.d.ts +0 -1
- package/types/client/frameDebug.d.ts +0 -3
- package/types/common/deepObjectify.d.ts +0 -6
- package/types/common/dynamicRecord.d.ts +0 -14
- package/types/common/formatPhone.d.ts +0 -2
- package/types/common/getAllPropertyDescriptors.d.ts +0 -5
- package/types/common/isPhoneNumber.d.ts +0 -2
- package/types/common/lowerlize.d.ts +0 -2
- package/types/common/mergeVersion.d.ts +0 -10
- package/types/common/pathGet.d.ts +0 -1
- package/types/common/pathGetLoose.d.ts +0 -8
- package/types/common/pathSet.d.ts +0 -3
- package/types/common/plainFieldsOf.d.ts +0 -6
- package/types/common/randomPicks.d.ts +0 -1
- package/types/common/splitVersion.d.ts +0 -11
- package/types/common/websocketAuth.d.ts +0 -19
- package/types/common/websocketBinaryFrame.d.ts +0 -17
- package/types/constant/deserialize.d.ts +0 -10
- package/types/dictionary/agentTurn.dictionary.d.ts +0 -1
- package/types/document/schema.d.ts +0 -5
- package/types/fetch/fetchType/clientSignal.type.d.ts +0 -16
- package/types/server/artifact/manifestTypes.d.ts +0 -16
- package/types/server/assetEncoding.d.ts +0 -7
- package/types/server/consoleEvaluator.d.ts +0 -2
- package/types/server/di/index.d.ts +0 -4
- package/types/server/di/resolveAdaptorHierarchy.d.ts +0 -21
- package/types/server/di/resolveServiceHierarchy.d.ts +0 -13
- package/types/server/di.d.ts +0 -1
- package/types/server/hmr/changeBatch.d.ts +0 -13
- package/types/server/hmr/index.d.ts +0 -4
- package/types/server/hmr.d.ts +0 -1
- package/types/server/metadata.d.ts +0 -22
- package/types/server/proxy/akanResponse.d.ts +0 -7
- package/types/server/proxy/bunRequestFields.d.ts +0 -1
- package/types/server/rscPartialCommit.d.ts +0 -1
- package/types/server/rscPatchSafety.d.ts +0 -8
- package/types/server/rscWorkerReplay.d.ts +0 -32
- package/types/server/subRouteIndexDocument.d.ts +0 -8
- package/types/service/predefinedAdaptor/deepseekLlm.d.ts +0 -19
- package/types/service/predefinedAdaptor/sqlDescriptor.d.ts +0 -5
- package/types/store/agent/storeSurface.d.ts +0 -14
- package/types/store/agent/types.d.ts +0 -15
- package/types/store/agentic/useFileFieldTool.d.ts +0 -41
- package/types/store/stateInfo.d.ts +0 -23
- package/types/test/playwright.config.base.d.ts +0 -9
- package/types/test/playwright.pageAgent.d.ts +0 -12
- package/types/test/sample.d.ts +0 -15
- package/types/ui/Agent/Context.d.ts +0 -13
- package/types/ui/Agent/Mic.d.ts +0 -8
- package/types/ui/Agent/Section.d.ts +0 -10
- package/types/ui/Agent/StateKey.d.ts +0 -16
- package/types/ui/Agent/Tool.d.ts +0 -15
- package/types/ui/Agent/Transcript.d.ts +0 -13
- package/types/ui/Agent/markdownSpans.d.ts +0 -2
- package/types/ui/Agent/sessionHistory.d.ts +0 -14
- package/types/ui/Agent/sessionView.d.ts +0 -15
- package/types/ui/Dialog/Action.d.ts +0 -5
- package/types/ui/Dialog/Close.d.ts +0 -6
- package/types/ui/Dialog/Content.d.ts +0 -6
- package/types/ui/Dialog/Title.d.ts +0 -5
- package/types/ui/Dialog/Trigger.d.ts +0 -6
- package/types/ui/Dialog/context.d.ts +0 -18
- package/types/ui/Layout/LeftSider.d.ts +0 -11
- package/types/ui/Layout/RightSider.d.ts +0 -12
- package/types/ui/Layout/Template.d.ts +0 -7
- package/types/ui/Layout/TopLeftAction.d.ts +0 -6
- package/types/ui/Layout/Unit.d.ts +0 -9
- package/types/ui/Layout/View.d.ts +0 -8
- package/types/ui/Layout/Zone.d.ts +0 -6
- package/types/ui/Link/Back.d.ts +0 -7
- package/types/ui/Link/Close.d.ts +0 -7
- package/types/ui/Link/CsrLink.d.ts +0 -2
- package/types/ui/Link/Lang.d.ts +0 -8
- package/types/ui/Link/SsrLink.d.ts +0 -2
- package/types/ui/Link/types.d.ts +0 -50
- package/types/ui/Loading/Area.d.ts +0 -9
- package/types/ui/Loading/Button.d.ts +0 -7
- package/types/ui/Loading/Input.d.ts +0 -7
- package/types/ui/Model/LoadInit.d.ts +0 -10
- package/types/ui/Model/LoadView.d.ts +0 -10
- package/types/ui/Reference/Collapse.d.ts +0 -11
- package/types/ui/Reference/Summary.d.ts +0 -13
- package/types/ui/Reference/Toolbar.d.ts +0 -21
- package/types/ui/Reference/dictText.d.ts +0 -6
- package/types/ui/Signal/Message.d.ts +0 -23
- package/types/ui/Signal/PubSub.d.ts +0 -24
- package/types/ui/Signal/Request.d.ts +0 -8
- package/types/ui/System/DevModeToggle.d.ts +0 -1
- package/types/ui/System/Gtag.d.ts +0 -4
- package/types/ui/System/frameCssVars.d.ts +0 -5
- package/types/ui/Tab/Menu.d.ts +0 -12
- package/types/ui/Tab/Menus.d.ts +0 -6
- package/types/ui/Tab/Panel.d.ts +0 -8
- package/types/ui/Tab/context.d.ts +0 -11
- package/types/ui/UiOverride/Provider.d.ts +0 -15
- package/types/ui/UiOverride/createOverridable.d.ts +0 -9
- package/types/ui/UiOverride/useUiOverride.d.ts +0 -7
- package/types/ui/UiOverride/useUiRecipe.d.ts +0 -8
- package/types/webkit/createSitemapPage.d.ts +0 -4
- package/ui/Agent/Context.tsx +0 -49
- package/ui/Agent/Mic.tsx +0 -27
- package/ui/Agent/Section.tsx +0 -24
- package/ui/Agent/StateKey.tsx +0 -46
- package/ui/Agent/Tool.tsx +0 -59
- package/ui/Agent/Transcript.tsx +0 -33
- package/ui/Agent/markdownSpans.tsx +0 -49
- package/ui/Agent/sessionHistory.ts +0 -62
- package/ui/Agent/sessionView.ts +0 -38
- package/ui/Dialog/Action.tsx +0 -15
- package/ui/Dialog/Close.tsx +0 -18
- package/ui/Dialog/Content.tsx +0 -11
- package/ui/Dialog/Title.tsx +0 -15
- package/ui/Dialog/Trigger.tsx +0 -18
- package/ui/Dialog/context.ts +0 -32
- package/ui/Layout/LeftSider.tsx +0 -43
- package/ui/Layout/RightSider.tsx +0 -47
- package/ui/Layout/Template.tsx +0 -11
- package/ui/Layout/TopLeftAction.tsx +0 -28
- package/ui/Layout/Unit.tsx +0 -19
- package/ui/Layout/View.tsx +0 -12
- package/ui/Layout/Zone.tsx +0 -10
- package/ui/Link/Back.tsx +0 -15
- package/ui/Link/Close.tsx +0 -20
- package/ui/Link/CsrLink.tsx +0 -46
- package/ui/Link/Lang.tsx +0 -16
- package/ui/Link/SsrLink.tsx +0 -72
- package/ui/Link/types.ts +0 -55
- package/ui/Loading/Area.tsx +0 -27
- package/ui/Loading/Button.tsx +0 -15
- package/ui/Loading/Input.tsx +0 -15
- package/ui/Model/LoadInit.tsx +0 -11
- package/ui/Model/LoadView.tsx +0 -11
- package/ui/Reference/Collapse.tsx +0 -26
- package/ui/Reference/Summary.tsx +0 -25
- package/ui/Reference/Toolbar.tsx +0 -44
- package/ui/Reference/dictText.ts +0 -9
- package/ui/Signal/Message.tsx +0 -215
- package/ui/Signal/PubSub.tsx +0 -201
- package/ui/Signal/Request.tsx +0 -11
- package/ui/System/DevModeToggle.tsx +0 -19
- package/ui/System/Gtag.tsx +0 -69
- package/ui/System/frameCssVars.ts +0 -25
- package/ui/Tab/Menu.tsx +0 -70
- package/ui/Tab/Menus.tsx +0 -13
- package/ui/Tab/Panel.tsx +0 -25
- package/ui/Tab/context.ts +0 -20
- package/ui/UiOverride/Provider.tsx +0 -26
- package/ui/UiOverride/createOverridable.tsx +0 -25
- package/ui/UiOverride/useUiOverride.ts +0 -15
- package/ui/UiOverride/useUiRecipe.ts +0 -15
- package/webkit/createSitemapPage.ts +0 -4
|
@@ -1,27 +1,25 @@
|
|
|
1
1
|
import { type DocumentQuery } from "akanjs/document";
|
|
2
|
-
import { type
|
|
2
|
+
import { type SearchIndex } from "../searchIndex.d.ts";
|
|
3
|
+
import { type CompiledQuery, type FieldMap, type PathKind, type SqlDialect } from "./types.d.ts";
|
|
3
4
|
export declare class QueryCompiler {
|
|
4
5
|
#private;
|
|
5
6
|
private readonly fields;
|
|
6
7
|
private readonly dialect;
|
|
7
8
|
private readonly ref;
|
|
8
|
-
private readonly
|
|
9
|
-
constructor(fields: FieldMap, dialect: SqlDialect, ref: string,
|
|
9
|
+
private readonly searchIndex;
|
|
10
|
+
constructor(fields: FieldMap, dialect: SqlDialect, ref: string, searchIndex: () => SearchIndex | null);
|
|
10
11
|
compile(query?: DocumentQuery): CompiledQuery;
|
|
11
12
|
orderBy(sort?: Record<string, 1 | -1>): string;
|
|
12
13
|
fieldExpr(path: string): string;
|
|
14
|
+
/** Walks declared scalar models down the path; a path through anything else is one the model does not type. */
|
|
15
|
+
pathKind(path: string): PathKind;
|
|
16
|
+
isArrayPath(path: string): boolean;
|
|
13
17
|
projectExpr(path: string): string;
|
|
14
18
|
private compileNode;
|
|
15
19
|
private compileField;
|
|
16
20
|
/**
|
|
17
|
-
* The root segment only,
|
|
18
|
-
*
|
|
19
|
-
* Everything past it reaches the escaped JSON-path literal and nothing else, so a deep typo is a query that
|
|
20
|
-
* matches nothing rather than a query that does something else. Validating it would mean walking the field
|
|
21
|
-
* graph through array indices (`payments.3.name`), array-of-object leaves (`works.tags`) and `Map` keys, which
|
|
22
|
-
* have no fixed path to check against — a validator that guessed there would refuse working queries, which is
|
|
23
|
-
* worse than the silence. Deep paths are written by the model's own filter code, where the first test catches
|
|
24
|
-
* a typo; the root is the one segment a caller can reach.
|
|
21
|
+
* The root segment only: a deeper typo reaches only the escaped JSON-path literal and matches nothing, while checking
|
|
22
|
+
* indices, array leaves and `Map` keys would refuse working queries.
|
|
25
23
|
*/
|
|
26
24
|
private assertPath;
|
|
27
25
|
private isQueryNode;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type ConstantModel } from "akanjs/constant";
|
|
2
2
|
import { type DatabaseModel, type DocumentQuery, type DocumentSchema, type DocumentUpdateInput, type DocumentUpdateOptions } from "akanjs/document";
|
|
3
3
|
import { QueryCompiler } from "./QueryCompiler.d.ts";
|
|
4
|
-
import { type DocumentDatabaseOwner, type DocumentRecord, type FindManyOptions, type FindOneOptions, type SortOption, type SqlDialect, type WriteHookOptions } from "./types.d.ts";
|
|
4
|
+
import { type DocumentDatabaseOwner, type DocumentRecord, type FindManyOptions, type FindOneOptions, type SortOption, type SqlDialect, type TransferRow, type WriteHookOptions } from "./types.d.ts";
|
|
5
5
|
import { UpdateCompiler } from "./UpdateCompiler.d.ts";
|
|
6
6
|
export declare class SqlDocumentStore {
|
|
7
7
|
#private;
|
|
@@ -21,6 +21,10 @@ export declare class SqlDocumentStore {
|
|
|
21
21
|
}): Promise<any>;
|
|
22
22
|
update(id: string, patch: DocumentRecord, options?: WriteHookOptions): Promise<any>;
|
|
23
23
|
remove(id: string): Promise<any>;
|
|
24
|
+
/** Up to `limit` stored rows after the id `after`, in id order and removed ones included. */
|
|
25
|
+
exportRows(after: string, limit: number): Promise<TransferRow[]>;
|
|
26
|
+
/** Rows as another database stored them: a taken id is replaced, and no hook runs or field is derived. */
|
|
27
|
+
importRows(rows: TransferRow[]): Promise<void>;
|
|
24
28
|
updateOneByQuery(query: DocumentQuery, update: DocumentUpdateInput, options?: DocumentUpdateOptions): Promise<{
|
|
25
29
|
acknowledged: boolean;
|
|
26
30
|
matchedCount: number;
|
|
@@ -57,12 +61,8 @@ export declare class SqlDocumentStore {
|
|
|
57
61
|
upsertedId: string | null;
|
|
58
62
|
}>;
|
|
59
63
|
find(query?: DocumentQuery, options?: FindManyOptions): Promise<any[]>;
|
|
60
|
-
findIds(query?: DocumentQuery, options?:
|
|
61
|
-
|
|
62
|
-
skip?: number | null;
|
|
63
|
-
limit?: number | null;
|
|
64
|
-
sample?: number;
|
|
65
|
-
}): Promise<string[]>;
|
|
64
|
+
findIds(query?: DocumentQuery, options?: Omit<FindManyOptions, "select">): Promise<string[]>;
|
|
65
|
+
private listQuery;
|
|
66
66
|
findOne(query?: DocumentQuery, options?: FindOneOptions): Promise<any>;
|
|
67
67
|
findId(query?: DocumentQuery, options?: {
|
|
68
68
|
sort?: SortOption;
|
|
@@ -100,28 +100,14 @@ export declare class SqlDocumentStore {
|
|
|
100
100
|
private decodeNestedValue;
|
|
101
101
|
private normalizeWriteValue;
|
|
102
102
|
private fillScalarDefaults;
|
|
103
|
-
/**
|
|
104
|
-
* `track` buys `isModified()` and costs a deep clone of the row, so it is decided per call site rather than
|
|
105
|
-
* paid everywhere. Only the read paths (`find`, and the projected read behind it) opt out — that clone was 42%
|
|
106
|
-
* of a list query, and a listed document is never the one a save hook runs on. Everything else keeps it, so an
|
|
107
|
-
* external caller of `hydrate` sees no change.
|
|
108
|
-
*/
|
|
103
|
+
/** `track` buys `isModified()` with a deep clone of the row; only the read paths opt out. */
|
|
109
104
|
hydrate(data: DocumentRecord, originalData?: DocumentRecord, { track }?: {
|
|
110
105
|
track?: boolean;
|
|
111
106
|
}): any;
|
|
107
|
+
serialize(doc: DocumentRecord): string;
|
|
108
|
+
deserialize(text: string): any;
|
|
112
109
|
private runHooks;
|
|
113
110
|
private insertStmt;
|
|
114
|
-
private
|
|
111
|
+
private prepareStmt;
|
|
115
112
|
private assertValidRefName;
|
|
116
113
|
}
|
|
117
|
-
/**
|
|
118
|
-
* The schema setups `getStore` starts but nobody awaits.
|
|
119
|
-
*
|
|
120
|
-
* `getStore` returns a store synchronously while `ensure()` goes on creating tables and indexes, so
|
|
121
|
-
* the connection could be closed out from under one — a server shutting down, or a test tearing its
|
|
122
|
-
* fixture down. That surfaced as an unhandled `Cannot use a closed database` blamed on whatever ran
|
|
123
|
-
* next, which made it look like a flaky test rather than a race at shutdown.
|
|
124
|
-
*
|
|
125
|
-
* Every statement `ensure()` runs is `IF NOT EXISTS`, so one cut short is simply redone on the next
|
|
126
|
-
* boot; a failure *before* the close is still a real problem and still surfaces.
|
|
127
|
-
*/
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { InsightSession } from "./types.d.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Attached to a fresh in-memory connection under a random schema, every `_doc` table shadowed by a TEMP view omitting
|
|
4
|
+
* it: bun:sqlite has no authorizer, and no text check can hold since SQLite reads `'admin'.'_doc'` as the column.
|
|
5
|
+
* `query_only` refuses every write, whatever the text.
|
|
6
|
+
*/
|
|
7
|
+
export declare class SqliteInsightSession implements InsightSession {
|
|
8
|
+
#private;
|
|
9
|
+
private constructor();
|
|
10
|
+
static open(file: string): SqliteInsightSession;
|
|
11
|
+
/** No second connection can open an in-memory database, so it is read from a copy that lives for one session. */
|
|
12
|
+
static openSnapshot(bytes: Uint8Array): Promise<SqliteInsightSession>;
|
|
13
|
+
read(statement: string): Promise<Record<string, unknown>[]>;
|
|
14
|
+
close(): Promise<void>;
|
|
15
|
+
}
|
|
@@ -11,7 +11,3 @@ export declare class UpdateCompiler {
|
|
|
11
11
|
setOnInsert: Record<string, unknown>;
|
|
12
12
|
};
|
|
13
13
|
}
|
|
14
|
-
/**
|
|
15
|
-
* Per-document modification state, attached only when a document is hydrated for writing.
|
|
16
|
-
* Non-enumerable so `{ ...doc }` in `toRow` and `Object.entries` in `sanitizeJson` never see it.
|
|
17
|
-
*/
|
|
@@ -1,27 +1,35 @@
|
|
|
1
1
|
import type { DocumentUpdateOperator } from "akanjs/document";
|
|
2
|
-
import type {
|
|
2
|
+
import type { CreateIndexProps, PathKind, SqlDialect, SqlFrag } from "../types.d.ts";
|
|
3
3
|
export declare class PostgresDialect implements SqlDialect {
|
|
4
4
|
#private;
|
|
5
5
|
readonly name: "postgres";
|
|
6
|
+
/**
|
|
7
|
+
* `jsonb_set` drops a nested write whose parent is missing, where SQLite's `json_set` creates it. A function, since
|
|
8
|
+
* inline SQL would re-read the folded document per level and repeat every earlier operation's parameters.
|
|
9
|
+
*/
|
|
10
|
+
static schemaSetup(): string;
|
|
6
11
|
timestampType(): string;
|
|
7
12
|
docColumnType(): string;
|
|
8
13
|
docColumn(): string;
|
|
9
14
|
docValuePlaceholder(): string;
|
|
10
|
-
extract(path: string): string;
|
|
15
|
+
extract(path: string, kind?: PathKind): string;
|
|
11
16
|
projectExpr(path: string): string;
|
|
12
|
-
decodeProjected(value: unknown):
|
|
13
|
-
eq(path: string, value: unknown): SqlFrag;
|
|
14
|
-
ne(path: string, value: unknown): SqlFrag;
|
|
15
|
-
compare(path: string, op: "gt" | "gte" | "lt" | "lte", value: unknown): SqlFrag;
|
|
16
|
-
between(path: string, from: unknown, to: unknown): SqlFrag;
|
|
17
|
-
inList(path: string, values: unknown[]): SqlFrag;
|
|
18
|
-
notInList(path: string, values: unknown[]): SqlFrag;
|
|
17
|
+
decodeProjected(value: unknown): any;
|
|
18
|
+
eq(path: string, value: unknown, kind?: PathKind): SqlFrag;
|
|
19
|
+
ne(path: string, value: unknown, kind?: PathKind): SqlFrag;
|
|
20
|
+
compare(path: string, op: "gt" | "gte" | "lt" | "lte", value: unknown, kind?: PathKind): SqlFrag;
|
|
21
|
+
between(path: string, from: unknown, to: unknown, kind?: PathKind): SqlFrag;
|
|
22
|
+
inList(path: string, values: unknown[], kind?: PathKind): SqlFrag;
|
|
23
|
+
notInList(path: string, values: unknown[], kind?: PathKind): SqlFrag;
|
|
19
24
|
exists(path: string): SqlFrag;
|
|
20
25
|
missing(path: string): SqlFrag;
|
|
21
26
|
empty(path: string): SqlFrag;
|
|
22
27
|
arrayHas(path: string, value: unknown): SqlFrag;
|
|
23
28
|
contains(path: string, value: unknown): SqlFrag;
|
|
24
|
-
|
|
29
|
+
orderTerm(expr: string, direction: 1 | -1): string;
|
|
30
|
+
indexName(name: string): string;
|
|
31
|
+
createIndex({ name, table, unique, columns, concurrently }: CreateIndexProps): string;
|
|
25
32
|
applyUpdate(acc: string, op: DocumentUpdateOperator, path: string, value: unknown): SqlFrag;
|
|
33
|
+
mergeDocument(set: [field: string, json: string][], removed: string[]): SqlFrag;
|
|
26
34
|
affectedRows(result: unknown): number;
|
|
27
35
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { DocumentUpdateOperator } from "akanjs/document";
|
|
2
|
-
import type {
|
|
2
|
+
import type { CreateIndexProps, SqlDialect, SqlFrag } from "../types.d.ts";
|
|
3
3
|
export declare class SqliteDialect implements SqlDialect {
|
|
4
4
|
#private;
|
|
5
5
|
readonly name: "sqlite";
|
|
@@ -21,7 +21,10 @@ export declare class SqliteDialect implements SqlDialect {
|
|
|
21
21
|
empty(path: string): SqlFrag;
|
|
22
22
|
arrayHas(path: string, value: unknown): SqlFrag;
|
|
23
23
|
contains(path: string, value: unknown): SqlFrag;
|
|
24
|
-
|
|
24
|
+
orderTerm(expr: string, direction: 1 | -1): string;
|
|
25
|
+
indexName(name: string): string;
|
|
26
|
+
createIndex({ name, table, unique, columns }: CreateIndexProps): string;
|
|
25
27
|
applyUpdate(acc: string, op: DocumentUpdateOperator, path: string, value: unknown): SqlFrag;
|
|
28
|
+
mergeDocument(set: [field: string, json: string][], removed: string[]): SqlFrag;
|
|
26
29
|
affectedRows(result: unknown): number;
|
|
27
30
|
}
|
|
@@ -1,16 +1,22 @@
|
|
|
1
1
|
import type { Database, Statement } from "bun:sqlite";
|
|
2
2
|
import type { AkanSqlClient, AkanSqlStatement } from "../types.d.ts";
|
|
3
|
+
/** Resolves once a write from the calling context may run; `null` when it may run now. */
|
|
4
|
+
export type SqliteWriteTurn = () => Promise<void> | null;
|
|
5
|
+
export declare const openTurn: SqliteWriteTurn;
|
|
6
|
+
export declare const waitForTurn: (sql: string, writeTurn: SqliteWriteTurn) => () => Promise<void>;
|
|
3
7
|
export declare class BunSqliteStatement implements AkanSqlStatement {
|
|
8
|
+
#private;
|
|
4
9
|
private readonly statement;
|
|
5
|
-
constructor(statement: Statement);
|
|
10
|
+
constructor(statement: Statement, sql: string, writeTurn?: SqliteWriteTurn);
|
|
6
11
|
run(...params: unknown[]): Promise<import("bun:sqlite").Changes>;
|
|
7
12
|
get<Row = Record<string, unknown>>(...params: unknown[]): Promise<Row | null>;
|
|
8
13
|
all<Row = Record<string, unknown>>(...params: unknown[]): Promise<Row[]>;
|
|
9
14
|
}
|
|
10
15
|
export declare class BunSqliteClient implements AkanSqlClient {
|
|
11
16
|
readonly db: Database;
|
|
12
|
-
|
|
13
|
-
|
|
17
|
+
private readonly writeTurn;
|
|
18
|
+
constructor(db: Database, writeTurn?: SqliteWriteTurn);
|
|
19
|
+
execute(sql: string, params?: unknown[] | Record<string, unknown>): Promise<unknown>;
|
|
14
20
|
prepare(sql: string): AkanSqlStatement;
|
|
15
21
|
close(): Promise<void>;
|
|
16
22
|
}
|
|
@@ -1,17 +1,20 @@
|
|
|
1
|
-
import type { Client as LibsqlClient } from "@libsql/client";
|
|
1
|
+
import type { Client as LibsqlClient, Transaction as LibsqlTransaction } from "@libsql/client";
|
|
2
2
|
import type { AkanSqlClient, AkanSqlStatement } from "../types.d.ts";
|
|
3
|
+
import { type SqliteWriteTurn } from "./bunSqlite.d.ts";
|
|
3
4
|
export declare class LibsqlStatement implements AkanSqlStatement {
|
|
5
|
+
#private;
|
|
4
6
|
private readonly client;
|
|
5
7
|
private readonly sql;
|
|
6
|
-
constructor(client: LibsqlClient, sql: string);
|
|
8
|
+
constructor(client: LibsqlClient | LibsqlTransaction, sql: string, writeTurn?: SqliteWriteTurn);
|
|
7
9
|
run(...params: unknown[]): Promise<import("@libsql/client").ResultSet>;
|
|
8
10
|
get<Row = Record<string, unknown>>(...params: unknown[]): Promise<Row | null>;
|
|
9
11
|
all<Row = Record<string, unknown>>(...params: unknown[]): Promise<Row[]>;
|
|
10
12
|
}
|
|
11
13
|
export declare class LibsqlAkanClient implements AkanSqlClient {
|
|
12
|
-
readonly client: LibsqlClient;
|
|
13
|
-
|
|
14
|
-
|
|
14
|
+
readonly client: LibsqlClient | LibsqlTransaction;
|
|
15
|
+
private readonly writeTurn;
|
|
16
|
+
constructor(client: LibsqlClient | LibsqlTransaction, writeTurn?: SqliteWriteTurn);
|
|
17
|
+
execute(sql: string, params?: unknown[] | Record<string, unknown>): Promise<unknown>;
|
|
15
18
|
prepare(sql: string): AkanSqlStatement;
|
|
16
19
|
close(): Promise<void>;
|
|
17
20
|
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import type { Sql } from "postgres";
|
|
1
|
+
import type { Sql, TransactionSql } from "postgres";
|
|
2
2
|
import type { AkanSqlClient, AkanSqlStatement } from "../types.d.ts";
|
|
3
3
|
export declare class PostgresStatement implements AkanSqlStatement {
|
|
4
4
|
private readonly client;
|
|
5
5
|
private readonly sql;
|
|
6
|
-
constructor(client: Sql, sql: string);
|
|
6
|
+
constructor(client: Sql | TransactionSql, sql: string);
|
|
7
7
|
run(...params: unknown[]): Promise<import("postgres").RowList<(import("postgres").Row & Iterable<import("postgres").Row>)[]>>;
|
|
8
8
|
get<Row = Record<string, unknown>>(...params: unknown[]): Promise<Row | null>;
|
|
9
9
|
all<Row = Record<string, unknown>>(...params: unknown[]): Promise<Row[]>;
|
|
10
10
|
}
|
|
11
11
|
export declare class PostgresAkanClient implements AkanSqlClient {
|
|
12
|
-
readonly client: Sql;
|
|
13
|
-
constructor(client: Sql);
|
|
12
|
+
readonly client: Sql | TransactionSql;
|
|
13
|
+
constructor(client: Sql | TransactionSql);
|
|
14
14
|
execute(sql: string, params?: unknown[] | Record<string, unknown>): Promise<import("postgres").RowList<(import("postgres").Row & Iterable<import("postgres").Row>)[]>>;
|
|
15
15
|
prepare(sql: string): AkanSqlStatement;
|
|
16
16
|
close(): Promise<void>;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type ConstantModel } from "akanjs/constant";
|
|
2
|
+
import { type DatabaseModel, type SearchColumn } from "akanjs/document";
|
|
3
|
+
import type { SqlFrag } from "../types.d.ts";
|
|
4
|
+
import { type ModelTriggers, type SearchColumns, type SearchEngine, type SearchIndexOwner, type SearchQuery } from "./types.d.ts";
|
|
5
|
+
/** The SQLite/libsql index: an fts5 table with `search_doc` as its external content. */
|
|
6
|
+
export declare class Fts5SearchEngine implements SearchEngine {
|
|
7
|
+
#private;
|
|
8
|
+
readonly backfillLock = "";
|
|
9
|
+
readonly merges = true;
|
|
10
|
+
constructor(owner: SearchIndexOwner, tokenizer: string);
|
|
11
|
+
/** Quotes every term: a raw `-`, `:`, `*`, `"` or trailing `AND` is fts5 syntax that raises instead of matching. */
|
|
12
|
+
static matchExpression(text: string, { prefix, columns }?: {
|
|
13
|
+
prefix?: boolean;
|
|
14
|
+
columns?: readonly SearchColumn[];
|
|
15
|
+
}): string | null;
|
|
16
|
+
schemaDescriptor(): {
|
|
17
|
+
doc: readonly ["title", "desc", "tag", "thumb", "filter"];
|
|
18
|
+
columns: readonly ["title", "desc", "tag", "filter"];
|
|
19
|
+
tokenizer: string;
|
|
20
|
+
};
|
|
21
|
+
ensureSchema(current: boolean): Promise<("filter" | "title" | "desc" | "tag" | "thumb")[]>;
|
|
22
|
+
columns(constant: ConstantModel, database: DatabaseModel, alias: "NEW" | "OLD"): SearchColumns | null;
|
|
23
|
+
modelTriggers(ref: string, next: SearchColumns, prev: SearchColumns | null): ModelTriggers;
|
|
24
|
+
createModelTriggers(ref: string, triggers: ModelTriggers, replace: boolean): Promise<void>;
|
|
25
|
+
dropModelTriggers(ref: string): Promise<void>;
|
|
26
|
+
merge(): Promise<void>;
|
|
27
|
+
join({ ref, text, prefix, columns, weights }: SearchQuery): SqlFrag | null;
|
|
28
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type ConstantModel, type FieldObject } from "akanjs/constant";
|
|
2
|
+
import type { DatabaseModel } from "akanjs/document";
|
|
3
|
+
import type { SearchColumns } from "./types.d.ts";
|
|
4
|
+
export interface MirrorSegment {
|
|
5
|
+
name: string;
|
|
6
|
+
arrDepth: number;
|
|
7
|
+
}
|
|
8
|
+
/** The `search_doc` row both engines keep, and the parts of the SQL that fills it which read alike in both. */
|
|
9
|
+
export declare class SearchMirror {
|
|
10
|
+
#private;
|
|
11
|
+
static readonly docColumns: string;
|
|
12
|
+
static readonly upsertTail: string;
|
|
13
|
+
static sqlString(value: string): string;
|
|
14
|
+
static filterToken(path: string, value: string): string;
|
|
15
|
+
static columnList(columns: SearchColumns): string;
|
|
16
|
+
/** The declared field behind each segment of a text path, or null when the model does not declare it. */
|
|
17
|
+
static segments(fields: FieldObject, path: string): MirrorSegment[] | null;
|
|
18
|
+
/** Joins one expression per declared path into a column per role; null when the model declares no role at all. */
|
|
19
|
+
static columns(constant: ConstantModel, database: DatabaseModel, expression: (segments: MirrorSegment[], path: string, role: string) => string): SearchColumns | null;
|
|
20
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { type ConstantModel } from "akanjs/constant";
|
|
2
|
+
import { type DatabaseModel, type SearchColumn } from "akanjs/document";
|
|
3
|
+
import type { SqlFrag } from "../types.d.ts";
|
|
4
|
+
import { type ModelTriggers, type SearchColumns, type SearchEngine, type SearchIndexOwner, type SearchQuery } from "./types.d.ts";
|
|
5
|
+
type PostgresSearchMode = {
|
|
6
|
+
kind: "word";
|
|
7
|
+
unaccent: boolean;
|
|
8
|
+
} | {
|
|
9
|
+
kind: "trigram";
|
|
10
|
+
caseSensitive: boolean;
|
|
11
|
+
};
|
|
12
|
+
export interface PostgresSearchOwner extends SearchIndexOwner {
|
|
13
|
+
lockSchema<T>(fn: () => Promise<T>): Promise<T>;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* A weighted `tsvector` under GIN, or pg_trgm GIN for `trigram`. Matches the rows fts5 matches for the same text; only
|
|
17
|
+
* the ranking differs, as `ts_rank` has no document-frequency term.
|
|
18
|
+
*/
|
|
19
|
+
export declare class PostgresSearchEngine implements SearchEngine {
|
|
20
|
+
#private;
|
|
21
|
+
readonly merges = false;
|
|
22
|
+
readonly backfillLock = "FOR SHARE OF NEW";
|
|
23
|
+
constructor(owner: PostgresSearchOwner, { tokenizer, schema }: {
|
|
24
|
+
tokenizer: string;
|
|
25
|
+
schema: string;
|
|
26
|
+
});
|
|
27
|
+
/** Maps the fts5 tokenizer spelling onto what Postgres can build; anything else would silently match differently. */
|
|
28
|
+
static mode(tokenizer: string): PostgresSearchMode;
|
|
29
|
+
/**
|
|
30
|
+
* `<->` inside a term and `&` between terms, as fts5 reads a quoted term. Stripping ASCII punctuation removes every
|
|
31
|
+
* tsquery syntax character, so a piece needs no escaping.
|
|
32
|
+
*/
|
|
33
|
+
static tsquery(text: string, { prefix, columns }: {
|
|
34
|
+
prefix?: boolean;
|
|
35
|
+
columns?: readonly SearchColumn[];
|
|
36
|
+
}): string | null;
|
|
37
|
+
schemaDescriptor(): {
|
|
38
|
+
engine: string;
|
|
39
|
+
mode: PostgresSearchMode;
|
|
40
|
+
doc: readonly ["title", "desc", "tag", "thumb", "filter"];
|
|
41
|
+
columns: readonly ["title", "desc", "tag", "filter"];
|
|
42
|
+
vector: string;
|
|
43
|
+
purge: string;
|
|
44
|
+
};
|
|
45
|
+
ensureSchema(current: boolean): Promise<("filter" | "title" | "desc" | "tag" | "thumb")[]>;
|
|
46
|
+
columns(constant: ConstantModel, database: DatabaseModel, alias: "NEW" | "OLD"): SearchColumns | null;
|
|
47
|
+
modelTriggers(ref: string, next: SearchColumns, prev: SearchColumns | null): ModelTriggers;
|
|
48
|
+
createModelTriggers(ref: string, triggers: ModelTriggers, replace: boolean): Promise<void>;
|
|
49
|
+
dropModelTriggers(ref: string): Promise<void>;
|
|
50
|
+
merge(): Promise<void>;
|
|
51
|
+
join({ ref, text, prefix, columns, weights }: SearchQuery): SqlFrag | null;
|
|
52
|
+
}
|
|
53
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { ConstantModel, textFieldRoles } from "akanjs/constant";
|
|
2
|
+
import type { DatabaseModel, SearchColumn } from "akanjs/document";
|
|
3
|
+
import type { AkanSqlClient, SqlFrag } from "../types.d.ts";
|
|
4
|
+
export declare const DOC_TABLE = "search_doc";
|
|
5
|
+
export declare const FTS_TABLE = "search_fts";
|
|
6
|
+
export type SearchColumns = Record<(typeof textFieldRoles)[number], string>;
|
|
7
|
+
export type ModelTriggers = [name: string, sql: string][];
|
|
8
|
+
export interface SearchIndexOwner {
|
|
9
|
+
getConnection(): AkanSqlClient;
|
|
10
|
+
getMeta(key: string): Promise<string | undefined> | string | undefined;
|
|
11
|
+
setMeta(key: string, value: string): Promise<void>;
|
|
12
|
+
lockSchema?<T>(fn: () => Promise<T>): Promise<T>;
|
|
13
|
+
transaction?<T>(fn: () => Promise<T>): Promise<T>;
|
|
14
|
+
}
|
|
15
|
+
export interface SearchQuery {
|
|
16
|
+
ref: string;
|
|
17
|
+
text: string;
|
|
18
|
+
prefix: boolean;
|
|
19
|
+
columns: readonly SearchColumn[] | undefined;
|
|
20
|
+
weights: readonly number[];
|
|
21
|
+
}
|
|
22
|
+
/** What differs between fts5 and Postgres; `SearchIndex` owns the rest (disabled marker, hashes, claims, backfill). */
|
|
23
|
+
export interface SearchEngine {
|
|
24
|
+
/** What the index structure is built from; a change rebuilds it from `search_doc`. */
|
|
25
|
+
schemaDescriptor(): unknown;
|
|
26
|
+
/**
|
|
27
|
+
* Runs under the owner's schema lock or write transaction. `current` means the stored descriptor matches, so only a
|
|
28
|
+
* missing index is rebuilt. Returns the `search_doc` columns it had to add.
|
|
29
|
+
*/
|
|
30
|
+
ensureSchema(current: boolean): Promise<string[]>;
|
|
31
|
+
/** One SQL expression per role over the `alias` row, or null when the model declares no text role. */
|
|
32
|
+
columns(constant: ConstantModel, database: DatabaseModel, alias: "NEW" | "OLD"): SearchColumns | null;
|
|
33
|
+
/** The DDL that keeps a ref's mirror rows current. Hashed, so a template change rebuilds the ref. */
|
|
34
|
+
modelTriggers(ref: string, next: SearchColumns, prev: SearchColumns | null): ModelTriggers;
|
|
35
|
+
/** `replace` swaps existing definitions; otherwise only the missing ones are created. */
|
|
36
|
+
createModelTriggers(ref: string, triggers: ModelTriggers, replace: boolean): Promise<void>;
|
|
37
|
+
dropModelTriggers(ref: string): Promise<void>;
|
|
38
|
+
/** Follows the backfill's `WHERE`. */
|
|
39
|
+
readonly backfillLock: string;
|
|
40
|
+
/** Whether `merge` folds anything; an index that keeps no segments has nothing to fold on a timer. */
|
|
41
|
+
readonly merges: boolean;
|
|
42
|
+
merge(): Promise<void>;
|
|
43
|
+
/** A subquery exposing `rid` and a `score` that sorts best-first ascending; null matches nothing. */
|
|
44
|
+
join(query: SearchQuery): SqlFrag | null;
|
|
45
|
+
}
|
|
@@ -2,6 +2,7 @@ import type { PromiseOrObject } from "akanjs/base";
|
|
|
2
2
|
import type { ConstantModel } from "akanjs/constant";
|
|
3
3
|
import type { DatabaseModel, DocumentQuery, DocumentQueryNode, DocumentSchema, DocumentUpdateInput, DocumentUpdateOperator, DocumentUpdateOptions } from "akanjs/document";
|
|
4
4
|
import type { SearchIndex } from "../searchIndex.d.ts";
|
|
5
|
+
import type { SqlDocumentStore } from "./SqlDocumentStore.d.ts";
|
|
5
6
|
export interface SqliteDatabaseConfig {
|
|
6
7
|
filePath?: string;
|
|
7
8
|
journalMode?: "WAL" | "DELETE" | "TRUNCATE" | "PERSIST" | "MEMORY" | "OFF";
|
|
@@ -22,13 +23,14 @@ export interface PostgresDatabaseConfig {
|
|
|
22
23
|
database?: string;
|
|
23
24
|
user?: string;
|
|
24
25
|
password?: string;
|
|
26
|
+
/** A login role holding SELECT on base columns and nothing else — the one `InsightQuery` reads as. */
|
|
27
|
+
insightUrl?: string;
|
|
25
28
|
}
|
|
26
29
|
export interface SearchConfig {
|
|
27
30
|
enabled?: boolean;
|
|
28
31
|
tokenizer?: string;
|
|
29
32
|
}
|
|
30
33
|
export interface DatabaseConfig {
|
|
31
|
-
driver?: "sqlite" | "libsql" | "postgres";
|
|
32
34
|
sqlite?: SqliteDatabaseConfig;
|
|
33
35
|
libsql?: LibsqlDatabaseConfig;
|
|
34
36
|
postgres?: PostgresDatabaseConfig;
|
|
@@ -97,6 +99,9 @@ export interface DocumentStore {
|
|
|
97
99
|
hydrate(data: DocumentRecord, originalData?: DocumentRecord, options?: {
|
|
98
100
|
track?: boolean;
|
|
99
101
|
}): any;
|
|
102
|
+
/** A document as text that another process turns back into the same document. */
|
|
103
|
+
serialize(doc: DocumentRecord): string;
|
|
104
|
+
deserialize(text: string): any;
|
|
100
105
|
}
|
|
101
106
|
export interface SqlResultRows<Row = Record<string, unknown>> {
|
|
102
107
|
rows: Row[];
|
|
@@ -111,11 +116,27 @@ export interface AkanSqlClient {
|
|
|
111
116
|
prepare(sql: string): AkanSqlStatement;
|
|
112
117
|
close(): Promise<void>;
|
|
113
118
|
}
|
|
119
|
+
/** A connection on which the engine itself cannot reach `_doc`. */
|
|
120
|
+
export interface InsightSession {
|
|
121
|
+
read(statement: string, timeoutMs: number): Promise<Record<string, unknown>[]>;
|
|
122
|
+
close(): Promise<void>;
|
|
123
|
+
}
|
|
114
124
|
export interface DatabaseAdaptor {
|
|
115
125
|
getConnection(): AkanSqlClient;
|
|
116
126
|
getStore(constant: ConstantModel, database: DatabaseModel, schema: DocumentSchema): DocumentStore;
|
|
127
|
+
/** Every model table this process has opened a store for. */
|
|
128
|
+
stores?(): SqlDocumentStore[];
|
|
117
129
|
transaction<T>(fn: () => PromiseOrObject<T>): Promise<T>;
|
|
118
130
|
getSearchIndex(): SearchIndex | null;
|
|
131
|
+
openInsight?(): Promise<InsightSession>;
|
|
132
|
+
}
|
|
133
|
+
/** A model row as it is stored, `_doc` parsed — the unit a transfer between databases copies. */
|
|
134
|
+
export interface TransferRow {
|
|
135
|
+
id: string;
|
|
136
|
+
createdAt: number;
|
|
137
|
+
updatedAt: number;
|
|
138
|
+
removedAt: number | null;
|
|
139
|
+
_doc: Record<string, unknown>;
|
|
119
140
|
}
|
|
120
141
|
export interface SqliteEnv {
|
|
121
142
|
workspaceRoot?: string;
|
|
@@ -164,24 +185,35 @@ export interface SqliteDocumentRow {
|
|
|
164
185
|
_doc: string;
|
|
165
186
|
}
|
|
166
187
|
export type ProjectedSqliteDocumentRow = Omit<SqliteDocumentRow, "_doc"> & Record<string, unknown>;
|
|
188
|
+
export interface ConcurrentIndexBuild {
|
|
189
|
+
name: string;
|
|
190
|
+
/** Where a replacement is built before it takes `name` over. */
|
|
191
|
+
next: string;
|
|
192
|
+
create: (name: string) => string;
|
|
193
|
+
/** The index exists under a different descriptor and is rebuilt; otherwise it is built only if missing. */
|
|
194
|
+
replace: boolean;
|
|
195
|
+
}
|
|
167
196
|
export interface DocumentDatabaseOwner {
|
|
168
197
|
getConnection(): AkanSqlClient;
|
|
169
198
|
getSearchIndex(): SearchIndex | null;
|
|
170
199
|
getMeta(key: string): Promise<string | undefined> | string | undefined;
|
|
171
200
|
setMeta(key: string, value: string): Promise<void>;
|
|
172
201
|
afterCommit(fn: () => PromiseOrObject<void>): Promise<void>;
|
|
202
|
+
transaction?<T>(fn: () => PromiseOrObject<T>): Promise<T>;
|
|
203
|
+
/** Runs `fn` as the only schema change: Postgres races two `CREATE … IF NOT EXISTS` into a duplicate-key error. */
|
|
204
|
+
lockSchema?<T>(fn: () => Promise<T>): Promise<T>;
|
|
205
|
+
hasTable?(table: string): Promise<boolean>;
|
|
206
|
+
hasValidIndex?(name: string): Promise<boolean>;
|
|
207
|
+
/** Lets the role `InsightQuery` reads as see the table's base columns, and never `_doc`. */
|
|
208
|
+
grantInsight?(table: string): Promise<void>;
|
|
209
|
+
/** Builds an index on a table that already holds rows without blocking its writes; never inside a transaction. */
|
|
210
|
+
buildIndexConcurrently?(build: ConcurrentIndexBuild): Promise<void>;
|
|
173
211
|
}
|
|
174
212
|
export declare const QUERY_OPERATOR_KEYS: Set<string>;
|
|
175
213
|
export interface SqlFrag {
|
|
176
214
|
sql: string;
|
|
177
215
|
params: unknown[];
|
|
178
216
|
}
|
|
179
|
-
export interface SearchJoinProps {
|
|
180
|
-
alias: string;
|
|
181
|
-
ref: string;
|
|
182
|
-
match: string;
|
|
183
|
-
weights: number[];
|
|
184
|
-
}
|
|
185
217
|
export interface SearchJoin extends SqlFrag {
|
|
186
218
|
alias: string;
|
|
187
219
|
}
|
|
@@ -194,28 +226,50 @@ export interface CompileContext {
|
|
|
194
226
|
joins: SearchJoin[];
|
|
195
227
|
conjunctive: boolean;
|
|
196
228
|
}
|
|
229
|
+
/**
|
|
230
|
+
* `text` for a declared string (`String`, `ID`, a string enum, a relation's id), `json` for the rest, untyped paths
|
|
231
|
+
* included. SQLite reads both alike; Postgres compares them apart.
|
|
232
|
+
*/
|
|
233
|
+
export type PathKind = "text" | "json";
|
|
234
|
+
export interface IndexColumn {
|
|
235
|
+
path: string;
|
|
236
|
+
expr: string;
|
|
237
|
+
isArray: boolean;
|
|
238
|
+
}
|
|
239
|
+
export interface CreateIndexProps {
|
|
240
|
+
name: string;
|
|
241
|
+
table: string;
|
|
242
|
+
unique: boolean;
|
|
243
|
+
columns: IndexColumn[];
|
|
244
|
+
/** Build without blocking writes to a table that already holds rows. Postgres only, and never in a transaction. */
|
|
245
|
+
concurrently?: boolean;
|
|
246
|
+
}
|
|
197
247
|
export interface SqlDialect {
|
|
198
248
|
readonly name: "sqlite" | "postgres";
|
|
199
249
|
timestampType(): string;
|
|
200
250
|
docColumnType(): string;
|
|
201
251
|
docColumn(): string;
|
|
202
252
|
docValuePlaceholder(): string;
|
|
203
|
-
extract(path: string): string;
|
|
253
|
+
extract(path: string, kind?: PathKind): string;
|
|
204
254
|
projectExpr(path: string): string;
|
|
205
255
|
decodeProjected(value: unknown): unknown;
|
|
206
|
-
eq(path: string, value: unknown): SqlFrag;
|
|
207
|
-
ne(path: string, value: unknown): SqlFrag;
|
|
208
|
-
compare(path: string, op: "gt" | "gte" | "lt" | "lte", value: unknown): SqlFrag;
|
|
209
|
-
between(path: string, from: unknown, to: unknown): SqlFrag;
|
|
210
|
-
inList(path: string, values: unknown[]): SqlFrag;
|
|
211
|
-
notInList(path: string, values: unknown[]): SqlFrag;
|
|
256
|
+
eq(path: string, value: unknown, kind?: PathKind): SqlFrag;
|
|
257
|
+
ne(path: string, value: unknown, kind?: PathKind): SqlFrag;
|
|
258
|
+
compare(path: string, op: "gt" | "gte" | "lt" | "lte", value: unknown, kind?: PathKind): SqlFrag;
|
|
259
|
+
between(path: string, from: unknown, to: unknown, kind?: PathKind): SqlFrag;
|
|
260
|
+
inList(path: string, values: unknown[], kind?: PathKind): SqlFrag;
|
|
261
|
+
notInList(path: string, values: unknown[], kind?: PathKind): SqlFrag;
|
|
212
262
|
exists(path: string): SqlFrag;
|
|
213
263
|
missing(path: string): SqlFrag;
|
|
214
264
|
empty(path: string): SqlFrag;
|
|
215
265
|
arrayHas(path: string, value: unknown): SqlFrag;
|
|
216
266
|
contains(path: string, value: unknown): SqlFrag;
|
|
217
|
-
|
|
267
|
+
orderTerm(expr: string, direction: 1 | -1): string;
|
|
268
|
+
indexName(name: string): string;
|
|
269
|
+
createIndex(props: CreateIndexProps): string;
|
|
218
270
|
applyUpdate(acc: string, op: DocumentUpdateOperator, path: string, value: unknown): SqlFrag;
|
|
271
|
+
/** The stored document with these top-level fields replaced (value as JSON text) and these removed. */
|
|
272
|
+
mergeDocument(set: [field: string, json: string][], removed: string[]): SqlFrag;
|
|
219
273
|
affectedRows(result: unknown): number;
|
|
220
274
|
}
|
|
221
275
|
export type QueryLeafOps = Pick<SqlDialect, "eq" | "ne" | "compare" | "between" | "inList" | "notInList" | "exists" | "missing" | "empty" | "arrayHas" | "contains">;
|
|
@@ -10,4 +10,12 @@ export declare const toPostgresSql: (sql: string, params: unknown[]) => {
|
|
|
10
10
|
export declare const encodeSqlValue: (value: unknown) => unknown;
|
|
11
11
|
export declare const decodeDateValue: (value: unknown) => import("dayjs").Dayjs | null | undefined;
|
|
12
12
|
export declare const jsonStr: (value: unknown) => string;
|
|
13
|
+
/** Postgres refuses U+0000 inside jsonb, so every mode refuses it — one app stores the same thing in each. */
|
|
14
|
+
export declare const assertStorableJson: (json: string, table: string) => string;
|
|
15
|
+
export declare const likePattern: (value: unknown) => string;
|
|
13
16
|
export declare const BASE_COLUMN_LEAF: QueryLeafOps;
|
|
17
|
+
export declare const quoteIdent: (identifier: string) => string;
|
|
18
|
+
export declare const jsonPath: (path: string) => string;
|
|
19
|
+
export declare const stableJson: (value: unknown) => string;
|
|
20
|
+
/** Stored in `_akan_meta`, so a changed schema definition is detected without migrations. */
|
|
21
|
+
export declare const descriptorHash: (value: unknown) => Promise<string>;
|
|
@@ -6,4 +6,5 @@ interface ResolveDefaultSqliteFileOptions {
|
|
|
6
6
|
workspaceRoot?: string;
|
|
7
7
|
}
|
|
8
8
|
export declare const resolveDefaultSqliteFile: ({ appName, fileName, isProduction, operationMode, workspaceRoot, }: ResolveDefaultSqliteFileOptions) => string;
|
|
9
|
+
export declare const defaultSqliteFile: (suffix: string, workspaceRoot?: string) => string;
|
|
9
10
|
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const eachSseData: (body: ReadableStream<Uint8Array>, onData: (payload: string) => void) => Promise<void>;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { type BaseEnv } from "akanjs/base";
|
|
2
1
|
export interface DownloadRequest {
|
|
3
2
|
path: string;
|
|
4
3
|
localPath: string;
|
|
@@ -53,7 +52,7 @@ export interface StorageAdaptor {
|
|
|
53
52
|
deleteData(url: string): Promise<boolean>;
|
|
54
53
|
deleteDataByPath(path: string): Promise<boolean>;
|
|
55
54
|
}
|
|
56
|
-
export interface BlobStorageOptions
|
|
55
|
+
export interface BlobStorageOptions {
|
|
57
56
|
blobStorage?: {
|
|
58
57
|
baseDir?: string;
|
|
59
58
|
privateBaseDir?: string;
|
|
@@ -67,6 +66,8 @@ declare const BlobStorage_base: import("..").AdaptorCls<{}, {
|
|
|
67
66
|
}>;
|
|
68
67
|
export declare class BlobStorage extends BlobStorage_base implements StorageAdaptor {
|
|
69
68
|
#private;
|
|
69
|
+
/** Throws for a deployed `multiple`/`cluster` app on local disk unless `AKAN_STORAGE_SHARED=true` marks it shared. */
|
|
70
|
+
static assertShared(storage: string): void;
|
|
70
71
|
readData(path: string): Promise<ReadableStream>;
|
|
71
72
|
readDataAsJson<T>(path: string): Promise<T>;
|
|
72
73
|
getDataList(prefix?: string): Promise<string[]>;
|