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.
Files changed (1250) hide show
  1. package/base/base.ts +6 -11
  2. package/base/baseEnv.ts +17 -11
  3. package/base/databaseModes.ts +75 -0
  4. package/base/index.ts +1 -0
  5. package/base/primitiveRegistry.ts +38 -47
  6. package/base/symbols.ts +1 -1
  7. package/base/types.ts +1 -1
  8. package/base/utils.ts +3 -6
  9. package/capacitor.base.config.ts +2 -3
  10. package/client/capacitor.ts +18 -63
  11. package/client/cn.ts +3 -13
  12. package/client/cookie.ts +6 -15
  13. package/client/createFont.ts +0 -2
  14. package/client/csrTypes.ts +6 -59
  15. package/client/decorators.ts +1 -1
  16. package/client/device.ts +52 -44
  17. package/client/frameConfig.ts +15 -26
  18. package/client/index.ts +0 -1
  19. package/client/makePageProto.tsx +3 -4
  20. package/client/route/RootLayoutDefinition.ts +0 -6
  21. package/client/route/RouteDefinition.ts +5 -30
  22. package/client/route/resolveRouteModule.ts +1 -5
  23. package/client/router.ts +35 -39
  24. package/client/rscNavigation.ts +4 -5
  25. package/client/sharedContext.ts +2 -19
  26. package/client/storage.ts +29 -38
  27. package/client/translator.ts +5 -6
  28. package/client/types.ts +0 -3
  29. package/common/CodeAgentClient.ts +91 -0
  30. package/common/CodeTranscript.ts +325 -0
  31. package/common/Logger.ts +9 -34
  32. package/common/TrustedProxy.ts +6 -34
  33. package/common/applyMixins.ts +13 -2
  34. package/common/authToken.ts +0 -11
  35. package/common/capitalize.ts +3 -4
  36. package/common/clamp.ts +0 -1
  37. package/common/clientAddress.ts +1 -15
  38. package/common/codeAgentProfile.ts +181 -0
  39. package/common/codeAgentWire.ts +305 -0
  40. package/{server/routing → common}/eventStream.ts +1 -6
  41. package/common/fileUpload.ts +1 -12
  42. package/common/formatNumber.ts +3 -12
  43. package/common/index.ts +104 -19
  44. package/common/interpolateTranslation.ts +1 -6
  45. package/common/isEmail.ts +0 -1
  46. package/common/isRecord.ts +2 -0
  47. package/common/isThenable.ts +1 -8
  48. package/common/isValidDate.ts +3 -5
  49. package/common/logContext.ts +1 -1
  50. package/{ui/Agent → common}/markdownBlocks.ts +0 -3
  51. package/common/markdownSpans.ts +47 -0
  52. package/{ui/Agent → common}/markdownTable.ts +1 -5
  53. package/common/mcpExposure.ts +4 -27
  54. package/common/objectPath.ts +67 -0
  55. package/common/objectify.ts +52 -0
  56. package/common/{isPhoneNumber.ts → phone.ts} +7 -1
  57. package/common/randomPick.ts +13 -0
  58. package/common/requestOrigin.ts +0 -17
  59. package/common/restClient.ts +8 -13
  60. package/common/round.ts +4 -0
  61. package/common/routeConvention.ts +21 -14
  62. package/common/sleep.ts +1 -8
  63. package/common/subRoute.ts +4 -7
  64. package/common/toError.ts +1 -0
  65. package/common/tunnelWire.ts +263 -0
  66. package/common/types.ts +6 -7
  67. package/common/{splitVersion.ts → version.ts} +3 -6
  68. package/common/{websocketBinaryFrame.ts → websocketContract.ts} +43 -9
  69. package/constant/cascadePaths.ts +6 -9
  70. package/constant/constantRegistry.ts +21 -57
  71. package/constant/crystalize.ts +2 -12
  72. package/constant/dateSlot.ts +0 -15
  73. package/constant/fieldInfo.ts +30 -109
  74. package/constant/fieldQueryMeta.ts +2 -10
  75. package/constant/getDefault.ts +16 -8
  76. package/constant/hydrationPlan.ts +1 -9
  77. package/constant/index.ts +0 -1
  78. package/constant/labelOf.ts +1 -6
  79. package/constant/mask.ts +36 -38
  80. package/constant/purify.ts +6 -14
  81. package/constant/serialize.ts +82 -5
  82. package/constant/textFieldPaths.ts +2 -3
  83. package/constant/types.ts +2 -6
  84. package/constant/via.ts +20 -60
  85. package/dictionary/DictionaryLookup.ts +1 -7
  86. package/dictionary/agent.dictionary.ts +43 -11
  87. package/dictionary/base.dictionary.ts +11 -0
  88. package/dictionary/dictInfo.ts +145 -626
  89. package/dictionary/dictShape.ts +54 -0
  90. package/dictionary/dictionary.ts +1 -2
  91. package/dictionary/dictionaryRegistry.ts +7 -28
  92. package/dictionary/locale.ts +24 -116
  93. package/dictionary/trans.ts +18 -56
  94. package/document/dataLoader.ts +77 -78
  95. package/document/database.ts +52 -56
  96. package/document/documentQuery.ts +32 -32
  97. package/document/documentSchema.ts +21 -26
  98. package/document/filterMeta.ts +11 -31
  99. package/document/index.ts +0 -1
  100. package/document/into.ts +8 -18
  101. package/document/loaderInfo.ts +28 -7
  102. package/document/noDocumentError.ts +2 -7
  103. package/document/queryEvaluator.ts +21 -43
  104. package/document/types.ts +0 -1
  105. package/fetch/client/fetchClient.ts +66 -105
  106. package/fetch/client/fetchHandle.ts +4 -12
  107. package/fetch/client/httpClient.ts +35 -68
  108. package/fetch/client/remoteError.ts +2 -8
  109. package/fetch/client/sliceInitHandle.ts +3 -6
  110. package/fetch/client/sliceQueryArgs.ts +11 -0
  111. package/fetch/client/wsClient.ts +75 -64
  112. package/fetch/fetchType/appliedReturn.type.ts +5 -24
  113. package/fetch/fetchType/buildFetch.type.ts +28 -1
  114. package/fetch/fetchType/index.ts +0 -1
  115. package/fetch/requestStorage.ts +7 -28
  116. package/fetch/types.ts +0 -1
  117. package/index.ts +31 -64
  118. package/package.json +19 -5
  119. package/server/akanApp.ts +138 -289
  120. package/server/akanAppHeaders.ts +2 -3
  121. package/server/akanOption.ts +25 -27
  122. package/server/akanServer.ts +98 -219
  123. package/server/animatedImage.ts +2 -11
  124. package/server/artifact/builderRpc.ts +24 -64
  125. package/server/artifact/index.ts +0 -1
  126. package/server/artifact/ipcTypes.ts +27 -30
  127. package/server/artifact/routeClientCache.ts +18 -37
  128. package/server/artifact/routeSeedIndexStore.ts +2 -35
  129. package/server/artifact/routesManifestStore.ts +13 -38
  130. package/server/binaryPubsub.ts +0 -9
  131. package/server/cachePolicy.ts +10 -44
  132. package/server/console.ts +12 -16
  133. package/server/consoleSession.ts +55 -12
  134. package/server/contentEncoding.ts +42 -27
  135. package/server/decorators.ts +4 -70
  136. package/server/devtools/constantSerializer.ts +2 -14
  137. package/server/devtools/depsSerializer.ts +14 -46
  138. package/server/devtools/devtoolsJson.ts +6 -18
  139. package/server/devtools/devtoolsRouter.ts +2 -12
  140. package/server/devtools/signalSerializer.ts +5 -44
  141. package/server/devtools/types.ts +0 -12
  142. package/server/di/diLifecycle.ts +141 -221
  143. package/server/di/predefinedAdaptor.ts +11 -5
  144. package/server/di/resolveHierarchy.ts +114 -5
  145. package/server/di/utils.ts +13 -29
  146. package/server/head.tsx +53 -0
  147. package/server/hmr/clientScript.ts +2 -8
  148. package/server/hmr/devHmrController.ts +28 -32
  149. package/server/hmr/wsHub.ts +9 -7
  150. package/server/imageOptimizer.ts +5 -26
  151. package/server/index.ts +1 -1
  152. package/server/lifecycle/portInUse.ts +1 -4
  153. package/server/lifecycle/runtimeDir.ts +0 -4
  154. package/server/lifecycle/shutdownManager.ts +4 -29
  155. package/server/logging/childOutputReader.ts +0 -12
  156. package/server/logging/hubFileSink.ts +10 -6
  157. package/server/logging/logControlSocket.ts +13 -7
  158. package/server/logging/logForwarder.ts +19 -22
  159. package/server/logging/logHub.ts +0 -0
  160. package/server/logging/logQuery.ts +4 -7
  161. package/server/logging/logStdoutWriter.ts +1 -11
  162. package/server/logging/logStreamRoute.ts +4 -21
  163. package/server/logging/logTailClient.ts +1 -8
  164. package/server/logging/rotatingLogWriter.ts +4 -6
  165. package/server/mcp/McpAuth.ts +5 -79
  166. package/server/mcp/McpDispatcher.ts +13 -90
  167. package/server/mcp/McpEventStream.ts +2 -12
  168. package/server/mcp/McpExecutionContext.ts +1 -42
  169. package/server/mcp/McpRateLimiter.ts +61 -30
  170. package/server/mcp/McpRouter.ts +49 -208
  171. package/server/mcp/PagePromptComposer.ts +7 -29
  172. package/server/memoryLimit.ts +1 -13
  173. package/server/oauth/OAuthAuthorize.ts +3 -7
  174. package/server/oauth/OAuthClientIdMetadata.ts +2 -27
  175. package/server/oauth/OAuthErrors.ts +0 -13
  176. package/server/oauth/OAuthMetadata.ts +1 -7
  177. package/server/oauth/OAuthPkce.ts +0 -2
  178. package/server/oauth/OAuthRedirect.ts +0 -9
  179. package/server/oauth/OAuthRegistration.ts +0 -2
  180. package/server/oauth/OAuthRevocation.ts +1 -11
  181. package/server/oauth/OAuthToken.ts +3 -14
  182. package/server/oauth/oauthTypes.ts +1 -2
  183. package/server/ops/ageEncryption.ts +317 -0
  184. package/server/ops/appInfo.ts +92 -0
  185. package/server/ops/opsCommand.ts +116 -0
  186. package/server/ops/opsRoute.ts +151 -0
  187. package/server/ops/opsToken.ts +93 -0
  188. package/server/ops/snapshotJobs.ts +133 -0
  189. package/server/ops/snapshotRestore.ts +118 -0
  190. package/server/ops/snapshotTypes.ts +52 -0
  191. package/server/ops/sqliteFiles.ts +20 -0
  192. package/server/ops/sqliteSnapshot.ts +149 -0
  193. package/server/processMetricsCollector.ts +12 -14
  194. package/server/proxy/hostBasePathWebProxy.ts +20 -13
  195. package/server/proxy/index.ts +2 -3
  196. package/server/proxy/localeWebProxy.ts +3 -17
  197. package/server/proxy/types.ts +14 -0
  198. package/server/proxy/webProxyRunner.ts +13 -1
  199. package/server/resolver/CascadeRunner.ts +7 -23
  200. package/server/resolver/database.resolver.ts +57 -123
  201. package/server/resolver/service.resolver.ts +9 -161
  202. package/server/resolver/signal.resolver.ts +73 -98
  203. package/server/routeElementComposer.tsx +23 -52
  204. package/server/routeState.ts +15 -34
  205. package/server/routeTreeBuilder.ts +24 -83
  206. package/server/routing/apiRouter.ts +17 -49
  207. package/server/routing/appWsData.ts +4 -28
  208. package/server/routing/soloAppRoutes.ts +5 -5
  209. package/server/rscClient.tsx +31 -37
  210. package/server/rscClientFetch.ts +7 -3
  211. package/server/rscClientPatch.ts +4 -25
  212. package/server/rscHttp.ts +1 -1
  213. package/server/rscNavigationState.ts +10 -25
  214. package/server/rscPagePrompts.ts +4 -24
  215. package/server/rscSegmentOutlet.tsx +1 -5
  216. package/server/rscWorker.tsx +146 -285
  217. package/server/rscWorkerCache.ts +74 -8
  218. package/server/rscWorkerHost.ts +45 -192
  219. package/server/semaphore.ts +1 -1
  220. package/server/sitemap.ts +1 -3
  221. package/server/ssrFromRscRenderer.tsx +31 -124
  222. package/server/ssrTypes.ts +3 -29
  223. package/server/staticPath.ts +0 -16
  224. package/server/systemPageDocument.tsx +65 -2
  225. package/server/systemPages.tsx +4 -2
  226. package/server/tunnel/TunnelAgent.ts +237 -0
  227. package/server/tunnel/TunnelDataSocket.ts +146 -0
  228. package/server/tunnel/TunnelHttpStream.ts +86 -0
  229. package/server/tunnel/TunnelTcpStream.ts +96 -0
  230. package/server/tunnel/TunnelWebsocketStream.ts +110 -0
  231. package/server/tunnel/index.ts +6 -0
  232. package/server/tunnel/tunnelStream.ts +32 -0
  233. package/server/types.tsx +2 -9
  234. package/server/webRouter.ts +88 -306
  235. package/service/agent.service.ts +66 -35
  236. package/service/injectInfo.ts +106 -75
  237. package/service/ipcTypes.ts +4 -1
  238. package/service/liveSyncHub.ts +4 -34
  239. package/service/predefinedAdaptor/anthropicLlm.ts +65 -75
  240. package/service/predefinedAdaptor/cache.adaptor.ts +257 -75
  241. package/service/predefinedAdaptor/database.adaptor.ts +366 -108
  242. package/service/predefinedAdaptor/documentTransfer.ts +89 -0
  243. package/service/predefinedAdaptor/index.ts +2 -1
  244. package/service/predefinedAdaptor/insightQuery.ts +89 -79
  245. package/service/predefinedAdaptor/llm.adaptor.ts +64 -54
  246. package/service/predefinedAdaptor/llmOverflow.ts +63 -0
  247. package/service/predefinedAdaptor/openaiDialect.ts +56 -64
  248. package/service/predefinedAdaptor/openaiLlm.ts +24 -27
  249. package/service/predefinedAdaptor/queue.adaptor.ts +41 -22
  250. package/service/predefinedAdaptor/schedule.adaptor.ts +69 -9
  251. package/service/predefinedAdaptor/searchIndex.ts +76 -325
  252. package/service/predefinedAdaptor/solidCache.adaptor.ts +135 -12
  253. package/service/predefinedAdaptor/solidPubsub.adaptor.ts +28 -16
  254. package/service/predefinedAdaptor/solidQueue.adaptor.ts +61 -10
  255. package/service/predefinedAdaptor/solidSqlite.ts +10 -16
  256. package/service/predefinedAdaptor/sql/PendingStoreEnsures.ts +1 -0
  257. package/service/predefinedAdaptor/sql/PostgresInsightSession.ts +113 -0
  258. package/service/predefinedAdaptor/sql/QueryCompiler.ts +50 -30
  259. package/service/predefinedAdaptor/sql/SqlDocumentStore.ts +290 -138
  260. package/service/predefinedAdaptor/sql/SqliteInsightSession.ts +85 -0
  261. package/service/predefinedAdaptor/sql/UpdateCompiler.ts +1 -7
  262. package/service/predefinedAdaptor/sql/dialect/postgres.ts +138 -53
  263. package/service/predefinedAdaptor/sql/dialect/sqlite.ts +18 -15
  264. package/service/predefinedAdaptor/sql/driver/bunSqlite.ts +31 -4
  265. package/service/predefinedAdaptor/sql/driver/libsql.ts +20 -12
  266. package/service/predefinedAdaptor/sql/driver/postgres.ts +13 -7
  267. package/service/predefinedAdaptor/sql/search/fts5.ts +249 -0
  268. package/service/predefinedAdaptor/sql/search/mirror.ts +76 -0
  269. package/service/predefinedAdaptor/sql/search/postgres.ts +453 -0
  270. package/service/predefinedAdaptor/sql/search/types.ts +50 -0
  271. package/service/predefinedAdaptor/sql/types.ts +76 -17
  272. package/service/predefinedAdaptor/sql/values.ts +40 -2
  273. package/service/predefinedAdaptor/sqlitePath.ts +12 -0
  274. package/service/predefinedAdaptor/sseData.ts +23 -0
  275. package/service/predefinedAdaptor/storage.adaptor.ts +19 -7
  276. package/service/predefinedAdaptor/websocket.adaptor.ts +154 -184
  277. package/service/serve.ts +1 -2
  278. package/service/serviceModule.ts +52 -70
  279. package/service/toolNames.ts +5 -22
  280. package/service/types.ts +3 -9
  281. package/signal/CrossSiteGuard.ts +5 -40
  282. package/signal/SignalFailure.ts +2 -15
  283. package/signal/agent/AgentCatalogue.ts +9 -55
  284. package/signal/agent.signal.ts +9 -6
  285. package/signal/agentMeter.ts +45 -0
  286. package/signal/agentTurnStream.ts +48 -46
  287. package/signal/endpoint.ts +12 -2
  288. package/signal/endpointCache.ts +59 -0
  289. package/signal/endpointInfo.ts +13 -27
  290. package/signal/exception.ts +3 -34
  291. package/signal/guard.ts +4 -21
  292. package/signal/guards.ts +2 -10
  293. package/signal/index.ts +1 -0
  294. package/signal/internal.ts +3 -7
  295. package/signal/internalArg.ts +10 -13
  296. package/signal/internalInfo.ts +1 -1
  297. package/signal/mcp/McpDocument.ts +21 -90
  298. package/signal/mcp/McpProgress.ts +6 -19
  299. package/signal/mcp/McpUriTemplate.ts +1 -27
  300. package/signal/mcp/Msg.ts +13 -122
  301. package/signal/mcp/mcpProtocol.ts +3 -26
  302. package/signal/mcp/pagePrompt.ts +3 -9
  303. package/signal/middleware.ts +15 -65
  304. package/signal/openapi/openapi.ts +0 -4
  305. package/signal/schema/JsonSchemaBuilder.ts +32 -46
  306. package/signal/serializer/fetch.serializer.ts +37 -43
  307. package/signal/serverSignal.ts +6 -8
  308. package/signal/signalContext.ts +70 -161
  309. package/signal/signalRegistry.ts +11 -17
  310. package/signal/slice.ts +6 -12
  311. package/signal/sliceInfo.ts +5 -30
  312. package/signal/trace.ts +11 -84
  313. package/signal/types.ts +27 -57
  314. package/store/SliceRequest.ts +1 -11
  315. package/store/action.ts +153 -395
  316. package/store/actionTag.ts +1 -10
  317. package/store/agent/AgentBridge.ts +3 -25
  318. package/store/agent/AgentContext.ts +2 -9
  319. package/store/agent/AgentCursor.ts +160 -0
  320. package/store/agent/AgentPrompts.ts +0 -15
  321. package/store/agent/AgentVisual.ts +152 -0
  322. package/store/agent/ScreenFlash.ts +67 -0
  323. package/store/agent/ScreenReader.ts +3 -52
  324. package/store/agent/ScreenSettle.ts +1 -13
  325. package/store/agent/ScreenTarget.ts +15 -32
  326. package/store/agent/StoreCatalogue.ts +12 -24
  327. package/store/agent/StoreSurfaceSource.ts +35 -65
  328. package/store/agent/index.ts +4 -4
  329. package/store/agentic/AgentValue.ts +9 -26
  330. package/store/agentic/StExposeBuilder.ts +3 -12
  331. package/store/agentic/StExposeDraft.ts +0 -6
  332. package/store/agentic/StStateBuilder.ts +3 -11
  333. package/store/agentic/StStateDraft.ts +0 -5
  334. package/store/agentic/StToolBuilder.ts +48 -41
  335. package/store/agentic/StToolDraft.ts +0 -7
  336. package/store/agentic/attachAgentic.ts +2 -10
  337. package/store/agentic/formFields.ts +8 -42
  338. package/store/agentic/index.ts +1 -1
  339. package/store/agentic/useAgentReference.ts +31 -0
  340. package/store/agentic/useFieldTool.ts +176 -58
  341. package/store/agentic/useFormTools.ts +4 -21
  342. package/store/agentic/useRelationFieldTool.ts +2 -15
  343. package/store/databaseStateNames.ts +0 -9
  344. package/store/draftStore.ts +4 -54
  345. package/store/formSetterNames.ts +2 -19
  346. package/store/hooks.ts +1 -1
  347. package/store/liveInsert.ts +1 -30
  348. package/store/sliceKeys.ts +37 -0
  349. package/store/sliceRole.ts +1 -10
  350. package/store/state.ts +4 -50
  351. package/store/stateBuilder.ts +1 -23
  352. package/store/storeInstance.ts +21 -114
  353. package/store/storeRegistry.ts +1 -8
  354. package/store/types.ts +1 -1
  355. package/test/conformance.ts +299 -0
  356. package/test/index.ts +2 -2
  357. package/test/sampleOf.ts +52 -28
  358. package/test/signalTestRuntime.ts +6 -10
  359. package/test/testServer.ts +66 -31
  360. package/types/base/base.d.ts +2 -3
  361. package/types/base/baseEnv.d.ts +7 -10
  362. package/types/base/databaseModes.d.ts +28 -0
  363. package/types/base/index.d.ts +1 -0
  364. package/types/base/primitiveRegistry.d.ts +23 -10
  365. package/types/base/symbols.d.ts +1 -1
  366. package/types/capacitor.base.config.d.ts +1 -1
  367. package/types/client/cn.d.ts +3 -13
  368. package/types/client/cookie.d.ts +3 -12
  369. package/types/client/csrTypes.d.ts +6 -57
  370. package/types/client/decorators.d.ts +1 -1
  371. package/types/client/device.d.ts +2 -1
  372. package/types/client/index.d.ts +0 -1
  373. package/types/client/route/RootLayoutDefinition.d.ts +0 -1
  374. package/types/client/route/RouteDefinition.d.ts +4 -16
  375. package/types/client/route/resolveRouteModule.d.ts +1 -5
  376. package/types/client/router.d.ts +8 -4
  377. package/types/client/rscNavigation.d.ts +4 -5
  378. package/types/client/sharedContext.d.ts +2 -19
  379. package/types/client/storage.d.ts +1 -1
  380. package/types/client/types.d.ts +0 -3
  381. package/types/common/CodeAgentClient.d.ts +20 -0
  382. package/types/common/CodeTranscript.d.ts +72 -0
  383. package/types/common/Logger.d.ts +4 -20
  384. package/types/common/TrustedProxy.d.ts +2 -28
  385. package/types/common/applyMixins.d.ts +3 -0
  386. package/types/common/authToken.d.ts +0 -11
  387. package/types/common/capitalize.d.ts +1 -1
  388. package/types/common/clamp.d.ts +0 -1
  389. package/types/common/clientAddress.d.ts +1 -15
  390. package/types/common/codeAgentProfile.d.ts +115 -0
  391. package/types/common/codeAgentWire.d.ts +279 -0
  392. package/types/{server/routing → common}/eventStream.d.ts +0 -5
  393. package/types/common/fileUpload.d.ts +6 -11
  394. package/types/common/index.d.ts +20 -19
  395. package/types/common/interpolateTranslation.d.ts +1 -6
  396. package/types/common/isEmail.d.ts +0 -1
  397. package/types/common/isRecord.d.ts +1 -0
  398. package/types/common/isThenable.d.ts +0 -8
  399. package/types/common/logContext.d.ts +1 -1
  400. package/types/{ui/Agent → common}/markdownBlocks.d.ts +0 -3
  401. package/types/common/markdownSpans.d.ts +30 -0
  402. package/types/{ui/Agent → common}/markdownTable.d.ts +0 -2
  403. package/types/common/mcpExposure.d.ts +3 -23
  404. package/types/common/objectPath.d.ts +10 -0
  405. package/types/common/objectify.d.ts +7 -0
  406. package/types/common/phone.d.ts +2 -0
  407. package/types/common/randomPick.d.ts +1 -0
  408. package/types/common/requestOrigin.d.ts +0 -17
  409. package/types/common/restClient.d.ts +0 -7
  410. package/types/common/round.d.ts +1 -0
  411. package/types/common/routeConvention.d.ts +2 -5
  412. package/types/common/sleep.d.ts +0 -1
  413. package/types/common/subRoute.d.ts +4 -6
  414. package/types/common/toError.d.ts +1 -0
  415. package/types/common/tunnelWire.d.ts +161 -0
  416. package/types/common/types.d.ts +7 -7
  417. package/types/common/version.d.ts +6 -0
  418. package/types/common/websocketContract.d.ts +41 -0
  419. package/types/constant/cascadePaths.d.ts +2 -5
  420. package/types/constant/constantRegistry.d.ts +4 -4
  421. package/types/constant/dateSlot.d.ts +0 -5
  422. package/types/constant/fieldInfo.d.ts +2 -21
  423. package/types/constant/fieldQueryMeta.d.ts +2 -10
  424. package/types/constant/getDefault.d.ts +5 -7
  425. package/types/constant/hydrationPlan.d.ts +0 -8
  426. package/types/constant/index.d.ts +0 -1
  427. package/types/constant/labelOf.d.ts +1 -6
  428. package/types/constant/mask.d.ts +11 -36
  429. package/types/constant/serialize.d.ts +10 -2
  430. package/types/constant/types.d.ts +2 -6
  431. package/types/constant/via.d.ts +0 -1
  432. package/types/dictionary/DictionaryLookup.d.ts +1 -7
  433. package/types/dictionary/agent.dictionary.d.ts +2 -1
  434. package/types/dictionary/base.dictionary.d.ts +1 -1
  435. package/types/dictionary/dictInfo.d.ts +25 -92
  436. package/types/dictionary/dictShape.d.ts +26 -0
  437. package/types/dictionary/dictionary.d.ts +9 -9
  438. package/types/dictionary/dictionaryRegistry.d.ts +1 -15
  439. package/types/dictionary/locale.d.ts +9 -28
  440. package/types/dictionary/trans.d.ts +5 -14
  441. package/types/document/dataLoader.d.ts +2 -2
  442. package/types/document/database.d.ts +21 -14
  443. package/types/document/documentQuery.d.ts +6 -1
  444. package/types/document/documentSchema.d.ts +3 -7
  445. package/types/document/filterMeta.d.ts +3 -8
  446. package/types/document/index.d.ts +0 -1
  447. package/types/document/into.d.ts +3 -2
  448. package/types/document/loaderInfo.d.ts +9 -4
  449. package/types/document/noDocumentError.d.ts +2 -7
  450. package/types/document/queryEvaluator.d.ts +7 -24
  451. package/types/document/types.d.ts +0 -1
  452. package/types/fetch/client/fetchClient.d.ts +6 -9
  453. package/types/fetch/client/fetchHandle.d.ts +3 -11
  454. package/types/fetch/client/httpClient.d.ts +5 -1
  455. package/types/fetch/client/remoteError.d.ts +2 -8
  456. package/types/fetch/client/sliceInitHandle.d.ts +2 -5
  457. package/types/fetch/client/sliceQueryArgs.d.ts +3 -0
  458. package/types/fetch/client/wsClient.d.ts +10 -15
  459. package/types/fetch/fetchType/appliedReturn.type.d.ts +5 -23
  460. package/types/fetch/fetchType/buildFetch.type.d.ts +15 -1
  461. package/types/fetch/fetchType/index.d.ts +0 -1
  462. package/types/fetch/requestStorage.d.ts +3 -16
  463. package/types/fetch/types.d.ts +0 -1
  464. package/types/index.d.ts +30 -64
  465. package/types/server/akanApp.d.ts +5 -28
  466. package/types/server/akanAppHeaders.d.ts +0 -1
  467. package/types/server/akanOption.d.ts +12 -24
  468. package/types/server/akanServer.d.ts +16 -56
  469. package/types/server/animatedImage.d.ts +0 -6
  470. package/types/server/artifact/builderRpc.d.ts +7 -30
  471. package/types/server/artifact/index.d.ts +0 -1
  472. package/types/server/artifact/ipcTypes.d.ts +22 -29
  473. package/types/server/artifact/routeClientCache.d.ts +3 -11
  474. package/types/server/artifact/routeSeedIndexStore.d.ts +0 -16
  475. package/types/server/artifact/routesManifestStore.d.ts +1 -1
  476. package/types/server/binaryPubsub.d.ts +0 -8
  477. package/types/server/cachePolicy.d.ts +2 -21
  478. package/types/server/console.d.ts +3 -6
  479. package/types/server/consoleSession.d.ts +2 -2
  480. package/types/server/contentEncoding.d.ts +6 -14
  481. package/types/server/decorators.d.ts +0 -12
  482. package/types/server/devtools/constantSerializer.d.ts +1 -6
  483. package/types/server/devtools/depsSerializer.d.ts +1 -7
  484. package/types/server/devtools/devtoolsJson.d.ts +1 -7
  485. package/types/server/devtools/devtoolsRouter.d.ts +2 -11
  486. package/types/server/devtools/signalSerializer.d.ts +1 -9
  487. package/types/server/devtools/types.d.ts +0 -11
  488. package/types/server/di/diLifecycle.d.ts +0 -36
  489. package/types/server/di/predefinedAdaptor.d.ts +3 -2
  490. package/types/server/di/resolveHierarchy.d.ts +22 -5
  491. package/types/server/di/utils.d.ts +4 -17
  492. package/types/server/head.d.ts +9 -0
  493. package/types/server/hmr/devHmrController.d.ts +0 -2
  494. package/types/server/hmr/wsHub.d.ts +6 -1
  495. package/types/server/index.d.ts +1 -1
  496. package/types/server/lifecycle/portInUse.d.ts +1 -4
  497. package/types/server/lifecycle/runtimeDir.d.ts +0 -4
  498. package/types/server/lifecycle/shutdownManager.d.ts +0 -9
  499. package/types/server/logging/childOutputReader.d.ts +0 -12
  500. package/types/server/logging/hubFileSink.d.ts +1 -5
  501. package/types/server/logging/logControlSocket.d.ts +2 -7
  502. package/types/server/logging/logForwarder.d.ts +3 -15
  503. package/types/server/logging/logHub.d.ts +1 -15
  504. package/types/server/logging/logQuery.d.ts +3 -6
  505. package/types/server/logging/logStdoutWriter.d.ts +0 -6
  506. package/types/server/logging/logStreamRoute.d.ts +0 -9
  507. package/types/server/logging/logTailClient.d.ts +0 -5
  508. package/types/server/mcp/McpAuth.d.ts +3 -71
  509. package/types/server/mcp/McpDispatcher.d.ts +0 -23
  510. package/types/server/mcp/McpEventStream.d.ts +1 -12
  511. package/types/server/mcp/McpExecutionContext.d.ts +0 -33
  512. package/types/server/mcp/McpRateLimiter.d.ts +10 -13
  513. package/types/server/mcp/McpRouter.d.ts +1 -47
  514. package/types/server/mcp/PagePromptComposer.d.ts +1 -13
  515. package/types/server/memoryLimit.d.ts +1 -13
  516. package/types/server/oauth/OAuthAuthorize.d.ts +1 -6
  517. package/types/server/oauth/OAuthClientIdMetadata.d.ts +2 -26
  518. package/types/server/oauth/OAuthErrors.d.ts +0 -13
  519. package/types/server/oauth/OAuthMetadata.d.ts +1 -7
  520. package/types/server/oauth/OAuthPkce.d.ts +0 -1
  521. package/types/server/oauth/OAuthRedirect.d.ts +0 -9
  522. package/types/server/oauth/OAuthRegistration.d.ts +0 -1
  523. package/types/server/oauth/OAuthRevocation.d.ts +1 -11
  524. package/types/server/oauth/OAuthToken.d.ts +1 -13
  525. package/types/server/oauth/oauthTypes.d.ts +1 -2
  526. package/types/server/ops/ageEncryption.d.ts +19 -0
  527. package/types/server/ops/appInfo.d.ts +36 -0
  528. package/types/server/ops/opsCommand.d.ts +5 -0
  529. package/types/server/ops/opsRoute.d.ts +24 -0
  530. package/types/server/ops/opsToken.d.ts +26 -0
  531. package/types/server/ops/snapshotJobs.d.ts +24 -0
  532. package/types/server/ops/snapshotRestore.d.ts +24 -0
  533. package/types/server/ops/snapshotTypes.d.ts +45 -0
  534. package/types/server/ops/sqliteFiles.d.ts +5 -0
  535. package/types/server/ops/sqliteSnapshot.d.ts +32 -0
  536. package/types/server/processMetricsCollector.d.ts +3 -1
  537. package/types/server/proxy/hostBasePathWebProxy.d.ts +7 -1
  538. package/types/server/proxy/index.d.ts +2 -3
  539. package/types/server/proxy/localeWebProxy.d.ts +1 -1
  540. package/types/server/proxy/types.d.ts +5 -0
  541. package/types/server/proxy/webProxyRunner.d.ts +1 -0
  542. package/types/server/resolver/CascadeRunner.d.ts +0 -4
  543. package/types/server/resolver/database.resolver.d.ts +1 -1
  544. package/types/server/resolver/service.resolver.d.ts +2 -2
  545. package/types/server/resolver/signal.resolver.d.ts +1 -15
  546. package/types/server/routeElementComposer.d.ts +2 -8
  547. package/types/server/routeState.d.ts +1 -1
  548. package/types/server/routing/apiRouter.d.ts +2 -20
  549. package/types/server/routing/appWsData.d.ts +0 -26
  550. package/types/server/routing/soloAppRoutes.d.ts +2 -6
  551. package/types/server/rscClient.d.ts +0 -9
  552. package/types/server/rscClientFetch.d.ts +6 -6
  553. package/types/server/rscClientPatch.d.ts +1 -1
  554. package/types/server/rscHttp.d.ts +1 -0
  555. package/types/server/rscNavigationState.d.ts +3 -2
  556. package/types/server/rscPagePrompts.d.ts +0 -9
  557. package/types/server/rscWorkerCache.d.ts +41 -3
  558. package/types/server/rscWorkerHost.d.ts +5 -61
  559. package/types/server/ssrFromRscRenderer.d.ts +0 -12
  560. package/types/server/ssrTypes.d.ts +2 -29
  561. package/types/server/staticPath.d.ts +0 -16
  562. package/types/server/systemPageDocument.d.ts +8 -0
  563. package/types/server/systemPages.d.ts +2 -3
  564. package/types/server/tunnel/TunnelAgent.d.ts +29 -0
  565. package/types/server/tunnel/TunnelDataSocket.d.ts +22 -0
  566. package/types/server/tunnel/TunnelHttpStream.d.ts +10 -0
  567. package/types/server/tunnel/TunnelTcpStream.d.ts +11 -0
  568. package/types/server/tunnel/TunnelWebsocketStream.d.ts +10 -0
  569. package/types/server/tunnel/index.d.ts +6 -0
  570. package/types/server/tunnel/tunnelStream.d.ts +19 -0
  571. package/types/server/tunnel.d.ts +1 -0
  572. package/types/server/types.d.ts +2 -9
  573. package/types/server/webRouter.d.ts +2 -19
  574. package/types/service/agent.service.d.ts +16 -29
  575. package/types/service/injectInfo.d.ts +26 -15
  576. package/types/service/ipcTypes.d.ts +6 -0
  577. package/types/service/liveSyncHub.d.ts +4 -22
  578. package/types/service/predefinedAdaptor/anthropicLlm.d.ts +20 -29
  579. package/types/service/predefinedAdaptor/cache.adaptor.d.ts +42 -12
  580. package/types/service/predefinedAdaptor/database.adaptor.d.ts +20 -16
  581. package/types/service/predefinedAdaptor/documentTransfer.d.ts +15 -0
  582. package/types/service/predefinedAdaptor/index.d.ts +2 -1
  583. package/types/service/predefinedAdaptor/insightQuery.d.ts +7 -30
  584. package/types/service/predefinedAdaptor/llm.adaptor.d.ts +54 -54
  585. package/types/service/predefinedAdaptor/llmOverflow.d.ts +16 -0
  586. package/types/service/predefinedAdaptor/openaiDialect.d.ts +19 -29
  587. package/types/service/predefinedAdaptor/openaiLlm.d.ts +9 -14
  588. package/types/service/predefinedAdaptor/queue.adaptor.d.ts +12 -7
  589. package/types/service/predefinedAdaptor/schedule.adaptor.d.ts +7 -2
  590. package/types/service/predefinedAdaptor/searchIndex.d.ts +17 -47
  591. package/types/service/predefinedAdaptor/solidCache.adaptor.d.ts +15 -6
  592. package/types/service/predefinedAdaptor/solidPubsub.adaptor.d.ts +6 -4
  593. package/types/service/predefinedAdaptor/solidSqlite.d.ts +2 -1
  594. package/types/service/predefinedAdaptor/sql/PostgresInsightSession.d.ts +20 -0
  595. package/types/service/predefinedAdaptor/sql/QueryCompiler.d.ts +9 -11
  596. package/types/service/predefinedAdaptor/sql/SqlDocumentStore.d.ts +11 -25
  597. package/types/service/predefinedAdaptor/sql/SqliteInsightSession.d.ts +15 -0
  598. package/types/service/predefinedAdaptor/sql/UpdateCompiler.d.ts +0 -4
  599. package/types/service/predefinedAdaptor/sql/dialect/postgres.d.ts +18 -10
  600. package/types/service/predefinedAdaptor/sql/dialect/sqlite.d.ts +5 -2
  601. package/types/service/predefinedAdaptor/sql/driver/bunSqlite.d.ts +9 -3
  602. package/types/service/predefinedAdaptor/sql/driver/libsql.d.ts +8 -5
  603. package/types/service/predefinedAdaptor/sql/driver/postgres.d.ts +4 -4
  604. package/types/service/predefinedAdaptor/sql/search/fts5.d.ts +28 -0
  605. package/types/service/predefinedAdaptor/sql/search/mirror.d.ts +20 -0
  606. package/types/service/predefinedAdaptor/sql/search/postgres.d.ts +53 -0
  607. package/types/service/predefinedAdaptor/sql/search/types.d.ts +45 -0
  608. package/types/service/predefinedAdaptor/sql/types.d.ts +69 -15
  609. package/types/service/predefinedAdaptor/sql/values.d.ts +8 -0
  610. package/types/service/predefinedAdaptor/sqlitePath.d.ts +1 -0
  611. package/types/service/predefinedAdaptor/sseData.d.ts +1 -0
  612. package/types/service/predefinedAdaptor/storage.adaptor.d.ts +3 -2
  613. package/types/service/predefinedAdaptor/websocket.adaptor.d.ts +26 -26
  614. package/types/service/serviceModule.d.ts +7 -7
  615. package/types/service/toolNames.d.ts +4 -21
  616. package/types/service/types.d.ts +3 -3
  617. package/types/signal/CrossSiteGuard.d.ts +3 -28
  618. package/types/signal/SignalFailure.d.ts +1 -15
  619. package/types/signal/agent/AgentCatalogue.d.ts +8 -54
  620. package/types/signal/agent.signal.d.ts +4 -1
  621. package/types/signal/agentMeter.d.ts +24 -0
  622. package/types/signal/agentTurnStream.d.ts +10 -11
  623. package/types/signal/endpoint.d.ts +0 -1
  624. package/types/signal/endpointCache.d.ts +5 -0
  625. package/types/signal/endpointInfo.d.ts +1 -9
  626. package/types/signal/exception.d.ts +1 -34
  627. package/types/signal/guard.d.ts +4 -15
  628. package/types/signal/guards.d.ts +2 -10
  629. package/types/signal/index.d.ts +1 -0
  630. package/types/signal/internal.d.ts +1 -5
  631. package/types/signal/internalArg.d.ts +7 -13
  632. package/types/signal/mcp/McpDocument.d.ts +5 -45
  633. package/types/signal/mcp/McpProgress.d.ts +6 -19
  634. package/types/signal/mcp/McpUriTemplate.d.ts +1 -19
  635. package/types/signal/mcp/Msg.d.ts +13 -70
  636. package/types/signal/mcp/mcpProtocol.d.ts +1 -26
  637. package/types/signal/mcp/pagePrompt.d.ts +3 -9
  638. package/types/signal/middleware.d.ts +0 -18
  639. package/types/signal/schema/JsonSchemaBuilder.d.ts +15 -43
  640. package/types/signal/serializer/fetch.serializer.d.ts +1 -6
  641. package/types/signal/serverSignal.d.ts +0 -1
  642. package/types/signal/signalContext.d.ts +14 -61
  643. package/types/signal/signalRegistry.d.ts +0 -1
  644. package/types/signal/slice.d.ts +3 -9
  645. package/types/signal/sliceInfo.d.ts +5 -30
  646. package/types/signal/trace.d.ts +2 -30
  647. package/types/signal/types.d.ts +27 -57
  648. package/types/store/SliceRequest.d.ts +1 -11
  649. package/types/store/action.d.ts +2 -6
  650. package/types/store/actionTag.d.ts +1 -10
  651. package/types/store/agent/AgentBridge.d.ts +3 -22
  652. package/types/store/agent/AgentContext.d.ts +1 -7
  653. package/types/store/agent/AgentCursor.d.ts +24 -0
  654. package/types/store/agent/AgentPrompts.d.ts +0 -5
  655. package/types/store/agent/AgentVisual.d.ts +25 -0
  656. package/types/store/agent/ScreenFlash.d.ts +23 -0
  657. package/types/store/agent/ScreenReader.d.ts +3 -26
  658. package/types/store/agent/ScreenSettle.d.ts +1 -12
  659. package/types/store/agent/ScreenTarget.d.ts +3 -23
  660. package/types/store/agent/StoreCatalogue.d.ts +12 -16
  661. package/types/store/agent/StoreSurfaceSource.d.ts +11 -23
  662. package/types/store/agent/index.d.ts +4 -3
  663. package/types/store/agentic/AgentValue.d.ts +3 -23
  664. package/types/store/agentic/StExposeBuilder.d.ts +2 -11
  665. package/types/store/agentic/StExposeDraft.d.ts +0 -6
  666. package/types/store/agentic/StStateBuilder.d.ts +1 -7
  667. package/types/store/agentic/StStateDraft.d.ts +0 -5
  668. package/types/store/agentic/StToolBuilder.d.ts +14 -37
  669. package/types/store/agentic/StToolDraft.d.ts +0 -7
  670. package/types/store/agentic/attachAgentic.d.ts +2 -10
  671. package/types/store/agentic/formFields.d.ts +5 -41
  672. package/types/store/agentic/index.d.ts +1 -1
  673. package/types/store/agentic/useAgentReference.d.ts +14 -0
  674. package/types/store/agentic/useFieldTool.d.ts +19 -16
  675. package/types/store/agentic/useFormTools.d.ts +1 -18
  676. package/types/store/agentic/useRelationFieldTool.d.ts +1 -14
  677. package/types/store/baseSt.d.ts +2 -2
  678. package/types/store/databaseStateNames.d.ts +0 -9
  679. package/types/store/draftStore.d.ts +4 -30
  680. package/types/store/formSetterNames.d.ts +0 -19
  681. package/types/store/hooks.d.ts +1 -1
  682. package/types/store/liveInsert.d.ts +0 -23
  683. package/types/store/sliceKeys.d.ts +31 -0
  684. package/types/store/sliceRole.d.ts +1 -10
  685. package/types/store/state.d.ts +2 -9
  686. package/types/store/stateBuilder.d.ts +0 -14
  687. package/types/store/storeInstance.d.ts +6 -20
  688. package/types/store/storeRegistry.d.ts +0 -2
  689. package/types/test/conformance.d.ts +73 -0
  690. package/types/test/index.d.ts +2 -2
  691. package/types/test/sampleOf.d.ts +17 -2
  692. package/types/test/signalTestRuntime.d.ts +1 -1
  693. package/types/test/testServer.d.ts +4 -3
  694. package/types/ui/Agent/Attach.d.ts +2 -2
  695. package/types/ui/Agent/Bubble.d.ts +3 -14
  696. package/types/ui/Agent/Chat.d.ts +31 -64
  697. package/types/ui/Agent/ChatCommands.d.ts +4 -14
  698. package/types/ui/Agent/Composer.d.ts +18 -5
  699. package/types/ui/Agent/Dock.d.ts +38 -10
  700. package/types/ui/Agent/Guide.d.ts +1 -5
  701. package/types/ui/Agent/History.d.ts +1 -18
  702. package/types/ui/Agent/Launcher.d.ts +2 -2
  703. package/types/ui/Agent/Markdown.d.ts +2 -6
  704. package/types/ui/Agent/MentionNode.d.ts +18 -0
  705. package/types/ui/Agent/Menu.d.ts +4 -4
  706. package/types/ui/Agent/Question.d.ts +1 -6
  707. package/types/ui/Agent/Queued.d.ts +1 -6
  708. package/types/ui/Agent/Refer.d.ts +9 -0
  709. package/types/ui/Agent/RichInput.d.ts +14 -0
  710. package/types/ui/Agent/Skip.d.ts +3 -15
  711. package/types/ui/Agent/Steps.d.ts +17 -0
  712. package/types/ui/Agent/ToolCard.d.ts +9 -0
  713. package/types/ui/Agent/Zone.d.ts +13 -30
  714. package/types/ui/Agent/agentSessionOf.d.ts +20 -16
  715. package/types/ui/Agent/attachment.d.ts +4 -38
  716. package/types/ui/Agent/fetchRunner.d.ts +1 -8
  717. package/types/ui/Agent/index.d.ts +2 -6
  718. package/types/ui/Agent/mentionDraft.d.ts +9 -0
  719. package/types/ui/Agent/tokenCount.d.ts +1 -5
  720. package/types/ui/Agent/useChatAttachments.d.ts +0 -5
  721. package/types/ui/Agent/useChatQueue.d.ts +3 -14
  722. package/types/ui/Agent/useChatReferences.d.ts +15 -0
  723. package/types/ui/Agent/useChatVoice.d.ts +0 -12
  724. package/types/ui/Agent/useDraftRecall.d.ts +0 -8
  725. package/types/ui/Agent/useKeyboardInset.d.ts +0 -7
  726. package/types/ui/Agent/useReferenceMenu.d.ts +35 -0
  727. package/types/ui/Agent/useSlashMenu.d.ts +0 -2
  728. package/types/ui/Agent/voice.d.ts +8 -42
  729. package/types/ui/Badge.d.ts +0 -1
  730. package/types/ui/BottomSheet.d.ts +2 -5
  731. package/types/ui/Button.d.ts +6 -23
  732. package/types/ui/ClientSide.d.ts +0 -2
  733. package/types/ui/Constant/schemaGraph.d.ts +0 -4
  734. package/types/ui/Copy.d.ts +2 -3
  735. package/types/ui/CsrImage.d.ts +2 -1
  736. package/types/ui/Data/Dashboard.d.ts +1 -4
  737. package/types/ui/Data/Item.d.ts +1 -1
  738. package/types/ui/Data/ListContainer.d.ts +1 -10
  739. package/types/ui/Data/Pagination.d.ts +0 -2
  740. package/types/ui/Data/QueryMaker.d.ts +0 -7
  741. package/types/ui/Data/RefPicker.d.ts +0 -7
  742. package/types/ui/DatePicker.d.ts +0 -11
  743. package/types/ui/Dialog/LegacyModal.d.ts +1 -4
  744. package/types/ui/Dialog/Provider.d.ts +37 -4
  745. package/types/ui/Dialog/index.d.ts +4 -4
  746. package/types/ui/Dropdown.d.ts +1 -9
  747. package/types/ui/Empty.d.ts +3 -10
  748. package/types/ui/Field/Collection.d.ts +1 -16
  749. package/types/ui/Field/Relation.d.ts +10 -37
  750. package/types/ui/Field/Text.d.ts +9 -66
  751. package/types/ui/Field/index.d.ts +0 -9
  752. package/types/ui/Field/lightRefCache.d.ts +11 -0
  753. package/types/ui/Field/useRelationOptions.d.ts +28 -0
  754. package/types/ui/Image.d.ts +8 -12
  755. package/types/ui/InfiniteScroll.d.ts +2 -6
  756. package/types/ui/Input.d.ts +8 -15
  757. package/types/ui/Layout/Role.d.ts +23 -0
  758. package/types/ui/Layout/Sider.d.ts +21 -0
  759. package/types/ui/Layout/TopInset.d.ts +5 -0
  760. package/types/ui/Layout/index.d.ts +7 -7
  761. package/types/ui/LegacyModal.d.ts +1 -12
  762. package/types/ui/Link/Action.d.ts +11 -0
  763. package/types/ui/Link/Anchor.d.ts +20 -0
  764. package/types/ui/Link/index.d.ts +4 -7
  765. package/types/ui/Load/Edit_Client.d.ts +1 -1
  766. package/types/ui/Load/Page.d.ts +3 -5
  767. package/types/ui/Load/Stream.d.ts +0 -12
  768. package/types/ui/Load/Units.d.ts +1 -1
  769. package/types/ui/Load/View.d.ts +2 -7
  770. package/types/ui/Loading/ProgressBar.d.ts +0 -4
  771. package/types/ui/Loading/Skeleton.d.ts +2 -0
  772. package/types/ui/Loading/Spin.d.ts +12 -2
  773. package/types/ui/Loading/index.d.ts +3 -8
  774. package/types/ui/Loading/index_.d.ts +3 -10
  775. package/types/ui/Menu.d.ts +0 -5
  776. package/types/ui/Modal.d.ts +0 -17
  777. package/types/ui/Model/AdminPanel.d.ts +1 -4
  778. package/types/ui/Model/DraftBar.d.ts +2 -7
  779. package/types/ui/Model/EditModal.d.ts +7 -22
  780. package/types/ui/Model/LoadStore.d.ts +18 -0
  781. package/types/ui/Model/Remove.d.ts +0 -2
  782. package/types/ui/Model/SureToRemove.d.ts +0 -3
  783. package/types/ui/Model/ViewEditModal.d.ts +0 -2
  784. package/types/ui/Model/draftScope.d.ts +0 -7
  785. package/types/ui/Model/index.d.ts +2 -2
  786. package/types/ui/Model/index_.d.ts +2 -2
  787. package/types/ui/Pagination.d.ts +4 -12
  788. package/types/ui/Popconfirm.d.ts +3 -17
  789. package/types/ui/Radio.d.ts +0 -4
  790. package/types/ui/RecentTime.d.ts +5 -9
  791. package/types/ui/Reference/Panel.d.ts +44 -6
  792. package/types/ui/Reference/Segmented.d.ts +0 -3
  793. package/types/ui/Reference/{style.d.ts → docUi.d.ts} +6 -2
  794. package/types/ui/Reference/index.d.ts +3 -7
  795. package/types/ui/Refresh.d.ts +1 -1
  796. package/types/ui/ScreenNavigator.d.ts +2 -2
  797. package/types/ui/Select.d.ts +4 -19
  798. package/types/ui/Signal/Endpoint.d.ts +43 -0
  799. package/types/ui/Signal/WebSocket.d.ts +23 -0
  800. package/types/ui/Signal/endpointEntries.d.ts +2 -4
  801. package/types/ui/Signal/index.d.ts +1 -3
  802. package/types/ui/Signal/style.d.ts +1 -2
  803. package/types/ui/Switch.d.ts +1 -5
  804. package/types/ui/System/CSR.d.ts +2 -2
  805. package/types/ui/System/Client.d.ts +2 -6
  806. package/types/ui/System/Common.d.ts +11 -22
  807. package/types/ui/System/Root.d.ts +1 -4
  808. package/types/ui/System/SSR.d.ts +2 -2
  809. package/types/ui/System/ThemeToggle.d.ts +1 -0
  810. package/types/ui/System/index.d.ts +1 -0
  811. package/types/ui/Tab/Provider.d.ts +24 -4
  812. package/types/ui/Tab/index.d.ts +3 -3
  813. package/types/ui/Table.d.ts +7 -23
  814. package/types/ui/Toast.d.ts +9 -16
  815. package/types/ui/ToggleSelect.d.ts +0 -5
  816. package/types/ui/Tooltip.d.ts +1 -2
  817. package/types/ui/UiOverride/{context.d.ts → UiOverride.d.ts} +24 -40
  818. package/types/ui/UiOverride/index.d.ts +2 -5
  819. package/types/ui/UiOverride/override.d.ts +2 -18
  820. package/types/ui/Unauthorized.d.ts +0 -6
  821. package/types/ui/agentAttrs.d.ts +4 -11
  822. package/types/ui/index.d.ts +9 -5
  823. package/types/ui/overlayLayer.d.ts +4 -24
  824. package/types/ui/overlayPosition.d.ts +0 -12
  825. package/types/ui/recipe/badgeRecipe.d.ts +2 -2
  826. package/types/ui/recipe/buttonRecipe.d.ts +2 -2
  827. package/types/ui/recipe/factory.d.ts +1 -21
  828. package/types/ui/recipe/index.d.ts +0 -14
  829. package/types/ui/recipe/inputRecipe.d.ts +3 -3
  830. package/types/ui/sliceNamesOf.d.ts +78 -0
  831. package/types/ui/triggerSlot.d.ts +2 -12
  832. package/types/vendor/use-agentic/AgentProgress.d.ts +12 -0
  833. package/types/vendor/use-agentic/AgentSession.d.ts +94 -2
  834. package/types/vendor/use-agentic/Compaction.d.ts +42 -5
  835. package/types/vendor/use-agentic/Reference.d.ts +56 -0
  836. package/types/vendor/use-agentic/ToolRunner.d.ts +31 -1
  837. package/types/vendor/use-agentic/Transcript.d.ts +4 -1
  838. package/types/vendor/use-agentic/index.d.ts +1 -0
  839. package/types/vendor/use-agentic/types.d.ts +109 -7
  840. package/types/webkit/RenderLayer.d.ts +11 -0
  841. package/types/webkit/index.d.ts +1 -2
  842. package/types/webkit/lazy.d.ts +3 -12
  843. package/types/webkit/{createRobotPage.d.ts → seoPages.d.ts} +4 -0
  844. package/types/webkit/useBodyScrollLock.d.ts +0 -1
  845. package/types/webkit/useCamera.d.ts +1 -1
  846. package/types/webkit/useContact.d.ts +1 -1
  847. package/types/webkit/useDebounce.d.ts +0 -1
  848. package/types/webkit/useEscapeKey.d.ts +1 -4
  849. package/types/webkit/useFetch.d.ts +1 -6
  850. package/types/webkit/useFrameRuntime.d.ts +1 -1
  851. package/types/webkit/useGeoLocation.d.ts +1 -1
  852. package/types/webkit/usePageTool.d.ts +2 -9
  853. package/types/webkit/usePurchase.d.ts +1 -4
  854. package/types/webkit/useScreenScope.d.ts +2 -13
  855. package/ui/Agent/Attach.tsx +5 -4
  856. package/ui/Agent/Bubble.tsx +51 -31
  857. package/ui/Agent/Chat.tsx +114 -102
  858. package/ui/Agent/ChatCommands.ts +5 -21
  859. package/ui/Agent/Composer.tsx +110 -28
  860. package/ui/Agent/Dock.tsx +176 -16
  861. package/ui/Agent/Guide.tsx +1 -5
  862. package/ui/Agent/History.tsx +1 -18
  863. package/ui/Agent/Launcher.tsx +2 -2
  864. package/ui/Agent/Markdown.tsx +40 -14
  865. package/ui/Agent/MentionNode.ts +54 -0
  866. package/ui/Agent/Menu.tsx +8 -5
  867. package/ui/Agent/Question.tsx +1 -6
  868. package/ui/Agent/Queued.tsx +3 -6
  869. package/ui/Agent/Refer.tsx +40 -0
  870. package/ui/Agent/RichInput.tsx +146 -0
  871. package/ui/Agent/Skip.tsx +3 -15
  872. package/ui/Agent/Steps.tsx +33 -0
  873. package/ui/Agent/ToolCard.tsx +32 -0
  874. package/ui/Agent/Zone.tsx +15 -31
  875. package/ui/Agent/agentSessionOf.ts +115 -15
  876. package/ui/Agent/attachment.ts +5 -42
  877. package/ui/Agent/fetchRunner.ts +3 -15
  878. package/ui/Agent/index.ts +1 -6
  879. package/ui/Agent/mentionDraft.ts +91 -0
  880. package/ui/Agent/tokenCount.ts +1 -5
  881. package/ui/Agent/useChatAttachments.ts +2 -9
  882. package/ui/Agent/useChatQueue.ts +12 -14
  883. package/ui/Agent/useChatReferences.ts +51 -0
  884. package/ui/Agent/useChatVoice.ts +2 -23
  885. package/ui/Agent/useDraftRecall.ts +0 -9
  886. package/ui/Agent/useKeyboardInset.ts +0 -7
  887. package/ui/Agent/useReferenceMenu.ts +93 -0
  888. package/ui/Agent/useSlashMenu.ts +0 -3
  889. package/ui/Agent/voice.ts +8 -43
  890. package/ui/Badge.tsx +0 -2
  891. package/ui/BottomSheet.tsx +2 -5
  892. package/ui/Button.tsx +9 -45
  893. package/ui/ClientSide.tsx +0 -2
  894. package/ui/Clipboard.tsx +0 -1
  895. package/ui/Constant/Doc.tsx +274 -265
  896. package/ui/Constant/Graph.tsx +11 -3
  897. package/ui/Constant/schemaGraph.ts +0 -9
  898. package/ui/Copy.tsx +2 -3
  899. package/ui/CsrImage.tsx +9 -9
  900. package/ui/Data/CardList.tsx +2 -17
  901. package/ui/Data/Dashboard.tsx +2 -5
  902. package/ui/Data/Item.tsx +2 -3
  903. package/ui/Data/ListContainer.tsx +15 -61
  904. package/ui/Data/Pagination.tsx +3 -22
  905. package/ui/Data/QueryMaker.tsx +1 -8
  906. package/ui/Data/RefPicker.tsx +1 -8
  907. package/ui/Data/TableList.tsx +2 -15
  908. package/ui/DatePicker.tsx +1 -12
  909. package/ui/Dialog/LegacyModal.tsx +3 -7
  910. package/ui/Dialog/Modal.tsx +3 -4
  911. package/ui/Dialog/Provider.tsx +85 -7
  912. package/ui/Dialog/index.tsx +1 -5
  913. package/ui/DraggableList.tsx +1 -4
  914. package/ui/Dropdown.tsx +4 -17
  915. package/ui/Empty.tsx +4 -12
  916. package/ui/Field/Choice.tsx +1 -1
  917. package/ui/Field/Collection.tsx +7 -29
  918. package/ui/Field/DateField.tsx +2 -7
  919. package/ui/Field/Label.tsx +0 -1
  920. package/ui/Field/NumberField.tsx +0 -1
  921. package/ui/Field/Relation.tsx +79 -199
  922. package/ui/Field/Text.tsx +25 -86
  923. package/ui/Field/index.tsx +0 -9
  924. package/ui/Field/lightRefCache.ts +61 -0
  925. package/ui/Field/useRelationOptions.ts +97 -0
  926. package/ui/Image.tsx +35 -65
  927. package/ui/InfiniteScroll.tsx +3 -21
  928. package/ui/Input.tsx +82 -174
  929. package/ui/Layout/Role.tsx +42 -0
  930. package/ui/Layout/Sider.tsx +82 -1
  931. package/ui/Layout/TopInset.tsx +23 -1
  932. package/ui/Layout/index.ts +3 -9
  933. package/ui/LegacyModal.tsx +1 -12
  934. package/ui/Link/Action.tsx +29 -0
  935. package/ui/Link/Anchor.tsx +118 -0
  936. package/ui/Link/index.tsx +7 -8
  937. package/ui/Load/Edit_Client.tsx +2 -37
  938. package/ui/Load/Page.tsx +3 -6
  939. package/ui/Load/Pagination.tsx +4 -19
  940. package/ui/Load/Stream.tsx +0 -12
  941. package/ui/Load/Units.tsx +13 -86
  942. package/ui/Load/View.tsx +4 -21
  943. package/ui/Loading/ProgressBar.tsx +0 -4
  944. package/ui/Loading/Skeleton.tsx +14 -0
  945. package/ui/Loading/Spin.tsx +34 -5
  946. package/ui/Loading/index.ts +0 -5
  947. package/ui/Loading/index_.tsx +2 -12
  948. package/ui/Menu.tsx +3 -21
  949. package/ui/Modal.tsx +0 -17
  950. package/ui/Model/AdminPanel.tsx +2 -5
  951. package/ui/Model/DraftBar.tsx +3 -14
  952. package/ui/Model/EditModal.tsx +11 -48
  953. package/ui/Model/EditWrapper.tsx +2 -3
  954. package/ui/Model/LoadStore.tsx +18 -0
  955. package/ui/Model/NewWrapper_Client.tsx +1 -1
  956. package/ui/Model/Remove.tsx +4 -12
  957. package/ui/Model/RemoveWrapper.tsx +2 -3
  958. package/ui/Model/SureToRemove.tsx +4 -13
  959. package/ui/Model/ViewEditModal.tsx +0 -6
  960. package/ui/Model/ViewModal.tsx +1 -5
  961. package/ui/Model/ViewWrapper.tsx +1 -2
  962. package/ui/Model/draftScope.ts +0 -7
  963. package/ui/Model/index_.tsx +2 -22
  964. package/ui/Pagination.tsx +4 -12
  965. package/ui/Popconfirm.tsx +3 -18
  966. package/ui/Portal.tsx +2 -3
  967. package/ui/Radio.tsx +1 -5
  968. package/ui/RecentTime.tsx +19 -31
  969. package/ui/Reference/Panel.tsx +102 -6
  970. package/ui/Reference/Segmented.tsx +5 -11
  971. package/ui/Reference/{style.ts → docUi.ts} +10 -2
  972. package/ui/Reference/index.ts +3 -7
  973. package/ui/Refresh.tsx +79 -13
  974. package/ui/ScreenNavigator.tsx +8 -13
  975. package/ui/Select.tsx +29 -37
  976. package/ui/Signal/Endpoint.tsx +154 -0
  977. package/ui/Signal/Listener.tsx +1 -4
  978. package/ui/Signal/Object.tsx +67 -73
  979. package/ui/Signal/RestApi.tsx +30 -76
  980. package/ui/Signal/WebSocket.tsx +253 -2
  981. package/ui/Signal/endpointEntries.ts +3 -5
  982. package/ui/Signal/index.ts +1 -3
  983. package/ui/Signal/style.ts +1 -2
  984. package/ui/Switch.tsx +1 -5
  985. package/ui/System/CSR.tsx +29 -109
  986. package/ui/System/Client.tsx +15 -19
  987. package/ui/System/Common.tsx +31 -22
  988. package/ui/System/Messages.tsx +2 -2
  989. package/ui/System/Reconnect.tsx +1 -6
  990. package/ui/System/Root.tsx +1 -4
  991. package/ui/System/SSR.tsx +10 -16
  992. package/ui/System/ThemeToggle.tsx +15 -0
  993. package/ui/System/index.tsx +2 -2
  994. package/ui/Tab/Provider.tsx +115 -7
  995. package/ui/Tab/index.tsx +1 -4
  996. package/ui/Table.tsx +7 -23
  997. package/ui/Toast.tsx +9 -16
  998. package/ui/ToggleSelect.tsx +10 -24
  999. package/ui/Tooltip.tsx +2 -8
  1000. package/ui/UiOverride/{context.ts → UiOverride.tsx} +54 -42
  1001. package/ui/UiOverride/index.ts +9 -6
  1002. package/ui/UiOverride/override.ts +2 -18
  1003. package/ui/Unauthorized.tsx +1 -8
  1004. package/ui/agentAttrs.ts +9 -12
  1005. package/ui/index.ts +20 -5
  1006. package/ui/overlayLayer.ts +4 -25
  1007. package/ui/overlayPosition.ts +2 -14
  1008. package/ui/recipe/badgeRecipe.ts +1 -1
  1009. package/ui/recipe/buttonRecipe.ts +4 -4
  1010. package/ui/recipe/factory.ts +1 -22
  1011. package/ui/recipe/index.ts +1 -14
  1012. package/ui/recipe/inputRecipe.ts +2 -2
  1013. package/ui/sliceNamesOf.ts +26 -0
  1014. package/ui/styles.css +195 -1
  1015. package/ui/triggerSlot.tsx +2 -12
  1016. package/vendor/use-agentic/AgentProgress.ts +13 -1
  1017. package/vendor/use-agentic/AgentSession.ts +313 -29
  1018. package/vendor/use-agentic/AgenticSurface.ts +2 -0
  1019. package/vendor/use-agentic/Compaction.ts +91 -9
  1020. package/vendor/use-agentic/Reference.ts +99 -0
  1021. package/vendor/use-agentic/ToolRunner.ts +77 -2
  1022. package/vendor/use-agentic/Transcript.ts +15 -4
  1023. package/vendor/use-agentic/WIRE.md +16 -2
  1024. package/vendor/use-agentic/httpRunner.ts +19 -4
  1025. package/vendor/use-agentic/index.ts +1 -1
  1026. package/vendor/use-agentic/types.ts +121 -10
  1027. package/webkit/RenderLayer.tsx +45 -0
  1028. package/webkit/bootCsr.tsx +4 -57
  1029. package/webkit/index.ts +1 -2
  1030. package/webkit/lazy.tsx +3 -13
  1031. package/webkit/{createRobotPage.ts → seoPages.ts} +5 -0
  1032. package/webkit/useBodyScrollLock.tsx +0 -6
  1033. package/webkit/useCamera.tsx +10 -28
  1034. package/webkit/useCodepush.tsx +8 -31
  1035. package/webkit/useContact.tsx +1 -8
  1036. package/webkit/useCsrValues.ts +203 -428
  1037. package/webkit/useDebounce.ts +0 -3
  1038. package/webkit/useEscapeKey.tsx +1 -12
  1039. package/webkit/useFetch.ts +7 -13
  1040. package/webkit/useFrameRuntime.ts +5 -43
  1041. package/webkit/useGeoLocation.tsx +1 -1
  1042. package/webkit/useLocation.ts +5 -8
  1043. package/webkit/usePageTool.tsx +2 -9
  1044. package/webkit/usePurchase.tsx +17 -33
  1045. package/webkit/useScreenScope.tsx +2 -13
  1046. package/client/fetch.ts +0 -1
  1047. package/client/frameDebug.ts +0 -29
  1048. package/common/deepObjectify.ts +0 -42
  1049. package/common/dynamicRecord.ts +0 -12
  1050. package/common/formatPhone.ts +0 -7
  1051. package/common/getAllPropertyDescriptors.ts +0 -13
  1052. package/common/lowerlize.ts +0 -4
  1053. package/common/mergeVersion.ts +0 -10
  1054. package/common/pathGet.ts +0 -13
  1055. package/common/pathGetLoose.ts +0 -31
  1056. package/common/pathSet.ts +0 -28
  1057. package/common/plainFieldsOf.ts +0 -13
  1058. package/common/randomPicks.ts +0 -12
  1059. package/common/websocketAuth.ts +0 -24
  1060. package/constant/deserialize.ts +0 -98
  1061. package/dictionary/agentTurn.dictionary.ts +0 -33
  1062. package/document/schema.ts +0 -24
  1063. package/fetch/fetchType/clientSignal.type.ts +0 -22
  1064. package/local/apps/akan/akan-local.db +0 -0
  1065. package/local/apps/akan/akan-local.db-shm +0 -0
  1066. package/local/apps/akan/akan-local.db-wal +0 -0
  1067. package/local/apps/akan/akan-local_solid.db +0 -0
  1068. package/local/apps/akan/akan-local_solid.db-shm +0 -0
  1069. package/local/apps/akan/akan-local_solid.db-wal +0 -0
  1070. package/local/apps/serverLifecycle/serverLifecycle-local.db +0 -0
  1071. package/local/apps/serverLifecycle/serverLifecycle-local.db-shm +0 -0
  1072. package/local/apps/serverLifecycle/serverLifecycle-local.db-wal +0 -0
  1073. package/local/apps/serverLifecycle/serverLifecycle-local_solid.db +0 -0
  1074. package/local/apps/serverLifecycle/serverLifecycle-local_solid.db-shm +0 -0
  1075. package/local/apps/serverLifecycle/serverLifecycle-local_solid.db-wal +0 -0
  1076. package/server/artifact/manifestTypes.ts +0 -19
  1077. package/server/assetEncoding.ts +0 -27
  1078. package/server/consoleEvaluator.ts +0 -51
  1079. package/server/di/index.ts +0 -4
  1080. package/server/di/resolveAdaptorHierarchy.ts +0 -91
  1081. package/server/di/resolveServiceHierarchy.ts +0 -47
  1082. package/server/hmr/changeBatch.ts +0 -14
  1083. package/server/hmr/index.ts +0 -4
  1084. package/server/metadata.tsx +0 -198
  1085. package/server/proxy/akanResponse.ts +0 -16
  1086. package/server/proxy/bunRequestFields.ts +0 -12
  1087. package/server/rscPartialCommit.ts +0 -3
  1088. package/server/rscPatchSafety.ts +0 -57
  1089. package/server/rscWorkerReplay.ts +0 -49
  1090. package/server/subRouteIndexDocument.tsx +0 -61
  1091. package/service/predefinedAdaptor/deepseekLlm.ts +0 -82
  1092. package/service/predefinedAdaptor/sqlDescriptor.ts +0 -25
  1093. package/store/agent/storeSurface.ts +0 -28
  1094. package/store/agent/types.ts +0 -16
  1095. package/store/agentic/useFileFieldTool.ts +0 -221
  1096. package/store/stateInfo.ts +0 -66
  1097. package/test/playwright.config.base.ts +0 -48
  1098. package/test/playwright.pageAgent.ts +0 -41
  1099. package/test/sample.ts +0 -19
  1100. package/types/client/fetch.d.ts +0 -1
  1101. package/types/client/frameDebug.d.ts +0 -3
  1102. package/types/common/deepObjectify.d.ts +0 -6
  1103. package/types/common/dynamicRecord.d.ts +0 -14
  1104. package/types/common/formatPhone.d.ts +0 -2
  1105. package/types/common/getAllPropertyDescriptors.d.ts +0 -5
  1106. package/types/common/isPhoneNumber.d.ts +0 -2
  1107. package/types/common/lowerlize.d.ts +0 -2
  1108. package/types/common/mergeVersion.d.ts +0 -10
  1109. package/types/common/pathGet.d.ts +0 -1
  1110. package/types/common/pathGetLoose.d.ts +0 -8
  1111. package/types/common/pathSet.d.ts +0 -3
  1112. package/types/common/plainFieldsOf.d.ts +0 -6
  1113. package/types/common/randomPicks.d.ts +0 -1
  1114. package/types/common/splitVersion.d.ts +0 -11
  1115. package/types/common/websocketAuth.d.ts +0 -19
  1116. package/types/common/websocketBinaryFrame.d.ts +0 -17
  1117. package/types/constant/deserialize.d.ts +0 -10
  1118. package/types/dictionary/agentTurn.dictionary.d.ts +0 -1
  1119. package/types/document/schema.d.ts +0 -5
  1120. package/types/fetch/fetchType/clientSignal.type.d.ts +0 -16
  1121. package/types/server/artifact/manifestTypes.d.ts +0 -16
  1122. package/types/server/assetEncoding.d.ts +0 -7
  1123. package/types/server/consoleEvaluator.d.ts +0 -2
  1124. package/types/server/di/index.d.ts +0 -4
  1125. package/types/server/di/resolveAdaptorHierarchy.d.ts +0 -21
  1126. package/types/server/di/resolveServiceHierarchy.d.ts +0 -13
  1127. package/types/server/di.d.ts +0 -1
  1128. package/types/server/hmr/changeBatch.d.ts +0 -13
  1129. package/types/server/hmr/index.d.ts +0 -4
  1130. package/types/server/hmr.d.ts +0 -1
  1131. package/types/server/metadata.d.ts +0 -22
  1132. package/types/server/proxy/akanResponse.d.ts +0 -7
  1133. package/types/server/proxy/bunRequestFields.d.ts +0 -1
  1134. package/types/server/rscPartialCommit.d.ts +0 -1
  1135. package/types/server/rscPatchSafety.d.ts +0 -8
  1136. package/types/server/rscWorkerReplay.d.ts +0 -32
  1137. package/types/server/subRouteIndexDocument.d.ts +0 -8
  1138. package/types/service/predefinedAdaptor/deepseekLlm.d.ts +0 -19
  1139. package/types/service/predefinedAdaptor/sqlDescriptor.d.ts +0 -5
  1140. package/types/store/agent/storeSurface.d.ts +0 -14
  1141. package/types/store/agent/types.d.ts +0 -15
  1142. package/types/store/agentic/useFileFieldTool.d.ts +0 -41
  1143. package/types/store/stateInfo.d.ts +0 -23
  1144. package/types/test/playwright.config.base.d.ts +0 -9
  1145. package/types/test/playwright.pageAgent.d.ts +0 -12
  1146. package/types/test/sample.d.ts +0 -15
  1147. package/types/ui/Agent/Context.d.ts +0 -13
  1148. package/types/ui/Agent/Mic.d.ts +0 -8
  1149. package/types/ui/Agent/Section.d.ts +0 -10
  1150. package/types/ui/Agent/StateKey.d.ts +0 -16
  1151. package/types/ui/Agent/Tool.d.ts +0 -15
  1152. package/types/ui/Agent/Transcript.d.ts +0 -13
  1153. package/types/ui/Agent/markdownSpans.d.ts +0 -2
  1154. package/types/ui/Agent/sessionHistory.d.ts +0 -14
  1155. package/types/ui/Agent/sessionView.d.ts +0 -15
  1156. package/types/ui/Dialog/Action.d.ts +0 -5
  1157. package/types/ui/Dialog/Close.d.ts +0 -6
  1158. package/types/ui/Dialog/Content.d.ts +0 -6
  1159. package/types/ui/Dialog/Title.d.ts +0 -5
  1160. package/types/ui/Dialog/Trigger.d.ts +0 -6
  1161. package/types/ui/Dialog/context.d.ts +0 -18
  1162. package/types/ui/Layout/LeftSider.d.ts +0 -11
  1163. package/types/ui/Layout/RightSider.d.ts +0 -12
  1164. package/types/ui/Layout/Template.d.ts +0 -7
  1165. package/types/ui/Layout/TopLeftAction.d.ts +0 -6
  1166. package/types/ui/Layout/Unit.d.ts +0 -9
  1167. package/types/ui/Layout/View.d.ts +0 -8
  1168. package/types/ui/Layout/Zone.d.ts +0 -6
  1169. package/types/ui/Link/Back.d.ts +0 -7
  1170. package/types/ui/Link/Close.d.ts +0 -7
  1171. package/types/ui/Link/CsrLink.d.ts +0 -2
  1172. package/types/ui/Link/Lang.d.ts +0 -8
  1173. package/types/ui/Link/SsrLink.d.ts +0 -2
  1174. package/types/ui/Link/types.d.ts +0 -50
  1175. package/types/ui/Loading/Area.d.ts +0 -9
  1176. package/types/ui/Loading/Button.d.ts +0 -7
  1177. package/types/ui/Loading/Input.d.ts +0 -7
  1178. package/types/ui/Model/LoadInit.d.ts +0 -10
  1179. package/types/ui/Model/LoadView.d.ts +0 -10
  1180. package/types/ui/Reference/Collapse.d.ts +0 -11
  1181. package/types/ui/Reference/Summary.d.ts +0 -13
  1182. package/types/ui/Reference/Toolbar.d.ts +0 -21
  1183. package/types/ui/Reference/dictText.d.ts +0 -6
  1184. package/types/ui/Signal/Message.d.ts +0 -23
  1185. package/types/ui/Signal/PubSub.d.ts +0 -24
  1186. package/types/ui/Signal/Request.d.ts +0 -8
  1187. package/types/ui/System/DevModeToggle.d.ts +0 -1
  1188. package/types/ui/System/Gtag.d.ts +0 -4
  1189. package/types/ui/System/frameCssVars.d.ts +0 -5
  1190. package/types/ui/Tab/Menu.d.ts +0 -12
  1191. package/types/ui/Tab/Menus.d.ts +0 -6
  1192. package/types/ui/Tab/Panel.d.ts +0 -8
  1193. package/types/ui/Tab/context.d.ts +0 -11
  1194. package/types/ui/UiOverride/Provider.d.ts +0 -15
  1195. package/types/ui/UiOverride/createOverridable.d.ts +0 -9
  1196. package/types/ui/UiOverride/useUiOverride.d.ts +0 -7
  1197. package/types/ui/UiOverride/useUiRecipe.d.ts +0 -8
  1198. package/types/webkit/createSitemapPage.d.ts +0 -4
  1199. package/ui/Agent/Context.tsx +0 -49
  1200. package/ui/Agent/Mic.tsx +0 -27
  1201. package/ui/Agent/Section.tsx +0 -24
  1202. package/ui/Agent/StateKey.tsx +0 -46
  1203. package/ui/Agent/Tool.tsx +0 -59
  1204. package/ui/Agent/Transcript.tsx +0 -33
  1205. package/ui/Agent/markdownSpans.tsx +0 -49
  1206. package/ui/Agent/sessionHistory.ts +0 -62
  1207. package/ui/Agent/sessionView.ts +0 -38
  1208. package/ui/Dialog/Action.tsx +0 -15
  1209. package/ui/Dialog/Close.tsx +0 -18
  1210. package/ui/Dialog/Content.tsx +0 -11
  1211. package/ui/Dialog/Title.tsx +0 -15
  1212. package/ui/Dialog/Trigger.tsx +0 -18
  1213. package/ui/Dialog/context.ts +0 -32
  1214. package/ui/Layout/LeftSider.tsx +0 -43
  1215. package/ui/Layout/RightSider.tsx +0 -47
  1216. package/ui/Layout/Template.tsx +0 -11
  1217. package/ui/Layout/TopLeftAction.tsx +0 -28
  1218. package/ui/Layout/Unit.tsx +0 -19
  1219. package/ui/Layout/View.tsx +0 -12
  1220. package/ui/Layout/Zone.tsx +0 -10
  1221. package/ui/Link/Back.tsx +0 -15
  1222. package/ui/Link/Close.tsx +0 -20
  1223. package/ui/Link/CsrLink.tsx +0 -46
  1224. package/ui/Link/Lang.tsx +0 -16
  1225. package/ui/Link/SsrLink.tsx +0 -72
  1226. package/ui/Link/types.ts +0 -55
  1227. package/ui/Loading/Area.tsx +0 -27
  1228. package/ui/Loading/Button.tsx +0 -15
  1229. package/ui/Loading/Input.tsx +0 -15
  1230. package/ui/Model/LoadInit.tsx +0 -11
  1231. package/ui/Model/LoadView.tsx +0 -11
  1232. package/ui/Reference/Collapse.tsx +0 -26
  1233. package/ui/Reference/Summary.tsx +0 -25
  1234. package/ui/Reference/Toolbar.tsx +0 -44
  1235. package/ui/Reference/dictText.ts +0 -9
  1236. package/ui/Signal/Message.tsx +0 -215
  1237. package/ui/Signal/PubSub.tsx +0 -201
  1238. package/ui/Signal/Request.tsx +0 -11
  1239. package/ui/System/DevModeToggle.tsx +0 -19
  1240. package/ui/System/Gtag.tsx +0 -69
  1241. package/ui/System/frameCssVars.ts +0 -25
  1242. package/ui/Tab/Menu.tsx +0 -70
  1243. package/ui/Tab/Menus.tsx +0 -13
  1244. package/ui/Tab/Panel.tsx +0 -25
  1245. package/ui/Tab/context.ts +0 -20
  1246. package/ui/UiOverride/Provider.tsx +0 -26
  1247. package/ui/UiOverride/createOverridable.tsx +0 -25
  1248. package/ui/UiOverride/useUiOverride.ts +0 -15
  1249. package/ui/UiOverride/useUiRecipe.ts +0 -15
  1250. package/webkit/createSitemapPage.ts +0 -4
@@ -30,22 +30,13 @@ import { FetchHandle } from "./fetchHandle";
30
30
  import { HttpClient } from "./httpClient";
31
31
  import type { ErrorConstructor } from "./remoteError";
32
32
  import { SliceInitHandle } from "./sliceInitHandle";
33
+ import { expandQueryArgs, normalizeQueryArgs } from "./sliceQueryArgs";
33
34
  import { WsClient } from "./wsClient";
34
35
 
35
36
  type FetchHandler = (...args: unknown[]) => PromiseOrObject<unknown>;
36
37
  type FetchHandlerFactory = () => FetchHandler;
37
38
  type UnknownRecord = Record<string, unknown>;
38
39
 
39
- const isNullableArg = (arg: SerializedArg) => arg.nullable ?? arg.type === "search";
40
-
41
- const normalizeQueryArgs = (queryArgs: unknown[], args: SerializedArg[]) => {
42
- let length = Math.min(queryArgs.length, args.length);
43
- while (length > 0 && isNullableArg(args[length - 1]) && queryArgs[length - 1] == null) length--;
44
- return queryArgs.slice(0, length);
45
- };
46
-
47
- const expandQueryArgs = (queryArgs: unknown[], args: SerializedArg[]) => args.map((_, idx) => queryArgs[idx]);
48
-
49
40
  export type FetchProxy<
50
41
  FetchType = unknown,
51
42
  SliceMetaObj extends Record<string, SliceMeta> = Record<never, never>,
@@ -84,7 +75,6 @@ type ClientSignalMap<SigType extends { fetch: any }> = {
84
75
  : never;
85
76
  };
86
77
 
87
- /** Runtime fetch client that registers serialized Akan signals as HTTP/WebSocket methods. */
88
78
  export class FetchClient {
89
79
  static {
90
80
  ConstantRegistry.setScalar(agentTurnConstant.refName, agentTurnConstant);
@@ -96,7 +86,6 @@ export class FetchClient {
96
86
  readonly handler: Record<string, FetchHandler>;
97
87
  readonly slice: Record<string, SliceMeta> = {};
98
88
  readonly sortKeyMap = new Map<string, string[]>();
99
- /** refName → sort key → the field map that key orders by. Read by live insertion, which has to place a row. */
100
89
  readonly sortValueMap = new Map<string, { [key: string]: { [path: string]: 1 | -1 } }>();
101
90
  readonly filterQueryMap = new Map<string, { [queryKey: string]: SerializedArg[] }>();
102
91
  readonly #originWs = new Map<string, WsClient>();
@@ -119,12 +108,7 @@ export class FetchClient {
119
108
  this.handler = this.#makeHandlerProxy();
120
109
  this.applySignal(serializedSignal);
121
110
  }
122
- /**
123
- * Every signal any client in this process has applied, which is the whole callable surface of the app.
124
- *
125
- * A copy, because this is the registry each client merges its own signals into and a reader that mutated it
126
- * would change what the next client applies. Read by the agent catalogue, which needs the argument schemas.
127
- */
111
+ /** A copy of every signal any client in this process applied, so a reader cannot change what the next applies. */
128
112
  static get sharedSerializedSignal(): { [key: string]: SerializedSignal } {
129
113
  return { ...sharedSignalRegistry.signal };
130
114
  }
@@ -173,6 +157,10 @@ export class FetchClient {
173
157
  }
174
158
  : signal;
175
159
  }
160
+ /** For calls neither the caller nor the endpoint budgets; `false` waits as long as the runtime will (minutes). */
161
+ setTimeout(timeout?: number | false) {
162
+ this.http.setTimeout(timeout);
163
+ }
176
164
  setErrorConstructor(ErrorCls?: ErrorConstructor) {
177
165
  this.ErrorCls = ErrorCls;
178
166
  this.http.setErrorConstructor(ErrorCls);
@@ -197,10 +185,11 @@ export class FetchClient {
197
185
  this.#registerSlice(refName, suffix, slice, signal.prefix);
198
186
  }
199
187
  if (signal.filter) {
200
-
188
+
201
189
  const filter = this.serializedSignal[refName]?.filter ?? signal.filter;
202
- this.#registerFilterSortKey(refName, filter.sortKeys, filter.sorts);
203
- this.#registerFilterQuery(refName, filter.filter);
190
+ this.sortKeyMap.set(refName, filter.sortKeys);
191
+ if (filter.sorts) this.sortValueMap.set(refName, filter.sorts);
192
+ this.filterQueryMap.set(refName, filter.filter);
204
193
  }
205
194
  }
206
195
  return this;
@@ -225,16 +214,10 @@ export class FetchClient {
225
214
  #getOrCreateHandler(key: string): FetchHandler | undefined {
226
215
  const current = this.#handlerStore[key];
227
216
  if (current) return current;
217
+ if (!this.#handlerFactory.has(key)) this.#syncSharedRegistry();
228
218
  const factory = this.#handlerFactory.get(key);
229
- if (factory) {
230
- const handler = factory();
231
- this.#handlerStore[key] = handler;
232
- return handler;
233
- }
234
- this.#syncSharedRegistry();
235
- const syncedFactory = this.#handlerFactory.get(key);
236
- if (!syncedFactory) return undefined;
237
- const handler = syncedFactory();
219
+ if (!factory) return undefined;
220
+ const handler = factory();
238
221
  this.#handlerStore[key] = handler;
239
222
  return handler;
240
223
  }
@@ -269,7 +252,7 @@ export class FetchClient {
269
252
  this.ws.setJwt(jwt);
270
253
  for (const ws of this.#originWs.values()) ws.setJwt(jwt);
271
254
  }
272
-
255
+
273
256
  #resolveWs(origin?: string) {
274
257
  if (!origin) return this.ws;
275
258
  const target = origin.replace(/\/+$/, "");
@@ -295,29 +278,26 @@ export class FetchClient {
295
278
  }
296
279
  return this.jwt ? { Authorization: `Bearer ${this.jwt}` } : {};
297
280
  }
298
- #registerFilterSortKey(refName: string, sortKeys: string[], sorts?: { [key: string]: { [path: string]: 1 | -1 } }) {
299
- this.sortKeyMap.set(refName, sortKeys);
300
- if (sorts) this.sortValueMap.set(refName, sorts);
301
- }
302
- #registerFilterQuery(refName: string, filter: { [queryKey: string]: SerializedArg[] }) {
303
- this.filterQueryMap.set(refName, filter);
304
- }
305
281
  #makeHttpFn(key: string, endpoint: SerializedEndpoint, prefix?: string) {
306
282
  const argLength = endpoint.args.length;
307
283
  const serializerMap = this.#makeArgSerializer(endpoint.args);
308
284
  const parseReturn = this.#makeReturnParser(endpoint.returns);
309
285
  const { bodyArgs, uploadArgs } = FetchClient.classifyHttpArgs(endpoint.args);
286
+ const requestOf = (argData: unknown[]) => {
287
+ const args = argData.slice(0, argLength);
288
+ const option = argData[argLength] as FetchPolicy | undefined;
289
+ const argMap = new Map(serializerMap.entries().map(([key, serializer], idx) => [key, serializer(args[idx])]));
290
+ return { option, argMap, url: FetchClient.makeHttpUrl(key, endpoint, prefix, argMap) };
291
+ };
310
292
  switch (endpoint.type) {
311
- case "query": {
312
- const queryFn = async (...argData: unknown[]) => {
313
- const args = argData.slice(0, argLength);
314
- const option = argData[argLength] as FetchPolicy | undefined;
315
- const argMap = new Map(serializerMap.entries().map(([key, serializer], idx) => [key, serializer(args[idx])]));
316
- const url = FetchClient.makeHttpUrl(key, endpoint, prefix, argMap);
293
+ case "query":
294
+ return async (...argData: unknown[]) => {
295
+ const { option, argMap, url } = requestOf(argData);
317
296
  const headers = this.#makeAuthHeaders(option);
318
297
  const baseUrl = option?.origin;
319
-
320
- const requestQuery = () => this.http.get(url, { headers, baseUrl });
298
+ const timeout = option?.timeout ?? endpoint.timeout;
299
+
300
+ const requestQuery = () => this.http.get(url, { headers, baseUrl, timeout });
321
301
 
322
302
  const claim = baseUrl
323
303
  ? { value: requestQuery(), owned: true }
@@ -327,38 +307,27 @@ export class FetchClient {
327
307
  const payload = claim.owned ? response : FetchClient.#deepCopy(response);
328
308
  return parseReturn(payload, { crystalize: option?.crystalize ?? true });
329
309
  };
330
- return queryFn;
331
- }
332
- case "mutation": {
333
- const mutationFn = async (...argData: unknown[]) => {
334
- const args = argData.slice(0, argLength);
335
- const option = argData[argLength] as FetchPolicy | undefined;
336
- const argMap = new Map(serializerMap.entries().map(([key, serializer], idx) => [key, serializer(args[idx])]));
337
- const url = FetchClient.makeHttpUrl(key, endpoint, prefix, argMap);
310
+ case "mutation":
311
+ return async (...argData: unknown[]) => {
312
+ const { option, argMap, url } = requestOf(argData);
338
313
  const body = HttpClient.makeBody(bodyArgs, uploadArgs, argMap);
339
314
  const response = await this.http.send(endpoint.method ?? "POST", url, body, {
340
315
  headers: this.#makeAuthHeaders(option),
341
316
  baseUrl: option?.origin,
317
+ timeout: option?.timeout ?? endpoint.timeout,
342
318
  });
343
- const parsedReturn = parseReturn(response, { crystalize: option?.crystalize ?? true });
344
- return parsedReturn;
319
+ return parseReturn(response, { crystalize: option?.crystalize ?? true });
345
320
  };
346
- return mutationFn;
347
- }
348
321
  default:
349
322
  throw new Error(`Unsupported endpoint type: ${endpoint.type}`);
350
323
  }
351
324
  }
352
325
  #registerEndpoint(key: string, endpoint: SerializedEndpoint, prefix?: string) {
353
326
  switch (endpoint.type) {
354
- case "query": {
355
- this.#setHandlerFactory(key, () => this.#makeHttpFn(key, endpoint, prefix));
356
- return;
357
- }
358
- case "mutation": {
327
+ case "query":
328
+ case "mutation":
359
329
  this.#setHandlerFactory(key, () => this.#makeHttpFn(key, endpoint, prefix));
360
330
  return;
361
- }
362
331
  case "pubsub": {
363
332
  this.#setHandlerFactory(`subscribe${capitalize(key)}`, () => {
364
333
  const roomArgs = endpoint.args.filter((arg) => arg.type === "room");
@@ -454,11 +423,10 @@ export class FetchClient {
454
423
  modelId: `${refName}Id`,
455
424
  lightModel: `light${capRefName}`,
456
425
  };
457
-
458
426
  const createGuards = signal.createGuards ?? signal.cruGuards;
459
427
  const updateGuards = signal.updateGuards ?? signal.cruGuards;
460
428
  const removeGuards = signal.removeGuards ?? signal.cruGuards;
461
-
429
+
462
430
  const mcp = (verb: keyof NonNullable<SerializedSignal["mcp"]>) => ({
463
431
  ...(signal.mcp?.[verb] === false ? { mcp: false as const } : {}),
464
432
  ...(signal.agents?.[verb] === false ? { agents: false as const } : {}),
@@ -515,12 +483,8 @@ export class FetchClient {
515
483
  #registerModelBaseEndpoint(refName: string, signal: SerializedSignal) {
516
484
  const capRefName = capitalize(refName);
517
485
  const names = {
518
- createModel: `create${capRefName}`,
519
486
  updateModel: `update${capRefName}`,
520
- removeModel: `remove${capRefName}`,
521
487
  model: refName,
522
- modelId: `${refName}Id`,
523
- lightModel: `light${capRefName}`,
524
488
  viewModel: `view${capRefName}`,
525
489
  getModelView: `get${capRefName}View`,
526
490
  editModel: `edit${capRefName}`,
@@ -535,42 +499,28 @@ export class FetchClient {
535
499
 
536
500
  const anyCruGuards = signal.cruGuards ?? signal.createGuards ?? signal.updateGuards ?? signal.removeGuards;
537
501
  const updateGuards = signal.updateGuards ?? signal.cruGuards;
538
- if (anyCruGuards) {
502
+ if (signal.getGuards) {
539
503
  this.#setHandlerFactory(names.viewModel, () =>
540
504
  this.#makeModelHandleFn(refName, names.model, names.viewModel, `${refName}View`),
541
505
  );
542
- this.#setHandlerFactory(
543
- names.getModelView,
544
- () =>
545
- (async (id: string, option?: FetchPolicy) => {
546
- const modelFn = this.#requireHandler(names.model, names.getModelView);
547
- const modelObj = await modelFn(id, { ...option, crystalize: false });
548
- return { refName, [`${refName}Obj`]: modelObj, [`${refName}ViewAt`]: new Date() };
549
- }) as FetchHandler,
550
- );
506
+ this.#setHandlerFactory(names.getModelView, () => this.#makeModelObjFn(refName, names.getModelView));
507
+ }
508
+ if (signal.getGuards && anyCruGuards) {
551
509
  this.#setHandlerFactory(names.editModel, () =>
552
510
  this.#makeModelHandleFn(refName, names.model, names.editModel, `${refName}Edit`),
553
511
  );
512
+ this.#setHandlerFactory(names.getModelEdit, () => this.#makeModelObjFn(refName, names.getModelEdit));
513
+ }
514
+ if (updateGuards) {
554
515
  this.#setHandlerFactory(
555
- names.getModelEdit,
516
+ names.mergeModel,
556
517
  () =>
557
- (async (id: string, option?: FetchPolicy) => {
558
- const modelFn = this.#requireHandler(names.model, names.getModelEdit);
559
- const modelObj = await modelFn(id, { ...option, crystalize: false });
560
- return { refName, [`${refName}Obj`]: modelObj, [`${refName}ViewAt`]: new Date() };
518
+ (async (modelOrId: string | { id: string }, data: UnknownRecord, option?: FetchPolicy) => {
519
+ const id = typeof modelOrId === "string" ? modelOrId : modelOrId.id;
520
+ const updateFn = this.#requireHandler(names.updateModel, names.mergeModel);
521
+ return await updateFn(id, data, option);
561
522
  }) as FetchHandler,
562
523
  );
563
- if (updateGuards) {
564
- this.#setHandlerFactory(
565
- names.mergeModel,
566
- () =>
567
- (async (modelOrId: string | { id: string }, data: UnknownRecord, option?: FetchPolicy) => {
568
- const id = typeof modelOrId === "string" ? modelOrId : modelOrId.id;
569
- const updateFn = this.#requireHandler(names.updateModel, names.mergeModel);
570
- return await updateFn(id, data, option);
571
- }) as FetchHandler,
572
- );
573
- }
574
524
  }
575
525
 
576
526
  this.#setHandlerFactory(
@@ -595,11 +545,13 @@ export class FetchClient {
595
545
  );
596
546
  }
597
547
 
598
- /**
599
- * `view<Model>` and `edit<Model>` differ only in the key their payload lands under, so they share one read.
600
- * The full model is built lazily for the same reason a slice's list is: a route that only hands the payload to
601
- * `Load.View` never reads it, and `ViewAt` is stamped once so two reads agree.
602
- */
548
+ #makeModelObjFn(refName: string, callerKey: string) {
549
+ return (async (id: string, option?: FetchPolicy) => {
550
+ const modelObj = await this.#requireHandler(refName, callerKey)(id, { ...option, crystalize: false });
551
+ return { refName, [`${refName}Obj`]: modelObj, [`${refName}ViewAt`]: new Date() };
552
+ }) as FetchHandler;
553
+ }
554
+
603
555
  #makeModelHandleFn(refName: string, modelKey: string, callerKey: string, payloadKey: string) {
604
556
  return ((id: string, option?: FetchPolicy) => {
605
557
  const cnst = ConstantRegistry.getDatabase(refName);
@@ -635,7 +587,7 @@ export class FetchClient {
635
587
  insight: `${refName}Insight${capSuffix}`,
636
588
  live: `${refName}Live${capSuffix}`,
637
589
  };
638
-
590
+
639
591
  const mcp = {
640
592
  ...(slice.mcp === false ? { mcp: false as const } : {}),
641
593
  ...(slice.agents === false ? { agents: false as const } : {}),
@@ -679,7 +631,7 @@ export class FetchClient {
679
631
  };
680
632
 
681
633
  const endpoint = FetchClient.getEndpointFromSlice(refName, suffix, slice);
682
-
634
+
683
635
  Object.entries(endpoint).forEach(([key, value]) => {
684
636
  this.#registerEndpoint(key, value, prefix);
685
637
  });
@@ -827,7 +779,15 @@ export class FetchClient {
827
779
  connect = false,
828
780
  base,
829
781
  Err,
830
- }: { origin?: string; connect?: boolean; base?: FetchProxy; Err?: ErrorConstructor } = {},
782
+ timeout,
783
+ }: {
784
+ origin?: string;
785
+ connect?: boolean;
786
+ base?: FetchProxy;
787
+ Err?: ErrorConstructor;
788
+ /** This app's own default request budget, for calls no endpoint and no caller gave one. */
789
+ timeout?: number | false;
790
+ } = {},
831
791
  ): {
832
792
  sig: ClientSignalMap<SigType>;
833
793
  fetch: SigType["fetch"];
@@ -838,6 +798,7 @@ export class FetchClient {
838
798
  const proxy =
839
799
  shared ??
840
800
  FetchClient.#makeProxy<unknown, Record<string, SliceMeta>>(new FetchClient(origin, {}, serializedSignal, Err));
801
+ if (timeout !== undefined) proxy.instance.setTimeout(timeout);
841
802
  if (connect) proxy.instance.connect();
842
803
  const sig = {} as any;
843
804
  Object.entries(serializedSignal).forEach(([refName, serializedSignal]) => {
@@ -865,7 +826,7 @@ export class FetchClient {
865
826
  if (handler) return handler;
866
827
  }
867
828
  const value = (instance as unknown as Record<PropertyKey, unknown>)[prop];
868
-
829
+
869
830
  return typeof value === "function" ? value.bind(instance) : value;
870
831
  },
871
832
  }) as FetchProxy<FetchType, SliceMetaObj>;
@@ -1,18 +1,10 @@
1
1
  type FieldFactories<Handle> = { [Key in keyof Handle]: () => Handle[Key] };
2
2
 
3
- /**
4
- * A fetch result that is both awaitable and destructurable.
5
- *
6
- * `await` gives the object the helper has always given, so every existing call site reads unchanged. Reading a
7
- * field off the un-awaited result gives that field's own promise instead, so a route can hand each one to the
8
- * section that renders it and let the slowest arrive last rather than holding the whole page.
9
- */
3
+ /** Awaitable as the shape a helper always gave, and destructurable into one promise per field. */
10
4
  export class FetchHandle {
11
5
  /**
12
- * @param requests the calls already in flight. Each gets a swallowing handler so a field nobody reads cannot
13
- * surface as an unhandled rejection; the handle's own `then` is what reports one.
14
- * @param settle builds the awaited shape — its own fields stay lazy, so awaiting costs nothing extra.
15
- * @param fields one factory per field of the un-awaited shape, memoized on first read.
6
+ * Each of `requests` gets a swallowing handler, so a field nobody reads cannot surface as an unhandled rejection;
7
+ * `fields` factories are memoized on first read.
16
8
  */
17
9
  static of<Awaited extends object, Handle extends object>(
18
10
  requests: Promise<unknown>[],
@@ -39,7 +31,7 @@ export class FetchHandle {
39
31
  },
40
32
  });
41
33
  }
42
-
34
+
43
35
  return Object.defineProperties(handle, {
44
36
 
45
37
  then: { value: (...args: unknown[]) => Reflect.apply(resolve().then, resolve(), args) },
@@ -24,14 +24,7 @@ const transportErrorKeyMap = {
24
24
  const serverUnreachableKey = "base.error.serverUnreachable";
25
25
  const unexpectedResponseKey = "base.error.unexpectedResponse";
26
26
  const transportDetailLimit = 200;
27
- /**
28
- * How long a call waits before giving up.
29
- *
30
- * Nothing else bounds it: a gateway answers a dead upstream with a 504, but a solo process has no gateway and a
31
- * severed connection produces no response at all — the request then sits until the browser's own limit, which is
32
- * minutes. The dictionary already has the wording for a slow server (`gatewayTimeout`), so this is the client
33
- * side of an answer that only existed for one deployment shape.
34
- */
27
+
35
28
  const DEFAULT_TIMEOUT_MS = 30_000;
36
29
 
37
30
  export class HttpClient {
@@ -49,13 +42,14 @@ export class HttpClient {
49
42
  setErrorConstructor(ErrorCls?: ErrorConstructor) {
50
43
  this.ErrorCls = ErrorCls;
51
44
  }
52
- #resolveBaseUrl(baseUrl?: string) {
53
- return (baseUrl ?? this.baseUrl).replace(/\/$/, "");
45
+ /** The budget every call that names none takes. `false` waits as long as the runtime will. */
46
+ setTimeout(timeout?: number | false) {
47
+ this.#timeout = timeout;
54
48
  }
55
49
  #resolveUrl(url: string, options: FetchOptions) {
56
- return `${this.#resolveBaseUrl(options.baseUrl)}${url}`;
50
+ return `${(options.baseUrl ?? this.baseUrl).replace(/\/$/, "")}${url}`;
57
51
  }
58
-
52
+
59
53
  #makeHeaders(headers: Record<string, string>, options: FetchOptions) {
60
54
  return { Accept: "application/json", ...this.#headers, ...headers, ...options.headers };
61
55
  }
@@ -67,7 +61,7 @@ export class HttpClient {
67
61
  );
68
62
  }
69
63
  #makeReqContent(data: FormData | Record<string, unknown>): { body: BodyInit; headers: Record<string, string> } {
70
-
64
+
71
65
  if (data instanceof FormData) return { body: data, headers: {} };
72
66
  return { body: JSON.stringify(data), headers: { "Content-Type": "application/json" } };
73
67
  }
@@ -108,30 +102,22 @@ export class HttpClient {
108
102
 
109
103
  async #request<Returns>(url: string, init: RequestInit, options: FetchOptions = {}): Promise<Returns> {
110
104
  const res = await this.#fetch(url, this.#withTimeout(init, options));
111
- return await this.#readJsonResponse<Returns>(res);
105
+ const body = await this.#readBody(res);
106
+ if (res.ok) return body as Returns;
107
+ throw this.#restoreError(body, res.status);
112
108
  }
113
109
 
114
- /**
115
- * An upload gets no deadline of its own: a large file on a slow uplink is a long request that is working, and
116
- * the request body is the only thing this side can tell that from. Everything else takes the default unless
117
- * the caller named one.
118
- */
119
110
  #withTimeout(init: RequestInit, options: FetchOptions): RequestInit {
120
111
  const timeout = options.timeout ?? (init.body instanceof FormData ? false : (this.#timeout ?? DEFAULT_TIMEOUT_MS));
121
112
  if (timeout === false || !Number.isFinite(timeout) || timeout <= 0) return init;
122
113
  return { ...init, signal: AbortSignal.timeout(timeout) };
123
114
  }
124
115
 
125
- /**
126
- * `fetch` rejects only when no response arrived at all — a refused connection, a DNS failure, a socket
127
- * dropped mid-flight. That is the server being unreachable, not an error this API reported, so it is
128
- * restored as one rather than surfacing the runtime's own `TypeError: Failed to fetch`.
129
- */
130
116
  async #fetch(url: string, init: RequestInit) {
131
117
  try {
132
118
  return await fetch(url, init);
133
119
  } catch (error) {
134
-
120
+
135
121
  if (error instanceof Error && error.name === "TimeoutError")
136
122
  throw this.#restoreError({ error: transportErrorKeyMap[408], data: { status: 408 } }, 408);
137
123
  if (error instanceof Error && error.name === "AbortError") throw error;
@@ -139,17 +125,6 @@ export class HttpClient {
139
125
  }
140
126
  }
141
127
 
142
- async #readJsonResponse<Returns>(res: Response): Promise<Returns> {
143
- const body = await this.#readBody(res);
144
- if (res.ok) return body as Returns;
145
- throw this.#restoreError(body, res.status);
146
- }
147
-
148
- /**
149
- * A proxy answers a restarting upstream with a page of its own — nginx's `504 Gateway Time-out` HTML,
150
- * the federation gateway's plain-text 503. That body is not this API's, so parsing it would surface the
151
- * parser's complaint (`Unexpected token '<'`) instead of the fact that the server is down.
152
- */
153
128
  async #readBody(res: Response) {
154
129
  if (jsonContentType.test(res.headers.get("content-type") ?? "")) {
155
130
  try {
@@ -189,9 +164,9 @@ export class HttpClient {
189
164
  searchArgs.forEach((arg) => {
190
165
  const argValue = argMap.get(arg.name);
191
166
  if (argValue === null || argValue === undefined) return;
192
-
167
+
193
168
  if (arg.refName === "Any") {
194
-
169
+
195
170
  const encoded = JSON.stringify(argValue);
196
171
  if (encoded !== undefined) searchParams.set(arg.name, encoded);
197
172
  } else if (arg.arrDepth && Array.isArray(argValue))
@@ -203,45 +178,37 @@ export class HttpClient {
203
178
  const searchPath = searchParams.size > 0 ? `?${searchParams.toString()}` : "";
204
179
  const paramedPath = path.replace(/:(\w+)/g, (match, p1) => {
205
180
  const value = argMap.get(p1);
206
- return value === null || value === undefined ? match : String(value);
181
+ return value === null || value === undefined ? match : encodeURIComponent(String(value));
207
182
  });
208
183
  return `${paramedPath}${searchPath}`;
209
184
  }
210
-
185
+
211
186
  static #toUploadValues(argValue: unknown): (Blob | string)[] {
212
187
  if (Array.isArray(argValue)) return argValue as (Blob | string)[];
213
188
  if (typeof FileList !== "undefined" && argValue instanceof FileList) return Array.from(argValue);
214
189
  return [argValue as Blob | string];
215
190
  }
216
191
  static makeBody(bodyArgs: SerializedArg[], uploadArgs: SerializedArg[], argMap: Map<string, unknown>) {
217
- if (uploadArgs.length > 0) {
218
- const formData = new FormData();
219
- uploadArgs.forEach((arg) => {
220
- const argValue = argMap.get(arg.name);
221
- if (arg.nullable && (argValue === null || argValue === undefined)) return;
222
- if (!arg.nullable && (argValue === null || argValue === undefined))
223
- throw new Error(`Argument ${arg.name} is required`);
224
- HttpClient.#toUploadValues(argValue).forEach((value) => {
225
- formData.append(arg.name, value);
226
- });
227
- });
228
- bodyArgs.forEach((arg) => {
229
- const argValue = argMap.get(arg.name);
230
- if (arg.nullable && (argValue === null || argValue === undefined)) return;
231
- if (!arg.nullable && (argValue === null || argValue === undefined))
232
- throw new Error(`Argument ${arg.name} is required`);
233
- formData.append(arg.name, typeof argValue === "string" ? argValue : JSON.stringify(argValue));
234
- });
235
- return formData;
236
- } else {
237
- const body: Record<string, unknown> = {};
238
- bodyArgs.forEach((arg) => {
239
- const argValue = argMap.get(arg.name);
240
- if (!arg.nullable && (argValue === null || argValue === undefined))
241
- throw new Error(`Argument ${arg.name} is required`);
242
- body[arg.name] = argValue;
192
+ const valueOf = (arg: SerializedArg) => {
193
+ const argValue = argMap.get(arg.name);
194
+ if (!arg.nullable && (argValue === null || argValue === undefined))
195
+ throw new Error(`Argument ${arg.name} is required`);
196
+ return argValue;
197
+ };
198
+ if (!uploadArgs.length) return Object.fromEntries(bodyArgs.map((arg) => [arg.name, valueOf(arg)]));
199
+ const formData = new FormData();
200
+ uploadArgs.forEach((arg) => {
201
+ const argValue = valueOf(arg);
202
+ if (argValue === null || argValue === undefined) return;
203
+ HttpClient.#toUploadValues(argValue).forEach((value) => {
204
+ formData.append(arg.name, value);
243
205
  });
244
- return body;
245
- }
206
+ });
207
+ bodyArgs.forEach((arg) => {
208
+ const argValue = valueOf(arg);
209
+ if (argValue === null || argValue === undefined) return;
210
+ formData.append(arg.name, typeof argValue === "string" ? argValue : JSON.stringify(argValue));
211
+ });
212
+ return formData;
246
213
  }
247
214
  }
@@ -22,14 +22,8 @@ export interface ErrorConstructor {
22
22
  }
23
23
 
24
24
  /**
25
- * Rebuilds what a remote process reported: the caller's own `Err` when this client was given one, and a
26
- * duck-typed `Error` carrying the same payload otherwise.
27
- *
28
- * The `toJSON` is what makes the second case rethrowable. A server process that calls another with `{ origin }`
29
- * and lets the failure propagate is answered by `SignalContext.try`, which forwards a payload only when the
30
- * thrown value carries both `statusCode` and `toJSON`; anything else is this repo's own bug and is generalized
31
- * to `Internal Server Error`. Without it the hop loses the dictionary key and its data, and the browser toasts
32
- * the generalization instead of the sentence the remote endpoint chose.
25
+ * The caller's own `Err` when given one, else a duck-typed `Error` with the same payload, whose `toJSON` lets
26
+ * `SignalContext.try` forward the remote key and data rather than generalize to `Internal Server Error`.
33
27
  */
34
28
  export const restoreRemoteError = (
35
29
  body: unknown,
@@ -21,11 +21,8 @@ export interface SliceInitInput {
21
21
  }
22
22
 
23
23
  /**
24
- * The two calls a slice's `init` makes and the three values callers read off them.
25
- *
26
- * The list does not wait for the aggregate: `x<Slice>List` resolves as soon as the rows land, while
27
- * `x<Slice>Init` — which carries `lastPageOf<Model>` and therefore needs the count — waits for both. Every
28
- * derived value is memoized, so the awaited shape and the un-awaited handle hand out the same instances.
24
+ * `x<Slice>List` resolves when the rows land; `x<Slice>Init` needs the count (`lastPageOf<Model>`) and waits for
25
+ * both. Derived values are memoized, so the awaited shape and the handle share instances.
29
26
  */
30
27
  export class SliceInitHandle {
31
28
  readonly #input: SliceInitInput;
@@ -78,7 +75,7 @@ export class SliceInitHandle {
78
75
  [`pageOf${capRefName}`]: page,
79
76
  [`lastPageOf${capRefName}`]: lastPage,
80
77
  [`limitOf${capRefName}`]: limit,
81
-
78
+
82
79
  [`hasMoreOf${capRefName}`]: !!limit && modelObjList.length >= limit,
83
80
  [`queryArgsOf${capRefName}`]: queryArgs,
84
81
  [`sortOf${capRefName}`]: sort,
@@ -0,0 +1,11 @@
1
+ import type { SerializedArg } from "akanjs/signal";
2
+
3
+ const isNullableArg = (arg: SerializedArg) => arg.nullable ?? arg.type === "search";
4
+
5
+ export const normalizeQueryArgs = (queryArgs: unknown[], args: SerializedArg[]) => {
6
+ let length = Math.min(queryArgs.length, args.length);
7
+ while (length > 0 && isNullableArg(args[length - 1]) && queryArgs[length - 1] == null) length--;
8
+ return queryArgs.slice(0, length);
9
+ };
10
+
11
+ export const expandQueryArgs = (queryArgs: unknown[], args: SerializedArg[]) => args.map((_, idx) => queryArgs[idx]);