@base44-preview/vite-plugin 1.0.48-pr.138.622eb14 → 1.0.48-pr.142.9fcc12e
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -2
- package/dist/index.js.map +1 -1
- package/dist/private-data-sources/build-http.d.ts +9 -0
- package/dist/private-data-sources/build-http.d.ts.map +1 -0
- package/dist/private-data-sources/build-http.js +38 -0
- package/dist/private-data-sources/build-http.js.map +1 -0
- package/dist/private-data-sources/elasticsearch.d.ts +8 -0
- package/dist/private-data-sources/elasticsearch.d.ts.map +1 -0
- package/dist/private-data-sources/elasticsearch.js +6 -0
- package/dist/private-data-sources/elasticsearch.js.map +1 -0
- package/dist/private-data-sources/http-url.d.ts +10 -0
- package/dist/private-data-sources/http-url.d.ts.map +1 -0
- package/dist/private-data-sources/http-url.js +20 -0
- package/dist/private-data-sources/http-url.js.map +1 -0
- package/dist/private-data-sources/http.d.ts +8 -0
- package/dist/private-data-sources/http.d.ts.map +1 -0
- package/dist/private-data-sources/http.js +6 -0
- package/dist/private-data-sources/http.js.map +1 -0
- package/dist/private-data-sources/hyperdrive.d.ts +28 -0
- package/dist/private-data-sources/hyperdrive.d.ts.map +1 -0
- package/dist/private-data-sources/hyperdrive.js +39 -0
- package/dist/private-data-sources/hyperdrive.js.map +1 -0
- package/dist/private-data-sources/ioredis-adapter.d.ts +35 -0
- package/dist/private-data-sources/ioredis-adapter.d.ts.map +1 -0
- package/dist/private-data-sources/ioredis-adapter.js +203 -0
- package/dist/private-data-sources/ioredis-adapter.js.map +1 -0
- package/dist/private-data-sources/manifest.d.ts +7 -0
- package/dist/private-data-sources/manifest.d.ts.map +1 -0
- package/dist/private-data-sources/manifest.js +95 -0
- package/dist/private-data-sources/manifest.js.map +1 -0
- package/dist/private-data-sources/mariadb.d.ts +14 -0
- package/dist/private-data-sources/mariadb.d.ts.map +1 -0
- package/dist/private-data-sources/mariadb.js +6 -0
- package/dist/private-data-sources/mariadb.js.map +1 -0
- package/dist/private-data-sources/mongodb.d.ts +24 -0
- package/dist/private-data-sources/mongodb.d.ts.map +1 -0
- package/dist/private-data-sources/mongodb.js +52 -0
- package/dist/private-data-sources/mongodb.js.map +1 -0
- package/dist/private-data-sources/mysql.d.ts +14 -0
- package/dist/private-data-sources/mysql.d.ts.map +1 -0
- package/dist/private-data-sources/mysql.js +6 -0
- package/dist/private-data-sources/mysql.js.map +1 -0
- package/dist/private-data-sources/node-net-adapter.d.ts +20 -0
- package/dist/private-data-sources/node-net-adapter.d.ts.map +1 -0
- package/dist/private-data-sources/node-net-adapter.js +219 -0
- package/dist/private-data-sources/node-net-adapter.js.map +1 -0
- package/dist/private-data-sources/oracle.d.ts +20 -0
- package/dist/private-data-sources/oracle.d.ts.map +1 -0
- package/dist/private-data-sources/oracle.js +32 -0
- package/dist/private-data-sources/oracle.js.map +1 -0
- package/dist/private-data-sources/postgres.d.ts +14 -0
- package/dist/private-data-sources/postgres.d.ts.map +1 -0
- package/dist/private-data-sources/postgres.js +6 -0
- package/dist/private-data-sources/postgres.js.map +1 -0
- package/dist/private-data-sources/redis-auth.d.ts +3 -0
- package/dist/private-data-sources/redis-auth.d.ts.map +1 -0
- package/dist/private-data-sources/redis-auth.js +72 -0
- package/dist/private-data-sources/redis-auth.js.map +1 -0
- package/dist/private-data-sources/redis.d.ts +46 -0
- package/dist/private-data-sources/redis.d.ts.map +1 -0
- package/dist/private-data-sources/redis.js +27 -0
- package/dist/private-data-sources/redis.js.map +1 -0
- package/dist/private-data-sources/runtime-environment.d.ts +2 -0
- package/dist/private-data-sources/runtime-environment.d.ts.map +1 -0
- package/dist/private-data-sources/runtime-environment.js +6 -0
- package/dist/private-data-sources/runtime-environment.js.map +1 -0
- package/dist/private-data-sources/sqlserver.d.ts +18 -0
- package/dist/private-data-sources/sqlserver.d.ts.map +1 -0
- package/dist/private-data-sources/sqlserver.js +13 -0
- package/dist/private-data-sources/sqlserver.js.map +1 -0
- package/dist/private-data-sources/tcp.d.ts +29 -0
- package/dist/private-data-sources/tcp.d.ts.map +1 -0
- package/dist/private-data-sources/tcp.js +63 -0
- package/dist/private-data-sources/tcp.js.map +1 -0
- package/dist/private-data-sources/tedious-adapter.d.ts +2 -0
- package/dist/private-data-sources/tedious-adapter.d.ts.map +1 -0
- package/dist/private-data-sources/tedious-adapter.js +63 -0
- package/dist/private-data-sources/tedious-adapter.js.map +1 -0
- package/dist/private-data-sources/types.d.ts +27 -0
- package/dist/private-data-sources/types.d.ts.map +1 -0
- package/dist/private-data-sources/types.js +2 -0
- package/dist/private-data-sources/types.js.map +1 -0
- package/dist/private-data-sources-plugin.d.ts +3 -0
- package/dist/private-data-sources-plugin.d.ts.map +1 -0
- package/dist/private-data-sources-plugin.js +51 -0
- package/dist/private-data-sources-plugin.js.map +1 -0
- package/package.json +1 -1
- package/src/index.ts +9 -2
- package/src/private-data-sources/build-http.ts +51 -0
- package/src/private-data-sources/cloudflare-workers.d.ts +3 -0
- package/src/private-data-sources/elasticsearch.ts +8 -0
- package/src/private-data-sources/http-url.ts +23 -0
- package/src/private-data-sources/http.ts +6 -0
- package/src/private-data-sources/hyperdrive.ts +48 -0
- package/src/private-data-sources/ioredis-adapter.ts +229 -0
- package/src/private-data-sources/manifest.ts +127 -0
- package/src/private-data-sources/mariadb.ts +8 -0
- package/src/private-data-sources/mongodb.ts +70 -0
- package/src/private-data-sources/mysql.ts +8 -0
- package/src/private-data-sources/node-net-adapter.ts +247 -0
- package/src/private-data-sources/oracle.ts +34 -0
- package/src/private-data-sources/postgres.ts +8 -0
- package/src/private-data-sources/redis-auth.ts +83 -0
- package/src/private-data-sources/redis.ts +47 -0
- package/src/private-data-sources/runtime-environment.ts +6 -0
- package/src/private-data-sources/sqlserver.ts +22 -0
- package/src/private-data-sources/tcp.ts +86 -0
- package/src/private-data-sources/tedious-adapter.ts +67 -0
- package/src/private-data-sources/types.ts +29 -0
- package/src/private-data-sources-plugin.ts +55 -0
package/README.md
CHANGED
|
@@ -235,6 +235,30 @@ configuration. Rebuild after upgrading this plugin. Currently only raw TCP
|
|
|
235
235
|
(`secureTransport: "off"`, the default) is supported; SSH provides its own
|
|
236
236
|
encryption. TLS and STARTTLS options reject until explicitly supported.
|
|
237
237
|
|
|
238
|
+
## Private data sources (`base44:private-data-sources/*`)
|
|
239
|
+
|
|
240
|
+
Server code reaches a workspace private data source with the same imports a
|
|
241
|
+
backend function uses: `postgres`, `mysql`, `mariadb`, `http`, `elasticsearch`,
|
|
242
|
+
`sqlserver`, `redis`, `mongodb` and `oracle`, each from
|
|
243
|
+
`base44:private-data-sources/<type>`. The modules are this package's copy of the
|
|
244
|
+
backend-function adapters, reading the worker's bindings and
|
|
245
|
+
`BASE44_PRIVATE_DATA_SOURCES` manifest off `env` from `cloudflare:workers`.
|
|
246
|
+
|
|
247
|
+
```js
|
|
248
|
+
import { Connection } from "tedious";
|
|
249
|
+
import { sqlserver } from "base44:private-data-sources/sqlserver";
|
|
250
|
+
const source = sqlserver("My-SQL-Server");
|
|
251
|
+
const connection = new Connection({
|
|
252
|
+
server: source.host,
|
|
253
|
+
authentication: { type: "default", options: { userName: source.username, password: source.password } },
|
|
254
|
+
options: { database: source.database, encrypt: false, connector: source.tediousConnector() },
|
|
255
|
+
});
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
The bindings exist only on the deployed worker. In local development and the
|
|
259
|
+
editor preview a lookup throws, saying the source is available on the published
|
|
260
|
+
app. A client-side import fails the build, since a source carries credentials.
|
|
261
|
+
|
|
238
262
|
## License
|
|
239
263
|
|
|
240
264
|
MIT
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,MAAM,CAAC;AAW/C,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAmBlD,eAAO,MAAM,uBAAuB,UAWnC,CAAC;AAeF,MAAM,CAAC,OAAO,UAAU,UAAU,CAChC,IAAI,GAAE;IACJ,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACvB,iBA+PP"}
|
package/dist/index.js
CHANGED
|
@@ -7,7 +7,9 @@ import { htmlInjectionsPlugin } from "./html-injections-plugin.js";
|
|
|
7
7
|
import { buildStatusPlugin } from "./build-status-plugin.js";
|
|
8
8
|
import { base44RuntimePlugin } from "./base44-runtime-plugin.js";
|
|
9
9
|
import { workerdCompatPlugin } from "./workerd-compat-plugin.js";
|
|
10
|
+
import { privateDataSourcesPlugin } from "./private-data-sources-plugin.js";
|
|
10
11
|
import { routeRequestLogPlugin } from "./route-request-log/vite-plugin.js";
|
|
12
|
+
const PLATFORM_API_PROXY_PATH = "^/api/(apps|app-logs)([/?]|$)";
|
|
11
13
|
const isRunningInSandbox = !!process.env.MODAL_SANDBOX_ID;
|
|
12
14
|
// Both optimizer spellings mean the same thing here: treat .js files as JSX,
|
|
13
15
|
// since app code routinely puts JSX in .js.
|
|
@@ -126,11 +128,13 @@ export default function vitePlugin(opts = {}) {
|
|
|
126
128
|
}
|
|
127
129
|
: (() => {
|
|
128
130
|
if (env.VITE_BASE44_APP_BASE_URL) {
|
|
129
|
-
console.log(`[base44] Proxy enabled: /api -> ${env.VITE_BASE44_APP_BASE_URL}`);
|
|
131
|
+
console.log(`[base44] Proxy enabled: /api/apps, /api/app-logs -> ${env.VITE_BASE44_APP_BASE_URL}`);
|
|
130
132
|
return {
|
|
131
133
|
server: {
|
|
132
134
|
proxy: {
|
|
133
|
-
|
|
135
|
+
// Only the platform's paths: the rest of /api is the app's own server
|
|
136
|
+
// routes, and under `base44 dev` proxying them loops back to the CLI.
|
|
137
|
+
[PLATFORM_API_PROXY_PATH]: {
|
|
134
138
|
target: env.VITE_BASE44_APP_BASE_URL,
|
|
135
139
|
changeOrigin: true,
|
|
136
140
|
},
|
|
@@ -230,6 +234,8 @@ export default function vitePlugin(opts = {}) {
|
|
|
230
234
|
// `ws` and `AsyncLocalStorage.enterWith()` for Cloudflare Workers server code.
|
|
231
235
|
// Inert outside environments that resolve with the "workerd" condition.
|
|
232
236
|
workerdCompatPlugin(),
|
|
237
|
+
// Serves `base44:private-data-sources/*` to TanStack server code.
|
|
238
|
+
privateDataSourcesPlugin(),
|
|
233
239
|
// Dev-only: tags a full-stack route's console output with the request's
|
|
234
240
|
// X-B44-Request-Id. Registered as a Nitro module (the `nitro` property)
|
|
235
241
|
// because Nitro runs dev routes in a worker whose console the Vite process
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { PrivateDataSourceManifestEntry } from "./types.js";
|
|
2
|
+
export declare function buildHttpPrivateDataSource(entry: PrivateDataSourceManifestEntry): Readonly<{
|
|
3
|
+
name: string | undefined;
|
|
4
|
+
type: string | undefined;
|
|
5
|
+
readonly bindingName: string | undefined;
|
|
6
|
+
fetch(resource: RequestInfo | URL, init?: RequestInit): Response | Promise<Response>;
|
|
7
|
+
readonly binding: unknown;
|
|
8
|
+
}>;
|
|
9
|
+
//# sourceMappingURL=build-http.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-http.d.ts","sourceRoot":"","sources":["../../src/private-data-sources/build-http.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAiC,8BAA8B,EAAE,MAAM,YAAY,CAAC;AAchG,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,8BAA8B;;;;oBAO5D,WAAW,GAAG,GAAG,SAAS,WAAW;;GAwBxD"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { resolveHttpPrivateDataSourceUrl } from "./http-url.js";
|
|
2
|
+
import { currentPrivateDataSource, privateDataSourceBinding, } from "./manifest.js";
|
|
3
|
+
// Internal, NOT a public virtual module: app code cannot import this builder to
|
|
4
|
+
// hand-forge a manifest entry. The only public entrypoints — http()/elasticsearch()
|
|
5
|
+
// — resolve their entry from the immutable runtime manifest via lookupPrivateDataSource.
|
|
6
|
+
function hasFetch(binding) {
|
|
7
|
+
return (binding !== null &&
|
|
8
|
+
typeof binding === "object" &&
|
|
9
|
+
typeof binding.fetch === "function");
|
|
10
|
+
}
|
|
11
|
+
export function buildHttpPrivateDataSource(entry) {
|
|
12
|
+
return Object.freeze({
|
|
13
|
+
name: entry.name,
|
|
14
|
+
type: entry.type,
|
|
15
|
+
get bindingName() {
|
|
16
|
+
return currentPrivateDataSource(entry).bindingName;
|
|
17
|
+
},
|
|
18
|
+
fetch(resource, init) {
|
|
19
|
+
const current = currentPrivateDataSource(entry);
|
|
20
|
+
const binding = privateDataSourceBinding(current);
|
|
21
|
+
if (!hasFetch(binding)) {
|
|
22
|
+
throw new Error(`Private data source "${current.name}" does not expose fetch()`);
|
|
23
|
+
}
|
|
24
|
+
return binding.fetch(resolveHttpPrivateDataSourceUrl(current, resource), init);
|
|
25
|
+
},
|
|
26
|
+
// Fixed services expose the raw binding (Cloudflare pins their single
|
|
27
|
+
// target). Deferred Actor handles decide this from the request manifest,
|
|
28
|
+
// after their request environment exists.
|
|
29
|
+
get binding() {
|
|
30
|
+
const current = currentPrivateDataSource(entry);
|
|
31
|
+
return current.bindingName !== undefined
|
|
32
|
+
&& current.networkScope !== "network"
|
|
33
|
+
? privateDataSourceBinding(current)
|
|
34
|
+
: undefined;
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=build-http.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-http.js","sourceRoot":"","sources":["../../src/private-data-sources/build-http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EACL,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,eAAe,CAAC;AAGvB,gFAAgF;AAChF,oFAAoF;AACpF,yFAAyF;AAEzF,SAAS,QAAQ,CAAC,OAAgB;IAChC,OAAO,CACL,OAAO,KAAK,IAAI;QAChB,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAQ,OAA+B,CAAC,KAAK,KAAK,UAAU,CAC7D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAqC;IAC9E,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,WAAW;YACb,OAAO,wBAAwB,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC;QACrD,CAAC;QACD,KAAK,CAAC,QAA2B,EAAE,IAAkB;YACnD,MAAM,OAAO,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;YAChD,MAAM,OAAO,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;YAClD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CACb,wBAAwB,OAAO,CAAC,IAAI,2BAA2B,CAChE,CAAC;YACJ,CAAC;YACD,OAAO,OAAO,CAAC,KAAK,CAClB,+BAA+B,CAAC,OAAO,EAAE,QAAQ,CAAC,EAClD,IAAI,CACL,CAAC;QACJ,CAAC;QACD,sEAAsE;QACtE,yEAAyE;QACzE,0CAA0C;QAC1C,IAAI,OAAO;YACT,MAAM,OAAO,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;YAChD,OAAO,OAAO,CAAC,WAAW,KAAK,SAAS;mBACnC,OAAO,CAAC,YAAY,KAAK,SAAS;gBACrC,CAAC,CAAC,wBAAwB,CAAC,OAAO,CAAC;gBACnC,CAAC,CAAC,SAAS,CAAC;QAChB,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare function elasticsearch(name: unknown): Readonly<{
|
|
2
|
+
name: string | undefined;
|
|
3
|
+
type: string | undefined;
|
|
4
|
+
readonly bindingName: string | undefined;
|
|
5
|
+
fetch(resource: RequestInfo | URL, init?: RequestInit): Response | Promise<Response>;
|
|
6
|
+
readonly binding: unknown;
|
|
7
|
+
}>;
|
|
8
|
+
//# sourceMappingURL=elasticsearch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"elasticsearch.d.ts","sourceRoot":"","sources":["../../src/private-data-sources/elasticsearch.ts"],"names":[],"mappings":"AAGA,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO;;;;;;GAI1C"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { buildHttpPrivateDataSource } from "./build-http.js";
|
|
2
|
+
import { privateDataSourceReference } from "./manifest.js";
|
|
3
|
+
export function elasticsearch(name) {
|
|
4
|
+
return buildHttpPrivateDataSource(privateDataSourceReference(name, "elasticsearch"));
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=elasticsearch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"elasticsearch.js","sourceRoot":"","sources":["../../src/private-data-sources/elasticsearch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAE3D,MAAM,UAAU,aAAa,CAAC,IAAa;IACzC,OAAO,0BAA0B,CAC/B,0BAA0B,CAAC,IAAI,EAAE,eAAe,CAAC,CAClD,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { PrivateDataSourceManifestEntry } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Resolve a fetch target for an HTTP private data source. Relative paths resolve
|
|
4
|
+
* against the source's base URL; absolute URLs pass through. There is no host
|
|
5
|
+
* allowlist: for a fixed VPC service Cloudflare pins the single target, and for a
|
|
6
|
+
* network binding the reachable set is the customer's tunnel scope — the app can
|
|
7
|
+
* fetch any host behind it (e.g. Trino router + cluster nextUri hosts).
|
|
8
|
+
*/
|
|
9
|
+
export declare function resolveHttpPrivateDataSourceUrl(entry: PrivateDataSourceManifestEntry, resource: RequestInfo | URL): RequestInfo | URL;
|
|
10
|
+
//# sourceMappingURL=http-url.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-url.d.ts","sourceRoot":"","sources":["../../src/private-data-sources/http-url.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAC;AAIjE;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,8BAA8B,EACrC,QAAQ,EAAE,WAAW,GAAG,GAAG,GAC1B,WAAW,GAAG,GAAG,CAQnB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
const FALLBACK_BASE_URL = "http://private-data-source.local";
|
|
2
|
+
/**
|
|
3
|
+
* Resolve a fetch target for an HTTP private data source. Relative paths resolve
|
|
4
|
+
* against the source's base URL; absolute URLs pass through. There is no host
|
|
5
|
+
* allowlist: for a fixed VPC service Cloudflare pins the single target, and for a
|
|
6
|
+
* network binding the reachable set is the customer's tunnel scope — the app can
|
|
7
|
+
* fetch any host behind it (e.g. Trino router + cluster nextUri hosts).
|
|
8
|
+
*/
|
|
9
|
+
export function resolveHttpPrivateDataSourceUrl(entry, resource) {
|
|
10
|
+
if (resource instanceof Request)
|
|
11
|
+
return resource;
|
|
12
|
+
const raw = resource instanceof URL ? resource.toString() : String(resource);
|
|
13
|
+
try {
|
|
14
|
+
return new URL(raw).toString();
|
|
15
|
+
}
|
|
16
|
+
catch {
|
|
17
|
+
return new URL(raw || "/", entry.baseUrl || FALLBACK_BASE_URL).toString();
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=http-url.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-url.js","sourceRoot":"","sources":["../../src/private-data-sources/http-url.ts"],"names":[],"mappings":"AAEA,MAAM,iBAAiB,GAAG,kCAAkC,CAAC;AAE7D;;;;;;GAMG;AACH,MAAM,UAAU,+BAA+B,CAC7C,KAAqC,EACrC,QAA2B;IAE3B,IAAI,QAAQ,YAAY,OAAO;QAAE,OAAO,QAAQ,CAAC;IACjD,MAAM,GAAG,GAAG,QAAQ,YAAY,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC7E,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,KAAK,CAAC,OAAO,IAAI,iBAAiB,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC5E,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare function http(name: unknown): Readonly<{
|
|
2
|
+
name: string | undefined;
|
|
3
|
+
type: string | undefined;
|
|
4
|
+
readonly bindingName: string | undefined;
|
|
5
|
+
fetch(resource: RequestInfo | URL, init?: RequestInit): Response | Promise<Response>;
|
|
6
|
+
readonly binding: unknown;
|
|
7
|
+
}>;
|
|
8
|
+
//# sourceMappingURL=http.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/private-data-sources/http.ts"],"names":[],"mappings":"AAGA,wBAAgB,IAAI,CAAC,IAAI,EAAE,OAAO;;;;;;GAEjC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { buildHttpPrivateDataSource } from "./build-http.js";
|
|
2
|
+
import { privateDataSourceReference } from "./manifest.js";
|
|
3
|
+
export function http(name) {
|
|
4
|
+
return buildHttpPrivateDataSource(privateDataSourceReference(name, "http"));
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=http.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/private-data-sources/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAE3D,MAAM,UAAU,IAAI,CAAC,IAAa;IAChC,OAAO,0BAA0B,CAAC,0BAA0B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;AAC9E,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { PrivateDataSourceManifestEntry } from "./types.js";
|
|
2
|
+
export declare function buildHyperdrivePrivateDataSource(entry: PrivateDataSourceManifestEntry): Readonly<{
|
|
3
|
+
name: string | undefined;
|
|
4
|
+
type: string | undefined;
|
|
5
|
+
readonly bindingName: string | undefined;
|
|
6
|
+
readonly connectionString: unknown;
|
|
7
|
+
readonly host: unknown;
|
|
8
|
+
readonly port: unknown;
|
|
9
|
+
readonly user: unknown;
|
|
10
|
+
readonly username: unknown;
|
|
11
|
+
readonly password: unknown;
|
|
12
|
+
readonly database: unknown;
|
|
13
|
+
readonly binding: Record<string, unknown>;
|
|
14
|
+
}>;
|
|
15
|
+
export declare function hyperdrive(name: unknown): Readonly<{
|
|
16
|
+
name: string | undefined;
|
|
17
|
+
type: string | undefined;
|
|
18
|
+
readonly bindingName: string | undefined;
|
|
19
|
+
readonly connectionString: unknown;
|
|
20
|
+
readonly host: unknown;
|
|
21
|
+
readonly port: unknown;
|
|
22
|
+
readonly user: unknown;
|
|
23
|
+
readonly username: unknown;
|
|
24
|
+
readonly password: unknown;
|
|
25
|
+
readonly database: unknown;
|
|
26
|
+
readonly binding: Record<string, unknown>;
|
|
27
|
+
}>;
|
|
28
|
+
//# sourceMappingURL=hyperdrive.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hyperdrive.d.ts","sourceRoot":"","sources":["../../src/private-data-sources/hyperdrive.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAC;AAEjE,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,8BAA8B;;;;;;;;;;;;GAkCrF;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO;;;;;;;;;;;;GAIvC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { currentPrivateDataSource, privateDataSourceReference, privateDataSourceBinding, } from "./manifest.js";
|
|
2
|
+
export function buildHyperdrivePrivateDataSource(entry) {
|
|
3
|
+
const binding = () => privateDataSourceBinding(entry);
|
|
4
|
+
return Object.freeze({
|
|
5
|
+
name: entry.name,
|
|
6
|
+
type: entry.type,
|
|
7
|
+
get bindingName() {
|
|
8
|
+
return currentPrivateDataSource(entry).bindingName;
|
|
9
|
+
},
|
|
10
|
+
get connectionString() {
|
|
11
|
+
return binding().connectionString;
|
|
12
|
+
},
|
|
13
|
+
get host() {
|
|
14
|
+
return binding().host;
|
|
15
|
+
},
|
|
16
|
+
get port() {
|
|
17
|
+
return binding().port;
|
|
18
|
+
},
|
|
19
|
+
get user() {
|
|
20
|
+
return binding().user;
|
|
21
|
+
},
|
|
22
|
+
get username() {
|
|
23
|
+
return binding().user;
|
|
24
|
+
},
|
|
25
|
+
get password() {
|
|
26
|
+
return binding().password;
|
|
27
|
+
},
|
|
28
|
+
get database() {
|
|
29
|
+
return binding().database;
|
|
30
|
+
},
|
|
31
|
+
get binding() {
|
|
32
|
+
return binding();
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
export function hyperdrive(name) {
|
|
37
|
+
return buildHyperdrivePrivateDataSource(privateDataSourceReference(name, "hyperdrive"));
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=hyperdrive.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hyperdrive.js","sourceRoot":"","sources":["../../src/private-data-sources/hyperdrive.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,eAAe,CAAC;AAGvB,MAAM,UAAU,gCAAgC,CAAC,KAAqC;IACpF,MAAM,OAAO,GAAG,GAAG,EAAE,CACnB,wBAAwB,CAAC,KAAK,CAA4B,CAAC;IAC7D,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,WAAW;YACb,OAAO,wBAAwB,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC;QACrD,CAAC;QACD,IAAI,gBAAgB;YAClB,OAAO,OAAO,EAAE,CAAC,gBAAgB,CAAC;QACpC,CAAC;QACD,IAAI,IAAI;YACN,OAAO,OAAO,EAAE,CAAC,IAAI,CAAC;QACxB,CAAC;QACD,IAAI,IAAI;YACN,OAAO,OAAO,EAAE,CAAC,IAAI,CAAC;QACxB,CAAC;QACD,IAAI,IAAI;YACN,OAAO,OAAO,EAAE,CAAC,IAAI,CAAC;QACxB,CAAC;QACD,IAAI,QAAQ;YACV,OAAO,OAAO,EAAE,CAAC,IAAI,CAAC;QACxB,CAAC;QACD,IAAI,QAAQ;YACV,OAAO,OAAO,EAAE,CAAC,QAAQ,CAAC;QAC5B,CAAC;QACD,IAAI,QAAQ;YACV,OAAO,OAAO,EAAE,CAAC,QAAQ,CAAC;QAC5B,CAAC;QACD,IAAI,OAAO;YACT,OAAO,OAAO,EAAE,CAAC;QACnB,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAa;IACtC,OAAO,gCAAgC,CACrC,0BAA0B,CAAC,IAAI,EAAE,YAAY,CAAC,CAC/C,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { EventEmitter } from "node:events";
|
|
2
|
+
type IoredisErrorEmitter = (type: string, err: Error) => void;
|
|
3
|
+
export interface IoredisNetStream extends EventEmitter {
|
|
4
|
+
connecting: boolean;
|
|
5
|
+
destroyed: boolean;
|
|
6
|
+
readable: boolean;
|
|
7
|
+
writable: boolean;
|
|
8
|
+
remoteAddress?: string;
|
|
9
|
+
remotePort?: number;
|
|
10
|
+
_writableState: {
|
|
11
|
+
ended: boolean;
|
|
12
|
+
};
|
|
13
|
+
write(data: string | Uint8Array, callback?: (err?: Error | null) => void): boolean;
|
|
14
|
+
end(data?: string | Uint8Array | (() => void), callback?: () => void): IoredisNetStream;
|
|
15
|
+
destroy(error?: Error): IoredisNetStream;
|
|
16
|
+
setNoDelay(noDelay?: boolean): IoredisNetStream;
|
|
17
|
+
setKeepAlive(enable?: boolean, initialDelay?: number): IoredisNetStream;
|
|
18
|
+
setTimeout(timeout: number, callback?: () => void): IoredisNetStream;
|
|
19
|
+
resume(): IoredisNetStream;
|
|
20
|
+
pause(): IoredisNetStream;
|
|
21
|
+
}
|
|
22
|
+
export declare function buildIoredisConnectorFactory(connect: () => unknown): {
|
|
23
|
+
new (options?: {
|
|
24
|
+
disconnectTimeout?: number;
|
|
25
|
+
}): {
|
|
26
|
+
firstError?: Error;
|
|
27
|
+
"__#private@#stream": IoredisNetStream | undefined;
|
|
28
|
+
"__#private@#disconnectTimeout": number;
|
|
29
|
+
check(): boolean;
|
|
30
|
+
connect(errorEmitter?: IoredisErrorEmitter): Promise<IoredisNetStream>;
|
|
31
|
+
disconnect(): void;
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
export {};
|
|
35
|
+
//# sourceMappingURL=ioredis-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ioredis-adapter.d.ts","sourceRoot":"","sources":["../../src/private-data-sources/ioredis-adapter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAI3C,KAAK,mBAAmB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,KAAK,IAAI,CAAC;AAE9D,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;IACnC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC;IACnF,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,gBAAgB,CAAC;IACxF,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,gBAAgB,CAAC;IACzC,UAAU,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAC;IAChD,YAAY,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAC;IACxE,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,gBAAgB,CAAC;IACrE,MAAM,IAAI,gBAAgB,CAAC;IAC3B,KAAK,IAAI,gBAAgB,CAAC;CAC3B;AA0KD,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,OAAO;mBAMzC;QAAE,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE;qBAJvC,KAAK;8BACT,gBAAgB,GAAG,SAAS;yCACjB,MAAM;;+BAWH,mBAAmB;;;EAoB7C"}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
import { Buffer } from "node:buffer";
|
|
2
|
+
import { EventEmitter } from "node:events";
|
|
3
|
+
import { isCloudflareTcpSocket } from "./tcp.js";
|
|
4
|
+
function exactNodeBuffer(value) {
|
|
5
|
+
const bytes = new Uint8Array(value.byteLength);
|
|
6
|
+
bytes.set(value);
|
|
7
|
+
return Buffer.from(bytes.buffer);
|
|
8
|
+
}
|
|
9
|
+
function buildIoredisNetStream(socket, errorEmitter) {
|
|
10
|
+
if (!isCloudflareTcpSocket(socket)) {
|
|
11
|
+
throw new Error("Redis private data source did not return a readable/writable TCP socket");
|
|
12
|
+
}
|
|
13
|
+
const cloudflareSocket = socket;
|
|
14
|
+
const encoder = new TextEncoder();
|
|
15
|
+
const stream = new EventEmitter();
|
|
16
|
+
let reader = null;
|
|
17
|
+
let writer = null;
|
|
18
|
+
let readStarted = false;
|
|
19
|
+
let connectEmitted = false;
|
|
20
|
+
let closed = false;
|
|
21
|
+
let timeout = null;
|
|
22
|
+
let writeChain = Promise.resolve();
|
|
23
|
+
function setClosed() {
|
|
24
|
+
if (closed)
|
|
25
|
+
return;
|
|
26
|
+
closed = true;
|
|
27
|
+
stream.destroyed = true;
|
|
28
|
+
stream.readable = false;
|
|
29
|
+
stream.writable = false;
|
|
30
|
+
stream._writableState.ended = true;
|
|
31
|
+
if (timeout) {
|
|
32
|
+
clearTimeout(timeout);
|
|
33
|
+
timeout = null;
|
|
34
|
+
}
|
|
35
|
+
try {
|
|
36
|
+
reader?.releaseLock();
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
// Ignore release errors when the stream is already closed.
|
|
40
|
+
}
|
|
41
|
+
reader = null;
|
|
42
|
+
try {
|
|
43
|
+
writer?.releaseLock();
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
// Ignore release errors when the stream is already closed.
|
|
47
|
+
}
|
|
48
|
+
writer = null;
|
|
49
|
+
stream.emit("close");
|
|
50
|
+
}
|
|
51
|
+
function emitError(error) {
|
|
52
|
+
const err = error instanceof Error ? error : new Error(String(error));
|
|
53
|
+
errorEmitter?.("error", err);
|
|
54
|
+
stream.emit("error", err);
|
|
55
|
+
}
|
|
56
|
+
function markConnected() {
|
|
57
|
+
if (closed || connectEmitted)
|
|
58
|
+
return;
|
|
59
|
+
connectEmitted = true;
|
|
60
|
+
stream.connecting = false;
|
|
61
|
+
stream.emit("connect");
|
|
62
|
+
}
|
|
63
|
+
async function readLoop() {
|
|
64
|
+
const activeReader = reader ?? cloudflareSocket.readable.getReader();
|
|
65
|
+
reader = activeReader;
|
|
66
|
+
try {
|
|
67
|
+
while (!closed) {
|
|
68
|
+
const { value, done } = await activeReader.read();
|
|
69
|
+
if (done)
|
|
70
|
+
break;
|
|
71
|
+
if (value)
|
|
72
|
+
stream.emit("data", exactNodeBuffer(value));
|
|
73
|
+
}
|
|
74
|
+
setClosed();
|
|
75
|
+
}
|
|
76
|
+
catch (error) {
|
|
77
|
+
if (!closed) {
|
|
78
|
+
emitError(error);
|
|
79
|
+
setClosed();
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
function writeBytes(bytes) {
|
|
84
|
+
if (closed)
|
|
85
|
+
return Promise.reject(new Error("Redis connection is closed"));
|
|
86
|
+
const activeWriter = writer ?? cloudflareSocket.writable.getWriter();
|
|
87
|
+
writer = activeWriter;
|
|
88
|
+
return activeWriter.write(bytes);
|
|
89
|
+
}
|
|
90
|
+
stream.connecting = true;
|
|
91
|
+
stream.destroyed = false;
|
|
92
|
+
stream.readable = true;
|
|
93
|
+
stream.writable = true;
|
|
94
|
+
stream._writableState = { ended: false };
|
|
95
|
+
stream.write = (data, callback) => {
|
|
96
|
+
const bytes = typeof data === "string" ? encoder.encode(data) : data;
|
|
97
|
+
writeChain = writeChain
|
|
98
|
+
.then(() => writeBytes(bytes))
|
|
99
|
+
.then(() => callback?.(), (error) => {
|
|
100
|
+
const err = error instanceof Error ? error : new Error(String(error));
|
|
101
|
+
callback?.(err);
|
|
102
|
+
emitError(err);
|
|
103
|
+
});
|
|
104
|
+
return true;
|
|
105
|
+
};
|
|
106
|
+
stream.end = (data, callback) => {
|
|
107
|
+
const done = typeof data === "function" ? data : callback;
|
|
108
|
+
if (typeof data === "string" || data instanceof Uint8Array) {
|
|
109
|
+
stream.write(data);
|
|
110
|
+
}
|
|
111
|
+
writeChain
|
|
112
|
+
.finally(() => {
|
|
113
|
+
done?.();
|
|
114
|
+
try {
|
|
115
|
+
cloudflareSocket.close?.();
|
|
116
|
+
}
|
|
117
|
+
finally {
|
|
118
|
+
setClosed();
|
|
119
|
+
}
|
|
120
|
+
})
|
|
121
|
+
.catch(() => { });
|
|
122
|
+
return stream;
|
|
123
|
+
};
|
|
124
|
+
stream.destroy = (error) => {
|
|
125
|
+
if (error)
|
|
126
|
+
emitError(error);
|
|
127
|
+
try {
|
|
128
|
+
cloudflareSocket.close?.();
|
|
129
|
+
}
|
|
130
|
+
finally {
|
|
131
|
+
setClosed();
|
|
132
|
+
}
|
|
133
|
+
return stream;
|
|
134
|
+
};
|
|
135
|
+
stream.setNoDelay = () => stream;
|
|
136
|
+
stream.setKeepAlive = () => stream;
|
|
137
|
+
stream.setTimeout = (duration, callback) => {
|
|
138
|
+
if (timeout)
|
|
139
|
+
clearTimeout(timeout);
|
|
140
|
+
timeout = null;
|
|
141
|
+
if (duration > 0) {
|
|
142
|
+
timeout = setTimeout(() => {
|
|
143
|
+
callback?.();
|
|
144
|
+
stream.emit("timeout");
|
|
145
|
+
}, duration);
|
|
146
|
+
}
|
|
147
|
+
return stream;
|
|
148
|
+
};
|
|
149
|
+
stream.resume = () => {
|
|
150
|
+
if (!readStarted) {
|
|
151
|
+
readStarted = true;
|
|
152
|
+
readLoop();
|
|
153
|
+
}
|
|
154
|
+
return stream;
|
|
155
|
+
};
|
|
156
|
+
stream.pause = () => stream;
|
|
157
|
+
if (cloudflareSocket.opened) {
|
|
158
|
+
cloudflareSocket.opened.then(markConnected, (error) => {
|
|
159
|
+
emitError(error);
|
|
160
|
+
stream.destroy(error instanceof Error ? error : new Error(String(error)));
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
queueMicrotask(markConnected);
|
|
165
|
+
}
|
|
166
|
+
cloudflareSocket.closed?.finally(setClosed).catch(() => { });
|
|
167
|
+
return stream;
|
|
168
|
+
}
|
|
169
|
+
export function buildIoredisConnectorFactory(connect) {
|
|
170
|
+
return class Base44IoredisConnector {
|
|
171
|
+
firstError;
|
|
172
|
+
#stream;
|
|
173
|
+
#disconnectTimeout;
|
|
174
|
+
constructor(options) {
|
|
175
|
+
this.#disconnectTimeout =
|
|
176
|
+
typeof options?.disconnectTimeout === "number" ? options.disconnectTimeout : 2000;
|
|
177
|
+
}
|
|
178
|
+
check() {
|
|
179
|
+
return true;
|
|
180
|
+
}
|
|
181
|
+
connect(errorEmitter) {
|
|
182
|
+
return Promise.resolve(connect()).then((socket) => {
|
|
183
|
+
try {
|
|
184
|
+
this.#stream = buildIoredisNetStream(socket, errorEmitter);
|
|
185
|
+
return this.#stream;
|
|
186
|
+
}
|
|
187
|
+
catch (error) {
|
|
188
|
+
this.firstError = error instanceof Error ? error : new Error(String(error));
|
|
189
|
+
throw this.firstError;
|
|
190
|
+
}
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
disconnect() {
|
|
194
|
+
const stream = this.#stream;
|
|
195
|
+
if (!stream || stream.destroyed)
|
|
196
|
+
return;
|
|
197
|
+
const timeout = setTimeout(() => stream.destroy(), this.#disconnectTimeout);
|
|
198
|
+
stream.once("close", () => clearTimeout(timeout));
|
|
199
|
+
stream.end();
|
|
200
|
+
}
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=ioredis-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ioredis-adapter.js","sourceRoot":"","sources":["../../src/private-data-sources/ioredis-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { PrivateDataSourceManifestEntry } from "./types.js";
|
|
2
|
+
export declare function normalizePrivateDataSourceKey(value: unknown): string;
|
|
3
|
+
export declare function privateDataSourceReference(requestedName: unknown, expectedType: string): PrivateDataSourceManifestEntry;
|
|
4
|
+
export declare function lookupPrivateDataSource(requestedName: unknown, expectedType?: string): PrivateDataSourceManifestEntry;
|
|
5
|
+
export declare function privateDataSourceBinding(entry: PrivateDataSourceManifestEntry): unknown;
|
|
6
|
+
export declare function currentPrivateDataSource(entry: PrivateDataSourceManifestEntry): PrivateDataSourceManifestEntry;
|
|
7
|
+
//# sourceMappingURL=manifest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/private-data-sources/manifest.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAC;AA4BjE,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAMpE;AAED,wBAAgB,0BAA0B,CACxC,aAAa,EAAE,OAAO,EACtB,YAAY,EAAE,MAAM,GACnB,8BAA8B,CAEhC;AAkCD,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,OAAO,EACtB,YAAY,CAAC,EAAE,MAAM,GACpB,8BAA8B,CA2BhC;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,8BAA8B,GAAG,OAAO,CAYvF;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,8BAA8B,GACpC,8BAA8B,CAEhC"}
|