create-cloudflare 0.0.0-ccc19d57 → 0.0.0-d017e9f2

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 CHANGED
@@ -4189,6 +4189,1333 @@ var require_which_pm_runs = __commonJS({
4189
4189
  }
4190
4190
  });
4191
4191
 
4192
+ // ../../node_modules/dns2/lib/reader.js
4193
+ var require_reader = __commonJS({
4194
+ "../../node_modules/dns2/lib/reader.js"(exports, module2) {
4195
+ function BufferReader(buffer, offset) {
4196
+ this.buffer = buffer;
4197
+ this.offset = offset || 0;
4198
+ return this;
4199
+ }
4200
+ BufferReader.read = function(buffer, offset, length) {
4201
+ let a2 = [];
4202
+ let c2 = Math.ceil(length / 8);
4203
+ let l2 = Math.floor(offset / 8);
4204
+ const m2 = offset % 8;
4205
+ function t(n) {
4206
+ const r2 = [0, 0, 0, 0, 0, 0, 0, 0];
4207
+ for (let i = 7; i >= 0; i--) {
4208
+ r2[7 - i] = n & Math.pow(2, i) ? 1 : 0;
4209
+ }
4210
+ a2 = a2.concat(r2);
4211
+ }
4212
+ function p3(a3) {
4213
+ let n = 0;
4214
+ const f2 = a3.length - 1;
4215
+ for (let i = f2; i >= 0; i--) {
4216
+ if (a3[f2 - i])
4217
+ n += Math.pow(2, i);
4218
+ }
4219
+ return n;
4220
+ }
4221
+ while (c2--)
4222
+ t(buffer.readUInt8(l2++));
4223
+ return p3(a2.slice(m2, m2 + length));
4224
+ };
4225
+ BufferReader.prototype.read = function(size) {
4226
+ const val = BufferReader.read(this.buffer, this.offset, size);
4227
+ this.offset += size;
4228
+ return val;
4229
+ };
4230
+ module2.exports = BufferReader;
4231
+ }
4232
+ });
4233
+
4234
+ // ../../node_modules/dns2/lib/writer.js
4235
+ var require_writer = __commonJS({
4236
+ "../../node_modules/dns2/lib/writer.js"(exports, module2) {
4237
+ function BufferWriter() {
4238
+ this.buffer = [];
4239
+ }
4240
+ BufferWriter.prototype.write = function(d3, size) {
4241
+ for (let i = 0; i < size; i++) {
4242
+ this.buffer.push(d3 & Math.pow(2, size - i - 1) ? 1 : 0);
4243
+ }
4244
+ };
4245
+ BufferWriter.prototype.writeBuffer = function(b2) {
4246
+ this.buffer = this.buffer.concat(b2.buffer);
4247
+ };
4248
+ BufferWriter.prototype.toBuffer = function() {
4249
+ const arr = [];
4250
+ for (let i = 0; i < this.buffer.length; i += 8) {
4251
+ const chunk = this.buffer.slice(i, i + 8);
4252
+ arr.push(parseInt(chunk.join(""), 2));
4253
+ }
4254
+ return Buffer.from(arr);
4255
+ };
4256
+ module2.exports = BufferWriter;
4257
+ }
4258
+ });
4259
+
4260
+ // ../../node_modules/dns2/packet.js
4261
+ var require_packet = __commonJS({
4262
+ "../../node_modules/dns2/packet.js"(exports, module2) {
4263
+ var { debuglog } = require("util");
4264
+ var BufferReader = require_reader();
4265
+ var BufferWriter = require_writer();
4266
+ var debug = debuglog("dns2");
4267
+ var toIPv6 = (buffer) => buffer.map((part) => part > 0 ? part.toString(16) : "0").join(":").replace(/\b(?:0+:){1,}/, ":");
4268
+ var fromIPv6 = (address) => {
4269
+ const digits = address.split(":");
4270
+ if (digits[0] === "") {
4271
+ digits.shift();
4272
+ }
4273
+ if (digits[digits.length - 1] === "") {
4274
+ digits.pop();
4275
+ }
4276
+ const missingFields = 8 - digits.length + 1;
4277
+ return digits.flatMap((digit) => {
4278
+ if (digit === "") {
4279
+ return Array(missingFields).fill("0");
4280
+ }
4281
+ return digit.padStart(4, "0");
4282
+ });
4283
+ };
4284
+ function Packet(data) {
4285
+ this.header = {};
4286
+ this.questions = [];
4287
+ this.answers = [];
4288
+ this.authorities = [];
4289
+ this.additionals = [];
4290
+ if (data instanceof Packet) {
4291
+ return data;
4292
+ } else if (data instanceof Packet.Header) {
4293
+ this.header = data;
4294
+ } else if (data instanceof Packet.Question) {
4295
+ this.questions.push(data);
4296
+ } else if (data instanceof Packet.Resource) {
4297
+ this.answers.push(data);
4298
+ } else if (typeof data === "string") {
4299
+ this.questions.push(data);
4300
+ } else if (typeof data === "object") {
4301
+ const type = {}.toString.call(data).match(/\[object (\w+)\]/)[1];
4302
+ if (type === "Array") {
4303
+ this.questions = data;
4304
+ }
4305
+ if (type === "Object") {
4306
+ this.header = data;
4307
+ }
4308
+ }
4309
+ return this;
4310
+ }
4311
+ Packet.TYPE = {
4312
+ A: 1,
4313
+ NS: 2,
4314
+ MD: 3,
4315
+ MF: 4,
4316
+ CNAME: 5,
4317
+ SOA: 6,
4318
+ MB: 7,
4319
+ MG: 8,
4320
+ MR: 9,
4321
+ NULL: 10,
4322
+ WKS: 11,
4323
+ PTR: 12,
4324
+ HINFO: 13,
4325
+ MINFO: 14,
4326
+ MX: 15,
4327
+ TXT: 16,
4328
+ AAAA: 28,
4329
+ SRV: 33,
4330
+ EDNS: 41,
4331
+ SPF: 99,
4332
+ AXFR: 252,
4333
+ MAILB: 253,
4334
+ MAILA: 254,
4335
+ ANY: 255,
4336
+ CAA: 257
4337
+ };
4338
+ Packet.CLASS = {
4339
+ IN: 1,
4340
+ CS: 2,
4341
+ CH: 3,
4342
+ HS: 4,
4343
+ ANY: 255
4344
+ };
4345
+ Packet.EDNS_OPTION_CODE = {
4346
+ ECS: 8
4347
+ };
4348
+ Packet.uuid = function() {
4349
+ return Math.floor(Math.random() * 1e5);
4350
+ };
4351
+ Packet.parse = function(buffer) {
4352
+ const packet = new Packet();
4353
+ const reader = new Packet.Reader(buffer);
4354
+ packet.header = Packet.Header.parse(reader);
4355
+ [
4356
+ // props parser count
4357
+ ["questions", Packet.Question, packet.header.qdcount],
4358
+ ["answers", Packet.Resource, packet.header.ancount],
4359
+ ["authorities", Packet.Resource, packet.header.nscount],
4360
+ ["additionals", Packet.Resource, packet.header.arcount]
4361
+ ].forEach(function(def) {
4362
+ const section = def[0];
4363
+ const decoder = def[1];
4364
+ let count = def[2];
4365
+ while (count--) {
4366
+ try {
4367
+ packet[section] = packet[section] || [];
4368
+ packet[section].push(decoder.parse(reader));
4369
+ } catch (e) {
4370
+ debug("node-dns > parse %s error:", section, e.message);
4371
+ }
4372
+ }
4373
+ });
4374
+ return packet;
4375
+ };
4376
+ Object.defineProperty(Packet.prototype, "recursive", {
4377
+ enumerable: true,
4378
+ configurable: true,
4379
+ get() {
4380
+ return !!this.header.rd;
4381
+ },
4382
+ set(yn) {
4383
+ this.header.rd = +yn;
4384
+ return this.header.rd;
4385
+ }
4386
+ });
4387
+ Packet.prototype.toBuffer = function(writer) {
4388
+ writer = writer || new Packet.Writer();
4389
+ this.header.qdcount = this.questions.length;
4390
+ this.header.ancount = this.answers.length;
4391
+ this.header.nscount = this.authorities.length;
4392
+ this.header.arcount = this.additionals.length;
4393
+ if (!(this instanceof Packet.Header)) {
4394
+ this.header = new Packet.Header(this.header);
4395
+ }
4396
+ this.header.toBuffer(writer);
4397
+ [
4398
+ // section encoder
4399
+ ["questions", Packet.Question],
4400
+ ["answers", Packet.Resource],
4401
+ ["authorities", Packet.Resource],
4402
+ ["additionals", Packet.Resource]
4403
+ ].forEach(function(def) {
4404
+ const section = def[0];
4405
+ const Encoder = def[1];
4406
+ (this[section] || []).map(function(resource) {
4407
+ return Encoder.encode(resource, writer);
4408
+ });
4409
+ }.bind(this));
4410
+ return writer.toBuffer();
4411
+ };
4412
+ Packet.Header = function(header) {
4413
+ this.id = 0;
4414
+ this.qr = 0;
4415
+ this.opcode = 0;
4416
+ this.aa = 0;
4417
+ this.tc = 0;
4418
+ this.rd = 0;
4419
+ this.ra = 0;
4420
+ this.z = 0;
4421
+ this.rcode = 0;
4422
+ this.qdcount = 0;
4423
+ this.nscount = 0;
4424
+ this.arcount = 0;
4425
+ for (const k3 in header) {
4426
+ this[k3] = header[k3];
4427
+ }
4428
+ return this;
4429
+ };
4430
+ Packet.Header.parse = function(reader) {
4431
+ const header = new Packet.Header();
4432
+ if (reader instanceof Buffer) {
4433
+ reader = new Packet.Reader(reader);
4434
+ }
4435
+ header.id = reader.read(16);
4436
+ header.qr = reader.read(1);
4437
+ header.opcode = reader.read(4);
4438
+ header.aa = reader.read(1);
4439
+ header.tc = reader.read(1);
4440
+ header.rd = reader.read(1);
4441
+ header.ra = reader.read(1);
4442
+ header.z = reader.read(3);
4443
+ header.rcode = reader.read(4);
4444
+ header.qdcount = reader.read(16);
4445
+ header.ancount = reader.read(16);
4446
+ header.nscount = reader.read(16);
4447
+ header.arcount = reader.read(16);
4448
+ return header;
4449
+ };
4450
+ Packet.Header.prototype.toBuffer = function(writer) {
4451
+ writer = writer || new Packet.Writer();
4452
+ writer.write(this.id, 16);
4453
+ writer.write(this.qr, 1);
4454
+ writer.write(this.opcode, 4);
4455
+ writer.write(this.aa, 1);
4456
+ writer.write(this.tc, 1);
4457
+ writer.write(this.rd, 1);
4458
+ writer.write(this.ra, 1);
4459
+ writer.write(this.z, 3);
4460
+ writer.write(this.rcode, 4);
4461
+ writer.write(this.qdcount, 16);
4462
+ writer.write(this.ancount, 16);
4463
+ writer.write(this.nscount, 16);
4464
+ writer.write(this.arcount, 16);
4465
+ return writer.toBuffer();
4466
+ };
4467
+ Packet.Question = function(name, type, cls) {
4468
+ const defaults = {
4469
+ type: Packet.TYPE.ANY,
4470
+ class: Packet.CLASS.ANY
4471
+ };
4472
+ if (typeof name === "object") {
4473
+ for (const k3 in name) {
4474
+ this[k3] = name[k3] || defaults[k3];
4475
+ }
4476
+ } else {
4477
+ this.name = name;
4478
+ this.type = type || defaults.type;
4479
+ this.class = cls || defaults.class;
4480
+ }
4481
+ return this;
4482
+ };
4483
+ Packet.Question.prototype.toBuffer = function(writer) {
4484
+ return Packet.Question.encode(this, writer);
4485
+ };
4486
+ Packet.Question.parse = Packet.Question.decode = function(reader) {
4487
+ const question = new Packet.Question();
4488
+ if (reader instanceof Buffer) {
4489
+ reader = new Packet.Reader(reader);
4490
+ }
4491
+ question.name = Packet.Name.decode(reader);
4492
+ question.type = reader.read(16);
4493
+ question.class = reader.read(16);
4494
+ return question;
4495
+ };
4496
+ Packet.Question.encode = function(question, writer) {
4497
+ writer = writer || new Packet.Writer();
4498
+ Packet.Name.encode(question.name, writer);
4499
+ writer.write(question.type, 16);
4500
+ writer.write(question.class, 16);
4501
+ return writer.toBuffer();
4502
+ };
4503
+ Packet.Resource = function(name, type, cls, ttl) {
4504
+ const defaults = {
4505
+ name: "",
4506
+ ttl: 300,
4507
+ type: Packet.TYPE.ANY,
4508
+ class: Packet.CLASS.ANY
4509
+ };
4510
+ let input;
4511
+ if (typeof name === "object") {
4512
+ input = name;
4513
+ } else {
4514
+ input = {
4515
+ name,
4516
+ type,
4517
+ class: cls,
4518
+ ttl
4519
+ };
4520
+ }
4521
+ Object.assign(this, defaults, input);
4522
+ return this;
4523
+ };
4524
+ Packet.Resource.prototype.toBuffer = function(writer) {
4525
+ return Packet.Resource.encode(this, writer);
4526
+ };
4527
+ Packet.Resource.encode = function(resource, writer) {
4528
+ writer = writer || new Packet.Writer();
4529
+ Packet.Name.encode(resource.name, writer);
4530
+ writer.write(resource.type, 16);
4531
+ writer.write(resource.class, 16);
4532
+ writer.write(resource.ttl, 32);
4533
+ const encoder = Object.keys(Packet.TYPE).filter(function(type) {
4534
+ return resource.type === Packet.TYPE[type];
4535
+ })[0];
4536
+ if (encoder in Packet.Resource && Packet.Resource[encoder].encode) {
4537
+ return Packet.Resource[encoder].encode(resource, writer);
4538
+ } else {
4539
+ debug("node-dns > unknown encoder %s(%j)", encoder, resource.type);
4540
+ }
4541
+ };
4542
+ Packet.Resource.parse = Packet.Resource.decode = function(reader) {
4543
+ if (reader instanceof Buffer) {
4544
+ reader = new Packet.Reader(reader);
4545
+ }
4546
+ let resource = new Packet.Resource();
4547
+ resource.name = Packet.Name.decode(reader);
4548
+ resource.type = reader.read(16);
4549
+ resource.class = reader.read(16);
4550
+ resource.ttl = reader.read(32);
4551
+ let length = reader.read(16);
4552
+ const parser2 = Object.keys(Packet.TYPE).filter(function(type) {
4553
+ return resource.type === Packet.TYPE[type];
4554
+ })[0];
4555
+ if (parser2 in Packet.Resource) {
4556
+ resource = Packet.Resource[parser2].decode.call(resource, reader, length);
4557
+ } else {
4558
+ debug("node-dns > unknown parser type: %s(%j)", parser2, resource.type);
4559
+ const arr = [];
4560
+ while (length--)
4561
+ arr.push(reader.read(8));
4562
+ resource.data = Buffer.from(arr);
4563
+ }
4564
+ return resource;
4565
+ };
4566
+ Packet.Name = {
4567
+ COPY: 192,
4568
+ decode: function(reader) {
4569
+ if (reader instanceof Buffer) {
4570
+ reader = new Packet.Reader(reader);
4571
+ }
4572
+ const name = [];
4573
+ let o2;
4574
+ let len = reader.read(8);
4575
+ while (len) {
4576
+ if ((len & Packet.Name.COPY) === Packet.Name.COPY) {
4577
+ len -= Packet.Name.COPY;
4578
+ len = len << 8;
4579
+ const pos = len + reader.read(8);
4580
+ if (!o2)
4581
+ o2 = reader.offset;
4582
+ reader.offset = pos * 8;
4583
+ len = reader.read(8);
4584
+ continue;
4585
+ } else {
4586
+ let part = "";
4587
+ while (len--)
4588
+ part += String.fromCharCode(reader.read(8));
4589
+ name.push(part);
4590
+ len = reader.read(8);
4591
+ }
4592
+ }
4593
+ if (o2)
4594
+ reader.offset = o2;
4595
+ return name.join(".");
4596
+ },
4597
+ encode: function(domain, writer) {
4598
+ writer = writer || new Packet.Writer();
4599
+ (domain || "").split(".").filter(function(part) {
4600
+ return !!part;
4601
+ }).forEach(function(part) {
4602
+ writer.write(part.length, 8);
4603
+ part.split("").map(function(c2) {
4604
+ writer.write(c2.charCodeAt(0), 8);
4605
+ return c2.charCodeAt(0);
4606
+ });
4607
+ });
4608
+ writer.write(0, 8);
4609
+ return writer.toBuffer();
4610
+ }
4611
+ };
4612
+ Packet.Resource.A = function(address) {
4613
+ this.type = Packet.TYPE.A;
4614
+ this.class = Packet.CLASS.IN;
4615
+ this.address = address;
4616
+ return this;
4617
+ };
4618
+ Packet.Resource.A.encode = function(record, writer) {
4619
+ writer = writer || new Packet.Writer();
4620
+ const parts = record.address.split(".");
4621
+ writer.write(parts.length, 16);
4622
+ parts.forEach(function(part) {
4623
+ writer.write(parseInt(part, 10), 8);
4624
+ });
4625
+ return writer.toBuffer();
4626
+ };
4627
+ Packet.Resource.A.decode = function(reader, length) {
4628
+ const parts = [];
4629
+ while (length--)
4630
+ parts.push(reader.read(8));
4631
+ this.address = parts.join(".");
4632
+ return this;
4633
+ };
4634
+ Packet.Resource.MX = function(exchange, priority) {
4635
+ this.type = Packet.TYPE.MX;
4636
+ this.class = Packet.CLASS.IN;
4637
+ this.exchange = exchange;
4638
+ this.priority = priority;
4639
+ return this;
4640
+ };
4641
+ Packet.Resource.MX.encode = function(record, writer) {
4642
+ writer = writer || new Packet.Writer();
4643
+ const len = Packet.Name.encode(record.exchange).length;
4644
+ writer.write(len + 2, 16);
4645
+ writer.write(record.priority, 16);
4646
+ Packet.Name.encode(record.exchange, writer);
4647
+ return writer.toBuffer();
4648
+ };
4649
+ Packet.Resource.MX.decode = function(reader, length) {
4650
+ this.priority = reader.read(16);
4651
+ this.exchange = Packet.Name.decode(reader);
4652
+ return this;
4653
+ };
4654
+ Packet.Resource.AAAA = {
4655
+ decode: function(reader, length) {
4656
+ const parts = [];
4657
+ while (length) {
4658
+ length -= 2;
4659
+ parts.push(reader.read(16));
4660
+ }
4661
+ this.address = toIPv6(parts);
4662
+ return this;
4663
+ },
4664
+ encode: function(record, writer) {
4665
+ writer = writer || new Packet.Writer();
4666
+ const parts = fromIPv6(record.address);
4667
+ writer.write(parts.length * 2, 16);
4668
+ parts.forEach(function(part) {
4669
+ writer.write(parseInt(part, 16), 16);
4670
+ });
4671
+ return writer.toBuffer();
4672
+ }
4673
+ };
4674
+ Packet.Resource.NS = {
4675
+ decode: function(reader, length) {
4676
+ this.ns = Packet.Name.decode(reader);
4677
+ return this;
4678
+ },
4679
+ encode: function(record, writer) {
4680
+ writer = writer || new Packet.Writer();
4681
+ writer.write(Packet.Name.encode(record.ns).length, 16);
4682
+ Packet.Name.encode(record.ns, writer);
4683
+ return writer.toBuffer();
4684
+ }
4685
+ };
4686
+ Packet.Resource.PTR = Packet.Resource.CNAME = {
4687
+ decode: function(reader, length) {
4688
+ this.domain = Packet.Name.decode(reader);
4689
+ return this;
4690
+ },
4691
+ encode: function(record, writer) {
4692
+ writer = writer || new Packet.Writer();
4693
+ writer.write(Packet.Name.encode(record.domain).length, 16);
4694
+ Packet.Name.encode(record.domain, writer);
4695
+ return writer.toBuffer();
4696
+ }
4697
+ };
4698
+ Packet.Resource.SPF = Packet.Resource.TXT = {
4699
+ decode: function(reader, length) {
4700
+ const parts = [];
4701
+ let bytesRead = 0;
4702
+ let chunkLength = 0;
4703
+ while (bytesRead < length) {
4704
+ chunkLength = reader.read(8);
4705
+ bytesRead++;
4706
+ while (chunkLength--) {
4707
+ parts.push(reader.read(8));
4708
+ bytesRead++;
4709
+ }
4710
+ }
4711
+ this.data = Buffer.from(parts).toString("utf8");
4712
+ return this;
4713
+ },
4714
+ encode: function(record, writer) {
4715
+ writer = writer || new Packet.Writer();
4716
+ const characterStrings = Array.isArray(record.data) ? record.data : [record.data];
4717
+ const characterStringBuffers = characterStrings.map(function(characterString) {
4718
+ if (Buffer.isBuffer(characterString)) {
4719
+ return characterString;
4720
+ }
4721
+ if (typeof characterString === "string") {
4722
+ return Buffer.from(characterString, "utf8");
4723
+ }
4724
+ return false;
4725
+ }).filter(function(characterString) {
4726
+ return characterString;
4727
+ });
4728
+ const bufferLength = characterStringBuffers.reduce(function(sum, characterStringBuffer) {
4729
+ return sum + characterStringBuffer.length;
4730
+ }, 0);
4731
+ writer.write(bufferLength + characterStringBuffers.length, 16);
4732
+ characterStringBuffers.forEach(function(buffer) {
4733
+ writer.write(buffer.length, 8);
4734
+ buffer.forEach(function(c2) {
4735
+ writer.write(c2, 8);
4736
+ });
4737
+ });
4738
+ return writer.toBuffer();
4739
+ }
4740
+ };
4741
+ Packet.Resource.SOA = {
4742
+ decode: function(reader, length) {
4743
+ this.primary = Packet.Name.decode(reader);
4744
+ this.admin = Packet.Name.decode(reader);
4745
+ this.serial = reader.read(32);
4746
+ this.refresh = reader.read(32);
4747
+ this.retry = reader.read(32);
4748
+ this.expiration = reader.read(32);
4749
+ this.minimum = reader.read(32);
4750
+ return this;
4751
+ },
4752
+ encode: function(record, writer) {
4753
+ writer = writer || new Packet.Writer();
4754
+ let len = 0;
4755
+ len += Packet.Name.encode(record.primary).length;
4756
+ len += Packet.Name.encode(record.admin).length;
4757
+ len += 32 * 5 / 8;
4758
+ writer.write(len, 16);
4759
+ Packet.Name.encode(record.primary, writer);
4760
+ Packet.Name.encode(record.admin, writer);
4761
+ writer.write(record.serial, 32);
4762
+ writer.write(record.refresh, 32);
4763
+ writer.write(record.retry, 32);
4764
+ writer.write(record.expiration, 32);
4765
+ writer.write(record.minimum, 32);
4766
+ return writer.toBuffer();
4767
+ }
4768
+ };
4769
+ Packet.Resource.SRV = {
4770
+ decode: function(reader, length) {
4771
+ this.priority = reader.read(16);
4772
+ this.weight = reader.read(16);
4773
+ this.port = reader.read(16);
4774
+ this.target = Packet.Name.decode(reader);
4775
+ return this;
4776
+ },
4777
+ encode: function(record, writer) {
4778
+ writer = writer || new Packet.Writer();
4779
+ const { length } = Packet.Name.encode(record.target);
4780
+ writer.write(length + 6, 16);
4781
+ writer.write(record.priority, 16);
4782
+ writer.write(record.weight, 16);
4783
+ writer.write(record.port, 16);
4784
+ Packet.Name.encode(record.target, writer);
4785
+ return writer.toBuffer();
4786
+ }
4787
+ };
4788
+ Packet.Resource.EDNS = function(rdata) {
4789
+ return {
4790
+ type: Packet.TYPE.EDNS,
4791
+ class: 512,
4792
+ // Supported UDP Payload size
4793
+ ttl: 0,
4794
+ // Extended RCODE and flags
4795
+ rdata
4796
+ // Objects of type Packet.Resource.EDNS.*
4797
+ };
4798
+ };
4799
+ Packet.Resource.EDNS.decode = function(reader, length) {
4800
+ this.type = Packet.TYPE.EDNS;
4801
+ this.class = 512;
4802
+ this.ttl = 0;
4803
+ this.rdata = [];
4804
+ while (length) {
4805
+ const optionCode = reader.read(16);
4806
+ const optionLength = reader.read(16);
4807
+ const decoder = Object.keys(Packet.EDNS_OPTION_CODE).filter(function(type) {
4808
+ return optionCode === Packet.EDNS_OPTION_CODE[type];
4809
+ })[0];
4810
+ if (decoder in Packet.Resource.EDNS && Packet.Resource.EDNS[decoder].decode) {
4811
+ const rdata = Packet.Resource.EDNS[decoder].decode(reader, optionLength);
4812
+ this.rdata.push(rdata);
4813
+ } else {
4814
+ reader.read(optionLength);
4815
+ debug("node-dns > unknown EDNS rdata decoder %s(%j)", decoder, optionCode);
4816
+ }
4817
+ length = length - 4 - optionLength;
4818
+ }
4819
+ return this;
4820
+ };
4821
+ Packet.Resource.EDNS.encode = function(record, writer) {
4822
+ const rdataWriter = new Packet.Writer();
4823
+ for (const rdata of record.rdata) {
4824
+ const encoder = Object.keys(Packet.EDNS_OPTION_CODE).filter(function(type) {
4825
+ return rdata.ednsCode === Packet.EDNS_OPTION_CODE[type];
4826
+ })[0];
4827
+ if (encoder in Packet.Resource.EDNS && Packet.Resource.EDNS[encoder].encode) {
4828
+ const w3 = new Packet.Writer();
4829
+ Packet.Resource.EDNS[encoder].encode(rdata, w3);
4830
+ rdataWriter.write(rdata.ednsCode, 16);
4831
+ rdataWriter.write(w3.buffer.length / 8, 16);
4832
+ rdataWriter.writeBuffer(w3);
4833
+ } else {
4834
+ debug("node-dns > unknown EDNS rdata encoder %s(%j)", encoder, rdata.ednsCode);
4835
+ }
4836
+ }
4837
+ writer = writer || new Packet.Writer();
4838
+ writer.write(rdataWriter.buffer.length / 8, 16);
4839
+ writer.writeBuffer(rdataWriter);
4840
+ return writer.toBuffer();
4841
+ };
4842
+ Packet.Resource.EDNS.ECS = function(clientIp) {
4843
+ const [ip, prefixLength] = clientIp.split("/");
4844
+ const numPrefixLength = parseInt(prefixLength) || 32;
4845
+ return {
4846
+ ednsCode: Packet.EDNS_OPTION_CODE.ECS,
4847
+ family: 1,
4848
+ sourcePrefixLength: numPrefixLength,
4849
+ scopePrefixLength: 0,
4850
+ ip
4851
+ };
4852
+ };
4853
+ Packet.Resource.EDNS.ECS.decode = function(reader, length) {
4854
+ const rdata = {};
4855
+ rdata.ednsCode = Packet.EDNS_OPTION_CODE.ECS;
4856
+ rdata.family = reader.read(16);
4857
+ rdata.sourcePrefixLength = reader.read(8);
4858
+ rdata.scopePrefixLength = reader.read(8);
4859
+ length -= 4;
4860
+ if (rdata.family !== 1) {
4861
+ debug("node-dns > unimplemented address family");
4862
+ reader.read(length * 8);
4863
+ return rdata;
4864
+ }
4865
+ const ipv4Octets = [];
4866
+ while (length--) {
4867
+ const octet = reader.read(8);
4868
+ ipv4Octets.push(octet);
4869
+ }
4870
+ while (ipv4Octets.length < 4) {
4871
+ ipv4Octets.push(0);
4872
+ }
4873
+ rdata.ip = ipv4Octets.join(".");
4874
+ return rdata;
4875
+ };
4876
+ Packet.Resource.EDNS.ECS.encode = function(record, writer) {
4877
+ const ip = record.ip.split(".").map((s) => parseInt(s));
4878
+ writer.write(record.family, 16);
4879
+ writer.write(record.sourcePrefixLength, 8);
4880
+ writer.write(record.scopePrefixLength, 8);
4881
+ writer.write(ip[0], 8);
4882
+ writer.write(ip[1], 8);
4883
+ writer.write(ip[2], 8);
4884
+ writer.write(ip[3], 8);
4885
+ };
4886
+ Packet.Resource.CAA = {
4887
+ encode: function(record, writer) {
4888
+ writer = writer || new Packet.Writer();
4889
+ const buffer = Buffer.from(record.tag + record.value, "utf8");
4890
+ writer.write(2 + buffer.length, 16);
4891
+ writer.write(record.flags, 8);
4892
+ writer.write(record.tag.length, 8);
4893
+ buffer.forEach(function(c2) {
4894
+ writer.write(c2, 8);
4895
+ });
4896
+ return writer.toBuffer();
4897
+ }
4898
+ };
4899
+ Packet.Reader = BufferReader;
4900
+ Packet.Writer = BufferWriter;
4901
+ Packet.createResponseFromRequest = function(request2) {
4902
+ const response = new Packet(request2);
4903
+ response.header.qr = 1;
4904
+ response.additionals = [];
4905
+ return response;
4906
+ };
4907
+ Packet.createResourceFromQuestion = function(base, record) {
4908
+ const resource = new Packet.Resource(base);
4909
+ Object.assign(resource, record);
4910
+ return resource;
4911
+ };
4912
+ Packet.readStream = (socket) => {
4913
+ let chunks = [];
4914
+ let chunklen = 0;
4915
+ let received = false;
4916
+ let expected = false;
4917
+ return new Promise((resolve9, reject) => {
4918
+ const processMessage = () => {
4919
+ if (received)
4920
+ return;
4921
+ received = true;
4922
+ const buffer = Buffer.concat(chunks, chunklen);
4923
+ resolve9(buffer.slice(2));
4924
+ };
4925
+ socket.on("end", processMessage);
4926
+ socket.on("error", reject);
4927
+ socket.on("readable", () => {
4928
+ let chunk;
4929
+ while ((chunk = socket.read()) !== null) {
4930
+ chunks.push(chunk);
4931
+ chunklen += chunk.length;
4932
+ }
4933
+ if (!expected && chunklen >= 2) {
4934
+ if (chunks.length > 1) {
4935
+ chunks = [Buffer.concat(chunks, chunklen)];
4936
+ }
4937
+ expected = chunks[0].readUInt16BE(0);
4938
+ }
4939
+ if (chunklen >= 2 + expected) {
4940
+ processMessage();
4941
+ }
4942
+ });
4943
+ });
4944
+ };
4945
+ Packet.prototype.toBase64URL = function() {
4946
+ const buffer = this.toBuffer();
4947
+ const base64 = buffer.toString("base64");
4948
+ return base64.replace(/=/g, "").replace(/\+/g, "-").replace(/\//g, "_");
4949
+ };
4950
+ module2.exports = Packet;
4951
+ module2.exports.toIPv6 = toIPv6;
4952
+ module2.exports.fromIPv6 = fromIPv6;
4953
+ }
4954
+ });
4955
+
4956
+ // ../../node_modules/dns2/server/udp.js
4957
+ var require_udp = __commonJS({
4958
+ "../../node_modules/dns2/server/udp.js"(exports, module2) {
4959
+ var udp = require("dgram");
4960
+ var Packet = require_packet();
4961
+ var Server = class extends udp.Socket {
4962
+ constructor(options) {
4963
+ let type = "udp4";
4964
+ if (typeof options === "object") {
4965
+ type = options.type;
4966
+ }
4967
+ super(type);
4968
+ if (typeof options === "function") {
4969
+ this.on("request", options);
4970
+ }
4971
+ this.on("message", this.handle.bind(this));
4972
+ }
4973
+ handle(data, rinfo) {
4974
+ try {
4975
+ const message = Packet.parse(data);
4976
+ this.emit("request", message, this.response.bind(this, rinfo), rinfo);
4977
+ } catch (e) {
4978
+ this.emit("requestError", e);
4979
+ }
4980
+ }
4981
+ response(rinfo, message) {
4982
+ if (message instanceof Packet) {
4983
+ message = message.toBuffer();
4984
+ }
4985
+ return new Promise((resolve9, reject) => {
4986
+ this.send(message, rinfo.port, rinfo.address, (err) => {
4987
+ if (err)
4988
+ return reject(err);
4989
+ resolve9(message);
4990
+ });
4991
+ });
4992
+ }
4993
+ listen(port, address) {
4994
+ return new Promise((resolve9) => this.bind(port, address, resolve9));
4995
+ }
4996
+ };
4997
+ module2.exports = Server;
4998
+ }
4999
+ });
5000
+
5001
+ // ../../node_modules/dns2/server/tcp.js
5002
+ var require_tcp = __commonJS({
5003
+ "../../node_modules/dns2/server/tcp.js"(exports, module2) {
5004
+ var tcp = require("net");
5005
+ var Packet = require_packet();
5006
+ var Server = class extends tcp.Server {
5007
+ constructor(options) {
5008
+ super();
5009
+ if (typeof options === "function") {
5010
+ this.on("request", options);
5011
+ }
5012
+ this.on("connection", this.handle.bind(this));
5013
+ }
5014
+ async handle(client) {
5015
+ try {
5016
+ const data = await Packet.readStream(client);
5017
+ const message = Packet.parse(data);
5018
+ this.emit("request", message, this.response.bind(this, client), client);
5019
+ } catch (e) {
5020
+ this.emit("requestError", e);
5021
+ client.destroy();
5022
+ }
5023
+ }
5024
+ response(client, message) {
5025
+ if (message instanceof Packet) {
5026
+ message = message.toBuffer();
5027
+ }
5028
+ const len = Buffer.alloc(2);
5029
+ len.writeUInt16BE(message.length);
5030
+ client.end(Buffer.concat([len, message]));
5031
+ }
5032
+ };
5033
+ module2.exports = Server;
5034
+ }
5035
+ });
5036
+
5037
+ // ../../node_modules/dns2/server/doh.js
5038
+ var require_doh = __commonJS({
5039
+ "../../node_modules/dns2/server/doh.js"(exports, module2) {
5040
+ var http = require("http");
5041
+ var https = require("https");
5042
+ var { URL: URL2 } = require("url");
5043
+ var Packet = require_packet();
5044
+ var EventEmitter = require("events");
5045
+ var { debuglog } = require("util");
5046
+ var debug = debuglog("dns2-server");
5047
+ var decodeBase64URL = (str) => {
5048
+ let queryData = str.replace(/-/g, "+").replace(/_/g, "/");
5049
+ const pad = queryData.length % 4;
5050
+ if (pad === 1)
5051
+ return;
5052
+ if (pad) {
5053
+ queryData += new Array(5 - pad).join("=");
5054
+ }
5055
+ return queryData;
5056
+ };
5057
+ var readStream = (stream) => new Promise((resolve9, reject) => {
5058
+ let buffer = "";
5059
+ stream.on("error", reject).on("data", (chunk) => {
5060
+ buffer += chunk;
5061
+ }).on("end", () => resolve9(buffer));
5062
+ });
5063
+ var Server = class extends EventEmitter {
5064
+ constructor(options) {
5065
+ super();
5066
+ const { ssl } = Object.assign(this, { cors: true }, options);
5067
+ this.server = (ssl ? https.createServer(options) : http.createServer()).on("request", this.handleRequest.bind(this)).on("listening", () => this.emit("listening", this.address())).on("error", (error) => this.emit("error", error)).on("close", () => {
5068
+ this.server.removeAllListeners();
5069
+ this.emit("close");
5070
+ });
5071
+ return this;
5072
+ }
5073
+ async handleRequest(client, res) {
5074
+ try {
5075
+ const { method, url, headers } = client;
5076
+ const { pathname, searchParams: query } = new URL2(url, "http://unused/");
5077
+ const { cors } = this;
5078
+ if (cors === true) {
5079
+ res.setHeader("Access-Control-Allow-Origin", "*");
5080
+ } else if (typeof cors === "string") {
5081
+ res.setHeader("Access-Control-Allow-Origin", cors);
5082
+ res.setHeader("Vary", "Origin");
5083
+ } else if (typeof cors === "function") {
5084
+ const isAllowed = cors(headers.origin);
5085
+ res.setHeader("Access-Control-Allow-Origin", isAllowed ? headers.origin : "false");
5086
+ res.setHeader("Vary", "Origin");
5087
+ }
5088
+ debug("request", method, url);
5089
+ if (method !== "GET" && method !== "POST") {
5090
+ res.writeHead(405, { "Content-Type": "text/plain" });
5091
+ res.write("405 Method not allowed\n");
5092
+ res.end();
5093
+ return;
5094
+ }
5095
+ if (pathname !== "/dns-query") {
5096
+ res.writeHead(404, { "Content-Type": "text/plain" });
5097
+ res.write("404 Not Found\n");
5098
+ res.end();
5099
+ return;
5100
+ }
5101
+ const contentType = headers.accept;
5102
+ if (contentType !== "application/dns-message") {
5103
+ res.writeHead(400, { "Content-Type": "text/plain" });
5104
+ res.write("400 Bad Request: Illegal content type\n");
5105
+ res.end();
5106
+ return;
5107
+ }
5108
+ let queryData;
5109
+ if (method === "GET") {
5110
+ const dns = query.get("dns");
5111
+ if (!dns) {
5112
+ res.writeHead(400, { "Content-Type": "text/plain" });
5113
+ res.write("400 Bad Request: No query defined\n");
5114
+ res.end();
5115
+ return;
5116
+ }
5117
+ const base64 = decodeBase64URL(dns);
5118
+ if (!base64) {
5119
+ res.writeHead(400, { "Content-Type": "text/plain" });
5120
+ res.write("400 Bad Request: Invalid query data\n");
5121
+ res.end();
5122
+ return;
5123
+ }
5124
+ queryData = Buffer.from(base64, "base64");
5125
+ } else if (method === "POST") {
5126
+ queryData = await readStream(client);
5127
+ }
5128
+ const message = Packet.parse(queryData);
5129
+ this.emit("request", message, this.response.bind(this, res), client);
5130
+ } catch (e) {
5131
+ this.emit("requestError", e);
5132
+ res.destroy();
5133
+ }
5134
+ }
5135
+ /**
5136
+ * Send of the response to the client
5137
+ * @param {*} res
5138
+ * @param {*} message
5139
+ */
5140
+ response(res, message) {
5141
+ debug("response");
5142
+ res.setHeader("Content-Type", "application/dns-message");
5143
+ res.writeHead(200);
5144
+ res.end(message.toBuffer());
5145
+ }
5146
+ /**
5147
+ * listen
5148
+ * @param {*} port
5149
+ * @returns
5150
+ */
5151
+ listen(port, address) {
5152
+ return this.server.listen(port || this.port, address);
5153
+ }
5154
+ address() {
5155
+ return this.server.address();
5156
+ }
5157
+ close() {
5158
+ return this.server.close();
5159
+ }
5160
+ };
5161
+ module2.exports = Server;
5162
+ }
5163
+ });
5164
+
5165
+ // ../../node_modules/dns2/server/dns.js
5166
+ var require_dns = __commonJS({
5167
+ "../../node_modules/dns2/server/dns.js"(exports, module2) {
5168
+ var EventEmitter = require("events");
5169
+ var DOHServer = require_doh();
5170
+ var TCPServer = require_tcp();
5171
+ var UDPServer = require_udp();
5172
+ var DNSServer = class extends EventEmitter {
5173
+ constructor(options = {}) {
5174
+ super();
5175
+ this.servers = {};
5176
+ if (options.doh) {
5177
+ this.servers.doh = new DOHServer(options.doh).on("error", (error) => this.emit("error", error, "doh"));
5178
+ }
5179
+ if (options.tcp) {
5180
+ this.servers.tcp = new TCPServer().on("error", (error) => this.emit("error", error, "tcp"));
5181
+ }
5182
+ if (options.udp) {
5183
+ this.servers.udp = new UDPServer(typeof options.udp === "object" ? options.udp : void 0).on("error", (error) => this.emit("error", error, "udp"));
5184
+ }
5185
+ const servers = Object.values(this.servers);
5186
+ this.closed = Promise.all(
5187
+ servers.map((server) => new Promise((resolve9) => server.once("close", resolve9)))
5188
+ ).then(() => {
5189
+ this.emit("close");
5190
+ });
5191
+ this.listening = Promise.all(
5192
+ servers.map((server) => new Promise((resolve9) => server.once("listening", resolve9)))
5193
+ ).then(() => {
5194
+ const addresses = this.addresses();
5195
+ this.emit("listening", addresses);
5196
+ return addresses;
5197
+ });
5198
+ const emitRequest = (request2, send, client) => this.emit("request", request2, send, client);
5199
+ const emitRequestError = (error) => this.emit("requestError", error);
5200
+ for (const server of servers) {
5201
+ server.on("request", emitRequest);
5202
+ server.on("requestError", emitRequestError);
5203
+ }
5204
+ if (options.handle) {
5205
+ this.on("request", options.handle.bind(options));
5206
+ }
5207
+ }
5208
+ addresses() {
5209
+ const addresses = {};
5210
+ const { udp, tcp, doh } = this.servers;
5211
+ if (udp) {
5212
+ addresses.udp = udp.address();
5213
+ }
5214
+ if (tcp) {
5215
+ addresses.tcp = tcp.address();
5216
+ }
5217
+ if (doh) {
5218
+ addresses.doh = doh.address();
5219
+ }
5220
+ return addresses;
5221
+ }
5222
+ listen(options = {}) {
5223
+ for (const serverType of Object.keys(this.servers)) {
5224
+ const server = this.servers[serverType];
5225
+ const serverOptions = options[serverType];
5226
+ if (serverOptions && serverOptions.port) {
5227
+ server.listen(serverOptions.port, serverOptions.address);
5228
+ } else {
5229
+ server.listen(serverOptions);
5230
+ }
5231
+ }
5232
+ return this.listening;
5233
+ }
5234
+ close() {
5235
+ const { doh, udp, tcp } = this.servers;
5236
+ if (udp) {
5237
+ udp.close();
5238
+ }
5239
+ if (tcp) {
5240
+ tcp.close();
5241
+ }
5242
+ if (doh) {
5243
+ doh.close();
5244
+ }
5245
+ return this.closed;
5246
+ }
5247
+ };
5248
+ module2.exports = DNSServer;
5249
+ }
5250
+ });
5251
+
5252
+ // ../../node_modules/dns2/server/index.js
5253
+ var require_server = __commonJS({
5254
+ "../../node_modules/dns2/server/index.js"(exports, module2) {
5255
+ var UDPServer = require_udp();
5256
+ var TCPServer = require_tcp();
5257
+ var DOHServer = require_doh();
5258
+ var DNSServer = require_dns();
5259
+ var createUDPServer = (options) => {
5260
+ return new UDPServer(options);
5261
+ };
5262
+ var createTCPServer = (options) => {
5263
+ return new TCPServer(options);
5264
+ };
5265
+ var createDOHServer = (options) => {
5266
+ return new DOHServer(options);
5267
+ };
5268
+ var createServer = (options) => {
5269
+ return new DNSServer(options);
5270
+ };
5271
+ module2.exports = {
5272
+ UDPServer,
5273
+ TCPServer,
5274
+ DOHServer,
5275
+ DNSServer,
5276
+ createTCPServer,
5277
+ createUDPServer,
5278
+ createDOHServer,
5279
+ createServer
5280
+ };
5281
+ }
5282
+ });
5283
+
5284
+ // ../../node_modules/dns2/client/tcp.js
5285
+ var require_tcp2 = __commonJS({
5286
+ "../../node_modules/dns2/client/tcp.js"(exports, module2) {
5287
+ var tcp = require("net");
5288
+ var Packet = require_packet();
5289
+ module2.exports = ({ dns = "1.1.1.1", port = 53 } = {}) => {
5290
+ return async (name, type = "A", cls = Packet.CLASS.IN, { clientIp, recursive = true } = {}) => {
5291
+ const packet = new Packet();
5292
+ if (recursive) {
5293
+ packet.header.rd = 1;
5294
+ }
5295
+ if (clientIp) {
5296
+ packet.additionals.push(Packet.Resource.EDNS([
5297
+ Packet.Resource.EDNS.ECS(clientIp)
5298
+ ]));
5299
+ }
5300
+ packet.questions.push({
5301
+ name,
5302
+ class: cls,
5303
+ type: Packet.TYPE[type]
5304
+ });
5305
+ const message = packet.toBuffer();
5306
+ const len = Buffer.alloc(2);
5307
+ len.writeUInt16BE(message.length);
5308
+ const client = tcp.connect({ host: dns, port });
5309
+ client.end(Buffer.concat([len, message]));
5310
+ const data = await Packet.readStream(client);
5311
+ if (!data.length) {
5312
+ throw new Error("Empty TCP response");
5313
+ }
5314
+ return Packet.parse(data);
5315
+ };
5316
+ };
5317
+ }
5318
+ });
5319
+
5320
+ // ../../node_modules/dns2/client/doh.js
5321
+ var require_doh2 = __commonJS({
5322
+ "../../node_modules/dns2/client/doh.js"(exports, module2) {
5323
+ var Packet = require_packet();
5324
+ var defaultGet = (url) => new Promise((resolve9, reject) => {
5325
+ const headers = {
5326
+ accept: "application/dns-message"
5327
+ };
5328
+ const base = url.startsWith("https") ? require("https") : require("http");
5329
+ const req = base.get(url, { headers }, resolve9);
5330
+ req.on("error", reject);
5331
+ });
5332
+ var readStream = (stream) => {
5333
+ const buffer = [];
5334
+ return new Promise((resolve9, reject) => {
5335
+ stream.on("error", reject).on("data", (chunk) => buffer.push(chunk)).on("end", () => resolve9(Buffer.concat(buffer)));
5336
+ });
5337
+ };
5338
+ var DOHClient = ({ dns, http, get = defaultGet } = {}) => {
5339
+ return (name, type = "A", cls = Packet.CLASS.IN, { clientIp, recursive = true } = {}) => {
5340
+ const packet = new Packet();
5341
+ if (recursive) {
5342
+ packet.header.rd = 1;
5343
+ }
5344
+ if (clientIp) {
5345
+ packet.additionals.push(Packet.Resource.EDNS([
5346
+ Packet.Resource.EDNS.ECS(clientIp)
5347
+ ]));
5348
+ }
5349
+ packet.questions.push({
5350
+ name,
5351
+ class: cls,
5352
+ type: Packet.TYPE[type]
5353
+ });
5354
+ const query = packet.toBase64URL();
5355
+ return Promise.resolve(get(`http${http ? "" : "s"}://${dns}/dns-query?dns=${query}`)).then(readStream).then(Packet.parse);
5356
+ };
5357
+ };
5358
+ module2.exports = DOHClient;
5359
+ }
5360
+ });
5361
+
5362
+ // ../../node_modules/dns2/client/udp.js
5363
+ var require_udp2 = __commonJS({
5364
+ "../../node_modules/dns2/client/udp.js"(exports, module2) {
5365
+ var udp = require("dgram");
5366
+ var Packet = require_packet();
5367
+ var { equal } = require("assert");
5368
+ var { debuglog } = require("util");
5369
+ var debug = debuglog("dns2");
5370
+ module2.exports = ({ dns = "8.8.8.8", port = 53, socketType = "udp4" } = {}) => {
5371
+ return (name, type = "A", cls = Packet.CLASS.IN, { clientIp, recursive = true } = {}) => {
5372
+ const query = new Packet();
5373
+ query.header.id = Math.random() * 1e4 | 0;
5374
+ if (recursive) {
5375
+ query.header.rd = 1;
5376
+ }
5377
+ if (clientIp) {
5378
+ query.additionals.push(Packet.Resource.EDNS([
5379
+ Packet.Resource.EDNS.ECS(clientIp)
5380
+ ]));
5381
+ }
5382
+ query.questions.push({
5383
+ name,
5384
+ class: cls,
5385
+ type: Packet.TYPE[type]
5386
+ });
5387
+ const client = new udp.Socket(socketType);
5388
+ return new Promise((resolve9, reject) => {
5389
+ client.once("message", function onMessage(message) {
5390
+ client.close();
5391
+ const response = Packet.parse(message);
5392
+ equal(response.header.id, query.header.id);
5393
+ resolve9(response);
5394
+ });
5395
+ debug("send", dns, query.toBuffer());
5396
+ client.send(query.toBuffer(), port, dns, (err) => err && reject(err));
5397
+ });
5398
+ };
5399
+ };
5400
+ }
5401
+ });
5402
+
5403
+ // ../../node_modules/dns2/client/google.js
5404
+ var require_google = __commonJS({
5405
+ "../../node_modules/dns2/client/google.js"(exports, module2) {
5406
+ var https = require("https");
5407
+ var get = (url) => new Promise((resolve9) => https.get(url, resolve9));
5408
+ var readStream = (stream) => {
5409
+ const buffer = [];
5410
+ return new Promise((resolve9, reject) => {
5411
+ stream.on("error", reject).on("data", (chunk) => {
5412
+ buffer.push(chunk);
5413
+ }).on("end", () => resolve9(Buffer.concat(buffer)));
5414
+ });
5415
+ };
5416
+ var GoogleClient = () => (name, type = "ANY") => {
5417
+ return Promise.resolve().then(() => get(`https://dns.google.com/resolve?name=${name}&type=${type}`)).then(readStream).then(JSON.parse);
5418
+ };
5419
+ module2.exports = GoogleClient;
5420
+ }
5421
+ });
5422
+
5423
+ // ../../node_modules/dns2/index.js
5424
+ var require_dns2 = __commonJS({
5425
+ "../../node_modules/dns2/index.js"(exports, module2) {
5426
+ var {
5427
+ TCPServer,
5428
+ UDPServer,
5429
+ DOHServer,
5430
+ createTCPServer,
5431
+ createUDPServer,
5432
+ createDOHServer,
5433
+ createServer
5434
+ } = require_server();
5435
+ var EventEmitter = require("events");
5436
+ var DNS = class extends EventEmitter {
5437
+ constructor(options) {
5438
+ super();
5439
+ Object.assign(this, {
5440
+ port: 53,
5441
+ retries: 3,
5442
+ timeout: 3,
5443
+ recursive: true,
5444
+ resolverProtocol: "UDP",
5445
+ nameServers: [
5446
+ "8.8.8.8",
5447
+ "114.114.114.114"
5448
+ ],
5449
+ rootServers: [
5450
+ "a",
5451
+ "b",
5452
+ "c",
5453
+ "d",
5454
+ "e",
5455
+ "f",
5456
+ "g",
5457
+ "h",
5458
+ "i",
5459
+ "j",
5460
+ "k",
5461
+ "l",
5462
+ "m"
5463
+ ].map((x2) => `${x2}.root-servers.net`)
5464
+ }, options);
5465
+ }
5466
+ /**
5467
+ * query
5468
+ * @param {*} questions
5469
+ */
5470
+ query(name, type, cls, clientIp) {
5471
+ const { port, nameServers, recursive, resolverProtocol = "UDP" } = this;
5472
+ const createResolver = DNS[resolverProtocol + "Client"];
5473
+ return Promise.race(nameServers.map((address) => {
5474
+ const resolve9 = createResolver({ dns: address, port, recursive });
5475
+ return resolve9(name, type, cls, clientIp);
5476
+ }));
5477
+ }
5478
+ /**
5479
+ * resolve
5480
+ * @param {*} domain
5481
+ * @param {*} type
5482
+ * @param {*} cls
5483
+ */
5484
+ resolve(domain, type = "ANY", cls = DNS.Packet.CLASS.IN, clientIp = void 0) {
5485
+ return this.query(domain, type, cls, clientIp);
5486
+ }
5487
+ resolveA(domain, clientIp) {
5488
+ return this.resolve(domain, "A", void 0, clientIp);
5489
+ }
5490
+ resolveAAAA(domain) {
5491
+ return this.resolve(domain, "AAAA");
5492
+ }
5493
+ resolveMX(domain) {
5494
+ return this.resolve(domain, "MX");
5495
+ }
5496
+ resolveCNAME(domain) {
5497
+ return this.resolve(domain, "CNAME");
5498
+ }
5499
+ resolvePTR(domain) {
5500
+ return this.resolve(domain, "PTR");
5501
+ }
5502
+ };
5503
+ DNS.TCPServer = TCPServer;
5504
+ DNS.UDPServer = UDPServer;
5505
+ DNS.DOHServer = DOHServer;
5506
+ DNS.createUDPServer = createUDPServer;
5507
+ DNS.createTCPServer = createTCPServer;
5508
+ DNS.createDOHServer = createDOHServer;
5509
+ DNS.createServer = createServer;
5510
+ DNS.TCPClient = require_tcp2();
5511
+ DNS.DOHClient = require_doh2();
5512
+ DNS.UDPClient = require_udp2();
5513
+ DNS.GoogleClient = require_google();
5514
+ DNS.Packet = require_packet();
5515
+ module2.exports = DNS;
5516
+ }
5517
+ });
5518
+
4192
5519
  // node_modules/undici/lib/core/symbols.js
4193
5520
  var require_symbols = __commonJS({
4194
5521
  "node_modules/undici/lib/core/symbols.js"(exports, module2) {
@@ -54507,9 +55834,9 @@ var getConfirmRenderers = (config14) => {
54507
55834
  cancel: handleCancel
54508
55835
  };
54509
55836
  };
55837
+ var spinnerFrames = ["\u2524", "\u2518", "\u2534", "\u2514", "\u251C", "\u250C", "\u252C", "\u2510"];
55838
+ var ellipsisFrames = ["", ".", "..", "...", " ..", " .", ""];
54510
55839
  var spinner = () => {
54511
- const spinnerFrames = ["\u2524", "\u2518", "\u2534", "\u2514", "\u251C", "\u250C", "\u252C", "\u2510"];
54512
- const ellipsisFrames = ["", ".", "..", "...", " ..", " .", ""];
54513
55840
  const color = brandColor;
54514
55841
  const frameRate = 120;
54515
55842
  let loop = null;
@@ -59410,7 +60737,44 @@ var Yargs = YargsFactory(esm_default);
59410
60737
  var yargs_default = Yargs;
59411
60738
 
59412
60739
  // package.json
59413
- var version = "0.0.0-ccc19d57";
60740
+ var version = "0.0.0-d017e9f2";
60741
+ var devDependencies = {
60742
+ "@babel/parser": "^7.21.3",
60743
+ "@babel/types": "^7.21.4",
60744
+ "@clack/prompts": "^0.6.3",
60745
+ "@cloudflare/eslint-config-worker": "*",
60746
+ "@cloudflare/workers-tsconfig": "*",
60747
+ "@cloudflare/workers-types": "^4.20230419.0",
60748
+ "@types/command-exists": "^1.2.0",
60749
+ "@types/cross-spawn": "^6.0.2",
60750
+ "@types/dns2": "^2.0.3",
60751
+ "@types/esprima": "^4.0.3",
60752
+ "@types/node": "^18.15.3",
60753
+ "@types/which-pm-runs": "^1.0.0",
60754
+ "@types/yargs": "^17.0.22",
60755
+ "@typescript-eslint/eslint-plugin": "^5.55.0",
60756
+ "@typescript-eslint/parser": "^5.55.0",
60757
+ chalk: "^5.2.0",
60758
+ "command-exists": "^1.2.9",
60759
+ "cross-spawn": "^7.0.3",
60760
+ dns2: "^2.1.0",
60761
+ esbuild: "^0.17.12",
60762
+ execa: "^7.1.1",
60763
+ haikunator: "^2.1.2",
60764
+ "log-update": "^5.0.1",
60765
+ open: "^8.4.0",
60766
+ pnpm: "^8.6.11",
60767
+ recast: "^0.22.0",
60768
+ semver: "^7.5.1",
60769
+ typescript: "^5.0.2",
60770
+ undici: "5.20.0",
60771
+ "vite-tsconfig-paths": "^4.0.8",
60772
+ vitest: "^0.30.0",
60773
+ "which-pm-runs": "^1.1.0",
60774
+ wrangler: "*",
60775
+ yargs: "^17.7.1",
60776
+ yarn: "^1.22.19"
60777
+ };
59414
60778
 
59415
60779
  // src/common.ts
59416
60780
  var import_fs6 = require("fs");
@@ -59426,7 +60790,19 @@ var import_cross_spawn = __toESM(require_cross_spawn());
59426
60790
  var import_semver = __toESM(require_semver2());
59427
60791
  var import_which_pm_runs = __toESM(require_which_pm_runs());
59428
60792
  var detectPackageManager = () => {
59429
- const { name, version: version2 } = (0, import_which_pm_runs.default)() ?? { name: "npm", version: "0.0.0" };
60793
+ let { name, version: version2 } = (0, import_which_pm_runs.default)() ?? { name: "npm", version: "0.0.0" };
60794
+ if (process.env.TEST_PM) {
60795
+ switch (process.env.TEST_PM) {
60796
+ case "pnpm":
60797
+ name = "pnpm";
60798
+ version2 = devDependencies["pnpm"].replace("^", "");
60799
+ break;
60800
+ case "yarn":
60801
+ name = "yarn";
60802
+ version2 = devDependencies["yarn"].replace("^", "");
60803
+ break;
60804
+ }
60805
+ }
59430
60806
  switch (name) {
59431
60807
  case "pnpm":
59432
60808
  if (import_semver.default.gt(version2, "6.0.0")) {
@@ -59607,6 +60983,21 @@ var npmInstall = async () => {
59607
60983
  doneText: `${brandColor("installed")} ${dim(`via \`${npm12} install\``)}`
59608
60984
  });
59609
60985
  };
60986
+ var resetPackageManager = async (ctx) => {
60987
+ const { npm: npm12 } = detectPackageManager();
60988
+ if (npm12 === "npm")
60989
+ return;
60990
+ const nodeModulesPath = import_path5.default.join(ctx.project.path, "node_modules");
60991
+ (0, import_fs5.rmSync)(nodeModulesPath, { recursive: true });
60992
+ const lockfilePath = import_path5.default.join(ctx.project.path, "package-lock.json");
60993
+ (0, import_fs5.rmSync)(lockfilePath);
60994
+ await runCommand(`${npm12} install`, {
60995
+ silent: true,
60996
+ cwd: ctx.project.path,
60997
+ startText: "Installing dependencies",
60998
+ doneText: `${brandColor("installed")} ${dim(`via \`${npm12} install\``)}`
60999
+ });
61000
+ };
59610
61001
  var installWrangler = async () => {
59611
61002
  const { npm: npm12 } = detectPackageManager();
59612
61003
  if ((0, import_fs5.existsSync)(import_path5.default.resolve("node_modules", "wrangler"))) {
@@ -59684,7 +61075,7 @@ async function getWorkerdCompatibilityDate() {
59684
61075
  }
59685
61076
 
59686
61077
  // src/helpers/poll.ts
59687
- var import_promises = require("node:dns/promises");
61078
+ var import_dns2 = __toESM(require_dns2());
59688
61079
  var import_undici = __toESM(require_undici());
59689
61080
  var TIMEOUT = 1e3 * 60 * 5;
59690
61081
  var POLL_INTERVAL = 1e3;
@@ -59693,14 +61084,28 @@ var poll = async (url) => {
59693
61084
  const domain = new URL(url).host;
59694
61085
  const s = spinner();
59695
61086
  s.start("Waiting for DNS to propagate");
61087
+ await sleep(10 * 1e3);
61088
+ await pollDns(domain, start, s);
61089
+ if (await pollHttp(url, start, s))
61090
+ return true;
61091
+ s.stop(
61092
+ `${brandColor(
61093
+ "timed out"
61094
+ )} while waiting for ${url} - try accessing it in a few minutes.`
61095
+ );
61096
+ return false;
61097
+ };
61098
+ var pollDns = async (domain, start, s) => {
59696
61099
  while (Date.now() - start < TIMEOUT) {
59697
61100
  s.update(`Waiting for DNS to propagate (${secondsSince(start)}s)`);
59698
- if (await dnsLookup(domain)) {
61101
+ if (await isDomainResolvable(domain)) {
59699
61102
  s.stop(`${brandColor("DNS propagation")} ${dim("complete")}.`);
59700
- break;
61103
+ return;
59701
61104
  }
59702
61105
  await sleep(POLL_INTERVAL);
59703
61106
  }
61107
+ };
61108
+ var pollHttp = async (url, start, s) => {
59704
61109
  s.start("Waiting for deployment to become available");
59705
61110
  while (Date.now() - start < TIMEOUT) {
59706
61111
  s.update(
@@ -59724,27 +61129,31 @@ var poll = async (url) => {
59724
61129
  }
59725
61130
  await sleep(POLL_INTERVAL);
59726
61131
  }
59727
- s.stop(
59728
- `${brandColor(
59729
- "timed out"
59730
- )} while waiting for ${url} - try accessing it in a few minutes.`
59731
- );
59732
- return false;
59733
61132
  };
59734
- async function dnsLookup(domain) {
61133
+ var isDomainResolvable = async (domain) => {
59735
61134
  try {
59736
- const resolver = new import_promises.Resolver({ timeout: TIMEOUT, tries: 1 });
59737
- resolver.setServers([
59738
- "1.1.1.1",
59739
- "1.0.0.1",
59740
- "2606:4700:4700::1111",
59741
- "2606:4700:4700::1001"
59742
- ]);
59743
- return (await resolver.resolve4(domain)).length > 0;
59744
- } catch (e) {
61135
+ const nameServers = await lookupSubdomainNameservers(domain);
61136
+ if (nameServers.length === 0)
61137
+ return false;
61138
+ const dns = new import_dns2.default({ nameServers });
61139
+ const res = await dns.resolve(domain, "A");
61140
+ return res.answers.length > 0;
61141
+ } catch (error) {
59745
61142
  return false;
59746
61143
  }
59747
- }
61144
+ };
61145
+ var lookupSubdomainNameservers = async (domain) => {
61146
+ const nameServers = await lookupDomainLevelNameservers(domain);
61147
+ const dns = new import_dns2.default({ nameServers });
61148
+ const res = await dns.resolve(domain, "NS");
61149
+ return res.authorities.filter((r2) => Boolean(r2.ns)).map((r2) => r2.ns);
61150
+ };
61151
+ var lookupDomainLevelNameservers = async (domain) => {
61152
+ const baseDomain = domain.split(".").slice(-2).join(".");
61153
+ const dns = new import_dns2.default({});
61154
+ const nameservers = await dns.resolve(baseDomain, "NS");
61155
+ return nameservers.answers.map((n) => n.ns);
61156
+ };
59748
61157
  async function sleep(ms) {
59749
61158
  return new Promise((res) => setTimeout(res, ms));
59750
61159
  }
@@ -59801,7 +61210,7 @@ var runDeploy = async (ctx) => {
59801
61210
  const result = await runCommand(deployCmd, {
59802
61211
  silent: true,
59803
61212
  cwd: ctx.project.path,
59804
- env: { CLOUDFLARE_ACCOUNT_ID: ctx.account.id },
61213
+ env: { CLOUDFLARE_ACCOUNT_ID: ctx.account.id, NODE_ENV: "production" },
59805
61214
  startText: `Deploying your application`,
59806
61215
  doneText: `${brandColor("deployed")} ${dim(`via \`${deployCmd}\``)}`
59807
61216
  });
@@ -59861,7 +61270,7 @@ var printSummary = async (ctx) => {
59861
61270
  ],
59862
61271
  [
59863
61272
  `Read the documentation`,
59864
- `https://developers.cloudflare.com/${ctx.framework ? "pages" : "workers"}`
61273
+ `https://developers.cloudflare.com/${ctx.framework ? ctx.framework.config.type === "workers" ? "workers" : "pages" : "workers"}`
59865
61274
  ],
59866
61275
  [`Stuck? Join us at`, `https://discord.gg/cloudflaredev`]
59867
61276
  ];
@@ -59898,6 +61307,7 @@ var printSummary = async (ctx) => {
59898
61307
  }
59899
61308
  }
59900
61309
  endSection("See you again soon!");
61310
+ process.exit(0);
59901
61311
  };
59902
61312
  var offerGit = async (ctx) => {
59903
61313
  const gitInstalled = await isGitInstalled();
@@ -60001,7 +61411,7 @@ var import_path8 = require("path");
60001
61411
  var import_process3 = require("process");
60002
61412
 
60003
61413
  // src/frameworks/angular/index.ts
60004
- var import_promises2 = require("node:fs/promises");
61414
+ var import_promises = require("node:fs/promises");
60005
61415
  var import_node_path = require("node:path");
60006
61416
 
60007
61417
  // src/helpers/files.ts
@@ -60111,7 +61521,7 @@ var angular_default = config;
60111
61521
  async function installCFWorker(ctx) {
60112
61522
  const s = spinner();
60113
61523
  s.start(`Adding Cloudflare Pages adapter code`);
60114
- await (0, import_promises2.cp)(
61524
+ await (0, import_promises.cp)(
60115
61525
  // eslint-disable-next-line no-restricted-globals
60116
61526
  (0, import_node_path.resolve)(__dirname, "./angular/templates"),
60117
61527
  (0, import_node_path.resolve)(ctx.project.path),
@@ -60153,7 +61563,7 @@ async function updateAppCode() {
60153
61563
  "providers: [provideHttpClient(withFetch()), provideClientHydration(), "
60154
61564
  );
60155
61565
  writeFile2((0, import_node_path.resolve)(appConfigPath), newAppConfig);
60156
- await (0, import_promises2.rm)((0, import_node_path.resolve)("server.ts"));
61566
+ await (0, import_promises.rm)((0, import_node_path.resolve)("server.ts"));
60157
61567
  s.stop(`${brandColor(`updated`)} ${dim(appConfigPath)}`);
60158
61568
  }
60159
61569
  function updateAngularJson(ctx) {
@@ -60272,7 +61682,7 @@ var generate5 = async (ctx) => {
60272
61682
  const version2 = getFrameworkVersion(ctx);
60273
61683
  await runFrameworkGenerator(
60274
61684
  ctx,
60275
- `${dlx5} create-hono@${version2} ${ctx.project.name} --template cloudflare-pages`
61685
+ `${dlx5} create-hono@${version2} ${ctx.project.name} --template cloudflare-workers`
60276
61686
  );
60277
61687
  logRaw("");
60278
61688
  };
@@ -60281,7 +61691,8 @@ var config5 = {
60281
61691
  displayName: "Hono",
60282
61692
  packageScripts: {},
60283
61693
  deployCommand: "deploy",
60284
- devCommand: "dev"
61694
+ devCommand: "dev",
61695
+ type: "workers"
60285
61696
  };
60286
61697
  var hono_default = config5;
60287
61698
 
@@ -60422,7 +61833,7 @@ var config6 = {
60422
61833
  configure: configure3,
60423
61834
  displayName: "Next",
60424
61835
  packageScripts: {
60425
- "pages:build": `${npx3} @cloudflare/next-on-pages@1`,
61836
+ "pages:build": `${dlx6} @cloudflare/next-on-pages@1`,
60426
61837
  "pages:deploy": `${npm5} run pages:build && wrangler pages deploy .vercel/output/static`,
60427
61838
  "pages:watch": `${npx3} @cloudflare/next-on-pages@1 --watch`,
60428
61839
  "pages:dev": `${npx3} wrangler pages dev .vercel/output/static --compatibility-flag=nodejs_compat`
@@ -60435,7 +61846,7 @@ var config6 = {
60435
61846
  "--src-dir",
60436
61847
  "--app",
60437
61848
  "--import-alias",
60438
- '"@/*"'
61849
+ "@/*"
60439
61850
  ],
60440
61851
  compatibilityFlags: ["nodejs_compat"]
60441
61852
  };
@@ -60505,8 +61916,12 @@ var generate9 = async (ctx) => {
60505
61916
  );
60506
61917
  logRaw("");
60507
61918
  };
61919
+ var configure6 = async (ctx) => {
61920
+ await resetPackageManager(ctx);
61921
+ };
60508
61922
  var config9 = {
60509
61923
  generate: generate9,
61924
+ configure: configure6,
60510
61925
  displayName: "React",
60511
61926
  packageScripts: {
60512
61927
  "pages:dev": `wrangler pages dev ${compatDateFlag()} --port 3000 -- ${npm7} start`,
@@ -60559,7 +61974,7 @@ var generate11 = async (ctx) => {
60559
61974
  await runFrameworkGenerator(ctx, `${dlx11} create-solid@${version2}`);
60560
61975
  logRaw("");
60561
61976
  };
60562
- var configure6 = async () => {
61977
+ var configure7 = async () => {
60563
61978
  const pkg = "solid-start-cloudflare-pages";
60564
61979
  await installPackages([pkg], {
60565
61980
  dev: true,
@@ -60574,7 +61989,7 @@ var configure6 = async () => {
60574
61989
  };
60575
61990
  var config11 = {
60576
61991
  generate: generate11,
60577
- configure: configure6,
61992
+ configure: configure7,
60578
61993
  displayName: "Solid",
60579
61994
  packageScripts: {
60580
61995
  "pages:dev": `wrangler pages dev ${compatDateFlag()} --proxy 3000 -- ${npm9} run dev`,
@@ -60639,7 +62054,7 @@ var generate12 = async (ctx) => {
60639
62054
  );
60640
62055
  logRaw("");
60641
62056
  };
60642
- var configure7 = async (ctx) => {
62057
+ var configure8 = async (ctx) => {
60643
62058
  process.chdir(ctx.project.path);
60644
62059
  await npmInstall();
60645
62060
  const pkg = `@sveltejs/adapter-cloudflare`;
@@ -60674,7 +62089,7 @@ var configure7 = async (ctx) => {
60674
62089
  };
60675
62090
  var config12 = {
60676
62091
  generate: generate12,
60677
- configure: configure7,
62092
+ configure: configure8,
60678
62093
  displayName: "Svelte",
60679
62094
  packageScripts: {
60680
62095
  "pages:dev": `wrangler pages dev ${compatDateFlag()} --proxy 5173 -- ${npm10} run dev`,
@@ -60692,7 +62107,7 @@ var versionMap_default = {
60692
62107
  hono: "0.2.6",
60693
62108
  next: "13.4.2",
60694
62109
  nuxt: "3.4.2",
60695
- qwik: "1.1.x",
62110
+ qwik: "1.2.7",
60696
62111
  react: "5.0.1",
60697
62112
  remix: "1.16.0",
60698
62113
  solid: "0.2.26",
@@ -60772,11 +62187,11 @@ var runPagesGenerator = async (args) => {
60772
62187
  },
60773
62188
  args
60774
62189
  };
60775
- const { generate: generate14, configure: configure8 } = FrameworkMap[framework];
62190
+ const { generate: generate14, configure: configure9 } = FrameworkMap[framework];
60776
62191
  await generate14({ ...ctx });
60777
62192
  startSection("Configuring your application for Cloudflare", "Step 2 of 3");
60778
- if (configure8) {
60779
- await configure8({ ...ctx });
62193
+ if (configure9) {
62194
+ await configure9({ ...ctx });
60780
62195
  }
60781
62196
  await updatePackageScripts(ctx);
60782
62197
  await offerGit(ctx);
@@ -60844,6 +62259,8 @@ var updatePackageScripts = async (ctx) => {
60844
62259
  var createProject = async (ctx) => {
60845
62260
  if (ctx.args.deploy === false)
60846
62261
  return;
62262
+ if (ctx.framework?.config.type === "workers")
62263
+ return;
60847
62264
  if (!ctx.account?.id) {
60848
62265
  crash("Failed to read Cloudflare account.");
60849
62266
  return;
@@ -60857,7 +62274,9 @@ var createProject = async (ctx) => {
60857
62274
  await retry(
60858
62275
  CREATE_PROJECT_RETRIES,
60859
62276
  async () => runCommand(cmd, {
60860
- silent: true,
62277
+ // Make this command more verbose in test mode to aid
62278
+ // troubleshooting API errors
62279
+ silent: process.env.VITEST == void 0,
60861
62280
  cwd: ctx.project.path,
60862
62281
  env: { CLOUDFLARE_ACCOUNT_ID },
60863
62282
  startText: "Creating Pages project",
@@ -60865,12 +62284,12 @@ var createProject = async (ctx) => {
60865
62284
  })
60866
62285
  );
60867
62286
  } catch (error) {
60868
- crash("Failed to create pages application. See output above.");
62287
+ crash("Failed to create pages project. See output above.");
60869
62288
  }
60870
62289
  };
60871
62290
 
60872
62291
  // src/workers.ts
60873
- var import_promises3 = require("fs/promises");
62292
+ var import_promises2 = require("fs/promises");
60874
62293
  var import_os = require("os");
60875
62294
  var import_path9 = require("path");
60876
62295
  var import_process4 = require("process");
@@ -60917,7 +62336,7 @@ async function copyFiles(ctx) {
60917
62336
  const { template, path: srcdir } = await getTemplate(ctx);
60918
62337
  const destdir = ctx.project.path;
60919
62338
  updateStatus(`Copying files from "${template}" template`);
60920
- await (0, import_promises3.cp)(srcdir, destdir, { recursive: true });
62339
+ await (0, import_promises2.cp)(srcdir, destdir, { recursive: true });
60921
62340
  }
60922
62341
  async function copyExistingWorkerFiles(ctx) {
60923
62342
  const { preexisting } = await getTemplate(ctx);
@@ -60935,7 +62354,7 @@ async function copyExistingWorkerFiles(ctx) {
60935
62354
  }
60936
62355
  );
60937
62356
  }
60938
- const tempdir = await (0, import_promises3.mkdtemp)(
62357
+ const tempdir = await (0, import_promises2.mkdtemp)(
60939
62358
  (0, import_path9.join)((0, import_os.tmpdir)(), "c3-wrangler-init--from-dash-")
60940
62359
  );
60941
62360
  await runCommand(
@@ -60951,15 +62370,15 @@ async function copyExistingWorkerFiles(ctx) {
60951
62370
  )}`
60952
62371
  }
60953
62372
  );
60954
- for (const filename of await (0, import_promises3.readdir)((0, import_path9.join)(ctx.project.path, "src"))) {
60955
- await (0, import_promises3.rm)((0, import_path9.join)(ctx.project.path, "src", filename));
62373
+ for (const filename of await (0, import_promises2.readdir)((0, import_path9.join)(ctx.project.path, "src"))) {
62374
+ await (0, import_promises2.rm)((0, import_path9.join)(ctx.project.path, "src", filename));
60956
62375
  }
60957
- await (0, import_promises3.cp)(
62376
+ await (0, import_promises2.cp)(
60958
62377
  (0, import_path9.join)(tempdir, ctx.args.existingScript, "src"),
60959
62378
  (0, import_path9.join)(ctx.project.path, "src"),
60960
62379
  { recursive: true }
60961
62380
  );
60962
- await (0, import_promises3.cp)(
62381
+ await (0, import_promises2.cp)(
60963
62382
  (0, import_path9.join)(tempdir, ctx.args.existingScript, "wrangler.toml"),
60964
62383
  (0, import_path9.join)(ctx.project.path, "wrangler.toml")
60965
62384
  );
@@ -60971,8 +62390,8 @@ async function updateFiles(ctx) {
60971
62390
  wranglertoml: (0, import_path9.resolve)(ctx.project.path, "wrangler.toml")
60972
62391
  };
60973
62392
  const contents = {
60974
- packagejson: JSON.parse(await (0, import_promises3.readFile)(paths.packagejson, "utf-8")),
60975
- wranglertoml: await (0, import_promises3.readFile)(paths.wranglertoml, "utf-8")
62393
+ packagejson: JSON.parse(await (0, import_promises2.readFile)(paths.packagejson, "utf-8")),
62394
+ wranglertoml: await (0, import_promises2.readFile)(paths.wranglertoml, "utf-8")
60976
62395
  };
60977
62396
  if (contents.packagejson.name === "<TBD>") {
60978
62397
  contents.packagejson.name = ctx.project.name;
@@ -60981,11 +62400,11 @@ async function updateFiles(ctx) {
60981
62400
  /^compatibility_date\s*=\s*"<TBD>"/m,
60982
62401
  `compatibility_date = "${await getWorkerdCompatibilityDate()}"`
60983
62402
  );
60984
- await (0, import_promises3.writeFile)(
62403
+ await (0, import_promises2.writeFile)(
60985
62404
  paths.packagejson,
60986
62405
  JSON.stringify(contents.packagejson, null, 2)
60987
62406
  );
60988
- await (0, import_promises3.writeFile)(paths.wranglertoml, contents.wranglertoml);
62407
+ await (0, import_promises2.writeFile)(paths.wranglertoml, contents.wranglertoml);
60989
62408
  }
60990
62409
 
60991
62410
  // src/cli.ts