@samebase/convex-hosting 0.13.1 → 0.15.0
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/CHANGELOG.md +39 -0
- package/README.md +117 -73
- package/dist/cli/convex.d.ts +6 -0
- package/dist/cli/convex.js +22 -1
- package/dist/cli/convex.js.map +1 -1
- package/dist/cli/files.js +6 -1
- package/dist/cli/files.js.map +1 -1
- package/dist/cli/main.js +138 -20
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/manifest.d.ts +19 -0
- package/dist/cli/manifest.js +71 -0
- package/dist/cli/manifest.js.map +1 -0
- package/dist/cli/site-config.d.ts +32 -0
- package/dist/cli/site-config.js +15 -0
- package/dist/cli/site-config.js.map +1 -0
- package/dist/client/answer.d.ts +16 -0
- package/dist/client/answer.js +51 -0
- package/dist/client/answer.js.map +1 -0
- package/dist/client/index.d.ts +23 -3
- package/dist/client/index.js +57 -78
- package/dist/client/index.js.map +1 -1
- package/dist/client/manifest.d.ts +68 -0
- package/dist/client/manifest.js +48 -0
- package/dist/client/manifest.js.map +1 -0
- package/dist/client/version-module.d.ts +1 -1
- package/dist/component/_generated/component.d.ts +2 -18
- package/dist/component/lib.d.ts +15 -46
- package/dist/component/lib.js +35 -134
- package/dist/component/lib.js.map +1 -1
- package/dist/component/schema.d.ts +2 -2
- package/dist/component/schema.js +2 -2
- package/dist/workers-sdk/packages/workers-shared/asset-worker/src/assets-manifest.d.ts +14 -0
- package/dist/workers-sdk/packages/workers-shared/asset-worker/src/assets-manifest.js +84 -0
- package/dist/workers-sdk/packages/workers-shared/asset-worker/src/assets-manifest.js.map +1 -0
- package/package.json +7 -6
package/dist/component/lib.js
CHANGED
|
@@ -1,17 +1,8 @@
|
|
|
1
1
|
import { ConvexError, v } from "convex/values";
|
|
2
2
|
import { z } from "zod";
|
|
3
|
-
import { Analytics } from "../workers-sdk/packages/workers-shared/asset-worker/src/analytics.js";
|
|
4
|
-
import { normalizeConfiguration } from "../workers-sdk/packages/workers-shared/asset-worker/src/configuration.js";
|
|
5
|
-
import { canFetch, handleRequest, } from "../workers-sdk/packages/workers-shared/asset-worker/src/handler.js";
|
|
6
|
-
import { mockJaegerBinding } from "../workers-sdk/packages/workers-shared/utils/tracing.js";
|
|
7
3
|
import { AssetConfigSchema } from "../workers-sdk/packages/workers-shared/utils/types.js";
|
|
8
4
|
import { internal } from "./_generated/api.js";
|
|
9
|
-
import { internalAction, internalMutation, internalQuery, mutation,
|
|
10
|
-
/**
|
|
11
|
-
* The compatibility date of Cloudflare's handler. From 2025-04-01 on, Cloudflare applies
|
|
12
|
-
* `not_found_handling` to a request with `Sec-Fetch-Mode: navigate` when a Worker exists.
|
|
13
|
-
*/
|
|
14
|
-
const COMPATIBILITY_DATE = "2025-04-01";
|
|
5
|
+
import { internalAction, internalMutation, internalQuery, mutation, } from "./_generated/server.js";
|
|
15
6
|
/**
|
|
16
7
|
* A version that never became live, and a stored file that no entry references, are garbage once
|
|
17
8
|
* they are a day old: a failed deploy leaves them, and an upload in progress is younger. This age
|
|
@@ -216,39 +207,49 @@ export const finishVersion = internalMutation({
|
|
|
216
207
|
},
|
|
217
208
|
});
|
|
218
209
|
/**
|
|
219
|
-
* Marks a `ready` version `live` and schedules `collect
|
|
220
|
-
*
|
|
221
|
-
*
|
|
222
|
-
*
|
|
223
|
-
*
|
|
224
|
-
*
|
|
210
|
+
* Marks a `ready` version `live` and schedules `collect`, and says what it did. `serveSite` calls
|
|
211
|
+
* it for the request that the CLI sends after the push, with the site's mark token, so only the
|
|
212
|
+
* code that serves marks its own version. A version that is already live stays as it is, so a
|
|
213
|
+
* repeated mark is fine. It never throws, so the CLI reads every outcome from the answer.
|
|
214
|
+
*
|
|
215
|
+
* The request may still run when its code is replaced, so two rules refuse a mark of replaced code.
|
|
216
|
+
* An older upload never goes live over a newer one: the mark does nothing when a live version was
|
|
217
|
+
* created after this one. And a mark is late when another version went live after its request
|
|
218
|
+
* arrived, at `arrivedAt`: that version's code has served since. `arrivedAt` is the HTTP action's
|
|
219
|
+
* clock and the live time is this mutation's, so the rule holds as far as the two agree.
|
|
225
220
|
*
|
|
226
|
-
* Precondition: deploys to one deployment do not overlap. When two overlap
|
|
227
|
-
*
|
|
228
|
-
*
|
|
221
|
+
* Precondition: deploys to one deployment do not overlap. When two overlap, the mark of the
|
|
222
|
+
* version that serves may be refused: it then stays `ready`, and nothing is deleted until the next
|
|
223
|
+
* deploy. The limits are in `docs/design.md`, "Stated, not solved".
|
|
229
224
|
*/
|
|
230
225
|
export const markLive = mutation({
|
|
231
|
-
args: {
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
226
|
+
args: {
|
|
227
|
+
versionId: v.string(),
|
|
228
|
+
/** `Date.now()` when the mark's request reached the code that serves. */
|
|
229
|
+
arrivedAt: v.number(),
|
|
230
|
+
},
|
|
231
|
+
returns: v.union(
|
|
232
|
+
/** It was `ready` and is now the newest live version. */
|
|
233
|
+
v.literal("marked"), v.literal("live"),
|
|
234
|
+
/** A live version was created after it, or went live after `arrivedAt`: it stays as it is. */
|
|
235
|
+
v.literal("superseded"), v.literal("uploading"), v.literal("deleting"), v.literal("missing")),
|
|
236
|
+
handler: async (ctx, { versionId, arrivedAt }) => {
|
|
237
|
+
const version = await getVersion(ctx, versionId);
|
|
238
|
+
if (version === null)
|
|
239
|
+
return "missing";
|
|
240
|
+
if (version.state.kind !== "ready")
|
|
241
|
+
return version.state.kind;
|
|
243
242
|
const newest = await getNewestLive(ctx);
|
|
244
243
|
if (newest !== null && newest.createdAt > version._creationTime)
|
|
245
|
-
return
|
|
244
|
+
return "superseded";
|
|
245
|
+
if (newest !== null && newest.at > arrivedAt)
|
|
246
|
+
return "superseded";
|
|
246
247
|
// Later than every live `at`, also within one millisecond or when the clock moves back, so that
|
|
247
248
|
// `at` follows creation order and `collect` deletes the versions live before this one.
|
|
248
249
|
const at = newest === null ? Date.now() : Math.max(Date.now(), newest.at + 1);
|
|
249
250
|
await ctx.db.patch("versions", version._id, { state: { kind: "live", at } });
|
|
250
251
|
await ctx.scheduler.runAfter(0, internal.lib.collect, { step: { kind: "files" } });
|
|
251
|
-
return
|
|
252
|
+
return "marked";
|
|
252
253
|
},
|
|
253
254
|
});
|
|
254
255
|
/**
|
|
@@ -337,7 +338,7 @@ export const collect = internalMutation({
|
|
|
337
338
|
await ctx.db.delete("entries", entry._id);
|
|
338
339
|
if (entries.length === budget) {
|
|
339
340
|
// The version may have more entries: the next call reads it again. Until its row goes,
|
|
340
|
-
// it is `deleting`, so that no
|
|
341
|
+
// it is `deleting`, so that no mark makes it live between the pages.
|
|
341
342
|
if (state.kind !== "deleting") {
|
|
342
343
|
await ctx.db.patch("versions", version._id, { state: { kind: "deleting" } });
|
|
343
344
|
}
|
|
@@ -365,108 +366,8 @@ function advance(cursor, document) {
|
|
|
365
366
|
? { at: cursor.at, seen: [...cursor.seen, document._id] }
|
|
366
367
|
: { at: document._creationTime, seen: [document._id] };
|
|
367
368
|
}
|
|
368
|
-
const routeHeaders = v.record(v.string(), v.string());
|
|
369
|
-
/**
|
|
370
|
-
* Runs Cloudflare's asset handler for one request against one version. `state` is the kind of the
|
|
371
|
-
* version's state, or `null` when the version does not exist. `asset` is `null` when the version is
|
|
372
|
-
* uploading, being deleted, or does not exist, or when no asset answers.
|
|
373
|
-
*
|
|
374
|
-
* `hasUserWorker` is Cloudflare's `has_user_worker`: whether the app has code that answers a miss.
|
|
375
|
-
* With it, Cloudflare's router asks `canFetch` first, which keeps `not_found_handling` for
|
|
376
|
-
* navigations only, and the app answers the other misses. Without it, every request goes to
|
|
377
|
-
* `handleRequest`, so `not_found_handling` applies to all of them, and an asset always answers.
|
|
378
|
-
*/
|
|
379
|
-
export const route = query({
|
|
380
|
-
args: {
|
|
381
|
-
versionId: v.string(),
|
|
382
|
-
method: v.string(),
|
|
383
|
-
url: v.string(),
|
|
384
|
-
headers: routeHeaders,
|
|
385
|
-
hasUserWorker: v.boolean(),
|
|
386
|
-
},
|
|
387
|
-
returns: v.object({
|
|
388
|
-
state: v.union(v.literal("uploading"), v.literal("ready"), v.literal("live"), v.literal("deleting"), v.null()),
|
|
389
|
-
asset: v.union(v.null(), v.object({
|
|
390
|
-
status: v.number(),
|
|
391
|
-
headers: v.array(v.object({ name: v.string(), value: v.string() })),
|
|
392
|
-
/** The storage URL of the body, when the response has one. */
|
|
393
|
-
bodyUrl: v.union(v.string(), v.null()),
|
|
394
|
-
})),
|
|
395
|
-
}),
|
|
396
|
-
handler: async (ctx, { versionId, method, url, headers, hasUserWorker }) => {
|
|
397
|
-
const version = await getVersion(ctx, versionId);
|
|
398
|
-
if (version === null)
|
|
399
|
-
return { state: null, asset: null };
|
|
400
|
-
const state = version.state.kind;
|
|
401
|
-
if (state === "uploading" || state === "deleting") {
|
|
402
|
-
return { state, asset: null };
|
|
403
|
-
}
|
|
404
|
-
const configuration = normalizeConfiguration({
|
|
405
|
-
...AssetConfigSchema.parse(JSON.parse(version.config)),
|
|
406
|
-
compatibility_date: COMPATIBILITY_DATE,
|
|
407
|
-
});
|
|
408
|
-
const request = new Request(url, { method, headers });
|
|
409
|
-
const env = { JAEGER: mockJaegerBinding() };
|
|
410
|
-
// `exists` returns an ETag; `getByETag` gets the entry back for that ETag.
|
|
411
|
-
const found = new Map();
|
|
412
|
-
const exists = async (pathname) => {
|
|
413
|
-
const entry = await getEntry(ctx, versionId, pathname);
|
|
414
|
-
if (entry === null)
|
|
415
|
-
return null;
|
|
416
|
-
const eTag = entry.sha256 + (await shortHash(entry.contentType ?? ""));
|
|
417
|
-
found.set(eTag, entry);
|
|
418
|
-
return eTag;
|
|
419
|
-
};
|
|
420
|
-
let bodyEntry;
|
|
421
|
-
const getByETag = async (eTag) => {
|
|
422
|
-
bodyEntry = found.get(eTag);
|
|
423
|
-
if (bodyEntry === undefined)
|
|
424
|
-
throw new Error(`No entry has the ETag ${eTag}.`);
|
|
425
|
-
return {
|
|
426
|
-
// `serveSite` replaces this placeholder with the stored file.
|
|
427
|
-
readableStream: new ReadableStream(),
|
|
428
|
-
contentType: bodyEntry.contentType,
|
|
429
|
-
cacheStatus: "MISS",
|
|
430
|
-
};
|
|
431
|
-
};
|
|
432
|
-
if (hasUserWorker && !(await canFetch(request, env, configuration, exists))) {
|
|
433
|
-
return { state, asset: null };
|
|
434
|
-
}
|
|
435
|
-
const response = await handleRequest(request, env, configuration, exists, getByETag, new Analytics());
|
|
436
|
-
// It describes Cloudflare's cache, which does not exist here.
|
|
437
|
-
response.headers.delete("CF-Cache-Status");
|
|
438
|
-
// The deployment's Cloudflare front caches 404 answers on static paths.
|
|
439
|
-
if (response.status === 404)
|
|
440
|
-
response.headers.set("Cache-Control", "no-store");
|
|
441
|
-
let bodyUrl = null;
|
|
442
|
-
if (response.body !== null && bodyEntry !== undefined) {
|
|
443
|
-
bodyUrl = await ctx.storage.getUrl(bodyEntry.storageId);
|
|
444
|
-
// The file is gone from storage. As in `serveSite` when storage answers 404, the answer must
|
|
445
|
-
// not stay in a cache.
|
|
446
|
-
if (bodyUrl === null) {
|
|
447
|
-
return {
|
|
448
|
-
state,
|
|
449
|
-
asset: { status: 404, headers: [{ name: "cache-control", value: "no-store" }], bodyUrl },
|
|
450
|
-
};
|
|
451
|
-
}
|
|
452
|
-
}
|
|
453
|
-
return {
|
|
454
|
-
state,
|
|
455
|
-
asset: {
|
|
456
|
-
status: response.status,
|
|
457
|
-
headers: [...response.headers].map(([name, value]) => ({ name, value })),
|
|
458
|
-
bodyUrl,
|
|
459
|
-
},
|
|
460
|
-
};
|
|
461
|
-
},
|
|
462
|
-
});
|
|
463
369
|
/** Convex's `_storage` table holds the sha256 in base64; entries hold it in hex. */
|
|
464
370
|
function base64ToHex(base64) {
|
|
465
371
|
return Array.from(atob(base64), (char) => char.charCodeAt(0).toString(16).padStart(2, "0")).join("");
|
|
466
372
|
}
|
|
467
|
-
/** The first 8 hex digits of the SHA-256 of `text`. */
|
|
468
|
-
async function shortHash(text) {
|
|
469
|
-
const digest = await crypto.subtle.digest("SHA-256", new TextEncoder().encode(text));
|
|
470
|
-
return Array.from(new Uint8Array(digest, 0, 4), (byte) => byte.toString(16).padStart(2, "0")).join("");
|
|
471
|
-
}
|
|
472
373
|
//# sourceMappingURL=lib.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/component/lib.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/component/lib.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ declare const _default: import("convex/server").SchemaDefinition<{
|
|
|
16
16
|
}, {
|
|
17
17
|
versionId: import("convex/values").VString<string, "required">;
|
|
18
18
|
/**
|
|
19
|
-
* `live` carries the time the
|
|
19
|
+
* `live` carries the time the version's pushed code marked it live, at its deploy's mark, so a
|
|
20
20
|
* version cannot have a live time without being live.
|
|
21
21
|
*/
|
|
22
22
|
state: import("convex/values").VUnion<{
|
|
@@ -74,7 +74,7 @@ declare const _default: import("convex/server").SchemaDefinition<{
|
|
|
74
74
|
sha256: import("convex/values").VString<string, "required">;
|
|
75
75
|
/**
|
|
76
76
|
* The type belongs to the path, not to the bytes: paths with identical bytes share one stored
|
|
77
|
-
* file but keep their own types, and
|
|
77
|
+
* file but keep their own types, and the site's manifest carries each type. Absent when
|
|
78
78
|
* the `mime` package has no type for the file name.
|
|
79
79
|
*/
|
|
80
80
|
contentType: import("convex/values").VString<string | undefined, "optional">;
|
package/dist/component/schema.js
CHANGED
|
@@ -5,7 +5,7 @@ export default defineSchema({
|
|
|
5
5
|
versions: defineTable({
|
|
6
6
|
versionId: v.string(),
|
|
7
7
|
/**
|
|
8
|
-
* `live` carries the time the
|
|
8
|
+
* `live` carries the time the version's pushed code marked it live, at its deploy's mark, so a
|
|
9
9
|
* version cannot have a live time without being live.
|
|
10
10
|
*/
|
|
11
11
|
state: v.union(v.object({ kind: v.literal("uploading") }), v.object({ kind: v.literal("ready") }), v.object({ kind: v.literal("live"), at: v.number() }),
|
|
@@ -32,7 +32,7 @@ export default defineSchema({
|
|
|
32
32
|
sha256: v.string(),
|
|
33
33
|
/**
|
|
34
34
|
* The type belongs to the path, not to the bytes: paths with identical bytes share one stored
|
|
35
|
-
* file but keep their own types, and
|
|
35
|
+
* file but keep their own types, and the site's manifest carries each type. Absent when
|
|
36
36
|
* the `mime` package has no type for the file name.
|
|
37
37
|
*/
|
|
38
38
|
contentType: v.optional(v.string()),
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare class AssetsManifest {
|
|
2
|
+
private data;
|
|
3
|
+
constructor(data: ArrayBuffer);
|
|
4
|
+
get(pathname: string): Promise<string | null>;
|
|
5
|
+
}
|
|
6
|
+
export declare const hashPath: (path: string) => Promise<Uint8Array<ArrayBuffer>>;
|
|
7
|
+
/**
|
|
8
|
+
* Search for an entry with the given hash path.
|
|
9
|
+
*
|
|
10
|
+
* @param manifest the manifest bytes
|
|
11
|
+
* @param pathHash the path hash to find in the manifest
|
|
12
|
+
* @returns The content hash when the entry is found and `false` otherwise
|
|
13
|
+
*/
|
|
14
|
+
export declare const binarySearch: (manifest: Uint8Array, pathHash: Uint8Array) => Uint8Array | false;
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { CONTENT_HASH_OFFSET, CONTENT_HASH_SIZE, ENTRY_SIZE, HEADER_SIZE, PATH_HASH_OFFSET, PATH_HASH_SIZE, } from "../../utils/constants.js";
|
|
2
|
+
export class AssetsManifest {
|
|
3
|
+
data;
|
|
4
|
+
constructor(data) {
|
|
5
|
+
this.data = new Uint8Array(data);
|
|
6
|
+
}
|
|
7
|
+
async get(pathname) {
|
|
8
|
+
const pathHash = await hashPath(pathname);
|
|
9
|
+
const entry = binarySearch(this.data, pathHash);
|
|
10
|
+
return entry ? Uint8ToHexString(entry) : null;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export const hashPath = async (path) => {
|
|
14
|
+
const encoder = new TextEncoder();
|
|
15
|
+
const data = encoder.encode(path);
|
|
16
|
+
const hashBuffer = await crypto.subtle.digest("SHA-256", data.buffer);
|
|
17
|
+
return new Uint8Array(hashBuffer, 0, PATH_HASH_SIZE);
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Search for an entry with the given hash path.
|
|
21
|
+
*
|
|
22
|
+
* @param manifest the manifest bytes
|
|
23
|
+
* @param pathHash the path hash to find in the manifest
|
|
24
|
+
* @returns The content hash when the entry is found and `false` otherwise
|
|
25
|
+
*/
|
|
26
|
+
export const binarySearch = (manifest, pathHash) => {
|
|
27
|
+
if (pathHash.byteLength !== PATH_HASH_SIZE) {
|
|
28
|
+
throw new TypeError(`Search value should have a length of ${PATH_HASH_SIZE}`);
|
|
29
|
+
}
|
|
30
|
+
const numberOfEntries = (manifest.byteLength - HEADER_SIZE) / ENTRY_SIZE;
|
|
31
|
+
if (numberOfEntries === 0) {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
let lowIndex = 0;
|
|
35
|
+
let highIndex = numberOfEntries - 1;
|
|
36
|
+
while (lowIndex <= highIndex) {
|
|
37
|
+
const middleIndex = (lowIndex + highIndex) >> 1;
|
|
38
|
+
const cmp = comparePathHashWithEntry(pathHash, manifest, middleIndex);
|
|
39
|
+
if (cmp < 0) {
|
|
40
|
+
highIndex = middleIndex - 1;
|
|
41
|
+
continue;
|
|
42
|
+
}
|
|
43
|
+
if (cmp > 0) {
|
|
44
|
+
lowIndex = middleIndex + 1;
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
return new Uint8Array(manifest.buffer, HEADER_SIZE + middleIndex * ENTRY_SIZE + CONTENT_HASH_OFFSET, CONTENT_HASH_SIZE);
|
|
48
|
+
}
|
|
49
|
+
return false;
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Compares a search value with a path hash in the manifest
|
|
53
|
+
*
|
|
54
|
+
* @param searchValue a `Uint8Array` of size `PATH_HASH_SIZE`
|
|
55
|
+
* @param manifest the manifest bytes
|
|
56
|
+
* @param entryIndex the index in the manifest of the entry to compare
|
|
57
|
+
*/
|
|
58
|
+
function comparePathHashWithEntry(searchValue, manifest, entryIndex) {
|
|
59
|
+
let pathHashOffset = HEADER_SIZE + entryIndex * ENTRY_SIZE + PATH_HASH_OFFSET;
|
|
60
|
+
for (let offset = 0; offset < PATH_HASH_SIZE; offset++, pathHashOffset++) {
|
|
61
|
+
const s = searchValue[offset];
|
|
62
|
+
const e = manifest[pathHashOffset];
|
|
63
|
+
if (s === undefined || e === undefined) {
|
|
64
|
+
throw new TypeError(`Unexpected undefined value at offset ${offset} during path hash comparison`);
|
|
65
|
+
}
|
|
66
|
+
if (s < e) {
|
|
67
|
+
return -1;
|
|
68
|
+
}
|
|
69
|
+
if (s > e) {
|
|
70
|
+
return 1;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return 0;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Converts an Uint8Array to an hex string
|
|
77
|
+
*
|
|
78
|
+
* @param array The content hash
|
|
79
|
+
* @returns padded hex string
|
|
80
|
+
*/
|
|
81
|
+
const Uint8ToHexString = (array) => {
|
|
82
|
+
return [...array].map((b) => b.toString(16).padStart(2, "0")).join("");
|
|
83
|
+
};
|
|
84
|
+
//# sourceMappingURL=assets-manifest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assets-manifest.js","sourceRoot":"","sources":["../../../../../../src/workers-sdk/packages/workers-shared/asset-worker/src/assets-manifest.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@samebase/convex-hosting",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.15.0",
|
|
4
4
|
"description": "Serves a web app from its own Convex deployment: the files of a build, and the pages the app renders.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"component",
|
|
@@ -45,15 +45,16 @@
|
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
47
|
"ignore": "7.0.12",
|
|
48
|
-
"mime": "4.1.
|
|
49
|
-
"zod": "4.6.
|
|
48
|
+
"mime": "4.1.1",
|
|
49
|
+
"zod": "4.6.6"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
|
-
"@types/node": "24.19.
|
|
52
|
+
"@types/node": "24.19.2",
|
|
53
53
|
"convex": "1.46.0",
|
|
54
|
-
"convex-test": "0.0.
|
|
54
|
+
"convex-test": "0.0.61",
|
|
55
|
+
"fast-check": "4.10.2",
|
|
55
56
|
"typescript": "7.0.2",
|
|
56
|
-
"undici": "
|
|
57
|
+
"undici": "8.11.2",
|
|
57
58
|
"vite-plus": "1.1.0"
|
|
58
59
|
},
|
|
59
60
|
"peerDependencies": {
|