create-cloudflare 2.73.1 → 2.73.3
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/dist/cli.js +214 -21
- package/package.json +7 -7
- package/templates/svelte/pages/c3.ts +1 -1
package/dist/cli.js
CHANGED
|
@@ -92534,7 +92534,7 @@ function formatZodError(error51) {
|
|
|
92534
92534
|
}
|
|
92535
92535
|
__name(formatZodError, "formatZodError");
|
|
92536
92536
|
|
|
92537
|
-
// ../workers-utils/dist/chunk-
|
|
92537
|
+
// ../workers-utils/dist/chunk-TAK63GWY.mjs
|
|
92538
92538
|
var import_node_module6 = require("node:module");
|
|
92539
92539
|
|
|
92540
92540
|
// ../workers-utils/dist/chunk-M3RITKR3.mjs
|
|
@@ -92583,7 +92583,7 @@ function dedent(templ) {
|
|
|
92583
92583
|
__name(dedent, "dedent");
|
|
92584
92584
|
var esm_default = dedent;
|
|
92585
92585
|
|
|
92586
|
-
// ../workers-utils/dist/chunk-
|
|
92586
|
+
// ../workers-utils/dist/chunk-TAK63GWY.mjs
|
|
92587
92587
|
init_chunk_U6NEESU5();
|
|
92588
92588
|
var import_node_fs = require("node:fs");
|
|
92589
92589
|
var import_node_path = __toESM(require("node:path"), 1);
|
|
@@ -95581,12 +95581,23 @@ function findRedirectedWranglerConfig(cwd, userConfigPath) {
|
|
|
95581
95581
|
);
|
|
95582
95582
|
}
|
|
95583
95583
|
if (userConfigPath) {
|
|
95584
|
-
|
|
95584
|
+
const expectedDeployConfigPath = import_node_path.default.join(
|
|
95585
|
+
import_node_path.default.dirname(userConfigPath),
|
|
95586
|
+
PATH_TO_DEPLOY_CONFIG
|
|
95587
|
+
);
|
|
95588
|
+
if (expectedDeployConfigPath !== deployConfigPath) {
|
|
95585
95589
|
throw new UserError(
|
|
95586
95590
|
esm_default`
|
|
95587
95591
|
Found both a user configuration file at "${import_node_path.default.relative(".", userConfigPath)}"
|
|
95588
95592
|
and a deploy configuration file at "${import_node_path.default.relative(".", deployConfigPath)}".
|
|
95589
95593
|
But these do not share the same base path so it is not clear which should be used.
|
|
95594
|
+
|
|
95595
|
+
A deploy configuration file is generated by a build tool to redirect Wrangler to the configuration it generated.
|
|
95596
|
+
It is only applied when it sits alongside the user configuration file, which here would be "${import_node_path.default.relative(".", expectedDeployConfigPath)}".
|
|
95597
|
+
|
|
95598
|
+
Please either delete "${import_node_path.default.relative(".", deployConfigPath)}" if it is left over from a previous build,
|
|
95599
|
+
or try running this command from the directory containing the configuration you want to use.
|
|
95600
|
+
See https://developers.cloudflare.com/workers/wrangler/configuration/#generated-wrangler-configuration
|
|
95590
95601
|
`,
|
|
95591
95602
|
{ telemetryMessage: false }
|
|
95592
95603
|
);
|
|
@@ -98629,11 +98640,13 @@ var defaultWranglerConfig = {
|
|
|
98629
98640
|
containers: void 0,
|
|
98630
98641
|
send_email: [],
|
|
98631
98642
|
browser: void 0,
|
|
98643
|
+
analytics: void 0,
|
|
98632
98644
|
unsafe: {},
|
|
98633
98645
|
mtls_certificates: [],
|
|
98634
98646
|
tail_consumers: void 0,
|
|
98635
98647
|
streaming_tail_consumers: void 0,
|
|
98636
98648
|
pipelines: [],
|
|
98649
|
+
k2: [],
|
|
98637
98650
|
vpc_services: [],
|
|
98638
98651
|
vpc_networks: []
|
|
98639
98652
|
};
|
|
@@ -99074,6 +99087,7 @@ var friendlyBindingNames = {
|
|
|
99074
99087
|
analytics_engine_datasets: "Analytics Engine Dataset",
|
|
99075
99088
|
text_blobs: "Text Blob",
|
|
99076
99089
|
browser: "Browser Run",
|
|
99090
|
+
analytics: "Analytics SQL",
|
|
99077
99091
|
ai: "AI",
|
|
99078
99092
|
images: "Images",
|
|
99079
99093
|
stream: "Stream",
|
|
@@ -99086,6 +99100,7 @@ var friendlyBindingNames = {
|
|
|
99086
99100
|
mtls_certificates: "mTLS Certificate",
|
|
99087
99101
|
workflows: "Workflow",
|
|
99088
99102
|
pipelines: "Pipeline",
|
|
99103
|
+
k2: "K2 Stream",
|
|
99089
99104
|
secrets_store_secrets: "Secrets Store Secret",
|
|
99090
99105
|
artifacts: "Artifacts",
|
|
99091
99106
|
ratelimits: "Rate Limit",
|
|
@@ -99106,6 +99121,7 @@ var bindingTypeFriendlyNames = {
|
|
|
99106
99121
|
wasm_module: "Wasm Module",
|
|
99107
99122
|
text_blob: "Text Blob",
|
|
99108
99123
|
browser: "Browser Run",
|
|
99124
|
+
analytics: "Analytics SQL",
|
|
99109
99125
|
ai: "AI",
|
|
99110
99126
|
images: "Images",
|
|
99111
99127
|
stream: "Stream",
|
|
@@ -99127,6 +99143,7 @@ var bindingTypeFriendlyNames = {
|
|
|
99127
99143
|
dispatch_namespace: "Dispatch Namespace",
|
|
99128
99144
|
mtls_certificate: "mTLS Certificate",
|
|
99129
99145
|
pipeline: "Pipeline",
|
|
99146
|
+
k2: "K2 Stream",
|
|
99130
99147
|
secrets_store_secret: "Secrets Store Secret",
|
|
99131
99148
|
artifacts: "Artifacts",
|
|
99132
99149
|
logfwdr: "logfwdr",
|
|
@@ -100494,6 +100511,16 @@ function normalizeAndValidateEnvironment(diagnostics, configPath, rawEnv, isDisp
|
|
|
100494
100511
|
validateNamedSimpleBinding(envName),
|
|
100495
100512
|
void 0
|
|
100496
100513
|
),
|
|
100514
|
+
analytics: notInheritable(
|
|
100515
|
+
diagnostics,
|
|
100516
|
+
topLevelEnv,
|
|
100517
|
+
rawConfig,
|
|
100518
|
+
rawEnv,
|
|
100519
|
+
envName,
|
|
100520
|
+
"analytics",
|
|
100521
|
+
validateNamedSimpleBinding(envName),
|
|
100522
|
+
void 0
|
|
100523
|
+
),
|
|
100497
100524
|
ai: notInheritable(
|
|
100498
100525
|
diagnostics,
|
|
100499
100526
|
topLevelEnv,
|
|
@@ -100544,6 +100571,16 @@ function normalizeAndValidateEnvironment(diagnostics, configPath, rawEnv, isDisp
|
|
|
100544
100571
|
validateBindingArray(envName, validatePipelineBinding),
|
|
100545
100572
|
[]
|
|
100546
100573
|
),
|
|
100574
|
+
k2: notInheritable(
|
|
100575
|
+
diagnostics,
|
|
100576
|
+
topLevelEnv,
|
|
100577
|
+
rawConfig,
|
|
100578
|
+
rawEnv,
|
|
100579
|
+
envName,
|
|
100580
|
+
"k2",
|
|
100581
|
+
validateBindingArray(envName, validateK2Binding),
|
|
100582
|
+
[]
|
|
100583
|
+
),
|
|
100547
100584
|
secrets_store_secrets: notInheritable(
|
|
100548
100585
|
diagnostics,
|
|
100549
100586
|
topLevelEnv,
|
|
@@ -101645,6 +101682,13 @@ var validateAssetsConfig = /* @__PURE__ */ __name((diagnostics, field, value) =>
|
|
|
101645
101682
|
"string",
|
|
101646
101683
|
["single-page-application", "404-page", "none"]
|
|
101647
101684
|
) && isValid;
|
|
101685
|
+
isValid = validateOptionalProperty(
|
|
101686
|
+
diagnostics,
|
|
101687
|
+
field,
|
|
101688
|
+
"base_path",
|
|
101689
|
+
value.base_path,
|
|
101690
|
+
"string"
|
|
101691
|
+
) && isValid;
|
|
101648
101692
|
if (value.run_worker_first !== void 0) {
|
|
101649
101693
|
if (typeof value.run_worker_first === "boolean") {
|
|
101650
101694
|
isValid = validateOptionalProperty(
|
|
@@ -101675,6 +101719,7 @@ var validateAssetsConfig = /* @__PURE__ */ __name((diagnostics, field, value) =>
|
|
|
101675
101719
|
"binding",
|
|
101676
101720
|
"html_handling",
|
|
101677
101721
|
"not_found_handling",
|
|
101722
|
+
"base_path",
|
|
101678
101723
|
"run_worker_first"
|
|
101679
101724
|
]) && isValid;
|
|
101680
101725
|
return isValid;
|
|
@@ -101761,6 +101806,7 @@ var validateUnsafeBinding = /* @__PURE__ */ __name((diagnostics, field, value) =
|
|
|
101761
101806
|
"data_blob",
|
|
101762
101807
|
"text_blob",
|
|
101763
101808
|
"browser",
|
|
101809
|
+
"analytics",
|
|
101764
101810
|
"ai",
|
|
101765
101811
|
"ai_search_namespace",
|
|
101766
101812
|
"ai_search",
|
|
@@ -101773,6 +101819,7 @@ var validateUnsafeBinding = /* @__PURE__ */ __name((diagnostics, field, value) =
|
|
|
101773
101819
|
"logfwdr",
|
|
101774
101820
|
"mtls_certificate",
|
|
101775
101821
|
"pipeline",
|
|
101822
|
+
"k2",
|
|
101776
101823
|
"worker_loader",
|
|
101777
101824
|
"vpc_service",
|
|
101778
101825
|
"flagship",
|
|
@@ -102429,9 +102476,9 @@ function validateContainerApp(envName, topLevelName, configPath, options = {}) {
|
|
|
102429
102476
|
constraints.jurisdiction,
|
|
102430
102477
|
"string"
|
|
102431
102478
|
);
|
|
102432
|
-
if (constraints.jurisdiction && !["eu", "fedramp"].includes(constraints.jurisdiction)) {
|
|
102479
|
+
if (constraints.jurisdiction && !["eu", "fedramp", "us"].includes(constraints.jurisdiction)) {
|
|
102433
102480
|
diagnostics.errors.push(
|
|
102434
|
-
`${field}.constraints.jurisdiction must be one of: "eu", "fedramp"`
|
|
102481
|
+
`${field}.constraints.jurisdiction must be one of: "eu", "fedramp", "us"`
|
|
102435
102482
|
);
|
|
102436
102483
|
}
|
|
102437
102484
|
if (validateOptionalTypedArray(
|
|
@@ -103724,6 +103771,38 @@ var validatePipelineBinding = /* @__PURE__ */ __name((diagnostics, field, value)
|
|
|
103724
103771
|
]);
|
|
103725
103772
|
return isValid;
|
|
103726
103773
|
}, "validatePipelineBinding");
|
|
103774
|
+
var validateK2Binding = /* @__PURE__ */ __name((diagnostics, field, value) => {
|
|
103775
|
+
if (typeof value !== "object" || value === null || Array.isArray(value)) {
|
|
103776
|
+
diagnostics.errors.push(
|
|
103777
|
+
`"${field}" bindings should be objects, but got ${JSON.stringify(value)}`
|
|
103778
|
+
);
|
|
103779
|
+
return false;
|
|
103780
|
+
}
|
|
103781
|
+
let isValid = true;
|
|
103782
|
+
if (!isRequiredProperty(value, "binding", "string")) {
|
|
103783
|
+
diagnostics.errors.push(`"${field}" must have a string "binding" field.`);
|
|
103784
|
+
isValid = false;
|
|
103785
|
+
}
|
|
103786
|
+
if (!isRequiredProperty(value, "stream", "string")) {
|
|
103787
|
+
diagnostics.errors.push(`"${field}" must have a string "stream" field.`);
|
|
103788
|
+
isValid = false;
|
|
103789
|
+
}
|
|
103790
|
+
if (!isRemoteValid(value, field, diagnostics)) {
|
|
103791
|
+
isValid = false;
|
|
103792
|
+
}
|
|
103793
|
+
if ("remote" in value && value.remote === false) {
|
|
103794
|
+
diagnostics.errors.push(
|
|
103795
|
+
`"${field}" does not support \`remote: false\`. K2 bindings always access remote resources; omit "remote" or set \`remote: true\`.`
|
|
103796
|
+
);
|
|
103797
|
+
isValid = false;
|
|
103798
|
+
}
|
|
103799
|
+
validateAdditionalProperties(diagnostics, field, Object.keys(value), [
|
|
103800
|
+
"binding",
|
|
103801
|
+
"stream",
|
|
103802
|
+
"remote"
|
|
103803
|
+
]);
|
|
103804
|
+
return isValid;
|
|
103805
|
+
}, "validateK2Binding");
|
|
103727
103806
|
var validateSecretsStoreSecretBinding = /* @__PURE__ */ __name((diagnostics, field, value) => {
|
|
103728
103807
|
if (typeof value !== "object" || value === null) {
|
|
103729
103808
|
diagnostics.errors.push(
|
|
@@ -104014,11 +104093,13 @@ var validatePreviewsConfig = /* @__PURE__ */ __name((envName, configPath) => (di
|
|
|
104014
104093
|
"streaming_tail_consumers",
|
|
104015
104094
|
"unsafe",
|
|
104016
104095
|
"browser",
|
|
104096
|
+
"analytics",
|
|
104017
104097
|
"ai",
|
|
104018
104098
|
"images",
|
|
104019
104099
|
"stream",
|
|
104020
104100
|
"media",
|
|
104021
104101
|
"pipelines",
|
|
104102
|
+
"k2",
|
|
104022
104103
|
"secrets_store_secrets",
|
|
104023
104104
|
"artifacts",
|
|
104024
104105
|
"unsafe_hello_world",
|
|
@@ -104168,6 +104249,14 @@ var validatePreviewsConfig = /* @__PURE__ */ __name((envName, configPath) => (di
|
|
|
104168
104249
|
void 0
|
|
104169
104250
|
) && isValid;
|
|
104170
104251
|
}
|
|
104252
|
+
if (previews.analytics !== void 0) {
|
|
104253
|
+
isValid = validateNamedSimpleBinding(envName)(
|
|
104254
|
+
diagnostics,
|
|
104255
|
+
`${field}.analytics`,
|
|
104256
|
+
previews.analytics,
|
|
104257
|
+
void 0
|
|
104258
|
+
) && isValid;
|
|
104259
|
+
}
|
|
104171
104260
|
if (previews.ai !== void 0) {
|
|
104172
104261
|
isValid = validateAIBinding(envName)(
|
|
104173
104262
|
diagnostics,
|
|
@@ -104212,6 +104301,12 @@ var validatePreviewsConfig = /* @__PURE__ */ __name((envName, configPath) => (di
|
|
|
104212
104301
|
previews.secrets_store_secrets,
|
|
104213
104302
|
void 0
|
|
104214
104303
|
) && isValid;
|
|
104304
|
+
isValid = validateBindingArray(envName, validateK2Binding)(
|
|
104305
|
+
diagnostics,
|
|
104306
|
+
`${field}.k2`,
|
|
104307
|
+
previews.k2,
|
|
104308
|
+
void 0
|
|
104309
|
+
) && isValid;
|
|
104215
104310
|
isValid = validateBindingArray(envName, validateArtifactsBinding)(
|
|
104216
104311
|
diagnostics,
|
|
104217
104312
|
`${field}.artifacts`,
|
|
@@ -105348,6 +105443,7 @@ var BINDING_LOCAL_SUPPORT = {
|
|
|
105348
105443
|
mtls_certificate: "remote",
|
|
105349
105444
|
dispatch_namespace: "remote",
|
|
105350
105445
|
// Reach out to the @cloudflare/wrangler team before adding anything here
|
|
105446
|
+
k2: "DO-NOT-USE-this-resource-will-never-have-a-local-simulator",
|
|
105351
105447
|
ai: "DO-NOT-USE-this-resource-will-never-have-a-local-simulator",
|
|
105352
105448
|
ai_search: "DO-NOT-USE-this-resource-will-never-have-a-local-simulator",
|
|
105353
105449
|
ai_search_namespace: "DO-NOT-USE-this-resource-will-never-have-a-local-simulator",
|
|
@@ -105355,7 +105451,8 @@ var BINDING_LOCAL_SUPPORT = {
|
|
|
105355
105451
|
artifacts: "DO-NOT-USE-this-resource-will-never-have-a-local-simulator",
|
|
105356
105452
|
vpc_service: "DO-NOT-USE-this-resource-will-never-have-a-local-simulator",
|
|
105357
105453
|
vpc_network: "DO-NOT-USE-this-resource-will-never-have-a-local-simulator",
|
|
105358
|
-
agent_memory: "DO-NOT-USE-this-resource-will-never-have-a-local-simulator"
|
|
105454
|
+
agent_memory: "DO-NOT-USE-this-resource-will-never-have-a-local-simulator",
|
|
105455
|
+
analytics: "DO-NOT-USE-this-resource-will-never-have-a-local-simulator"
|
|
105359
105456
|
};
|
|
105360
105457
|
function getBindingLocalSupport(type) {
|
|
105361
105458
|
if (type in BINDING_LOCAL_SUPPORT) {
|
|
@@ -105686,6 +105783,13 @@ function mapWorkerMetadataBindings(bindings) {
|
|
|
105686
105783
|
};
|
|
105687
105784
|
}
|
|
105688
105785
|
break;
|
|
105786
|
+
case "analytics":
|
|
105787
|
+
{
|
|
105788
|
+
configObj.analytics = {
|
|
105789
|
+
binding: binding.name
|
|
105790
|
+
};
|
|
105791
|
+
}
|
|
105792
|
+
break;
|
|
105689
105793
|
case "ai":
|
|
105690
105794
|
{
|
|
105691
105795
|
configObj.ai = {
|
|
@@ -105941,6 +106045,12 @@ function mapWorkerMetadataBindings(bindings) {
|
|
|
105941
106045
|
}
|
|
105942
106046
|
];
|
|
105943
106047
|
break;
|
|
106048
|
+
case "k2":
|
|
106049
|
+
configObj.k2 = [
|
|
106050
|
+
...configObj.k2 ?? [],
|
|
106051
|
+
{ binding: binding.name, stream: binding.stream }
|
|
106052
|
+
];
|
|
106053
|
+
break;
|
|
105944
106054
|
case "assets":
|
|
105945
106055
|
configObj.assets = {
|
|
105946
106056
|
binding: binding.name
|
|
@@ -106030,7 +106140,7 @@ function mapWorkerMetadataBindings(bindings) {
|
|
|
106030
106140
|
}, {});
|
|
106031
106141
|
}
|
|
106032
106142
|
__name(mapWorkerMetadataBindings, "mapWorkerMetadataBindings");
|
|
106033
|
-
var DEFAULT_COMPAT_DATE = "2026-
|
|
106143
|
+
var DEFAULT_COMPAT_DATE = "2026-10-06";
|
|
106034
106144
|
function constructWranglerConfig(config50) {
|
|
106035
106145
|
const mappedBindings = mapWorkerMetadataBindings(config50.bindings);
|
|
106036
106146
|
const durableObjectClassNames = config50.bindings.filter(
|
|
@@ -106178,6 +106288,11 @@ function convertConfigToBindings(config50, options) {
|
|
|
106178
106288
|
output[binding] = { type: "browser", ...x };
|
|
106179
106289
|
break;
|
|
106180
106290
|
}
|
|
106291
|
+
case "analytics": {
|
|
106292
|
+
const { binding, ...x } = info;
|
|
106293
|
+
output[binding] = { type: "analytics", ...x };
|
|
106294
|
+
break;
|
|
106295
|
+
}
|
|
106181
106296
|
case "durable_objects": {
|
|
106182
106297
|
for (const { name: name3, ...x } of info.bindings ?? []) {
|
|
106183
106298
|
output[name3] = { type: "durable_object_namespace", ...x };
|
|
@@ -106333,6 +106448,15 @@ function convertConfigToBindings(config50, options) {
|
|
|
106333
106448
|
}
|
|
106334
106449
|
break;
|
|
106335
106450
|
}
|
|
106451
|
+
case "k2": {
|
|
106452
|
+
if (pages) {
|
|
106453
|
+
break;
|
|
106454
|
+
}
|
|
106455
|
+
for (const { binding, ...x } of info) {
|
|
106456
|
+
output[binding] = { type: "k2", ...x };
|
|
106457
|
+
}
|
|
106458
|
+
break;
|
|
106459
|
+
}
|
|
106336
106460
|
case "secrets_store_secrets": {
|
|
106337
106461
|
for (const { binding, ...x } of info) {
|
|
106338
106462
|
output[binding] = { type: "secrets_store_secret", ...x };
|
|
@@ -106490,6 +106614,7 @@ function printBindings(bindings, options) {
|
|
|
106490
106614
|
);
|
|
106491
106615
|
const text_blobs = extractBindingsOfType("text_blob", bindings);
|
|
106492
106616
|
const browser = extractBindingsOfType("browser", bindings);
|
|
106617
|
+
const analytics = extractBindingsOfType("analytics", bindings);
|
|
106493
106618
|
const images = extractBindingsOfType("images", bindings);
|
|
106494
106619
|
const stream = extractBindingsOfType("stream", bindings);
|
|
106495
106620
|
const ai = extractBindingsOfType("ai", bindings);
|
|
@@ -106507,6 +106632,7 @@ function printBindings(bindings, options) {
|
|
|
106507
106632
|
);
|
|
106508
106633
|
const mtls_certificates = extractBindingsOfType("mtls_certificate", bindings);
|
|
106509
106634
|
const pipelines = extractBindingsOfType("pipeline", bindings);
|
|
106635
|
+
const k2 = extractBindingsOfType("k2", bindings);
|
|
106510
106636
|
const ratelimits = extractBindingsOfType("ratelimit", bindings);
|
|
106511
106637
|
const assets = extractBindingsOfType("assets", bindings);
|
|
106512
106638
|
const unsafe_hello_world = extractBindingsOfType(
|
|
@@ -106886,6 +107012,18 @@ function printBindings(bindings, options) {
|
|
|
106886
107012
|
}))
|
|
106887
107013
|
);
|
|
106888
107014
|
}
|
|
107015
|
+
if (analytics.length > 0) {
|
|
107016
|
+
output.push(
|
|
107017
|
+
...analytics.map(({ binding, remote }) => ({
|
|
107018
|
+
name: binding,
|
|
107019
|
+
type: getBindingTypeFriendlyName("analytics"),
|
|
107020
|
+
value: void 0,
|
|
107021
|
+
mode: getMode({
|
|
107022
|
+
isSimulatedLocally: (remote === true || remote === void 0) && !context.remoteBindingsDisabled ? false : void 0
|
|
107023
|
+
})
|
|
107024
|
+
}))
|
|
107025
|
+
);
|
|
107026
|
+
}
|
|
106889
107027
|
if (images.length > 0) {
|
|
106890
107028
|
output.push(
|
|
106891
107029
|
...images.map(({ binding, remote }) => ({
|
|
@@ -106948,6 +107086,19 @@ function printBindings(bindings, options) {
|
|
|
106948
107086
|
)
|
|
106949
107087
|
);
|
|
106950
107088
|
}
|
|
107089
|
+
if (k2.length > 0) {
|
|
107090
|
+
output.push(
|
|
107091
|
+
...k2.map(({ binding, stream: k2Stream }) => ({
|
|
107092
|
+
name: binding,
|
|
107093
|
+
type: getBindingTypeFriendlyName("k2"),
|
|
107094
|
+
value: k2Stream,
|
|
107095
|
+
mode: getMode({
|
|
107096
|
+
// K2 always writes to the real stream; `remote: false` is rejected during validation.
|
|
107097
|
+
isSimulatedLocally: context.remoteBindingsDisabled ? void 0 : false
|
|
107098
|
+
})
|
|
107099
|
+
}))
|
|
107100
|
+
);
|
|
107101
|
+
}
|
|
106951
107102
|
if (ratelimits.length > 0) {
|
|
106952
107103
|
output.push(
|
|
106953
107104
|
...ratelimits.map(({ name: name3, simple }) => ({
|
|
@@ -108250,13 +108401,16 @@ You can try:
|
|
|
108250
108401
|
__name(validateBinary, "validateBinary");
|
|
108251
108402
|
function redactCloudflaredArgsForLogging(args) {
|
|
108252
108403
|
const redacted = [...args];
|
|
108404
|
+
const sensitiveArgs = ["--token", "--allowed-mail"];
|
|
108253
108405
|
for (let i = 0; i < redacted.length; i++) {
|
|
108254
108406
|
const arg = redacted[i];
|
|
108255
|
-
|
|
108256
|
-
|
|
108257
|
-
|
|
108258
|
-
|
|
108259
|
-
|
|
108407
|
+
for (const sensitiveArg of sensitiveArgs) {
|
|
108408
|
+
if (arg === sensitiveArg && i + 1 < redacted.length) {
|
|
108409
|
+
redacted[i + 1] = "[REDACTED]";
|
|
108410
|
+
}
|
|
108411
|
+
if (arg.startsWith(`${sensitiveArg}=`)) {
|
|
108412
|
+
redacted[i] = `${sensitiveArg}=[REDACTED]`;
|
|
108413
|
+
}
|
|
108260
108414
|
}
|
|
108261
108415
|
}
|
|
108262
108416
|
return redacted;
|
|
@@ -108535,6 +108689,27 @@ async function spawnCloudflared(args, options) {
|
|
|
108535
108689
|
confirmDownload: options?.confirmDownload,
|
|
108536
108690
|
logger
|
|
108537
108691
|
});
|
|
108692
|
+
if (args.some(
|
|
108693
|
+
(arg) => arg === "--allowed-mail" || arg.startsWith("--allowed-mail=")
|
|
108694
|
+
)) {
|
|
108695
|
+
const minimumVersion = "2026.9.2";
|
|
108696
|
+
const installedVersion = getInstalledVersion(binPath);
|
|
108697
|
+
if (!installedVersion || isVersionOutdated(installedVersion, minimumVersion)) {
|
|
108698
|
+
throw new UserError(
|
|
108699
|
+
`[cloudflared] --allowed-mail requires cloudflared ${minimumVersion} or later.
|
|
108700
|
+
|
|
108701
|
+
` + (installedVersion ? `The selected binary (${binPath}) is version ${installedVersion}.
|
|
108702
|
+
|
|
108703
|
+
` : `Could not determine the version of the selected binary (${binPath}).
|
|
108704
|
+
|
|
108705
|
+
`) + `Update cloudflared in your PATH or set CLOUDFLARED_PATH to a compatible binary.
|
|
108706
|
+
Download instructions: https://developers.cloudflare.com/cloudflare-one/networks/connectors/cloudflare-tunnel/downloads/`,
|
|
108707
|
+
{
|
|
108708
|
+
telemetryMessage: "tunnel cloudflared allowed mail unsupported version"
|
|
108709
|
+
}
|
|
108710
|
+
);
|
|
108711
|
+
}
|
|
108712
|
+
}
|
|
108538
108713
|
logger?.debug(
|
|
108539
108714
|
`Spawning cloudflared: ${binPath} ${redactCloudflaredArgsForLogging(args).join(" ")}`
|
|
108540
108715
|
);
|
|
@@ -108714,10 +108889,25 @@ function startTunnel(options) {
|
|
|
108714
108889
|
const reminderIntervalMs = options.reminderIntervalMs ?? DEFAULT_TUNNEL_REMINDER_INTERVAL_MS;
|
|
108715
108890
|
const defaultExpiryMs = options.expiryMs ?? DEFAULT_TUNNEL_EXPIRY_MS;
|
|
108716
108891
|
const isNamedTunnel = options.token !== void 0;
|
|
108892
|
+
if (isNamedTunnel && (options.allowedMail?.length ?? 0) > 0) {
|
|
108893
|
+
throw new UserError(
|
|
108894
|
+
"The `allowedMail` option is only supported for Quick Tunnels.",
|
|
108895
|
+
{ telemetryMessage: "tunnel allowed mail named tunnel conflict" }
|
|
108896
|
+
);
|
|
108897
|
+
}
|
|
108717
108898
|
const timeFormatter = new Intl.DateTimeFormat(void 0, {
|
|
108718
108899
|
timeStyle: "short"
|
|
108719
108900
|
});
|
|
108720
|
-
const cloudflaredArgs = isNamedTunnel ? ["tunnel", "--no-autoupdate", "run"] : [
|
|
108901
|
+
const cloudflaredArgs = isNamedTunnel ? ["tunnel", "--no-autoupdate", "run"] : [
|
|
108902
|
+
"tunnel",
|
|
108903
|
+
"--no-autoupdate",
|
|
108904
|
+
"--url",
|
|
108905
|
+
options.origin.href,
|
|
108906
|
+
...(options.allowedMail ?? []).flatMap((allowedMail) => [
|
|
108907
|
+
"--allowed-mail",
|
|
108908
|
+
allowedMail
|
|
108909
|
+
])
|
|
108910
|
+
];
|
|
108721
108911
|
const cloudflaredPromise = spawnCloudflared(cloudflaredArgs, {
|
|
108722
108912
|
stdio: "pipe",
|
|
108723
108913
|
env: options.token ? { TUNNEL_TOKEN: options.token } : void 0,
|
|
@@ -114190,7 +114380,7 @@ var Yargs = YargsFactory(esm_default2);
|
|
|
114190
114380
|
var yargs_default = Yargs;
|
|
114191
114381
|
|
|
114192
114382
|
// package.json
|
|
114193
|
-
var version2 = "2.73.
|
|
114383
|
+
var version2 = "2.73.3";
|
|
114194
114384
|
|
|
114195
114385
|
// src/metrics.ts
|
|
114196
114386
|
var import_node_async_hooks = require("node:async_hooks");
|
|
@@ -116888,13 +117078,13 @@ __name2(getPropertyName, "getPropertyName");
|
|
|
116888
117078
|
var package_default = {
|
|
116889
117079
|
name: "frameworks_clis_info",
|
|
116890
117080
|
dependencies: {
|
|
116891
|
-
"@angular/create": "22.2.
|
|
116892
|
-
"@tanstack/cli": "0.71.
|
|
116893
|
-
"create-analog": "2.
|
|
117081
|
+
"@angular/create": "22.2.1",
|
|
117082
|
+
"@tanstack/cli": "0.71.1",
|
|
117083
|
+
"create-analog": "2.8.0",
|
|
116894
117084
|
"create-astro": "5.2.4",
|
|
116895
117085
|
"create-docusaurus": "3.10.2",
|
|
116896
117086
|
"create-hono": "0.19.5",
|
|
116897
|
-
"create-next-app": "16.3.
|
|
117087
|
+
"create-next-app": "16.3.8",
|
|
116898
117088
|
"create-qwik": "1.20.1",
|
|
116899
117089
|
"create-react-router": "8.4.0",
|
|
116900
117090
|
"create-rwsdk": "3.1.3",
|
|
@@ -116906,7 +117096,7 @@ var package_default = {
|
|
|
116906
117096
|
"create-waku": "0.12.5-1.0.0-alpha.10-0",
|
|
116907
117097
|
gatsby: "5.16.1",
|
|
116908
117098
|
nuxi: "3.37.0",
|
|
116909
|
-
sv: "0.
|
|
117099
|
+
sv: "1.0.1"
|
|
116910
117100
|
},
|
|
116911
117101
|
info: [
|
|
116912
117102
|
"This package.json is only used to keep track of the frameworks cli dependencies",
|
|
@@ -119103,7 +119293,7 @@ var updateTypeDefinitions = (ctx) => {
|
|
|
119103
119293
|
}
|
|
119104
119294
|
});
|
|
119105
119295
|
};
|
|
119106
|
-
var typesPath2 = "src/worker-configuration.d.ts";
|
|
119296
|
+
var typesPath2 = "./src/worker-configuration.d.ts";
|
|
119107
119297
|
var config39 = {
|
|
119108
119298
|
configVersion: 1,
|
|
119109
119299
|
id: "svelte",
|
|
@@ -119601,7 +119791,7 @@ If the application uses Durable Objects or Workflows, refer to the relevant best
|
|
|
119601
119791
|
var import_node_assert7 = __toESM(require("node:assert"));
|
|
119602
119792
|
|
|
119603
119793
|
// ../wrangler/package.json
|
|
119604
|
-
var version3 = "4.
|
|
119794
|
+
var version3 = "4.148.0";
|
|
119605
119795
|
|
|
119606
119796
|
// src/git.ts
|
|
119607
119797
|
var offerGit = async (ctx) => {
|
|
@@ -123303,6 +123493,9 @@ async function updateTsConfig(ctx, { usesNodeCompat }) {
|
|
|
123303
123493
|
}
|
|
123304
123494
|
const currentTypes = config50.compilerOptions?.types ?? [];
|
|
123305
123495
|
let newTypes = new Set(currentTypes);
|
|
123496
|
+
if (config50.extends === "$app/tsconfig") {
|
|
123497
|
+
newTypes.add("$app/types");
|
|
123498
|
+
}
|
|
123306
123499
|
if (ctx.template.workersTypes === "installed") {
|
|
123307
123500
|
const entrypointVersion = getLatestTypesEntrypoint(ctx);
|
|
123308
123501
|
const explicitEntrypoint = currentTypes.some(
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-cloudflare",
|
|
3
|
-
"version": "2.73.
|
|
3
|
+
"version": "2.73.3",
|
|
4
4
|
"description": "A CLI for creating and deploying new applications to Cloudflare.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cloudflare",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"@babel/parser": "^7.21.3",
|
|
32
32
|
"@babel/types": "^7.21.4",
|
|
33
33
|
"@clack/prompts": "^1.2.0",
|
|
34
|
-
"@cloudflare/workers-types": "^5.
|
|
34
|
+
"@cloudflare/workers-types": "^5.20261006.1",
|
|
35
35
|
"@types/command-exists": "^1.2.0",
|
|
36
36
|
"@types/cross-spawn": "^6.0.2",
|
|
37
37
|
"@types/deepmerge": "^2.2.0",
|
|
@@ -70,13 +70,13 @@
|
|
|
70
70
|
"which-pm-runs": "^1.1.0",
|
|
71
71
|
"wrap-ansi": "^9.0.0",
|
|
72
72
|
"yargs": "^17.7.2",
|
|
73
|
-
"@cloudflare/cli-shared-helpers": "0.2.
|
|
74
|
-
"@cloudflare/shared-ast-primitives": "1.1.0",
|
|
73
|
+
"@cloudflare/cli-shared-helpers": "0.2.4",
|
|
75
74
|
"@cloudflare/mock-npm-registry": "0.0.0",
|
|
75
|
+
"@cloudflare/shared-ast-primitives": "1.1.0",
|
|
76
|
+
"@cloudflare/vite-plugin": "1.63.0",
|
|
76
77
|
"@cloudflare/workers-tsconfig": "0.0.0",
|
|
77
|
-
"@cloudflare/
|
|
78
|
-
"
|
|
79
|
-
"wrangler": "4.143.1"
|
|
78
|
+
"@cloudflare/workers-utils": "0.47.0",
|
|
79
|
+
"wrangler": "4.148.0"
|
|
80
80
|
},
|
|
81
81
|
"engines": {
|
|
82
82
|
"node": ">=22.0.0"
|
|
@@ -126,7 +126,7 @@ const updateTypeDefinitions = (ctx: C3Context) => {
|
|
|
126
126
|
});
|
|
127
127
|
};
|
|
128
128
|
|
|
129
|
-
const typesPath = "src/worker-configuration.d.ts";
|
|
129
|
+
const typesPath = "./src/worker-configuration.d.ts";
|
|
130
130
|
const config: TemplateConfig = {
|
|
131
131
|
configVersion: 1,
|
|
132
132
|
id: "svelte",
|