@aigne/afs-cloudflare 1.11.0-beta.7
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/LICENSE.md +26 -0
- package/dist/_virtual/_@oxc-project_runtime@0.108.0/helpers/decorate.cjs +11 -0
- package/dist/_virtual/_@oxc-project_runtime@0.108.0/helpers/decorate.mjs +10 -0
- package/dist/cache.cjs +37 -0
- package/dist/cache.mjs +37 -0
- package/dist/cache.mjs.map +1 -0
- package/dist/client.cjs +53 -0
- package/dist/client.mjs +53 -0
- package/dist/client.mjs.map +1 -0
- package/dist/cloudflare-afs.cjs +2724 -0
- package/dist/cloudflare-afs.d.cts +387 -0
- package/dist/cloudflare-afs.d.cts.map +1 -0
- package/dist/cloudflare-afs.d.mts +387 -0
- package/dist/cloudflare-afs.d.mts.map +1 -0
- package/dist/cloudflare-afs.mjs +2725 -0
- package/dist/cloudflare-afs.mjs.map +1 -0
- package/dist/errors.cjs +85 -0
- package/dist/errors.d.cts +26 -0
- package/dist/errors.d.cts.map +1 -0
- package/dist/errors.d.mts +26 -0
- package/dist/errors.d.mts.map +1 -0
- package/dist/errors.mjs +82 -0
- package/dist/errors.mjs.map +1 -0
- package/dist/index.cjs +22 -0
- package/dist/index.d.cts +5 -0
- package/dist/index.d.mts +5 -0
- package/dist/index.mjs +6 -0
- package/dist/platform-ref.cjs +20 -0
- package/dist/platform-ref.d.cts +11 -0
- package/dist/platform-ref.d.cts.map +1 -0
- package/dist/platform-ref.d.mts +11 -0
- package/dist/platform-ref.d.mts.map +1 -0
- package/dist/platform-ref.mjs +17 -0
- package/dist/platform-ref.mjs.map +1 -0
- package/dist/types.cjs +52 -0
- package/dist/types.d.cts +63 -0
- package/dist/types.d.cts.map +1 -0
- package/dist/types.d.mts +63 -0
- package/dist/types.d.mts.map +1 -0
- package/dist/types.mjs +46 -0
- package/dist/types.mjs.map +1 -0
- package/package.json +61 -0
package/dist/errors.mjs
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
//#region src/errors.ts
|
|
2
|
+
const AFS_ERROR_CODES = {
|
|
3
|
+
ENTRY_NOT_FOUND: "ENTRY_NOT_FOUND",
|
|
4
|
+
INVALID_PATH: "INVALID_PATH",
|
|
5
|
+
PERMISSION_DENIED: "PERMISSION_DENIED",
|
|
6
|
+
READONLY_ERROR: "READONLY_ERROR",
|
|
7
|
+
RATE_LIMITED: "RATE_LIMITED",
|
|
8
|
+
INTERNAL_ERROR: "INTERNAL_ERROR",
|
|
9
|
+
CONFIRMATION_REQUIRED: "CONFIRMATION_REQUIRED",
|
|
10
|
+
OPERATION_FAILED: "OPERATION_FAILED",
|
|
11
|
+
AUTH_ERROR: "AUTH_ERROR"
|
|
12
|
+
};
|
|
13
|
+
const CF_ERROR_MAP = {
|
|
14
|
+
1e4: AFS_ERROR_CODES.AUTH_ERROR,
|
|
15
|
+
10001: AFS_ERROR_CODES.PERMISSION_DENIED,
|
|
16
|
+
10007: AFS_ERROR_CODES.ENTRY_NOT_FOUND,
|
|
17
|
+
10014: AFS_ERROR_CODES.RATE_LIMITED,
|
|
18
|
+
10021: AFS_ERROR_CODES.OPERATION_FAILED
|
|
19
|
+
};
|
|
20
|
+
var AFSError = class AFSError extends Error {
|
|
21
|
+
code;
|
|
22
|
+
cause;
|
|
23
|
+
path;
|
|
24
|
+
constructor(code, message, options) {
|
|
25
|
+
super(message);
|
|
26
|
+
this.name = "AFSError";
|
|
27
|
+
this.code = code;
|
|
28
|
+
this.cause = options?.cause;
|
|
29
|
+
this.path = options?.path;
|
|
30
|
+
if (Error.captureStackTrace) Error.captureStackTrace(this, AFSError);
|
|
31
|
+
}
|
|
32
|
+
toJSON() {
|
|
33
|
+
return {
|
|
34
|
+
name: this.name,
|
|
35
|
+
code: this.code,
|
|
36
|
+
message: this.message,
|
|
37
|
+
path: this.path
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
const SENSITIVE_PATTERNS = [/[A-Za-z0-9_-]{40,}/g, /[0-9a-f]{32}/gi];
|
|
42
|
+
function maskSensitiveData(message) {
|
|
43
|
+
let masked = message;
|
|
44
|
+
for (const pattern of SENSITIVE_PATTERNS) masked = masked.replace(pattern, (match) => {
|
|
45
|
+
if (match.length <= 4) return "***";
|
|
46
|
+
return `${match.substring(0, 4)}***`;
|
|
47
|
+
});
|
|
48
|
+
return masked;
|
|
49
|
+
}
|
|
50
|
+
function mapCloudflareError(error, path) {
|
|
51
|
+
if (!(error instanceof Error)) return new AFSError(AFS_ERROR_CODES.INTERNAL_ERROR, "Unknown error occurred", { path });
|
|
52
|
+
const errorCode = error.error?.code;
|
|
53
|
+
const afsCode = errorCode && CF_ERROR_MAP[errorCode] || AFS_ERROR_CODES.INTERNAL_ERROR;
|
|
54
|
+
const maskedMessage = maskSensitiveData(error.message || "Unknown error");
|
|
55
|
+
let friendlyMessage;
|
|
56
|
+
switch (afsCode) {
|
|
57
|
+
case AFS_ERROR_CODES.ENTRY_NOT_FOUND:
|
|
58
|
+
friendlyMessage = path ? `Resource not found: ${path}` : "The requested resource was not found";
|
|
59
|
+
break;
|
|
60
|
+
case AFS_ERROR_CODES.AUTH_ERROR:
|
|
61
|
+
friendlyMessage = "Authentication failed. Check your Cloudflare API token.";
|
|
62
|
+
break;
|
|
63
|
+
case AFS_ERROR_CODES.PERMISSION_DENIED:
|
|
64
|
+
friendlyMessage = "Permission denied. Check your API token permissions.";
|
|
65
|
+
break;
|
|
66
|
+
case AFS_ERROR_CODES.RATE_LIMITED:
|
|
67
|
+
friendlyMessage = "Rate limit exceeded (1200 req/5min). Please retry after a short delay.";
|
|
68
|
+
break;
|
|
69
|
+
default: friendlyMessage = `Cloudflare operation failed: ${maskedMessage}`;
|
|
70
|
+
}
|
|
71
|
+
return new AFSError(afsCode, friendlyMessage, {
|
|
72
|
+
cause: error,
|
|
73
|
+
path
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
function confirmationRequired(action, path) {
|
|
77
|
+
return new AFSError(AFS_ERROR_CODES.CONFIRMATION_REQUIRED, `Action '${action}' requires explicit confirmation. Set { confirm: true } in input.`, { path });
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
//#endregion
|
|
81
|
+
export { AFSError, AFS_ERROR_CODES, confirmationRequired, mapCloudflareError };
|
|
82
|
+
//# sourceMappingURL=errors.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.mjs","names":[],"sources":["../src/errors.ts"],"sourcesContent":["// AFS Error codes\nexport const AFS_ERROR_CODES = {\n ENTRY_NOT_FOUND: \"ENTRY_NOT_FOUND\",\n INVALID_PATH: \"INVALID_PATH\",\n PERMISSION_DENIED: \"PERMISSION_DENIED\",\n READONLY_ERROR: \"READONLY_ERROR\",\n RATE_LIMITED: \"RATE_LIMITED\",\n INTERNAL_ERROR: \"INTERNAL_ERROR\",\n CONFIRMATION_REQUIRED: \"CONFIRMATION_REQUIRED\",\n OPERATION_FAILED: \"OPERATION_FAILED\",\n AUTH_ERROR: \"AUTH_ERROR\",\n} as const;\n\nexport type AFSErrorCode = (typeof AFS_ERROR_CODES)[keyof typeof AFS_ERROR_CODES];\n\n// Cloudflare error code to AFS error code mapping\nconst CF_ERROR_MAP: Record<number, AFSErrorCode> = {\n 10000: AFS_ERROR_CODES.AUTH_ERROR,\n 10001: AFS_ERROR_CODES.PERMISSION_DENIED,\n 10007: AFS_ERROR_CODES.ENTRY_NOT_FOUND,\n 10014: AFS_ERROR_CODES.RATE_LIMITED,\n 10021: AFS_ERROR_CODES.OPERATION_FAILED,\n};\n\n// Custom AFS Error class\nexport class AFSError extends Error {\n readonly code: AFSErrorCode;\n readonly cause?: Error;\n readonly path?: string;\n\n constructor(code: AFSErrorCode, message: string, options?: { cause?: Error; path?: string }) {\n super(message);\n this.name = \"AFSError\";\n this.code = code;\n this.cause = options?.cause;\n this.path = options?.path;\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, AFSError);\n }\n }\n\n toJSON(): Record<string, unknown> {\n return {\n name: this.name,\n code: this.code,\n message: this.message,\n path: this.path,\n };\n }\n}\n\n// Sensitive patterns to mask\nconst SENSITIVE_PATTERNS = [\n /[A-Za-z0-9_-]{40,}/g, // API tokens\n /[0-9a-f]{32}/gi, // Account IDs\n];\n\nfunction maskSensitiveData(message: string): string {\n let masked = message;\n for (const pattern of SENSITIVE_PATTERNS) {\n masked = masked.replace(pattern, (match) => {\n if (match.length <= 4) return \"***\";\n return `${match.substring(0, 4)}***`;\n });\n }\n return masked;\n}\n\n// Map Cloudflare error to AFS error\nexport function mapCloudflareError(error: unknown, path?: string): AFSError {\n if (!(error instanceof Error)) {\n return new AFSError(AFS_ERROR_CODES.INTERNAL_ERROR, \"Unknown error occurred\", { path });\n }\n\n // Extract Cloudflare error code from SDK errors\n const cfError = error as Error & { status?: number; error?: { code?: number } };\n const errorCode = cfError.error?.code;\n\n const afsCode = (errorCode && CF_ERROR_MAP[errorCode]) || AFS_ERROR_CODES.INTERNAL_ERROR;\n\n const maskedMessage = maskSensitiveData(error.message || \"Unknown error\");\n\n let friendlyMessage: string;\n switch (afsCode) {\n case AFS_ERROR_CODES.ENTRY_NOT_FOUND:\n friendlyMessage = path\n ? `Resource not found: ${path}`\n : \"The requested resource was not found\";\n break;\n case AFS_ERROR_CODES.AUTH_ERROR:\n friendlyMessage = \"Authentication failed. Check your Cloudflare API token.\";\n break;\n case AFS_ERROR_CODES.PERMISSION_DENIED:\n friendlyMessage = \"Permission denied. Check your API token permissions.\";\n break;\n case AFS_ERROR_CODES.RATE_LIMITED:\n friendlyMessage = \"Rate limit exceeded (1200 req/5min). Please retry after a short delay.\";\n break;\n default:\n friendlyMessage = `Cloudflare operation failed: ${maskedMessage}`;\n }\n\n return new AFSError(afsCode, friendlyMessage, { cause: error, path });\n}\n\n// Common error factories\nexport function entryNotFound(path: string): AFSError {\n return new AFSError(AFS_ERROR_CODES.ENTRY_NOT_FOUND, `Entry not found: ${path}`, { path });\n}\n\nexport function confirmationRequired(action: string, path?: string): AFSError {\n return new AFSError(\n AFS_ERROR_CODES.CONFIRMATION_REQUIRED,\n `Action '${action}' requires explicit confirmation. Set { confirm: true } in input.`,\n { path },\n );\n}\n\nexport function readonlyError(operation: string, path?: string): AFSError {\n return new AFSError(AFS_ERROR_CODES.READONLY_ERROR, `Cannot ${operation} in readonly mode`, {\n path,\n });\n}\n\nexport function operationFailed(operation: string, reason: string, path?: string): AFSError {\n return new AFSError(\n AFS_ERROR_CODES.OPERATION_FAILED,\n `Operation '${operation}' failed: ${reason}`,\n { path },\n );\n}\n"],"mappings":";AACA,MAAa,kBAAkB;CAC7B,iBAAiB;CACjB,cAAc;CACd,mBAAmB;CACnB,gBAAgB;CAChB,cAAc;CACd,gBAAgB;CAChB,uBAAuB;CACvB,kBAAkB;CAClB,YAAY;CACb;AAKD,MAAM,eAA6C;CACjD,KAAO,gBAAgB;CACvB,OAAO,gBAAgB;CACvB,OAAO,gBAAgB;CACvB,OAAO,gBAAgB;CACvB,OAAO,gBAAgB;CACxB;AAGD,IAAa,WAAb,MAAa,iBAAiB,MAAM;CAClC,AAAS;CACT,AAAS;CACT,AAAS;CAET,YAAY,MAAoB,SAAiB,SAA4C;AAC3F,QAAM,QAAQ;AACd,OAAK,OAAO;AACZ,OAAK,OAAO;AACZ,OAAK,QAAQ,SAAS;AACtB,OAAK,OAAO,SAAS;AAErB,MAAI,MAAM,kBACR,OAAM,kBAAkB,MAAM,SAAS;;CAI3C,SAAkC;AAChC,SAAO;GACL,MAAM,KAAK;GACX,MAAM,KAAK;GACX,SAAS,KAAK;GACd,MAAM,KAAK;GACZ;;;AAKL,MAAM,qBAAqB,CACzB,uBACA,iBACD;AAED,SAAS,kBAAkB,SAAyB;CAClD,IAAI,SAAS;AACb,MAAK,MAAM,WAAW,mBACpB,UAAS,OAAO,QAAQ,UAAU,UAAU;AAC1C,MAAI,MAAM,UAAU,EAAG,QAAO;AAC9B,SAAO,GAAG,MAAM,UAAU,GAAG,EAAE,CAAC;GAChC;AAEJ,QAAO;;AAIT,SAAgB,mBAAmB,OAAgB,MAAyB;AAC1E,KAAI,EAAE,iBAAiB,OACrB,QAAO,IAAI,SAAS,gBAAgB,gBAAgB,0BAA0B,EAAE,MAAM,CAAC;CAKzF,MAAM,YADU,MACU,OAAO;CAEjC,MAAM,UAAW,aAAa,aAAa,cAAe,gBAAgB;CAE1E,MAAM,gBAAgB,kBAAkB,MAAM,WAAW,gBAAgB;CAEzE,IAAI;AACJ,SAAQ,SAAR;EACE,KAAK,gBAAgB;AACnB,qBAAkB,OACd,uBAAuB,SACvB;AACJ;EACF,KAAK,gBAAgB;AACnB,qBAAkB;AAClB;EACF,KAAK,gBAAgB;AACnB,qBAAkB;AAClB;EACF,KAAK,gBAAgB;AACnB,qBAAkB;AAClB;EACF,QACE,mBAAkB,gCAAgC;;AAGtD,QAAO,IAAI,SAAS,SAAS,iBAAiB;EAAE,OAAO;EAAO;EAAM,CAAC;;AAQvE,SAAgB,qBAAqB,QAAgB,MAAyB;AAC5E,QAAO,IAAI,SACT,gBAAgB,uBAChB,WAAW,OAAO,oEAClB,EAAE,MAAM,CACT"}
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
2
|
+
const require_errors = require('./errors.cjs');
|
|
3
|
+
const require_platform_ref = require('./platform-ref.cjs');
|
|
4
|
+
const require_types = require('./types.cjs');
|
|
5
|
+
const require_cloudflare_afs = require('./cloudflare-afs.cjs');
|
|
6
|
+
|
|
7
|
+
exports.ACCESS_MODES = require_types.ACCESS_MODES;
|
|
8
|
+
exports.AFSCloudflare = require_cloudflare_afs.AFSCloudflare;
|
|
9
|
+
exports.AFSCloudflareConfigSchema = require_types.AFSCloudflareConfigSchema;
|
|
10
|
+
exports.AFSError = require_errors.AFSError;
|
|
11
|
+
exports.AFS_ERROR_CODES = require_errors.AFS_ERROR_CODES;
|
|
12
|
+
exports.BY_ZONE_PREFIX = require_types.BY_ZONE_PREFIX;
|
|
13
|
+
exports.KINDS = require_types.KINDS;
|
|
14
|
+
exports.KV_PREFIX = require_types.KV_PREFIX;
|
|
15
|
+
exports.PAGES_PREFIX = require_types.PAGES_PREFIX;
|
|
16
|
+
exports.WORKERS_PREFIX = require_types.WORKERS_PREFIX;
|
|
17
|
+
exports.default = require_cloudflare_afs.AFSCloudflare;
|
|
18
|
+
exports.generateKVPlatformRef = require_platform_ref.generateKVPlatformRef;
|
|
19
|
+
exports.generatePagesPlatformRef = require_platform_ref.generatePagesPlatformRef;
|
|
20
|
+
exports.generateWorkerPlatformRef = require_platform_ref.generateWorkerPlatformRef;
|
|
21
|
+
exports.generateZonePlatformRef = require_platform_ref.generateZonePlatformRef;
|
|
22
|
+
exports.normalizeConfig = require_types.normalizeConfig;
|
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ACCESS_MODES, AFSAccessMode, AFSCloudflareConfig, AFSCloudflareConfigSchema, AFSEntry, AFSExecResult, AFSListOptions, AFSListResult, AFSModule, AFSReadOptions, AFSReadResult, AFSWriteResult, AccessMode, BY_ZONE_PREFIX, KINDS, KV_PREFIX, NormalizedConfig, PAGES_PREFIX, WORKERS_PREFIX, normalizeConfig } from "./types.cjs";
|
|
2
|
+
import { AFSCloudflare } from "./cloudflare-afs.cjs";
|
|
3
|
+
import { AFSError, AFS_ERROR_CODES } from "./errors.cjs";
|
|
4
|
+
import { CloudflarePlatformRef, generateKVPlatformRef, generatePagesPlatformRef, generateWorkerPlatformRef, generateZonePlatformRef } from "./platform-ref.cjs";
|
|
5
|
+
export { ACCESS_MODES, AFSAccessMode, AFSCloudflare, AFSCloudflareConfig, AFSCloudflareConfigSchema, AFSEntry, AFSError, AFSExecResult, AFSListOptions, AFSListResult, AFSModule, AFSReadOptions, AFSReadResult, AFSWriteResult, AFS_ERROR_CODES, AccessMode, BY_ZONE_PREFIX, CloudflarePlatformRef, KINDS, KV_PREFIX, NormalizedConfig, PAGES_PREFIX, WORKERS_PREFIX, AFSCloudflare as default, generateKVPlatformRef, generatePagesPlatformRef, generateWorkerPlatformRef, generateZonePlatformRef, normalizeConfig };
|
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ACCESS_MODES, AFSAccessMode, AFSCloudflareConfig, AFSCloudflareConfigSchema, AFSEntry, AFSExecResult, AFSListOptions, AFSListResult, AFSModule, AFSReadOptions, AFSReadResult, AFSWriteResult, AccessMode, BY_ZONE_PREFIX, KINDS, KV_PREFIX, NormalizedConfig, PAGES_PREFIX, WORKERS_PREFIX, normalizeConfig } from "./types.mjs";
|
|
2
|
+
import { AFSCloudflare } from "./cloudflare-afs.mjs";
|
|
3
|
+
import { AFSError, AFS_ERROR_CODES } from "./errors.mjs";
|
|
4
|
+
import { CloudflarePlatformRef, generateKVPlatformRef, generatePagesPlatformRef, generateWorkerPlatformRef, generateZonePlatformRef } from "./platform-ref.mjs";
|
|
5
|
+
export { ACCESS_MODES, AFSAccessMode, AFSCloudflare, AFSCloudflareConfig, AFSCloudflareConfigSchema, AFSEntry, AFSError, AFSExecResult, AFSListOptions, AFSListResult, AFSModule, AFSReadOptions, AFSReadResult, AFSWriteResult, AFS_ERROR_CODES, AccessMode, BY_ZONE_PREFIX, CloudflarePlatformRef, KINDS, KV_PREFIX, NormalizedConfig, PAGES_PREFIX, WORKERS_PREFIX, AFSCloudflare as default, generateKVPlatformRef, generatePagesPlatformRef, generateWorkerPlatformRef, generateZonePlatformRef, normalizeConfig };
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { AFSError, AFS_ERROR_CODES } from "./errors.mjs";
|
|
2
|
+
import { generateKVPlatformRef, generatePagesPlatformRef, generateWorkerPlatformRef, generateZonePlatformRef } from "./platform-ref.mjs";
|
|
3
|
+
import { ACCESS_MODES, AFSCloudflareConfigSchema, BY_ZONE_PREFIX, KINDS, KV_PREFIX, PAGES_PREFIX, WORKERS_PREFIX, normalizeConfig } from "./types.mjs";
|
|
4
|
+
import { AFSCloudflare } from "./cloudflare-afs.mjs";
|
|
5
|
+
|
|
6
|
+
export { ACCESS_MODES, AFSCloudflare, AFSCloudflareConfigSchema, AFSError, AFS_ERROR_CODES, BY_ZONE_PREFIX, KINDS, KV_PREFIX, PAGES_PREFIX, WORKERS_PREFIX, AFSCloudflare as default, generateKVPlatformRef, generatePagesPlatformRef, generateWorkerPlatformRef, generateZonePlatformRef, normalizeConfig };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
|
|
2
|
+
//#region src/platform-ref.ts
|
|
3
|
+
function generateWorkerPlatformRef(accountId, scriptName) {
|
|
4
|
+
return { dashboardUrl: `https://dash.cloudflare.com/${accountId}/workers/services/view/${scriptName}` };
|
|
5
|
+
}
|
|
6
|
+
function generateKVPlatformRef(accountId, namespaceId) {
|
|
7
|
+
return { dashboardUrl: `https://dash.cloudflare.com/${accountId}/workers/kv/namespaces/${namespaceId}` };
|
|
8
|
+
}
|
|
9
|
+
function generatePagesPlatformRef(accountId, projectName) {
|
|
10
|
+
return { dashboardUrl: `https://dash.cloudflare.com/${accountId}/pages/view/${projectName}` };
|
|
11
|
+
}
|
|
12
|
+
function generateZonePlatformRef(zoneId) {
|
|
13
|
+
return { dashboardUrl: `https://dash.cloudflare.com/${zoneId}` };
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
//#endregion
|
|
17
|
+
exports.generateKVPlatformRef = generateKVPlatformRef;
|
|
18
|
+
exports.generatePagesPlatformRef = generatePagesPlatformRef;
|
|
19
|
+
exports.generateWorkerPlatformRef = generateWorkerPlatformRef;
|
|
20
|
+
exports.generateZonePlatformRef = generateZonePlatformRef;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
//#region src/platform-ref.d.ts
|
|
2
|
+
interface CloudflarePlatformRef {
|
|
3
|
+
dashboardUrl: string;
|
|
4
|
+
}
|
|
5
|
+
declare function generateWorkerPlatformRef(accountId: string, scriptName: string): CloudflarePlatformRef;
|
|
6
|
+
declare function generateKVPlatformRef(accountId: string, namespaceId: string): CloudflarePlatformRef;
|
|
7
|
+
declare function generatePagesPlatformRef(accountId: string, projectName: string): CloudflarePlatformRef;
|
|
8
|
+
declare function generateZonePlatformRef(zoneId: string): CloudflarePlatformRef;
|
|
9
|
+
//#endregion
|
|
10
|
+
export { CloudflarePlatformRef, generateKVPlatformRef, generatePagesPlatformRef, generateWorkerPlatformRef, generateZonePlatformRef };
|
|
11
|
+
//# sourceMappingURL=platform-ref.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-ref.d.cts","names":[],"sources":["../src/platform-ref.ts"],"mappings":";UAAiB,qBAAA;EACf,YAAA;AAAA;AAAA,iBAGc,yBAAA,CACd,SAAA,UACA,UAAA,WACC,qBAAA;AAAA,iBAMa,qBAAA,CACd,SAAA,UACA,WAAA,WACC,qBAAA;AAAA,iBAMa,wBAAA,CACd,SAAA,UACA,WAAA,WACC,qBAAA;AAAA,iBAMa,uBAAA,CAAwB,MAAA,WAAiB,qBAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
//#region src/platform-ref.d.ts
|
|
2
|
+
interface CloudflarePlatformRef {
|
|
3
|
+
dashboardUrl: string;
|
|
4
|
+
}
|
|
5
|
+
declare function generateWorkerPlatformRef(accountId: string, scriptName: string): CloudflarePlatformRef;
|
|
6
|
+
declare function generateKVPlatformRef(accountId: string, namespaceId: string): CloudflarePlatformRef;
|
|
7
|
+
declare function generatePagesPlatformRef(accountId: string, projectName: string): CloudflarePlatformRef;
|
|
8
|
+
declare function generateZonePlatformRef(zoneId: string): CloudflarePlatformRef;
|
|
9
|
+
//#endregion
|
|
10
|
+
export { CloudflarePlatformRef, generateKVPlatformRef, generatePagesPlatformRef, generateWorkerPlatformRef, generateZonePlatformRef };
|
|
11
|
+
//# sourceMappingURL=platform-ref.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-ref.d.mts","names":[],"sources":["../src/platform-ref.ts"],"mappings":";UAAiB,qBAAA;EACf,YAAA;AAAA;AAAA,iBAGc,yBAAA,CACd,SAAA,UACA,UAAA,WACC,qBAAA;AAAA,iBAMa,qBAAA,CACd,SAAA,UACA,WAAA,WACC,qBAAA;AAAA,iBAMa,wBAAA,CACd,SAAA,UACA,WAAA,WACC,qBAAA;AAAA,iBAMa,uBAAA,CAAwB,MAAA,WAAiB,qBAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
//#region src/platform-ref.ts
|
|
2
|
+
function generateWorkerPlatformRef(accountId, scriptName) {
|
|
3
|
+
return { dashboardUrl: `https://dash.cloudflare.com/${accountId}/workers/services/view/${scriptName}` };
|
|
4
|
+
}
|
|
5
|
+
function generateKVPlatformRef(accountId, namespaceId) {
|
|
6
|
+
return { dashboardUrl: `https://dash.cloudflare.com/${accountId}/workers/kv/namespaces/${namespaceId}` };
|
|
7
|
+
}
|
|
8
|
+
function generatePagesPlatformRef(accountId, projectName) {
|
|
9
|
+
return { dashboardUrl: `https://dash.cloudflare.com/${accountId}/pages/view/${projectName}` };
|
|
10
|
+
}
|
|
11
|
+
function generateZonePlatformRef(zoneId) {
|
|
12
|
+
return { dashboardUrl: `https://dash.cloudflare.com/${zoneId}` };
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
//#endregion
|
|
16
|
+
export { generateKVPlatformRef, generatePagesPlatformRef, generateWorkerPlatformRef, generateZonePlatformRef };
|
|
17
|
+
//# sourceMappingURL=platform-ref.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-ref.mjs","names":[],"sources":["../src/platform-ref.ts"],"sourcesContent":["export interface CloudflarePlatformRef {\n dashboardUrl: string;\n}\n\nexport function generateWorkerPlatformRef(\n accountId: string,\n scriptName: string,\n): CloudflarePlatformRef {\n return {\n dashboardUrl: `https://dash.cloudflare.com/${accountId}/workers/services/view/${scriptName}`,\n };\n}\n\nexport function generateKVPlatformRef(\n accountId: string,\n namespaceId: string,\n): CloudflarePlatformRef {\n return {\n dashboardUrl: `https://dash.cloudflare.com/${accountId}/workers/kv/namespaces/${namespaceId}`,\n };\n}\n\nexport function generatePagesPlatformRef(\n accountId: string,\n projectName: string,\n): CloudflarePlatformRef {\n return {\n dashboardUrl: `https://dash.cloudflare.com/${accountId}/pages/view/${projectName}`,\n };\n}\n\nexport function generateZonePlatformRef(zoneId: string): CloudflarePlatformRef {\n return {\n dashboardUrl: `https://dash.cloudflare.com/${zoneId}`,\n };\n}\n"],"mappings":";AAIA,SAAgB,0BACd,WACA,YACuB;AACvB,QAAO,EACL,cAAc,+BAA+B,UAAU,yBAAyB,cACjF;;AAGH,SAAgB,sBACd,WACA,aACuB;AACvB,QAAO,EACL,cAAc,+BAA+B,UAAU,yBAAyB,eACjF;;AAGH,SAAgB,yBACd,WACA,aACuB;AACvB,QAAO,EACL,cAAc,+BAA+B,UAAU,cAAc,eACtE;;AAGH,SAAgB,wBAAwB,QAAuC;AAC7E,QAAO,EACL,cAAc,+BAA+B,UAC9C"}
|
package/dist/types.cjs
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
let zod = require("zod");
|
|
2
|
+
|
|
3
|
+
//#region src/types.ts
|
|
4
|
+
const ACCESS_MODES = ["readonly", "readwrite"];
|
|
5
|
+
const AFSCloudflareConfigSchema = zod.z.object({
|
|
6
|
+
name: zod.z.string().min(1).max(128).default("cloudflare"),
|
|
7
|
+
description: zod.z.string().max(1024).optional(),
|
|
8
|
+
accessMode: zod.z.enum(ACCESS_MODES).default("readonly"),
|
|
9
|
+
accountId: zod.z.string().optional(),
|
|
10
|
+
apiToken: zod.z.string().optional(),
|
|
11
|
+
cacheTtl: zod.z.number().int().min(0).max(86400).default(30),
|
|
12
|
+
cacheDisabled: zod.z.boolean().default(false)
|
|
13
|
+
}).strict();
|
|
14
|
+
function normalizeConfig(config) {
|
|
15
|
+
return {
|
|
16
|
+
name: config.name,
|
|
17
|
+
description: config.description,
|
|
18
|
+
accessMode: config.accessMode,
|
|
19
|
+
accountId: config.accountId,
|
|
20
|
+
apiToken: config.apiToken,
|
|
21
|
+
cacheTtl: config.cacheTtl,
|
|
22
|
+
cacheDisabled: config.cacheDisabled
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
const WORKERS_PREFIX = "/workers";
|
|
26
|
+
const KV_PREFIX = "/kv";
|
|
27
|
+
const PAGES_PREFIX = "/pages";
|
|
28
|
+
const BY_ZONE_PREFIX = "/by-zone";
|
|
29
|
+
const KINDS = {
|
|
30
|
+
WORKER: "cf:worker",
|
|
31
|
+
KV_NAMESPACE: "cf:kv-namespace",
|
|
32
|
+
KV_KEY: "cf:kv-key",
|
|
33
|
+
PAGES_PROJECT: "cf:pages-project",
|
|
34
|
+
DEPLOYMENT: "cf:deployment",
|
|
35
|
+
DOMAIN: "cf:domain",
|
|
36
|
+
BINDING: "cf:binding",
|
|
37
|
+
ROUTE: "cf:route",
|
|
38
|
+
CRON_TRIGGER: "cf:cron-trigger",
|
|
39
|
+
ZONE: "cf:zone",
|
|
40
|
+
EXECUTABLE: "afs:executable",
|
|
41
|
+
NODE: "afs:node"
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
//#endregion
|
|
45
|
+
exports.ACCESS_MODES = ACCESS_MODES;
|
|
46
|
+
exports.AFSCloudflareConfigSchema = AFSCloudflareConfigSchema;
|
|
47
|
+
exports.BY_ZONE_PREFIX = BY_ZONE_PREFIX;
|
|
48
|
+
exports.KINDS = KINDS;
|
|
49
|
+
exports.KV_PREFIX = KV_PREFIX;
|
|
50
|
+
exports.PAGES_PREFIX = PAGES_PREFIX;
|
|
51
|
+
exports.WORKERS_PREFIX = WORKERS_PREFIX;
|
|
52
|
+
exports.normalizeConfig = normalizeConfig;
|
package/dist/types.d.cts
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { AFSAccessMode as AFSAccessMode$1, AFSEntry as AFSEntry$1, AFSExecResult as AFSExecResult$1, AFSListOptions, AFSListResult as AFSListResult$1, AFSModule, AFSReadOptions, AFSReadResult, AFSWriteResult as AFSWriteResult$1 } from "@aigne/afs";
|
|
3
|
+
|
|
4
|
+
//#region src/types.d.ts
|
|
5
|
+
declare const ACCESS_MODES: readonly ["readonly", "readwrite"];
|
|
6
|
+
type AccessMode = (typeof ACCESS_MODES)[number];
|
|
7
|
+
declare const AFSCloudflareConfigSchema: z.ZodObject<{
|
|
8
|
+
name: z.ZodDefault<z.ZodString>;
|
|
9
|
+
description: z.ZodOptional<z.ZodString>;
|
|
10
|
+
accessMode: z.ZodDefault<z.ZodEnum<["readonly", "readwrite"]>>;
|
|
11
|
+
accountId: z.ZodOptional<z.ZodString>;
|
|
12
|
+
apiToken: z.ZodOptional<z.ZodString>;
|
|
13
|
+
cacheTtl: z.ZodDefault<z.ZodNumber>;
|
|
14
|
+
cacheDisabled: z.ZodDefault<z.ZodBoolean>;
|
|
15
|
+
}, "strict", z.ZodTypeAny, {
|
|
16
|
+
name: string;
|
|
17
|
+
accessMode: "readonly" | "readwrite";
|
|
18
|
+
cacheTtl: number;
|
|
19
|
+
cacheDisabled: boolean;
|
|
20
|
+
description?: string | undefined;
|
|
21
|
+
accountId?: string | undefined;
|
|
22
|
+
apiToken?: string | undefined;
|
|
23
|
+
}, {
|
|
24
|
+
name?: string | undefined;
|
|
25
|
+
description?: string | undefined;
|
|
26
|
+
accessMode?: "readonly" | "readwrite" | undefined;
|
|
27
|
+
accountId?: string | undefined;
|
|
28
|
+
apiToken?: string | undefined;
|
|
29
|
+
cacheTtl?: number | undefined;
|
|
30
|
+
cacheDisabled?: boolean | undefined;
|
|
31
|
+
}>;
|
|
32
|
+
type AFSCloudflareConfig = z.input<typeof AFSCloudflareConfigSchema>;
|
|
33
|
+
interface NormalizedConfig {
|
|
34
|
+
name: string;
|
|
35
|
+
description?: string;
|
|
36
|
+
accessMode: AccessMode;
|
|
37
|
+
accountId?: string;
|
|
38
|
+
apiToken?: string;
|
|
39
|
+
cacheTtl: number;
|
|
40
|
+
cacheDisabled: boolean;
|
|
41
|
+
}
|
|
42
|
+
declare function normalizeConfig(config: z.output<typeof AFSCloudflareConfigSchema>): NormalizedConfig;
|
|
43
|
+
declare const WORKERS_PREFIX = "/workers";
|
|
44
|
+
declare const KV_PREFIX = "/kv";
|
|
45
|
+
declare const PAGES_PREFIX = "/pages";
|
|
46
|
+
declare const BY_ZONE_PREFIX = "/by-zone";
|
|
47
|
+
declare const KINDS: {
|
|
48
|
+
readonly WORKER: "cf:worker";
|
|
49
|
+
readonly KV_NAMESPACE: "cf:kv-namespace";
|
|
50
|
+
readonly KV_KEY: "cf:kv-key";
|
|
51
|
+
readonly PAGES_PROJECT: "cf:pages-project";
|
|
52
|
+
readonly DEPLOYMENT: "cf:deployment";
|
|
53
|
+
readonly DOMAIN: "cf:domain";
|
|
54
|
+
readonly BINDING: "cf:binding";
|
|
55
|
+
readonly ROUTE: "cf:route";
|
|
56
|
+
readonly CRON_TRIGGER: "cf:cron-trigger";
|
|
57
|
+
readonly ZONE: "cf:zone";
|
|
58
|
+
readonly EXECUTABLE: "afs:executable";
|
|
59
|
+
readonly NODE: "afs:node";
|
|
60
|
+
};
|
|
61
|
+
//#endregion
|
|
62
|
+
export { ACCESS_MODES, type AFSAccessMode$1 as AFSAccessMode, AFSCloudflareConfig, AFSCloudflareConfigSchema, type AFSEntry$1 as AFSEntry, type AFSExecResult$1 as AFSExecResult, type AFSListOptions, type AFSListResult$1 as AFSListResult, type AFSModule, type AFSReadOptions, type AFSReadResult, type AFSWriteResult$1 as AFSWriteResult, AccessMode, BY_ZONE_PREFIX, KINDS, KV_PREFIX, NormalizedConfig, PAGES_PREFIX, WORKERS_PREFIX, normalizeConfig };
|
|
63
|
+
//# sourceMappingURL=types.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.cts","names":[],"sources":["../src/types.ts"],"mappings":";;;;cAGa,YAAA;AAAA,KACD,UAAA,WAAqB,YAAA;AAAA,cAGpB,yBAAA,EAAyB,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;KAY1B,mBAAA,GAAsB,CAAA,CAAE,KAAA,QAAa,yBAAA;AAAA,UAGhC,gBAAA;EACf,IAAA;EACA,WAAA;EACA,UAAA,EAAY,UAAA;EACZ,SAAA;EACA,QAAA;EACA,QAAA;EACA,aAAA;AAAA;AAAA,iBAGc,eAAA,CACd,MAAA,EAAQ,CAAA,CAAE,MAAA,QAAc,yBAAA,IACvB,gBAAA;AAAA,cAaU,cAAA;AAAA,cACA,SAAA;AAAA,cACA,YAAA;AAAA,cACA,cAAA;AAAA,cAGA,KAAA;EAAA"}
|
package/dist/types.d.mts
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { AFSAccessMode as AFSAccessMode$1, AFSEntry as AFSEntry$1, AFSExecResult as AFSExecResult$1, AFSListOptions, AFSListResult as AFSListResult$1, AFSModule, AFSReadOptions, AFSReadResult, AFSWriteResult as AFSWriteResult$1 } from "@aigne/afs";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
|
|
4
|
+
//#region src/types.d.ts
|
|
5
|
+
declare const ACCESS_MODES: readonly ["readonly", "readwrite"];
|
|
6
|
+
type AccessMode = (typeof ACCESS_MODES)[number];
|
|
7
|
+
declare const AFSCloudflareConfigSchema: z.ZodObject<{
|
|
8
|
+
name: z.ZodDefault<z.ZodString>;
|
|
9
|
+
description: z.ZodOptional<z.ZodString>;
|
|
10
|
+
accessMode: z.ZodDefault<z.ZodEnum<["readonly", "readwrite"]>>;
|
|
11
|
+
accountId: z.ZodOptional<z.ZodString>;
|
|
12
|
+
apiToken: z.ZodOptional<z.ZodString>;
|
|
13
|
+
cacheTtl: z.ZodDefault<z.ZodNumber>;
|
|
14
|
+
cacheDisabled: z.ZodDefault<z.ZodBoolean>;
|
|
15
|
+
}, "strict", z.ZodTypeAny, {
|
|
16
|
+
name: string;
|
|
17
|
+
accessMode: "readonly" | "readwrite";
|
|
18
|
+
cacheTtl: number;
|
|
19
|
+
cacheDisabled: boolean;
|
|
20
|
+
description?: string | undefined;
|
|
21
|
+
accountId?: string | undefined;
|
|
22
|
+
apiToken?: string | undefined;
|
|
23
|
+
}, {
|
|
24
|
+
name?: string | undefined;
|
|
25
|
+
description?: string | undefined;
|
|
26
|
+
accessMode?: "readonly" | "readwrite" | undefined;
|
|
27
|
+
accountId?: string | undefined;
|
|
28
|
+
apiToken?: string | undefined;
|
|
29
|
+
cacheTtl?: number | undefined;
|
|
30
|
+
cacheDisabled?: boolean | undefined;
|
|
31
|
+
}>;
|
|
32
|
+
type AFSCloudflareConfig = z.input<typeof AFSCloudflareConfigSchema>;
|
|
33
|
+
interface NormalizedConfig {
|
|
34
|
+
name: string;
|
|
35
|
+
description?: string;
|
|
36
|
+
accessMode: AccessMode;
|
|
37
|
+
accountId?: string;
|
|
38
|
+
apiToken?: string;
|
|
39
|
+
cacheTtl: number;
|
|
40
|
+
cacheDisabled: boolean;
|
|
41
|
+
}
|
|
42
|
+
declare function normalizeConfig(config: z.output<typeof AFSCloudflareConfigSchema>): NormalizedConfig;
|
|
43
|
+
declare const WORKERS_PREFIX = "/workers";
|
|
44
|
+
declare const KV_PREFIX = "/kv";
|
|
45
|
+
declare const PAGES_PREFIX = "/pages";
|
|
46
|
+
declare const BY_ZONE_PREFIX = "/by-zone";
|
|
47
|
+
declare const KINDS: {
|
|
48
|
+
readonly WORKER: "cf:worker";
|
|
49
|
+
readonly KV_NAMESPACE: "cf:kv-namespace";
|
|
50
|
+
readonly KV_KEY: "cf:kv-key";
|
|
51
|
+
readonly PAGES_PROJECT: "cf:pages-project";
|
|
52
|
+
readonly DEPLOYMENT: "cf:deployment";
|
|
53
|
+
readonly DOMAIN: "cf:domain";
|
|
54
|
+
readonly BINDING: "cf:binding";
|
|
55
|
+
readonly ROUTE: "cf:route";
|
|
56
|
+
readonly CRON_TRIGGER: "cf:cron-trigger";
|
|
57
|
+
readonly ZONE: "cf:zone";
|
|
58
|
+
readonly EXECUTABLE: "afs:executable";
|
|
59
|
+
readonly NODE: "afs:node";
|
|
60
|
+
};
|
|
61
|
+
//#endregion
|
|
62
|
+
export { ACCESS_MODES, type AFSAccessMode$1 as AFSAccessMode, AFSCloudflareConfig, AFSCloudflareConfigSchema, type AFSEntry$1 as AFSEntry, type AFSExecResult$1 as AFSExecResult, type AFSListOptions, type AFSListResult$1 as AFSListResult, type AFSModule, type AFSReadOptions, type AFSReadResult, type AFSWriteResult$1 as AFSWriteResult, AccessMode, BY_ZONE_PREFIX, KINDS, KV_PREFIX, NormalizedConfig, PAGES_PREFIX, WORKERS_PREFIX, normalizeConfig };
|
|
63
|
+
//# sourceMappingURL=types.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.mts","names":[],"sources":["../src/types.ts"],"mappings":";;;;cAGa,YAAA;AAAA,KACD,UAAA,WAAqB,YAAA;AAAA,cAGpB,yBAAA,EAAyB,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;KAY1B,mBAAA,GAAsB,CAAA,CAAE,KAAA,QAAa,yBAAA;AAAA,UAGhC,gBAAA;EACf,IAAA;EACA,WAAA;EACA,UAAA,EAAY,UAAA;EACZ,SAAA;EACA,QAAA;EACA,QAAA;EACA,aAAA;AAAA;AAAA,iBAGc,eAAA,CACd,MAAA,EAAQ,CAAA,CAAE,MAAA,QAAc,yBAAA,IACvB,gBAAA;AAAA,cAaU,cAAA;AAAA,cACA,SAAA;AAAA,cACA,YAAA;AAAA,cACA,cAAA;AAAA,cAGA,KAAA;EAAA"}
|
package/dist/types.mjs
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
//#region src/types.ts
|
|
4
|
+
const ACCESS_MODES = ["readonly", "readwrite"];
|
|
5
|
+
const AFSCloudflareConfigSchema = z.object({
|
|
6
|
+
name: z.string().min(1).max(128).default("cloudflare"),
|
|
7
|
+
description: z.string().max(1024).optional(),
|
|
8
|
+
accessMode: z.enum(ACCESS_MODES).default("readonly"),
|
|
9
|
+
accountId: z.string().optional(),
|
|
10
|
+
apiToken: z.string().optional(),
|
|
11
|
+
cacheTtl: z.number().int().min(0).max(86400).default(30),
|
|
12
|
+
cacheDisabled: z.boolean().default(false)
|
|
13
|
+
}).strict();
|
|
14
|
+
function normalizeConfig(config) {
|
|
15
|
+
return {
|
|
16
|
+
name: config.name,
|
|
17
|
+
description: config.description,
|
|
18
|
+
accessMode: config.accessMode,
|
|
19
|
+
accountId: config.accountId,
|
|
20
|
+
apiToken: config.apiToken,
|
|
21
|
+
cacheTtl: config.cacheTtl,
|
|
22
|
+
cacheDisabled: config.cacheDisabled
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
const WORKERS_PREFIX = "/workers";
|
|
26
|
+
const KV_PREFIX = "/kv";
|
|
27
|
+
const PAGES_PREFIX = "/pages";
|
|
28
|
+
const BY_ZONE_PREFIX = "/by-zone";
|
|
29
|
+
const KINDS = {
|
|
30
|
+
WORKER: "cf:worker",
|
|
31
|
+
KV_NAMESPACE: "cf:kv-namespace",
|
|
32
|
+
KV_KEY: "cf:kv-key",
|
|
33
|
+
PAGES_PROJECT: "cf:pages-project",
|
|
34
|
+
DEPLOYMENT: "cf:deployment",
|
|
35
|
+
DOMAIN: "cf:domain",
|
|
36
|
+
BINDING: "cf:binding",
|
|
37
|
+
ROUTE: "cf:route",
|
|
38
|
+
CRON_TRIGGER: "cf:cron-trigger",
|
|
39
|
+
ZONE: "cf:zone",
|
|
40
|
+
EXECUTABLE: "afs:executable",
|
|
41
|
+
NODE: "afs:node"
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
//#endregion
|
|
45
|
+
export { ACCESS_MODES, AFSCloudflareConfigSchema, BY_ZONE_PREFIX, KINDS, KV_PREFIX, PAGES_PREFIX, WORKERS_PREFIX, normalizeConfig };
|
|
46
|
+
//# sourceMappingURL=types.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.mjs","names":[],"sources":["../src/types.ts"],"sourcesContent":["import { z } from \"zod\";\n\n// Access modes\nexport const ACCESS_MODES = [\"readonly\", \"readwrite\"] as const;\nexport type AccessMode = (typeof ACCESS_MODES)[number];\n\n// Main Cloudflare provider configuration schema\nexport const AFSCloudflareConfigSchema = z\n .object({\n name: z.string().min(1).max(128).default(\"cloudflare\"),\n description: z.string().max(1024).optional(),\n accessMode: z.enum(ACCESS_MODES).default(\"readonly\"),\n accountId: z.string().optional(),\n apiToken: z.string().optional(),\n cacheTtl: z.number().int().min(0).max(86400).default(30),\n cacheDisabled: z.boolean().default(false),\n })\n .strict();\n\nexport type AFSCloudflareConfig = z.input<typeof AFSCloudflareConfigSchema>;\n\n// Normalized config after processing\nexport interface NormalizedConfig {\n name: string;\n description?: string;\n accessMode: AccessMode;\n accountId?: string;\n apiToken?: string;\n cacheTtl: number;\n cacheDisabled: boolean;\n}\n\nexport function normalizeConfig(\n config: z.output<typeof AFSCloudflareConfigSchema>,\n): NormalizedConfig {\n return {\n name: config.name,\n description: config.description,\n accessMode: config.accessMode,\n accountId: config.accountId,\n apiToken: config.apiToken,\n cacheTtl: config.cacheTtl,\n cacheDisabled: config.cacheDisabled,\n };\n}\n\n// Path prefix constants\nexport const WORKERS_PREFIX = \"/workers\";\nexport const KV_PREFIX = \"/kv\";\nexport const PAGES_PREFIX = \"/pages\";\nexport const BY_ZONE_PREFIX = \"/by-zone\";\n\n// Kind constants\nexport const KINDS = {\n WORKER: \"cf:worker\",\n KV_NAMESPACE: \"cf:kv-namespace\",\n KV_KEY: \"cf:kv-key\",\n PAGES_PROJECT: \"cf:pages-project\",\n DEPLOYMENT: \"cf:deployment\",\n DOMAIN: \"cf:domain\",\n BINDING: \"cf:binding\",\n ROUTE: \"cf:route\",\n CRON_TRIGGER: \"cf:cron-trigger\",\n ZONE: \"cf:zone\",\n EXECUTABLE: \"afs:executable\",\n NODE: \"afs:node\",\n} as const;\n\n// Re-export core AFS types\nexport type {\n AFSAccessMode,\n AFSEntry,\n AFSExecResult,\n AFSListOptions,\n AFSListResult,\n AFSModule,\n AFSReadOptions,\n AFSReadResult,\n AFSWriteResult,\n} from \"@aigne/afs\";\n"],"mappings":";;;AAGA,MAAa,eAAe,CAAC,YAAY,YAAY;AAIrD,MAAa,4BAA4B,EACtC,OAAO;CACN,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,aAAa;CACtD,aAAa,EAAE,QAAQ,CAAC,IAAI,KAAK,CAAC,UAAU;CAC5C,YAAY,EAAE,KAAK,aAAa,CAAC,QAAQ,WAAW;CACpD,WAAW,EAAE,QAAQ,CAAC,UAAU;CAChC,UAAU,EAAE,QAAQ,CAAC,UAAU;CAC/B,UAAU,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,MAAM,CAAC,QAAQ,GAAG;CACxD,eAAe,EAAE,SAAS,CAAC,QAAQ,MAAM;CAC1C,CAAC,CACD,QAAQ;AAeX,SAAgB,gBACd,QACkB;AAClB,QAAO;EACL,MAAM,OAAO;EACb,aAAa,OAAO;EACpB,YAAY,OAAO;EACnB,WAAW,OAAO;EAClB,UAAU,OAAO;EACjB,UAAU,OAAO;EACjB,eAAe,OAAO;EACvB;;AAIH,MAAa,iBAAiB;AAC9B,MAAa,YAAY;AACzB,MAAa,eAAe;AAC5B,MAAa,iBAAiB;AAG9B,MAAa,QAAQ;CACnB,QAAQ;CACR,cAAc;CACd,QAAQ;CACR,eAAe;CACf,YAAY;CACZ,QAAQ;CACR,SAAS;CACT,OAAO;CACP,cAAc;CACd,MAAM;CACN,YAAY;CACZ,MAAM;CACP"}
|
package/package.json
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@aigne/afs-cloudflare",
|
|
3
|
+
"version": "1.11.0-beta.7",
|
|
4
|
+
"description": "AIGNE AFS module for Cloudflare Developer Platform resources",
|
|
5
|
+
"license": "UNLICENSED",
|
|
6
|
+
"publishConfig": {
|
|
7
|
+
"access": "public"
|
|
8
|
+
},
|
|
9
|
+
"author": "Arcblock <blocklet@arcblock.io> https://github.com/arcblock",
|
|
10
|
+
"homepage": "https://github.com/arcblock/afs",
|
|
11
|
+
"repository": {
|
|
12
|
+
"type": "git",
|
|
13
|
+
"url": "git+https://github.com/arcblock/afs"
|
|
14
|
+
},
|
|
15
|
+
"bugs": {
|
|
16
|
+
"url": "https://github.com/arcblock/afs/issues"
|
|
17
|
+
},
|
|
18
|
+
"type": "module",
|
|
19
|
+
"main": "./dist/index.cjs",
|
|
20
|
+
"module": "./dist/index.mjs",
|
|
21
|
+
"types": "./dist/index.d.cts",
|
|
22
|
+
"exports": {
|
|
23
|
+
".": {
|
|
24
|
+
"require": "./dist/index.cjs",
|
|
25
|
+
"import": "./dist/index.mjs"
|
|
26
|
+
},
|
|
27
|
+
"./*": "./*"
|
|
28
|
+
},
|
|
29
|
+
"files": [
|
|
30
|
+
"dist",
|
|
31
|
+
"LICENSE",
|
|
32
|
+
"README.md",
|
|
33
|
+
"CHANGELOG.md"
|
|
34
|
+
],
|
|
35
|
+
"dependencies": {
|
|
36
|
+
"blake3-wasm": "^2.1.5",
|
|
37
|
+
"cloudflare": "^4.4.0",
|
|
38
|
+
"minimatch": "^10.1.1",
|
|
39
|
+
"ufo": "^1.6.3",
|
|
40
|
+
"zod": "^3.25.67",
|
|
41
|
+
"@aigne/afs": "^1.11.0-beta.7"
|
|
42
|
+
},
|
|
43
|
+
"devDependencies": {
|
|
44
|
+
"@types/bun": "^1.3.6",
|
|
45
|
+
"miniflare": "^4.0.0",
|
|
46
|
+
"npm-run-all": "^4.1.5",
|
|
47
|
+
"rimraf": "^6.1.2",
|
|
48
|
+
"tsdown": "0.20.0-beta.3",
|
|
49
|
+
"typescript": "5.9.2",
|
|
50
|
+
"@aigne/afs-testing": "1.11.0-beta.7",
|
|
51
|
+
"@aigne/scripts": "0.0.0",
|
|
52
|
+
"@aigne/typescript-config": "0.0.0"
|
|
53
|
+
},
|
|
54
|
+
"scripts": {
|
|
55
|
+
"build": "tsdown",
|
|
56
|
+
"check-types": "tsc --noEmit",
|
|
57
|
+
"clean": "rimraf dist coverage",
|
|
58
|
+
"test": "bun test",
|
|
59
|
+
"test:coverage": "bun test --coverage --coverage-reporter=lcov --coverage-reporter=text"
|
|
60
|
+
}
|
|
61
|
+
}
|