@undefineds.co/xpod 0.3.66 → 0.3.68

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 (43) hide show
  1. package/config/components-ignore.json +1 -0
  2. package/dist/api/ApiServer.d.ts +9 -1
  3. package/dist/api/ApiServer.js +22 -1
  4. package/dist/api/ApiServer.js.map +1 -1
  5. package/dist/api/container/routes.js +13 -0
  6. package/dist/api/container/routes.js.map +1 -1
  7. package/dist/api/handlers/DeviceNotificationRuntime.d.ts +26 -0
  8. package/dist/api/handlers/DeviceNotificationRuntime.js +77 -0
  9. package/dist/api/handlers/DeviceNotificationRuntime.js.map +1 -0
  10. package/dist/api/handlers/DeviceNotificationTicketHandler.d.ts +50 -0
  11. package/dist/api/handlers/DeviceNotificationTicketHandler.js +130 -0
  12. package/dist/api/handlers/DeviceNotificationTicketHandler.js.map +1 -0
  13. package/dist/api/handlers/DeviceNotificationTicketHandler.jsonld +117 -0
  14. package/dist/api/runs/InngestRunExecutionBackend.d.ts +2 -2
  15. package/dist/api/tasks/InngestTaskScheduler.d.ts +4 -4
  16. package/dist/components/components.jsonld +6 -1
  17. package/dist/components/context.jsonld +122 -0
  18. package/dist/http/DeviceNotificationWebSocketServer.d.ts +29 -0
  19. package/dist/http/DeviceNotificationWebSocketServer.js +138 -0
  20. package/dist/http/DeviceNotificationWebSocketServer.js.map +1 -0
  21. package/dist/http/DeviceNotificationWebSocketServer.jsonld +148 -0
  22. package/dist/index.d.ts +7 -1
  23. package/dist/index.js +13 -2
  24. package/dist/index.js.map +1 -1
  25. package/dist/notifications/DeviceNotificationHub.d.ts +74 -0
  26. package/dist/notifications/DeviceNotificationHub.js +313 -0
  27. package/dist/notifications/DeviceNotificationHub.js.map +1 -0
  28. package/dist/notifications/DeviceNotificationHub.jsonld +258 -0
  29. package/dist/notifications/DeviceNotificationResourceListener.d.ts +21 -0
  30. package/dist/notifications/DeviceNotificationResourceListener.js +38 -0
  31. package/dist/notifications/DeviceNotificationResourceListener.js.map +1 -0
  32. package/dist/notifications/DeviceNotificationResourceListener.jsonld +98 -0
  33. package/dist/notifications/device-notification-protocol.d.ts +56 -0
  34. package/dist/notifications/device-notification-protocol.js +127 -0
  35. package/dist/notifications/device-notification-protocol.js.map +1 -0
  36. package/dist/notifications/device-notification-protocol.jsonld +29 -0
  37. package/dist/notifications/index.d.ts +3 -0
  38. package/dist/notifications/index.js +20 -0
  39. package/dist/notifications/index.js.map +1 -0
  40. package/dist/storage/ObservableResourceStore.d.ts +3 -0
  41. package/dist/storage/ObservableResourceStore.js +17 -1
  42. package/dist/storage/ObservableResourceStore.js.map +1 -1
  43. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeviceNotificationWebSocketServer.js","sourceRoot":"","sources":["../../src/http/DeviceNotificationWebSocketServer.ts"],"names":[],"mappings":"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","sourcesContent":["import type { IncomingMessage, Server } from 'node:http';\nimport type { Duplex } from 'node:stream';\nimport { WebSocket, WebSocketServer } from 'ws';\nimport type { DeviceNotificationTicketStore } from '../api/handlers/DeviceNotificationTicketHandler';\nimport { DeviceNotificationHub } from '../notifications/DeviceNotificationHub';\nimport {\n XPOD_NOTIFICATIONS_PROTOCOL,\n createProtocolErrorFrame,\n parseClientFrame,\n parseDeviceNotificationSubprotocols,\n serializeServerFrame,\n} from '../notifications/device-notification-protocol';\n\nexport interface DeviceNotificationWebSocketServerOptions {\n hub: DeviceNotificationHub;\n ticketStore: DeviceNotificationTicketStore;\n path?: string;\n heartbeatIntervalMs?: number;\n}\n\nexport class DeviceNotificationWebSocketServer {\n private readonly hub: DeviceNotificationHub;\n private readonly ticketStore: DeviceNotificationTicketStore;\n private readonly path: string;\n private readonly heartbeatIntervalMs: number;\n private readonly wss = new WebSocketServer({ noServer: true });\n private readonly sockets = new Set<WebSocket>();\n private readonly socketConnections = new Map<WebSocket, string>();\n private readonly alive = new Map<WebSocket, boolean>();\n private heartbeatTimer?: ReturnType<typeof setInterval>;\n\n public constructor(options: DeviceNotificationWebSocketServerOptions) {\n this.hub = options.hub;\n this.ticketStore = options.ticketStore;\n this.path = options.path ?? '/v1/notifications/ws';\n this.heartbeatIntervalMs = options.heartbeatIntervalMs ?? 30_000;\n this.startHeartbeat();\n }\n\n public attach(server: Server): void {\n server.on('upgrade', (request, socket, head) => {\n this.handleUpgrade(request, socket, head);\n });\n }\n\n public handleUpgrade(request: IncomingMessage, socket: Duplex, head: Buffer): void {\n const url = new URL(request.url ?? '/', `http://${request.headers.host ?? 'localhost'}`);\n if (url.pathname !== this.path) {\n return;\n }\n const { protocolAccepted, ticket } = parseDeviceNotificationSubprotocols(request.headers['sec-websocket-protocol']);\n if (!protocolAccepted || !ticket) {\n this.reject(socket, 401, 'Missing notification subprotocol');\n return;\n }\n const record = this.ticketStore.consume(ticket);\n if (!record) {\n this.reject(socket, 401, 'Invalid notification ticket');\n return;\n }\n this.wss.handleUpgrade(request, socket as any, head, (ws) => {\n this.sockets.add(ws);\n const connection = this.hub.openConnection({\n identity: record.identity,\n deviceSessionId: record.deviceSessionId,\n send: (frame) => {\n if (ws.readyState !== WebSocket.OPEN) {\n return false;\n }\n ws.send(serializeServerFrame(frame));\n return true;\n },\n close: (code, reason) => {\n ws.close(code, reason);\n },\n });\n this.socketConnections.set(ws, connection.connectionId);\n this.alive.set(ws, true);\n ws.on('pong', () => {\n this.alive.set(ws, true);\n });\n ws.on('message', (data) => {\n void (async () => {\n try {\n const frame = parseClientFrame(JSON.parse(data.toString()), {\n origin: record.origin,\n });\n await this.handleFrame(connection.connectionId, frame);\n } catch (error) {\n ws.send(serializeServerFrame(createProtocolErrorFrame('bad-frame', (error as Error).message)));\n }\n })();\n });\n ws.on('close', () => {\n this.cleanupSocket(ws);\n });\n ws.on('error', () => {\n this.cleanupSocket(ws);\n });\n });\n }\n\n public stop(): void {\n for (const socket of this.sockets) {\n socket.close();\n }\n this.sockets.clear();\n this.socketConnections.clear();\n this.alive.clear();\n if (this.heartbeatTimer) {\n clearInterval(this.heartbeatTimer);\n this.heartbeatTimer = undefined;\n }\n this.wss.close();\n }\n\n private async handleFrame(connectionId: string, frame: ReturnType<typeof parseClientFrame>): Promise<void> {\n switch (frame.type) {\n case 'hello':\n this.hub.hello(connectionId, frame.resumeFrom);\n break;\n case 'register':\n await this.hub.registerTopics(connectionId, frame.requestId, frame.topics);\n break;\n case 'unregister':\n await this.hub.unregisterTopics(connectionId, frame.requestId, frame.topics);\n break;\n case 'ack':\n this.hub.ack(connectionId, frame.sequence);\n break;\n }\n }\n\n private reject(socket: Duplex, status: number, message: string): void {\n socket.write(`HTTP/1.1 ${status} ${message}\\r\\nConnection: close\\r\\n\\r\\n`);\n socket.end();\n }\n\n private startHeartbeat(): void {\n this.heartbeatTimer = setInterval(() => {\n for (const socket of this.sockets) {\n if (this.alive.get(socket) === false) {\n this.cleanupSocket(socket);\n socket.close();\n continue;\n }\n this.alive.set(socket, false);\n socket.ping();\n }\n }, this.heartbeatIntervalMs);\n this.heartbeatTimer.unref?.();\n }\n\n private cleanupSocket(socket: WebSocket): void {\n this.sockets.delete(socket);\n this.alive.delete(socket);\n const connectionId = this.socketConnections.get(socket);\n this.socketConnections.delete(socket);\n if (connectionId) {\n this.hub.closeConnection(connectionId);\n }\n }\n}\n"]}
@@ -0,0 +1,148 @@
1
+ {
2
+ "@context": [
3
+ "https://linkedsoftwaredependencies.org/bundles/npm/@undefineds.co/xpod/^0.0.0/components/context.jsonld"
4
+ ],
5
+ "@id": "npmd:@undefineds.co/xpod",
6
+ "components": [
7
+ {
8
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer",
9
+ "@type": "Class",
10
+ "requireElement": "DeviceNotificationWebSocketServer",
11
+ "parameters": [
12
+ {
13
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer_options_hub",
14
+ "range": "undefineds:dist/notifications/DeviceNotificationHub.jsonld#DeviceNotificationHub"
15
+ },
16
+ {
17
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer_options_ticketStore",
18
+ "range": "undefineds:dist/api/handlers/DeviceNotificationTicketHandler.jsonld#DeviceNotificationTicketStore"
19
+ },
20
+ {
21
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer_options_path",
22
+ "range": {
23
+ "@type": "ParameterRangeUnion",
24
+ "parameterRangeElements": [
25
+ "xsd:string",
26
+ {
27
+ "@type": "ParameterRangeUndefined"
28
+ }
29
+ ]
30
+ }
31
+ },
32
+ {
33
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer_options_heartbeatIntervalMs",
34
+ "range": {
35
+ "@type": "ParameterRangeUnion",
36
+ "parameterRangeElements": [
37
+ "xsd:number",
38
+ {
39
+ "@type": "ParameterRangeUndefined"
40
+ }
41
+ ]
42
+ }
43
+ }
44
+ ],
45
+ "memberFields": [
46
+ {
47
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_hub",
48
+ "memberFieldName": "hub"
49
+ },
50
+ {
51
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_ticketStore",
52
+ "memberFieldName": "ticketStore"
53
+ },
54
+ {
55
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_path",
56
+ "memberFieldName": "path"
57
+ },
58
+ {
59
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_heartbeatIntervalMs",
60
+ "memberFieldName": "heartbeatIntervalMs"
61
+ },
62
+ {
63
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_wss",
64
+ "memberFieldName": "wss"
65
+ },
66
+ {
67
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_sockets",
68
+ "memberFieldName": "sockets"
69
+ },
70
+ {
71
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_socketConnections",
72
+ "memberFieldName": "socketConnections"
73
+ },
74
+ {
75
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_alive",
76
+ "memberFieldName": "alive"
77
+ },
78
+ {
79
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_heartbeatTimer",
80
+ "memberFieldName": "heartbeatTimer"
81
+ },
82
+ {
83
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_constructor",
84
+ "memberFieldName": "constructor"
85
+ },
86
+ {
87
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_attach",
88
+ "memberFieldName": "attach"
89
+ },
90
+ {
91
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_handleUpgrade",
92
+ "memberFieldName": "handleUpgrade"
93
+ },
94
+ {
95
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_stop",
96
+ "memberFieldName": "stop"
97
+ },
98
+ {
99
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_handleFrame",
100
+ "memberFieldName": "handleFrame"
101
+ },
102
+ {
103
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_reject",
104
+ "memberFieldName": "reject"
105
+ },
106
+ {
107
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_startHeartbeat",
108
+ "memberFieldName": "startHeartbeat"
109
+ },
110
+ {
111
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer__member_cleanupSocket",
112
+ "memberFieldName": "cleanupSocket"
113
+ }
114
+ ],
115
+ "constructorArguments": [
116
+ {
117
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer_options__constructorArgument",
118
+ "fields": [
119
+ {
120
+ "keyRaw": "hub",
121
+ "value": {
122
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer_options_hub"
123
+ }
124
+ },
125
+ {
126
+ "keyRaw": "ticketStore",
127
+ "value": {
128
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer_options_ticketStore"
129
+ }
130
+ },
131
+ {
132
+ "keyRaw": "path",
133
+ "value": {
134
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer_options_path"
135
+ }
136
+ },
137
+ {
138
+ "keyRaw": "heartbeatIntervalMs",
139
+ "value": {
140
+ "@id": "undefineds:dist/http/DeviceNotificationWebSocketServer.jsonld#DeviceNotificationWebSocketServer_options_heartbeatIntervalMs"
141
+ }
142
+ }
143
+ ]
144
+ }
145
+ ]
146
+ }
147
+ ]
148
+ }
package/dist/index.d.ts CHANGED
@@ -30,6 +30,11 @@ import { RouterHttpHandler } from './http/RouterHttpHandler';
30
30
  import { RouterHttpRoute } from './http/RouterHttpRoute';
31
31
  import { TracingHandler } from './http/TracingHandler';
32
32
  import { TerminalHttpHandler } from './http/terminal/TerminalHttpHandler';
33
+ import { DeviceNotificationHub } from './notifications/DeviceNotificationHub';
34
+ import { DeviceNotificationResourceListener } from './notifications/DeviceNotificationResourceListener';
35
+ import { DeviceNotificationWebSocketServer } from './http/DeviceNotificationWebSocketServer';
36
+ import { DeviceNotificationTicketHandler } from './api/handlers/DeviceNotificationTicketHandler';
37
+ import { registerDeviceNotificationRuntime } from './api/handlers/DeviceNotificationRuntime';
33
38
  import { EdgeNodeCertificateHttpHandler } from './http/admin/EdgeNodeCertificateHttpHandler';
34
39
  import { ReservedSuffixIdentifierGenerator } from './pods/ReservedSuffixIdentifierGenerator';
35
40
  import { DrizzleIndexedStorage } from './identity/drizzle/DrizzleIndexedStorage';
@@ -101,6 +106,7 @@ import { LocalPodProvisioningService } from './provision/LocalPodProvisioningSer
101
106
  import { SqliteSolidFsSyncJournal } from './solidfs/SolidFsSyncJournal';
102
107
  export * from './api/reconciler';
103
108
  export * from './edge/reachability';
109
+ export * from './notifications';
104
110
  export type { DnsProvider, ListDnsRecordsInput, ListableDnsProvider, DeleteDnsRecordInput, DnsRecordSummary, UpsertDnsRecordInput, } from './dns/DnsProvider';
105
111
  export type { EdgeNodeCertificateProvisioner } from './edge/EdgeNodeCertificateProvisioner';
106
112
  export type { EdgeNodeAgentOptions, EdgeNodeP2PAcceptEvent } from './edge/EdgeNodeAgent';
@@ -110,4 +116,4 @@ export type { EntitlementProvider, AccountEntitlement } from './quota/Entitlemen
110
116
  export type { TunnelProvider, TunnelConfig, TunnelSetupOptions, TunnelStatus, } from './tunnel/TunnelProvider';
111
117
  export type { SubdomainRegistration, ConnectivityResult, SubdomainServiceOptions, } from './subdomain/SubdomainService';
112
118
  export { AppStaticAssetHandler } from './http/AppStaticAssetHandler';
113
- export { RepresentationPartialConvertingStore, MinioDataAccessor, QuadstoreSparqlDataAccessor, QuintStoreSparqlDataAccessor, SolidRdfDataAccessor, MixDataAccessor, ConfigurableLoggerFactory, SparqlUpdateResourceStore, SubgraphQueryEngine, QuadstoreSparqlEngine, QuintstoreSparqlEngine, SubgraphSparqlHttpHandler, QuotaAdminHttpHandler, ClusterIngressRouter, ClusterWebSocketConfigurator, EdgeNodeDirectDebugHttpHandler, EdgeNodeProxyHttpHandler, RouterHttpHandler, RouterHttpRoute, TracingHandler, EdgeNodeCertificateHttpHandler, TerminalHttpHandler, ReservedSuffixIdentifierGenerator, DrizzleIndexedStorage, ValidatingIdentityProviderHttpHandler, PostgresKeyValueStorage, RedisKeyValueStorage, SqliteKeyValueStorage, BaseKeyValueStorage, DrizzleQuotaService, NoopQuotaService, HttpEntitlementProvider, NoopEntitlementProvider, PerAccountQuotaStrategy, TencentDnsProvider, EdgeNodeDnsCoordinator, Dns01CertificateProvisioner, SimpleEdgeNodeTunnelManager, NoopEdgeNodeTunnelManager, FrpTunnelManager, EdgeNodeHealthProbeService, EdgeNodeAgent, EdgeNodeAgentInitializer, EdgeNodeCertificateService, AcmeCertificateManager, EdgeNodeModeDetector, ClusterIdentifierStrategy, UsageTrackingStore, CenterNodeRegistrationService, PodRoutingHttpHandler, ReactAppViewHandler, QuintStore, SqliteQuintStore, PgQuintStore, RdfTermDictionary, RdfQuadIndex, Rdf3xIndex, RdfTextIndex, RdfVectorIndex, PostgresRdfTextIndex, PostgresRdfVectorIndex, RdfSparqlAdapter, ShadowRdfQuintStore, SolidRdfEngine, PostgresRdfEngine, SolidRdfSparqlEngine, VectorStore, SqliteVectorStore, PostgresVectorStore, VectorHttpHandler, ProviderRegistry, ProviderRegistryImpl, EmbeddingService, EmbeddingServiceImpl, CredentialReader, CredentialReaderImpl, CloudflareTunnelProvider, LocalTunnelProvider, NgrokTunnelProvider, SubdomainService, MultiDomainIdentifierStrategy, SubdomainPodIdentifierStrategy, DisabledOidcHandler, DisabledIdentityProviderHandler, AutoDetectOidcHandler, AutoDetectIdentityProviderHandler, LoopbackClientIdAdapterFactory, ScopedPickWebIdHandler, UrlAwareRedisLocker, ProvisionPodCreator, ProvisionCodeCodec, LocalPodProvisioningService, SqliteSolidFsSyncJournal, };
119
+ export { RepresentationPartialConvertingStore, MinioDataAccessor, QuadstoreSparqlDataAccessor, QuintStoreSparqlDataAccessor, SolidRdfDataAccessor, MixDataAccessor, ConfigurableLoggerFactory, SparqlUpdateResourceStore, SubgraphQueryEngine, QuadstoreSparqlEngine, QuintstoreSparqlEngine, SubgraphSparqlHttpHandler, QuotaAdminHttpHandler, ClusterIngressRouter, ClusterWebSocketConfigurator, EdgeNodeDirectDebugHttpHandler, EdgeNodeProxyHttpHandler, RouterHttpHandler, RouterHttpRoute, TracingHandler, EdgeNodeCertificateHttpHandler, TerminalHttpHandler, DeviceNotificationHub, DeviceNotificationResourceListener, DeviceNotificationWebSocketServer, DeviceNotificationTicketHandler, registerDeviceNotificationRuntime, ReservedSuffixIdentifierGenerator, DrizzleIndexedStorage, ValidatingIdentityProviderHttpHandler, PostgresKeyValueStorage, RedisKeyValueStorage, SqliteKeyValueStorage, BaseKeyValueStorage, DrizzleQuotaService, NoopQuotaService, HttpEntitlementProvider, NoopEntitlementProvider, PerAccountQuotaStrategy, TencentDnsProvider, EdgeNodeDnsCoordinator, Dns01CertificateProvisioner, SimpleEdgeNodeTunnelManager, NoopEdgeNodeTunnelManager, FrpTunnelManager, EdgeNodeHealthProbeService, EdgeNodeAgent, EdgeNodeAgentInitializer, EdgeNodeCertificateService, AcmeCertificateManager, EdgeNodeModeDetector, ClusterIdentifierStrategy, UsageTrackingStore, CenterNodeRegistrationService, PodRoutingHttpHandler, ReactAppViewHandler, QuintStore, SqliteQuintStore, PgQuintStore, RdfTermDictionary, RdfQuadIndex, Rdf3xIndex, RdfTextIndex, RdfVectorIndex, PostgresRdfTextIndex, PostgresRdfVectorIndex, RdfSparqlAdapter, ShadowRdfQuintStore, SolidRdfEngine, PostgresRdfEngine, SolidRdfSparqlEngine, VectorStore, SqliteVectorStore, PostgresVectorStore, VectorHttpHandler, ProviderRegistry, ProviderRegistryImpl, EmbeddingService, EmbeddingServiceImpl, CredentialReader, CredentialReaderImpl, CloudflareTunnelProvider, LocalTunnelProvider, NgrokTunnelProvider, SubdomainService, MultiDomainIdentifierStrategy, SubdomainPodIdentifierStrategy, DisabledOidcHandler, DisabledIdentityProviderHandler, AutoDetectOidcHandler, AutoDetectIdentityProviderHandler, LoopbackClientIdAdapterFactory, ScopedPickWebIdHandler, UrlAwareRedisLocker, ProvisionPodCreator, ProvisionCodeCodec, LocalPodProvisioningService, SqliteSolidFsSyncJournal, };
package/dist/index.js CHANGED
@@ -14,8 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.CenterNodeRegistrationService = exports.UsageTrackingStore = exports.ClusterIdentifierStrategy = exports.EdgeNodeModeDetector = exports.AcmeCertificateManager = exports.EdgeNodeCertificateService = exports.EdgeNodeAgentInitializer = exports.EdgeNodeAgent = exports.EdgeNodeHealthProbeService = exports.FrpTunnelManager = exports.NoopEdgeNodeTunnelManager = exports.SimpleEdgeNodeTunnelManager = exports.Dns01CertificateProvisioner = exports.EdgeNodeDnsCoordinator = exports.TencentDnsProvider = exports.PerAccountQuotaStrategy = exports.NoopEntitlementProvider = exports.HttpEntitlementProvider = exports.NoopQuotaService = exports.DrizzleQuotaService = exports.BaseKeyValueStorage = exports.SqliteKeyValueStorage = exports.RedisKeyValueStorage = exports.PostgresKeyValueStorage = exports.ValidatingIdentityProviderHttpHandler = exports.DrizzleIndexedStorage = exports.ReservedSuffixIdentifierGenerator = exports.TerminalHttpHandler = exports.EdgeNodeCertificateHttpHandler = exports.TracingHandler = exports.RouterHttpRoute = exports.RouterHttpHandler = exports.EdgeNodeProxyHttpHandler = exports.EdgeNodeDirectDebugHttpHandler = exports.ClusterWebSocketConfigurator = exports.ClusterIngressRouter = exports.QuotaAdminHttpHandler = exports.SubgraphSparqlHttpHandler = exports.QuintstoreSparqlEngine = exports.QuadstoreSparqlEngine = exports.SubgraphQueryEngine = exports.SparqlUpdateResourceStore = exports.ConfigurableLoggerFactory = exports.MixDataAccessor = exports.SolidRdfDataAccessor = exports.QuintStoreSparqlDataAccessor = exports.QuadstoreSparqlDataAccessor = exports.MinioDataAccessor = exports.RepresentationPartialConvertingStore = exports.AppStaticAssetHandler = void 0;
18
- exports.SqliteSolidFsSyncJournal = exports.LocalPodProvisioningService = exports.ProvisionCodeCodec = exports.ProvisionPodCreator = exports.UrlAwareRedisLocker = exports.ScopedPickWebIdHandler = exports.LoopbackClientIdAdapterFactory = exports.AutoDetectIdentityProviderHandler = exports.AutoDetectOidcHandler = exports.DisabledIdentityProviderHandler = exports.DisabledOidcHandler = exports.SubdomainPodIdentifierStrategy = exports.MultiDomainIdentifierStrategy = exports.SubdomainService = exports.NgrokTunnelProvider = exports.LocalTunnelProvider = exports.CloudflareTunnelProvider = exports.CredentialReaderImpl = exports.CredentialReader = exports.EmbeddingServiceImpl = exports.EmbeddingService = exports.ProviderRegistryImpl = exports.ProviderRegistry = exports.VectorHttpHandler = exports.PostgresVectorStore = exports.SqliteVectorStore = exports.VectorStore = exports.SolidRdfSparqlEngine = exports.PostgresRdfEngine = exports.SolidRdfEngine = exports.ShadowRdfQuintStore = exports.RdfSparqlAdapter = exports.PostgresRdfVectorIndex = exports.PostgresRdfTextIndex = exports.RdfVectorIndex = exports.RdfTextIndex = exports.Rdf3xIndex = exports.RdfQuadIndex = exports.RdfTermDictionary = exports.PgQuintStore = exports.SqliteQuintStore = exports.QuintStore = exports.ReactAppViewHandler = exports.PodRoutingHttpHandler = void 0;
17
+ exports.EdgeNodeCertificateService = exports.EdgeNodeAgentInitializer = exports.EdgeNodeAgent = exports.EdgeNodeHealthProbeService = exports.FrpTunnelManager = exports.NoopEdgeNodeTunnelManager = exports.SimpleEdgeNodeTunnelManager = exports.Dns01CertificateProvisioner = exports.EdgeNodeDnsCoordinator = exports.TencentDnsProvider = exports.PerAccountQuotaStrategy = exports.NoopEntitlementProvider = exports.HttpEntitlementProvider = exports.NoopQuotaService = exports.DrizzleQuotaService = exports.BaseKeyValueStorage = exports.SqliteKeyValueStorage = exports.RedisKeyValueStorage = exports.PostgresKeyValueStorage = exports.ValidatingIdentityProviderHttpHandler = exports.DrizzleIndexedStorage = exports.ReservedSuffixIdentifierGenerator = exports.registerDeviceNotificationRuntime = exports.DeviceNotificationTicketHandler = exports.DeviceNotificationWebSocketServer = exports.DeviceNotificationResourceListener = exports.DeviceNotificationHub = exports.TerminalHttpHandler = exports.EdgeNodeCertificateHttpHandler = exports.TracingHandler = exports.RouterHttpRoute = exports.RouterHttpHandler = exports.EdgeNodeProxyHttpHandler = exports.EdgeNodeDirectDebugHttpHandler = exports.ClusterWebSocketConfigurator = exports.ClusterIngressRouter = exports.QuotaAdminHttpHandler = exports.SubgraphSparqlHttpHandler = exports.QuintstoreSparqlEngine = exports.QuadstoreSparqlEngine = exports.SubgraphQueryEngine = exports.SparqlUpdateResourceStore = exports.ConfigurableLoggerFactory = exports.MixDataAccessor = exports.SolidRdfDataAccessor = exports.QuintStoreSparqlDataAccessor = exports.QuadstoreSparqlDataAccessor = exports.MinioDataAccessor = exports.RepresentationPartialConvertingStore = exports.AppStaticAssetHandler = void 0;
18
+ exports.SqliteSolidFsSyncJournal = exports.LocalPodProvisioningService = exports.ProvisionCodeCodec = exports.ProvisionPodCreator = exports.UrlAwareRedisLocker = exports.ScopedPickWebIdHandler = exports.LoopbackClientIdAdapterFactory = exports.AutoDetectIdentityProviderHandler = exports.AutoDetectOidcHandler = exports.DisabledIdentityProviderHandler = exports.DisabledOidcHandler = exports.SubdomainPodIdentifierStrategy = exports.MultiDomainIdentifierStrategy = exports.SubdomainService = exports.NgrokTunnelProvider = exports.LocalTunnelProvider = exports.CloudflareTunnelProvider = exports.CredentialReaderImpl = exports.CredentialReader = exports.EmbeddingServiceImpl = exports.EmbeddingService = exports.ProviderRegistryImpl = exports.ProviderRegistry = exports.VectorHttpHandler = exports.PostgresVectorStore = exports.SqliteVectorStore = exports.VectorStore = exports.SolidRdfSparqlEngine = exports.PostgresRdfEngine = exports.SolidRdfEngine = exports.ShadowRdfQuintStore = exports.RdfSparqlAdapter = exports.PostgresRdfVectorIndex = exports.PostgresRdfTextIndex = exports.RdfVectorIndex = exports.RdfTextIndex = exports.Rdf3xIndex = exports.RdfQuadIndex = exports.RdfTermDictionary = exports.PgQuintStore = exports.SqliteQuintStore = exports.QuintStore = exports.ReactAppViewHandler = exports.PodRoutingHttpHandler = exports.CenterNodeRegistrationService = exports.UsageTrackingStore = exports.ClusterIdentifierStrategy = exports.EdgeNodeModeDetector = exports.AcmeCertificateManager = void 0;
19
19
  require("./runtime/configure-drizzle-solid");
20
20
  const RepresentationPartialConvertingStore_1 = require("./storage/RepresentationPartialConvertingStore");
21
21
  Object.defineProperty(exports, "RepresentationPartialConvertingStore", { enumerable: true, get: function () { return RepresentationPartialConvertingStore_1.RepresentationPartialConvertingStore; } });
@@ -60,6 +60,16 @@ const TracingHandler_1 = require("./http/TracingHandler");
60
60
  Object.defineProperty(exports, "TracingHandler", { enumerable: true, get: function () { return TracingHandler_1.TracingHandler; } });
61
61
  const TerminalHttpHandler_1 = require("./http/terminal/TerminalHttpHandler");
62
62
  Object.defineProperty(exports, "TerminalHttpHandler", { enumerable: true, get: function () { return TerminalHttpHandler_1.TerminalHttpHandler; } });
63
+ const DeviceNotificationHub_1 = require("./notifications/DeviceNotificationHub");
64
+ Object.defineProperty(exports, "DeviceNotificationHub", { enumerable: true, get: function () { return DeviceNotificationHub_1.DeviceNotificationHub; } });
65
+ const DeviceNotificationResourceListener_1 = require("./notifications/DeviceNotificationResourceListener");
66
+ Object.defineProperty(exports, "DeviceNotificationResourceListener", { enumerable: true, get: function () { return DeviceNotificationResourceListener_1.DeviceNotificationResourceListener; } });
67
+ const DeviceNotificationWebSocketServer_1 = require("./http/DeviceNotificationWebSocketServer");
68
+ Object.defineProperty(exports, "DeviceNotificationWebSocketServer", { enumerable: true, get: function () { return DeviceNotificationWebSocketServer_1.DeviceNotificationWebSocketServer; } });
69
+ const DeviceNotificationTicketHandler_1 = require("./api/handlers/DeviceNotificationTicketHandler");
70
+ Object.defineProperty(exports, "DeviceNotificationTicketHandler", { enumerable: true, get: function () { return DeviceNotificationTicketHandler_1.DeviceNotificationTicketHandler; } });
71
+ const DeviceNotificationRuntime_1 = require("./api/handlers/DeviceNotificationRuntime");
72
+ Object.defineProperty(exports, "registerDeviceNotificationRuntime", { enumerable: true, get: function () { return DeviceNotificationRuntime_1.registerDeviceNotificationRuntime; } });
63
73
  const EdgeNodeCertificateHttpHandler_1 = require("./http/admin/EdgeNodeCertificateHttpHandler");
64
74
  Object.defineProperty(exports, "EdgeNodeCertificateHttpHandler", { enumerable: true, get: function () { return EdgeNodeCertificateHttpHandler_1.EdgeNodeCertificateHttpHandler; } });
65
75
  const ReservedSuffixIdentifierGenerator_1 = require("./pods/ReservedSuffixIdentifierGenerator");
@@ -207,6 +217,7 @@ const SolidFsSyncJournal_1 = require("./solidfs/SolidFsSyncJournal");
207
217
  Object.defineProperty(exports, "SqliteSolidFsSyncJournal", { enumerable: true, get: function () { return SolidFsSyncJournal_1.SqliteSolidFsSyncJournal; } });
208
218
  __exportStar(require("./api/reconciler"), exports);
209
219
  __exportStar(require("./edge/reachability"), exports);
220
+ __exportStar(require("./notifications"), exports);
210
221
  // Export the new AppStaticAssetHandler
211
222
  var AppStaticAssetHandler_1 = require("./http/AppStaticAssetHandler");
212
223
  Object.defineProperty(exports, "AppStaticAssetHandler", { enumerable: true, get: function () { return AppStaticAssetHandler_1.AppStaticAssetHandler; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,6CAA2C;AAC3C,yGAAsG;AAoKpG,qHApKO,2EAAoC,OAoKP;AAnKtC,6EAA0E;AAoKxE,kGApKO,qCAAiB,OAoKP;AAnKnB,iGAA8F;AAoK5F,4GApKO,yDAA2B,OAoKP;AAnK7B,mGAAgG;AAoK9F,6GApKO,2DAA4B,OAoKP;AAnK9B,mFAAgF;AAoK9E,qGApKO,2CAAoB,OAoKP;AAnKtB,yEAAsE;AAoKpE,gGApKO,iCAAe,OAoKP;AAnKjB,mFAAgF;AAoK9E,0GApKO,qDAAyB,OAoKP;AAnK3B,8EAA2E;AAqKzE,oGArKO,yCAAmB,OAqKP;AApKrB,0FAA2G;AAqKzG,sGArKO,iDAAqB,OAqKP;AACrB,uGAtK8B,kDAAsB,OAsK9B;AAnIxB,6CAA2B;AAC3B,6CAA2B;AAC3B,gFAA6E;AAkI3E,0GAlIO,qDAAyB,OAkIP;AAjI3B,8EAA2E;AAkIzE,sGAlIO,6CAAqB,OAkIP;AAjIvB,mFAAgF;AA4H9E,0GA5HO,qDAAyB,OA4HP;AA3H3B,sEAAmE;AAiIjE,qGAjIO,2CAAoB,OAiIP;AAhItB,sFAAmF;AAiIjF,6GAjIO,2DAA4B,OAiIP;AAhI9B,0FAAuF;AAiIrF,+GAjIO,+DAA8B,OAiIP;AAhIhC,8EAA2E;AAiIzE,yGAjIO,mDAAwB,OAiIP;AAhI1B,gEAA6D;AAiI3D,kGAjIO,qCAAiB,OAiIP;AAhInB,4DAAyD;AAiIvD,gGAjIO,iCAAe,OAiIP;AAhIjB,0DAAuD;AAiIrD,+FAjIO,+BAAc,OAiIP;AAhIhB,6EAA0E;AAkIxE,oGAlIO,yCAAmB,OAkIP;AAjIrB,gGAA6F;AAgI3F,+GAhIO,+DAA8B,OAgIP;AA/HhC,gGAA6F;AAiI3F,kHAjIO,qEAAiC,OAiIP;AAhInC,oFAAiF;AAiI/E,sGAjIO,6CAAqB,OAiIP;AAhIvB,4GAAyG;AAiIvG,sHAjIO,6EAAqC,OAiIP;AAhIvC,wFAAqF;AAiInF,wGAjIO,iDAAuB,OAiIP;AAhIzB,kFAA+E;AAiI7E,qGAjIO,2CAAoB,OAiIP;AAhItB,oFAAiF;AAiI/E,sGAjIO,6CAAqB,OAiIP;AAhIvB,gFAA6E;AAiI3E,oGAjIO,yCAAmB,OAiIP;AAhIrB,qEAAkE;AAiIhE,oGAjIO,yCAAmB,OAiIP;AAhIrB,+DAA4D;AAiI1D,iGAjIO,mCAAgB,OAiIP;AAhIlB,qEAA+F;AAiI7F,wGAjIO,6CAAuB,OAiIP;AACvB,wGAlIgC,6CAAuB,OAkIhC;AAjIzB,qFAAkF;AAkIhF,wGAlIO,iDAAuB,OAkIP;AAjIzB,yEAAsE;AAkIpE,mGAlIO,uCAAkB,OAkIP;AAjIpB,0EAAuE;AAkIrE,uGAlIO,+CAAsB,OAkIP;AAjIxB,oFAAiF;AAkI/E,4GAlIO,yDAA2B,OAkIP;AAjI7B,wEAAsG;AAkIpG,4GAlIO,mDAA2B,OAkIP;AAC3B,0GAnIoC,iDAAyB,OAmIpC;AAlI3B,8DAA2D;AAmIzD,iGAnIO,mCAAgB,OAmIP;AAlIlB,+EAA4E;AAuI1E,uGAvIO,+CAAsB,OAuIP;AAtIxB,kFAA+E;AAkI7E,2GAlIO,uDAA0B,OAkIP;AAjI5B,wDAAqD;AAkInD,8FAlIO,6BAAa,OAkIP;AAjIf,8EAA2E;AAkIzE,yGAlIO,mDAAwB,OAkIP;AAjI1B,qFAAkF;AAkIhF,2GAlIO,uDAA0B,OAkIP;AAhI5B,2EAAwE;AAoItE,mGApIO,uCAAkB,OAoIP;AAnIpB,sEAAmE;AAiIjE,qGAjIO,2CAAoB,OAiIP;AAhItB,4FAAyF;AAiIvF,0GAjIO,qDAAyB,OAiIP;AAhI3B,4FAAyF;AAkIvF,8GAlIO,6DAA6B,OAkIP;AAjI/B,wEAAqE;AAkInE,sGAlIO,6CAAqB,OAkIP;AAjIvB,wEAAqE;AAkInE,oGAlIO,yCAAmB,OAkIP;AAjIrB,uEAAoE;AAoIlE,iGApIO,mCAAgB,OAoIP;AAnIlB,+DAA4D;AAoI1D,6FApIO,2BAAY,OAoIP;AAnId,iDAAmD;AAiIjD,2FAjIO,kBAAU,OAiIP;AAhIZ,6DAA0D;AAqIxD,6FArIO,2BAAY,OAqIP;AApId,yDAAsD;AAqIpD,2FArIO,uBAAU,OAqIP;AApIZ,6DAA0D;AAqIxD,6FArIO,2BAAY,OAqIP;AApId,iEAA8D;AAqI5D,+FArIO,+BAAc,OAqIP;AApIhB,6EAA0E;AAqIxE,qGArIO,2CAAoB,OAqIP;AApItB,iFAA8E;AAqI5E,uGArIO,+CAAsB,OAqIP;AApIxB,qEAAkE;AAqIhE,iGArIO,mCAAgB,OAqIP;AApIlB,uEAAoE;AA6HlE,kGA7HO,qCAAiB,OA6HP;AA5HnB,2EAAwE;AAoItE,oGApIO,yCAAmB,OAoIP;AAnIrB,iEAA8D;AAoI5D,+FApIO,+BAAc,OAoIP;AAnIhB,uEAAoE;AAoIlE,kGApIO,qCAAiB,OAoIP;AAnInB,6EAA0E;AAoIxE,qGApIO,2CAAoB,OAoIP;AAlItB,oBAAoB;AACpB,kDAAgF;AAoI9E,kGApIO,yBAAiB,OAoIP;AACjB,oGArI0B,2BAAmB,OAqI1B;AApIrB,uEAAoE;AAqIlE,kGArIO,qCAAiB,OAqIP;AApInB,oEAAiE;AAsI/D,iGAtIO,mCAAgB,OAsIP;AArIlB,4EAAyE;AAsIvE,qGAtIO,2CAAoB,OAsIP;AArItB,oEAAiE;AAsI/D,iGAtIO,mCAAgB,OAsIP;AArIlB,4EAAyE;AAsIvE,qGAtIO,2CAAoB,OAsIP;AArItB,oEAAiE;AAsI/D,iGAtIO,mCAAgB,OAsIP;AArIlB,4EAAyE;AAsIvE,qGAtIO,2CAAoB,OAsIP;AArItB,8DAA2D;AA2HzD,4FA3HO,yBAAW,OA2HP;AA1Hb,kCAAkC;AAClC,gFAA6E;AAqI3E,yGArIO,mDAAwB,OAqIP;AApI1B,sEAAmE;AAqIjE,oGArIO,yCAAmB,OAqIP;AApIrB,sEAAmE;AAqIjE,oGArIO,yCAAmB,OAqIP;AApIrB,mEAAgE;AAqI9D,iGArIO,mCAAgB,OAqIP;AApIlB,+EAA4E;AA8I1E,oGA9IO,yCAAmB,OA8IP;AA7IrB,+BAA+B;AAC/B,oGAAiG;AAoI/F,8GApIO,6DAA6B,OAoIP;AAnI/B,sGAAmG;AAoIjG,+GApIO,+DAA8B,OAoIP;AAnIhC,6EAA0E;AAoIxE,oGApIO,yCAAmB,OAoIP;AAnIrB,qGAAkG;AAoIhG,gHApIO,iEAA+B,OAoIP;AAnIjC,iFAA8E;AAoI5E,sGApIO,6CAAqB,OAoIP;AAnIvB,yGAAsG;AAoIpG,kHApIO,qEAAiC,OAoIP;AAnInC,mGAAgG;AAoI9F,+GApIO,+DAA8B,OAoIP;AAnIhC,mFAAgF;AAoI9E,uGApIO,+CAAsB,OAoIP;AAnIxB,uBAAuB;AACvB,yEAAsE;AAqIpE,oGArIO,yCAAmB,OAqIP;AApIrB,uEAAoE;AAqIlE,mGArIO,uCAAkB,OAqIP;AApIpB,yFAAsF;AAqIpF,4GArIO,yDAA2B,OAqIP;AApI7B,qEAAwE;AAsItE,yGAtIO,6CAAwB,OAsIP;AApI1B,mDAAiC;AACjC,sDAAoC;AA2BpC,uCAAuC;AACvC,sEAAqE;AAA5D,8HAAA,qBAAqB,OAAA","sourcesContent":["import './runtime/configure-drizzle-solid';\nimport { RepresentationPartialConvertingStore } from './storage/RepresentationPartialConvertingStore';\nimport { MinioDataAccessor } from './storage/accessors/MinioDataAccessor';\nimport { QuadstoreSparqlDataAccessor } from './storage/accessors/QuadstoreSparqlDataAccessor';\nimport { QuintStoreSparqlDataAccessor } from './storage/accessors/QuintStoreSparqlDataAccessor';\nimport { SolidRdfDataAccessor } from './storage/accessors/SolidRdfDataAccessor';\nimport { MixDataAccessor } from './storage/accessors/MixDataAccessor';\nimport { ConfigurableLoggerFactory } from './logging/ConfigurableLoggerFactory';\nimport { SubgraphQueryEngine } from './storage/sparql/SubgraphQueryEngine';\nimport { QuadstoreSparqlEngine, QuintstoreSparqlEngine } from './storage/sparql/CompatibilitySparqlEngine';\nexport type { SparqlEngine } from './storage/sparql/SubgraphQueryEngine';\nexport type {\n RdfEngineLike,\n RdfEngineStorageStats,\n RdfDerivedIndexRefreshResult,\n RdfIndexStats,\n RdfIndexSpaceObject,\n RdfIndexMetrics,\n RdfIndexPutOptions,\n RdfPatternQuery,\n RdfQuadIndexOptions,\n RdfQuadIndexScanResult,\n RdfTextIndexLike,\n RdfTextIndexOptions,\n RdfTextIndexSyncLike,\n RdfVectorIndexLike,\n RdfVectorIndexOptions,\n RdfVectorIndexSyncLike,\n RdfShadowBackfillOptions,\n RdfShadowBackfillResult,\n RdfShadowDiff,\n RdfShadowScanResult,\n RdfSourceInput,\n} from './storage/rdf/types';\nexport type { RdfSparqlCompileResult } from './storage/rdf/RdfSparqlAdapter';\nexport type { RdfAccessScope } from './storage/rdf/RdfAccessScope';\nexport type { ShadowRdfQuintStoreOptions } from './storage/rdf/ShadowRdfQuintStore';\nexport type {\n SolidRdfSparqlEngineOptions,\n SolidRdfSparqlFallback,\n} from './storage/rdf/SolidRdfSparqlEngine';\nexport type { PostgresRdfEngineOptions } from './storage/rdf/PostgresRdfEngine';\nexport type { PostgresRdfTextIndexOptions } from './storage/rdf/PostgresRdfTextIndex';\nexport type { PostgresRdfVectorIndexOptions } from './storage/rdf/PostgresRdfVectorIndex';\nexport * from './document';\nexport * from './security';\nimport { SubgraphSparqlHttpHandler } from './http/SubgraphSparqlHttpHandler';\nimport { QuotaAdminHttpHandler } from './http/quota/QuotaAdminHttpHandler';\nimport { SparqlUpdateResourceStore } from './storage/SparqlUpdateResourceStore';\nimport { ClusterIngressRouter } from './http/ClusterIngressRouter';\nimport { ClusterWebSocketConfigurator } from './http/ClusterWebSocketConfigurator';\nimport { EdgeNodeDirectDebugHttpHandler } from './http/EdgeNodeDirectDebugHttpHandler';\nimport { EdgeNodeProxyHttpHandler } from './http/EdgeNodeProxyHttpHandler';\nimport { RouterHttpHandler } from './http/RouterHttpHandler';\nimport { RouterHttpRoute } from './http/RouterHttpRoute';\nimport { TracingHandler } from './http/TracingHandler';\nimport { TerminalHttpHandler } from './http/terminal/TerminalHttpHandler';\nimport { EdgeNodeCertificateHttpHandler } from './http/admin/EdgeNodeCertificateHttpHandler';\nimport { ReservedSuffixIdentifierGenerator } from './pods/ReservedSuffixIdentifierGenerator';\nimport { DrizzleIndexedStorage } from './identity/drizzle/DrizzleIndexedStorage';\nimport { ValidatingIdentityProviderHttpHandler } from './identity/ValidatingIdentityProviderHttpHandler';\nimport { PostgresKeyValueStorage } from './storage/keyvalue/PostgresKeyValueStorage';\nimport { RedisKeyValueStorage } from './storage/keyvalue/RedisKeyValueStorage';\nimport { SqliteKeyValueStorage } from './storage/keyvalue/SqliteKeyValueStorage';\nimport { BaseKeyValueStorage } from './storage/keyvalue/BaseKeyValueStorage';\nimport { DrizzleQuotaService } from './quota/DrizzleQuotaService';\nimport { NoopQuotaService } from './quota/NoopQuotaService';\nimport { HttpEntitlementProvider, NoopEntitlementProvider } from './quota/EntitlementProvider';\nimport { PerAccountQuotaStrategy } from './storage/quota/PerAccountQuotaStrategy';\nimport { TencentDnsProvider } from './dns/tencent/TencentDnsProvider';\nimport { EdgeNodeDnsCoordinator } from './edge/EdgeNodeDnsCoordinator';\nimport { Dns01CertificateProvisioner } from './edge/Dns01CertificateProvisioner';\nimport { SimpleEdgeNodeTunnelManager, NoopEdgeNodeTunnelManager } from './edge/EdgeNodeTunnelManager';\nimport { FrpTunnelManager } from './edge/FrpTunnelManager';\nimport { AcmeCertificateManager } from './edge/acme/AcmeCertificateManager';\nimport { EdgeNodeHealthProbeService } from './edge/EdgeNodeHealthProbeService';\nimport { EdgeNodeAgent } from './edge/EdgeNodeAgent';\nimport { EdgeNodeAgentInitializer } from './edge/EdgeNodeAgentInitializer';\nimport { EdgeNodeCertificateService } from './service/EdgeNodeCertificateService';\nimport { createBandwidthThrottleTransform } from './util/stream/BandwidthThrottleTransform';\nimport { UsageTrackingStore } from './storage/quota/UsageTrackingStore';\nimport { EdgeNodeModeDetector } from './edge/EdgeNodeModeDetector';\nimport { ClusterIdentifierStrategy } from './util/identifiers/ClusterIdentifierStrategy';\nimport { CenterNodeRegistrationService } from './identity/CenterNodeRegistrationService';\nimport { PodRoutingHttpHandler } from './http/PodRoutingHttpHandler';\nimport { ReactAppViewHandler } from './identity/ReactAppViewHandler';\nimport { SqliteQuintStore } from './storage/quint/SqliteQuintStore';\nimport { PgQuintStore } from './storage/quint/PgQuintStore';\nimport { QuintStore } from './storage/quint/types';\nimport { RdfQuadIndex } from './storage/rdf/RdfQuadIndex';\nimport { Rdf3xIndex } from './storage/rdf/Rdf3xIndex';\nimport { RdfTextIndex } from './storage/rdf/RdfTextIndex';\nimport { RdfVectorIndex } from './storage/rdf/RdfVectorIndex';\nimport { PostgresRdfTextIndex } from './storage/rdf/PostgresRdfTextIndex';\nimport { PostgresRdfVectorIndex } from './storage/rdf/PostgresRdfVectorIndex';\nimport { RdfSparqlAdapter } from './storage/rdf/RdfSparqlAdapter';\nimport { RdfTermDictionary } from './storage/rdf/RdfTermDictionary';\nimport { ShadowRdfQuintStore } from './storage/rdf/ShadowRdfQuintStore';\nimport { SolidRdfEngine } from './storage/rdf/SolidRdfEngine';\nimport { PostgresRdfEngine } from './storage/rdf/PostgresRdfEngine';\nimport { SolidRdfSparqlEngine } from './storage/rdf/SolidRdfSparqlEngine';\nimport type { EdgeNodeCertificateProvisioner } from './edge/EdgeNodeCertificateProvisioner';\n// Vector components\nimport { SqliteVectorStore, PostgresVectorStore } from './storage/vector/index';\nimport { VectorHttpHandler } from './http/vector/VectorHttpHandler';\nimport { ProviderRegistry } from './ai/service/ProviderRegistry';\nimport { ProviderRegistryImpl } from './ai/service/ProviderRegistryImpl';\nimport { EmbeddingService } from './ai/service/EmbeddingService';\nimport { EmbeddingServiceImpl } from './ai/service/EmbeddingServiceImpl';\nimport { CredentialReader } from './ai/service/CredentialReader';\nimport { CredentialReaderImpl } from './ai/service/CredentialReaderImpl';\nimport { VectorStore } from './storage/vector/VectorStore';\n// Tunnel and Subdomain components\nimport { CloudflareTunnelProvider } from './tunnel/CloudflareTunnelProvider';\nimport { LocalTunnelProvider } from './tunnel/LocalTunnelProvider';\nimport { NgrokTunnelProvider } from './tunnel/NgrokTunnelProvider';\nimport { SubdomainService } from './subdomain/SubdomainService';\nimport { UrlAwareRedisLocker } from './storage/locking/UrlAwareRedisLocker';\n// IdP/SP separation components\nimport { MultiDomainIdentifierStrategy } from './util/identifiers/MultiDomainIdentifierStrategy';\nimport { SubdomainPodIdentifierStrategy } from './util/identifiers/SubdomainPodIdentifierStrategy';\nimport { DisabledOidcHandler } from './identity/oidc/DisabledOidcHandler';\nimport { DisabledIdentityProviderHandler } from './identity/oidc/DisabledIdentityProviderHandler';\nimport { AutoDetectOidcHandler } from './identity/oidc/AutoDetectOidcHandler';\nimport { AutoDetectIdentityProviderHandler } from './identity/oidc/AutoDetectIdentityProviderHandler';\nimport { LoopbackClientIdAdapterFactory } from './identity/oidc/LoopbackClientIdAdapterFactory';\nimport { ScopedPickWebIdHandler } from './identity/oidc/ScopedPickWebIdHandler';\n// Provision components\nimport { ProvisionPodCreator } from './provision/ProvisionPodCreator';\nimport { ProvisionCodeCodec } from './provision/ProvisionCodeCodec';\nimport { LocalPodProvisioningService } from './provision/LocalPodProvisioningService';\nimport { SqliteSolidFsSyncJournal } from './solidfs/SolidFsSyncJournal';\n\nexport * from './api/reconciler';\nexport * from './edge/reachability';\n\nexport type {\n DnsProvider,\n ListDnsRecordsInput,\n ListableDnsProvider,\n DeleteDnsRecordInput,\n DnsRecordSummary,\n UpsertDnsRecordInput,\n} from './dns/DnsProvider';\nexport type { EdgeNodeCertificateProvisioner } from './edge/EdgeNodeCertificateProvisioner';\nexport type { EdgeNodeAgentOptions, EdgeNodeP2PAcceptEvent } from './edge/EdgeNodeAgent';\nexport type { EdgeNodeTunnelManager } from './edge/interfaces/EdgeNodeTunnelManager';\nexport type { QuotaService, AccountQuota } from './quota/QuotaService';\nexport type { EntitlementProvider, AccountEntitlement } from './quota/EntitlementProvider';\n// Tunnel and Subdomain types\nexport type {\n TunnelProvider,\n TunnelConfig,\n TunnelSetupOptions,\n TunnelStatus,\n} from './tunnel/TunnelProvider';\nexport type {\n SubdomainRegistration,\n ConnectivityResult,\n SubdomainServiceOptions,\n} from './subdomain/SubdomainService';\n// Export the new AppStaticAssetHandler\nexport { AppStaticAssetHandler } from './http/AppStaticAssetHandler';\n\nexport {\n RepresentationPartialConvertingStore,\n MinioDataAccessor,\n QuadstoreSparqlDataAccessor,\n QuintStoreSparqlDataAccessor,\n SolidRdfDataAccessor,\n MixDataAccessor,\n ConfigurableLoggerFactory,\n SparqlUpdateResourceStore,\n SubgraphQueryEngine,\n QuadstoreSparqlEngine,\n QuintstoreSparqlEngine,\n SubgraphSparqlHttpHandler,\n QuotaAdminHttpHandler,\n ClusterIngressRouter,\n ClusterWebSocketConfigurator,\n EdgeNodeDirectDebugHttpHandler,\n EdgeNodeProxyHttpHandler,\n RouterHttpHandler,\n RouterHttpRoute,\n TracingHandler,\n EdgeNodeCertificateHttpHandler,\n TerminalHttpHandler,\n ReservedSuffixIdentifierGenerator,\n DrizzleIndexedStorage,\n ValidatingIdentityProviderHttpHandler,\n PostgresKeyValueStorage,\n RedisKeyValueStorage,\n SqliteKeyValueStorage,\n BaseKeyValueStorage,\n DrizzleQuotaService,\n NoopQuotaService,\n HttpEntitlementProvider,\n NoopEntitlementProvider,\n PerAccountQuotaStrategy,\n TencentDnsProvider,\n EdgeNodeDnsCoordinator,\n Dns01CertificateProvisioner,\n SimpleEdgeNodeTunnelManager,\n NoopEdgeNodeTunnelManager,\n FrpTunnelManager,\n EdgeNodeHealthProbeService,\n EdgeNodeAgent,\n EdgeNodeAgentInitializer,\n EdgeNodeCertificateService,\n AcmeCertificateManager,\n EdgeNodeModeDetector,\n ClusterIdentifierStrategy,\n UsageTrackingStore,\n CenterNodeRegistrationService,\n PodRoutingHttpHandler,\n ReactAppViewHandler,\n // Quint exports\n QuintStore,\n SqliteQuintStore,\n PgQuintStore,\n // RDF engine exports\n RdfTermDictionary,\n RdfQuadIndex,\n Rdf3xIndex,\n RdfTextIndex,\n RdfVectorIndex,\n PostgresRdfTextIndex,\n PostgresRdfVectorIndex,\n RdfSparqlAdapter,\n ShadowRdfQuintStore,\n SolidRdfEngine,\n PostgresRdfEngine,\n SolidRdfSparqlEngine,\n // Vector exports\n VectorStore,\n SqliteVectorStore,\n PostgresVectorStore,\n VectorHttpHandler,\n // Embedding exports\n ProviderRegistry,\n ProviderRegistryImpl,\n EmbeddingService,\n EmbeddingServiceImpl,\n CredentialReader,\n CredentialReaderImpl,\n // Tunnel and Subdomain exports\n CloudflareTunnelProvider,\n LocalTunnelProvider,\n NgrokTunnelProvider,\n SubdomainService,\n // IdP/SP separation exports\n MultiDomainIdentifierStrategy,\n SubdomainPodIdentifierStrategy,\n DisabledOidcHandler,\n DisabledIdentityProviderHandler,\n AutoDetectOidcHandler,\n AutoDetectIdentityProviderHandler,\n LoopbackClientIdAdapterFactory,\n ScopedPickWebIdHandler,\n UrlAwareRedisLocker,\n // Provision exports\n ProvisionPodCreator,\n ProvisionCodeCodec,\n LocalPodProvisioningService,\n // SolidFS recovery exports\n SqliteSolidFsSyncJournal,\n};\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import './runtime/configure-drizzle-solid';\nimport { RepresentationPartialConvertingStore } from './storage/RepresentationPartialConvertingStore';\nimport { MinioDataAccessor } from './storage/accessors/MinioDataAccessor';\nimport { QuadstoreSparqlDataAccessor } from './storage/accessors/QuadstoreSparqlDataAccessor';\nimport { QuintStoreSparqlDataAccessor } from './storage/accessors/QuintStoreSparqlDataAccessor';\nimport { SolidRdfDataAccessor } from './storage/accessors/SolidRdfDataAccessor';\nimport { MixDataAccessor } from './storage/accessors/MixDataAccessor';\nimport { ConfigurableLoggerFactory } from './logging/ConfigurableLoggerFactory';\nimport { SubgraphQueryEngine } from './storage/sparql/SubgraphQueryEngine';\nimport { QuadstoreSparqlEngine, QuintstoreSparqlEngine } from './storage/sparql/CompatibilitySparqlEngine';\nexport type { SparqlEngine } from './storage/sparql/SubgraphQueryEngine';\nexport type {\n RdfEngineLike,\n RdfEngineStorageStats,\n RdfDerivedIndexRefreshResult,\n RdfIndexStats,\n RdfIndexSpaceObject,\n RdfIndexMetrics,\n RdfIndexPutOptions,\n RdfPatternQuery,\n RdfQuadIndexOptions,\n RdfQuadIndexScanResult,\n RdfTextIndexLike,\n RdfTextIndexOptions,\n RdfTextIndexSyncLike,\n RdfVectorIndexLike,\n RdfVectorIndexOptions,\n RdfVectorIndexSyncLike,\n RdfShadowBackfillOptions,\n RdfShadowBackfillResult,\n RdfShadowDiff,\n RdfShadowScanResult,\n RdfSourceInput,\n} from './storage/rdf/types';\nexport type { RdfSparqlCompileResult } from './storage/rdf/RdfSparqlAdapter';\nexport type { RdfAccessScope } from './storage/rdf/RdfAccessScope';\nexport type { ShadowRdfQuintStoreOptions } from './storage/rdf/ShadowRdfQuintStore';\nexport type {\n SolidRdfSparqlEngineOptions,\n SolidRdfSparqlFallback,\n} from './storage/rdf/SolidRdfSparqlEngine';\nexport type { PostgresRdfEngineOptions } from './storage/rdf/PostgresRdfEngine';\nexport type { PostgresRdfTextIndexOptions } from './storage/rdf/PostgresRdfTextIndex';\nexport type { PostgresRdfVectorIndexOptions } from './storage/rdf/PostgresRdfVectorIndex';\nexport * from './document';\nexport * from './security';\nimport { SubgraphSparqlHttpHandler } from './http/SubgraphSparqlHttpHandler';\nimport { QuotaAdminHttpHandler } from './http/quota/QuotaAdminHttpHandler';\nimport { SparqlUpdateResourceStore } from './storage/SparqlUpdateResourceStore';\nimport { ClusterIngressRouter } from './http/ClusterIngressRouter';\nimport { ClusterWebSocketConfigurator } from './http/ClusterWebSocketConfigurator';\nimport { EdgeNodeDirectDebugHttpHandler } from './http/EdgeNodeDirectDebugHttpHandler';\nimport { EdgeNodeProxyHttpHandler } from './http/EdgeNodeProxyHttpHandler';\nimport { RouterHttpHandler } from './http/RouterHttpHandler';\nimport { RouterHttpRoute } from './http/RouterHttpRoute';\nimport { TracingHandler } from './http/TracingHandler';\nimport { TerminalHttpHandler } from './http/terminal/TerminalHttpHandler';\nimport { DeviceNotificationHub } from './notifications/DeviceNotificationHub';\nimport { DeviceNotificationResourceListener } from './notifications/DeviceNotificationResourceListener';\nimport { DeviceNotificationWebSocketServer } from './http/DeviceNotificationWebSocketServer';\nimport { DeviceNotificationTicketHandler } from './api/handlers/DeviceNotificationTicketHandler';\nimport { registerDeviceNotificationRuntime } from './api/handlers/DeviceNotificationRuntime';\nimport { EdgeNodeCertificateHttpHandler } from './http/admin/EdgeNodeCertificateHttpHandler';\nimport { ReservedSuffixIdentifierGenerator } from './pods/ReservedSuffixIdentifierGenerator';\nimport { DrizzleIndexedStorage } from './identity/drizzle/DrizzleIndexedStorage';\nimport { ValidatingIdentityProviderHttpHandler } from './identity/ValidatingIdentityProviderHttpHandler';\nimport { PostgresKeyValueStorage } from './storage/keyvalue/PostgresKeyValueStorage';\nimport { RedisKeyValueStorage } from './storage/keyvalue/RedisKeyValueStorage';\nimport { SqliteKeyValueStorage } from './storage/keyvalue/SqliteKeyValueStorage';\nimport { BaseKeyValueStorage } from './storage/keyvalue/BaseKeyValueStorage';\nimport { DrizzleQuotaService } from './quota/DrizzleQuotaService';\nimport { NoopQuotaService } from './quota/NoopQuotaService';\nimport { HttpEntitlementProvider, NoopEntitlementProvider } from './quota/EntitlementProvider';\nimport { PerAccountQuotaStrategy } from './storage/quota/PerAccountQuotaStrategy';\nimport { TencentDnsProvider } from './dns/tencent/TencentDnsProvider';\nimport { EdgeNodeDnsCoordinator } from './edge/EdgeNodeDnsCoordinator';\nimport { Dns01CertificateProvisioner } from './edge/Dns01CertificateProvisioner';\nimport { SimpleEdgeNodeTunnelManager, NoopEdgeNodeTunnelManager } from './edge/EdgeNodeTunnelManager';\nimport { FrpTunnelManager } from './edge/FrpTunnelManager';\nimport { AcmeCertificateManager } from './edge/acme/AcmeCertificateManager';\nimport { EdgeNodeHealthProbeService } from './edge/EdgeNodeHealthProbeService';\nimport { EdgeNodeAgent } from './edge/EdgeNodeAgent';\nimport { EdgeNodeAgentInitializer } from './edge/EdgeNodeAgentInitializer';\nimport { EdgeNodeCertificateService } from './service/EdgeNodeCertificateService';\nimport { createBandwidthThrottleTransform } from './util/stream/BandwidthThrottleTransform';\nimport { UsageTrackingStore } from './storage/quota/UsageTrackingStore';\nimport { EdgeNodeModeDetector } from './edge/EdgeNodeModeDetector';\nimport { ClusterIdentifierStrategy } from './util/identifiers/ClusterIdentifierStrategy';\nimport { CenterNodeRegistrationService } from './identity/CenterNodeRegistrationService';\nimport { PodRoutingHttpHandler } from './http/PodRoutingHttpHandler';\nimport { ReactAppViewHandler } from './identity/ReactAppViewHandler';\nimport { SqliteQuintStore } from './storage/quint/SqliteQuintStore';\nimport { PgQuintStore } from './storage/quint/PgQuintStore';\nimport { QuintStore } from './storage/quint/types';\nimport { RdfQuadIndex } from './storage/rdf/RdfQuadIndex';\nimport { Rdf3xIndex } from './storage/rdf/Rdf3xIndex';\nimport { RdfTextIndex } from './storage/rdf/RdfTextIndex';\nimport { RdfVectorIndex } from './storage/rdf/RdfVectorIndex';\nimport { PostgresRdfTextIndex } from './storage/rdf/PostgresRdfTextIndex';\nimport { PostgresRdfVectorIndex } from './storage/rdf/PostgresRdfVectorIndex';\nimport { RdfSparqlAdapter } from './storage/rdf/RdfSparqlAdapter';\nimport { RdfTermDictionary } from './storage/rdf/RdfTermDictionary';\nimport { ShadowRdfQuintStore } from './storage/rdf/ShadowRdfQuintStore';\nimport { SolidRdfEngine } from './storage/rdf/SolidRdfEngine';\nimport { PostgresRdfEngine } from './storage/rdf/PostgresRdfEngine';\nimport { SolidRdfSparqlEngine } from './storage/rdf/SolidRdfSparqlEngine';\nimport type { EdgeNodeCertificateProvisioner } from './edge/EdgeNodeCertificateProvisioner';\n// Vector components\nimport { SqliteVectorStore, PostgresVectorStore } from './storage/vector/index';\nimport { VectorHttpHandler } from './http/vector/VectorHttpHandler';\nimport { ProviderRegistry } from './ai/service/ProviderRegistry';\nimport { ProviderRegistryImpl } from './ai/service/ProviderRegistryImpl';\nimport { EmbeddingService } from './ai/service/EmbeddingService';\nimport { EmbeddingServiceImpl } from './ai/service/EmbeddingServiceImpl';\nimport { CredentialReader } from './ai/service/CredentialReader';\nimport { CredentialReaderImpl } from './ai/service/CredentialReaderImpl';\nimport { VectorStore } from './storage/vector/VectorStore';\n// Tunnel and Subdomain components\nimport { CloudflareTunnelProvider } from './tunnel/CloudflareTunnelProvider';\nimport { LocalTunnelProvider } from './tunnel/LocalTunnelProvider';\nimport { NgrokTunnelProvider } from './tunnel/NgrokTunnelProvider';\nimport { SubdomainService } from './subdomain/SubdomainService';\nimport { UrlAwareRedisLocker } from './storage/locking/UrlAwareRedisLocker';\n// IdP/SP separation components\nimport { MultiDomainIdentifierStrategy } from './util/identifiers/MultiDomainIdentifierStrategy';\nimport { SubdomainPodIdentifierStrategy } from './util/identifiers/SubdomainPodIdentifierStrategy';\nimport { DisabledOidcHandler } from './identity/oidc/DisabledOidcHandler';\nimport { DisabledIdentityProviderHandler } from './identity/oidc/DisabledIdentityProviderHandler';\nimport { AutoDetectOidcHandler } from './identity/oidc/AutoDetectOidcHandler';\nimport { AutoDetectIdentityProviderHandler } from './identity/oidc/AutoDetectIdentityProviderHandler';\nimport { LoopbackClientIdAdapterFactory } from './identity/oidc/LoopbackClientIdAdapterFactory';\nimport { ScopedPickWebIdHandler } from './identity/oidc/ScopedPickWebIdHandler';\n// Provision components\nimport { ProvisionPodCreator } from './provision/ProvisionPodCreator';\nimport { ProvisionCodeCodec } from './provision/ProvisionCodeCodec';\nimport { LocalPodProvisioningService } from './provision/LocalPodProvisioningService';\nimport { SqliteSolidFsSyncJournal } from './solidfs/SolidFsSyncJournal';\n\nexport * from './api/reconciler';\nexport * from './edge/reachability';\nexport * from './notifications';\n\nexport type {\n DnsProvider,\n ListDnsRecordsInput,\n ListableDnsProvider,\n DeleteDnsRecordInput,\n DnsRecordSummary,\n UpsertDnsRecordInput,\n} from './dns/DnsProvider';\nexport type { EdgeNodeCertificateProvisioner } from './edge/EdgeNodeCertificateProvisioner';\nexport type { EdgeNodeAgentOptions, EdgeNodeP2PAcceptEvent } from './edge/EdgeNodeAgent';\nexport type { EdgeNodeTunnelManager } from './edge/interfaces/EdgeNodeTunnelManager';\nexport type { QuotaService, AccountQuota } from './quota/QuotaService';\nexport type { EntitlementProvider, AccountEntitlement } from './quota/EntitlementProvider';\n// Tunnel and Subdomain types\nexport type {\n TunnelProvider,\n TunnelConfig,\n TunnelSetupOptions,\n TunnelStatus,\n} from './tunnel/TunnelProvider';\nexport type {\n SubdomainRegistration,\n ConnectivityResult,\n SubdomainServiceOptions,\n} from './subdomain/SubdomainService';\n// Export the new AppStaticAssetHandler\nexport { AppStaticAssetHandler } from './http/AppStaticAssetHandler';\n\nexport {\n RepresentationPartialConvertingStore,\n MinioDataAccessor,\n QuadstoreSparqlDataAccessor,\n QuintStoreSparqlDataAccessor,\n SolidRdfDataAccessor,\n MixDataAccessor,\n ConfigurableLoggerFactory,\n SparqlUpdateResourceStore,\n SubgraphQueryEngine,\n QuadstoreSparqlEngine,\n QuintstoreSparqlEngine,\n SubgraphSparqlHttpHandler,\n QuotaAdminHttpHandler,\n ClusterIngressRouter,\n ClusterWebSocketConfigurator,\n EdgeNodeDirectDebugHttpHandler,\n EdgeNodeProxyHttpHandler,\n RouterHttpHandler,\n RouterHttpRoute,\n TracingHandler,\n EdgeNodeCertificateHttpHandler,\n TerminalHttpHandler,\n DeviceNotificationHub,\n DeviceNotificationResourceListener,\n DeviceNotificationWebSocketServer,\n DeviceNotificationTicketHandler,\n registerDeviceNotificationRuntime,\n ReservedSuffixIdentifierGenerator,\n DrizzleIndexedStorage,\n ValidatingIdentityProviderHttpHandler,\n PostgresKeyValueStorage,\n RedisKeyValueStorage,\n SqliteKeyValueStorage,\n BaseKeyValueStorage,\n DrizzleQuotaService,\n NoopQuotaService,\n HttpEntitlementProvider,\n NoopEntitlementProvider,\n PerAccountQuotaStrategy,\n TencentDnsProvider,\n EdgeNodeDnsCoordinator,\n Dns01CertificateProvisioner,\n SimpleEdgeNodeTunnelManager,\n NoopEdgeNodeTunnelManager,\n FrpTunnelManager,\n EdgeNodeHealthProbeService,\n EdgeNodeAgent,\n EdgeNodeAgentInitializer,\n EdgeNodeCertificateService,\n AcmeCertificateManager,\n EdgeNodeModeDetector,\n ClusterIdentifierStrategy,\n UsageTrackingStore,\n CenterNodeRegistrationService,\n PodRoutingHttpHandler,\n ReactAppViewHandler,\n // Quint exports\n QuintStore,\n SqliteQuintStore,\n PgQuintStore,\n // RDF engine exports\n RdfTermDictionary,\n RdfQuadIndex,\n Rdf3xIndex,\n RdfTextIndex,\n RdfVectorIndex,\n PostgresRdfTextIndex,\n PostgresRdfVectorIndex,\n RdfSparqlAdapter,\n ShadowRdfQuintStore,\n SolidRdfEngine,\n PostgresRdfEngine,\n SolidRdfSparqlEngine,\n // Vector exports\n VectorStore,\n SqliteVectorStore,\n PostgresVectorStore,\n VectorHttpHandler,\n // Embedding exports\n ProviderRegistry,\n ProviderRegistryImpl,\n EmbeddingService,\n EmbeddingServiceImpl,\n CredentialReader,\n CredentialReaderImpl,\n // Tunnel and Subdomain exports\n CloudflareTunnelProvider,\n LocalTunnelProvider,\n NgrokTunnelProvider,\n SubdomainService,\n // IdP/SP separation exports\n MultiDomainIdentifierStrategy,\n SubdomainPodIdentifierStrategy,\n DisabledOidcHandler,\n DisabledIdentityProviderHandler,\n AutoDetectOidcHandler,\n AutoDetectIdentityProviderHandler,\n LoopbackClientIdAdapterFactory,\n ScopedPickWebIdHandler,\n UrlAwareRedisLocker,\n // Provision exports\n ProvisionPodCreator,\n ProvisionCodeCodec,\n LocalPodProvisioningService,\n // SolidFS recovery exports\n SqliteSolidFsSyncJournal,\n};\n"]}
@@ -0,0 +1,74 @@
1
+ import type { DeviceNotificationOperation, DeviceNotificationServerFrame } from './device-notification-protocol';
2
+ import type { DeviceNotificationIdentity } from '../api/handlers/DeviceNotificationTicketHandler';
3
+ export interface DeviceNotificationHubOptions {
4
+ origin: string;
5
+ maxTopicsPerConnection?: number;
6
+ maxQueueMessages?: number;
7
+ maxReplayEvents?: number;
8
+ authorizeTopic?: (input: {
9
+ identity: DeviceNotificationIdentity;
10
+ topic: string;
11
+ }) => boolean | Promise<boolean>;
12
+ }
13
+ export interface OpenDeviceNotificationConnectionInput {
14
+ identity: DeviceNotificationIdentity;
15
+ deviceSessionId: string;
16
+ send: (frame: DeviceNotificationServerFrame) => boolean;
17
+ close?: (code: number, reason: string) => void;
18
+ }
19
+ export interface DeviceNotificationConnectionHandle {
20
+ connectionId: string;
21
+ }
22
+ export interface DeviceNotificationPublishInput {
23
+ topic: string;
24
+ object?: string;
25
+ operation: DeviceNotificationOperation;
26
+ }
27
+ type EventFrame = Extract<DeviceNotificationServerFrame, {
28
+ type: 'event';
29
+ }>;
30
+ export declare class DeviceNotificationHub {
31
+ private readonly origin;
32
+ private readonly maxTopicsPerConnection;
33
+ private readonly maxQueueMessages;
34
+ private readonly maxReplayEvents;
35
+ private readonly authorizeTopic;
36
+ private readonly connections;
37
+ private readonly connectionsByDevice;
38
+ private readonly topicMembers;
39
+ private readonly replay;
40
+ private sequence;
41
+ constructor(options: DeviceNotificationHubOptions);
42
+ openConnection(input: OpenDeviceNotificationConnectionInput): DeviceNotificationConnectionHandle;
43
+ hello(connectionId: string, resumeFrom?: number): DeviceNotificationServerFrame;
44
+ registerTopics(connectionId: string, requestId: string, topics: string[]): Promise<DeviceNotificationServerFrame>;
45
+ unregisterTopics(connectionId: string, requestId: string, topics: string[]): Promise<DeviceNotificationServerFrame>;
46
+ ack(connectionId: string, sequence: number): void;
47
+ publish(input: DeviceNotificationPublishInput): EventFrame;
48
+ resume(connectionId: string, resumeFrom: number): EventFrame[] | DeviceNotificationServerFrame;
49
+ closeConnection(connectionId: string, code?: number, reason?: string): void;
50
+ getSeenRequestIds(connectionId: string): Set<string>;
51
+ getTopicMemberCount(topic: string): number;
52
+ getConnectionSnapshot(connectionId: string): {
53
+ topicCount: number;
54
+ topics: string[];
55
+ queueLength: number;
56
+ resyncTopics: string[];
57
+ lastAck: number;
58
+ } | undefined;
59
+ private deliver;
60
+ private deliverPendingResume;
61
+ private enqueue;
62
+ private coalesceEvent;
63
+ private markOverflow;
64
+ private pushReplay;
65
+ private matchingMemberIds;
66
+ private connectionMatches;
67
+ private topicMatches;
68
+ private assertNewRequestId;
69
+ private normalizeTopic;
70
+ private normalizeResource;
71
+ private requireConnection;
72
+ private deviceConnectionKey;
73
+ }
74
+ export {};