@undefineds.co/xpod 0.1.0-local.202602081751

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 (970) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +146 -0
  3. package/components/components.jsonld +72 -0
  4. package/components/context.jsonld +1635 -0
  5. package/config/bun.json +90 -0
  6. package/config/cli.json +260 -0
  7. package/config/cloud.json +469 -0
  8. package/config/extensions.local.initializer.json +23 -0
  9. package/config/local.json +261 -0
  10. package/config/logging/configurable.json +18 -0
  11. package/config/main.json +200 -0
  12. package/config/main.vanilla.json +6 -0
  13. package/config/resolver.json +347 -0
  14. package/config/search.json +66 -0
  15. package/config/seed.dev.json +29 -0
  16. package/config/seeds/admin.example.json +11 -0
  17. package/config/seeds/test.json +11 -0
  18. package/config/terminal.json +22 -0
  19. package/config/vector.json +35 -0
  20. package/config/xpod.base.json +155 -0
  21. package/config/xpod.cluster.json +419 -0
  22. package/config/xpod.json +233 -0
  23. package/dist/agents/AgentExecutorFactory.d.ts +67 -0
  24. package/dist/agents/AgentExecutorFactory.js +193 -0
  25. package/dist/agents/AgentExecutorFactory.js.map +1 -0
  26. package/dist/agents/AgentManager.d.ts +114 -0
  27. package/dist/agents/AgentManager.js +289 -0
  28. package/dist/agents/AgentManager.js.map +1 -0
  29. package/dist/agents/BaseAgentExecutor.d.ts +67 -0
  30. package/dist/agents/BaseAgentExecutor.js +101 -0
  31. package/dist/agents/BaseAgentExecutor.js.map +1 -0
  32. package/dist/agents/ClaudeExecutor.d.ts +63 -0
  33. package/dist/agents/ClaudeExecutor.js +335 -0
  34. package/dist/agents/ClaudeExecutor.js.map +1 -0
  35. package/dist/agents/CodeBuddyExecutor.d.ts +54 -0
  36. package/dist/agents/CodeBuddyExecutor.js +273 -0
  37. package/dist/agents/CodeBuddyExecutor.js.map +1 -0
  38. package/dist/agents/IndexAgent.d.ts +70 -0
  39. package/dist/agents/IndexAgent.js +417 -0
  40. package/dist/agents/IndexAgent.js.map +1 -0
  41. package/dist/agents/index.d.ts +22 -0
  42. package/dist/agents/index.js +48 -0
  43. package/dist/agents/index.js.map +1 -0
  44. package/dist/agents/schema/agent-config.d.ts +58 -0
  45. package/dist/agents/schema/agent-config.js +74 -0
  46. package/dist/agents/schema/agent-config.js.map +1 -0
  47. package/dist/agents/schema/tables.d.ts +46 -0
  48. package/dist/agents/schema/tables.js +64 -0
  49. package/dist/agents/schema/tables.js.map +1 -0
  50. package/dist/agents/types.d.ts +266 -0
  51. package/dist/agents/types.js +9 -0
  52. package/dist/agents/types.js.map +1 -0
  53. package/dist/ai/index.d.ts +5 -0
  54. package/dist/ai/index.js +22 -0
  55. package/dist/ai/index.js.map +1 -0
  56. package/dist/ai/schema/config.d.ts +27 -0
  57. package/dist/ai/schema/config.js +36 -0
  58. package/dist/ai/schema/config.js.map +1 -0
  59. package/dist/ai/schema/index.d.ts +8 -0
  60. package/dist/ai/schema/index.js +27 -0
  61. package/dist/ai/schema/index.js.map +1 -0
  62. package/dist/ai/schema/model.d.ts +40 -0
  63. package/dist/ai/schema/model.js +60 -0
  64. package/dist/ai/schema/model.js.map +1 -0
  65. package/dist/ai/schema/provider.d.ts +21 -0
  66. package/dist/ai/schema/provider.js +30 -0
  67. package/dist/ai/schema/provider.js.map +1 -0
  68. package/dist/ai/schema/types.d.ts +52 -0
  69. package/dist/ai/schema/types.js +62 -0
  70. package/dist/ai/schema/types.js.map +1 -0
  71. package/dist/ai/schema/vector-store.d.ts +53 -0
  72. package/dist/ai/schema/vector-store.js +65 -0
  73. package/dist/ai/schema/vector-store.js.map +1 -0
  74. package/dist/ai/service/CredentialReader.d.ts +7 -0
  75. package/dist/ai/service/CredentialReader.js +10 -0
  76. package/dist/ai/service/CredentialReader.js.map +1 -0
  77. package/dist/ai/service/CredentialReaderImpl.d.ts +6 -0
  78. package/dist/ai/service/CredentialReaderImpl.js +55 -0
  79. package/dist/ai/service/CredentialReaderImpl.js.map +1 -0
  80. package/dist/ai/service/EmbeddingService.d.ts +8 -0
  81. package/dist/ai/service/EmbeddingService.js +10 -0
  82. package/dist/ai/service/EmbeddingService.js.map +1 -0
  83. package/dist/ai/service/EmbeddingServiceImpl.d.ts +11 -0
  84. package/dist/ai/service/EmbeddingServiceImpl.js +73 -0
  85. package/dist/ai/service/EmbeddingServiceImpl.js.map +1 -0
  86. package/dist/ai/service/ProviderRegistry.d.ts +26 -0
  87. package/dist/ai/service/ProviderRegistry.js +10 -0
  88. package/dist/ai/service/ProviderRegistry.js.map +1 -0
  89. package/dist/ai/service/ProviderRegistryImpl.d.ts +14 -0
  90. package/dist/ai/service/ProviderRegistryImpl.js +112 -0
  91. package/dist/ai/service/ProviderRegistryImpl.js.map +1 -0
  92. package/dist/ai/service/index.d.ts +10 -0
  93. package/dist/ai/service/index.js +29 -0
  94. package/dist/ai/service/index.js.map +1 -0
  95. package/dist/ai/service/types.d.ts +12 -0
  96. package/dist/ai/service/types.js +6 -0
  97. package/dist/ai/service/types.js.map +1 -0
  98. package/dist/api/ApiServer.d.ts +77 -0
  99. package/dist/api/ApiServer.js +191 -0
  100. package/dist/api/ApiServer.js.map +1 -0
  101. package/dist/api/auth/AuthContext.d.ts +41 -0
  102. package/dist/api/auth/AuthContext.js +44 -0
  103. package/dist/api/auth/AuthContext.js.map +1 -0
  104. package/dist/api/auth/Authenticator.d.ts +23 -0
  105. package/dist/api/auth/Authenticator.js +3 -0
  106. package/dist/api/auth/Authenticator.js.map +1 -0
  107. package/dist/api/auth/ClientCredentialsAuthenticator.d.ts +56 -0
  108. package/dist/api/auth/ClientCredentialsAuthenticator.js +191 -0
  109. package/dist/api/auth/ClientCredentialsAuthenticator.js.map +1 -0
  110. package/dist/api/auth/MultiAuthenticator.d.ts +15 -0
  111. package/dist/api/auth/MultiAuthenticator.js +36 -0
  112. package/dist/api/auth/MultiAuthenticator.js.map +1 -0
  113. package/dist/api/auth/NodeTokenAuthenticator.d.ts +21 -0
  114. package/dist/api/auth/NodeTokenAuthenticator.js +124 -0
  115. package/dist/api/auth/NodeTokenAuthenticator.js.map +1 -0
  116. package/dist/api/auth/SolidTokenAuthenticator.d.ts +27 -0
  117. package/dist/api/auth/SolidTokenAuthenticator.js +144 -0
  118. package/dist/api/auth/SolidTokenAuthenticator.js.map +1 -0
  119. package/dist/api/auth/index.d.ts +5 -0
  120. package/dist/api/auth/index.js +23 -0
  121. package/dist/api/auth/index.js.map +1 -0
  122. package/dist/api/chatkit/ai-provider.d.ts +44 -0
  123. package/dist/api/chatkit/ai-provider.js +157 -0
  124. package/dist/api/chatkit/ai-provider.js.map +1 -0
  125. package/dist/api/chatkit/index.d.ts +11 -0
  126. package/dist/api/chatkit/index.js +44 -0
  127. package/dist/api/chatkit/index.js.map +1 -0
  128. package/dist/api/chatkit/pod-store.d.ts +154 -0
  129. package/dist/api/chatkit/pod-store.js +794 -0
  130. package/dist/api/chatkit/pod-store.js.map +1 -0
  131. package/dist/api/chatkit/schema.d.ts +139 -0
  132. package/dist/api/chatkit/schema.js +168 -0
  133. package/dist/api/chatkit/schema.js.map +1 -0
  134. package/dist/api/chatkit/service.d.ts +143 -0
  135. package/dist/api/chatkit/service.js +442 -0
  136. package/dist/api/chatkit/service.js.map +1 -0
  137. package/dist/api/chatkit/store.d.ts +63 -0
  138. package/dist/api/chatkit/store.js +178 -0
  139. package/dist/api/chatkit/store.js.map +1 -0
  140. package/dist/api/chatkit/types.d.ts +461 -0
  141. package/dist/api/chatkit/types.js +50 -0
  142. package/dist/api/chatkit/types.js.map +1 -0
  143. package/dist/api/container/cloud.d.ts +12 -0
  144. package/dist/api/container/cloud.js +97 -0
  145. package/dist/api/container/cloud.js.map +1 -0
  146. package/dist/api/container/common.d.ts +11 -0
  147. package/dist/api/container/common.js +82 -0
  148. package/dist/api/container/common.js.map +1 -0
  149. package/dist/api/container/index.d.ts +16 -0
  150. package/dist/api/container/index.js +90 -0
  151. package/dist/api/container/index.js.map +1 -0
  152. package/dist/api/container/local.d.ts +13 -0
  153. package/dist/api/container/local.js +197 -0
  154. package/dist/api/container/local.js.map +1 -0
  155. package/dist/api/container/routes.d.ts +11 -0
  156. package/dist/api/container/routes.js +129 -0
  157. package/dist/api/container/routes.js.map +1 -0
  158. package/dist/api/container/types.d.ts +92 -0
  159. package/dist/api/container/types.js +8 -0
  160. package/dist/api/container/types.js.map +1 -0
  161. package/dist/api/handlers/AdminHandler.d.ts +6 -0
  162. package/dist/api/handlers/AdminHandler.js +330 -0
  163. package/dist/api/handlers/AdminHandler.js.map +1 -0
  164. package/dist/api/handlers/ApiKeyHandler.d.ts +15 -0
  165. package/dist/api/handlers/ApiKeyHandler.js +159 -0
  166. package/dist/api/handlers/ApiKeyHandler.js.map +1 -0
  167. package/dist/api/handlers/ChatHandler.d.ts +60 -0
  168. package/dist/api/handlers/ChatHandler.js +230 -0
  169. package/dist/api/handlers/ChatHandler.js.map +1 -0
  170. package/dist/api/handlers/ChatKitHandler.d.ts +18 -0
  171. package/dist/api/handlers/ChatKitHandler.js +151 -0
  172. package/dist/api/handlers/ChatKitHandler.js.map +1 -0
  173. package/dist/api/handlers/DashboardHandler.d.ts +14 -0
  174. package/dist/api/handlers/DashboardHandler.js +117 -0
  175. package/dist/api/handlers/DashboardHandler.js.map +1 -0
  176. package/dist/api/handlers/DdnsHandler.d.ts +19 -0
  177. package/dist/api/handlers/DdnsHandler.js +306 -0
  178. package/dist/api/handlers/DdnsHandler.js.map +1 -0
  179. package/dist/api/handlers/DevHandler.d.ts +18 -0
  180. package/dist/api/handlers/DevHandler.js +276 -0
  181. package/dist/api/handlers/DevHandler.js.map +1 -0
  182. package/dist/api/handlers/NodeHandler.d.ts +16 -0
  183. package/dist/api/handlers/NodeHandler.js +190 -0
  184. package/dist/api/handlers/NodeHandler.js.map +1 -0
  185. package/dist/api/handlers/PodManagementHandler.d.ts +39 -0
  186. package/dist/api/handlers/PodManagementHandler.js +294 -0
  187. package/dist/api/handlers/PodManagementHandler.js.map +1 -0
  188. package/dist/api/handlers/QuotaHandler.d.ts +21 -0
  189. package/dist/api/handlers/QuotaHandler.js +209 -0
  190. package/dist/api/handlers/QuotaHandler.js.map +1 -0
  191. package/dist/api/handlers/SignalHandler.d.ts +13 -0
  192. package/dist/api/handlers/SignalHandler.js +122 -0
  193. package/dist/api/handlers/SignalHandler.js.map +1 -0
  194. package/dist/api/handlers/SubdomainClientHandler.d.ts +24 -0
  195. package/dist/api/handlers/SubdomainClientHandler.js +169 -0
  196. package/dist/api/handlers/SubdomainClientHandler.js.map +1 -0
  197. package/dist/api/handlers/SubdomainHandler.d.ts +17 -0
  198. package/dist/api/handlers/SubdomainHandler.js +312 -0
  199. package/dist/api/handlers/SubdomainHandler.js.map +1 -0
  200. package/dist/api/handlers/VectorHandler.d.ts +15 -0
  201. package/dist/api/handlers/VectorHandler.js +293 -0
  202. package/dist/api/handlers/VectorHandler.js.map +1 -0
  203. package/dist/api/handlers/VectorStoreHandler.d.ts +20 -0
  204. package/dist/api/handlers/VectorStoreHandler.js +348 -0
  205. package/dist/api/handlers/VectorStoreHandler.js.map +1 -0
  206. package/dist/api/handlers/VectorStoreWebhookHandler.d.ts +74 -0
  207. package/dist/api/handlers/VectorStoreWebhookHandler.js +121 -0
  208. package/dist/api/handlers/VectorStoreWebhookHandler.js.map +1 -0
  209. package/dist/api/handlers/WebIdProfileHandler.d.ts +14 -0
  210. package/dist/api/handlers/WebIdProfileHandler.js +204 -0
  211. package/dist/api/handlers/WebIdProfileHandler.js.map +1 -0
  212. package/dist/api/handlers/index.d.ts +11 -0
  213. package/dist/api/handlers/index.js +28 -0
  214. package/dist/api/handlers/index.js.map +1 -0
  215. package/dist/api/index.d.ts +12 -0
  216. package/dist/api/index.js +29 -0
  217. package/dist/api/index.js.map +1 -0
  218. package/dist/api/main.d.ts +14 -0
  219. package/dist/api/main.js +106 -0
  220. package/dist/api/main.js.map +1 -0
  221. package/dist/api/middleware/AuthMiddleware.d.ts +35 -0
  222. package/dist/api/middleware/AuthMiddleware.js +51 -0
  223. package/dist/api/middleware/AuthMiddleware.js.map +1 -0
  224. package/dist/api/middleware/index.d.ts +1 -0
  225. package/dist/api/middleware/index.js +18 -0
  226. package/dist/api/middleware/index.js.map +1 -0
  227. package/dist/api/models/model-provider.schema.d.ts +12 -0
  228. package/dist/api/models/model-provider.schema.js +21 -0
  229. package/dist/api/models/model-provider.schema.js.map +1 -0
  230. package/dist/api/models/namespaces.d.ts +9 -0
  231. package/dist/api/models/namespaces.js +34 -0
  232. package/dist/api/models/namespaces.js.map +1 -0
  233. package/dist/api/service/InternalPodService.d.ts +19 -0
  234. package/dist/api/service/InternalPodService.js +82 -0
  235. package/dist/api/service/InternalPodService.js.map +1 -0
  236. package/dist/api/service/VectorService.d.ts +156 -0
  237. package/dist/api/service/VectorService.js +202 -0
  238. package/dist/api/service/VectorService.js.map +1 -0
  239. package/dist/api/service/VectorStoreService.d.ts +262 -0
  240. package/dist/api/service/VectorStoreService.js +985 -0
  241. package/dist/api/service/VectorStoreService.js.map +1 -0
  242. package/dist/api/service/VercelChatService.d.ts +28 -0
  243. package/dist/api/service/VercelChatService.js +289 -0
  244. package/dist/api/service/VercelChatService.js.map +1 -0
  245. package/dist/api/store/DrizzleClientCredentialsStore.d.ts +56 -0
  246. package/dist/api/store/DrizzleClientCredentialsStore.js +145 -0
  247. package/dist/api/store/DrizzleClientCredentialsStore.js.map +1 -0
  248. package/dist/api/store/index.d.ts +1 -0
  249. package/dist/api/store/index.js +18 -0
  250. package/dist/api/store/index.js.map +1 -0
  251. package/dist/components/components.jsonld +88 -0
  252. package/dist/components/context.jsonld +1962 -0
  253. package/dist/credential/index.d.ts +1 -0
  254. package/dist/credential/index.js +18 -0
  255. package/dist/credential/index.js.map +1 -0
  256. package/dist/credential/schema/index.d.ts +2 -0
  257. package/dist/credential/schema/index.js +19 -0
  258. package/dist/credential/schema/index.js.map +1 -0
  259. package/dist/credential/schema/tables.d.ts +31 -0
  260. package/dist/credential/schema/tables.js +42 -0
  261. package/dist/credential/schema/tables.js.map +1 -0
  262. package/dist/credential/schema/types.d.ts +20 -0
  263. package/dist/credential/schema/types.js +26 -0
  264. package/dist/credential/schema/types.js.map +1 -0
  265. package/dist/dns/DnsProvider.d.ts +46 -0
  266. package/dist/dns/DnsProvider.js +3 -0
  267. package/dist/dns/DnsProvider.js.map +1 -0
  268. package/dist/dns/DnsProvider.jsonld +161 -0
  269. package/dist/dns/cloudflare/CloudflareDnsProvider.d.ts +51 -0
  270. package/dist/dns/cloudflare/CloudflareDnsProvider.js +227 -0
  271. package/dist/dns/cloudflare/CloudflareDnsProvider.js.map +1 -0
  272. package/dist/dns/cloudflare/index.d.ts +1 -0
  273. package/dist/dns/cloudflare/index.js +18 -0
  274. package/dist/dns/cloudflare/index.js.map +1 -0
  275. package/dist/dns/tencent/TencentDnsProvider.d.ts +42 -0
  276. package/dist/dns/tencent/TencentDnsProvider.js +221 -0
  277. package/dist/dns/tencent/TencentDnsProvider.js.map +1 -0
  278. package/dist/dns/tencent/TencentDnsProvider.jsonld +239 -0
  279. package/dist/document/Chunker.d.ts +64 -0
  280. package/dist/document/Chunker.js +8 -0
  281. package/dist/document/Chunker.js.map +1 -0
  282. package/dist/document/DocumentParser.d.ts +58 -0
  283. package/dist/document/DocumentParser.js +8 -0
  284. package/dist/document/DocumentParser.js.map +1 -0
  285. package/dist/document/HeadingChunker.d.ts +34 -0
  286. package/dist/document/HeadingChunker.js +182 -0
  287. package/dist/document/HeadingChunker.js.map +1 -0
  288. package/dist/document/JinaDocumentParser.d.ts +40 -0
  289. package/dist/document/JinaDocumentParser.js +129 -0
  290. package/dist/document/JinaDocumentParser.js.map +1 -0
  291. package/dist/document/index.d.ts +7 -0
  292. package/dist/document/index.js +26 -0
  293. package/dist/document/index.js.map +1 -0
  294. package/dist/edge/DdnsManager.d.ts +53 -0
  295. package/dist/edge/DdnsManager.js +153 -0
  296. package/dist/edge/DdnsManager.js.map +1 -0
  297. package/dist/edge/Dns01CertificateProvisioner.d.ts +27 -0
  298. package/dist/edge/Dns01CertificateProvisioner.js +160 -0
  299. package/dist/edge/Dns01CertificateProvisioner.js.map +1 -0
  300. package/dist/edge/Dns01CertificateProvisioner.jsonld +148 -0
  301. package/dist/edge/EdgeNodeAgent.d.ts +56 -0
  302. package/dist/edge/EdgeNodeAgent.js +230 -0
  303. package/dist/edge/EdgeNodeAgent.js.map +1 -0
  304. package/dist/edge/EdgeNodeAgent.jsonld +89 -0
  305. package/dist/edge/EdgeNodeAgentInitializer.d.ts +25 -0
  306. package/dist/edge/EdgeNodeAgentInitializer.js +64 -0
  307. package/dist/edge/EdgeNodeAgentInitializer.js.map +1 -0
  308. package/dist/edge/EdgeNodeCapabilityDetector.d.ts +98 -0
  309. package/dist/edge/EdgeNodeCapabilityDetector.js +425 -0
  310. package/dist/edge/EdgeNodeCapabilityDetector.js.map +1 -0
  311. package/dist/edge/EdgeNodeCertificateProvisioner.d.ts +3 -0
  312. package/dist/edge/EdgeNodeCertificateProvisioner.js +3 -0
  313. package/dist/edge/EdgeNodeCertificateProvisioner.js.map +1 -0
  314. package/dist/edge/EdgeNodeCertificateProvisioner.jsonld +21 -0
  315. package/dist/edge/EdgeNodeDnsCoordinator.d.ts +38 -0
  316. package/dist/edge/EdgeNodeDnsCoordinator.js +201 -0
  317. package/dist/edge/EdgeNodeDnsCoordinator.js.map +1 -0
  318. package/dist/edge/EdgeNodeDnsCoordinator.jsonld +212 -0
  319. package/dist/edge/EdgeNodeHealthProbeService.d.ts +25 -0
  320. package/dist/edge/EdgeNodeHealthProbeService.js +208 -0
  321. package/dist/edge/EdgeNodeHealthProbeService.js.map +1 -0
  322. package/dist/edge/EdgeNodeHealthProbeService.jsonld +176 -0
  323. package/dist/edge/EdgeNodeModeDetector.d.ts +50 -0
  324. package/dist/edge/EdgeNodeModeDetector.js +194 -0
  325. package/dist/edge/EdgeNodeModeDetector.js.map +1 -0
  326. package/dist/edge/EdgeNodeModeDetector.jsonld +114 -0
  327. package/dist/edge/EdgeNodeTunnelManager.d.ts +23 -0
  328. package/dist/edge/EdgeNodeTunnelManager.js +99 -0
  329. package/dist/edge/EdgeNodeTunnelManager.js.map +1 -0
  330. package/dist/edge/EdgeNodeTunnelManager.jsonld +128 -0
  331. package/dist/edge/FrpTunnelManager.d.ts +30 -0
  332. package/dist/edge/FrpTunnelManager.js +151 -0
  333. package/dist/edge/FrpTunnelManager.js.map +1 -0
  334. package/dist/edge/FrpTunnelManager.jsonld +192 -0
  335. package/dist/edge/LocalNetworkManager.d.ts +41 -0
  336. package/dist/edge/LocalNetworkManager.js +115 -0
  337. package/dist/edge/LocalNetworkManager.js.map +1 -0
  338. package/dist/edge/acme/AcmeCertificateManager.d.ts +65 -0
  339. package/dist/edge/acme/AcmeCertificateManager.js +233 -0
  340. package/dist/edge/acme/AcmeCertificateManager.js.map +1 -0
  341. package/dist/edge/acme/AcmeCertificateManager.jsonld +373 -0
  342. package/dist/edge/acme/ClusterCertificateManager.d.ts +40 -0
  343. package/dist/edge/acme/ClusterCertificateManager.js +184 -0
  344. package/dist/edge/acme/ClusterCertificateManager.js.map +1 -0
  345. package/dist/edge/acme/DnsChallengeClient.d.ts +15 -0
  346. package/dist/edge/acme/DnsChallengeClient.js +40 -0
  347. package/dist/edge/acme/DnsChallengeClient.js.map +1 -0
  348. package/dist/edge/acme/utils.d.ts +4 -0
  349. package/dist/edge/acme/utils.js +17 -0
  350. package/dist/edge/acme/utils.js.map +1 -0
  351. package/dist/edge/frp/FrpRelay.d.ts +11 -0
  352. package/dist/edge/frp/FrpRelay.js +29 -0
  353. package/dist/edge/frp/FrpRelay.js.map +1 -0
  354. package/dist/edge/frp/FrpcProcessManager.d.ts +51 -0
  355. package/dist/edge/frp/FrpcProcessManager.js +174 -0
  356. package/dist/edge/frp/FrpcProcessManager.js.map +1 -0
  357. package/dist/edge/interfaces/EdgeNodeTunnelManager.d.ts +6 -0
  358. package/dist/edge/interfaces/EdgeNodeTunnelManager.js +3 -0
  359. package/dist/edge/interfaces/EdgeNodeTunnelManager.js.map +1 -0
  360. package/dist/edge/interfaces/EdgeNodeTunnelManager.jsonld +21 -0
  361. package/dist/embedding/CredentialReader.d.ts +7 -0
  362. package/dist/embedding/CredentialReader.js +10 -0
  363. package/dist/embedding/CredentialReader.js.map +1 -0
  364. package/dist/embedding/CredentialReader.jsonld +22 -0
  365. package/dist/embedding/CredentialReaderImpl.d.ts +6 -0
  366. package/dist/embedding/CredentialReaderImpl.js +55 -0
  367. package/dist/embedding/CredentialReaderImpl.js.map +1 -0
  368. package/dist/embedding/CredentialReaderImpl.jsonld +31 -0
  369. package/dist/embedding/EmbeddingService.d.ts +8 -0
  370. package/dist/embedding/EmbeddingService.js +10 -0
  371. package/dist/embedding/EmbeddingService.js.map +1 -0
  372. package/dist/embedding/EmbeddingService.jsonld +26 -0
  373. package/dist/embedding/EmbeddingServiceImpl.d.ts +11 -0
  374. package/dist/embedding/EmbeddingServiceImpl.js +73 -0
  375. package/dist/embedding/EmbeddingServiceImpl.js.map +1 -0
  376. package/dist/embedding/EmbeddingServiceImpl.jsonld +53 -0
  377. package/dist/embedding/ProviderRegistry.d.ts +26 -0
  378. package/dist/embedding/ProviderRegistry.js +10 -0
  379. package/dist/embedding/ProviderRegistry.js.map +1 -0
  380. package/dist/embedding/ProviderRegistry.jsonld +30 -0
  381. package/dist/embedding/ProviderRegistryImpl.d.ts +14 -0
  382. package/dist/embedding/ProviderRegistryImpl.js +112 -0
  383. package/dist/embedding/ProviderRegistryImpl.js.map +1 -0
  384. package/dist/embedding/ProviderRegistryImpl.jsonld +40 -0
  385. package/dist/embedding/index.d.ts +5 -0
  386. package/dist/embedding/index.js +22 -0
  387. package/dist/embedding/index.js.map +1 -0
  388. package/dist/embedding/schema/index.d.ts +1 -0
  389. package/dist/embedding/schema/index.js +18 -0
  390. package/dist/embedding/schema/index.js.map +1 -0
  391. package/dist/embedding/schema/tables.d.ts +70 -0
  392. package/dist/embedding/schema/tables.js +102 -0
  393. package/dist/embedding/schema/tables.js.map +1 -0
  394. package/dist/embedding/types.d.ts +12 -0
  395. package/dist/embedding/types.js +6 -0
  396. package/dist/embedding/types.js.map +1 -0
  397. package/dist/gateway/port-finder.d.ts +4 -0
  398. package/dist/gateway/port-finder.js +15 -0
  399. package/dist/gateway/port-finder.js.map +1 -0
  400. package/dist/gateway/proxy.d.ts +22 -0
  401. package/dist/gateway/proxy.js +149 -0
  402. package/dist/gateway/proxy.js.map +1 -0
  403. package/dist/gateway/supervisor.d.ts +2 -0
  404. package/dist/gateway/supervisor.js +7 -0
  405. package/dist/gateway/supervisor.js.map +1 -0
  406. package/dist/gateway/types.d.ts +1 -0
  407. package/dist/gateway/types.js +3 -0
  408. package/dist/gateway/types.js.map +1 -0
  409. package/dist/http/AppStaticAssetHandler.d.ts +8 -0
  410. package/dist/http/AppStaticAssetHandler.js +27 -0
  411. package/dist/http/AppStaticAssetHandler.js.map +1 -0
  412. package/dist/http/AppStaticAssetHandler.jsonld +26 -0
  413. package/dist/http/ClusterIngressRouter.d.ts +93 -0
  414. package/dist/http/ClusterIngressRouter.js +355 -0
  415. package/dist/http/ClusterIngressRouter.js.map +1 -0
  416. package/dist/http/ClusterIngressRouter.jsonld +227 -0
  417. package/dist/http/ClusterWebSocketConfigurator.d.ts +59 -0
  418. package/dist/http/ClusterWebSocketConfigurator.js +226 -0
  419. package/dist/http/ClusterWebSocketConfigurator.js.map +1 -0
  420. package/dist/http/ClusterWebSocketConfigurator.jsonld +145 -0
  421. package/dist/http/EdgeNodeDirectDebugHttpHandler.d.ts +25 -0
  422. package/dist/http/EdgeNodeDirectDebugHttpHandler.js +126 -0
  423. package/dist/http/EdgeNodeDirectDebugHttpHandler.js.map +1 -0
  424. package/dist/http/EdgeNodeDirectDebugHttpHandler.jsonld +151 -0
  425. package/dist/http/EdgeNodeProxyHttpHandler.d.ts +28 -0
  426. package/dist/http/EdgeNodeProxyHttpHandler.js +190 -0
  427. package/dist/http/EdgeNodeProxyHttpHandler.js.map +1 -0
  428. package/dist/http/EdgeNodeProxyHttpHandler.jsonld +162 -0
  429. package/dist/http/PodRoutingHttpHandler.d.ts +64 -0
  430. package/dist/http/PodRoutingHttpHandler.js +233 -0
  431. package/dist/http/PodRoutingHttpHandler.js.map +1 -0
  432. package/dist/http/PodRoutingHttpHandler.jsonld +171 -0
  433. package/dist/http/RequestIdHttpHandler.d.ts +15 -0
  434. package/dist/http/RequestIdHttpHandler.js +59 -0
  435. package/dist/http/RequestIdHttpHandler.js.map +1 -0
  436. package/dist/http/RouterHttpHandler.d.ts +21 -0
  437. package/dist/http/RouterHttpHandler.js +49 -0
  438. package/dist/http/RouterHttpHandler.js.map +1 -0
  439. package/dist/http/RouterHttpHandler.jsonld +80 -0
  440. package/dist/http/RouterHttpRoute.d.ts +6 -0
  441. package/dist/http/RouterHttpRoute.js +11 -0
  442. package/dist/http/RouterHttpRoute.js.map +1 -0
  443. package/dist/http/RouterHttpRoute.jsonld +48 -0
  444. package/dist/http/SignalInterceptHttpHandler.d.ts +24 -0
  445. package/dist/http/SignalInterceptHttpHandler.js +47 -0
  446. package/dist/http/SignalInterceptHttpHandler.js.map +1 -0
  447. package/dist/http/SignalInterceptHttpHandler.jsonld +103 -0
  448. package/dist/http/SubgraphSparqlHttpHandler.d.ts +70 -0
  449. package/dist/http/SubgraphSparqlHttpHandler.js +640 -0
  450. package/dist/http/SubgraphSparqlHttpHandler.js.map +1 -0
  451. package/dist/http/SubgraphSparqlHttpHandler.jsonld +363 -0
  452. package/dist/http/TracingHandler.d.ts +19 -0
  453. package/dist/http/TracingHandler.js +60 -0
  454. package/dist/http/TracingHandler.js.map +1 -0
  455. package/dist/http/TracingHandler.jsonld +37 -0
  456. package/dist/http/admin/EdgeNodeAdminHttpHandler.d.ts +45 -0
  457. package/dist/http/admin/EdgeNodeAdminHttpHandler.js +292 -0
  458. package/dist/http/admin/EdgeNodeAdminHttpHandler.js.map +1 -0
  459. package/dist/http/admin/EdgeNodeCertificateHttpHandler.d.ts +33 -0
  460. package/dist/http/admin/EdgeNodeCertificateHttpHandler.js +172 -0
  461. package/dist/http/admin/EdgeNodeCertificateHttpHandler.js.map +1 -0
  462. package/dist/http/admin/EdgeNodeCertificateHttpHandler.jsonld +182 -0
  463. package/dist/http/admin/EdgeNodeSignalHttpHandler.d.ts +71 -0
  464. package/dist/http/admin/EdgeNodeSignalHttpHandler.js +674 -0
  465. package/dist/http/admin/EdgeNodeSignalHttpHandler.js.map +1 -0
  466. package/dist/http/admin/EdgeNodeSignalHttpHandler.jsonld +406 -0
  467. package/dist/http/cluster/PodMigrationHttpHandler.d.ts +52 -0
  468. package/dist/http/cluster/PodMigrationHttpHandler.js +208 -0
  469. package/dist/http/cluster/PodMigrationHttpHandler.js.map +1 -0
  470. package/dist/http/cluster/PodMigrationHttpHandler.jsonld +169 -0
  471. package/dist/http/quota/QuotaAdminHttpHandler.d.ts +34 -0
  472. package/dist/http/quota/QuotaAdminHttpHandler.js +241 -0
  473. package/dist/http/quota/QuotaAdminHttpHandler.js.map +1 -0
  474. package/dist/http/quota/QuotaAdminHttpHandler.jsonld +171 -0
  475. package/dist/http/search/SearchHttpHandler.d.ts +59 -0
  476. package/dist/http/search/SearchHttpHandler.js +312 -0
  477. package/dist/http/search/SearchHttpHandler.js.map +1 -0
  478. package/dist/http/search/index.d.ts +1 -0
  479. package/dist/http/search/index.js +18 -0
  480. package/dist/http/search/index.js.map +1 -0
  481. package/dist/http/terminal/TerminalHttpHandler.d.ts +45 -0
  482. package/dist/http/terminal/TerminalHttpHandler.js +306 -0
  483. package/dist/http/terminal/TerminalHttpHandler.js.map +1 -0
  484. package/dist/http/terminal/TerminalHttpHandler.jsonld +232 -0
  485. package/dist/http/terminal/index.d.ts +1 -0
  486. package/dist/http/terminal/index.js +18 -0
  487. package/dist/http/terminal/index.js.map +1 -0
  488. package/dist/http/vector/VectorHttpHandler.d.ts +42 -0
  489. package/dist/http/vector/VectorHttpHandler.js +301 -0
  490. package/dist/http/vector/VectorHttpHandler.js.map +1 -0
  491. package/dist/http/vector/VectorHttpHandler.jsonld +157 -0
  492. package/dist/http/vector/index.d.ts +1 -0
  493. package/dist/http/vector/index.js +18 -0
  494. package/dist/http/vector/index.js.map +1 -0
  495. package/dist/ice/IceServerProvider.d.ts +85 -0
  496. package/dist/ice/IceServerProvider.js +122 -0
  497. package/dist/ice/IceServerProvider.js.map +1 -0
  498. package/dist/ice/index.d.ts +8 -0
  499. package/dist/ice/index.js +25 -0
  500. package/dist/ice/index.js.map +1 -0
  501. package/dist/identity/CenterNodeRegistrationService.d.ts +102 -0
  502. package/dist/identity/CenterNodeRegistrationService.js +266 -0
  503. package/dist/identity/CenterNodeRegistrationService.js.map +1 -0
  504. package/dist/identity/CenterNodeRegistrationService.jsonld +251 -0
  505. package/dist/identity/ReactAppViewHandler.d.ts +31 -0
  506. package/dist/identity/ReactAppViewHandler.js +79 -0
  507. package/dist/identity/ReactAppViewHandler.js.map +1 -0
  508. package/dist/identity/ReactAppViewHandler.jsonld +99 -0
  509. package/dist/identity/drizzle/AccountRepository.d.ts +31 -0
  510. package/dist/identity/drizzle/AccountRepository.js +130 -0
  511. package/dist/identity/drizzle/AccountRepository.js.map +1 -0
  512. package/dist/identity/drizzle/AccountRoleRepository.d.ts +23 -0
  513. package/dist/identity/drizzle/AccountRoleRepository.js +233 -0
  514. package/dist/identity/drizzle/AccountRoleRepository.js.map +1 -0
  515. package/dist/identity/drizzle/DdnsRepository.d.ts +87 -0
  516. package/dist/identity/drizzle/DdnsRepository.js +284 -0
  517. package/dist/identity/drizzle/DdnsRepository.js.map +1 -0
  518. package/dist/identity/drizzle/DrizzleIndexedStorage.d.ts +26 -0
  519. package/dist/identity/drizzle/DrizzleIndexedStorage.js +159 -0
  520. package/dist/identity/drizzle/DrizzleIndexedStorage.js.map +1 -0
  521. package/dist/identity/drizzle/DrizzleIndexedStorage.jsonld +130 -0
  522. package/dist/identity/drizzle/EdgeNodeRepository.d.ts +155 -0
  523. package/dist/identity/drizzle/EdgeNodeRepository.js +555 -0
  524. package/dist/identity/drizzle/EdgeNodeRepository.js.map +1 -0
  525. package/dist/identity/drizzle/PodLookupRepository.d.ts +59 -0
  526. package/dist/identity/drizzle/PodLookupRepository.js +153 -0
  527. package/dist/identity/drizzle/PodLookupRepository.js.map +1 -0
  528. package/dist/identity/drizzle/WebIdProfileRepository.d.ts +58 -0
  529. package/dist/identity/drizzle/WebIdProfileRepository.js +157 -0
  530. package/dist/identity/drizzle/WebIdProfileRepository.js.map +1 -0
  531. package/dist/identity/drizzle/db.d.ts +60 -0
  532. package/dist/identity/drizzle/db.js +269 -0
  533. package/dist/identity/drizzle/db.js.map +1 -0
  534. package/dist/identity/drizzle/schema.d.ts +1 -0
  535. package/dist/identity/drizzle/schema.js +20 -0
  536. package/dist/identity/drizzle/schema.js.map +1 -0
  537. package/dist/identity/drizzle/schema.pg.d.ts +20 -0
  538. package/dist/identity/drizzle/schema.pg.js +103 -0
  539. package/dist/identity/drizzle/schema.pg.js.map +1 -0
  540. package/dist/identity/drizzle/schema.sqlite.d.ts +872 -0
  541. package/dist/identity/drizzle/schema.sqlite.js +100 -0
  542. package/dist/identity/drizzle/schema.sqlite.js.map +1 -0
  543. package/dist/identity/oidc/AutoDetectIdentityProviderHandler.d.ts +43 -0
  544. package/dist/identity/oidc/AutoDetectIdentityProviderHandler.js +92 -0
  545. package/dist/identity/oidc/AutoDetectIdentityProviderHandler.js.map +1 -0
  546. package/dist/identity/oidc/AutoDetectIdentityProviderHandler.jsonld +122 -0
  547. package/dist/identity/oidc/AutoDetectOidcHandler.d.ts +55 -0
  548. package/dist/identity/oidc/AutoDetectOidcHandler.js +137 -0
  549. package/dist/identity/oidc/AutoDetectOidcHandler.js.map +1 -0
  550. package/dist/identity/oidc/AutoDetectOidcHandler.jsonld +138 -0
  551. package/dist/identity/oidc/DisabledIdentityProviderHandler.d.ts +51 -0
  552. package/dist/identity/oidc/DisabledIdentityProviderHandler.js +104 -0
  553. package/dist/identity/oidc/DisabledIdentityProviderHandler.js.map +1 -0
  554. package/dist/identity/oidc/DisabledIdentityProviderHandler.jsonld +111 -0
  555. package/dist/identity/oidc/DisabledOidcHandler.d.ts +55 -0
  556. package/dist/identity/oidc/DisabledOidcHandler.js +132 -0
  557. package/dist/identity/oidc/DisabledOidcHandler.js.map +1 -0
  558. package/dist/identity/oidc/DisabledOidcHandler.jsonld +157 -0
  559. package/dist/index.d.ts +80 -0
  560. package/dist/index.js +155 -0
  561. package/dist/index.js.map +1 -0
  562. package/dist/legacy/DrizzleClientCredentialsStore.d.ts +51 -0
  563. package/dist/legacy/DrizzleClientCredentialsStore.js +142 -0
  564. package/dist/legacy/DrizzleClientCredentialsStore.js.map +1 -0
  565. package/dist/legacy/DrizzleIndexedStorage.d.ts +26 -0
  566. package/dist/legacy/DrizzleIndexedStorage.js +159 -0
  567. package/dist/legacy/DrizzleIndexedStorage.js.map +1 -0
  568. package/dist/legacy/DrizzleQuotaService.d.ts +16 -0
  569. package/dist/legacy/DrizzleQuotaService.js +37 -0
  570. package/dist/legacy/DrizzleQuotaService.js.map +1 -0
  571. package/dist/libs/backends/index.d.ts +6 -0
  572. package/dist/libs/backends/index.js +31 -0
  573. package/dist/libs/backends/index.js.map +1 -0
  574. package/dist/libs/backends/sqlup.d.ts +44 -0
  575. package/dist/libs/backends/sqlup.js +437 -0
  576. package/dist/libs/backends/sqlup.js.map +1 -0
  577. package/dist/logging/ConfigurableLoggerFactory.d.ts +24 -0
  578. package/dist/logging/ConfigurableLoggerFactory.js +77 -0
  579. package/dist/logging/ConfigurableLoggerFactory.js.map +1 -0
  580. package/dist/logging/ConfigurableLoggerFactory.jsonld +169 -0
  581. package/dist/logging/LogContext.d.ts +5 -0
  582. package/dist/logging/LogContext.js +6 -0
  583. package/dist/logging/LogContext.js.map +1 -0
  584. package/dist/main.d.ts +2 -0
  585. package/dist/main.js +148 -0
  586. package/dist/main.js.map +1 -0
  587. package/dist/network/LocalNetworkDetector.d.ts +65 -0
  588. package/dist/network/LocalNetworkDetector.js +185 -0
  589. package/dist/network/LocalNetworkDetector.js.map +1 -0
  590. package/dist/network/index.d.ts +4 -0
  591. package/dist/network/index.js +21 -0
  592. package/dist/network/index.js.map +1 -0
  593. package/dist/pods/ReservedSuffixIdentifierGenerator.d.ts +13 -0
  594. package/dist/pods/ReservedSuffixIdentifierGenerator.js +26 -0
  595. package/dist/pods/ReservedSuffixIdentifierGenerator.js.map +1 -0
  596. package/dist/pods/ReservedSuffixIdentifierGenerator.jsonld +75 -0
  597. package/dist/quota/DefaultQuotaService.d.ts +16 -0
  598. package/dist/quota/DefaultQuotaService.js +37 -0
  599. package/dist/quota/DefaultQuotaService.js.map +1 -0
  600. package/dist/quota/DefaultQuotaService.jsonld +85 -0
  601. package/dist/quota/DrizzleQuotaService.d.ts +16 -0
  602. package/dist/quota/DrizzleQuotaService.js +37 -0
  603. package/dist/quota/DrizzleQuotaService.js.map +1 -0
  604. package/dist/quota/DrizzleQuotaService.jsonld +87 -0
  605. package/dist/quota/NoopQuotaService.d.ts +7 -0
  606. package/dist/quota/NoopQuotaService.js +15 -0
  607. package/dist/quota/NoopQuotaService.js.map +1 -0
  608. package/dist/quota/NoopQuotaService.jsonld +36 -0
  609. package/dist/quota/QuotaService.d.ts +6 -0
  610. package/dist/quota/QuotaService.js +3 -0
  611. package/dist/quota/QuotaService.js.map +1 -0
  612. package/dist/quota/QuotaService.jsonld +33 -0
  613. package/dist/sdk/SignalingClientAdapter.d.ts +38 -0
  614. package/dist/sdk/SignalingClientAdapter.js +99 -0
  615. package/dist/sdk/SignalingClientAdapter.js.map +1 -0
  616. package/dist/sdk/createFetch.d.ts +23 -0
  617. package/dist/sdk/createFetch.js +258 -0
  618. package/dist/sdk/createFetch.js.map +1 -0
  619. package/dist/sdk/index.d.ts +29 -0
  620. package/dist/sdk/index.js +34 -0
  621. package/dist/sdk/index.js.map +1 -0
  622. package/dist/sdk/xpodFetch.d.ts +112 -0
  623. package/dist/sdk/xpodFetch.js +251 -0
  624. package/dist/sdk/xpodFetch.js.map +1 -0
  625. package/dist/service/EdgeNodeCertificateService.d.ts +45 -0
  626. package/dist/service/EdgeNodeCertificateService.js +164 -0
  627. package/dist/service/EdgeNodeCertificateService.js.map +1 -0
  628. package/dist/service/EdgeNodeCertificateService.jsonld +216 -0
  629. package/dist/service/EdgeNodeHeartbeatService.d.ts +68 -0
  630. package/dist/service/EdgeNodeHeartbeatService.js +262 -0
  631. package/dist/service/EdgeNodeHeartbeatService.js.map +1 -0
  632. package/dist/service/PodMigrationService.d.ts +43 -0
  633. package/dist/service/PodMigrationService.js +72 -0
  634. package/dist/service/PodMigrationService.js.map +1 -0
  635. package/dist/service/PodMigrationService.jsonld +76 -0
  636. package/dist/signaling/SignalingClient.d.ts +142 -0
  637. package/dist/signaling/SignalingClient.js +305 -0
  638. package/dist/signaling/SignalingClient.js.map +1 -0
  639. package/dist/signaling/SignalingService.d.ts +104 -0
  640. package/dist/signaling/SignalingService.js +440 -0
  641. package/dist/signaling/SignalingService.js.map +1 -0
  642. package/dist/signaling/index.d.ts +11 -0
  643. package/dist/signaling/index.js +28 -0
  644. package/dist/signaling/index.js.map +1 -0
  645. package/dist/signaling/types.d.ts +237 -0
  646. package/dist/signaling/types.js +18 -0
  647. package/dist/signaling/types.js.map +1 -0
  648. package/dist/storage/DrizzleCompat.d.ts +15 -0
  649. package/dist/storage/DrizzleCompat.js +60 -0
  650. package/dist/storage/DrizzleCompat.js.map +1 -0
  651. package/dist/storage/LockingResourceStore.d.ts +8 -0
  652. package/dist/storage/LockingResourceStore.js +68 -0
  653. package/dist/storage/LockingResourceStore.js.map +1 -0
  654. package/dist/storage/MigratableDataAccessor.d.ts +63 -0
  655. package/dist/storage/MigratableDataAccessor.js +11 -0
  656. package/dist/storage/MigratableDataAccessor.js.map +1 -0
  657. package/dist/storage/MigratableDataAccessor.jsonld +60 -0
  658. package/dist/storage/ObservableResourceStore.d.ts +89 -0
  659. package/dist/storage/ObservableResourceStore.js +125 -0
  660. package/dist/storage/ObservableResourceStore.js.map +1 -0
  661. package/dist/storage/RepresentationPartialConvertingStore.d.ts +22 -0
  662. package/dist/storage/RepresentationPartialConvertingStore.js +94 -0
  663. package/dist/storage/RepresentationPartialConvertingStore.js.map +1 -0
  664. package/dist/storage/RepresentationPartialConvertingStore.jsonld +332 -0
  665. package/dist/storage/SparqlUpdateResourceStore.d.ts +30 -0
  666. package/dist/storage/SparqlUpdateResourceStore.js +292 -0
  667. package/dist/storage/SparqlUpdateResourceStore.js.map +1 -0
  668. package/dist/storage/SparqlUpdateResourceStore.jsonld +112 -0
  669. package/dist/storage/SqliteCompat.d.ts +60 -0
  670. package/dist/storage/SqliteCompat.js +158 -0
  671. package/dist/storage/SqliteCompat.js.map +1 -0
  672. package/dist/storage/accessors/MinioDataAccessor.d.ts +127 -0
  673. package/dist/storage/accessors/MinioDataAccessor.js +249 -0
  674. package/dist/storage/accessors/MinioDataAccessor.js.map +1 -0
  675. package/dist/storage/accessors/MinioDataAccessor.jsonld +138 -0
  676. package/dist/storage/accessors/MixDataAccessor.d.ts +43 -0
  677. package/dist/storage/accessors/MixDataAccessor.js +130 -0
  678. package/dist/storage/accessors/MixDataAccessor.js.map +1 -0
  679. package/dist/storage/accessors/MixDataAccessor.jsonld +101 -0
  680. package/dist/storage/accessors/QuadstoreSparqlDataAccessor.d.ts +146 -0
  681. package/dist/storage/accessors/QuadstoreSparqlDataAccessor.js +415 -0
  682. package/dist/storage/accessors/QuadstoreSparqlDataAccessor.js.map +1 -0
  683. package/dist/storage/accessors/QuadstoreSparqlDataAccessor.jsonld +180 -0
  684. package/dist/storage/accessors/QuintStoreSparqlDataAccessor.d.ts +95 -0
  685. package/dist/storage/accessors/QuintStoreSparqlDataAccessor.js +376 -0
  686. package/dist/storage/accessors/QuintStoreSparqlDataAccessor.js.map +1 -0
  687. package/dist/storage/accessors/QuintStoreSparqlDataAccessor.jsonld +168 -0
  688. package/dist/storage/accessors/TieredMinioDataAccessor.d.ts +150 -0
  689. package/dist/storage/accessors/TieredMinioDataAccessor.js +582 -0
  690. package/dist/storage/accessors/TieredMinioDataAccessor.js.map +1 -0
  691. package/dist/storage/accessors/TieredMinioDataAccessor.jsonld +333 -0
  692. package/dist/storage/database/PostgresPoolManager.d.ts +56 -0
  693. package/dist/storage/database/PostgresPoolManager.js +117 -0
  694. package/dist/storage/database/PostgresPoolManager.js.map +1 -0
  695. package/dist/storage/keyvalue/PostgresKeyValueStorage.d.ts +34 -0
  696. package/dist/storage/keyvalue/PostgresKeyValueStorage.js +146 -0
  697. package/dist/storage/keyvalue/PostgresKeyValueStorage.js.map +1 -0
  698. package/dist/storage/keyvalue/PostgresKeyValueStorage.jsonld +192 -0
  699. package/dist/storage/keyvalue/RedisKeyValueStorage.d.ts +30 -0
  700. package/dist/storage/keyvalue/RedisKeyValueStorage.js +133 -0
  701. package/dist/storage/keyvalue/RedisKeyValueStorage.js.map +1 -0
  702. package/dist/storage/keyvalue/RedisKeyValueStorage.jsonld +237 -0
  703. package/dist/storage/keyvalue/SqliteKeyValueStorage.d.ts +30 -0
  704. package/dist/storage/keyvalue/SqliteKeyValueStorage.js +164 -0
  705. package/dist/storage/keyvalue/SqliteKeyValueStorage.js.map +1 -0
  706. package/dist/storage/keyvalue/SqliteKeyValueStorage.jsonld +167 -0
  707. package/dist/storage/quint/BaseQuintStore.d.ts +80 -0
  708. package/dist/storage/quint/BaseQuintStore.js +535 -0
  709. package/dist/storage/quint/BaseQuintStore.js.map +1 -0
  710. package/dist/storage/quint/BaseQuintStore.jsonld +175 -0
  711. package/dist/storage/quint/PgQuintStore.d.ts +61 -0
  712. package/dist/storage/quint/PgQuintStore.drizzle.d.ts +45 -0
  713. package/dist/storage/quint/PgQuintStore.drizzle.js +327 -0
  714. package/dist/storage/quint/PgQuintStore.drizzle.js.map +1 -0
  715. package/dist/storage/quint/PgQuintStore.js +275 -0
  716. package/dist/storage/quint/PgQuintStore.js.map +1 -0
  717. package/dist/storage/quint/PgQuintStore.jsonld +258 -0
  718. package/dist/storage/quint/SqliteQuintStore.d.ts +55 -0
  719. package/dist/storage/quint/SqliteQuintStore.js +630 -0
  720. package/dist/storage/quint/SqliteQuintStore.js.map +1 -0
  721. package/dist/storage/quint/SqliteQuintStore.jsonld +157 -0
  722. package/dist/storage/quint/index.d.ts +11 -0
  723. package/dist/storage/quint/index.js +30 -0
  724. package/dist/storage/quint/index.js.map +1 -0
  725. package/dist/storage/quint/schema.d.ts +82 -0
  726. package/dist/storage/quint/schema.js +33 -0
  727. package/dist/storage/quint/schema.js.map +1 -0
  728. package/dist/storage/quint/serialization.d.ts +56 -0
  729. package/dist/storage/quint/serialization.js +198 -0
  730. package/dist/storage/quint/serialization.js.map +1 -0
  731. package/dist/storage/quint/types.d.ts +152 -0
  732. package/dist/storage/quint/types.js +27 -0
  733. package/dist/storage/quint/types.js.map +1 -0
  734. package/dist/storage/quint/types.jsonld +78 -0
  735. package/dist/storage/quota/PerAccountQuotaStrategy.d.ts +19 -0
  736. package/dist/storage/quota/PerAccountQuotaStrategy.js +63 -0
  737. package/dist/storage/quota/PerAccountQuotaStrategy.js.map +1 -0
  738. package/dist/storage/quota/PerAccountQuotaStrategy.jsonld +113 -0
  739. package/dist/storage/quota/UsageRepository.d.ts +46 -0
  740. package/dist/storage/quota/UsageRepository.js +278 -0
  741. package/dist/storage/quota/UsageRepository.js.map +1 -0
  742. package/dist/storage/quota/UsageTrackingStore.d.ts +37 -0
  743. package/dist/storage/quota/UsageTrackingStore.js +355 -0
  744. package/dist/storage/quota/UsageTrackingStore.js.map +1 -0
  745. package/dist/storage/quota/UsageTrackingStore.jsonld +193 -0
  746. package/dist/storage/sparql/AlgebraUtils.d.ts +48 -0
  747. package/dist/storage/sparql/AlgebraUtils.js +118 -0
  748. package/dist/storage/sparql/AlgebraUtils.js.map +1 -0
  749. package/dist/storage/sparql/ComunicaOptimizedEngine.d.ts +59 -0
  750. package/dist/storage/sparql/ComunicaOptimizedEngine.js +254 -0
  751. package/dist/storage/sparql/ComunicaOptimizedEngine.js.map +1 -0
  752. package/dist/storage/sparql/ComunicaQuintEngine.d.ts +134 -0
  753. package/dist/storage/sparql/ComunicaQuintEngine.js +727 -0
  754. package/dist/storage/sparql/ComunicaQuintEngine.js.map +1 -0
  755. package/dist/storage/sparql/ExpressionEvaluator.d.ts +54 -0
  756. package/dist/storage/sparql/ExpressionEvaluator.js +340 -0
  757. package/dist/storage/sparql/ExpressionEvaluator.js.map +1 -0
  758. package/dist/storage/sparql/FilterPushdownExtractor.d.ts +74 -0
  759. package/dist/storage/sparql/FilterPushdownExtractor.js +409 -0
  760. package/dist/storage/sparql/FilterPushdownExtractor.js.map +1 -0
  761. package/dist/storage/sparql/OptimizedQuadstoreEngine.d.ts +65 -0
  762. package/dist/storage/sparql/OptimizedQuadstoreEngine.js +327 -0
  763. package/dist/storage/sparql/OptimizedQuadstoreEngine.js.map +1 -0
  764. package/dist/storage/sparql/OptimizedQuadstoreSource.d.ts +46 -0
  765. package/dist/storage/sparql/OptimizedQuadstoreSource.js +118 -0
  766. package/dist/storage/sparql/OptimizedQuadstoreSource.js.map +1 -0
  767. package/dist/storage/sparql/PatternBuilder.d.ts +41 -0
  768. package/dist/storage/sparql/PatternBuilder.js +118 -0
  769. package/dist/storage/sparql/PatternBuilder.js.map +1 -0
  770. package/dist/storage/sparql/QueryOptimizer.d.ts +125 -0
  771. package/dist/storage/sparql/QueryOptimizer.js +363 -0
  772. package/dist/storage/sparql/QueryOptimizer.js.map +1 -0
  773. package/dist/storage/sparql/QuintEngine.d.ts +92 -0
  774. package/dist/storage/sparql/QuintEngine.js +150 -0
  775. package/dist/storage/sparql/QuintEngine.js.map +1 -0
  776. package/dist/storage/sparql/QuintQuerySource.d.ts +227 -0
  777. package/dist/storage/sparql/QuintQuerySource.js +918 -0
  778. package/dist/storage/sparql/QuintQuerySource.js.map +1 -0
  779. package/dist/storage/sparql/SimpleSparqlExecutor.d.ts +40 -0
  780. package/dist/storage/sparql/SimpleSparqlExecutor.js +131 -0
  781. package/dist/storage/sparql/SimpleSparqlExecutor.js.map +1 -0
  782. package/dist/storage/sparql/SubgraphQueryEngine.d.ts +74 -0
  783. package/dist/storage/sparql/SubgraphQueryEngine.js +248 -0
  784. package/dist/storage/sparql/SubgraphQueryEngine.js.map +1 -0
  785. package/dist/storage/sparql/SubgraphQueryEngine.jsonld +250 -0
  786. package/dist/storage/vector/PostgresVectorStore.d.ts +46 -0
  787. package/dist/storage/vector/PostgresVectorStore.js +291 -0
  788. package/dist/storage/vector/PostgresVectorStore.js.map +1 -0
  789. package/dist/storage/vector/PostgresVectorStore.jsonld +142 -0
  790. package/dist/storage/vector/SqliteVectorStore.d.ts +44 -0
  791. package/dist/storage/vector/SqliteVectorStore.js +282 -0
  792. package/dist/storage/vector/SqliteVectorStore.js.map +1 -0
  793. package/dist/storage/vector/SqliteVectorStore.jsonld +137 -0
  794. package/dist/storage/vector/VectorIndexingListener.d.ts +114 -0
  795. package/dist/storage/vector/VectorIndexingListener.js +351 -0
  796. package/dist/storage/vector/VectorIndexingListener.js.map +1 -0
  797. package/dist/storage/vector/VectorStore.d.ts +42 -0
  798. package/dist/storage/vector/VectorStore.js +50 -0
  799. package/dist/storage/vector/VectorStore.js.map +1 -0
  800. package/dist/storage/vector/VectorStore.jsonld +87 -0
  801. package/dist/storage/vector/VectorStoreInit.d.ts +28 -0
  802. package/dist/storage/vector/VectorStoreInit.js +104 -0
  803. package/dist/storage/vector/VectorStoreInit.js.map +1 -0
  804. package/dist/storage/vector/index.d.ts +5 -0
  805. package/dist/storage/vector/index.js +22 -0
  806. package/dist/storage/vector/index.js.map +1 -0
  807. package/dist/storage/vector/types.d.ts +39 -0
  808. package/dist/storage/vector/types.js +8 -0
  809. package/dist/storage/vector/types.js.map +1 -0
  810. package/dist/subdomain/SubdomainClient.d.ts +156 -0
  811. package/dist/subdomain/SubdomainClient.js +220 -0
  812. package/dist/subdomain/SubdomainClient.js.map +1 -0
  813. package/dist/subdomain/SubdomainService.d.ts +114 -0
  814. package/dist/subdomain/SubdomainService.js +212 -0
  815. package/dist/subdomain/SubdomainService.js.map +1 -0
  816. package/dist/subdomain/SubdomainService.jsonld +261 -0
  817. package/dist/subdomain/index.d.ts +2 -0
  818. package/dist/subdomain/index.js +9 -0
  819. package/dist/subdomain/index.js.map +1 -0
  820. package/dist/supervisor/Supervisor.d.ts +20 -0
  821. package/dist/supervisor/Supervisor.js +174 -0
  822. package/dist/supervisor/Supervisor.js.map +1 -0
  823. package/dist/supervisor/index.d.ts +2 -0
  824. package/dist/supervisor/index.js +6 -0
  825. package/dist/supervisor/index.js.map +1 -0
  826. package/dist/supervisor/types.d.ts +19 -0
  827. package/dist/supervisor/types.js +3 -0
  828. package/dist/supervisor/types.js.map +1 -0
  829. package/dist/task/DrizzleTaskQueue.d.ts +60 -0
  830. package/dist/task/DrizzleTaskQueue.js +171 -0
  831. package/dist/task/DrizzleTaskQueue.js.map +1 -0
  832. package/dist/task/TaskExecutor.d.ts +82 -0
  833. package/dist/task/TaskExecutor.js +198 -0
  834. package/dist/task/TaskExecutor.js.map +1 -0
  835. package/dist/task/index.d.ts +10 -0
  836. package/dist/task/index.js +20 -0
  837. package/dist/task/index.js.map +1 -0
  838. package/dist/task/schema.d.ts +53 -0
  839. package/dist/task/schema.js +71 -0
  840. package/dist/task/schema.js.map +1 -0
  841. package/dist/task/types.d.ts +186 -0
  842. package/dist/task/types.js +12 -0
  843. package/dist/task/types.js.map +1 -0
  844. package/dist/terminal/AclPermissionService.d.ts +28 -0
  845. package/dist/terminal/AclPermissionService.js +141 -0
  846. package/dist/terminal/AclPermissionService.js.map +1 -0
  847. package/dist/terminal/BubblewrapSandbox.d.ts +51 -0
  848. package/dist/terminal/BubblewrapSandbox.js +147 -0
  849. package/dist/terminal/BubblewrapSandbox.js.map +1 -0
  850. package/dist/terminal/TerminalSession.d.ts +33 -0
  851. package/dist/terminal/TerminalSession.js +164 -0
  852. package/dist/terminal/TerminalSession.js.map +1 -0
  853. package/dist/terminal/TerminalSessionManager.d.ts +69 -0
  854. package/dist/terminal/TerminalSessionManager.js +196 -0
  855. package/dist/terminal/TerminalSessionManager.js.map +1 -0
  856. package/dist/terminal/index.d.ts +5 -0
  857. package/dist/terminal/index.js +22 -0
  858. package/dist/terminal/index.js.map +1 -0
  859. package/dist/terminal/sandbox/BubblewrapSandbox.d.ts +8 -0
  860. package/dist/terminal/sandbox/BubblewrapSandbox.js +105 -0
  861. package/dist/terminal/sandbox/BubblewrapSandbox.js.map +1 -0
  862. package/dist/terminal/sandbox/MacOSSandbox.d.ts +19 -0
  863. package/dist/terminal/sandbox/MacOSSandbox.js +120 -0
  864. package/dist/terminal/sandbox/MacOSSandbox.js.map +1 -0
  865. package/dist/terminal/sandbox/index.d.ts +29 -0
  866. package/dist/terminal/sandbox/index.js +113 -0
  867. package/dist/terminal/sandbox/index.js.map +1 -0
  868. package/dist/terminal/sandbox/types.d.ts +38 -0
  869. package/dist/terminal/sandbox/types.js +3 -0
  870. package/dist/terminal/sandbox/types.js.map +1 -0
  871. package/dist/terminal/types.d.ts +80 -0
  872. package/dist/terminal/types.js +16 -0
  873. package/dist/terminal/types.js.map +1 -0
  874. package/dist/tunnel/CloudflareTunnelProvider.d.ts +120 -0
  875. package/dist/tunnel/CloudflareTunnelProvider.js +376 -0
  876. package/dist/tunnel/CloudflareTunnelProvider.js.map +1 -0
  877. package/dist/tunnel/CloudflareTunnelProvider.jsonld +204 -0
  878. package/dist/tunnel/LocalTunnelProvider.d.ts +85 -0
  879. package/dist/tunnel/LocalTunnelProvider.js +295 -0
  880. package/dist/tunnel/LocalTunnelProvider.js.map +1 -0
  881. package/dist/tunnel/LocalTunnelProvider.jsonld +142 -0
  882. package/dist/tunnel/SakuraFrpTunnelProvider.d.ts +59 -0
  883. package/dist/tunnel/SakuraFrpTunnelProvider.js +207 -0
  884. package/dist/tunnel/SakuraFrpTunnelProvider.js.map +1 -0
  885. package/dist/tunnel/TunnelProvider.d.ts +91 -0
  886. package/dist/tunnel/TunnelProvider.js +10 -0
  887. package/dist/tunnel/TunnelProvider.js.map +1 -0
  888. package/dist/tunnel/TunnelProvider.jsonld +144 -0
  889. package/dist/tunnel/index.d.ts +3 -0
  890. package/dist/tunnel/index.js +8 -0
  891. package/dist/tunnel/index.js.map +1 -0
  892. package/dist/util/LockContext.d.ts +3 -0
  893. package/dist/util/LockContext.js +6 -0
  894. package/dist/util/LockContext.js.map +1 -0
  895. package/dist/util/ResourceStoreFetch.d.ts +11 -0
  896. package/dist/util/ResourceStoreFetch.js +147 -0
  897. package/dist/util/ResourceStoreFetch.js.map +1 -0
  898. package/dist/util/database/DatabaseMaintenance.d.ts +23 -0
  899. package/dist/util/database/DatabaseMaintenance.js +82 -0
  900. package/dist/util/database/DatabaseMaintenance.js.map +1 -0
  901. package/dist/util/identifiers/ClusterIdentifierStrategy.d.ts +23 -0
  902. package/dist/util/identifiers/ClusterIdentifierStrategy.js +73 -0
  903. package/dist/util/identifiers/ClusterIdentifierStrategy.js.map +1 -0
  904. package/dist/util/identifiers/ClusterIdentifierStrategy.jsonld +90 -0
  905. package/dist/util/identifiers/MultiDomainIdentifierStrategy.d.ts +40 -0
  906. package/dist/util/identifiers/MultiDomainIdentifierStrategy.js +73 -0
  907. package/dist/util/identifiers/MultiDomainIdentifierStrategy.js.map +1 -0
  908. package/dist/util/identifiers/MultiDomainIdentifierStrategy.jsonld +90 -0
  909. package/dist/util/identifiers/PathBasedPodIdentifierStrategy.d.ts +78 -0
  910. package/dist/util/identifiers/PathBasedPodIdentifierStrategy.js +182 -0
  911. package/dist/util/identifiers/PathBasedPodIdentifierStrategy.js.map +1 -0
  912. package/dist/util/identifiers/PathBasedPodIdentifierStrategy.jsonld +88 -0
  913. package/dist/util/identifiers/SubdomainPodIdentifierStrategy.d.ts +68 -0
  914. package/dist/util/identifiers/SubdomainPodIdentifierStrategy.js +149 -0
  915. package/dist/util/identifiers/SubdomainPodIdentifierStrategy.js.map +1 -0
  916. package/dist/util/identifiers/SubdomainPodIdentifierStrategy.jsonld +84 -0
  917. package/dist/util/locking/DebugRedisLocker.d.ts +8 -0
  918. package/dist/util/locking/DebugRedisLocker.js +33 -0
  919. package/dist/util/locking/DebugRedisLocker.js.map +1 -0
  920. package/dist/util/logger.d.ts +13 -0
  921. package/dist/util/logger.js +36 -0
  922. package/dist/util/logger.js.map +1 -0
  923. package/dist/util/stream/BandwidthThrottleTransform.d.ts +8 -0
  924. package/dist/util/stream/BandwidthThrottleTransform.js +55 -0
  925. package/dist/util/stream/BandwidthThrottleTransform.js.map +1 -0
  926. package/dist/vocab/external.d.ts +216 -0
  927. package/dist/vocab/external.js +276 -0
  928. package/dist/vocab/external.js.map +1 -0
  929. package/dist/vocab/index.d.ts +26 -0
  930. package/dist/vocab/index.js +46 -0
  931. package/dist/vocab/index.js.map +1 -0
  932. package/dist/vocab/udfs.d.ts +184 -0
  933. package/dist/vocab/udfs.js +217 -0
  934. package/dist/vocab/udfs.js.map +1 -0
  935. package/dist/webrtc/WebRTCClient.d.ts +109 -0
  936. package/dist/webrtc/WebRTCClient.js +344 -0
  937. package/dist/webrtc/WebRTCClient.js.map +1 -0
  938. package/dist/webrtc/WebRTCPeerManager.d.ts +112 -0
  939. package/dist/webrtc/WebRTCPeerManager.js +289 -0
  940. package/dist/webrtc/WebRTCPeerManager.js.map +1 -0
  941. package/dist/webrtc/WeriftPeerConnectionFactory.d.ts +13 -0
  942. package/dist/webrtc/WeriftPeerConnectionFactory.js +255 -0
  943. package/dist/webrtc/WeriftPeerConnectionFactory.js.map +1 -0
  944. package/dist/webrtc/index.d.ts +13 -0
  945. package/dist/webrtc/index.js +30 -0
  946. package/dist/webrtc/index.js.map +1 -0
  947. package/dist/webrtc/types.d.ts +169 -0
  948. package/dist/webrtc/types.js +6 -0
  949. package/dist/webrtc/types.js.map +1 -0
  950. package/dist/xpod.single.cjs +826 -0
  951. package/dist/xpod.single.cjs.map +7 -0
  952. package/package.json +173 -0
  953. package/static/app/assets/index.css +1 -0
  954. package/static/app/assets/main.js +11 -0
  955. package/static/app/auth.html +21 -0
  956. package/static/app/index.html +14 -0
  957. package/static/app/vite.svg +1 -0
  958. package/static/dashboard/assets/dashboard-G96F8267.js +52 -0
  959. package/static/dashboard/assets/dashboard-PJyGDppf.css +1 -0
  960. package/static/dashboard/auth.html +21 -0
  961. package/static/dashboard/index.html +13 -0
  962. package/static/dashboard/vite.svg +1 -0
  963. package/static/landing/index.html +165 -0
  964. package/templates/identity/index.html.ejs +12 -0
  965. package/templates/identity/login.html.ejs +49 -0
  966. package/templates/identity/oidc/consent.html.ejs +103 -0
  967. package/templates/identity/password/forgot.html.ejs +49 -0
  968. package/templates/identity/password/login.html.ejs +58 -0
  969. package/templates/identity/password/register.html.ejs +65 -0
  970. package/templates/main.html.ejs +1 -0
@@ -0,0 +1,9 @@
1
+ type NamespaceObject = ((term: string) => string) & {
2
+ prefix: string;
3
+ uri: string;
4
+ NAMESPACE: string;
5
+ term: (name: string) => string;
6
+ } & Record<string, string>;
7
+ export declare const DCTerms: NamespaceObject;
8
+ export declare const LINQ: NamespaceObject;
9
+ export {};
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ // Copied from linx/packages/models/src/namespaces.ts
3
+ // TODO: Centralize this in a shared package (@udfs/vocab or @linx/models)
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.LINQ = exports.DCTerms = void 0;
6
+ const ABSOLUTE_IRI = /^[a-zA-Z][a-zA-Z\d+.-]*:/;
7
+ const createNamespace = (prefix, baseUri, terms) => {
8
+ const builder = ((term) => ABSOLUTE_IRI.test(term) ? term : `${baseUri}${term}`);
9
+ builder.prefix = prefix;
10
+ builder.uri = baseUri;
11
+ builder.NAMESPACE = baseUri;
12
+ builder.term = (name) => builder(name);
13
+ Object.entries(terms).forEach(([key, local]) => {
14
+ Object.defineProperty(builder, key, {
15
+ value: builder(local),
16
+ enumerable: true,
17
+ });
18
+ });
19
+ return builder;
20
+ };
21
+ exports.DCTerms = createNamespace('dc', 'http://purl.org/dc/terms/', {
22
+ modified: 'modified',
23
+ created: 'created',
24
+ });
25
+ exports.LINQ = createNamespace('linx', 'https://linx.ai/ns#', {
26
+ provider: 'provider',
27
+ status: 'status',
28
+ apiKey: 'apiKey',
29
+ baseUrl: 'baseUrl',
30
+ proxy: 'proxy',
31
+ aiModels: 'aiModels',
32
+ ModelProvider: 'ModelProvider',
33
+ });
34
+ //# sourceMappingURL=namespaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"namespaces.js","sourceRoot":"","sources":["../../../src/api/models/namespaces.ts"],"names":[],"mappings":";AAAA,qDAAqD;AACrD,0EAA0E;;;AAS1E,MAAM,YAAY,GAAG,0BAA0B,CAAA;AAE/C,MAAM,eAAe,GAAG,CAAC,MAAc,EAAE,OAAe,EAAE,KAA6B,EAAmB,EAAE;IAC1G,MAAM,OAAO,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CAChC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,IAAI,EAAE,CAAoB,CAAA;IAC1E,OAAO,CAAC,MAAM,GAAG,MAAM,CAAA;IACvB,OAAO,CAAC,GAAG,GAAG,OAAO,CAAA;IACrB,OAAO,CAAC,SAAS,GAAG,OAAO,CAAA;IAC3B,OAAO,CAAC,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC7C,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE;YAClC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC;YACrB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAEY,QAAA,OAAO,GAAG,eAAe,CAAC,IAAI,EAAE,2BAA2B,EAAE;IACxE,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;CACnB,CAAC,CAAA;AAEW,QAAA,IAAI,GAAG,eAAe,CAAC,MAAM,EAAE,qBAAqB,EAAE;IACjE,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,aAAa,EAAE,eAAe;CAC/B,CAAC,CAAA","sourcesContent":["// Copied from linx/packages/models/src/namespaces.ts\n// TODO: Centralize this in a shared package (@udfs/vocab or @linx/models)\n\ntype NamespaceObject = ((term: string) => string) & {\n prefix: string\n uri: string\n NAMESPACE: string\n term: (name: string) => string\n} & Record<string, string>\n\nconst ABSOLUTE_IRI = /^[a-zA-Z][a-zA-Z\\d+.-]*:/\n\nconst createNamespace = (prefix: string, baseUri: string, terms: Record<string, string>): NamespaceObject => {\n const builder = ((term: string) =>\n ABSOLUTE_IRI.test(term) ? term : `${baseUri}${term}`) as NamespaceObject\n builder.prefix = prefix\n builder.uri = baseUri\n builder.NAMESPACE = baseUri\n builder.term = (name: string) => builder(name)\n Object.entries(terms).forEach(([key, local]) => {\n Object.defineProperty(builder, key, {\n value: builder(local),\n enumerable: true,\n })\n })\n return builder\n}\n\nexport const DCTerms = createNamespace('dc', 'http://purl.org/dc/terms/', {\n modified: 'modified',\n created: 'created',\n})\n\nexport const LINQ = createNamespace('linx', 'https://linx.ai/ns#', {\n provider: 'provider',\n status: 'status',\n apiKey: 'apiKey',\n baseUrl: 'baseUrl',\n proxy: 'proxy',\n aiModels: 'aiModels',\n ModelProvider: 'ModelProvider',\n})\n"]}
@@ -0,0 +1,19 @@
1
+ import type { ClientCredentialsStore } from '../auth/ClientCredentialsAuthenticator';
2
+ import { type AuthContext } from '../auth/AuthContext';
3
+ export interface InternalPodServiceOptions {
4
+ tokenEndpoint: string;
5
+ apiKeyStore: ClientCredentialsStore;
6
+ }
7
+ /**
8
+ * Service for accessing user Pod data from the backend.
9
+ * Dynamically logs in using the caller's API Key (Client Credentials).
10
+ */
11
+ export declare class InternalPodService {
12
+ private readonly options;
13
+ private readonly logger;
14
+ constructor(options: InternalPodServiceOptions);
15
+ /**
16
+ * Retrieves AI model provider configuration from a user's Pod
17
+ */
18
+ getAiConfig(webId: string, auth: AuthContext): Promise<any>;
19
+ }
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InternalPodService = void 0;
4
+ const solid_client_authn_node_1 = require("@inrupt/solid-client-authn-node");
5
+ const drizzle_solid_1 = require("drizzle-solid");
6
+ const global_logger_factory_1 = require("global-logger-factory");
7
+ const model_provider_schema_1 = require("../models/model-provider.schema");
8
+ const AuthContext_1 = require("../auth/AuthContext");
9
+ /**
10
+ * Service for accessing user Pod data from the backend.
11
+ * Dynamically logs in using the caller's API Key (Client Credentials).
12
+ */
13
+ class InternalPodService {
14
+ constructor(options) {
15
+ this.options = options;
16
+ this.logger = (0, global_logger_factory_1.getLoggerFor)(this);
17
+ }
18
+ /**
19
+ * Retrieves AI model provider configuration from a user's Pod
20
+ */
21
+ async getAiConfig(webId, auth) {
22
+ let fetcher;
23
+ if ((0, AuthContext_1.isSolidAuth)(auth) && auth.clientId) {
24
+ // API Key Mode: The caller provided a Client ID.
25
+ // We look up the secret and create a session for THIS client.
26
+ this.logger.debug(`Resolving session for client ${auth.clientId} to access ${webId}`);
27
+ const creds = await this.options.apiKeyStore.findByClientId(auth.clientId);
28
+ if (!creds) {
29
+ this.logger.warn(`No credentials found for client ${auth.clientId}`);
30
+ return undefined;
31
+ }
32
+ // Create a fresh session for this request/client
33
+ // TODO: Consider caching sessions to avoid login round-trip on every request
34
+ const session = new solid_client_authn_node_1.Session();
35
+ try {
36
+ await session.login({
37
+ oidcIssuer: new URL(this.options.tokenEndpoint).origin,
38
+ clientId: creds.clientId,
39
+ clientSecret: creds.clientSecret,
40
+ });
41
+ if (!session.info.isLoggedIn) {
42
+ throw new Error('Login returned false');
43
+ }
44
+ fetcher = session.fetch;
45
+ }
46
+ catch (error) {
47
+ this.logger.error(`Failed to login as client ${auth.clientId}: ${error}`);
48
+ return undefined;
49
+ }
50
+ }
51
+ else {
52
+ // Solid Token Mode: We cannot reuse the DPoP token for a different URL.
53
+ // For now, we return undefined, falling back to system defaults.
54
+ this.logger.debug('Solid Token auth detected; skipping Pod config fetch (DPoP limitation).');
55
+ return undefined;
56
+ }
57
+ // Use drizzle-solid with our authenticated session
58
+ const db = (0, drizzle_solid_1.drizzle)({ fetch: fetcher, info: { webId, isLoggedIn: true } });
59
+ try {
60
+ const providers = await db.select()
61
+ .from(model_provider_schema_1.modelProviderTable)
62
+ .where((0, drizzle_solid_1.eq)(model_provider_schema_1.modelProviderTable.enabled, true)); // Cast to any to bypass TS error
63
+ console.log(`[InternalPodService] Found ${providers.length} enabled providers:`, providers.map(p => ({ id: p.id, proxy: p.proxy, baseUrl: p.baseUrl })));
64
+ if (providers.length === 0) {
65
+ return undefined;
66
+ }
67
+ // Prefer provider with proxy configured (for external APIs like Google)
68
+ const withProxy = providers.find(p => p.proxy);
69
+ if (withProxy) {
70
+ console.log(`[InternalPodService] Using provider with proxy: ${withProxy.id}`);
71
+ return withProxy;
72
+ }
73
+ return providers[0];
74
+ }
75
+ catch (error) {
76
+ this.logger.warn(`Failed to read AI config from Pod for ${webId}: ${error}`);
77
+ return undefined;
78
+ }
79
+ }
80
+ }
81
+ exports.InternalPodService = InternalPodService;
82
+ //# sourceMappingURL=InternalPodService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InternalPodService.js","sourceRoot":"","sources":["../../../src/api/service/InternalPodService.ts"],"names":[],"mappings":"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","sourcesContent":["import { Session } from '@inrupt/solid-client-authn-node';\nimport { drizzle, eq } from 'drizzle-solid';\nimport { getLoggerFor } from 'global-logger-factory';\nimport { modelProviderTable } from '../models/model-provider.schema';\nimport type { ClientCredentialsStore } from '../auth/ClientCredentialsAuthenticator';\nimport { isSolidAuth, type AuthContext } from '../auth/AuthContext';\n\nexport interface InternalPodServiceOptions {\n tokenEndpoint: string;\n apiKeyStore: ClientCredentialsStore;\n}\n\n/**\n * Service for accessing user Pod data from the backend.\n * Dynamically logs in using the caller's API Key (Client Credentials).\n */\nexport class InternalPodService {\n private readonly logger = getLoggerFor(this);\n\n public constructor(private readonly options: InternalPodServiceOptions) {}\n\n /**\n * Retrieves AI model provider configuration from a user's Pod\n */\n public async getAiConfig(webId: string, auth: AuthContext): Promise<any> {\n let fetcher: typeof fetch;\n\n if (isSolidAuth(auth) && auth.clientId) {\n // API Key Mode: The caller provided a Client ID.\n // We look up the secret and create a session for THIS client.\n this.logger.debug(`Resolving session for client ${auth.clientId} to access ${webId}`);\n \n const creds = await this.options.apiKeyStore.findByClientId(auth.clientId);\n if (!creds) {\n this.logger.warn(`No credentials found for client ${auth.clientId}`);\n return undefined;\n }\n\n // Create a fresh session for this request/client\n // TODO: Consider caching sessions to avoid login round-trip on every request\n const session = new Session();\n try {\n await session.login({\n oidcIssuer: new URL(this.options.tokenEndpoint).origin,\n clientId: creds.clientId,\n clientSecret: creds.clientSecret,\n });\n \n if (!session.info.isLoggedIn) {\n throw new Error('Login returned false');\n }\n fetcher = session.fetch;\n } catch (error) {\n this.logger.error(`Failed to login as client ${auth.clientId}: ${error}`);\n return undefined;\n }\n } else {\n // Solid Token Mode: We cannot reuse the DPoP token for a different URL.\n // For now, we return undefined, falling back to system defaults.\n this.logger.debug('Solid Token auth detected; skipping Pod config fetch (DPoP limitation).');\n return undefined;\n }\n\n // Use drizzle-solid with our authenticated session\n const db = drizzle({ fetch: fetcher, info: { webId, isLoggedIn: true } } as any);\n\n try {\n const providers = await db.select()\n .from(modelProviderTable)\n .where(eq((modelProviderTable as any).enabled, true)); // Cast to any to bypass TS error\n\n console.log(`[InternalPodService] Found ${providers.length} enabled providers:`, providers.map(p => ({ id: p.id, proxy: p.proxy, baseUrl: p.baseUrl })));\n\n if (providers.length === 0) {\n return undefined;\n }\n\n // Prefer provider with proxy configured (for external APIs like Google)\n const withProxy = providers.find(p => p.proxy);\n if (withProxy) {\n console.log(`[InternalPodService] Using provider with proxy: ${withProxy.id}`);\n return withProxy;\n }\n\n return providers[0];\n } catch (error) {\n this.logger.warn(`Failed to read AI config from Pod for ${webId}: ${error}`);\n return undefined;\n }\n }\n}\n"]}
@@ -0,0 +1,156 @@
1
+ import type { PodChatKitStore } from '../chatkit/pod-store';
2
+ import type { AuthContext } from '../auth/AuthContext';
3
+ import type { EmbeddingService } from '../../ai/service/EmbeddingService';
4
+ /**
5
+ * Vector upsert request
6
+ */
7
+ export interface VectorUpsertRequest {
8
+ /** Embedding model name */
9
+ model: string;
10
+ /** Vectors to upsert */
11
+ vectors: Array<{
12
+ /** Resource URI */
13
+ subject: string;
14
+ /** Semantic aspect (type, chunk, property) */
15
+ aspect: string;
16
+ /** Vector data */
17
+ vector: number[];
18
+ }>;
19
+ }
20
+ /**
21
+ * Vector search request
22
+ */
23
+ export interface VectorSearchRequest {
24
+ /** Embedding model name */
25
+ model: string;
26
+ /** Query text (will be converted to vector) */
27
+ query?: string;
28
+ /** Pre-computed query vector */
29
+ vector?: number[];
30
+ /** Max results */
31
+ limit?: number;
32
+ /** Similarity threshold (0-1) */
33
+ threshold?: number;
34
+ /** Filter conditions */
35
+ filter?: {
36
+ subject?: {
37
+ $eq?: string;
38
+ $startsWith?: string;
39
+ $in?: string[];
40
+ };
41
+ aspect?: {
42
+ $eq?: string;
43
+ $startsWith?: string;
44
+ $in?: string[];
45
+ };
46
+ };
47
+ /** Deduplicate by subject */
48
+ distinctSubject?: boolean;
49
+ }
50
+ /**
51
+ * Vector search result
52
+ */
53
+ export interface VectorSearchResult {
54
+ subject: string;
55
+ aspect: string;
56
+ score: number;
57
+ distance: number;
58
+ }
59
+ /**
60
+ * Vector delete request
61
+ */
62
+ export interface VectorDeleteRequest {
63
+ /** Embedding model name */
64
+ model: string;
65
+ /** Filter conditions (at least one field required) */
66
+ filter: {
67
+ subject?: {
68
+ $eq?: string;
69
+ $startsWith?: string;
70
+ };
71
+ aspect?: {
72
+ $eq?: string;
73
+ $startsWith?: string;
74
+ };
75
+ };
76
+ }
77
+ /**
78
+ * Vector status response
79
+ */
80
+ export interface VectorStatusResponse {
81
+ byModel: Array<{
82
+ model: string;
83
+ count: number;
84
+ }>;
85
+ totalCount: number;
86
+ }
87
+ export interface VectorServiceOptions {
88
+ /** CSS base URL for vector API */
89
+ cssBaseUrl: string;
90
+ /** Pod store for getting AI credentials */
91
+ store: PodChatKitStore;
92
+ /** Embedding service for generating vectors */
93
+ embeddingService: EmbeddingService;
94
+ }
95
+ /**
96
+ * VectorService - API Server 的向量服务
97
+ *
98
+ * 负责:
99
+ * 1. 从 Pod 读取 AI 凭据
100
+ * 2. 调用 EmbeddingService 生成向量
101
+ * 3. 调用 CSS 的 /-/vector/* 端点存储/搜索向量
102
+ */
103
+ export declare class VectorService {
104
+ private readonly logger;
105
+ private readonly cssBaseUrl;
106
+ private readonly store;
107
+ private readonly embeddingService;
108
+ constructor(options: VectorServiceOptions);
109
+ /**
110
+ * Upsert vectors to CSS vector store
111
+ */
112
+ upsert(request: VectorUpsertRequest, auth: AuthContext, accessToken: string): Promise<{
113
+ upserted: number;
114
+ errors: string[];
115
+ took_ms: number;
116
+ }>;
117
+ /**
118
+ * Search vectors in CSS vector store
119
+ */
120
+ search(request: VectorSearchRequest, auth: AuthContext, accessToken: string): Promise<{
121
+ results: VectorSearchResult[];
122
+ model: string;
123
+ took_ms: number;
124
+ }>;
125
+ /**
126
+ * Delete vectors from CSS vector store
127
+ */
128
+ delete(request: VectorDeleteRequest, auth: AuthContext, accessToken: string): Promise<{
129
+ deleted: number;
130
+ errors: string[];
131
+ took_ms: number;
132
+ }>;
133
+ /**
134
+ * Get vector store status
135
+ */
136
+ status(accessToken: string): Promise<VectorStatusResponse>;
137
+ /**
138
+ * Generate embedding for text
139
+ */
140
+ embed(text: string, model: string, auth: AuthContext): Promise<number[]>;
141
+ /**
142
+ * Generate embeddings for multiple texts
143
+ */
144
+ embedBatch(texts: string[], model: string, auth: AuthContext): Promise<number[][]>;
145
+ /**
146
+ * Create a StoreContext from AuthContext for Pod operations
147
+ */
148
+ private createStoreContext;
149
+ private getAiCredential;
150
+ private callCssVectorApi;
151
+ /**
152
+ * Hash subject + aspect to numeric ID
153
+ * Uses FNV-1a hash for good distribution
154
+ */
155
+ private hashSubjectAspect;
156
+ }
@@ -0,0 +1,202 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VectorService = void 0;
4
+ const global_logger_factory_1 = require("global-logger-factory");
5
+ const AuthContext_1 = require("../auth/AuthContext");
6
+ /**
7
+ * VectorService - API Server 的向量服务
8
+ *
9
+ * 负责:
10
+ * 1. 从 Pod 读取 AI 凭据
11
+ * 2. 调用 EmbeddingService 生成向量
12
+ * 3. 调用 CSS 的 /-/vector/* 端点存储/搜索向量
13
+ */
14
+ class VectorService {
15
+ constructor(options) {
16
+ this.logger = (0, global_logger_factory_1.getLoggerFor)(this);
17
+ this.cssBaseUrl = options.cssBaseUrl.replace(/\/$/, '');
18
+ this.store = options.store;
19
+ this.embeddingService = options.embeddingService;
20
+ }
21
+ /**
22
+ * Upsert vectors to CSS vector store
23
+ */
24
+ async upsert(request, auth, accessToken) {
25
+ const startTime = Date.now();
26
+ const userId = (0, AuthContext_1.getWebId)(auth) ?? (0, AuthContext_1.getAccountId)(auth) ?? 'anonymous';
27
+ this.logger.info(`Vector upsert request from ${userId}, model: ${request.model}, count: ${request.vectors.length}`);
28
+ // Convert subject+aspect to numeric IDs using hash
29
+ const vectorsWithIds = request.vectors.map((v) => ({
30
+ id: this.hashSubjectAspect(v.subject, v.aspect),
31
+ vector: v.vector,
32
+ }));
33
+ // Call CSS vector API
34
+ const response = await this.callCssVectorApi('upsert', accessToken, {
35
+ model: request.model,
36
+ vectors: vectorsWithIds,
37
+ });
38
+ return {
39
+ upserted: response.upserted ?? 0,
40
+ errors: response.errors ?? [],
41
+ took_ms: Date.now() - startTime,
42
+ };
43
+ }
44
+ /**
45
+ * Search vectors in CSS vector store
46
+ */
47
+ async search(request, auth, accessToken) {
48
+ const startTime = Date.now();
49
+ const userId = (0, AuthContext_1.getWebId)(auth) ?? (0, AuthContext_1.getAccountId)(auth) ?? 'anonymous';
50
+ this.logger.info(`Vector search request from ${userId}, model: ${request.model}`);
51
+ let queryVector = request.vector;
52
+ // If query text provided, generate embedding
53
+ if (request.query && !queryVector) {
54
+ const credential = await this.getAiCredential(auth);
55
+ if (!credential) {
56
+ throw new Error('No AI credential found for embedding generation');
57
+ }
58
+ queryVector = await this.embeddingService.embed(request.query, credential, request.model);
59
+ }
60
+ if (!queryVector) {
61
+ throw new Error('Either query or vector must be provided');
62
+ }
63
+ // Call CSS vector API
64
+ const response = await this.callCssVectorApi('search', accessToken, {
65
+ model: request.model,
66
+ vector: queryVector,
67
+ limit: request.limit ?? 10,
68
+ threshold: request.threshold,
69
+ excludeIds: undefined, // TODO: implement filter to excludeIds conversion
70
+ });
71
+ // Map numeric IDs back to subject+aspect (requires metadata storage)
72
+ // For now, return IDs as subjects (external API Server should maintain mapping)
73
+ const results = (response.results ?? []).map((r) => ({
74
+ subject: String(r.id), // Placeholder - actual mapping should be done by caller
75
+ aspect: '',
76
+ score: r.score,
77
+ distance: r.distance,
78
+ }));
79
+ return {
80
+ results,
81
+ model: request.model,
82
+ took_ms: Date.now() - startTime,
83
+ };
84
+ }
85
+ /**
86
+ * Delete vectors from CSS vector store
87
+ */
88
+ async delete(request, auth, accessToken) {
89
+ const startTime = Date.now();
90
+ const userId = (0, AuthContext_1.getWebId)(auth) ?? (0, AuthContext_1.getAccountId)(auth) ?? 'anonymous';
91
+ this.logger.info(`Vector delete request from ${userId}, model: ${request.model}`);
92
+ // Convert filter to IDs (simplified - actual implementation needs metadata lookup)
93
+ const ids = [];
94
+ if (request.filter.subject?.$eq && request.filter.aspect?.$eq) {
95
+ ids.push(this.hashSubjectAspect(request.filter.subject.$eq, request.filter.aspect.$eq));
96
+ }
97
+ if (ids.length === 0) {
98
+ return { deleted: 0, errors: ['No matching vectors found'], took_ms: Date.now() - startTime };
99
+ }
100
+ // Call CSS vector API
101
+ const response = await this.callCssVectorApi('delete', accessToken, {
102
+ model: request.model,
103
+ ids,
104
+ });
105
+ return {
106
+ deleted: response.deleted ?? 0,
107
+ errors: response.errors ?? [],
108
+ took_ms: Date.now() - startTime,
109
+ };
110
+ }
111
+ /**
112
+ * Get vector store status
113
+ */
114
+ async status(accessToken) {
115
+ const response = await this.callCssVectorApi('status', accessToken, undefined, 'GET');
116
+ return {
117
+ byModel: response.byModel ?? [],
118
+ totalCount: response.totalCount ?? 0,
119
+ };
120
+ }
121
+ /**
122
+ * Generate embedding for text
123
+ */
124
+ async embed(text, model, auth) {
125
+ const credential = await this.getAiCredential(auth);
126
+ if (!credential) {
127
+ throw new Error('No AI credential found for embedding generation');
128
+ }
129
+ return this.embeddingService.embed(text, credential, model);
130
+ }
131
+ /**
132
+ * Generate embeddings for multiple texts
133
+ */
134
+ async embedBatch(texts, model, auth) {
135
+ const credential = await this.getAiCredential(auth);
136
+ if (!credential) {
137
+ throw new Error('No AI credential found for embedding generation');
138
+ }
139
+ return this.embeddingService.embedBatch(texts, credential, model);
140
+ }
141
+ // ============================================
142
+ // Private methods
143
+ // ============================================
144
+ /**
145
+ * Create a StoreContext from AuthContext for Pod operations
146
+ */
147
+ createStoreContext(auth) {
148
+ return {
149
+ userId: (0, AuthContext_1.getWebId)(auth) ?? (0, AuthContext_1.getAccountId)(auth) ?? 'anonymous',
150
+ auth,
151
+ };
152
+ }
153
+ async getAiCredential(auth) {
154
+ const context = this.createStoreContext(auth);
155
+ const config = await this.store.getAiConfig(context);
156
+ if (!config) {
157
+ return undefined;
158
+ }
159
+ return {
160
+ provider: config.providerId,
161
+ apiKey: config.apiKey,
162
+ baseUrl: config.baseUrl,
163
+ proxyUrl: config.proxyUrl,
164
+ };
165
+ }
166
+ async callCssVectorApi(action, accessToken, body, method = 'POST') {
167
+ const url = `${this.cssBaseUrl}/-/vector/${action}`;
168
+ const options = {
169
+ method,
170
+ headers: {
171
+ 'Authorization': `Bearer ${accessToken}`,
172
+ 'Content-Type': 'application/json',
173
+ },
174
+ };
175
+ if (body && method !== 'GET') {
176
+ options.body = JSON.stringify(body);
177
+ }
178
+ this.logger.debug(`Calling CSS vector API: ${method} ${url}`);
179
+ const response = await fetch(url, options);
180
+ if (!response.ok) {
181
+ const errorText = await response.text();
182
+ this.logger.error(`CSS vector API error: ${response.status} ${errorText}`);
183
+ throw new Error(`CSS vector API error: ${response.status} ${response.statusText}`);
184
+ }
185
+ return response.json();
186
+ }
187
+ /**
188
+ * Hash subject + aspect to numeric ID
189
+ * Uses FNV-1a hash for good distribution
190
+ */
191
+ hashSubjectAspect(subject, aspect) {
192
+ const str = `${subject}|${aspect}`;
193
+ let hash = 2166136261; // FNV offset basis
194
+ for (let i = 0; i < str.length; i++) {
195
+ hash ^= str.charCodeAt(i);
196
+ hash = Math.imul(hash, 16777619); // FNV prime
197
+ }
198
+ return Math.abs(hash);
199
+ }
200
+ }
201
+ exports.VectorService = VectorService;
202
+ //# sourceMappingURL=VectorService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VectorService.js","sourceRoot":"","sources":["../../../src/api/service/VectorService.ts"],"names":[],"mappings":"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","sourcesContent":["import { getLoggerFor } from 'global-logger-factory';\nimport type { PodChatKitStore } from '../chatkit/pod-store';\nimport type { StoreContext } from '../chatkit/store';\nimport type { AuthContext } from '../auth/AuthContext';\nimport { getWebId, getAccountId } from '../auth/AuthContext';\nimport type { EmbeddingService } from '../../ai/service/EmbeddingService';\nimport type { AiCredential } from '../../ai/service/types';\n\n/**\n * Vector upsert request\n */\nexport interface VectorUpsertRequest {\n /** Embedding model name */\n model: string;\n /** Vectors to upsert */\n vectors: Array<{\n /** Resource URI */\n subject: string;\n /** Semantic aspect (type, chunk, property) */\n aspect: string;\n /** Vector data */\n vector: number[];\n }>;\n}\n\n/**\n * Vector search request\n */\nexport interface VectorSearchRequest {\n /** Embedding model name */\n model: string;\n /** Query text (will be converted to vector) */\n query?: string;\n /** Pre-computed query vector */\n vector?: number[];\n /** Max results */\n limit?: number;\n /** Similarity threshold (0-1) */\n threshold?: number;\n /** Filter conditions */\n filter?: {\n subject?: { $eq?: string; $startsWith?: string; $in?: string[] };\n aspect?: { $eq?: string; $startsWith?: string; $in?: string[] };\n };\n /** Deduplicate by subject */\n distinctSubject?: boolean;\n}\n\n/**\n * Vector search result\n */\nexport interface VectorSearchResult {\n subject: string;\n aspect: string;\n score: number;\n distance: number;\n}\n\n/**\n * Vector delete request\n */\nexport interface VectorDeleteRequest {\n /** Embedding model name */\n model: string;\n /** Filter conditions (at least one field required) */\n filter: {\n subject?: { $eq?: string; $startsWith?: string };\n aspect?: { $eq?: string; $startsWith?: string };\n };\n}\n\n/**\n * Vector status response\n */\nexport interface VectorStatusResponse {\n byModel: Array<{ model: string; count: number }>;\n totalCount: number;\n}\n\nexport interface VectorServiceOptions {\n /** CSS base URL for vector API */\n cssBaseUrl: string;\n /** Pod store for getting AI credentials */\n store: PodChatKitStore;\n /** Embedding service for generating vectors */\n embeddingService: EmbeddingService;\n}\n\n/**\n * VectorService - API Server 的向量服务\n *\n * 负责:\n * 1. 从 Pod 读取 AI 凭据\n * 2. 调用 EmbeddingService 生成向量\n * 3. 调用 CSS 的 /-/vector/* 端点存储/搜索向量\n */\nexport class VectorService {\n private readonly logger = getLoggerFor(this);\n private readonly cssBaseUrl: string;\n private readonly store: PodChatKitStore;\n private readonly embeddingService: EmbeddingService;\n\n public constructor(options: VectorServiceOptions) {\n this.cssBaseUrl = options.cssBaseUrl.replace(/\\/$/, '');\n this.store = options.store;\n this.embeddingService = options.embeddingService;\n }\n\n /**\n * Upsert vectors to CSS vector store\n */\n public async upsert(\n request: VectorUpsertRequest,\n auth: AuthContext,\n accessToken: string,\n ): Promise<{ upserted: number; errors: string[]; took_ms: number }> {\n const startTime = Date.now();\n const userId = getWebId(auth) ?? getAccountId(auth) ?? 'anonymous';\n\n this.logger.info(`Vector upsert request from ${userId}, model: ${request.model}, count: ${request.vectors.length}`);\n\n // Convert subject+aspect to numeric IDs using hash\n const vectorsWithIds = request.vectors.map((v) => ({\n id: this.hashSubjectAspect(v.subject, v.aspect),\n vector: v.vector,\n }));\n\n // Call CSS vector API\n const response = await this.callCssVectorApi('upsert', accessToken, {\n model: request.model,\n vectors: vectorsWithIds,\n });\n\n return {\n upserted: response.upserted ?? 0,\n errors: response.errors ?? [],\n took_ms: Date.now() - startTime,\n };\n }\n\n /**\n * Search vectors in CSS vector store\n */\n public async search(\n request: VectorSearchRequest,\n auth: AuthContext,\n accessToken: string,\n ): Promise<{ results: VectorSearchResult[]; model: string; took_ms: number }> {\n const startTime = Date.now();\n const userId = getWebId(auth) ?? getAccountId(auth) ?? 'anonymous';\n\n this.logger.info(`Vector search request from ${userId}, model: ${request.model}`);\n\n let queryVector = request.vector;\n\n // If query text provided, generate embedding\n if (request.query && !queryVector) {\n const credential = await this.getAiCredential(auth);\n if (!credential) {\n throw new Error('No AI credential found for embedding generation');\n }\n queryVector = await this.embeddingService.embed(request.query, credential, request.model);\n }\n\n if (!queryVector) {\n throw new Error('Either query or vector must be provided');\n }\n\n // Call CSS vector API\n const response = await this.callCssVectorApi('search', accessToken, {\n model: request.model,\n vector: queryVector,\n limit: request.limit ?? 10,\n threshold: request.threshold,\n excludeIds: undefined, // TODO: implement filter to excludeIds conversion\n });\n\n // Map numeric IDs back to subject+aspect (requires metadata storage)\n // For now, return IDs as subjects (external API Server should maintain mapping)\n const results: VectorSearchResult[] = (response.results ?? []).map((r: any) => ({\n subject: String(r.id), // Placeholder - actual mapping should be done by caller\n aspect: '',\n score: r.score,\n distance: r.distance,\n }));\n\n return {\n results,\n model: request.model,\n took_ms: Date.now() - startTime,\n };\n }\n\n /**\n * Delete vectors from CSS vector store\n */\n public async delete(\n request: VectorDeleteRequest,\n auth: AuthContext,\n accessToken: string,\n ): Promise<{ deleted: number; errors: string[]; took_ms: number }> {\n const startTime = Date.now();\n const userId = getWebId(auth) ?? getAccountId(auth) ?? 'anonymous';\n\n this.logger.info(`Vector delete request from ${userId}, model: ${request.model}`);\n\n // Convert filter to IDs (simplified - actual implementation needs metadata lookup)\n const ids: number[] = [];\n\n if (request.filter.subject?.$eq && request.filter.aspect?.$eq) {\n ids.push(this.hashSubjectAspect(request.filter.subject.$eq, request.filter.aspect.$eq));\n }\n\n if (ids.length === 0) {\n return { deleted: 0, errors: ['No matching vectors found'], took_ms: Date.now() - startTime };\n }\n\n // Call CSS vector API\n const response = await this.callCssVectorApi('delete', accessToken, {\n model: request.model,\n ids,\n });\n\n return {\n deleted: response.deleted ?? 0,\n errors: response.errors ?? [],\n took_ms: Date.now() - startTime,\n };\n }\n\n /**\n * Get vector store status\n */\n public async status(accessToken: string): Promise<VectorStatusResponse> {\n const response = await this.callCssVectorApi('status', accessToken, undefined, 'GET');\n return {\n byModel: response.byModel ?? [],\n totalCount: response.totalCount ?? 0,\n };\n }\n\n /**\n * Generate embedding for text\n */\n public async embed(\n text: string,\n model: string,\n auth: AuthContext,\n ): Promise<number[]> {\n const credential = await this.getAiCredential(auth);\n\n if (!credential) {\n throw new Error('No AI credential found for embedding generation');\n }\n\n return this.embeddingService.embed(text, credential, model);\n }\n\n /**\n * Generate embeddings for multiple texts\n */\n public async embedBatch(\n texts: string[],\n model: string,\n auth: AuthContext,\n ): Promise<number[][]> {\n const credential = await this.getAiCredential(auth);\n\n if (!credential) {\n throw new Error('No AI credential found for embedding generation');\n }\n\n return this.embeddingService.embedBatch(texts, credential, model);\n }\n\n // ============================================\n // Private methods\n // ============================================\n\n /**\n * Create a StoreContext from AuthContext for Pod operations\n */\n private createStoreContext(auth: AuthContext): StoreContext {\n return {\n userId: getWebId(auth) ?? getAccountId(auth) ?? 'anonymous',\n auth,\n };\n }\n\n private async getAiCredential(auth: AuthContext): Promise<AiCredential | undefined> {\n const context = this.createStoreContext(auth);\n const config = await this.store.getAiConfig(context);\n if (!config) {\n return undefined;\n }\n return {\n provider: config.providerId,\n apiKey: config.apiKey,\n baseUrl: config.baseUrl,\n proxyUrl: config.proxyUrl,\n };\n }\n\n private async callCssVectorApi(\n action: string,\n accessToken: string,\n body?: unknown,\n method: 'GET' | 'POST' | 'DELETE' = 'POST',\n ): Promise<any> {\n const url = `${this.cssBaseUrl}/-/vector/${action}`;\n\n const options: RequestInit = {\n method,\n headers: {\n 'Authorization': `Bearer ${accessToken}`,\n 'Content-Type': 'application/json',\n },\n };\n\n if (body && method !== 'GET') {\n options.body = JSON.stringify(body);\n }\n\n this.logger.debug(`Calling CSS vector API: ${method} ${url}`);\n\n const response = await fetch(url, options);\n\n if (!response.ok) {\n const errorText = await response.text();\n this.logger.error(`CSS vector API error: ${response.status} ${errorText}`);\n throw new Error(`CSS vector API error: ${response.status} ${response.statusText}`);\n }\n\n return response.json();\n }\n\n /**\n * Hash subject + aspect to numeric ID\n * Uses FNV-1a hash for good distribution\n */\n private hashSubjectAspect(subject: string, aspect: string): number {\n const str = `${subject}|${aspect}`;\n let hash = 2166136261; // FNV offset basis\n for (let i = 0; i < str.length; i++) {\n hash ^= str.charCodeAt(i);\n hash = Math.imul(hash, 16777619); // FNV prime\n }\n return Math.abs(hash);\n }\n}\n"]}