devflare 0.0.0 → 1.0.0-next.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/README.md +737 -1
- package/bin/devflare.js +14 -0
- package/dist/account-rvrj687w.js +397 -0
- package/dist/ai-dx4fr9jh.js +107 -0
- package/dist/bridge/client.d.ts +82 -0
- package/dist/bridge/client.d.ts.map +1 -0
- package/dist/bridge/index.d.ts +7 -0
- package/dist/bridge/index.d.ts.map +1 -0
- package/dist/bridge/miniflare.d.ts +70 -0
- package/dist/bridge/miniflare.d.ts.map +1 -0
- package/dist/bridge/protocol.d.ts +146 -0
- package/dist/bridge/protocol.d.ts.map +1 -0
- package/dist/bridge/proxy.d.ts +49 -0
- package/dist/bridge/proxy.d.ts.map +1 -0
- package/dist/bridge/serialization.d.ts +83 -0
- package/dist/bridge/serialization.d.ts.map +1 -0
- package/dist/bridge/server.d.ts +8 -0
- package/dist/bridge/server.d.ts.map +1 -0
- package/dist/browser-shim/binding-worker.d.ts +7 -0
- package/dist/browser-shim/binding-worker.d.ts.map +1 -0
- package/dist/browser-shim/handler.d.ts +21 -0
- package/dist/browser-shim/handler.d.ts.map +1 -0
- package/dist/browser-shim/index.d.ts +3 -0
- package/dist/browser-shim/index.d.ts.map +1 -0
- package/dist/browser-shim/server.d.ts +25 -0
- package/dist/browser-shim/server.d.ts.map +1 -0
- package/dist/browser-shim/worker.d.ts +14 -0
- package/dist/browser-shim/worker.d.ts.map +1 -0
- package/dist/build-mnf6v8gd.js +53 -0
- package/dist/bundler/do-bundler.d.ts +42 -0
- package/dist/bundler/do-bundler.d.ts.map +1 -0
- package/dist/bundler/index.d.ts +2 -0
- package/dist/bundler/index.d.ts.map +1 -0
- package/dist/cli/bin.d.ts +3 -0
- package/dist/cli/bin.d.ts.map +1 -0
- package/dist/cli/colors.d.ts +11 -0
- package/dist/cli/colors.d.ts.map +1 -0
- package/dist/cli/commands/account.d.ts +4 -0
- package/dist/cli/commands/account.d.ts.map +1 -0
- package/dist/cli/commands/ai.d.ts +3 -0
- package/dist/cli/commands/ai.d.ts.map +1 -0
- package/dist/cli/commands/build.d.ts +4 -0
- package/dist/cli/commands/build.d.ts.map +1 -0
- package/dist/cli/commands/deploy.d.ts +4 -0
- package/dist/cli/commands/deploy.d.ts.map +1 -0
- package/dist/cli/commands/dev.d.ts +4 -0
- package/dist/cli/commands/dev.d.ts.map +1 -0
- package/dist/cli/commands/doctor.d.ts +4 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -0
- package/dist/cli/commands/init.d.ts +4 -0
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/remote.d.ts +4 -0
- package/dist/cli/commands/remote.d.ts.map +1 -0
- package/dist/cli/commands/types.d.ts +4 -0
- package/dist/cli/commands/types.d.ts.map +1 -0
- package/dist/cli/dependencies.d.ts +90 -0
- package/dist/cli/dependencies.d.ts.map +1 -0
- package/dist/cli/index.d.ts +23 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/wrangler-auth.d.ts +36 -0
- package/dist/cli/wrangler-auth.d.ts.map +1 -0
- package/dist/cloudflare/account.d.ts +65 -0
- package/dist/cloudflare/account.d.ts.map +1 -0
- package/dist/cloudflare/api.d.ts +51 -0
- package/dist/cloudflare/api.d.ts.map +1 -0
- package/dist/cloudflare/auth.d.ts +35 -0
- package/dist/cloudflare/auth.d.ts.map +1 -0
- package/dist/cloudflare/index.d.ts +107 -0
- package/dist/cloudflare/index.d.ts.map +1 -0
- package/dist/cloudflare/index.js +13 -0
- package/dist/cloudflare/preferences.d.ts +46 -0
- package/dist/cloudflare/preferences.d.ts.map +1 -0
- package/dist/cloudflare/pricing.d.ts +15 -0
- package/dist/cloudflare/pricing.d.ts.map +1 -0
- package/dist/cloudflare/remote-config.d.ts +37 -0
- package/dist/cloudflare/remote-config.d.ts.map +1 -0
- package/dist/cloudflare/types.d.ts +161 -0
- package/dist/cloudflare/types.d.ts.map +1 -0
- package/dist/cloudflare/usage.d.ts +77 -0
- package/dist/cloudflare/usage.d.ts.map +1 -0
- package/dist/config/compiler.d.ts +146 -0
- package/dist/config/compiler.d.ts.map +1 -0
- package/dist/config/define.d.ts +44 -0
- package/dist/config/define.d.ts.map +1 -0
- package/dist/config/index.d.ts +6 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/loader.d.ts +52 -0
- package/dist/config/loader.d.ts.map +1 -0
- package/dist/config/ref.d.ts +160 -0
- package/dist/config/ref.d.ts.map +1 -0
- package/dist/config/schema.d.ts +3318 -0
- package/dist/config/schema.d.ts.map +1 -0
- package/dist/decorators/durable-object.d.ts +59 -0
- package/dist/decorators/durable-object.d.ts.map +1 -0
- package/dist/decorators/index.d.ts +3 -0
- package/dist/decorators/index.d.ts.map +1 -0
- package/dist/decorators/index.js +9 -0
- package/dist/deploy-nhceck39.js +70 -0
- package/dist/dev-qnxet3j9.js +2096 -0
- package/dist/dev-server/index.d.ts +2 -0
- package/dist/dev-server/index.d.ts.map +1 -0
- package/dist/dev-server/server.d.ts +30 -0
- package/dist/dev-server/server.d.ts.map +1 -0
- package/dist/doctor-e8fy6fj5.js +186 -0
- package/dist/durable-object-t4kbb0yt.js +13 -0
- package/dist/env.d.ts +48 -0
- package/dist/env.d.ts.map +1 -0
- package/dist/index-07q6yxyc.js +168 -0
- package/dist/index-1xpj0m4r.js +57 -0
- package/dist/index-37x76zdn.js +4 -0
- package/dist/index-3t6rypgc.js +13 -0
- package/dist/index-67qcae0f.js +183 -0
- package/dist/index-a855bdsx.js +18 -0
- package/dist/index-d8bdkx2h.js +109 -0
- package/dist/index-ep3445yc.js +2225 -0
- package/dist/index-gz1gndna.js +307 -0
- package/dist/index-hcex3rgh.js +266 -0
- package/dist/index-m2q41jwa.js +462 -0
- package/dist/index-n7rs26ft.js +77 -0
- package/dist/index-pf5s73n9.js +1413 -0
- package/dist/index-rbht7m9r.js +36 -0
- package/dist/index-tfyxa77h.js +850 -0
- package/dist/index-tk6ej9dj.js +94 -0
- package/dist/index-z14anrqp.js +226 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +298 -0
- package/dist/init-f9mgmew3.js +186 -0
- package/dist/remote-q59qk463.js +97 -0
- package/dist/runtime/context.d.ts +46 -0
- package/dist/runtime/context.d.ts.map +1 -0
- package/dist/runtime/exports.d.ts +118 -0
- package/dist/runtime/exports.d.ts.map +1 -0
- package/dist/runtime/index.d.ts +4 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +111 -0
- package/dist/runtime/middleware.d.ts +82 -0
- package/dist/runtime/middleware.d.ts.map +1 -0
- package/dist/runtime/validation.d.ts +37 -0
- package/dist/runtime/validation.d.ts.map +1 -0
- package/dist/sveltekit/index.d.ts +2 -0
- package/dist/sveltekit/index.d.ts.map +1 -0
- package/dist/sveltekit/index.js +182 -0
- package/dist/sveltekit/platform.d.ts +141 -0
- package/dist/sveltekit/platform.d.ts.map +1 -0
- package/dist/test/bridge-context.d.ts +73 -0
- package/dist/test/bridge-context.d.ts.map +1 -0
- package/dist/test/cf.d.ts +130 -0
- package/dist/test/cf.d.ts.map +1 -0
- package/dist/test/email.d.ts +75 -0
- package/dist/test/email.d.ts.map +1 -0
- package/dist/test/index.d.ts +22 -0
- package/dist/test/index.d.ts.map +1 -0
- package/dist/test/index.js +71 -0
- package/dist/test/multi-worker-context.d.ts +114 -0
- package/dist/test/multi-worker-context.d.ts.map +1 -0
- package/dist/test/queue.d.ts +74 -0
- package/dist/test/queue.d.ts.map +1 -0
- package/dist/test/remote-ai.d.ts +6 -0
- package/dist/test/remote-ai.d.ts.map +1 -0
- package/dist/test/remote-vectorize.d.ts +6 -0
- package/dist/test/remote-vectorize.d.ts.map +1 -0
- package/dist/test/resolve-service-bindings.d.ts +68 -0
- package/dist/test/resolve-service-bindings.d.ts.map +1 -0
- package/dist/test/scheduled.d.ts +58 -0
- package/dist/test/scheduled.d.ts.map +1 -0
- package/dist/test/should-skip.d.ts +50 -0
- package/dist/test/should-skip.d.ts.map +1 -0
- package/dist/test/simple-context.d.ts +43 -0
- package/dist/test/simple-context.d.ts.map +1 -0
- package/dist/test/tail.d.ts +86 -0
- package/dist/test/tail.d.ts.map +1 -0
- package/dist/test/utilities.d.ts +99 -0
- package/dist/test/utilities.d.ts.map +1 -0
- package/dist/test/worker.d.ts +76 -0
- package/dist/test/worker.d.ts.map +1 -0
- package/dist/transform/durable-object.d.ts +46 -0
- package/dist/transform/durable-object.d.ts.map +1 -0
- package/dist/transform/index.d.ts +3 -0
- package/dist/transform/index.d.ts.map +1 -0
- package/dist/transform/worker-entrypoint.d.ts +66 -0
- package/dist/transform/worker-entrypoint.d.ts.map +1 -0
- package/dist/types-5nyrz1sz.js +454 -0
- package/dist/utils/entrypoint-discovery.d.ts +29 -0
- package/dist/utils/entrypoint-discovery.d.ts.map +1 -0
- package/dist/utils/glob.d.ts +33 -0
- package/dist/utils/glob.d.ts.map +1 -0
- package/dist/utils/resolve-package.d.ts +10 -0
- package/dist/utils/resolve-package.d.ts.map +1 -0
- package/dist/vite/index.d.ts +3 -0
- package/dist/vite/index.d.ts.map +1 -0
- package/dist/vite/index.js +339 -0
- package/dist/vite/plugin.d.ts +138 -0
- package/dist/vite/plugin.d.ts.map +1 -0
- package/dist/worker-entrypoint-m9th0rg0.js +13 -0
- package/dist/workerName.d.ts +17 -0
- package/dist/workerName.d.ts.map +1 -0
- package/package.json +111 -1
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
export interface CloudflareAccount {
|
|
2
|
+
id: string;
|
|
3
|
+
name: string;
|
|
4
|
+
type: 'standard' | 'enterprise' | string;
|
|
5
|
+
settings?: {
|
|
6
|
+
enforce_twofactor?: boolean;
|
|
7
|
+
use_account_custom_ns_by_default?: boolean;
|
|
8
|
+
};
|
|
9
|
+
created_on?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface AccountInfo {
|
|
12
|
+
id: string;
|
|
13
|
+
name: string;
|
|
14
|
+
type: string;
|
|
15
|
+
createdOn?: Date;
|
|
16
|
+
}
|
|
17
|
+
export type CloudflareService = 'workers' | 'kv' | 'd1' | 'r2' | 'ai' | 'vectorize' | 'durable_objects' | 'queues' | 'hyperdrive' | 'browser';
|
|
18
|
+
export interface ServiceStatus {
|
|
19
|
+
service: CloudflareService;
|
|
20
|
+
available: boolean;
|
|
21
|
+
count?: number;
|
|
22
|
+
details?: Record<string, unknown>;
|
|
23
|
+
}
|
|
24
|
+
export interface WorkerScript {
|
|
25
|
+
id: string;
|
|
26
|
+
name?: string;
|
|
27
|
+
created_on: string;
|
|
28
|
+
modified_on: string;
|
|
29
|
+
etag?: string;
|
|
30
|
+
}
|
|
31
|
+
export interface WorkerInfo {
|
|
32
|
+
name: string;
|
|
33
|
+
createdOn: Date;
|
|
34
|
+
modifiedOn: Date;
|
|
35
|
+
}
|
|
36
|
+
export interface KVNamespace {
|
|
37
|
+
id: string;
|
|
38
|
+
title: string;
|
|
39
|
+
supports_url_encoding?: boolean;
|
|
40
|
+
}
|
|
41
|
+
export interface KVNamespaceInfo {
|
|
42
|
+
id: string;
|
|
43
|
+
name: string;
|
|
44
|
+
}
|
|
45
|
+
export interface D1Database {
|
|
46
|
+
uuid: string;
|
|
47
|
+
name: string;
|
|
48
|
+
version: string;
|
|
49
|
+
num_tables?: number;
|
|
50
|
+
file_size?: number;
|
|
51
|
+
created_at?: string;
|
|
52
|
+
}
|
|
53
|
+
export interface D1DatabaseInfo {
|
|
54
|
+
id: string;
|
|
55
|
+
name: string;
|
|
56
|
+
version: string;
|
|
57
|
+
tableCount?: number;
|
|
58
|
+
sizeBytes?: number;
|
|
59
|
+
}
|
|
60
|
+
export interface R2Bucket {
|
|
61
|
+
name: string;
|
|
62
|
+
creation_date: string;
|
|
63
|
+
location?: string;
|
|
64
|
+
}
|
|
65
|
+
export interface R2BucketInfo {
|
|
66
|
+
name: string;
|
|
67
|
+
createdOn: Date;
|
|
68
|
+
location?: string;
|
|
69
|
+
}
|
|
70
|
+
export interface VectorizeIndex {
|
|
71
|
+
name: string;
|
|
72
|
+
description?: string;
|
|
73
|
+
config: {
|
|
74
|
+
dimensions: number;
|
|
75
|
+
metric: 'cosine' | 'euclidean' | 'dot-product';
|
|
76
|
+
};
|
|
77
|
+
created_on?: string;
|
|
78
|
+
modified_on?: string;
|
|
79
|
+
}
|
|
80
|
+
export interface VectorizeIndexInfo {
|
|
81
|
+
name: string;
|
|
82
|
+
dimensions: number;
|
|
83
|
+
metric: string;
|
|
84
|
+
description?: string;
|
|
85
|
+
}
|
|
86
|
+
export interface AIModel {
|
|
87
|
+
id: string;
|
|
88
|
+
name: string;
|
|
89
|
+
description?: string;
|
|
90
|
+
task?: {
|
|
91
|
+
id: string;
|
|
92
|
+
name: string;
|
|
93
|
+
description?: string;
|
|
94
|
+
};
|
|
95
|
+
properties?: Array<{
|
|
96
|
+
property_id: string;
|
|
97
|
+
value: string;
|
|
98
|
+
}>;
|
|
99
|
+
}
|
|
100
|
+
export interface AIModelInfo {
|
|
101
|
+
id: string;
|
|
102
|
+
name: string;
|
|
103
|
+
task?: string;
|
|
104
|
+
description?: string;
|
|
105
|
+
}
|
|
106
|
+
export interface UsageRecord {
|
|
107
|
+
service: CloudflareService;
|
|
108
|
+
/** ISO date string (YYYY-MM-DD) */
|
|
109
|
+
date: string;
|
|
110
|
+
/** Usage count (requests, tokens, bytes, etc.) */
|
|
111
|
+
count: number;
|
|
112
|
+
/** Last updated timestamp */
|
|
113
|
+
updatedAt: string;
|
|
114
|
+
}
|
|
115
|
+
export interface UsageLimits {
|
|
116
|
+
/** Daily limit for AI tokens (across all models) */
|
|
117
|
+
aiTokensPerDay?: number;
|
|
118
|
+
/** Daily limit for AI requests */
|
|
119
|
+
aiRequestsPerDay?: number;
|
|
120
|
+
/** Daily limit for Vectorize operations */
|
|
121
|
+
vectorizeOpsPerDay?: number;
|
|
122
|
+
/** Whether limits are enabled */
|
|
123
|
+
enabled: boolean;
|
|
124
|
+
}
|
|
125
|
+
export interface UsageSummary {
|
|
126
|
+
service: CloudflareService;
|
|
127
|
+
today: number;
|
|
128
|
+
limit?: number;
|
|
129
|
+
withinLimit: boolean;
|
|
130
|
+
percentUsed?: number;
|
|
131
|
+
}
|
|
132
|
+
export interface CloudflareAPIResponse<T> {
|
|
133
|
+
success: boolean;
|
|
134
|
+
errors: Array<{
|
|
135
|
+
code: number;
|
|
136
|
+
message: string;
|
|
137
|
+
}>;
|
|
138
|
+
messages: Array<{
|
|
139
|
+
code: number;
|
|
140
|
+
message: string;
|
|
141
|
+
}>;
|
|
142
|
+
result: T;
|
|
143
|
+
result_info?: {
|
|
144
|
+
page: number;
|
|
145
|
+
per_page: number;
|
|
146
|
+
total_pages: number;
|
|
147
|
+
count: number;
|
|
148
|
+
total_count: number;
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
export interface WranglerAuth {
|
|
152
|
+
/** OAuth token from wrangler config */
|
|
153
|
+
oauthToken?: string;
|
|
154
|
+
/** API token (if explicitly set) */
|
|
155
|
+
apiToken?: string;
|
|
156
|
+
/** Refresh token for OAuth */
|
|
157
|
+
refreshToken?: string;
|
|
158
|
+
/** Token expiry time */
|
|
159
|
+
expiresAt?: Date;
|
|
160
|
+
}
|
|
161
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cloudflare/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import type { CloudflareService, UsageLimits, UsageRecord, UsageSummary } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Get usage for a specific service on a specific date
|
|
4
|
+
*/
|
|
5
|
+
export declare function getUsage(accountId: string, service: CloudflareService, date?: string): Promise<UsageRecord | null>;
|
|
6
|
+
/**
|
|
7
|
+
* Record usage for a service
|
|
8
|
+
*/
|
|
9
|
+
export declare function recordUsage(accountId: string, service: CloudflareService, count?: number): Promise<UsageRecord>;
|
|
10
|
+
/**
|
|
11
|
+
* Reset usage for a service (typically called when limits are adjusted)
|
|
12
|
+
*/
|
|
13
|
+
export declare function resetUsage(accountId: string, service: CloudflareService): Promise<void>;
|
|
14
|
+
/**
|
|
15
|
+
* Get the current usage limits
|
|
16
|
+
*/
|
|
17
|
+
export declare function getLimits(accountId: string): Promise<UsageLimits>;
|
|
18
|
+
/**
|
|
19
|
+
* Update usage limits
|
|
20
|
+
*/
|
|
21
|
+
export declare function setLimits(accountId: string, limits: Partial<UsageLimits>): Promise<UsageLimits>;
|
|
22
|
+
/**
|
|
23
|
+
* Enable or disable limits enforcement
|
|
24
|
+
*/
|
|
25
|
+
export declare function setLimitsEnabled(accountId: string, enabled: boolean): Promise<UsageLimits>;
|
|
26
|
+
/**
|
|
27
|
+
* Check if usage is within limits for a service
|
|
28
|
+
*/
|
|
29
|
+
export declare function isWithinLimits(accountId: string, service: CloudflareService): Promise<boolean>;
|
|
30
|
+
/**
|
|
31
|
+
* Get usage summary for a service
|
|
32
|
+
*/
|
|
33
|
+
export declare function getUsageSummary(accountId: string, service: CloudflareService): Promise<UsageSummary>;
|
|
34
|
+
/**
|
|
35
|
+
* Get usage summary for all tracked services
|
|
36
|
+
*/
|
|
37
|
+
export declare function getAllUsageSummaries(accountId: string): Promise<UsageSummary[]>;
|
|
38
|
+
/**
|
|
39
|
+
* Check if we can proceed with testing for a specific service
|
|
40
|
+
* Returns true if within limits, false if limits exceeded
|
|
41
|
+
*
|
|
42
|
+
* Use this before running tests that use remote bindings
|
|
43
|
+
*/
|
|
44
|
+
export declare function canProceedWithTest(accountId: string, service: CloudflareService): Promise<{
|
|
45
|
+
allowed: boolean;
|
|
46
|
+
reason?: string;
|
|
47
|
+
}>;
|
|
48
|
+
/**
|
|
49
|
+
* Record that a test used a remote service
|
|
50
|
+
* Call this after successful test execution
|
|
51
|
+
*/
|
|
52
|
+
export declare function recordTestUsage(accountId: string, service: CloudflareService, count?: number): Promise<void>;
|
|
53
|
+
/**
|
|
54
|
+
* Check if tests for a service should be skipped
|
|
55
|
+
*
|
|
56
|
+
* Returns `true` if tests should be SKIPPED (service not available)
|
|
57
|
+
* Returns `false` if tests can proceed
|
|
58
|
+
*
|
|
59
|
+
* Automatically logs the skip reason to console.
|
|
60
|
+
*
|
|
61
|
+
* NOTE: This function is read-only and catches all errors gracefully.
|
|
62
|
+
* If Cloudflare is unreachable, auth fails, or limits can't be checked,
|
|
63
|
+
* it will return true (skip) with an appropriate message.
|
|
64
|
+
*
|
|
65
|
+
* Usage:
|
|
66
|
+
* ```ts
|
|
67
|
+
* import { account } from 'devflare/cloudflare'
|
|
68
|
+
*
|
|
69
|
+
* const skipAI = await account.shouldSkip('ai')
|
|
70
|
+
*
|
|
71
|
+
* describe.skipIf(skipAI)('AI tests', () => {
|
|
72
|
+
* // ...
|
|
73
|
+
* })
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export declare function shouldSkip(service: CloudflareService): Promise<boolean>;
|
|
77
|
+
//# sourceMappingURL=usage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../src/cloudflare/usage.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACX,iBAAiB,EACjB,WAAW,EACX,WAAW,EACX,YAAY,EAEZ,MAAM,SAAS,CAAA;AA+DhB;;GAEG;AACH,wBAAsB,QAAQ,CAC7B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,EAC1B,IAAI,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAiB7B;AAED;;GAEG;AACH,wBAAsB,WAAW,CAChC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,EAC1B,KAAK,GAAE,MAAU,GACf,OAAO,CAAC,WAAW,CAAC,CAmBtB;AAED;;GAEG;AACH,wBAAsB,UAAU,CAC/B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,GACxB,OAAO,CAAC,IAAI,CAAC,CAaf;AAMD;;GAEG;AACH,wBAAsB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAavE;AAED;;GAEG;AACH,wBAAsB,SAAS,CAC9B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAC1B,OAAO,CAAC,WAAW,CAAC,CAYtB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACrC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,GACd,OAAO,CAAC,WAAW,CAAC,CAEtB;AAMD;;GAEG;AACH,wBAAsB,cAAc,CACnC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,GACxB,OAAO,CAAC,OAAO,CAAC,CA6BlB;AAED;;GAEG;AACH,wBAAsB,eAAe,CACpC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,GACxB,OAAO,CAAC,YAAY,CAAC,CAyBvB;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAMrF;AAMD;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACvC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,GACxB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAkBhD;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACpC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,EAC1B,KAAK,GAAE,MAAU,GACf,OAAO,CAAC,IAAI,CAAC,CAEf;AAWD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,CAsC7E"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { type DevflareConfig } from './schema';
|
|
2
|
+
/**
|
|
3
|
+
* Wrangler config type — represents the output format for wrangler.jsonc
|
|
4
|
+
*/
|
|
5
|
+
export interface WranglerConfig {
|
|
6
|
+
name: string;
|
|
7
|
+
account_id?: string;
|
|
8
|
+
main?: string;
|
|
9
|
+
compatibility_date: string;
|
|
10
|
+
compatibility_flags?: string[];
|
|
11
|
+
kv_namespaces?: Array<{
|
|
12
|
+
binding: string;
|
|
13
|
+
id: string;
|
|
14
|
+
}>;
|
|
15
|
+
d1_databases?: Array<{
|
|
16
|
+
binding: string;
|
|
17
|
+
database_id: string;
|
|
18
|
+
}>;
|
|
19
|
+
r2_buckets?: Array<{
|
|
20
|
+
binding: string;
|
|
21
|
+
bucket_name: string;
|
|
22
|
+
}>;
|
|
23
|
+
durable_objects?: {
|
|
24
|
+
bindings: Array<{
|
|
25
|
+
name: string;
|
|
26
|
+
class_name: string;
|
|
27
|
+
script_name?: string;
|
|
28
|
+
}>;
|
|
29
|
+
};
|
|
30
|
+
queues?: {
|
|
31
|
+
producers?: Array<{
|
|
32
|
+
binding: string;
|
|
33
|
+
queue: string;
|
|
34
|
+
}>;
|
|
35
|
+
consumers?: Array<{
|
|
36
|
+
queue: string;
|
|
37
|
+
max_batch_size?: number;
|
|
38
|
+
max_batch_timeout?: number;
|
|
39
|
+
max_retries?: number;
|
|
40
|
+
dead_letter_queue?: string;
|
|
41
|
+
max_concurrency?: number;
|
|
42
|
+
retry_delay?: number;
|
|
43
|
+
}>;
|
|
44
|
+
};
|
|
45
|
+
services?: Array<{
|
|
46
|
+
binding: string;
|
|
47
|
+
service: string;
|
|
48
|
+
environment?: string;
|
|
49
|
+
}>;
|
|
50
|
+
ai?: {
|
|
51
|
+
binding: string;
|
|
52
|
+
};
|
|
53
|
+
vectorize?: Array<{
|
|
54
|
+
binding: string;
|
|
55
|
+
index_name: string;
|
|
56
|
+
}>;
|
|
57
|
+
hyperdrive?: Array<{
|
|
58
|
+
binding: string;
|
|
59
|
+
id: string;
|
|
60
|
+
}>;
|
|
61
|
+
browser?: {
|
|
62
|
+
binding: string;
|
|
63
|
+
};
|
|
64
|
+
analytics_engine_datasets?: Array<{
|
|
65
|
+
binding: string;
|
|
66
|
+
dataset: string;
|
|
67
|
+
}>;
|
|
68
|
+
triggers?: {
|
|
69
|
+
crons?: string[];
|
|
70
|
+
};
|
|
71
|
+
vars?: Record<string, string>;
|
|
72
|
+
routes?: Array<{
|
|
73
|
+
pattern: string;
|
|
74
|
+
zone_name?: string;
|
|
75
|
+
zone_id?: string;
|
|
76
|
+
custom_domain?: boolean;
|
|
77
|
+
}>;
|
|
78
|
+
assets?: {
|
|
79
|
+
directory: string;
|
|
80
|
+
binding?: string;
|
|
81
|
+
};
|
|
82
|
+
observability?: {
|
|
83
|
+
enabled?: boolean;
|
|
84
|
+
head_sampling_rate?: number;
|
|
85
|
+
};
|
|
86
|
+
limits?: {
|
|
87
|
+
cpu_ms?: number;
|
|
88
|
+
};
|
|
89
|
+
migrations?: Array<{
|
|
90
|
+
tag: string;
|
|
91
|
+
new_classes?: string[];
|
|
92
|
+
renamed_classes?: Array<{
|
|
93
|
+
from: string;
|
|
94
|
+
to: string;
|
|
95
|
+
}>;
|
|
96
|
+
deleted_classes?: string[];
|
|
97
|
+
new_sqlite_classes?: string[];
|
|
98
|
+
}>;
|
|
99
|
+
[key: string]: unknown;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Compile DevflareConfig to WranglerConfig
|
|
103
|
+
*
|
|
104
|
+
* @param config - The devflare configuration
|
|
105
|
+
* @param environment - Optional environment name for env-specific overrides
|
|
106
|
+
* @returns Wrangler-compatible configuration object
|
|
107
|
+
*/
|
|
108
|
+
export declare function compileConfig(config: DevflareConfig, environment?: string): WranglerConfig;
|
|
109
|
+
/**
|
|
110
|
+
* Compile DevflareConfig to programmatic config for @cloudflare/vite-plugin
|
|
111
|
+
* This is used instead of wrangler.jsonc in dev mode
|
|
112
|
+
*
|
|
113
|
+
* @param config - The devflare configuration
|
|
114
|
+
* @param environment - Optional environment name for env-specific overrides
|
|
115
|
+
* @returns Config object compatible with cloudflare({ config: ... })
|
|
116
|
+
*/
|
|
117
|
+
export declare function compileToProgrammaticConfig(config: DevflareConfig, environment?: string): Record<string, unknown>;
|
|
118
|
+
/**
|
|
119
|
+
* Convert WranglerConfig to JSONC string with comments
|
|
120
|
+
*/
|
|
121
|
+
export declare function stringifyConfig(config: WranglerConfig): string;
|
|
122
|
+
/**
|
|
123
|
+
* Write wrangler.jsonc file to the specified directory
|
|
124
|
+
*
|
|
125
|
+
* @param cwd - Working directory to write to
|
|
126
|
+
* @param config - Wrangler configuration to write
|
|
127
|
+
* @param filename - Optional filename (default: 'wrangler.jsonc')
|
|
128
|
+
* @returns Path to the written file
|
|
129
|
+
*/
|
|
130
|
+
export declare function writeWranglerConfig(cwd: string, config: WranglerConfig, filename?: string): Promise<string>;
|
|
131
|
+
/**
|
|
132
|
+
* Compile DO Worker config from DevflareConfig
|
|
133
|
+
* This creates a separate worker config that exports the DO classes
|
|
134
|
+
*
|
|
135
|
+
* @param config - The devflare configuration
|
|
136
|
+
* @param doWorkerEntry - Path to the DO worker entry file (e.g., 'src/workers/do-worker.ts')
|
|
137
|
+
* @param options - Additional options
|
|
138
|
+
* @param options.absoluteMain - If true, resolve main to absolute path using cwd
|
|
139
|
+
* @param options.cwd - Working directory for resolving absolute paths
|
|
140
|
+
* @returns Wrangler config for the DO worker, or null if no DOs configured
|
|
141
|
+
*/
|
|
142
|
+
export declare function compileDOWorkerConfig(config: DevflareConfig, doWorkerEntry: string, options?: {
|
|
143
|
+
absoluteMain?: boolean;
|
|
144
|
+
cwd?: string;
|
|
145
|
+
}): WranglerConfig | null;
|
|
146
|
+
//# sourceMappingURL=compiler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../../src/config/compiler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { DevflareConfigInput } from './schema';
|
|
2
|
+
/**
|
|
3
|
+
* Input type for defineConfig - can be object, function, or async function
|
|
4
|
+
* Uses the Zod input type so optional fields with defaults are truly optional
|
|
5
|
+
*/
|
|
6
|
+
export type DefineConfigInput = DevflareConfigInput | (() => DevflareConfigInput) | (() => Promise<DevflareConfigInput>);
|
|
7
|
+
/**
|
|
8
|
+
* Configuration with entrypoints type attached for ref() type inference.
|
|
9
|
+
* This is used by ref() to provide autocomplete for entrypoint names.
|
|
10
|
+
*/
|
|
11
|
+
export interface TypedConfig<TEntrypoints extends string = string> extends DevflareConfigInput {
|
|
12
|
+
/** @internal Type marker for entrypoint names - used by ref() for autocomplete */
|
|
13
|
+
readonly __entrypoints?: TEntrypoints;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Type-safe helper for defining devflare configuration.
|
|
17
|
+
*
|
|
18
|
+
* @typeParam TEntrypoints - Union of valid entrypoint names (from generated types)
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* // Basic usage (entrypoints default to string)
|
|
22
|
+
* export default defineConfig({
|
|
23
|
+
* name: 'my-worker'
|
|
24
|
+
* })
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* // With generated entrypoints type (after `devflare types`)
|
|
28
|
+
* // env.d.ts exports: type Entrypoints = 'AdminEntrypoint' | 'OtherEntrypoint'
|
|
29
|
+
* export default defineConfig<import('./env').Entrypoints>({
|
|
30
|
+
* name: 'my-worker',
|
|
31
|
+
* files: { fetch: 'worker.ts' }
|
|
32
|
+
* })
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* // Function config
|
|
36
|
+
* export default defineConfig(() => ({
|
|
37
|
+
* name: process.env.WORKER_NAME ?? 'my-worker',
|
|
38
|
+
* compatibilityDate: '2025-01-07'
|
|
39
|
+
* }))
|
|
40
|
+
*/
|
|
41
|
+
export declare function defineConfig<TEntrypoints extends string = string>(config: DevflareConfigInput): TypedConfig<TEntrypoints>;
|
|
42
|
+
export declare function defineConfig<TEntrypoints extends string = string>(config: () => DevflareConfigInput): TypedConfig<TEntrypoints>;
|
|
43
|
+
export declare function defineConfig<TEntrypoints extends string = string>(config: () => Promise<DevflareConfigInput>): Promise<TypedConfig<TEntrypoints>>;
|
|
44
|
+
//# sourceMappingURL=define.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../src/config/define.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAEnD;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAC1B,mBAAmB,GACnB,CAAC,MAAM,mBAAmB,CAAC,GAC3B,CAAC,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAA;AAEvC;;;GAGG;AACH,MAAM,WAAW,WAAW,CAAC,YAAY,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,mBAAmB;IAC7F,kFAAkF;IAClF,QAAQ,CAAC,aAAa,CAAC,EAAE,YAAY,CAAA;CACrC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,YAAY,CAAC,YAAY,SAAS,MAAM,GAAG,MAAM,EAChE,MAAM,EAAE,mBAAmB,GACzB,WAAW,CAAC,YAAY,CAAC,CAAA;AAC5B,wBAAgB,YAAY,CAAC,YAAY,SAAS,MAAM,GAAG,MAAM,EAChE,MAAM,EAAE,MAAM,mBAAmB,GAC/B,WAAW,CAAC,YAAY,CAAC,CAAA;AAC5B,wBAAgB,YAAY,CAAC,YAAY,SAAS,MAAM,GAAG,MAAM,EAChE,MAAM,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,GACxC,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { defineConfig } from './define';
|
|
2
|
+
export { configSchema, normalizeDOBinding, type DevflareConfig, type DevflareConfigInput, type DevflareEnvConfig, type DurableObjectBinding, type NormalizedDOBinding, type QueueConsumer, type QueuesConfig, type ServiceBinding, type RouteConfig, type WsRouteConfig, type AssetsConfig, type BuildConfig, type MigrationConfig } from './schema';
|
|
3
|
+
export { compileConfig, stringifyConfig, writeWranglerConfig, type WranglerConfig } from './compiler';
|
|
4
|
+
export { loadConfig, resolveConfigPath, ConfigNotFoundError, ConfigValidationError, type LoadConfigOptions } from './loader';
|
|
5
|
+
export { ref, resolveRef, serviceBinding, type RefResult, type WorkerBinding, type WorkerBindingAccessor, type DOBindingRef } from './ref';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EACN,YAAY,EACZ,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,mBAAmB,EAAE,KAAK,cAAc,EAAE,MAAM,YAAY,CAAA;AACrG,OAAO,EACN,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,KAAK,iBAAiB,EACtB,MAAM,UAAU,CAAA;AAGjB,OAAO,EACN,GAAG,EACH,UAAU,EACV,cAAc,EACd,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,YAAY,EACjB,MAAM,OAAO,CAAA"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { type DevflareConfig } from './schema';
|
|
2
|
+
/**
|
|
3
|
+
* Options for loading config
|
|
4
|
+
*/
|
|
5
|
+
export interface LoadConfigOptions {
|
|
6
|
+
/** Working directory to search for config */
|
|
7
|
+
cwd?: string;
|
|
8
|
+
/** Custom config file name */
|
|
9
|
+
configFile?: string;
|
|
10
|
+
/** Environment name for env-specific overrides */
|
|
11
|
+
environment?: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Resolve the config file path in a directory
|
|
15
|
+
*
|
|
16
|
+
* @param cwd - Directory to search in
|
|
17
|
+
* @returns Path to config file or undefined
|
|
18
|
+
*/
|
|
19
|
+
export declare function resolveConfigPath(cwd: string): Promise<string | undefined>;
|
|
20
|
+
/**
|
|
21
|
+
* Load and validate devflare configuration
|
|
22
|
+
*
|
|
23
|
+
* @param options - Loading options
|
|
24
|
+
* @returns Validated DevflareConfig
|
|
25
|
+
* @throws When config file not found or validation fails
|
|
26
|
+
*/
|
|
27
|
+
export declare function loadConfig(options?: LoadConfigOptions): Promise<DevflareConfig>;
|
|
28
|
+
/**
|
|
29
|
+
* Error thrown when config file is not found
|
|
30
|
+
*/
|
|
31
|
+
export declare class ConfigNotFoundError extends Error {
|
|
32
|
+
readonly cwd: string;
|
|
33
|
+
readonly configFile: string;
|
|
34
|
+
readonly code = "CONFIG_NOT_FOUND";
|
|
35
|
+
constructor(cwd: string, configFile: string);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Error thrown when config validation fails
|
|
39
|
+
*/
|
|
40
|
+
export declare class ConfigValidationError extends Error {
|
|
41
|
+
readonly issues: Array<{
|
|
42
|
+
path: (string | number)[];
|
|
43
|
+
message: string;
|
|
44
|
+
}>;
|
|
45
|
+
readonly configFile: string;
|
|
46
|
+
readonly code = "CONFIG_VALIDATION_ERROR";
|
|
47
|
+
constructor(issues: Array<{
|
|
48
|
+
path: (string | number)[];
|
|
49
|
+
message: string;
|
|
50
|
+
}>, configFile: string);
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAOA,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,UAAU,CAAA;AAE5D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IACjC,6CAA6C;IAC7C,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,8BAA8B;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAA;CACpB;AAYD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAQhF;AAED;;;;;;GAMG;AACH,wBAAsB,UAAU,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC,CA2BzF;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;aAI5B,GAAG,EAAE,MAAM;aACX,UAAU,EAAE,MAAM;IAJnC,QAAQ,CAAC,IAAI,sBAAqB;IAElC,YACiB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAQlC;CACD;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;aAI9B,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;aAC7D,UAAU,EAAE,MAAM;IAJnC,QAAQ,CAAC,IAAI,6BAA4B;IAEzC,YACiB,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,EAC7D,UAAU,EAAE,MAAM,EAUlC;CACD"}
|