@samebase/convex-hosting 0.3.1 → 0.4.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 +10 -128
- package/README.md +136 -398
- package/dist/cli/convex.d.ts +63 -0
- package/dist/cli/convex.js +108 -0
- package/dist/cli/convex.js.map +1 -0
- package/dist/cli/files.d.ts +18 -0
- package/dist/cli/files.js +106 -0
- package/dist/cli/files.js.map +1 -0
- package/dist/cli/index.d.ts +1 -11
- package/dist/cli/index.js +3 -58
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/main.d.ts +5 -0
- package/dist/cli/main.js +346 -0
- package/dist/cli/main.js.map +1 -0
- package/dist/client/index.d.ts +8 -115
- package/dist/client/index.js +65 -254
- package/dist/client/index.js.map +1 -1
- package/dist/client/types.d.ts +5 -0
- package/dist/client/version-module.d.ts +6 -0
- package/dist/component/_generated/api.d.ts +0 -5
- package/dist/component/_generated/api.js.map +1 -1
- package/dist/component/_generated/component.d.ts +20 -18
- package/dist/component/_generated/dataModel.d.ts +0 -1
- package/dist/component/_generated/server.d.ts +12 -1
- package/dist/component/_generated/server.js +2 -0
- package/dist/component/_generated/server.js.map +1 -1
- package/dist/component/convex.config.d.ts +0 -1
- package/dist/component/lib.d.ts +175 -156
- package/dist/component/lib.js +396 -710
- package/dist/component/lib.js.map +1 -1
- package/dist/component/schema.d.ts +76 -72
- package/dist/component/schema.js +35 -59
- package/dist/component/schema.js.map +1 -1
- package/dist/workers-shared/asset-worker/src/analytics.d.ts +39 -0
- package/dist/workers-shared/asset-worker/src/analytics.js +86 -0
- package/dist/workers-shared/asset-worker/src/analytics.js.map +1 -0
- package/dist/workers-shared/asset-worker/src/compatibility-flags.d.ts +19 -0
- package/dist/workers-shared/asset-worker/src/compatibility-flags.js +29 -0
- package/dist/workers-shared/asset-worker/src/compatibility-flags.js.map +1 -0
- package/dist/workers-shared/asset-worker/src/configuration.d.ts +3 -0
- package/dist/workers-shared/asset-worker/src/configuration.js +30 -0
- package/dist/workers-shared/asset-worker/src/configuration.js.map +1 -0
- package/dist/workers-shared/asset-worker/src/constants.d.ts +1 -0
- package/dist/workers-shared/asset-worker/src/constants.js +3 -0
- package/dist/workers-shared/asset-worker/src/constants.js.map +1 -0
- package/dist/workers-shared/asset-worker/src/handler.d.ts +28 -0
- package/dist/workers-shared/asset-worker/src/handler.js +717 -0
- package/dist/workers-shared/asset-worker/src/handler.js.map +1 -0
- package/dist/workers-shared/asset-worker/src/types.d.ts +13 -0
- package/dist/workers-shared/asset-worker/src/types.js +2 -0
- package/dist/workers-shared/asset-worker/src/types.js.map +1 -0
- package/dist/workers-shared/asset-worker/src/utils/base-path.d.ts +29 -0
- package/dist/workers-shared/asset-worker/src/utils/base-path.js +56 -0
- package/dist/workers-shared/asset-worker/src/utils/base-path.js.map +1 -0
- package/dist/workers-shared/asset-worker/src/utils/headers.d.ts +11 -0
- package/dist/workers-shared/asset-worker/src/utils/headers.js +77 -0
- package/dist/workers-shared/asset-worker/src/utils/headers.js.map +1 -0
- package/dist/workers-shared/asset-worker/src/utils/rules-engine.d.ts +23 -0
- package/dist/workers-shared/asset-worker/src/utils/rules-engine.js +133 -0
- package/dist/workers-shared/asset-worker/src/utils/rules-engine.js.map +1 -0
- package/dist/workers-shared/asset-worker/src/worker.d.ts +14 -0
- package/dist/workers-shared/asset-worker/src/worker.js +12 -0
- package/dist/workers-shared/asset-worker/src/worker.js.map +1 -0
- package/dist/workers-shared/utils/base-path.d.ts +32 -0
- package/dist/workers-shared/utils/base-path.js +94 -0
- package/dist/workers-shared/utils/base-path.js.map +1 -0
- package/dist/workers-shared/utils/configuration/constants.d.ts +15 -0
- package/dist/workers-shared/utils/configuration/constants.js +16 -0
- package/dist/workers-shared/utils/configuration/constants.js.map +1 -0
- package/dist/workers-shared/utils/configuration/constructConfiguration.d.ts +12 -0
- package/dist/workers-shared/utils/configuration/constructConfiguration.js +103 -0
- package/dist/workers-shared/utils/configuration/constructConfiguration.js.map +1 -0
- package/dist/workers-shared/utils/configuration/parseHeaders.d.ts +5 -0
- package/dist/workers-shared/utils/configuration/parseHeaders.js +181 -0
- package/dist/workers-shared/utils/configuration/parseHeaders.js.map +1 -0
- package/dist/workers-shared/utils/configuration/parseRedirects.d.ts +8 -0
- package/dist/workers-shared/utils/configuration/parseRedirects.js +129 -0
- package/dist/workers-shared/utils/configuration/parseRedirects.js.map +1 -0
- package/dist/workers-shared/utils/configuration/parseStaticRouting.d.ts +2 -0
- package/dist/workers-shared/utils/configuration/parseStaticRouting.js +94 -0
- package/dist/workers-shared/utils/configuration/parseStaticRouting.js.map +1 -0
- package/dist/workers-shared/utils/configuration/types.d.ts +38 -0
- package/dist/workers-shared/utils/configuration/types.js +2 -0
- package/dist/workers-shared/utils/configuration/types.js.map +1 -0
- package/dist/workers-shared/utils/configuration/validateURL.d.ts +3 -0
- package/dist/workers-shared/utils/configuration/validateURL.js +56 -0
- package/dist/workers-shared/utils/configuration/validateURL.js.map +1 -0
- package/dist/workers-shared/utils/constants.d.ts +28 -0
- package/dist/workers-shared/utils/constants.js +34 -0
- package/dist/workers-shared/utils/constants.js.map +1 -0
- package/dist/workers-shared/utils/helpers.d.ts +22 -0
- package/dist/workers-shared/utils/helpers.js +73 -0
- package/dist/workers-shared/utils/helpers.js.map +1 -0
- package/dist/workers-shared/utils/responses.d.ts +43 -0
- package/dist/workers-shared/utils/responses.js +125 -0
- package/dist/workers-shared/utils/responses.js.map +1 -0
- package/dist/workers-shared/utils/tracing.d.ts +3 -0
- package/dist/workers-shared/utils/tracing.js +29 -0
- package/dist/workers-shared/utils/tracing.js.map +1 -0
- package/dist/workers-shared/utils/types.d.ts +131 -0
- package/dist/workers-shared/utils/types.js +72 -0
- package/dist/workers-shared/utils/types.js.map +1 -0
- package/package.json +16 -32
- package/INTEGRATION.md +0 -399
- package/dist/cli/args.d.ts +0 -28
- package/dist/cli/args.d.ts.map +0 -1
- package/dist/cli/args.js +0 -148
- package/dist/cli/args.js.map +0 -1
- package/dist/cli/argumentChunks.d.ts +0 -3
- package/dist/cli/argumentChunks.d.ts.map +0 -1
- package/dist/cli/argumentChunks.js +0 -29
- package/dist/cli/argumentChunks.js.map +0 -1
- package/dist/cli/collectFiles.d.ts +0 -10
- package/dist/cli/collectFiles.d.ts.map +0 -1
- package/dist/cli/collectFiles.js +0 -53
- package/dist/cli/collectFiles.js.map +0 -1
- package/dist/cli/commands.d.ts +0 -8
- package/dist/cli/commands.d.ts.map +0 -1
- package/dist/cli/commands.js +0 -56
- package/dist/cli/commands.js.map +0 -1
- package/dist/cli/componentName.d.ts +0 -32
- package/dist/cli/componentName.d.ts.map +0 -1
- package/dist/cli/componentName.js +0 -43
- package/dist/cli/componentName.js.map +0 -1
- package/dist/cli/deploy.d.ts +0 -16
- package/dist/cli/deploy.d.ts.map +0 -1
- package/dist/cli/deploy.js +0 -283
- package/dist/cli/deploy.js.map +0 -1
- package/dist/cli/deployEnvironment.d.ts +0 -10
- package/dist/cli/deployEnvironment.d.ts.map +0 -1
- package/dist/cli/deployEnvironment.js +0 -12
- package/dist/cli/deployEnvironment.js.map +0 -1
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/upload.d.ts +0 -22
- package/dist/cli/upload.d.ts.map +0 -1
- package/dist/cli/upload.js +0 -630
- package/dist/cli/upload.js.map +0 -1
- package/dist/client/_generated/_ignore.d.ts +0 -1
- package/dist/client/_generated/_ignore.d.ts.map +0 -1
- package/dist/client/_generated/_ignore.js +0 -3
- package/dist/client/_generated/_ignore.js.map +0 -1
- package/dist/client/index.d.ts.map +0 -1
- package/dist/component/_generated/api.d.ts.map +0 -1
- package/dist/component/_generated/component.d.ts.map +0 -1
- package/dist/component/_generated/dataModel.d.ts.map +0 -1
- package/dist/component/_generated/server.d.ts.map +0 -1
- package/dist/component/convex.config.d.ts.map +0 -1
- package/dist/component/http.d.ts +0 -4
- package/dist/component/http.d.ts.map +0 -1
- package/dist/component/http.js +0 -125
- package/dist/component/http.js.map +0 -1
- package/dist/component/lib.d.ts.map +0 -1
- package/dist/component/schema.d.ts.map +0 -1
- package/dist/component/serving.d.ts +0 -17
- package/dist/component/serving.d.ts.map +0 -1
- package/dist/component/serving.js +0 -150
- package/dist/component/serving.js.map +0 -1
- package/dist/react/index.d.ts +0 -59
- package/dist/react/index.d.ts.map +0 -1
- package/dist/react/index.js +0 -137
- package/dist/react/index.js.map +0 -1
- package/src/cli/args.test.ts +0 -79
- package/src/cli/args.ts +0 -153
- package/src/cli/argumentChunks.test.ts +0 -27
- package/src/cli/argumentChunks.ts +0 -40
- package/src/cli/collectFiles.test.ts +0 -26
- package/src/cli/collectFiles.ts +0 -59
- package/src/cli/commands.ts +0 -68
- package/src/cli/componentName.test.ts +0 -41
- package/src/cli/componentName.ts +0 -46
- package/src/cli/deploy.ts +0 -336
- package/src/cli/deployEnvironment.test.ts +0 -27
- package/src/cli/deployEnvironment.ts +0 -17
- package/src/cli/index.ts +0 -65
- package/src/cli/upload.ts +0 -837
- package/src/client/_generated/_ignore.ts +0 -1
- package/src/client/index.test.ts +0 -510
- package/src/client/index.ts +0 -355
- package/src/client/setup.test.ts +0 -22
- package/src/component/_generated/api.ts +0 -54
- package/src/component/_generated/component.ts +0 -55
- package/src/component/_generated/dataModel.ts +0 -60
- package/src/component/_generated/server.ts +0 -156
- package/src/component/convex.config.ts +0 -3
- package/src/component/http.test.ts +0 -223
- package/src/component/http.ts +0 -144
- package/src/component/lib.test.ts +0 -1007
- package/src/component/lib.ts +0 -862
- package/src/component/schema.ts +0 -75
- package/src/component/serving.ts +0 -158
- package/src/component/setup.test.ts +0 -11
- package/src/react/index.tsx +0 -197
- package/src/test.ts +0 -23
package/dist/component/lib.d.ts
CHANGED
|
@@ -1,164 +1,183 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
},
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
deploymentId: string;
|
|
41
|
-
_id: import("convex/values").GenericId<"staticAssets">;
|
|
42
|
-
_creationTime: number;
|
|
43
|
-
contentType: string;
|
|
44
|
-
} | {
|
|
45
|
-
path: string;
|
|
46
|
-
deploymentId: string;
|
|
47
|
-
storageId: string & {
|
|
48
|
-
__tableName: "_storage";
|
|
49
|
-
};
|
|
50
|
-
blobId?: string | undefined;
|
|
51
|
-
_creationTime: number;
|
|
52
|
-
contentType: string;
|
|
53
|
-
_id: import("convex/values").GenericId<"retiredAssets">;
|
|
54
|
-
expiresAt: number;
|
|
55
|
-
} | null>>;
|
|
56
|
-
export declare const listAssets: import("convex/server").RegisteredQuery<"internal", {
|
|
57
|
-
limit?: number | undefined;
|
|
58
|
-
}, Promise<{
|
|
59
|
-
_id: import("convex/values").GenericId<"staticAssets">;
|
|
60
|
-
_creationTime: number;
|
|
61
|
-
storageId?: import("convex/values").GenericId<"_storage"> | undefined;
|
|
62
|
-
blobId?: string | undefined;
|
|
63
|
-
path: string;
|
|
64
|
-
deploymentId: string;
|
|
65
|
-
contentType: string;
|
|
66
|
-
}[]>>;
|
|
67
|
-
export declare const generateUploadUrl: import("convex/server").RegisteredMutation<"internal", {}, Promise<string>>;
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { Id } from "./_generated/dataModel.js";
|
|
3
|
+
/**
|
|
4
|
+
* The file that `upload` stores and `createVersion` reads: Cloudflare's `AssetConfig` for the
|
|
5
|
+
* version, without the fields that are package code.
|
|
6
|
+
*/
|
|
7
|
+
declare const configSchema: z.ZodObject<{
|
|
8
|
+
redirects: z.ZodOptional<z.ZodObject<{
|
|
9
|
+
version: z.ZodLiteral<1>;
|
|
10
|
+
staticRules: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
11
|
+
status: z.ZodNumber;
|
|
12
|
+
to: z.ZodString;
|
|
13
|
+
lineNumber: z.ZodNumber;
|
|
14
|
+
}, z.core.$strip>>;
|
|
15
|
+
rules: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
16
|
+
status: z.ZodNumber;
|
|
17
|
+
to: z.ZodString;
|
|
18
|
+
}, z.core.$strip>>;
|
|
19
|
+
}, z.core.$strip>>;
|
|
20
|
+
headers: z.ZodOptional<z.ZodObject<{
|
|
21
|
+
version: z.ZodLiteral<2>;
|
|
22
|
+
rules: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
23
|
+
set: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
24
|
+
unset: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
25
|
+
}, z.core.$strip>>;
|
|
26
|
+
}, z.core.$strip>>;
|
|
27
|
+
html_handling: z.ZodOptional<z.ZodEnum<{
|
|
28
|
+
"auto-trailing-slash": "auto-trailing-slash";
|
|
29
|
+
"force-trailing-slash": "force-trailing-slash";
|
|
30
|
+
"drop-trailing-slash": "drop-trailing-slash";
|
|
31
|
+
none: "none";
|
|
32
|
+
}>>;
|
|
33
|
+
not_found_handling: z.ZodOptional<z.ZodEnum<{
|
|
34
|
+
none: "none";
|
|
35
|
+
"single-page-application": "single-page-application";
|
|
36
|
+
"404-page": "404-page";
|
|
37
|
+
}>>;
|
|
38
|
+
}, z.core.$strip>;
|
|
39
|
+
export type Config = z.input<typeof configSchema>;
|
|
68
40
|
export declare const generateUploadUrls: import("convex/server").RegisteredMutation<"internal", {
|
|
69
41
|
count: number;
|
|
70
42
|
}, Promise<string[]>>;
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
}>>;
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
}>>;
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
deleted: number;
|
|
95
|
-
alreadyMissing: number;
|
|
96
|
-
stillReferenced: number;
|
|
97
|
-
}>>;
|
|
98
|
-
export declare const stageAssets: import("convex/server").RegisteredMutation<"internal", {
|
|
99
|
-
assets: {
|
|
100
|
-
storageId?: import("convex/values").GenericId<"_storage"> | undefined;
|
|
101
|
-
blobId?: string | undefined;
|
|
102
|
-
path: string;
|
|
103
|
-
deploymentId: string;
|
|
104
|
-
contentType: string;
|
|
105
|
-
}[];
|
|
106
|
-
}, Promise<{
|
|
107
|
-
staged: number;
|
|
108
|
-
}>>;
|
|
109
|
-
export declare const discardStagedDeployment: import("convex/server").RegisteredMutation<"internal", {
|
|
110
|
-
deploymentId: string;
|
|
111
|
-
}, Promise<{
|
|
112
|
-
discarded: number;
|
|
113
|
-
}>>;
|
|
114
|
-
export declare const cleanupAbandonedStaging: import("convex/server").RegisteredMutation<"internal", {
|
|
115
|
-
limit?: number | undefined;
|
|
116
|
-
before?: number | undefined;
|
|
43
|
+
/**
|
|
44
|
+
* Starts a version: reads its config from storage and creates the version in state `uploading`.
|
|
45
|
+
* Idempotent for the same id and config.
|
|
46
|
+
*/
|
|
47
|
+
export declare const createVersion: import("convex/server").RegisteredAction<"internal", {
|
|
48
|
+
versionId: string;
|
|
49
|
+
configId: import("convex/values").GenericId<"_storage">;
|
|
50
|
+
}, Promise<null>>;
|
|
51
|
+
/** The write of `createVersion`: creates the version, unless it exists with the same config. */
|
|
52
|
+
export declare const insertVersion: import("convex/server").RegisteredMutation<"internal", {
|
|
53
|
+
versionId: string;
|
|
54
|
+
config: string;
|
|
55
|
+
}, Promise<null>>;
|
|
56
|
+
/**
|
|
57
|
+
* The stored file of each hash that an entry of any version already has, in the order of
|
|
58
|
+
* `sha256s`.
|
|
59
|
+
*
|
|
60
|
+
* Each hash reads one index range (`by_sha256`) of at most one document. The CLI sends at most
|
|
61
|
+
* 8,000 characters of arguments, which hold at most 119 hashes of 67 characters: 119 index ranges
|
|
62
|
+
* of 4,096 and 119 documents read of 32,000.
|
|
63
|
+
*/
|
|
64
|
+
export declare const knownFiles: import("convex/server").RegisteredQuery<"internal", {
|
|
65
|
+
sha256s: string[];
|
|
117
66
|
}, Promise<{
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
deploymentId: string;
|
|
136
|
-
contentType: string;
|
|
137
|
-
}, Promise<string | null>>;
|
|
138
|
-
export declare const recordAssets: import("convex/server").RegisteredMutation<"internal", {
|
|
139
|
-
assets: {
|
|
140
|
-
storageId?: import("convex/values").GenericId<"_storage"> | undefined;
|
|
141
|
-
blobId?: string | undefined;
|
|
67
|
+
sha256: string;
|
|
68
|
+
storageId: Id<"_storage">;
|
|
69
|
+
}[]>>;
|
|
70
|
+
/**
|
|
71
|
+
* Inserts complete entries into an `uploading` version, after checking that each stored file has
|
|
72
|
+
* the entry's sha256. An entry that exists with the same sha256 is skipped, so a retried batch
|
|
73
|
+
* passes; one that exists with another sha256 is refused.
|
|
74
|
+
*
|
|
75
|
+
* Each entry reads one index range (`by_version_path`) of at most one document and one `_storage`
|
|
76
|
+
* document, and writes at most one document. The CLI sends at most 8,000 characters of arguments,
|
|
77
|
+
* and an entry takes at least 135 of them (its sha256 and storage id alone are 96), so a call has
|
|
78
|
+
* at most 60 entries: 60 index ranges of 4,096, at most 121 documents read of 32,000 with the
|
|
79
|
+
* version, and 60 writes of 16,000.
|
|
80
|
+
*/
|
|
81
|
+
export declare const recordFiles: import("convex/server").RegisteredMutation<"internal", {
|
|
82
|
+
entries: {
|
|
83
|
+
contentType?: string | undefined;
|
|
142
84
|
path: string;
|
|
143
|
-
|
|
144
|
-
|
|
85
|
+
sha256: string;
|
|
86
|
+
storageId: import("convex/values").GenericId<"_storage">;
|
|
145
87
|
}[];
|
|
88
|
+
versionId: string;
|
|
89
|
+
}, Promise<null>>;
|
|
90
|
+
/**
|
|
91
|
+
* Marks an `uploading` version `ready`. The CLI calls it after every `recordFiles` batch succeeded.
|
|
92
|
+
* A version that is already `ready` or `live` stays as it is.
|
|
93
|
+
*/
|
|
94
|
+
export declare const finishVersion: import("convex/server").RegisteredMutation<"internal", {
|
|
95
|
+
versionId: string;
|
|
96
|
+
}, Promise<null>>;
|
|
97
|
+
/**
|
|
98
|
+
* Marks a `ready` version `live` and schedules `collect`. `serveAsset` calls it at the first
|
|
99
|
+
* request that the version's pushed code serves, with the `at` of the newest live version that
|
|
100
|
+
* `route` saw for that request. A mark succeeds only when the state it was based on is still the
|
|
101
|
+
* state: when the newest live version changed between the request's lookup and this mark, it does
|
|
102
|
+
* nothing, so a request whose code was replaced between its lookup and its mark cannot make its
|
|
103
|
+
* version newest. A version that is already live stays as it is, so concurrent first requests are
|
|
104
|
+
* fine.
|
|
105
|
+
*/
|
|
106
|
+
export declare const markLive: import("convex/server").RegisteredMutation<"public", {
|
|
107
|
+
versionId: string;
|
|
108
|
+
expectedNewestLiveAt: number | null;
|
|
109
|
+
}, Promise<null>>;
|
|
110
|
+
/**
|
|
111
|
+
* One chain of calls, one batch per call, each scheduling the next with `runAfter(0)` while work
|
|
112
|
+
* remains. First the `_storage` files that no entry references and that are older than
|
|
113
|
+
* `GARBAGE_AGE_MS`; then the versions, a page of `VERSION_PAGE` at a time in creation order: the
|
|
114
|
+
* live versions older than the current live one, whose code is gone because the current one has
|
|
115
|
+
* served since, and the versions that are not live and older than `GARBAGE_AGE_MS`, with their
|
|
116
|
+
* entries.
|
|
117
|
+
*
|
|
118
|
+
* A stored file is deleted when no entry references it, it is a day old, and it was already
|
|
119
|
+
* unreferenced when the chain started: the files that this chain's version deletion frees wait for
|
|
120
|
+
* a later chain, at a later switch. An upload in progress may have taken a stored file from
|
|
121
|
+
* `knownFiles` and not recorded its entry yet; it therefore fails only if two switches happen
|
|
122
|
+
* during that one upload, and a retry works.
|
|
123
|
+
*
|
|
124
|
+
* Both steps walk `by_creation_time` with a cursor: the creation time of the last document handled
|
|
125
|
+
* and the ids already handled at that time. Convex gives every document of one transaction the
|
|
126
|
+
* same creation time, and creation times are not unique across transactions either, so a cursor of
|
|
127
|
+
* a time alone would skip the other documents at the boundary. The next call reads from that time
|
|
128
|
+
* on and skips the ids in `seen`, which hold the documents of one time, normally one; it reads
|
|
129
|
+
* that many more documents, so a page still holds a full batch of new ones when they exist, and it
|
|
130
|
+
* keeps at most a batch, because a seen document may be gone.
|
|
131
|
+
*/
|
|
132
|
+
export declare const collect: import("convex/server").RegisteredMutation<"internal", {
|
|
133
|
+
step: {
|
|
134
|
+
after?: {
|
|
135
|
+
at: number;
|
|
136
|
+
seen: import("convex/values").GenericId<"_storage">[];
|
|
137
|
+
} | undefined;
|
|
138
|
+
kind: "files";
|
|
139
|
+
} | {
|
|
140
|
+
after?: {
|
|
141
|
+
at: number;
|
|
142
|
+
seen: import("convex/values").GenericId<"versions">[];
|
|
143
|
+
} | undefined;
|
|
144
|
+
kind: "versions";
|
|
145
|
+
};
|
|
146
|
+
}, Promise<null>>;
|
|
147
|
+
/**
|
|
148
|
+
* Runs Cloudflare's asset handler for one request against one version. `state` is the kind of the
|
|
149
|
+
* version's state, or `null` when the version does not exist. `newestLiveAt` is, for a `ready`
|
|
150
|
+
* version, the `at` of the newest live version that this query saw, which `serveAsset` passes to
|
|
151
|
+
* `markLive`; otherwise `null`, and a live version's requests read nothing more. `asset` is
|
|
152
|
+
* `null` when the version is uploading, being deleted, or does not exist, or when no asset answers.
|
|
153
|
+
*/
|
|
154
|
+
export declare const route: import("convex/server").RegisteredQuery<"public", {
|
|
155
|
+
headers: Record<string, string>;
|
|
156
|
+
url: string;
|
|
157
|
+
method: string;
|
|
158
|
+
versionId: string;
|
|
146
159
|
}, Promise<{
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
160
|
+
state: null;
|
|
161
|
+
newestLiveAt: null;
|
|
162
|
+
asset: null;
|
|
163
|
+
} | {
|
|
164
|
+
state: "uploading" | "deleting";
|
|
165
|
+
newestLiveAt: null;
|
|
166
|
+
asset: null;
|
|
167
|
+
} | {
|
|
168
|
+
state: "ready" | "live";
|
|
169
|
+
newestLiveAt: number | null;
|
|
170
|
+
asset: null;
|
|
171
|
+
} | {
|
|
172
|
+
state: "ready" | "live";
|
|
173
|
+
newestLiveAt: number | null;
|
|
174
|
+
asset: {
|
|
175
|
+
status: number;
|
|
176
|
+
headers: {
|
|
177
|
+
name: string;
|
|
178
|
+
value: string;
|
|
179
|
+
}[];
|
|
180
|
+
bodyUrl: string | null;
|
|
181
|
+
};
|
|
163
182
|
}>>;
|
|
164
|
-
|
|
183
|
+
export {};
|