@base44/functions-compiler 0.1.4 → 0.1.6

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 (70) hide show
  1. package/README.md +23 -9
  2. package/lib/src/assembly.js +2 -2
  3. package/lib/src/assembly.js.map +1 -1
  4. package/lib/src/assets.d.ts +7 -0
  5. package/lib/src/assets.js +15 -0
  6. package/lib/src/assets.js.map +1 -0
  7. package/lib/src/bundler.d.ts +3 -1
  8. package/lib/src/bundler.js +14 -1
  9. package/lib/src/bundler.js.map +1 -1
  10. package/lib/src/contracts.d.ts +2 -0
  11. package/lib/src/contracts.js +4 -0
  12. package/lib/src/contracts.js.map +1 -1
  13. package/lib/src/deno-bundle.js +2 -2
  14. package/lib/src/deno-bundle.js.map +1 -1
  15. package/lib/src/esbuild/deno-resolver.js +28 -24
  16. package/lib/src/esbuild/deno-resolver.js.map +1 -1
  17. package/lib/src/esbuild/private-data-sources-virtual.js +2 -3
  18. package/lib/src/esbuild/private-data-sources-virtual.js.map +1 -1
  19. package/lib/src/esbuild/runtime-context-specifier.d.ts +1 -0
  20. package/lib/src/esbuild/runtime-context-specifier.js +3 -0
  21. package/lib/src/esbuild/runtime-context-specifier.js.map +1 -0
  22. package/lib/src/esbuild/runtime-context-virtual.d.ts +2 -1
  23. package/lib/src/esbuild/runtime-context-virtual.js +4 -4
  24. package/lib/src/esbuild/runtime-context-virtual.js.map +1 -1
  25. package/lib/src/esbuild/runtime-virtual.js +4 -21
  26. package/lib/src/esbuild/runtime-virtual.js.map +1 -1
  27. package/lib/src/fetch-guard.js +4 -2
  28. package/lib/src/fetch-guard.js.map +1 -1
  29. package/lib/src/generated/assets.d.ts +1 -0
  30. package/lib/src/generated/assets.js +30 -0
  31. package/lib/src/generated/assets.js.map +1 -0
  32. package/lib/src/index.d.ts +1 -1
  33. package/lib/src/index.js.map +1 -1
  34. package/lib/src/lazy-deps.d.ts +2 -0
  35. package/lib/src/lazy-deps.js +11 -0
  36. package/lib/src/lazy-deps.js.map +1 -0
  37. package/lib/src/shards/build.d.ts +4 -1
  38. package/lib/src/shards/build.js +5 -4
  39. package/lib/src/shards/build.js.map +1 -1
  40. package/lib/src/version.d.ts +1 -1
  41. package/lib/src/version.js +1 -1
  42. package/lib/src/worker-entry.js +56 -40
  43. package/lib/src/worker-entry.js.map +1 -1
  44. package/package.json +4 -3
  45. package/lib/dist/activation-shim.mjs +0 -237
  46. package/lib/dist/actor.mjs +0 -1129
  47. package/lib/dist/deno-shim.mjs +0 -2347
  48. package/lib/src/private-data-sources/build-http.ts +0 -51
  49. package/lib/src/private-data-sources/elasticsearch.ts +0 -8
  50. package/lib/src/private-data-sources/http-url.ts +0 -23
  51. package/lib/src/private-data-sources/http.ts +0 -6
  52. package/lib/src/private-data-sources/hyperdrive.ts +0 -48
  53. package/lib/src/private-data-sources/ioredis-adapter.ts +0 -229
  54. package/lib/src/private-data-sources/manifest.ts +0 -150
  55. package/lib/src/private-data-sources/mariadb.ts +0 -8
  56. package/lib/src/private-data-sources/mongodb.ts +0 -70
  57. package/lib/src/private-data-sources/mysql.ts +0 -8
  58. package/lib/src/private-data-sources/node-net-adapter.ts +0 -247
  59. package/lib/src/private-data-sources/oracle.ts +0 -34
  60. package/lib/src/private-data-sources/postgres.ts +0 -8
  61. package/lib/src/private-data-sources/redis-auth.ts +0 -83
  62. package/lib/src/private-data-sources/redis.ts +0 -47
  63. package/lib/src/private-data-sources/runtime-environment.ts +0 -4
  64. package/lib/src/private-data-sources/runtime-manifest-store.ts +0 -32
  65. package/lib/src/private-data-sources/sqlserver.ts +0 -22
  66. package/lib/src/private-data-sources/tcp.ts +0 -86
  67. package/lib/src/private-data-sources/tedious-adapter.ts +0 -67
  68. package/lib/src/private-data-sources/types.ts +0 -29
  69. package/lib/src/runtime/index.ts +0 -30
  70. package/lib/src/runtime-context.ts +0 -29
@@ -16,7 +16,7 @@
16
16
  * Unlike the compiler's own `bundleApp`, this refuses a partial result. A module
17
17
  * missing a handler is not a smaller success, it is a broken app.
18
18
  */
19
- import type { AppFunctionInput } from "../contracts.js";
19
+ import type { ActivationMode, AppFunctionInput } from "../contracts.js";
20
20
  import type { BundleErrorItem } from "../errors.js";
21
21
  import { type ShardPolicy } from "./plan.js";
22
22
  export interface CompiledShard {
@@ -29,6 +29,9 @@ export interface CompiledShard {
29
29
  mainModule: string;
30
30
  rawBytes: number;
31
31
  gzipBytes: number;
32
+ /** Set when the module carries the pull activation shim (a runtime-secrets
33
+ * build); the deployer needs it to give the script a pull-shim id. */
34
+ activation?: ActivationMode;
32
35
  }
33
36
  export interface ShardBuildFailure {
34
37
  /** The function this is about, when it belongs to one. */
@@ -70,7 +70,7 @@ async function buildWithSplit(group, policy, options) {
70
70
  if (!verdict.breach) {
71
71
  return {
72
72
  ok: true,
73
- shards: [shardOf(group, response.module, response.main_module, verdict)],
73
+ shards: [shardOf(group, response, verdict)],
74
74
  };
75
75
  }
76
76
  if (group.length === 1) {
@@ -90,13 +90,14 @@ async function buildWithSplit(group, policy, options) {
90
90
  return { ok: false, failures: halfFailures };
91
91
  return { ok: true, shards: halves.flatMap((h) => (h.ok ? h.shards : [])) };
92
92
  }
93
- function shardOf(group, module, mainModule, verdict) {
93
+ function shardOf(group, response, verdict) {
94
94
  return {
95
95
  functions: group.map((fn) => fn.name),
96
- module,
97
- mainModule,
96
+ module: response.module,
97
+ mainModule: response.main_module,
98
98
  rawBytes: verdict.rawBytes,
99
99
  gzipBytes: verdict.gzipBytes,
100
+ ...(response.activation ? { activation: response.activation } : {}),
100
101
  };
101
102
  }
102
103
  /** Every declared function must land in exactly one emitted shard. A name that
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/shards/build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/shards/build.ts"],"names":[],"mappings":"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"}
@@ -12,4 +12,4 @@
12
12
  * drifts from `package.json`, so bumping the package still means editing two
13
13
  * files but cannot mean forgetting one.
14
14
  */
15
- export declare const COMPILER_VERSION = "0.1.4";
15
+ export declare const COMPILER_VERSION = "0.1.6";
@@ -12,5 +12,5 @@
12
12
  * drifts from `package.json`, so bumping the package still means editing two
13
13
  * files but cannot mean forgetting one.
14
14
  */
15
- export const COMPILER_VERSION = "0.1.4";
15
+ export const COMPILER_VERSION = "0.1.6";
16
16
  //# sourceMappingURL=version.js.map
@@ -4,26 +4,18 @@
4
4
  * `npm:`/`jsr:`/`https:` specifiers) plus an injected shim and a generated
5
5
  * Worker entry. This is the layer that understands "functions" and "an app".
6
6
  */
7
- import { readFileSync } from "node:fs";
7
+ import { asset } from "./assets.js";
8
8
  import { DenoCompatError } from "./errors.js";
9
9
  import { RUNTIME_CONTEXT_SPECIFIER } from "./esbuild/runtime-context-virtual.js";
10
10
  import { ASCII_ESCAPE, CAPTURE_PATCH, INVOCATION_LOGS_PATCH, } from "./invocation-logs.js";
11
11
  import { TELEMETRY_PATCH, TELEMETRY_STORE_FIELDS } from "./telemetry.js";
12
12
  import { COMPILER_VERSION } from "./version.js";
13
- // Pre-built by scripts/build-shim.ts; regenerate it after changing the shim.
14
- // Read LAZILY, not at module load: build-shim.ts transitively imports this
15
- // module through the esbuild plugins, and on a fresh checkout dist/ doesn't
16
- // exist yet — a load-time read would crash the very script that produces these
17
- // files (and only pass locally where dist/ already exists).
18
- let _denoShimSource;
13
+ // Pre-built by scripts/build-shim.ts; regenerate them after changing a shim.
19
14
  function denoShimSource() {
20
- _denoShimSource ??= readFileSync(new URL("../dist/deno-shim.mjs", import.meta.url), "utf8");
21
- return _denoShimSource;
15
+ return asset("deno-shim.mjs");
22
16
  }
23
- let _activationShimSource;
24
17
  function activationShimSource() {
25
- _activationShimSource ??= readFileSync(new URL("../dist/activation-shim.mjs", import.meta.url), "utf8");
26
- return _activationShimSource;
18
+ return asset("activation-shim.mjs");
27
19
  }
28
20
  // Synthetic files injected into the bundle; asserted absent from user input.
29
21
  export const SHIM_FILENAME = "__base44_deno_shim.mjs";
@@ -75,8 +67,10 @@ export const CONSOLE_PATCH = [
75
67
  // reads the store per call, so concurrent requests get their own ctx.
76
68
  // `secrets` reads the request's Worker env binding the same way. Two filters:
77
69
  // - reserved platform keys (the private-data-sources manifest, which carries
78
- // plaintext VPC DB credentials) are denied — user code reaches data sources
79
- // via the base44:private-data-sources/* imports, never the raw manifest;
70
+ // plaintext VPC DB credentials; runtime-secrets bundles add the pull
71
+ // bindings, see RUNTIME_SECRETS_RESERVED_PATCH) are denied — user code
72
+ // reaches data sources via the base44:private-data-sources/* imports,
73
+ // never the raw manifest;
80
74
  // - only string values are returned, so non-secret bindings (Hyperdrive
81
75
  // objects, etc.) stay hidden.
82
76
  // This global is the internal bridge behind the "base44:runtime" virtual
@@ -91,6 +85,16 @@ export const CONSOLE_PATCH = [
91
85
  // Supabase-compat alias so copy-pasted EdgeRuntime.waitUntil code works.
92
86
  "globalThis.EdgeRuntime = globalThis.EdgeRuntime ?? { waitUntil: (p) => globalThis.Base44.waitUntil(p) };",
93
87
  ].join("\n");
88
+ // Only runtime-secrets bundles carry the pull bindings, so only they reserve
89
+ // the names: a binding-mode function that stored a user secret under one of
90
+ // them before they were reserved must keep reading it (actors likewise never
91
+ // carry them — src/shim/actor.ts mirrors CONSOLE_PATCH's set alone).
92
+ const RUNTIME_SECRETS_RESERVED_PATCH = "_b44ReservedSecrets.add('BASE44_ACTIVATION_KEY').add('BASE44_ACTIVATION_URL');";
93
+ function consolePatch(runtimeSecrets) {
94
+ return runtimeSecrets
95
+ ? `${CONSOLE_PATCH}\n${RUNTIME_SECRETS_RESERVED_PATCH}`
96
+ : CONSOLE_PATCH;
97
+ }
94
98
  /** Assemble a single Deno function into a bundle-ready Worker. */
95
99
  export async function prepareFunction(entry, files, postResponseTelemetry = false, runtimeSecrets = false) {
96
100
  assertNoReservedFilenames(files);
@@ -162,16 +166,29 @@ export function prepareApp(entries, postResponseTelemetry = false, runtimeSecret
162
166
  banner: buildBanner(entries, postResponseTelemetry, runtimeSecrets),
163
167
  };
164
168
  }
165
- // Activation prelude for runtime-secrets bundles: gate on the encrypted
166
- // handshake BEFORE any user module is imported (so a needs-activation response
167
- // implies no user side effect ran), then strip the envelope from the request.
168
- const ACTIVATION_GATE = ` const _b44Activation = await ensureActivation(request, env);
169
- if (_b44Activation) return _b44Activation;
170
- request = withoutRuntimeSecretsHeader(request);
169
+ // Activation gate for runtime-secrets bundles: pull, or answer why it could not,
170
+ // BEFORE any user module is imported, so a shim response implies no user side
171
+ // effect ran.
172
+ const ACTIVATION_GATE = ` const _b44Activation = await ensureActivation(_b44Taken.challenge, env);
173
+ if (_b44Activation.response) return _b44Activation.response;
171
174
  `;
175
+ // The entry's FIRST statement in a runtime-secrets bundle: read the challenge
176
+ // with captured references and drop it from the request before any plain
177
+ // `request.headers.get(...)` below, which a warm isolate's user code may have
178
+ // patched to read the live headers.
179
+ const ACTIVATION_TAKE = ` const _b44Taken = takeActivationChallenge(request); request = _b44Taken.request;
180
+ `;
181
+ // Every response produced AFTER the user module was imported goes through the
182
+ // strip, not only the handler's: those paths build with the call-time global
183
+ // `Response`, which a user module can replace with a subclass that carries a
184
+ // forged error header (a served, side-effecting request would then read as a
185
+ // failed activation). Identity for binding-mode bundles keeps their bytes.
186
+ function activationGuard(runtimeSecrets) {
187
+ return (expr) => runtimeSecrets ? `withoutActivationHeaders(${expr}, _b44Activation)` : expr;
188
+ }
172
189
  function activationImport(runtimeSecrets) {
173
190
  return runtimeSecrets
174
- ? `\nimport { ensureActivation, withoutActivationSignal, withoutRuntimeSecretsHeader } from "./${ACTIVATION_FILENAME}";`
191
+ ? `\nimport { ensureActivation, takeActivationChallenge, withoutActivationHeaders } from "./${ACTIVATION_FILENAME}";`
175
192
  : "";
176
193
  }
177
194
  /** Build the wrapper entry that loads the shim, lazily imports the user module
@@ -179,22 +196,22 @@ function activationImport(runtimeSecrets) {
179
196
  * then exports a standard Worker fetch that delegates to that handler. */
180
197
  function buildEntrySource(userEntry, telemetry, runtimeSecrets = false) {
181
198
  const userImport = `./${userEntry.replace(/^\.\//, "")}`;
182
- // Handler responses get the activation-signal header stripped (user code must
183
- // not be able to forge a signal after side effects and cause a re-execution).
199
+ // Handler responses get the shim's headers stripped (a forged error header
200
+ // after side effects would read as a non-billable failed activation) and the
201
+ // installing request's marker added.
184
202
  const handlerExpr = telemetry
185
203
  ? "_b44AttachTelemetry(await handler(request, info))"
186
204
  : runtimeSecrets
187
205
  ? "await handler(request, info)"
188
206
  : "handler(request, info)";
189
- const returnExpr = runtimeSecrets
190
- ? `withoutActivationSignal(${handlerExpr})`
191
- : handlerExpr;
207
+ const guard = activationGuard(runtimeSecrets);
208
+ const returnExpr = guard(handlerExpr);
192
209
  return `// Auto-generated by the base44 bundler. Do not edit.
193
210
 
194
211
  import { currentWorkerRuntimeContext as _b44Context, runWithWorkerEnvironment as _b44Run } from ${JSON.stringify(RUNTIME_CONTEXT_SPECIFIER)};
195
212
  import { getRegisteredHandler, installStaticEgressFetch } from "./${SHIM_FILENAME}";${activationImport(runtimeSecrets)}
196
213
 
197
- ${CONSOLE_PATCH}
214
+ ${consolePatch(runtimeSecrets)}
198
215
  // Static egress reads workerEnv from the active request store. Install it
199
216
  // before telemetry so telemetry remains the outermost fetch wrapper.
200
217
  installStaticEgressFetch();
@@ -203,7 +220,7 @@ ${telemetry ? TELEMETRY_PATCH : ""}
203
220
  let _b44Init = null;
204
221
  export default {
205
222
  async fetch(request, env, ctx) {
206
- const _b44Env = (request.headers.get('base44-functions-version') ?? '') === 'prod' ? 'prod' : 'preview';
223
+ ${runtimeSecrets ? ACTIVATION_TAKE : ""} const _b44Env = (request.headers.get('base44-functions-version') ?? '') === 'prod' ? 'prod' : 'preview';
207
224
  return _b44Run({ env: _b44Env, secrets: ${runtimeSecrets ? "process.env" : "env"}, workerEnv: env, waitUntil: (p) => ctx.waitUntil(p)${telemetry ? `, ${TELEMETRY_STORE_FIELDS}` : ""} }, async () => {
208
225
  ${runtimeSecrets ? ACTIVATION_GATE : ""} if (!_b44Init) _b44Init = import(${JSON.stringify(userImport)}).catch(e => { _b44Init = null; throw e; });
209
226
  const _b44Mod = await _b44Init;
@@ -211,10 +228,10 @@ ${runtimeSecrets ? ACTIVATION_GATE : ""} if (!_b44Init) _b44Init = import($
211
228
  // a default-exported handler is the new-contract fallback.
212
229
  const handler = getRegisteredHandler() ?? (typeof _b44Mod?.default === 'function' ? _b44Mod.default : null);
213
230
  if (!handler) {
214
- return new Response(
231
+ return ${guard(`new Response(
215
232
  "The function must export default a request handler or call Deno.serve()",
216
233
  { status: 503 },
217
- );
234
+ )`)};
218
235
  }
219
236
  // Deno's handler signature is (request, info). Cloudflare doesn't expose a
220
237
  // connection address the same way; pass a best-effort placeholder. Real
@@ -243,16 +260,15 @@ function buildAppEntrySource(functionModules, telemetry, runtimeSecrets = false)
243
260
  const handlerExpr = `_b44AttachInvocationLogs(${telemetry
244
261
  ? "_b44AttachTelemetry(await handler(request, info))"
245
262
  : "await handler(request, info)"})`;
246
- const returnExpr = runtimeSecrets
247
- ? `withoutActivationSignal(${handlerExpr})`
248
- : handlerExpr;
263
+ const guard = activationGuard(runtimeSecrets);
264
+ const returnExpr = guard(handlerExpr);
249
265
  return `// Auto-generated by the base44 bundler. Do not edit.
250
266
 
251
267
  import { currentWorkerRuntimeContext as _b44Context, runWithWorkerEnvironment as _b44Run } from ${JSON.stringify(RUNTIME_CONTEXT_SPECIFIER)};
252
268
  import { installStaticEgressFetch, resolveHandler } from "./${SHIM_FILENAME}";${activationImport(runtimeSecrets)}
253
269
  ${moduleImports}
254
270
 
255
- ${CONSOLE_PATCH}
271
+ ${consolePatch(runtimeSecrets)}
256
272
  ${INVOCATION_LOGS_PATCH}
257
273
  // Static egress reads workerEnv from the active request store. Install it
258
274
  // before telemetry so telemetry remains the outermost fetch wrapper.
@@ -261,7 +277,7 @@ ${telemetry ? TELEMETRY_PATCH : ""}
261
277
 
262
278
  export default {
263
279
  async fetch(request, env, ctx) {
264
- const _b44Env = (request.headers.get('base44-functions-version') ?? '') === 'prod' ? 'prod' : 'preview';
280
+ ${runtimeSecrets ? ACTIVATION_TAKE : ""} const _b44Env = (request.headers.get('base44-functions-version') ?? '') === 'prod' ? 'prod' : 'preview';
265
281
  const functionName = request.headers.get("Base44-Function-Name");
266
282
  return _b44Run({ env: _b44Env, fn: functionName ?? '', secrets: ${runtimeSecrets ? "process.env" : "env"}, workerEnv: env, waitUntil: (p) => ctx.waitUntil(p), ..._b44CaptureStore(request)${telemetry ? `, ${TELEMETRY_STORE_FIELDS}` : ""} }, async () => {
267
283
  ${runtimeSecrets ? ACTIVATION_GATE : ""} // Each early return below logs through the patch first: per-function log
@@ -271,22 +287,22 @@ ${runtimeSecrets ? ACTIVATION_GATE : ""} // Each early return below logs th
271
287
  if (pendingHandler === undefined) {
272
288
  const message = \`No function registered for "\${functionName ?? ""}"\`;
273
289
  console.error(message);
274
- return _b44AttachInvocationLogs(new Response(message, { status: 404 }));
290
+ return ${guard("_b44AttachInvocationLogs(new Response(message, { status: 404 }))")};
275
291
  }
276
292
  let handler;
277
293
  try {
278
294
  handler = await pendingHandler;
279
295
  } catch (e) {
280
296
  console.error(\`Function "\${functionName}" failed to initialize:\`, e);
281
- return _b44AttachInvocationLogs(new Response(
297
+ return ${guard(`_b44AttachInvocationLogs(new Response(
282
298
  \`Function "\${functionName}" failed to initialize: \${e instanceof Error ? e.message : String(e)}\`,
283
299
  { status: 500 },
284
- ));
300
+ ))`)};
285
301
  }
286
302
  if (handler === null) {
287
303
  const message = \`Function "\${functionName}" must export default a request handler or call Deno.serve()\`;
288
304
  console.error(message);
289
- return _b44AttachInvocationLogs(new Response(message, { status: 503 }));
305
+ return ${guard("_b44AttachInvocationLogs(new Response(message, { status: 503 }))")};
290
306
  }
291
307
  // Real client IP is in the "cf-connecting-ip" header, not this placeholder.
292
308
  const info = {
@@ -306,7 +322,7 @@ ${runtimeSecrets ? ACTIVATION_GATE : ""} // Each early return below logs th
306
322
  } catch (e) {
307
323
  console.error(e);
308
324
  const crash = _b44CrashResponse(e);
309
- if (crash) return crash;
325
+ if (crash) return ${guard("crash")};
310
326
  throw e;
311
327
  }
312
328
  });
@@ -1 +1 @@
1
- {"version":3,"file":"worker-entry.js","sourceRoot":"","sources":["../../src/worker-entry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker-entry.js","sourceRoot":"","sources":["../../src/worker-entry.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@base44/functions-compiler",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
4
4
  "description": "Production compiler for Base44 backend functions — turns function sources into a single Cloudflare Workers module.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -23,9 +23,10 @@
23
23
  "README.md"
24
24
  ],
25
25
  "scripts": {
26
- "build": "bun run clean && bun run build:shim && tsc -p tsconfig.build.json && bun run scripts/copy-assets.ts",
26
+ "build": "bun run clean && bun run build:shim && tsc -p tsconfig.build.json",
27
27
  "build:shim": "bun run scripts/build-shim.ts",
28
- "clean": "rm -rf dist lib",
28
+ "prepare": "bun run build:shim",
29
+ "clean": "rm -rf dist lib src/generated",
29
30
  "typecheck": "tsc --noEmit",
30
31
  "test": "bun run build:shim && vitest run"
31
32
  },
@@ -1,237 +0,0 @@
1
- // GENERATED by scripts/build-shim.ts from src/shim/activation.ts — do not edit.
2
- // Regenerate with `npm run build:shim`.
3
-
4
- // src/shim/activation.ts
5
- import { inflateSync } from "node:zlib";
6
- import { setRuntimeManifest } from "base44:private-data-sources/runtime-manifest-store";
7
- var NEEDS_ACTIVATION_HEADER = "X-Base44-Needs-Activation";
8
- var RUNTIME_SECRETS_HEADER = "Base44-Runtime-Secrets";
9
- var HKDF_INFO = "base44-runtime-secrets-v1";
10
- var BACKEND_PUBKEY_LEN = 65;
11
- var NONCE_LEN = 12;
12
- var DATA_KEY_LEN = 32;
13
- var WRAP_BLOCK_LEN = NONCE_LEN + DATA_KEY_LEN + 16;
14
- var BLOB_BINDING_PREFIX = "BASE44_SECRETS_BLOB";
15
- var BLOB_KEY_ID_LEN = 1;
16
- var MANIFEST_KEY = "BASE44_PRIVATE_DATA_SOURCES";
17
- var _subtle = crypto.subtle;
18
- var _subtleGenerateKey = _subtle.generateKey.bind(_subtle);
19
- var _subtleExportKey = _subtle.exportKey.bind(_subtle);
20
- var _subtleImportKey = _subtle.importKey.bind(_subtle);
21
- var _subtleDeriveBits = _subtle.deriveBits.bind(_subtle);
22
- var _subtleDecrypt = _subtle.decrypt.bind(_subtle);
23
- var _JSONparse = JSON.parse;
24
- var _TextDecoder = TextDecoder;
25
- var _TextEncoder = TextEncoder;
26
- var _decodeUtf8 = TextDecoder.prototype.decode;
27
- var _encodeUtf8 = TextEncoder.prototype.encode;
28
- var _Uint8Array = Uint8Array;
29
- var _atob = atob;
30
- var _btoa = btoa;
31
- var _DOMException = DOMException;
32
- var _ObjectEntries = Object.entries;
33
- var _Headers = Headers;
34
- var _Request = Request;
35
- var _Response = Response;
36
- var _headersGet = Headers.prototype.get;
37
- var _headersAppend = Headers.prototype.append;
38
- var _headersEntries = Headers.prototype.entries;
39
- var _iterNext = Object.getPrototypeOf(new Headers().entries()).next;
40
- function accessor(proto, name) {
41
- for (let o = proto; o; o = Object.getPrototypeOf(o)) {
42
- const d = Object.getOwnPropertyDescriptor(o, name);
43
- if (d?.get) return d.get;
44
- }
45
- return void 0;
46
- }
47
- var _reqHeaders = accessor(Request.prototype, "headers");
48
- var _resHeaders = accessor(Response.prototype, "headers");
49
- var _resStatus = accessor(Response.prototype, "status");
50
- var _resStatusText = accessor(Response.prototype, "statusText");
51
- var _resBody = accessor(Response.prototype, "body");
52
- var _resWebSocket = accessor(Response.prototype, "webSocket");
53
- var NEEDS_ACTIVATION_HEADER_LC = "x-base44-needs-activation";
54
- var RUNTIME_SECRETS_HEADER_LC = "base44-runtime-secrets";
55
- function headersWithout(src, dropLowercased) {
56
- const out = new _Headers();
57
- const it = _headersEntries.call(src);
58
- for (; ; ) {
59
- const step = _iterNext.call(it);
60
- if (step.done) break;
61
- if (step.value[0] !== dropLowercased) _headersAppend.call(out, step.value[0], step.value[1]);
62
- }
63
- return out;
64
- }
65
- var keyPairPromise = null;
66
- var installed = false;
67
- var pendingInstall = null;
68
- var installChain = Promise.resolve();
69
- function getKeyPair() {
70
- keyPairPromise ??= _subtleGenerateKey(
71
- { name: "ECDH", namedCurve: "P-256" },
72
- false,
73
- ["deriveBits"]
74
- ).catch((e) => {
75
- keyPairPromise = null;
76
- throw e;
77
- });
78
- return keyPairPromise;
79
- }
80
- async function needsActivationResponse() {
81
- const { publicKey } = await getKeyPair();
82
- const raw = await _subtleExportKey("raw", publicKey);
83
- return new Response(null, {
84
- status: 503,
85
- headers: {
86
- [NEEDS_ACTIVATION_HEADER]: toBase64Url(new _Uint8Array(raw)),
87
- "Cache-Control": "no-store"
88
- }
89
- });
90
- }
91
- async function install(envelopeB64, env) {
92
- const envelope = fromBase64Url(envelopeB64);
93
- const backendPub = envelope.slice(0, BACKEND_PUBKEY_LEN);
94
- const recipientCount = envelope[BACKEND_PUBKEY_LEN];
95
- const { privateKey } = await getKeyPair();
96
- const peer = await _subtleImportKey(
97
- "raw",
98
- backendPub,
99
- { name: "ECDH", namedCurve: "P-256" },
100
- false,
101
- []
102
- );
103
- const shared = await _subtleDeriveBits({ name: "ECDH", public: peer }, privateKey, 256);
104
- const hkdfKey = await _subtleImportKey("raw", shared, "HKDF", false, ["deriveBits"]);
105
- const keyBits = await _subtleDeriveBits(
106
- {
107
- name: "HKDF",
108
- hash: "SHA-256",
109
- salt: new _Uint8Array(0),
110
- info: _encodeUtf8.call(new _TextEncoder(), HKDF_INFO)
111
- },
112
- hkdfKey,
113
- 256
114
- );
115
- const kek = await _subtleImportKey("raw", keyBits, "AES-GCM", false, ["decrypt"]);
116
- const appId = env?.BASE44_APP_ID;
117
- const aad = _encodeUtf8.call(new _TextEncoder(), typeof appId === "string" ? appId : "");
118
- let dataKeyBytes = null;
119
- for (let i = 0; i < recipientCount && dataKeyBytes === null; i++) {
120
- const blockStart = BACKEND_PUBKEY_LEN + 1 + i * WRAP_BLOCK_LEN;
121
- const wrapNonce = envelope.slice(blockStart, blockStart + NONCE_LEN);
122
- const wrapped = envelope.slice(blockStart + NONCE_LEN, blockStart + WRAP_BLOCK_LEN);
123
- try {
124
- dataKeyBytes = await _subtleDecrypt(
125
- { name: "AES-GCM", iv: wrapNonce, additionalData: aad },
126
- kek,
127
- wrapped
128
- );
129
- } catch {
130
- }
131
- }
132
- if (dataKeyBytes === null) {
133
- throw new _DOMException("no wrap block for this isolate", "OperationError");
134
- }
135
- const bindings = env ?? {};
136
- let blobB64 = "";
137
- for (let i = 0; ; i++) {
138
- const part = bindings[`${BLOB_BINDING_PREFIX}_${i}`];
139
- if (typeof part !== "string") break;
140
- blobB64 += part;
141
- }
142
- if (blobB64 === "") {
143
- throw new _DOMException("no secret blob bindings on this script", "OperationError");
144
- }
145
- const blob = fromBase64Url(blobB64);
146
- const blobNonce = blob.slice(BLOB_KEY_ID_LEN, BLOB_KEY_ID_LEN + NONCE_LEN);
147
- const blobCiphertext = blob.slice(BLOB_KEY_ID_LEN + NONCE_LEN);
148
- const dataKey = await _subtleImportKey("raw", dataKeyBytes, "AES-GCM", false, ["decrypt"]);
149
- const plaintext = await _subtleDecrypt(
150
- { name: "AES-GCM", iv: blobNonce, additionalData: aad },
151
- dataKey,
152
- blobCiphertext
153
- );
154
- const payload = _JSONparse(
155
- _decodeUtf8.call(new _TextDecoder(), inflateSync(new _Uint8Array(plaintext)))
156
- );
157
- const secrets = payload && typeof payload === "object" && payload.secrets ? payload.secrets : {};
158
- const manifestValue = secrets[MANIFEST_KEY];
159
- setRuntimeManifest(typeof manifestValue === "string" ? manifestValue : "");
160
- for (const [key, value] of _ObjectEntries(secrets)) {
161
- if (key !== MANIFEST_KEY && typeof value === "string") process.env[key] = value;
162
- }
163
- installed = true;
164
- }
165
- function installOnce(envelopeB64, env) {
166
- if (installed) return Promise.resolve();
167
- const afterPrevious = installChain.then(void 0, () => {
168
- });
169
- const run = afterPrevious.then(() => installed ? void 0 : install(envelopeB64, env));
170
- installChain = run.then(void 0, () => {
171
- });
172
- pendingInstall = run;
173
- const clear = () => {
174
- if (pendingInstall === run) pendingInstall = null;
175
- };
176
- run.then(clear, clear);
177
- return run;
178
- }
179
- async function ensureActivation(request, env) {
180
- const header = _headersGet.call(_reqHeaders.call(request), RUNTIME_SECRETS_HEADER);
181
- if (header) {
182
- try {
183
- await installOnce(header, env);
184
- return null;
185
- } catch (e) {
186
- console.error(
187
- `Base44 runtime-secrets activation failed, re-signaling: ${e?.name ?? "error"}`
188
- );
189
- return needsActivationResponse();
190
- }
191
- }
192
- if (installed) return null;
193
- if (pendingInstall) {
194
- try {
195
- await pendingInstall;
196
- } catch {
197
- }
198
- if (installed) return null;
199
- }
200
- return needsActivationResponse();
201
- }
202
- function withoutRuntimeSecretsHeader(request) {
203
- const raw = _reqHeaders.call(request);
204
- if (_headersGet.call(raw, RUNTIME_SECRETS_HEADER) === null) return request;
205
- return new _Request(request, { headers: headersWithout(raw, RUNTIME_SECRETS_HEADER_LC) });
206
- }
207
- function withoutActivationSignal(response) {
208
- const raw = _resHeaders.call(response);
209
- if (_headersGet.call(raw, NEEDS_ACTIVATION_HEADER) === null) return response;
210
- return new _Response(_resBody.call(response), {
211
- status: _resStatus.call(response),
212
- statusText: _resStatusText.call(response),
213
- headers: headersWithout(raw, NEEDS_ACTIVATION_HEADER_LC),
214
- // Preserved or a 101 upgrade would fail to reconstruct.
215
- webSocket: _resWebSocket ? _resWebSocket.call(response) : void 0
216
- });
217
- }
218
- function toBase64Url(bytes) {
219
- let bin = "";
220
- for (const b of bytes) bin += String.fromCharCode(b);
221
- return _btoa(bin).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
222
- }
223
- function fromBase64Url(value) {
224
- const b64 = value.replace(/-/g, "+").replace(/_/g, "/");
225
- const padded = b64 + "=".repeat((4 - b64.length % 4) % 4);
226
- const bin = _atob(padded);
227
- const bytes = new _Uint8Array(bin.length);
228
- for (let i = 0; i < bin.length; i++) bytes[i] = bin.charCodeAt(i);
229
- return bytes;
230
- }
231
- export {
232
- NEEDS_ACTIVATION_HEADER,
233
- RUNTIME_SECRETS_HEADER,
234
- ensureActivation,
235
- withoutActivationSignal,
236
- withoutRuntimeSecretsHeader
237
- };