create-tamagui 1.86.3 → 1.86.5

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/index.js CHANGED
@@ -1701,24 +1701,11 @@ var require_strip_final_newline = __commonJS({
1701
1701
  }
1702
1702
  });
1703
1703
 
1704
- // ../../node_modules/npm-run-path/node_modules/path-key/index.js
1705
- var require_path_key2 = __commonJS({
1706
- "../../node_modules/npm-run-path/node_modules/path-key/index.js"(exports2, module2) {
1707
- "use strict";
1708
- var pathKey = (options = {}) => {
1709
- let environment = options.env || process.env;
1710
- return (options.platform || process.platform) !== "win32" ? "PATH" : Object.keys(environment).reverse().find((key) => key.toUpperCase() === "PATH") || "Path";
1711
- };
1712
- module2.exports = pathKey;
1713
- module2.exports.default = pathKey;
1714
- }
1715
- });
1716
-
1717
- // ../../node_modules/npm-run-path/index.js
1704
+ // ../../node_modules/execa/node_modules/npm-run-path/index.js
1718
1705
  var require_npm_run_path = __commonJS({
1719
- "../../node_modules/npm-run-path/index.js"(exports2, module2) {
1706
+ "../../node_modules/execa/node_modules/npm-run-path/index.js"(exports2, module2) {
1720
1707
  "use strict";
1721
- var path6 = require("path"), pathKey = require_path_key2(), npmRunPath = (options) => {
1708
+ var path6 = require("path"), pathKey = require_path_key(), npmRunPath = (options) => {
1722
1709
  options = {
1723
1710
  cwd: process.cwd(),
1724
1711
  path: process.env[pathKey()],
@@ -1744,9 +1731,9 @@ var require_npm_run_path = __commonJS({
1744
1731
  }
1745
1732
  });
1746
1733
 
1747
- // ../../node_modules/mimic-fn/index.js
1734
+ // ../../node_modules/onetime/node_modules/mimic-fn/index.js
1748
1735
  var require_mimic_fn = __commonJS({
1749
- "../../node_modules/mimic-fn/index.js"(exports2, module2) {
1736
+ "../../node_modules/onetime/node_modules/mimic-fn/index.js"(exports2, module2) {
1750
1737
  "use strict";
1751
1738
  var mimicFn = (to, from) => {
1752
1739
  for (let prop of Reflect.ownKeys(from))
@@ -4447,7 +4434,7 @@ var require_opener = __commonJS({
4447
4434
  var require_kleur = __commonJS({
4448
4435
  "../../node_modules/kleur/index.js"(exports2, module2) {
4449
4436
  "use strict";
4450
- var { FORCE_COLOR, NODE_DISABLE_COLORS, TERM } = process.env, $2 = {
4437
+ var { FORCE_COLOR, NODE_DISABLE_COLORS, TERM } = process.env, $3 = {
4451
4438
  enabled: !NODE_DISABLE_COLORS && TERM !== "dumb" && FORCE_COLOR !== "0",
4452
4439
  // modifiers
4453
4440
  reset: init(0, 0),
@@ -4487,7 +4474,7 @@ var require_kleur = __commonJS({
4487
4474
  }
4488
4475
  function chain(has, keys) {
4489
4476
  let ctx = { has, keys };
4490
- return ctx.reset = $2.reset.bind(ctx), ctx.bold = $2.bold.bind(ctx), ctx.dim = $2.dim.bind(ctx), ctx.italic = $2.italic.bind(ctx), ctx.underline = $2.underline.bind(ctx), ctx.inverse = $2.inverse.bind(ctx), ctx.hidden = $2.hidden.bind(ctx), ctx.strikethrough = $2.strikethrough.bind(ctx), ctx.black = $2.black.bind(ctx), ctx.red = $2.red.bind(ctx), ctx.green = $2.green.bind(ctx), ctx.yellow = $2.yellow.bind(ctx), ctx.blue = $2.blue.bind(ctx), ctx.magenta = $2.magenta.bind(ctx), ctx.cyan = $2.cyan.bind(ctx), ctx.white = $2.white.bind(ctx), ctx.gray = $2.gray.bind(ctx), ctx.grey = $2.grey.bind(ctx), ctx.bgBlack = $2.bgBlack.bind(ctx), ctx.bgRed = $2.bgRed.bind(ctx), ctx.bgGreen = $2.bgGreen.bind(ctx), ctx.bgYellow = $2.bgYellow.bind(ctx), ctx.bgBlue = $2.bgBlue.bind(ctx), ctx.bgMagenta = $2.bgMagenta.bind(ctx), ctx.bgCyan = $2.bgCyan.bind(ctx), ctx.bgWhite = $2.bgWhite.bind(ctx), ctx;
4477
+ return ctx.reset = $3.reset.bind(ctx), ctx.bold = $3.bold.bind(ctx), ctx.dim = $3.dim.bind(ctx), ctx.italic = $3.italic.bind(ctx), ctx.underline = $3.underline.bind(ctx), ctx.inverse = $3.inverse.bind(ctx), ctx.hidden = $3.hidden.bind(ctx), ctx.strikethrough = $3.strikethrough.bind(ctx), ctx.black = $3.black.bind(ctx), ctx.red = $3.red.bind(ctx), ctx.green = $3.green.bind(ctx), ctx.yellow = $3.yellow.bind(ctx), ctx.blue = $3.blue.bind(ctx), ctx.magenta = $3.magenta.bind(ctx), ctx.cyan = $3.cyan.bind(ctx), ctx.white = $3.white.bind(ctx), ctx.gray = $3.gray.bind(ctx), ctx.grey = $3.grey.bind(ctx), ctx.bgBlack = $3.bgBlack.bind(ctx), ctx.bgRed = $3.bgRed.bind(ctx), ctx.bgGreen = $3.bgGreen.bind(ctx), ctx.bgYellow = $3.bgYellow.bind(ctx), ctx.bgBlue = $3.bgBlue.bind(ctx), ctx.bgMagenta = $3.bgMagenta.bind(ctx), ctx.bgCyan = $3.bgCyan.bind(ctx), ctx.bgWhite = $3.bgWhite.bind(ctx), ctx;
4491
4478
  }
4492
4479
  function init(open3, close) {
4493
4480
  let blk = {
@@ -4496,10 +4483,10 @@ var require_kleur = __commonJS({
4496
4483
  rgx: new RegExp(`\\x1b\\[${close}m`, "g")
4497
4484
  };
4498
4485
  return function(txt) {
4499
- return this !== void 0 && this.has !== void 0 ? (this.has.includes(open3) || (this.has.push(open3), this.keys.push(blk)), txt === void 0 ? this : $2.enabled ? run2(this.keys, txt + "") : txt + "") : txt === void 0 ? chain([open3], [blk]) : $2.enabled ? run2([blk], txt + "") : txt + "";
4486
+ return this !== void 0 && this.has !== void 0 ? (this.has.includes(open3) || (this.has.push(open3), this.keys.push(blk)), txt === void 0 ? this : $3.enabled ? run2(this.keys, txt + "") : txt + "") : txt === void 0 ? chain([open3], [blk]) : $3.enabled ? run2([blk], txt + "") : txt + "";
4500
4487
  };
4501
4488
  }
4502
- module2.exports = $2;
4489
+ module2.exports = $3;
4503
4490
  }
4504
4491
  });
4505
4492
 
@@ -4735,12 +4722,12 @@ var require_text = __commonJS({
4735
4722
  "use strict";
4736
4723
  function asyncGeneratorStep(gen, resolve7, reject, _next, _throw, key, arg) {
4737
4724
  try {
4738
- var info = gen[key](arg), value = info.value;
4725
+ var info2 = gen[key](arg), value = info2.value;
4739
4726
  } catch (error) {
4740
4727
  reject(error);
4741
4728
  return;
4742
4729
  }
4743
- info.done ? resolve7(value) : Promise.resolve(value).then(_next, _throw);
4730
+ info2.done ? resolve7(value) : Promise.resolve(value).then(_next, _throw);
4744
4731
  }
4745
4732
  function _asyncToGenerator(fn) {
4746
4733
  return function() {
@@ -5251,12 +5238,12 @@ var require_date = __commonJS({
5251
5238
  "use strict";
5252
5239
  function asyncGeneratorStep(gen, resolve7, reject, _next, _throw, key, arg) {
5253
5240
  try {
5254
- var info = gen[key](arg), value = info.value;
5241
+ var info2 = gen[key](arg), value = info2.value;
5255
5242
  } catch (error) {
5256
5243
  reject(error);
5257
5244
  return;
5258
5245
  }
5259
- info.done ? resolve7(value) : Promise.resolve(value).then(_next, _throw);
5246
+ info2.done ? resolve7(value) : Promise.resolve(value).then(_next, _throw);
5260
5247
  }
5261
5248
  function _asyncToGenerator(fn) {
5262
5249
  return function() {
@@ -5417,12 +5404,12 @@ var require_number = __commonJS({
5417
5404
  "use strict";
5418
5405
  function asyncGeneratorStep(gen, resolve7, reject, _next, _throw, key, arg) {
5419
5406
  try {
5420
- var info = gen[key](arg), value = info.value;
5407
+ var info2 = gen[key](arg), value = info2.value;
5421
5408
  } catch (error) {
5422
5409
  reject(error);
5423
5410
  return;
5424
5411
  }
5425
- info.done ? resolve7(value) : Promise.resolve(value).then(_next, _throw);
5412
+ info2.done ? resolve7(value) : Promise.resolve(value).then(_next, _throw);
5426
5413
  }
5427
5414
  function _asyncToGenerator(fn) {
5428
5415
  return function() {
@@ -5657,12 +5644,12 @@ var require_autocomplete = __commonJS({
5657
5644
  "use strict";
5658
5645
  function asyncGeneratorStep(gen, resolve7, reject, _next, _throw, key, arg) {
5659
5646
  try {
5660
- var info = gen[key](arg), value = info.value;
5647
+ var info2 = gen[key](arg), value = info2.value;
5661
5648
  } catch (error) {
5662
5649
  reject(error);
5663
5650
  return;
5664
5651
  }
5665
- info.done ? resolve7(value) : Promise.resolve(value).then(_next, _throw);
5652
+ info2.done ? resolve7(value) : Promise.resolve(value).then(_next, _throw);
5666
5653
  }
5667
5654
  function _asyncToGenerator(fn) {
5668
5655
  return function() {
@@ -5946,28 +5933,28 @@ var require_elements = __commonJS({
5946
5933
  var require_prompts = __commonJS({
5947
5934
  "../../node_modules/prompts/dist/prompts.js"(exports2) {
5948
5935
  "use strict";
5949
- var $2 = exports2, el = require_elements(), noop2 = (v) => v;
5936
+ var $3 = exports2, el = require_elements(), noop2 = (v) => v;
5950
5937
  function toPrompt(type, args, opts = {}) {
5951
5938
  return new Promise((res, rej) => {
5952
5939
  let p = new el[type](args), onAbort = opts.onAbort || noop2, onSubmit = opts.onSubmit || noop2;
5953
5940
  p.on("state", args.onState || noop2), p.on("submit", (x) => res(onSubmit(x))), p.on("abort", (x) => rej(onAbort(x)));
5954
5941
  });
5955
5942
  }
5956
- $2.text = (args) => toPrompt("TextPrompt", args);
5957
- $2.password = (args) => (args.style = "password", $2.text(args));
5958
- $2.invisible = (args) => (args.style = "invisible", $2.text(args));
5959
- $2.number = (args) => toPrompt("NumberPrompt", args);
5960
- $2.date = (args) => toPrompt("DatePrompt", args);
5961
- $2.confirm = (args) => toPrompt("ConfirmPrompt", args);
5962
- $2.list = (args) => {
5943
+ $3.text = (args) => toPrompt("TextPrompt", args);
5944
+ $3.password = (args) => (args.style = "password", $3.text(args));
5945
+ $3.invisible = (args) => (args.style = "invisible", $3.text(args));
5946
+ $3.number = (args) => toPrompt("NumberPrompt", args);
5947
+ $3.date = (args) => toPrompt("DatePrompt", args);
5948
+ $3.confirm = (args) => toPrompt("ConfirmPrompt", args);
5949
+ $3.list = (args) => {
5963
5950
  let sep2 = args.separator || ",";
5964
5951
  return toPrompt("TextPrompt", args, {
5965
5952
  onSubmit: (str) => str.split(sep2).map((s) => s.trim())
5966
5953
  });
5967
5954
  };
5968
- $2.toggle = (args) => toPrompt("TogglePrompt", args);
5969
- $2.select = (args) => toPrompt("SelectPrompt", args);
5970
- $2.multiselect = (args) => {
5955
+ $3.toggle = (args) => toPrompt("TogglePrompt", args);
5956
+ $3.select = (args) => toPrompt("SelectPrompt", args);
5957
+ $3.multiselect = (args) => {
5971
5958
  args.choices = [].concat(args.choices || []);
5972
5959
  let toSelected = (items) => items.filter((item) => item.selected).map((item) => item.value);
5973
5960
  return toPrompt("MultiselectPrompt", args, {
@@ -5975,7 +5962,7 @@ var require_prompts = __commonJS({
5975
5962
  onSubmit: toSelected
5976
5963
  });
5977
5964
  };
5978
- $2.autocompleteMultiselect = (args) => {
5965
+ $3.autocompleteMultiselect = (args) => {
5979
5966
  args.choices = [].concat(args.choices || []);
5980
5967
  let toSelected = (items) => items.filter((item) => item.selected).map((item) => item.value);
5981
5968
  return toPrompt("AutocompleteMultiselectPrompt", args, {
@@ -5984,7 +5971,7 @@ var require_prompts = __commonJS({
5984
5971
  });
5985
5972
  };
5986
5973
  var byTitle = (input, choices) => Promise.resolve(choices.filter((item) => item.title.slice(0, input.length).toLowerCase() === input.toLowerCase()));
5987
- $2.autocomplete = (args) => (args.suggest = args.suggest || byTitle, args.choices = [].concat(args.choices || []), toPrompt("AutocompletePrompt", args));
5974
+ $3.autocomplete = (args) => (args.suggest = args.suggest || byTitle, args.choices = [].concat(args.choices || []), toPrompt("AutocompletePrompt", args));
5988
5975
  }
5989
5976
  });
5990
5977
 
@@ -6008,12 +5995,12 @@ var require_dist = __commonJS({
6008
5995
  }
6009
5996
  function asyncGeneratorStep(gen, resolve7, reject, _next, _throw, key, arg) {
6010
5997
  try {
6011
- var info = gen[key](arg), value = info.value;
5998
+ var info2 = gen[key](arg), value = info2.value;
6012
5999
  } catch (error) {
6013
6000
  reject(error);
6014
6001
  return;
6015
6002
  }
6016
- info.done ? resolve7(value) : Promise.resolve(value).then(_next, _throw);
6003
+ info2.done ? resolve7(value) : Promise.resolve(value).then(_next, _throw);
6017
6004
  }
6018
6005
  function _asyncToGenerator(fn) {
6019
6006
  return function() {
@@ -6030,7 +6017,7 @@ var require_dist = __commonJS({
6030
6017
  });
6031
6018
  };
6032
6019
  }
6033
- var prompts6 = require_prompts(), passOn = ["suggest", "format", "onState", "validate", "onRender"], noop2 = () => {
6020
+ var prompts5 = require_prompts(), passOn = ["suggest", "format", "onState", "validate", "onRender"], noop2 = () => {
6034
6021
  };
6035
6022
  function prompt() {
6036
6023
  return _prompt.apply(this, arguments);
@@ -6067,14 +6054,14 @@ var require_dist = __commonJS({
6067
6054
  throw new Error("prompt message is required");
6068
6055
  var _question2 = question;
6069
6056
  if (name = _question2.name, type = _question2.type, !!type) {
6070
- if (prompts6[type] === void 0)
6057
+ if (prompts5[type] === void 0)
6071
6058
  throw new Error(`prompt type (${type}) is not defined`);
6072
6059
  if (override2[question.name] !== void 0 && (answer = yield getFormattedAnswer(question, override2[question.name]), answer !== void 0)) {
6073
6060
  answers[name] = answer;
6074
6061
  continue;
6075
6062
  }
6076
6063
  try {
6077
- answer = prompt._injected ? getInjectedAnswer(prompt._injected) : yield prompts6[type](question), answers[name] = answer = yield getFormattedAnswer(question, answer, !0), quit = yield onSubmit(question, answer, answers);
6064
+ answer = prompt._injected ? getInjectedAnswer(prompt._injected) : yield prompts5[type](question), answers[name] = answer = yield getFormattedAnswer(question, answer, !0), quit = yield onSubmit(question, answer, answers);
6078
6065
  } catch {
6079
6066
  quit = !(yield onCancel(question, answers));
6080
6067
  }
@@ -6109,7 +6096,7 @@ var require_dist = __commonJS({
6109
6096
  }
6110
6097
  module2.exports = Object.assign(prompt, {
6111
6098
  prompt,
6112
- prompts: prompts6,
6099
+ prompts: prompts5,
6113
6100
  inject,
6114
6101
  override
6115
6102
  });
@@ -7385,28 +7372,28 @@ var require_elements2 = __commonJS({
7385
7372
  var require_prompts2 = __commonJS({
7386
7373
  "../../node_modules/prompts/lib/prompts.js"(exports2) {
7387
7374
  "use strict";
7388
- var $2 = exports2, el = require_elements2(), noop2 = (v) => v;
7375
+ var $3 = exports2, el = require_elements2(), noop2 = (v) => v;
7389
7376
  function toPrompt(type, args, opts = {}) {
7390
7377
  return new Promise((res, rej) => {
7391
7378
  let p = new el[type](args), onAbort = opts.onAbort || noop2, onSubmit = opts.onSubmit || noop2;
7392
7379
  p.on("state", args.onState || noop2), p.on("submit", (x) => res(onSubmit(x))), p.on("abort", (x) => rej(onAbort(x)));
7393
7380
  });
7394
7381
  }
7395
- $2.text = (args) => toPrompt("TextPrompt", args);
7396
- $2.password = (args) => (args.style = "password", $2.text(args));
7397
- $2.invisible = (args) => (args.style = "invisible", $2.text(args));
7398
- $2.number = (args) => toPrompt("NumberPrompt", args);
7399
- $2.date = (args) => toPrompt("DatePrompt", args);
7400
- $2.confirm = (args) => toPrompt("ConfirmPrompt", args);
7401
- $2.list = (args) => {
7382
+ $3.text = (args) => toPrompt("TextPrompt", args);
7383
+ $3.password = (args) => (args.style = "password", $3.text(args));
7384
+ $3.invisible = (args) => (args.style = "invisible", $3.text(args));
7385
+ $3.number = (args) => toPrompt("NumberPrompt", args);
7386
+ $3.date = (args) => toPrompt("DatePrompt", args);
7387
+ $3.confirm = (args) => toPrompt("ConfirmPrompt", args);
7388
+ $3.list = (args) => {
7402
7389
  let sep2 = args.separator || ",";
7403
7390
  return toPrompt("TextPrompt", args, {
7404
7391
  onSubmit: (str) => str.split(sep2).map((s) => s.trim())
7405
7392
  });
7406
7393
  };
7407
- $2.toggle = (args) => toPrompt("TogglePrompt", args);
7408
- $2.select = (args) => toPrompt("SelectPrompt", args);
7409
- $2.multiselect = (args) => {
7394
+ $3.toggle = (args) => toPrompt("TogglePrompt", args);
7395
+ $3.select = (args) => toPrompt("SelectPrompt", args);
7396
+ $3.multiselect = (args) => {
7410
7397
  args.choices = [].concat(args.choices || []);
7411
7398
  let toSelected = (items) => items.filter((item) => item.selected).map((item) => item.value);
7412
7399
  return toPrompt("MultiselectPrompt", args, {
@@ -7414,7 +7401,7 @@ var require_prompts2 = __commonJS({
7414
7401
  onSubmit: toSelected
7415
7402
  });
7416
7403
  };
7417
- $2.autocompleteMultiselect = (args) => {
7404
+ $3.autocompleteMultiselect = (args) => {
7418
7405
  args.choices = [].concat(args.choices || []);
7419
7406
  let toSelected = (items) => items.filter((item) => item.selected).map((item) => item.value);
7420
7407
  return toPrompt("AutocompleteMultiselectPrompt", args, {
@@ -7425,7 +7412,7 @@ var require_prompts2 = __commonJS({
7425
7412
  var byTitle = (input, choices) => Promise.resolve(
7426
7413
  choices.filter((item) => item.title.slice(0, input.length).toLowerCase() === input.toLowerCase())
7427
7414
  );
7428
- $2.autocomplete = (args) => (args.suggest = args.suggest || byTitle, args.choices = [].concat(args.choices || []), toPrompt("AutocompletePrompt", args));
7415
+ $3.autocomplete = (args) => (args.suggest = args.suggest || byTitle, args.choices = [].concat(args.choices || []), toPrompt("AutocompletePrompt", args));
7429
7416
  }
7430
7417
  });
7431
7418
 
@@ -7433,7 +7420,7 @@ var require_prompts2 = __commonJS({
7433
7420
  var require_lib2 = __commonJS({
7434
7421
  "../../node_modules/prompts/lib/index.js"(exports2, module2) {
7435
7422
  "use strict";
7436
- var prompts6 = require_prompts2(), passOn = ["suggest", "format", "onState", "validate", "onRender"], noop2 = () => {
7423
+ var prompts5 = require_prompts2(), passOn = ["suggest", "format", "onState", "validate", "onRender"], noop2 = () => {
7437
7424
  };
7438
7425
  async function prompt(questions = [], { onSubmit = noop2, onCancel = noop2 } = {}) {
7439
7426
  let answers = {}, override2 = prompt._override || {};
@@ -7453,14 +7440,14 @@ var require_lib2 = __commonJS({
7453
7440
  if (typeof question.message != "string")
7454
7441
  throw new Error("prompt message is required");
7455
7442
  if ({ name, type } = question, !!type) {
7456
- if (prompts6[type] === void 0)
7443
+ if (prompts5[type] === void 0)
7457
7444
  throw new Error(`prompt type (${type}) is not defined`);
7458
7445
  if (override2[question.name] !== void 0 && (answer = await getFormattedAnswer(question, override2[question.name]), answer !== void 0)) {
7459
7446
  answers[name] = answer;
7460
7447
  continue;
7461
7448
  }
7462
7449
  try {
7463
- answer = prompt._injected ? getInjectedAnswer(prompt._injected) : await prompts6[type](question), answers[name] = answer = await getFormattedAnswer(question, answer, !0), quit = await onSubmit(question, answer, answers);
7450
+ answer = prompt._injected ? getInjectedAnswer(prompt._injected) : await prompts5[type](question), answers[name] = answer = await getFormattedAnswer(question, answer, !0), quit = await onSubmit(question, answer, answers);
7464
7451
  } catch {
7465
7452
  quit = !await onCancel(question, answers);
7466
7453
  }
@@ -7482,7 +7469,7 @@ var require_lib2 = __commonJS({
7482
7469
  function override(answers) {
7483
7470
  prompt._override = Object.assign({}, answers);
7484
7471
  }
7485
- module2.exports = Object.assign(prompt, { prompt, prompts: prompts6, inject, override });
7472
+ module2.exports = Object.assign(prompt, { prompt, prompts: prompts5, inject, override });
7486
7473
  }
7487
7474
  });
7488
7475
 
@@ -8208,9 +8195,9 @@ var require_path = __commonJS({
8208
8195
  }
8209
8196
  });
8210
8197
 
8211
- // ../../node_modules/is-extglob/index.js
8198
+ // ../../node_modules/is-glob/node_modules/is-extglob/index.js
8212
8199
  var require_is_extglob = __commonJS({
8213
- "../../node_modules/is-extglob/index.js"(exports2, module2) {
8200
+ "../../node_modules/is-glob/node_modules/is-extglob/index.js"(exports2, module2) {
8214
8201
  module2.exports = function(str) {
8215
8202
  if (typeof str != "string" || str === "")
8216
8203
  return !1;
@@ -11265,7 +11252,7 @@ var require_partial = __commonJS({
11265
11252
  Object.defineProperty(exports2, "__esModule", { value: !0 });
11266
11253
  var matcher_1 = require_matcher(), PartialMatcher = class extends matcher_1.default {
11267
11254
  match(filepath) {
11268
- let parts = filepath.split("/"), levels = parts.length, patterns = this._storage.filter((info) => !info.complete || info.segments.length > levels);
11255
+ let parts = filepath.split("/"), levels = parts.length, patterns = this._storage.filter((info2) => !info2.complete || info2.segments.length > levels);
11269
11256
  for (let pattern of patterns) {
11270
11257
  let section = pattern.sections[0];
11271
11258
  if (!pattern.complete && levels > section.length || parts.every((part, index) => {
@@ -17774,7 +17761,7 @@ var require_which2 = __commonJS({
17774
17761
  });
17775
17762
 
17776
17763
  // ../../node_modules/@expo/spawn-async/node_modules/path-key/index.js
17777
- var require_path_key3 = __commonJS({
17764
+ var require_path_key2 = __commonJS({
17778
17765
  "../../node_modules/@expo/spawn-async/node_modules/path-key/index.js"(exports2, module2) {
17779
17766
  "use strict";
17780
17767
  var pathKey = (options = {}) => {
@@ -17790,7 +17777,7 @@ var require_path_key3 = __commonJS({
17790
17777
  var require_resolveCommand2 = __commonJS({
17791
17778
  "../../node_modules/@expo/spawn-async/node_modules/cross-spawn/lib/util/resolveCommand.js"(exports2, module2) {
17792
17779
  "use strict";
17793
- var path6 = require("path"), which2 = require_which2(), getPathKey = require_path_key3();
17780
+ var path6 = require("path"), which2 = require_which2(), getPathKey = require_path_key2();
17794
17781
  function resolveCommandAttempt(parsed, withoutPathExt) {
17795
17782
  let env2 = parsed.options.env || process.env, cwd2 = process.cwd(), hasCustomCwd = parsed.options.cwd != null, shouldSwitchCwd = hasCustomCwd && process.chdir !== void 0 && !process.chdir.disabled;
17796
17783
  if (shouldSwitchCwd)
@@ -22090,12 +22077,12 @@ var require_os_homedir = __commonJS({
22090
22077
  // ../../node_modules/osenv/osenv.js
22091
22078
  var require_osenv = __commonJS({
22092
22079
  "../../node_modules/osenv/osenv.js"(exports2) {
22093
- var isWindows = process.platform === "win32", path6 = require("path"), exec = require("child_process").exec, osTmpdir = require_os_tmpdir(), osHomedir = require_os_homedir();
22080
+ var isWindows = process.platform === "win32", path6 = require("path"), exec2 = require("child_process").exec, osTmpdir = require_os_tmpdir(), osHomedir = require_os_homedir();
22094
22081
  function memo(key, lookup, fallback) {
22095
22082
  var fell = !1, falling = !1;
22096
22083
  exports2[key] = function(cb) {
22097
22084
  var val = lookup();
22098
- return !val && !fell && !falling && fallback && (fell = !0, falling = !0, exec(fallback, function(er, output, stderr) {
22085
+ return !val && !fell && !falling && fallback && (fell = !0, falling = !0, exec2(fallback, function(er, output, stderr) {
22099
22086
  falling = !1, !er && (val = output.trim());
22100
22087
  })), exports2[key] = function(cb2) {
22101
22088
  return cb2 && process.nextTick(cb2.bind(null, null, val)), val;
@@ -25338,7 +25325,7 @@ var detect = async ({
25338
25325
  };
25339
25326
 
25340
25327
  // src/index.ts
25341
- var import_fs_extra2 = __toESM(require_lib()), import_opener = __toESM(require_opener()), import_prompts5 = __toESM(require_prompts3());
25328
+ var import_fs_extra2 = __toESM(require_lib()), import_opener = __toESM(require_opener()), import_prompts4 = __toESM(require_prompts3());
25342
25329
 
25343
25330
  // ../../node_modules/zx/build/core.js
25344
25331
  var import_node_assert = __toESM(require("node:assert"), 1), import_node_child_process = require("node:child_process"), import_node_async_hooks = require("node:async_hooks"), import_node_util2 = require("node:util");
@@ -25994,19 +25981,19 @@ var ProcessPromise = class _ProcessPromise extends Promise {
25994
25981
  }
25995
25982
  run() {
25996
25983
  var _a2, _b;
25997
- let $2 = this._snapshot;
25984
+ let $3 = this._snapshot;
25998
25985
  if (this.child)
25999
25986
  return this;
26000
- this._prerun(), $2.log({
25987
+ this._prerun(), $3.log({
26001
25988
  kind: "cmd",
26002
25989
  cmd: this._command,
26003
- verbose: $2.verbose && !this._quiet
26004
- }), this.child = $2.spawn($2.prefix + this._command, {
26005
- cwd: $2.cwd ?? $2[processCwd],
26006
- shell: typeof $2.shell == "string" ? $2.shell : !0,
25990
+ verbose: $3.verbose && !this._quiet
25991
+ }), this.child = $3.spawn($3.prefix + this._command, {
25992
+ cwd: $3.cwd ?? $3[processCwd],
25993
+ shell: typeof $3.shell == "string" ? $3.shell : !0,
26007
25994
  stdio: this._stdio,
26008
25995
  windowsHide: !0,
26009
- env: $2.env
25996
+ env: $3.env
26010
25997
  }), this.child.on("close", (code, signal) => {
26011
25998
  let message = `exit code: ${code}`;
26012
25999
  (code != 0 || signal != null) && (message = `${stderr || `
@@ -26023,9 +26010,9 @@ var ProcessPromise = class _ProcessPromise extends Promise {
26023
26010
  this._reject(new ProcessOutput(null, null, stdout, stderr, combined, message)), this._resolved = !0;
26024
26011
  });
26025
26012
  let stdout = "", stderr = "", combined = "", onStdout = (data) => {
26026
- $2.log({ kind: "stdout", data, verbose: $2.verbose && !this._quiet }), stdout += data, combined += data;
26013
+ $3.log({ kind: "stdout", data, verbose: $3.verbose && !this._quiet }), stdout += data, combined += data;
26027
26014
  }, onStderr = (data) => {
26028
- $2.log({ kind: "stderr", data, verbose: $2.verbose && !this._quiet }), stderr += data, combined += data;
26015
+ $3.log({ kind: "stderr", data, verbose: $3.verbose && !this._quiet }), stderr += data, combined += data;
26029
26016
  };
26030
26017
  if (this._piped || (_a2 = this.child.stdout) == null || _a2.on("data", onStdout), (_b = this.child.stderr) == null || _b.on("data", onStderr), this._postrun(), this._timeout && this._timeoutSignal) {
26031
26018
  let t = setTimeout(() => this.kill(this._timeoutSignal), this._timeout);
@@ -26372,7 +26359,7 @@ var globby2 = Object.assign(function(patterns, options) {
26372
26359
  // package.json
26373
26360
  var package_default = {
26374
26361
  name: "create-tamagui",
26375
- version: "1.86.2",
26362
+ version: "1.86.4",
26376
26363
  bin: "./run.js",
26377
26364
  main: "dist",
26378
26365
  files: [
@@ -26393,7 +26380,7 @@ var package_default = {
26393
26380
  devDependencies: {
26394
26381
  "@expo/package-manager": "^1.1.2",
26395
26382
  "@playwright/test": "^1.40.1",
26396
- "@tamagui/build": "1.86.2",
26383
+ "@tamagui/build": "1.86.4",
26397
26384
  "@types/async-retry": "1.4.2",
26398
26385
  "@types/cross-spawn": "^6.0.2",
26399
26386
  "@types/node": "^16.11.9",
@@ -26465,12 +26452,7 @@ ${char0_2}\u2003${char1_2}\u2003${char2_2}\u2003${char3_2}\u2003${char4_2}\u2003
26465
26452
  \u2588\u2588 \u2588\u2588
26466
26453
  \u2588\u2588 \u2588\u2588\u2588\u2588
26467
26454
  \u2588\u2588 \u2588\u2588
26468
- \u2588\u2588 \u2588\u2588
26469
- \u2588\u2588 \u2588\u2588
26470
- \u2588\u2588 \u2588\u2588
26471
- \u2588\u2588 \u2588\u2588
26472
- \u2588\u2588 \u2588\u2588\u2588\u2588 \u2588\u2588
26473
- \u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588 `;
26455
+ \u2588\u2588 \u2588\u2588 `;
26474
26456
 
26475
26457
  // src/helpers/cloneStarter.ts
26476
26458
  var import_child_process = require("child_process"), import_os2 = require("os"), import_path8 = require("path"), import_chalk7 = __toESM(require_source()), import_fs_extra = __toESM(require_lib());
@@ -31770,7 +31752,10 @@ var rimraf_ = wrap((path6, opt) => useNative(opt) ? rimrafNative(path6, opt) : r
31770
31752
  rimraf.rimraf = rimraf;
31771
31753
 
31772
31754
  // src/helpers/cloneStarter.ts
31773
- var open = require_opener(), home = (0, import_os2.homedir)(), tamaguiDir = (0, import_path8.join)(home, ".tamagui"), targetGitDir = "", cloneStarter = async (template, resolvedProjectPath, projectName) => {
31755
+ var open = require_opener(), exec = (cmd, options) => (0, import_child_process.execSync)(cmd, {
31756
+ stdio: process.env.DEBUG ? "inherit" : "ignore",
31757
+ ...options
31758
+ }), home = (0, import_os2.homedir)(), tamaguiDir = (0, import_path8.join)(home, ".tamagui"), targetGitDir = "", cloneStarter = async (template, resolvedProjectPath, projectName) => {
31774
31759
  targetGitDir = IS_TEST ? (0, import_path8.join)(tamaguiDir, "tamagui-test", template.repo.url.split("/").at(-1)) : (0, import_path8.join)(tamaguiDir, "tamagui", template.repo.url.split("/").at(-1)), console.info(), await setupTamaguiDotDir(template);
31775
31760
  let starterDir = (0, import_path8.join)(targetGitDir, ...template.repo.dir);
31776
31761
  console.info(), console.info(
@@ -31796,12 +31781,12 @@ async function setupTamaguiDotDir(template, isRetry = !1) {
31796
31781
  let sourceGitRepo = template.repo.url, sourceGitRepoSshFallback = template.repo.sshFallback, cmd = `git clone --branch ${branch} ${isInSubDir ? "--depth 1 --sparse --filter=blob:none " : ""}${sourceGitRepo} "${targetGitDir}"`;
31797
31782
  try {
31798
31783
  try {
31799
- console.info(`$ ${cmd}`), console.info(), (0, import_child_process.execSync)(cmd);
31784
+ console.info(`$ ${cmd}`), console.info(), exec(cmd);
31800
31785
  } catch (error) {
31801
31786
  if (cmd.includes("https://")) {
31802
31787
  console.info("https failed - trying with ssh now...");
31803
31788
  let sshCmd = cmd.replace(sourceGitRepo, sourceGitRepoSshFallback);
31804
- console.info(`$ ${sshCmd}`), console.info(), (0, import_child_process.execSync)(sshCmd);
31789
+ console.info(`$ ${sshCmd}`), console.info(), exec(sshCmd);
31805
31790
  } else
31806
31791
  throw error;
31807
31792
  }
@@ -31813,15 +31798,15 @@ async function setupTamaguiDotDir(template, isRetry = !1) {
31813
31798
  ), open("https://tamagui.dev/takeout"), process.exit(0)), error;
31814
31799
  }
31815
31800
  }
31816
- if (console.info(), console.info("Updating tamagui starters repo"), console.info(), isInSubDir) {
31801
+ if (isInSubDir) {
31817
31802
  let cmd = `git sparse-checkout set ${template.repo.dir[0] ?? "."}`;
31818
- (0, import_child_process.execSync)(cmd, { cwd: targetGitDir }), console.info(), console.info(`$ ${cmd}`);
31803
+ exec(cmd, { cwd: targetGitDir }), console.info();
31819
31804
  }
31820
31805
  try {
31821
31806
  let cmd2 = `git pull --rebase --allow-unrelated-histories --depth 1 origin ${branch}`;
31822
- (0, import_child_process.execSync)(cmd2, {
31807
+ exec(cmd2, {
31823
31808
  cwd: targetGitDir
31824
- }), console.info(), console.info(`$ ${cmd2}`);
31809
+ }), console.info();
31825
31810
  } catch (err) {
31826
31811
  console.info(
31827
31812
  `Error updating: ${err.message} ${isRetry ? `failing.
@@ -31860,20 +31845,13 @@ var getProjectName = async (projectPath2) => {
31860
31845
  });
31861
31846
  typeof res.path == "string" && (projectPath2 = res.path.trim());
31862
31847
  }
31863
- return projectPath2 || (console.log(), console.log("Please specify the project directory:"), console.log(` ${import_chalk8.default.cyan(package_default.name)} ${import_chalk8.default.green("<project-directory>")}`), console.log(), console.log("For example:"), console.log(` ${import_chalk8.default.cyan(package_default.name)} ${import_chalk8.default.green("my-tamagui-app")}`), console.log(), console.log(`Run ${import_chalk8.default.cyan(`${package_default.name} --help`)} to see all options.`), process.exit(1)), projectPath2;
31848
+ return projectPath2 || (console.info(), console.info("Please specify the project directory:"), console.info(
31849
+ ` ${import_chalk8.default.cyan(package_default.name)} ${import_chalk8.default.green("<project-directory>")}`
31850
+ ), console.info(), console.info("For example:"), console.info(` ${import_chalk8.default.cyan(package_default.name)} ${import_chalk8.default.green("my-tamagui-app")}`), console.info(), console.info(`Run ${import_chalk8.default.cyan(`${package_default.name} --help`)} to see all options.`), process.exit(1)), projectPath2;
31864
31851
  };
31865
31852
 
31866
- // src/helpers/getShouldUseGit.ts
31867
- var import_prompts2 = __toESM(require_prompts3());
31868
- var getShouldUseGit = async () => IS_TEST || !!(await (0, import_prompts2.default)({
31869
- type: "confirm",
31870
- name: "gitInit",
31871
- message: "Do you want to use git?",
31872
- initial: !0
31873
- })).gitInit;
31874
-
31875
31853
  // src/helpers/getTemplateInfo.ts
31876
- var import_prompts4 = __toESM(require_prompts3());
31854
+ var import_prompts3 = __toESM(require_prompts3());
31877
31855
 
31878
31856
  // src/templates.ts
31879
31857
  var import_fs14 = require("fs"), import_path11 = require("path"), import_chalk13 = __toESM(require_source());
@@ -31883,7 +31861,7 @@ var import_chalk9 = __toESM(require_source()), packageManager = "yarn", useYarn
31883
31861
  isFullClone && console.info(`
31884
31862
  ${import_chalk9.default.green.bold("Done!")} created a new project under ./${projectName}
31885
31863
 
31886
- cd into the project using:
31864
+ visit your project:
31887
31865
  ${import_chalk9.default.green("cd")} ${projectName}
31888
31866
  `), console.info(`
31889
31867
  To start the Next.js development server, run:
@@ -31897,7 +31875,7 @@ var main2 = async ({ isFullClone, projectName }) => {
31897
31875
  isFullClone && console.info(`
31898
31876
  ${import_chalk10.default.green.bold("Done!")} created a new project under ./${projectName}
31899
31877
 
31900
- cd into the project using:
31878
+ visit your project:
31901
31879
  ${import_chalk10.default.green("cd")} ${projectName}
31902
31880
  `);
31903
31881
  }, expo_router_default = main2;
@@ -31908,7 +31886,7 @@ var import_chalk11 = __toESM(require_source()), packageManager2 = "yarn", useYar
31908
31886
  "Done!"
31909
31887
  )} created a new project under ./${projectName}
31910
31888
 
31911
- cd into the project using:
31889
+ visit your project:
31912
31890
  ${import_chalk11.default.green("cd")} ${projectName}
31913
31891
  `), console.info(`
31914
31892
  To start the Next.js development server, run:
@@ -31930,7 +31908,7 @@ cd into the project using:
31930
31908
  }, starter_free_default = main3;
31931
31909
 
31932
31910
  // src/steps/takeout.ts
31933
- var import_child_process2 = require("child_process"), import_fs13 = require("fs"), import_promises2 = __toESM(require("fs/promises")), import_path10 = __toESM(require("path")), import_chalk12 = __toESM(require_source()), import_prompts3 = __toESM(require_prompts3());
31911
+ var import_child_process2 = require("child_process"), import_fs13 = require("fs"), import_promises2 = __toESM(require("fs/promises")), import_path10 = __toESM(require("path")), import_chalk12 = __toESM(require_source()), import_prompts2 = __toESM(require_prompts3());
31934
31912
  var packageManager3 = "yarn", useYarn3 = packageManager3 === "yarn", runCommand3 = (scriptName) => `${packageManager3} ${useYarn3 ? "" : "run "}${scriptName}`, main4 = async ({ isFullClone, projectName, projectPath: projectPath2 }) => {
31935
31913
  console.info(`
31936
31914
  ${tamaguiRainbowAsciiArt.split(`
@@ -31939,7 +31917,7 @@ ${tamaguiRainbowAsciiArt.split(`
31939
31917
  ${takeoutAsciiArt}
31940
31918
 
31941
31919
  `), console.info();
31942
- let { setupSupabase } = await (0, import_prompts3.default)({
31920
+ let { setupSupabase } = await (0, import_prompts2.default)({
31943
31921
  name: "setupSupabase",
31944
31922
  message: "Set up Supabase?",
31945
31923
  type: "confirm",
@@ -31947,7 +31925,7 @@ ${takeoutAsciiArt}
31947
31925
  });
31948
31926
  if (setupSupabase) {
31949
31927
  console.info();
31950
- let { startLocalSupabase } = await (0, import_prompts3.default)({
31928
+ let { startLocalSupabase } = await (0, import_prompts2.default)({
31951
31929
  name: "startLocalSupabase",
31952
31930
  type: "confirm",
31953
31931
  message: "Start local Supabase instance for you? (Requires Docker)",
@@ -31955,7 +31933,7 @@ ${takeoutAsciiArt}
31955
31933
  });
31956
31934
  if (startLocalSupabase && await runRetryableCommand("yarn supa start")) {
31957
31935
  console.info();
31958
- let { setUpSupabaseEnv } = await (0, import_prompts3.default)({
31936
+ let { setUpSupabaseEnv } = await (0, import_prompts2.default)({
31959
31937
  name: "setUpSupabaseEnv",
31960
31938
  type: "confirm",
31961
31939
  message: "Do you want us to add the local env variables for you? This will create a file called .env.local.",
@@ -31971,7 +31949,7 @@ ${takeoutAsciiArt}
31971
31949
  }
31972
31950
  }
31973
31951
  console.info();
31974
- let { setupRemoteSupabase } = await (0, import_prompts3.default)({
31952
+ let { setupRemoteSupabase } = await (0, import_prompts2.default)({
31975
31953
  name: "setupRemoteSupabase",
31976
31954
  type: "confirm",
31977
31955
  message: "Link remote Supabase instance for you? (Create a project on https://app.supabase.com/projects first)",
@@ -31982,7 +31960,7 @@ ${takeoutAsciiArt}
31982
31960
  isFullClone && console.info(`
31983
31961
  ${import_chalk12.default.green.bold("Done!")} created a new project under ./${projectName}
31984
31962
 
31985
- cd into the project using:
31963
+ visit your project:
31986
31964
  ${import_chalk12.default.green(" cd")} ${projectName}
31987
31965
  `), console.info(`
31988
31966
  To start the Next.js development server, run:
@@ -32012,7 +31990,7 @@ async function runRetryableCommand(cmd, retriesCount = 0) {
32012
31990
  try {
32013
31991
  return (0, import_child_process2.execSync)(cmd, { stdio: "inherit" }), !0;
32014
31992
  } catch {
32015
- let { tryAgain } = await (0, import_prompts3.default)({
31993
+ let { tryAgain } = await (0, import_prompts2.default)({
32016
31994
  name: "tryAgain",
32017
31995
  message: "An error occurred. Do you want to try again?",
32018
31996
  type: "confirm",
@@ -32031,7 +32009,7 @@ async function runRetryableCommand(cmd, retriesCount = 0) {
32031
32009
  }
32032
32010
  }
32033
32011
  async function linkSupabase() {
32034
- let { supabaseRefId } = await (0, import_prompts3.default)({
32012
+ let { supabaseRefId } = await (0, import_prompts2.default)({
32035
32013
  name: "supabaseRefId",
32036
32014
  type: "text",
32037
32015
  message: "Enter your supabase project's ID (e.g. abcdefghijklmnopqrst)",
@@ -32042,7 +32020,7 @@ async function linkSupabase() {
32042
32020
  stdio: "inherit"
32043
32021
  }), !0;
32044
32022
  } catch {
32045
- let { tryAgain } = await (0, import_prompts3.default)({
32023
+ let { tryAgain } = await (0, import_prompts2.default)({
32046
32024
  name: "tryAgain",
32047
32025
  message: "An error occurred. Do you want to try again?",
32048
32026
  type: "confirm",
@@ -32133,12 +32111,15 @@ var repoRoot = (0, import_path11.join)(__dirname, "..", "..", ".."), starterFree
32133
32111
  ];
32134
32112
 
32135
32113
  // src/helpers/getTemplateInfo.ts
32136
- var getTemplateInfo = async (template) => (isTemplateValid(template) || (template = (await (0, import_prompts4.default)({
32137
- name: "template",
32138
- type: "select",
32139
- message: "Pick a template:",
32140
- choices: templates.filter((t) => !t.hidden)
32141
- })).template), typeof template != "string" || !isTemplateValid(template) ? (console.warn(`template ${template} is not valid.`), await getTemplateInfo(template)) : templates.find((t) => t.value === template)), isTemplateValid = (template) => typeof template == "string" && templates.some(({ value }) => value === template);
32114
+ var validTemplates = templates.map(({ value }) => value).join(", "), getTemplateInfo = async (template) => {
32115
+ let res = getValidTemplate(template);
32116
+ return template && !res && (console.warn(`template ${template} is not valid. valid options: ${validTemplates}`), process.exit(1)), res || (template = (await (0, import_prompts3.default)({
32117
+ name: "template",
32118
+ type: "select",
32119
+ message: "Pick a template:",
32120
+ choices: templates.filter((t) => !t.hidden)
32121
+ })).template), res = getValidTemplate(`${template}`), res || (console.warn(`template ${template} is not valid. valid options: ${validTemplates}`), process.exit(1)), res;
32122
+ }, getValidTemplate = (template) => typeof template == "string" && templates.find(({ value }) => value === template);
32142
32123
 
32143
32124
  // src/helpers/installDependencies.ts
32144
32125
  var PackageManager = __toESM(require_build());
@@ -32150,14 +32131,16 @@ async function installDependencies(projectRoot, packageManager4) {
32150
32131
  // src/index.ts
32151
32132
  var projectPath = "";
32152
32133
  IS_TEST && console.info("\u{1F9D0} Running create-tamagui in test mode \u{1F9D0}");
32134
+ function exit() {
32135
+ process.exit(0);
32136
+ }
32137
+ process.on("SIGTERM", exit);
32138
+ process.on("SIGINT", exit);
32153
32139
  var program = new import_commander.default.Command(package_default.name).version(package_default.version).arguments("<project-directory>").action((name) => {
32154
32140
  projectPath = name;
32155
- }).option(
32156
- "--skip-cloning",
32157
- "Skips the cloning and basic setup and goes directly to the setup specific to the starter. Use if you already have the starter wanna run the setup or see the instructions again."
32158
- ).option(
32141
+ }).option("--info", "Just shows the setup guide for the starter.").option(
32159
32142
  "--template <template>, -t <template>",
32160
- "Choose between starter-free, a more full featured template with Expo and Next.js, a simple client-only web starter that includes a nice simple example configuration to understand the basics more easily, or the premium Takeout \u{1F961} starter.",
32143
+ "Choose between four or more starter templates.",
32161
32144
  ""
32162
32145
  ).allowUnknownOption().usage(
32163
32146
  `${import_chalk14.default.green("<project-directory>")} [options]
@@ -32167,17 +32150,25 @@ Example usage:
32167
32150
  ${import_chalk14.default.blueBright(`npx ${package_default.name} next-expo`)}`
32168
32151
  ).parse(process.argv);
32169
32152
  process.argv.includes("--version") && (console.info(package_default.version), process.exit(0));
32170
- var skipCloning = !!program.skipCloning;
32153
+ var info = !!program.info;
32171
32154
  async function run() {
32172
- skipCloning || (console.info(), console.info(tamaguiRainbowAsciiArt), console.info(import_chalk14.default.bold("Creating tamagui app...")), parseFloat(
32155
+ if (info) {
32156
+ await (await getTemplateInfo(program.template)).extraSteps({
32157
+ isFullClone: !1,
32158
+ projectName: import_path12.default.basename((0, import_process.cwd)()),
32159
+ projectPath: (0, import_process.cwd)()
32160
+ });
32161
+ return;
32162
+ }
32163
+ console.info(), console.info(tamaguiRainbowAsciiArt), console.info(import_chalk14.default.bold("Creating tamagui app...")), parseFloat(
32173
32164
  (0, import_child_process3.execSync)("git --version").toString().replace("git version ", "").trim()
32174
32165
  ) < 2.27 && (console.error(`
32175
32166
 
32176
32167
  \u26A0\uFE0F Tamagui can't install: Git version must be >= 2.27
32177
32168
 
32178
- `), process.exit(1))), projectPath = skipCloning ? (0, import_process.cwd)() : await getProjectName(projectPath);
32169
+ `), process.exit(1)), projectPath ||= await getProjectName(projectPath);
32179
32170
  let template = await getTemplateInfo(program.template);
32180
- if (template.type === "premium" && ((await (0, import_prompts5.default)({
32171
+ template.type === "premium" && ((await (0, import_prompts4.default)({
32181
32172
  type: "confirm",
32182
32173
  name: "purchased",
32183
32174
  message: "Have you purchased Takeout on https://tamagui.dev/takeout"
@@ -32185,62 +32176,42 @@ async function run() {
32185
32176
  `
32186
32177
  Opening Takeout website - once you purchase you can restart the create process. Thank you!
32187
32178
  `
32188
- ), process.exit(0))), skipCloning)
32189
- await template.extraSteps({
32190
- isFullClone: !1,
32191
- projectName: import_path12.default.basename((0, import_process.cwd)()),
32192
- projectPath: (0, import_process.cwd)()
32193
- });
32194
- else {
32195
- console.info();
32196
- let resolvedProjectPath = import_path12.default.resolve(process.cwd(), projectPath), projectName = import_path12.default.basename(resolvedProjectPath), { valid, problems } = validateNpmName(projectName);
32197
- valid || (console.error(
32198
- `Could not create a project called ${import_chalk14.default.red(
32199
- `"${projectName}"`
32200
- )} because of npm naming restrictions:`
32201
- ), problems.forEach((p) => console.error(` ${import_chalk14.default.red.bold("*")} ${p}`)), process.exit(1)), import_fs15.default.existsSync(resolvedProjectPath) && (console.info(), console.info(
32202
- import_chalk14.default.red("\u{1F6A8} [tamagui] error"),
32203
- `You tried to make a project called ${import_chalk14.default.underline(
32204
- import_chalk14.default.blueBright(projectName)
32205
- )}, but a folder with that name already exists: ${import_chalk14.default.blueBright(
32206
- resolvedProjectPath
32207
- )}
32179
+ ), process.exit(0))), console.info();
32180
+ let resolvedProjectPath = import_path12.default.resolve(process.cwd(), projectPath), projectName = import_path12.default.basename(resolvedProjectPath), { valid, problems } = validateNpmName(projectName);
32181
+ valid || (console.error(
32182
+ `Could not create a project called ${import_chalk14.default.red(
32183
+ `"${projectName}"`
32184
+ )} because of npm naming restrictions:`
32185
+ ), problems.forEach((p) => console.error(` ${import_chalk14.default.red.bold("*")} ${p}`)), process.exit(1)), import_fs15.default.existsSync(resolvedProjectPath) && (console.info(), console.info(
32186
+ import_chalk14.default.red("\u{1F6A8} [tamagui] error"),
32187
+ `You tried to make a project called ${import_chalk14.default.underline(
32188
+ import_chalk14.default.blueBright(projectName)
32189
+ )}, but a folder with that name already exists: ${import_chalk14.default.blueBright(
32190
+ resolvedProjectPath
32191
+ )}
32208
32192
 
32209
32193
  ${import_chalk14.default.bold(import_chalk14.default.red("Please pick a different project name \u{1F978}"))}`
32210
- ), console.info(), console.info(), process.exit(1)), console.info(), console.info(`Creating a new tamagui app ${import_chalk14.default.blueBright(resolvedProjectPath)}...`), import_fs15.default.mkdirSync(resolvedProjectPath), console.info(import_chalk14.default.green(`${projectName} folder created.`));
32211
- let shouldGitInit = await getShouldUseGit();
32212
- try {
32213
- await cloneStarter(template, resolvedProjectPath, projectName), cd(resolvedProjectPath), console.info(), shouldGitInit && await $`git init`;
32214
- } catch (e) {
32215
- console.error(`[tamagui] Failed to copy example into ${resolvedProjectPath}
32194
+ ), console.info(), console.info(), process.exit(1)), console.info(), console.info(`Creating a new tamagui app ${import_chalk14.default.blueBright(resolvedProjectPath)}...`), import_fs15.default.mkdirSync(resolvedProjectPath), console.info(import_chalk14.default.green(`${projectName} folder created.`));
32195
+ try {
32196
+ await cloneStarter(template, resolvedProjectPath, projectName), cd(resolvedProjectPath), console.info();
32197
+ } catch (e) {
32198
+ console.error(`[tamagui] Failed to copy example into ${resolvedProjectPath}
32216
32199
 
32217
32200
  `, e), process.exit(1);
32218
- }
32219
- updatePackageJsonName(projectName, resolvedProjectPath), console.info("Installing packages. This might take a couple of minutes."), console.info();
32220
- let packageManager4 = ("packageManager" in template ? template.packageManager : void 0) || await detect();
32221
- try {
32222
- console.info("installing with " + packageManager4), await installDependencies(resolvedProjectPath, packageManager4);
32223
- } catch (e) {
32224
- console.error("[tamagui] error installing with " + packageManager4 + `
32201
+ }
32202
+ updatePackageJsonName(projectName, resolvedProjectPath), console.info("Installing packages. This might take a couple of minutes."), console.info();
32203
+ let packageManager4 = ("packageManager" in template ? template.packageManager : void 0) || await detect();
32204
+ try {
32205
+ console.info("installing with " + packageManager4), await installDependencies(resolvedProjectPath, packageManager4);
32206
+ } catch (e) {
32207
+ console.error("[tamagui] error installing with " + packageManager4 + `
32225
32208
  ${e}`), process.exit(1);
32226
- }
32227
- if (shouldGitInit)
32228
- try {
32229
- (0, import_child_process3.execSync)("git checkout -b main", { stdio: "ignore" }), (0, import_child_process3.execSync)("git add -A", { stdio: "ignore" }), (0, import_child_process3.execSync)('git commit -m "Initial commit from create-tamagui"', {
32230
- stdio: "ignore"
32231
- });
32232
- } catch (e) {
32233
- console.error(`[tamagui] Failed to create initial commit.
32234
-
32235
- `, e.message);
32236
- }
32237
- await template.extraSteps({
32238
- isFullClone: !0,
32239
- projectName,
32240
- projectPath: resolvedProjectPath
32241
- });
32242
32209
  }
32243
- console.info(), console.info(import_chalk14.default.gray(tamaguiDuckAsciiArt));
32210
+ await template.extraSteps({
32211
+ isFullClone: !0,
32212
+ projectName,
32213
+ projectPath: resolvedProjectPath
32214
+ }), console.info(), console.info(import_chalk14.default.gray(tamaguiDuckAsciiArt));
32244
32215
  }
32245
32216
  function updatePackageJsonName(projectName, dir) {
32246
32217
  let packageJsonPath = import_path12.default.join(dir, "package.json");