create-vxrn 2.0.0-beta.99.1 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/.turbo/turbo-build.log +2 -2
  2. package/dist/cjs/create.cjs +19 -19
  3. package/dist/cjs/create.native.cjs +21 -21
  4. package/dist/cjs/create.native.js +21 -21
  5. package/dist/cjs/create.native.js.map +1 -1
  6. package/dist/cjs/helpers/cloneStarter.cjs +4 -4
  7. package/dist/cjs/helpers/cloneStarter.native.cjs +6 -6
  8. package/dist/cjs/helpers/cloneStarter.native.js +6 -6
  9. package/dist/cjs/helpers/cloneStarter.native.js.map +1 -1
  10. package/dist/cjs/helpers/getProjectName.native.cjs +2 -2
  11. package/dist/cjs/helpers/getProjectName.native.js +2 -2
  12. package/dist/cjs/helpers/getProjectName.native.js.map +1 -1
  13. package/dist/cjs/helpers/getTemplateInfo.native.cjs +2 -2
  14. package/dist/cjs/helpers/getTemplateInfo.native.js +2 -2
  15. package/dist/cjs/helpers/getTemplateInfo.native.js.map +1 -1
  16. package/dist/cjs/index.cjs +4 -1
  17. package/dist/cjs/index.native.cjs +4 -1
  18. package/dist/cjs/index.native.js +4 -1
  19. package/dist/cjs/index.native.js.map +1 -1
  20. package/dist/cjs/steps/bare.native.cjs +1 -1
  21. package/dist/cjs/steps/bare.native.js +1 -1
  22. package/dist/cjs/steps/bare.native.js.map +1 -1
  23. package/dist/cjs/steps/fullstack.native.cjs +2 -2
  24. package/dist/cjs/steps/fullstack.native.js +2 -2
  25. package/dist/cjs/steps/fullstack.native.js.map +1 -1
  26. package/dist/cjs/steps/one.native.cjs +3 -3
  27. package/dist/cjs/steps/one.native.js +3 -3
  28. package/dist/cjs/steps/one.native.js.map +1 -1
  29. package/dist/cjs/templates.cjs +1 -1
  30. package/dist/cjs/templates.native.cjs +1 -1
  31. package/dist/cjs/templates.native.js +1 -1
  32. package/dist/cjs/templates.native.js.map +1 -1
  33. package/dist/esm/create.mjs +19 -19
  34. package/dist/esm/create.mjs.map +1 -1
  35. package/dist/esm/create.native.js +21 -21
  36. package/dist/esm/create.native.js.map +1 -1
  37. package/dist/esm/helpers/cloneStarter.mjs +4 -4
  38. package/dist/esm/helpers/cloneStarter.mjs.map +1 -1
  39. package/dist/esm/helpers/cloneStarter.native.js +6 -6
  40. package/dist/esm/helpers/cloneStarter.native.js.map +1 -1
  41. package/dist/esm/helpers/getProjectName.native.js +2 -2
  42. package/dist/esm/helpers/getProjectName.native.js.map +1 -1
  43. package/dist/esm/helpers/getTemplateInfo.native.js +2 -2
  44. package/dist/esm/helpers/getTemplateInfo.native.js.map +1 -1
  45. package/dist/esm/index.mjs +4 -1
  46. package/dist/esm/index.mjs.map +1 -1
  47. package/dist/esm/index.native.js +4 -1
  48. package/dist/esm/index.native.js.map +1 -1
  49. package/dist/esm/steps/bare.native.js +1 -1
  50. package/dist/esm/steps/bare.native.js.map +1 -1
  51. package/dist/esm/steps/fullstack.native.js +2 -2
  52. package/dist/esm/steps/fullstack.native.js.map +1 -1
  53. package/dist/esm/steps/one.native.js +3 -3
  54. package/dist/esm/steps/one.native.js.map +1 -1
  55. package/dist/esm/templates.mjs +1 -1
  56. package/dist/esm/templates.mjs.map +1 -1
  57. package/dist/esm/templates.native.js +1 -1
  58. package/dist/esm/templates.native.js.map +1 -1
  59. package/package.json +10 -8
  60. package/src/create.ts +25 -26
  61. package/src/helpers/cloneStarter.ts +6 -4
  62. package/src/index.ts +1 -1
  63. package/src/templates.ts +1 -1
  64. package/types/create.d.ts +5 -0
  65. package/types/create.d.ts.map +1 -0
  66. package/types/helpers/cloneStarter.d.ts +3 -0
  67. package/types/helpers/cloneStarter.d.ts.map +1 -0
  68. package/types/helpers/getProjectName.d.ts +2 -0
  69. package/types/helpers/getProjectName.d.ts.map +1 -0
  70. package/types/helpers/getTemplateInfo.d.ts +3 -0
  71. package/types/helpers/getTemplateInfo.d.ts.map +1 -0
  72. package/types/helpers/installDependencies.d.ts +2 -0
  73. package/types/helpers/installDependencies.d.ts.map +1 -0
  74. package/types/helpers/validateNpmPackage.d.ts +5 -0
  75. package/types/helpers/validateNpmPackage.d.ts.map +1 -0
  76. package/types/index.d.ts +3 -0
  77. package/types/index.d.ts.map +1 -0
  78. package/types/steps/bare.d.ts +5 -0
  79. package/types/steps/bare.d.ts.map +1 -0
  80. package/types/steps/fullstack.d.ts +4 -0
  81. package/types/steps/fullstack.d.ts.map +1 -0
  82. package/types/steps/one.d.ts +4 -0
  83. package/types/steps/one.d.ts.map +1 -0
  84. package/types/steps/types.d.ts +9 -0
  85. package/types/steps/types.d.ts.map +1 -0
  86. package/types/templates.d.ts +41 -0
  87. package/types/templates.d.ts.map +1 -0
  88. package/dist/esm/index.js +0 -72
  89. package/dist/esm/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.native.js","names":[],"sources":["cjs/index.native.js"],"sourcesContent":["#!/usr/bin/env node\n\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar import_ansis = __toESM(require(\"ansis\"));\nvar import_citty = require(\"citty\");\nvar import_path = __toESM(require(\"path\"));\nvar import_process = require(\"process\");\nvar import_getTemplateInfo = require(\"./helpers/getTemplateInfo\");\nvar import_create = require(\"./create\");\nvar import_url = require(\"url\");\nvar import_fs = require(\"fs\");\nconst import_meta = {};\nfunction exit() {\n process.exit(0);\n}\nprocess.on(\"SIGTERM\", exit);\nprocess.on(\"SIGINT\", exit);\nvar main = (0, import_citty.defineCommand)({\n meta: {\n name: \"main\",\n version: \"0.0.0\",\n description: \"Welcome to vxrn\"\n },\n args: {\n directory: {\n type: \"positional\",\n description: \"Directory to copy into\",\n default: \"\"\n },\n template: {\n type: \"string\",\n required: false,\n description: \"Choose a template in advance (avoid selection screen).\"\n },\n info: {\n type: \"boolean\",\n description: \"Output the post-install instructions for the template.\"\n }\n },\n async run(param) {\n var { args } = param;\n if (args.info) {\n var template = await (0, import_getTemplateInfo.getTemplateInfo)(args.template);\n if (\"extraSteps\" in template) {\n await template.extraSteps({\n isFullClone: false,\n projectName: import_path.default.basename((0, import_process.cwd)()),\n projectPath: (0, import_process.cwd)()\n });\n }\n return;\n }\n console.info();\n console.info(import_ansis.default.bold(\"Creating vxrn app...\"));\n await (0, import_create.create)({\n template: args.template\n });\n }\n});\n(0, import_citty.runMain)(main);\nfunction getPackageVersion() {\n var dirname;\n if (typeof __dirname !== \"undefined\") {\n dirname = __dirname;\n } else {\n dirname = import_path.default.dirname((0, import_url.fileURLToPath)(import_meta.url));\n }\n var packagePath = import_path.default.join(dirname, \"..\", \"..\", \"package.json\");\n var packageJson = JSON.parse((0, import_fs.readFileSync)(packagePath, \"utf-8\"));\n return packageJson.version;\n}\nif (process.argv.includes(\"--version\")) {\n console.info(getPackageVersion());\n process.exit(0);\n}\n//# sourceMappingURL=index.js.map\n"],"mappings":";;;;AAEA,IAAI,WAAW,OAAO;AACtB,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO;AAC1B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,WAAW,KAAK,YAAY,YAAY,SAAS,OAAO,OAAO,SAAS,aAAa,GAAG,CAAC,IAAI,CAAC,GAAG,YAKnG,cAAc,CAAC,OAAO,CAAC,IAAI,aAAa,UAAU,QAAQ,WAAW;CAAE,OAAO;CAAK,YAAY;AAAK,CAAC,IAAI,QACzG,GACF;AACA,IAAI,eAAe,QAAQ,QAAQ,OAAO,CAAC;AAC3C,IAAI,eAAe,QAAQ,OAAO;AAClC,IAAI,cAAc,QAAQ,QAAQ,MAAM,CAAC;AACzC,IAAI,iBAAiB,QAAQ,SAAS;AACtC,IAAI,yBAAyB,QAAQ,qCAA2B;AAChE,IAAI,gBAAgB,QAAQ,oBAAU;AACtC,IAAI,aAAa,QAAQ,KAAK;AAC9B,IAAI,YAAY,QAAQ,IAAI;AAC5B,MAAM,cAAc,CAAC;AACrB,SAAS,OAAO;CACd,QAAQ,KAAK,CAAC;AAChB;AACA,QAAQ,GAAG,WAAW,IAAI;AAC1B,QAAQ,GAAG,UAAU,IAAI;AACzB,IAAI,QAAQ,GAAG,aAAa,cAAa,CAAE;CACzC,MAAM;EACJ,MAAM;EACN,SAAS;EACT,aAAa;CACf;CACA,MAAM;EACJ,WAAW;GACT,MAAM;GACN,aAAa;GACb,SAAS;EACX;EACA,UAAU;GACR,MAAM;GACN,UAAU;GACV,aAAa;EACf;EACA,MAAM;GACJ,MAAM;GACN,aAAa;EACf;CACF;CACA,MAAM,IAAI,OAAO;EACf,IAAI,EAAE,SAAS;EACf,IAAI,KAAK,MAAM;GACb,IAAI,WAAW,OAAO,GAAG,uBAAuB,gBAAe,CAAE,KAAK,QAAQ;GAC9E,IAAI,gBAAgB,UAAU;IAC5B,MAAM,SAAS,WAAW;KACxB,aAAa;KACb,aAAa,YAAY,QAAQ,UAAU,GAAG,eAAe,IAAG,CAAE,CAAC;KACnE,cAAc,GAAG,eAAe,IAAG,CAAE;IACvC,CAAC;GACH;GACA;EACF;EACA,QAAQ,KAAK;EACb,QAAQ,KAAK,aAAa,QAAQ,KAAK,sBAAsB,CAAC;EAC9D,OAAO,GAAG,cAAc,OAAM,CAAE,EAC9B,UAAU,KAAK,SACjB,CAAC;CACH;AACF,CAAC;CACA,GAAG,aAAa,QAAO,CAAE,IAAI;AAC9B,SAAS,oBAAoB;CAC3B,IAAI;CACJ,IAAI,OAAO,cAAc,aAAa;EACpC,UAAU;CACZ,OAAO;EACL,UAAU,YAAY,QAAQ,SAAS,GAAG,WAAW,cAAa,CAAE,YAAY,GAAG,CAAC;CACtF;CACA,IAAI,cAAc,YAAY,QAAQ,KAAK,SAAS,MAAM,MAAM,cAAc;CAC9E,IAAI,cAAc,KAAK,OAAO,GAAG,UAAU,aAAY,CAAE,aAAa,OAAO,CAAC;CAC9E,OAAO,YAAY;AACrB;AACA,IAAI,QAAQ,KAAK,SAAS,WAAW,GAAG;CACtC,QAAQ,KAAK,kBAAkB,CAAC;CAChC,QAAQ,KAAK,CAAC;AAChB"}
1
+ {"version":3,"file":"index.native.js","names":[],"sources":["cjs/index.native.js"],"sourcesContent":["#!/usr/bin/env node\n\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar import_ansis = __toESM(require(\"ansis\"));\nvar import_citty = require(\"citty\");\nvar import_path = __toESM(require(\"path\"));\nvar import_process = require(\"process\");\nvar import_getTemplateInfo = require(\"./helpers/getTemplateInfo\");\nvar import_create = require(\"./create\");\nvar import_url = require(\"url\");\nvar import_fs = require(\"fs\");\nconst import_meta = {};\nfunction exit() {\n process.exit(0);\n}\nprocess.on(\"SIGTERM\", exit);\nprocess.on(\"SIGINT\", exit);\nvar main = (0, import_citty.defineCommand)({\n meta: {\n name: \"main\",\n version: \"0.0.0\",\n description: \"Welcome to vxrn\"\n },\n args: {\n directory: {\n type: \"positional\",\n description: \"Directory to copy into\",\n default: \"\"\n },\n template: {\n type: \"string\",\n required: false,\n description: \"Choose a template in advance (avoid selection screen).\"\n },\n info: {\n type: \"boolean\",\n description: \"Output the post-install instructions for the template.\"\n }\n },\n async run(param) {\n var { args } = param;\n if (args.info) {\n var template = await (0, import_getTemplateInfo.getTemplateInfo)(args.template);\n if (\"extraSteps\" in template) {\n await template.extraSteps({\n isFullClone: false,\n projectName: import_path.default.basename((0, import_process.cwd)()),\n projectPath: (0, import_process.cwd)()\n });\n }\n return;\n }\n console.info();\n console.info(import_ansis.default.bold(\"Creating vxrn app...\"));\n await (0, import_create.create)({\n name: args.directory,\n template: args.template\n });\n }\n});\n(0, import_citty.runMain)(main);\nfunction getPackageVersion() {\n var dirname;\n if (typeof __dirname !== \"undefined\") {\n dirname = __dirname;\n } else {\n dirname = import_path.default.dirname((0, import_url.fileURLToPath)(import_meta.url));\n }\n var packagePath = import_path.default.join(dirname, \"..\", \"..\", \"package.json\");\n var packageJson = JSON.parse((0, import_fs.readFileSync)(packagePath, \"utf-8\"));\n return packageJson.version;\n}\nif (process.argv.includes(\"--version\")) {\n console.info(getPackageVersion());\n process.exit(0);\n}\n//# sourceMappingURL=index.js.map\n"],"mappings":";;;;AAEA,IAAI,WAAW,OAAO;AACtB,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO;AAC1B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,WAAW,KAAK,YAAY,YAAY,SAAS,OAAO,OAAO,SAAS,aAAa,GAAG,CAAC,IAAI,CAAC,GAAG,YAKnG,cAAc,CAAC,OAAO,CAAC,IAAI,aAAa,UAAU,QAAQ,WAAW;CAAE,OAAO;CAAK,YAAY;AAAK,CAAC,IAAI,QACzG,GACF;AACA,IAAI,eAAe,QAAQ,QAAQ,OAAO,CAAC;AAC3C,IAAI,eAAe,QAAQ,OAAO;AAClC,IAAI,cAAc,QAAQ,QAAQ,MAAM,CAAC;AACzC,IAAI,iBAAiB,QAAQ,SAAS;AACtC,IAAI,yBAAyB,QAAQ,qCAA2B;AAChE,IAAI,gBAAgB,QAAQ,oBAAU;AACtC,IAAI,aAAa,QAAQ,KAAK;AAC9B,IAAI,YAAY,QAAQ,IAAI;AAC5B,MAAM,cAAc,CAAC;AACrB,SAAS,OAAO;CACd,QAAQ,KAAK,CAAC;AAChB;AACA,QAAQ,GAAG,WAAW,IAAI;AAC1B,QAAQ,GAAG,UAAU,IAAI;AACzB,IAAI,QAAQ,GAAG,aAAa,cAAa,CAAE;CACzC,MAAM;EACJ,MAAM;EACN,SAAS;EACT,aAAa;CACf;CACA,MAAM;EACJ,WAAW;GACT,MAAM;GACN,aAAa;GACb,SAAS;EACX;EACA,UAAU;GACR,MAAM;GACN,UAAU;GACV,aAAa;EACf;EACA,MAAM;GACJ,MAAM;GACN,aAAa;EACf;CACF;CACA,MAAM,IAAI,OAAO;EACf,IAAI,EAAE,SAAS;EACf,IAAI,KAAK,MAAM;GACb,IAAI,WAAW,OAAO,GAAG,uBAAuB,gBAAe,CAAE,KAAK,QAAQ;GAC9E,IAAI,gBAAgB,UAAU;IAC5B,MAAM,SAAS,WAAW;KACxB,aAAa;KACb,aAAa,YAAY,QAAQ,UAAU,GAAG,eAAe,IAAG,CAAE,CAAC;KACnE,cAAc,GAAG,eAAe,IAAG,CAAE;IACvC,CAAC;GACH;GACA;EACF;EACA,QAAQ,KAAK;EACb,QAAQ,KAAK,aAAa,QAAQ,KAAK,sBAAsB,CAAC;EAC9D,OAAO,GAAG,cAAc,OAAM,CAAE;GAC9B,MAAM,KAAK;GACX,UAAU,KAAK;EACjB,CAAC;CACH;AACF,CAAC;CACA,GAAG,aAAa,QAAO,CAAE,IAAI;AAC9B,SAAS,oBAAoB;CAC3B,IAAI;CACJ,IAAI,OAAO,cAAc,aAAa;EACpC,UAAU;CACZ,OAAO;EACL,UAAU,YAAY,QAAQ,SAAS,GAAG,WAAW,cAAa,CAAE,YAAY,GAAG,CAAC;CACtF;CACA,IAAI,cAAc,YAAY,QAAQ,KAAK,SAAS,MAAM,MAAM,cAAc;CAC9E,IAAI,cAAc,KAAK,OAAO,GAAG,UAAU,aAAY,CAAE,aAAa,OAAO,CAAC;CAC9E,OAAO,YAAY;AACrB;AACA,IAAI,QAAQ,KAAK,SAAS,WAAW,GAAG;CACtC,QAAQ,KAAK,kBAAkB,CAAC;CAChC,QAAQ,KAAK,CAAC;AAChB"}
@@ -62,7 +62,7 @@ async function replaceNameInUTF8File(filePath, projectName, templateName) {
62
62
  await import_fs_extra.default.writeFile(filePath, replacedFileContent, "utf8");
63
63
  }
64
64
  }
65
- var main = async function(param) {
65
+ var main = async function main2(param) {
66
66
  var { isFullClone, projectName } = param;
67
67
  var placeholderName = "bare";
68
68
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
@@ -62,7 +62,7 @@ async function replaceNameInUTF8File(filePath, projectName, templateName) {
62
62
  await import_fs_extra.default.writeFile(filePath, replacedFileContent, "utf8");
63
63
  }
64
64
  }
65
- var main = async function(param) {
65
+ var main = async function main2(param) {
66
66
  var { isFullClone, projectName } = param;
67
67
  var placeholderName = "bare";
68
68
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
@@ -1 +1 @@
1
- {"version":3,"file":"bare.native.js","names":[],"sources":["cjs/steps/bare.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar bare_exports = {};\n__export(bare_exports, {\n default: () => bare_default,\n replaceNameInUTF8File: () => replaceNameInUTF8File\n});\nmodule.exports = __toCommonJS(bare_exports);\nvar import_ansis = __toESM(require(\"ansis\"));\nvar import_fs_extra = __toESM(require(\"fs-extra\"));\nvar import_path = require(\"path\");\nfunction shouldIgnoreFile(filePath) {\n return filePath.match(/node_modules|yarn.lock|package-lock.json/g);\n}\nfunction shouldRenameFile(filePath, nameToReplace) {\n return (0, import_path.basename)(filePath).includes(nameToReplace);\n}\nasync function renameFile(filePath, oldName, newName) {\n var newFileName = (0, import_path.join)((0, import_path.dirname)(filePath), (0, import_path.basename)(filePath).replace(new RegExp(oldName, \"g\"), newName));\n await import_fs_extra.default.rename(filePath, newFileName);\n}\nfunction walk(current) {\n if (!import_fs_extra.default.lstatSync(current).isDirectory()) {\n return [\n current\n ];\n }\n var files = import_fs_extra.default.readdirSync(current).map(function(child) {\n return walk((0, import_path.join)(current, child));\n });\n var result = [];\n return result.concat.apply([\n current\n ], files);\n}\nasync function replaceNameInUTF8File(filePath, projectName, templateName) {\n var fileContent = await import_fs_extra.default.readFile(filePath, \"utf8\");\n var replacedFileContent = fileContent.replace(new RegExp(templateName, \"g\"), projectName).replace(new RegExp(templateName.toLowerCase(), \"g\"), projectName.toLowerCase());\n if (fileContent !== replacedFileContent) {\n await import_fs_extra.default.writeFile(filePath, replacedFileContent, \"utf8\");\n }\n}\nvar main = async function(param) {\n var { isFullClone, projectName } = param;\n var placeholderName = \"bare\";\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = walk(process.cwd()).reverse()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var filePath = _step.value;\n if (shouldIgnoreFile(filePath)) {\n continue;\n }\n if (!(await import_fs_extra.default.stat(filePath)).isDirectory()) {\n await replaceNameInUTF8File(filePath, projectName, \"bare\");\n }\n if (shouldRenameFile(filePath, placeholderName)) {\n await renameFile(filePath, placeholderName, projectName);\n } else if (shouldRenameFile(filePath, placeholderName.toLowerCase())) {\n await renameFile(filePath, placeholderName.toLowerCase(), projectName.toLowerCase());\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n if (isFullClone) {\n console.info(`\n${import_ansis.default.green.bold(\"Done!\")} Created a new project under ./${import_ansis.default.greenBright(projectName)} visit your project:\n \\u2022 ${import_ansis.default.green(\"cd\")} ${projectName}\n\n${import_ansis.default.green(`Run instructions for ${import_ansis.default.bold(\"Android\")}:`)}\n \\u2022 Have an Android emulator running (quickest way to get started), or a device connected.\n \\u2022 npx react-native run-android\n\n${import_ansis.default.blue(`Run instructions for ${import_ansis.default.bold(\"iOS\")}:`)}\n \\u2022 Install Cocoapods\n \\u2022 bundle install # you need to run this only once in your project.\n \\u2022 bundle exec pod install\n \\u2022 cd ..\n\n \\u2022 npx react-native run-ios\n ${import_ansis.default.gray(\"- or -\")}\n \\u2022 Open ${projectName}/ios/${projectName}.xcworkspace in Xcode or run \"xed -b ios\"\n \\u2022 Hit the Run button\n\n`);\n }\n};\nvar bare_default = main;\n//# sourceMappingURL=bare.js.map\n"],"mappings":";;;AACA,IAAI,WAAW,OAAO;AACtB,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO;AAC1B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,WAAW,KAAK,YAAY,YAAY,SAAS,OAAO,OAAO,SAAS,aAAa,GAAG,CAAC,IAAI,CAAC,GAAG,YAKnG,cAAc,CAAC,OAAO,CAAC,IAAI,aAAa,UAAU,QAAQ,WAAW;CAAE,OAAO;CAAK,YAAY;AAAK,CAAC,IAAI,QACzG,GACF;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,eAAe,CAAC;AACpB,SAAS,cAAc;CACrB,eAAe;CACf,6BAA6B;AAC/B,CAAC;AACD,OAAO,UAAU,aAAa,YAAY;AAC1C,IAAI,eAAe,QAAQ,QAAQ,OAAO,CAAC;AAC3C,IAAI,kBAAkB,QAAQ,QAAQ,UAAU,CAAC;AACjD,IAAI,cAAc,QAAQ,MAAM;AAChC,SAAS,iBAAiB,UAAU;CAClC,OAAO,SAAS,MAAM,2CAA2C;AACnE;AACA,SAAS,iBAAiB,UAAU,eAAe;CACjD,QAAQ,GAAG,YAAY,SAAQ,CAAE,QAAQ,CAAC,CAAC,SAAS,aAAa;AACnE;AACA,eAAe,WAAW,UAAU,SAAS,SAAS;CACpD,IAAI,eAAe,GAAG,YAAY,KAAI,EAAG,GAAG,YAAY,QAAO,CAAE,QAAQ,IAAI,GAAG,YAAY,SAAQ,CAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,OAAO,SAAS,GAAG,GAAG,OAAO,CAAC;CAC1J,MAAM,gBAAgB,QAAQ,OAAO,UAAU,WAAW;AAC5D;AACA,SAAS,KAAK,SAAS;CACrB,IAAI,CAAC,gBAAgB,QAAQ,UAAU,OAAO,CAAC,CAAC,YAAY,GAAG;EAC7D,OAAO,CACL,OACF;CACF;CACA,IAAI,QAAQ,gBAAgB,QAAQ,YAAY,OAAO,CAAC,CAAC,IAAI,SAAS,OAAO;EAC3E,OAAO,MAAM,GAAG,YAAY,KAAI,CAAE,SAAS,KAAK,CAAC;CACnD,CAAC;CACD,IAAI,SAAS,CAAC;CACd,OAAO,OAAO,OAAO,MAAM,CACzB,OACF,GAAG,KAAK;AACV;AACA,eAAe,sBAAsB,UAAU,aAAa,cAAc;CACxE,IAAI,cAAc,MAAM,gBAAgB,QAAQ,SAAS,UAAU,MAAM;CACzE,IAAI,sBAAsB,YAAY,QAAQ,IAAI,OAAO,cAAc,GAAG,GAAG,WAAW,CAAC,CAAC,QAAQ,IAAI,OAAO,aAAa,YAAY,GAAG,GAAG,GAAG,YAAY,YAAY,CAAC;CACxK,IAAI,gBAAgB,qBAAqB;EACvC,MAAM,gBAAgB,QAAQ,UAAU,UAAU,qBAAqB,MAAM;CAC/E;AACF;AACA,IAAI,OAAO,eAAe,OAAO;CAC/B,IAAI,EAAE,aAAa,gBAAgB;CACnC,IAAI,kBAAkB;CACtB,IAAI,4BAA4B,MAAM,oBAAoB,OAAO,iBAAiB,KAAK;CACvF,IAAI;EACF,KAAK,IAAI,YAAY,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,SAAS,CAAC,GAAG,OAAO,EAAE,6BAA6B,QAAQ,UAAU,KAAK,EAAC,CAAE,OAAO,4BAA4B,MAAM;GAC9K,IAAI,WAAW,MAAM;GACrB,IAAI,iBAAiB,QAAQ,GAAG;IAC9B;GACF;GACA,IAAI,EAAE,MAAM,gBAAgB,QAAQ,KAAK,QAAQ,EAAC,CAAE,YAAY,GAAG;IACjE,MAAM,sBAAsB,UAAU,aAAa,MAAM;GAC3D;GACA,IAAI,iBAAiB,UAAU,eAAe,GAAG;IAC/C,MAAM,WAAW,UAAU,iBAAiB,WAAW;GACzD,OAAO,IAAI,iBAAiB,UAAU,gBAAgB,YAAY,CAAC,GAAG;IACpE,MAAM,WAAW,UAAU,gBAAgB,YAAY,GAAG,YAAY,YAAY,CAAC;GACrF;EACF;CACF,SAAS,KAAK;EACZ,oBAAoB;EACpB,iBAAiB;CACnB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,6BAA6B,UAAU,UAAU,MAAM;IAC1D,UAAU,OAAO;GACnB;EACF,UAAU;GACR,IAAI,mBAAmB;IACrB,MAAM;GACR;EACF;CACF;CACA,IAAI,aAAa;EACf,QAAQ,KAAK;EACf,aAAa,QAAQ,MAAM,KAAK,OAAO,EAAE,iCAAiC,aAAa,QAAQ,YAAY,WAAW,EAAE;WAC/G,aAAa,QAAQ,MAAM,IAAI,EAAE,GAAG,YAAY;;EAEzD,aAAa,QAAQ,MAAM,wBAAwB,aAAa,QAAQ,KAAK,SAAS,EAAE,EAAE,EAAE;;;;EAI5F,aAAa,QAAQ,KAAK,wBAAwB,aAAa,QAAQ,KAAK,KAAK,EAAE,EAAE,EAAE;;;;;;;IAOrF,aAAa,QAAQ,KAAK,QAAQ,EAAE;gBACxB,YAAY,OAAO,YAAY;;;CAG9C;CACC;AACF;AACA,IAAI,eAAe"}
1
+ {"version":3,"file":"bare.native.js","names":[],"sources":["cjs/steps/bare.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar bare_exports = {};\n__export(bare_exports, {\n default: () => bare_default,\n replaceNameInUTF8File: () => replaceNameInUTF8File\n});\nmodule.exports = __toCommonJS(bare_exports);\nvar import_ansis = __toESM(require(\"ansis\"));\nvar import_fs_extra = __toESM(require(\"fs-extra\"));\nvar import_path = require(\"path\");\nfunction shouldIgnoreFile(filePath) {\n return filePath.match(/node_modules|yarn.lock|package-lock.json/g);\n}\nfunction shouldRenameFile(filePath, nameToReplace) {\n return (0, import_path.basename)(filePath).includes(nameToReplace);\n}\nasync function renameFile(filePath, oldName, newName) {\n var newFileName = (0, import_path.join)((0, import_path.dirname)(filePath), (0, import_path.basename)(filePath).replace(new RegExp(oldName, \"g\"), newName));\n await import_fs_extra.default.rename(filePath, newFileName);\n}\nfunction walk(current) {\n if (!import_fs_extra.default.lstatSync(current).isDirectory()) {\n return [\n current\n ];\n }\n var files = import_fs_extra.default.readdirSync(current).map(function(child) {\n return walk((0, import_path.join)(current, child));\n });\n var result = [];\n return result.concat.apply([\n current\n ], files);\n}\nasync function replaceNameInUTF8File(filePath, projectName, templateName) {\n var fileContent = await import_fs_extra.default.readFile(filePath, \"utf8\");\n var replacedFileContent = fileContent.replace(new RegExp(templateName, \"g\"), projectName).replace(new RegExp(templateName.toLowerCase(), \"g\"), projectName.toLowerCase());\n if (fileContent !== replacedFileContent) {\n await import_fs_extra.default.writeFile(filePath, replacedFileContent, \"utf8\");\n }\n}\nvar main = async function main2(param) {\n var { isFullClone, projectName } = param;\n var placeholderName = \"bare\";\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = walk(process.cwd()).reverse()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var filePath = _step.value;\n if (shouldIgnoreFile(filePath)) {\n continue;\n }\n if (!(await import_fs_extra.default.stat(filePath)).isDirectory()) {\n await replaceNameInUTF8File(filePath, projectName, \"bare\");\n }\n if (shouldRenameFile(filePath, placeholderName)) {\n await renameFile(filePath, placeholderName, projectName);\n } else if (shouldRenameFile(filePath, placeholderName.toLowerCase())) {\n await renameFile(filePath, placeholderName.toLowerCase(), projectName.toLowerCase());\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n if (isFullClone) {\n console.info(`\n${import_ansis.default.green.bold(\"Done!\")} Created a new project under ./${import_ansis.default.greenBright(projectName)} visit your project:\n \\u2022 ${import_ansis.default.green(\"cd\")} ${projectName}\n\n${import_ansis.default.green(`Run instructions for ${import_ansis.default.bold(\"Android\")}:`)}\n \\u2022 Have an Android emulator running (quickest way to get started), or a device connected.\n \\u2022 npx react-native run-android\n\n${import_ansis.default.blue(`Run instructions for ${import_ansis.default.bold(\"iOS\")}:`)}\n \\u2022 Install Cocoapods\n \\u2022 bundle install # you need to run this only once in your project.\n \\u2022 bundle exec pod install\n \\u2022 cd ..\n\n \\u2022 npx react-native run-ios\n ${import_ansis.default.gray(\"- or -\")}\n \\u2022 Open ${projectName}/ios/${projectName}.xcworkspace in Xcode or run \"xed -b ios\"\n \\u2022 Hit the Run button\n\n`);\n }\n};\nvar bare_default = main;\n//# sourceMappingURL=bare.js.map\n"],"mappings":"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"}
@@ -32,10 +32,10 @@ module.exports = __toCommonJS(fullstack_exports);
32
32
  var import_ansis = __toESM(require("ansis"));
33
33
  var packageManager = "yarn";
34
34
  var useYarn = packageManager === "yarn";
35
- var runCommand = function(scriptName) {
35
+ var runCommand = function runCommand2(scriptName) {
36
36
  return `${packageManager} ${useYarn ? "" : "run "}${scriptName}`;
37
37
  };
38
- var main = async function(param) {
38
+ var main = async function main2(param) {
39
39
  var { isFullClone, projectName } = param;
40
40
  if (isFullClone) {
41
41
  console.info(`
@@ -32,10 +32,10 @@ module.exports = __toCommonJS(fullstack_exports);
32
32
  var import_ansis = __toESM(require("ansis"));
33
33
  var packageManager = "yarn";
34
34
  var useYarn = packageManager === "yarn";
35
- var runCommand = function(scriptName) {
35
+ var runCommand = function runCommand2(scriptName) {
36
36
  return `${packageManager} ${useYarn ? "" : "run "}${scriptName}`;
37
37
  };
38
- var main = async function(param) {
38
+ var main = async function main2(param) {
39
39
  var { isFullClone, projectName } = param;
40
40
  if (isFullClone) {
41
41
  console.info(`
@@ -1 +1 @@
1
- {"version":3,"file":"fullstack.native.js","names":[],"sources":["cjs/steps/fullstack.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar fullstack_exports = {};\n__export(fullstack_exports, {\n default: () => fullstack_default\n});\nmodule.exports = __toCommonJS(fullstack_exports);\nvar import_ansis = __toESM(require(\"ansis\"));\nvar packageManager = \"yarn\";\nvar useYarn = packageManager === \"yarn\";\nvar runCommand = function(scriptName) {\n return `${packageManager} ${useYarn ? \"\" : \"run \"}${scriptName}`;\n};\nvar main = async function(param) {\n var { isFullClone, projectName } = param;\n if (isFullClone) {\n console.info(`\n${import_ansis.default.green.bold(\"Done!\")} Created a new project under ./${import_ansis.default.greenBright(projectName)} visit your project:\n \\u2022 ${import_ansis.default.green(\"cd\")} ${projectName}\n`);\n }\n console.info(`\nTo start the dev server, run: ${import_ansis.default.green(runCommand(\"dev\"))}\n`);\n};\nvar fullstack_default = main;\n//# sourceMappingURL=fullstack.js.map\n"],"mappings":";;;AACA,IAAI,WAAW,OAAO;AACtB,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO;AAC1B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,WAAW,KAAK,YAAY,YAAY,SAAS,OAAO,OAAO,SAAS,aAAa,GAAG,CAAC,IAAI,CAAC,GAAG,YAKnG,cAAc,CAAC,OAAO,CAAC,IAAI,aAAa,UAAU,QAAQ,WAAW;CAAE,OAAO;CAAK,YAAY;AAAK,CAAC,IAAI,QACzG,GACF;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,oBAAoB,CAAC;AACzB,SAAS,mBAAmB,EAC1B,eAAe,kBACjB,CAAC;AACD,OAAO,UAAU,aAAa,iBAAiB;AAC/C,IAAI,eAAe,QAAQ,QAAQ,OAAO,CAAC;AAC3C,IAAI,iBAAiB;AACrB,IAAI,UAAU,mBAAmB;AACjC,IAAI,aAAa,SAAS,YAAY;CACpC,OAAO,GAAG,eAAe,GAAG,UAAU,KAAK,SAAS;AACtD;AACA,IAAI,OAAO,eAAe,OAAO;CAC/B,IAAI,EAAE,aAAa,gBAAgB;CACnC,IAAI,aAAa;EACf,QAAQ,KAAK;EACf,aAAa,QAAQ,MAAM,KAAK,OAAO,EAAE,iCAAiC,aAAa,QAAQ,YAAY,WAAW,EAAE;UAChH,aAAa,QAAQ,MAAM,IAAI,EAAE,GAAG,YAAY;CACzD;CACC;CACA,QAAQ,KAAK;gCACiB,aAAa,QAAQ,MAAM,WAAW,KAAK,CAAC,EAAE;CAC7E;AACD;AACA,IAAI,oBAAoB"}
1
+ {"version":3,"file":"fullstack.native.js","names":[],"sources":["cjs/steps/fullstack.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar fullstack_exports = {};\n__export(fullstack_exports, {\n default: () => fullstack_default\n});\nmodule.exports = __toCommonJS(fullstack_exports);\nvar import_ansis = __toESM(require(\"ansis\"));\nvar packageManager = \"yarn\";\nvar useYarn = packageManager === \"yarn\";\nvar runCommand = function runCommand2(scriptName) {\n return `${packageManager} ${useYarn ? \"\" : \"run \"}${scriptName}`;\n};\nvar main = async function main2(param) {\n var { isFullClone, projectName } = param;\n if (isFullClone) {\n console.info(`\n${import_ansis.default.green.bold(\"Done!\")} Created a new project under ./${import_ansis.default.greenBright(projectName)} visit your project:\n \\u2022 ${import_ansis.default.green(\"cd\")} ${projectName}\n`);\n }\n console.info(`\nTo start the dev server, run: ${import_ansis.default.green(runCommand(\"dev\"))}\n`);\n};\nvar fullstack_default = main;\n//# sourceMappingURL=fullstack.js.map\n"],"mappings":";;;AACA,IAAI,WAAW,OAAO;AACtB,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO;AAC1B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,WAAW,KAAK,YAAY,YAAY,SAAS,OAAO,OAAO,SAAS,aAAa,GAAG,CAAC,IAAI,CAAC,GAAG,YAKnG,cAAc,CAAC,OAAO,CAAC,IAAI,aAAa,UAAU,QAAQ,WAAW;CAAE,OAAO;CAAK,YAAY;AAAK,CAAC,IAAI,QACzG,GACF;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,oBAAoB,CAAC;AACzB,SAAS,mBAAmB,EAC1B,eAAe,kBACjB,CAAC;AACD,OAAO,UAAU,aAAa,iBAAiB;AAC/C,IAAI,eAAe,QAAQ,QAAQ,OAAO,CAAC;AAC3C,IAAI,iBAAiB;AACrB,IAAI,UAAU,mBAAmB;AACjC,IAAI,aAAa,SAAS,YAAY,YAAY;CAChD,OAAO,GAAG,eAAe,GAAG,UAAU,KAAK,SAAS;AACtD;AACA,IAAI,OAAO,eAAe,MAAM,OAAO;CACrC,IAAI,EAAE,aAAa,gBAAgB;CACnC,IAAI,aAAa;EACf,QAAQ,KAAK;EACf,aAAa,QAAQ,MAAM,KAAK,OAAO,EAAE,iCAAiC,aAAa,QAAQ,YAAY,WAAW,EAAE;UAChH,aAAa,QAAQ,MAAM,IAAI,EAAE,GAAG,YAAY;CACzD;CACC;CACA,QAAQ,KAAK;gCACiB,aAAa,QAAQ,MAAM,WAAW,KAAK,CAAC,EAAE;CAC7E;AACD;AACA,IAAI,oBAAoB"}
@@ -36,10 +36,10 @@ var import_ansis = __toESM(require("ansis"));
36
36
  var import_fs_extra = __toESM(require("fs-extra"));
37
37
  var import_path = require("path");
38
38
  var import_utils = require("@vxrn/utils");
39
- var extraSteps = async function(param) {
39
+ var extraSteps = async function extraSteps2(param) {
40
40
  var { isFullClone, projectName, packageManager } = param;
41
41
  var useBun = packageManager === "bun";
42
- var runCommand = function(scriptName) {
42
+ var runCommand = function runCommand2(scriptName) {
43
43
  return `${packageManager} ${useBun ? "" : "run "}${scriptName}`;
44
44
  };
45
45
  if (isFullClone) {
@@ -53,7 +53,7 @@ To run:
53
53
  ${import_ansis.default.green(runCommand("dev"))}
54
54
  `);
55
55
  };
56
- var preInstall = async function(param) {
56
+ var preInstall = async function preInstall2(param) {
57
57
  var { projectName, packageManager, projectPath } = param;
58
58
  var path = projectPath || projectName;
59
59
  var envExample = (0, import_path.join)(path, ".env.example");
@@ -36,10 +36,10 @@ var import_ansis = __toESM(require("ansis"));
36
36
  var import_fs_extra = __toESM(require("fs-extra"));
37
37
  var import_path = require("path");
38
38
  var import_utils = require("@vxrn/utils");
39
- var extraSteps = async function(param) {
39
+ var extraSteps = async function extraSteps2(param) {
40
40
  var { isFullClone, projectName, packageManager } = param;
41
41
  var useBun = packageManager === "bun";
42
- var runCommand = function(scriptName) {
42
+ var runCommand = function runCommand2(scriptName) {
43
43
  return `${packageManager} ${useBun ? "" : "run "}${scriptName}`;
44
44
  };
45
45
  if (isFullClone) {
@@ -53,7 +53,7 @@ To run:
53
53
  ${import_ansis.default.green(runCommand("dev"))}
54
54
  `);
55
55
  };
56
- var preInstall = async function(param) {
56
+ var preInstall = async function preInstall2(param) {
57
57
  var { projectName, packageManager, projectPath } = param;
58
58
  var path = projectPath || projectName;
59
59
  var envExample = (0, import_path.join)(path, ".env.example");
@@ -1 +1 @@
1
- {"version":3,"file":"one.native.js","names":[],"sources":["cjs/steps/one.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar one_exports = {};\n__export(one_exports, {\n extraSteps: () => extraSteps,\n preInstall: () => preInstall\n});\nmodule.exports = __toCommonJS(one_exports);\nvar import_ansis = __toESM(require(\"ansis\"));\nvar import_fs_extra = __toESM(require(\"fs-extra\"));\nvar import_path = require(\"path\");\nvar import_utils = require(\"@vxrn/utils\");\nvar extraSteps = async function(param) {\n var { isFullClone, projectName, packageManager } = param;\n var useBun = packageManager === \"bun\";\n var runCommand = function(scriptName) {\n return `${packageManager} ${useBun ? \"\" : \"run \"}${scriptName}`;\n };\n if (isFullClone) {\n console.info(`\n${import_ansis.default.green.bold(\"Done!\")} Created a new project under ./${import_ansis.default.greenBright(projectName)}`);\n }\n console.info(`\nTo run: \n\n ${import_ansis.default.green(\"cd\")} ${projectName}\n ${import_ansis.default.green(runCommand(\"dev\"))}\n`);\n};\nvar preInstall = async function(param) {\n var { projectName, packageManager, projectPath } = param;\n var path = projectPath || projectName;\n var envExample = (0, import_path.join)(path, \".env.example\");\n if (import_fs_extra.default.existsSync(envExample)) {\n await import_fs_extra.default.move(envExample, (0, import_path.join)(path, \".env\"));\n console.info(`Moved .env.example to .env`);\n }\n if (packageManager === \"pnpm\") {\n await import_fs_extra.default.writeFile((0, import_path.join)(path, `.npmrc`), `node-linker=hoisted\n`);\n console.info(`Set up .npmrc to avoid symlinked node_modules\n\nNote! \\u{1F44B}\n\nIf you are working in a monorepo, you need to move the .npmrc with the node-linker\nconfiguration to the root of the monorepo rather than here.\n\n`);\n }\n if (packageManager === \"yarn\") {\n await import_fs_extra.default.writeFile((0, import_path.join)(path, \".yarnrc.yml\"), `\ncompressionLevel: mixed\nenableGlobalCache: false\nenableTelemetry: false\nnodeLinker: node-modules\n\nlogFilters:\n - code: YN0002\n level: discard\n - code: YN0060\n level: discard\n - code: YN0006\n level: discard\n - code: YN0076\n level: discard\n`);\n await (0, import_utils.execPromise)(`yarn set version stable`);\n await import_fs_extra.default.writeFile((0, import_path.join)(path, \"yarn.lock\"), \"\");\n console.info(`Set up yarn for latest version`);\n }\n};\n//# sourceMappingURL=one.js.map\n"],"mappings":";;;AACA,IAAI,WAAW,OAAO;AACtB,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO;AAC1B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,WAAW,KAAK,YAAY,YAAY,SAAS,OAAO,OAAO,SAAS,aAAa,GAAG,CAAC,IAAI,CAAC,GAAG,YAKnG,cAAc,CAAC,OAAO,CAAC,IAAI,aAAa,UAAU,QAAQ,WAAW;CAAE,OAAO;CAAK,YAAY;AAAK,CAAC,IAAI,QACzG,GACF;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,cAAc,CAAC;AACnB,SAAS,aAAa;CACpB,kBAAkB;CAClB,kBAAkB;AACpB,CAAC;AACD,OAAO,UAAU,aAAa,WAAW;AACzC,IAAI,eAAe,QAAQ,QAAQ,OAAO,CAAC;AAC3C,IAAI,kBAAkB,QAAQ,QAAQ,UAAU,CAAC;AACjD,IAAI,cAAc,QAAQ,MAAM;AAChC,IAAI,eAAe,QAAQ,aAAa;AACxC,IAAI,aAAa,eAAe,OAAO;CACrC,IAAI,EAAE,aAAa,aAAa,mBAAmB;CACnD,IAAI,SAAS,mBAAmB;CAChC,IAAI,aAAa,SAAS,YAAY;EACpC,OAAO,GAAG,eAAe,GAAG,SAAS,KAAK,SAAS;CACrD;CACA,IAAI,aAAa;EACf,QAAQ,KAAK;EACf,aAAa,QAAQ,MAAM,KAAK,OAAO,EAAE,iCAAiC,aAAa,QAAQ,YAAY,WAAW,GAAG;CACzH;CACA,QAAQ,KAAK;;;IAGX,aAAa,QAAQ,MAAM,IAAI,EAAE,GAAG,YAAY;IAChD,aAAa,QAAQ,MAAM,WAAW,KAAK,CAAC,EAAE;CACjD;AACD;AACA,IAAI,aAAa,eAAe,OAAO;CACrC,IAAI,EAAE,aAAa,gBAAgB,gBAAgB;CACnD,IAAI,OAAO,eAAe;CAC1B,IAAI,cAAc,GAAG,YAAY,KAAI,CAAE,MAAM,cAAc;CAC3D,IAAI,gBAAgB,QAAQ,WAAW,UAAU,GAAG;EAClD,MAAM,gBAAgB,QAAQ,KAAK,aAAa,GAAG,YAAY,KAAI,CAAE,MAAM,MAAM,CAAC;EAClF,QAAQ,KAAK,4BAA4B;CAC3C;CACA,IAAI,mBAAmB,QAAQ;EAC7B,MAAM,gBAAgB,QAAQ,WAAW,GAAG,YAAY,KAAI,CAAE,MAAM,QAAQ,GAAG;CAClF;EACG,QAAQ,KAAK;;;;;;;CAOhB;CACC;CACA,IAAI,mBAAmB,QAAQ;EAC7B,MAAM,gBAAgB,QAAQ,WAAW,GAAG,YAAY,KAAI,CAAE,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;CAevF;EACG,OAAO,GAAG,aAAa,YAAW,CAAE,yBAAyB;EAC7D,MAAM,gBAAgB,QAAQ,WAAW,GAAG,YAAY,KAAI,CAAE,MAAM,WAAW,GAAG,EAAE;EACpF,QAAQ,KAAK,gCAAgC;CAC/C;AACF"}
1
+ {"version":3,"file":"one.native.js","names":[],"sources":["cjs/steps/one.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar one_exports = {};\n__export(one_exports, {\n extraSteps: () => extraSteps,\n preInstall: () => preInstall\n});\nmodule.exports = __toCommonJS(one_exports);\nvar import_ansis = __toESM(require(\"ansis\"));\nvar import_fs_extra = __toESM(require(\"fs-extra\"));\nvar import_path = require(\"path\");\nvar import_utils = require(\"@vxrn/utils\");\nvar extraSteps = async function extraSteps2(param) {\n var { isFullClone, projectName, packageManager } = param;\n var useBun = packageManager === \"bun\";\n var runCommand = function runCommand2(scriptName) {\n return `${packageManager} ${useBun ? \"\" : \"run \"}${scriptName}`;\n };\n if (isFullClone) {\n console.info(`\n${import_ansis.default.green.bold(\"Done!\")} Created a new project under ./${import_ansis.default.greenBright(projectName)}`);\n }\n console.info(`\nTo run: \n\n ${import_ansis.default.green(\"cd\")} ${projectName}\n ${import_ansis.default.green(runCommand(\"dev\"))}\n`);\n};\nvar preInstall = async function preInstall2(param) {\n var { projectName, packageManager, projectPath } = param;\n var path = projectPath || projectName;\n var envExample = (0, import_path.join)(path, \".env.example\");\n if (import_fs_extra.default.existsSync(envExample)) {\n await import_fs_extra.default.move(envExample, (0, import_path.join)(path, \".env\"));\n console.info(`Moved .env.example to .env`);\n }\n if (packageManager === \"pnpm\") {\n await import_fs_extra.default.writeFile((0, import_path.join)(path, `.npmrc`), `node-linker=hoisted\n`);\n console.info(`Set up .npmrc to avoid symlinked node_modules\n\nNote! \\u{1F44B}\n\nIf you are working in a monorepo, you need to move the .npmrc with the node-linker\nconfiguration to the root of the monorepo rather than here.\n\n`);\n }\n if (packageManager === \"yarn\") {\n await import_fs_extra.default.writeFile((0, import_path.join)(path, \".yarnrc.yml\"), `\ncompressionLevel: mixed\nenableGlobalCache: false\nenableTelemetry: false\nnodeLinker: node-modules\n\nlogFilters:\n - code: YN0002\n level: discard\n - code: YN0060\n level: discard\n - code: YN0006\n level: discard\n - code: YN0076\n level: discard\n`);\n await (0, import_utils.execPromise)(`yarn set version stable`);\n await import_fs_extra.default.writeFile((0, import_path.join)(path, \"yarn.lock\"), \"\");\n console.info(`Set up yarn for latest version`);\n }\n};\n//# sourceMappingURL=one.js.map\n"],"mappings":"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"}
@@ -32,7 +32,7 @@ const templates = [
32
32
  {
33
33
  title: `Basic`,
34
34
  value: "Basic",
35
- description: "The simplest starting point, vanilla Rreact Native",
35
+ description: "The simplest starting point, vanilla React Native",
36
36
  type: "included-in-monorepo",
37
37
  hidden: false,
38
38
  repo: {
@@ -34,7 +34,7 @@ var templates = [
34
34
  {
35
35
  title: `Basic`,
36
36
  value: "Basic",
37
- description: "The simplest starting point, vanilla Rreact Native",
37
+ description: "The simplest starting point, vanilla React Native",
38
38
  type: "included-in-monorepo",
39
39
  hidden: false,
40
40
  repo: {
@@ -34,7 +34,7 @@ var templates = [
34
34
  {
35
35
  title: `Basic`,
36
36
  value: "Basic",
37
- description: "The simplest starting point, vanilla Rreact Native",
37
+ description: "The simplest starting point, vanilla React Native",
38
38
  type: "included-in-monorepo",
39
39
  hidden: false,
40
40
  repo: {
@@ -1 +1 @@
1
- {"version":3,"file":"templates.native.js","names":[],"sources":["cjs/templates.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar templates_exports = {};\n__export(templates_exports, {\n templates: () => templates\n});\nmodule.exports = __toCommonJS(templates_exports);\nvar BasicTemplateSteps = __toESM(require(\"./steps/one\"));\nvar templates = [\n {\n title: `Basic`,\n value: \"Basic\",\n description: \"The simplest starting point, vanilla Rreact Native\",\n type: \"included-in-monorepo\",\n hidden: false,\n repo: {\n url: `https://github.com/onejs/one.git`,\n sshFallback: `git@github.com:onejs/one.git`,\n dir: [\n `examples`,\n `one-basic`\n ],\n branch: \"main\"\n },\n ...BasicTemplateSteps\n },\n {\n title: `Takeout Free`,\n value: \"Takeout\",\n description: \"One, Tamagui, Zero, Better Auth\",\n type: \"external-repo\",\n hidden: false,\n repo: {\n url: `https://github.com/tamagui/takeout-free.git`,\n sshFallback: `git@github.com:tamagui/takeout-free.git`,\n dir: [],\n branch: \"main\"\n },\n ...BasicTemplateSteps\n },\n {\n title: `Takeout Production`,\n value: \"TakeoutPro\",\n description: \"Takeout + a startup in a repo. Refined stack that's production ready. Home/Terms/Docs, CI/CD, IaC, Integration Tests, Onboarding, Notifications, OTA Updates, Screens, >50 Components, >25 Agent Docs, >30 Scripts. See https://takeout.tamagui.dev\",\n type: \"external-link\",\n hidden: false,\n externalUrl: \"https://takeout.tamagui.dev\"\n }\n];\n//# sourceMappingURL=templates.js.map\n"],"mappings":";;;AACA,IAAI,WAAW,OAAO;AACtB,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO;AAC1B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,WAAW,KAAK,YAAY,YAAY,SAAS,OAAO,OAAO,SAAS,aAAa,GAAG,CAAC,IAAI,CAAC,GAAG,YAKnG,cAAc,CAAC,OAAO,CAAC,IAAI,aAAa,UAAU,QAAQ,WAAW;CAAE,OAAO;CAAK,YAAY;AAAK,CAAC,IAAI,QACzG,GACF;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,oBAAoB,CAAC;AACzB,SAAS,mBAAmB,EAC1B,iBAAiB,UACnB,CAAC;AACD,OAAO,UAAU,aAAa,iBAAiB;AAC/C,IAAI,qBAAqB,QAAQ,QAAQ,uBAAa,CAAC;AACvD,IAAI,YAAY;CACd;EACE,OAAO;EACP,OAAO;EACP,aAAa;EACb,MAAM;EACN,QAAQ;EACR,MAAM;GACJ,KAAK;GACL,aAAa;GACb,KAAK,CACH,YACA,WACF;GACA,QAAQ;EACV;EACA,GAAG;CACL;CACA;EACE,OAAO;EACP,OAAO;EACP,aAAa;EACb,MAAM;EACN,QAAQ;EACR,MAAM;GACJ,KAAK;GACL,aAAa;GACb,KAAK,CAAC;GACN,QAAQ;EACV;EACA,GAAG;CACL;CACA;EACE,OAAO;EACP,OAAO;EACP,aAAa;EACb,MAAM;EACN,QAAQ;EACR,aAAa;CACf;AACF"}
1
+ {"version":3,"file":"templates.native.js","names":[],"sources":["cjs/templates.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar templates_exports = {};\n__export(templates_exports, {\n templates: () => templates\n});\nmodule.exports = __toCommonJS(templates_exports);\nvar BasicTemplateSteps = __toESM(require(\"./steps/one\"));\nvar templates = [\n {\n title: `Basic`,\n value: \"Basic\",\n description: \"The simplest starting point, vanilla React Native\",\n type: \"included-in-monorepo\",\n hidden: false,\n repo: {\n url: `https://github.com/onejs/one.git`,\n sshFallback: `git@github.com:onejs/one.git`,\n dir: [\n `examples`,\n `one-basic`\n ],\n branch: \"main\"\n },\n ...BasicTemplateSteps\n },\n {\n title: `Takeout Free`,\n value: \"Takeout\",\n description: \"One, Tamagui, Zero, Better Auth\",\n type: \"external-repo\",\n hidden: false,\n repo: {\n url: `https://github.com/tamagui/takeout-free.git`,\n sshFallback: `git@github.com:tamagui/takeout-free.git`,\n dir: [],\n branch: \"main\"\n },\n ...BasicTemplateSteps\n },\n {\n title: `Takeout Production`,\n value: \"TakeoutPro\",\n description: \"Takeout + a startup in a repo. Refined stack that's production ready. Home/Terms/Docs, CI/CD, IaC, Integration Tests, Onboarding, Notifications, OTA Updates, Screens, >50 Components, >25 Agent Docs, >30 Scripts. See https://takeout.tamagui.dev\",\n type: \"external-link\",\n hidden: false,\n externalUrl: \"https://takeout.tamagui.dev\"\n }\n];\n//# sourceMappingURL=templates.js.map\n"],"mappings":";;;AACA,IAAI,WAAW,OAAO;AACtB,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO;AAC1B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,WAAW,KAAK,YAAY,YAAY,SAAS,OAAO,OAAO,SAAS,aAAa,GAAG,CAAC,IAAI,CAAC,GAAG,YAKnG,cAAc,CAAC,OAAO,CAAC,IAAI,aAAa,UAAU,QAAQ,WAAW;CAAE,OAAO;CAAK,YAAY;AAAK,CAAC,IAAI,QACzG,GACF;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,oBAAoB,CAAC;AACzB,SAAS,mBAAmB,EAC1B,iBAAiB,UACnB,CAAC;AACD,OAAO,UAAU,aAAa,iBAAiB;AAC/C,IAAI,qBAAqB,QAAQ,QAAQ,uBAAa,CAAC;AACvD,IAAI,YAAY;CACd;EACE,OAAO;EACP,OAAO;EACP,aAAa;EACb,MAAM;EACN,QAAQ;EACR,MAAM;GACJ,KAAK;GACL,aAAa;GACb,KAAK,CACH,YACA,WACF;GACA,QAAQ;EACV;EACA,GAAG;CACL;CACA;EACE,OAAO;EACP,OAAO;EACP,aAAa;EACb,MAAM;EACN,QAAQ;EACR,MAAM;GACJ,KAAK;GACL,aAAa;GACb,KAAK,CAAC;GACN,QAAQ;EACV;EACA,GAAG;CACL;CACA;EACE,OAAO;EACP,OAAO;EACP,aAAa;EACb,MAAM;EACN,QAAQ;EACR,aAAa;CACf;AACF"}
@@ -82,22 +82,6 @@ async function create(args) {
82
82
  interval: 100
83
83
  }
84
84
  }).start();
85
- await FSExtra.mkdir(resolvedProjectPath);
86
- try {
87
- await cloneStarter(template, resolvedProjectPath);
88
- process.chdir(resolvedProjectPath);
89
- } catch (e) {
90
- console.error(`[vxrn] Failed to copy example into ${resolvedProjectPath}
91
-
92
- `, e);
93
- process.exit(1);
94
- }
95
- spinner.stop();
96
- console.info();
97
- console.info();
98
- console.info(ansis.green(`${projectName} created!`));
99
- console.info();
100
- console.info();
101
85
  const packageJson = await (async () => {
102
86
  const errorMessages = [];
103
87
  try {
@@ -122,6 +106,22 @@ async function create(args) {
122
106
  throw e;
123
107
  }
124
108
  })();
109
+ await FSExtra.mkdir(resolvedProjectPath);
110
+ try {
111
+ await cloneStarter(template, resolvedProjectPath);
112
+ process.chdir(resolvedProjectPath);
113
+ } catch (e) {
114
+ console.error(`[vxrn] Failed to copy example into ${resolvedProjectPath}
115
+
116
+ `, e);
117
+ process.exit(1);
118
+ }
119
+ spinner.stop();
120
+ console.info();
121
+ console.info();
122
+ console.info(ansis.green(`${projectName} created!`));
123
+ console.info();
124
+ console.info();
125
125
  updatePackageJsonName(projectName, resolvedProjectPath);
126
126
  updatePackageJsonVersions(packageJson.version, resolvedProjectPath);
127
127
  updateAppJsonName(projectName, resolvedProjectPath);
@@ -130,7 +130,7 @@ async function create(args) {
130
130
  return template.packageManager;
131
131
  }
132
132
  const found = await detectPackageManager();
133
- const allFound = Object.keys(found);
133
+ const allFound = Object.keys(found).filter((x) => found[x]);
134
134
  if (allFound.length === 1) {
135
135
  return allFound[0];
136
136
  }
@@ -138,7 +138,7 @@ async function create(args) {
138
138
  name: "packageManager",
139
139
  type: "select",
140
140
  message: `Package Manager:`,
141
- choices: allFound.filter((x) => found[x]).map((name) => ({
141
+ choices: allFound.map((name) => ({
142
142
  title: name,
143
143
  value: name
144
144
  }))
@@ -191,7 +191,7 @@ function updatePackageJsonVersions(version, dir) {
191
191
  const packageJsonPath = path.join(dir, "package.json");
192
192
  if (existsSync(packageJsonPath)) {
193
193
  const content = readFileSync(packageJsonPath).toString();
194
- const contentWithUpdatedVersions = content.replace(/"workspace:\^"/gm, `"^${version}"`).replace(/"workspace:~"/gm, `"~${version}"`).replace(/"workspace:\*"/gm, `"^${version}"`);
194
+ const contentWithUpdatedVersions = content.replace(/"workspace:(?:\^|~|\*)"/gm, `"${version}"`);
195
195
  writeFileSync(packageJsonPath, contentWithUpdatedVersions);
196
196
  }
197
197
  }
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","names":[],"sources":["esm/create.js"],"sourcesContent":["import ansis from \"ansis\";\nimport FSExtra from \"fs-extra\";\nimport { execSync, exec } from \"node:child_process\";\nimport fs from \"node:fs\";\nimport path from \"node:path\";\nimport { promisify } from \"node:util\";\nimport { fileURLToPath } from \"node:url\";\nimport { cloneStarter } from \"./helpers/cloneStarter\";\nimport { getProjectName } from \"./helpers/getProjectName\";\nimport { getTemplateInfo } from \"./helpers/getTemplateInfo\";\nimport { installDependencies } from \"./helpers/installDependencies\";\nimport { validateNpmName } from \"./helpers/validateNpmPackage\";\nimport prompts from \"prompts\";\nimport { detectPackageManager } from \"@vxrn/utils\";\nconst { existsSync, readFileSync, writeFileSync } = FSExtra;\nasync function create(args) {\n const gitVersionString = Number.parseFloat(\n execSync(`git --version`).toString().replace(`git version `, \"\").trim()\n );\n if (gitVersionString < 2.27) {\n console.error(`\n\n ! vxrn can't install: Git version must be >= 2.27\n\n`);\n process.exit(1);\n }\n let projectName = args.name || \"\";\n let resolvedProjectPath = path.resolve(process.cwd(), projectName);\n async function promptForName() {\n projectName = await getProjectName();\n resolvedProjectPath = path.resolve(process.cwd(), projectName);\n }\n if (projectName) {\n if (fs.existsSync(resolvedProjectPath)) {\n console.error(`Error: folder already exists: ${resolvedProjectPath}`);\n process.exit(1);\n }\n } else {\n await promptForName();\n while (fs.existsSync(resolvedProjectPath)) {\n console.info();\n console.info(\n ansis.yellow(\"!\"),\n `The folder ${ansis.underline(\n ansis.blueBright(projectName)\n )} already exists, lets try another name`\n );\n console.info();\n console.info();\n await promptForName();\n }\n }\n console.info();\n let template = await getTemplateInfo(args.template);\n if (template.type === \"external-link\") {\n const url = template.externalUrl;\n console.info();\n console.info(ansis.green(`Opening ${url}...`));\n console.info();\n const openCmd = process.platform === \"darwin\" ? \"open\" : process.platform === \"win32\" ? \"start\" : \"xdg-open\";\n exec(`${openCmd} ${url}`);\n process.exit(0);\n }\n const { valid, problems } = validateNpmName(projectName);\n if (!valid) {\n console.error(\n `Could not create a project called ${ansis.red(\n `\"${projectName}\"`\n )} because of npm naming restrictions:`\n );\n problems.forEach((p) => console.error(` ${ansis.red.bold(\"*\")} ${p}`));\n process.exit(1);\n }\n console.info();\n const Spinner = await import(\"yocto-spinner\").then((x) => x.default);\n const spinner = Spinner({\n text: `Creating...`,\n spinner: {\n frames: [\"\\u280B\", \"\\u2819\", \"\\u2839\", \"\\u2838\", \"\\u283C\", \"\\u2834\", \"\\u2826\", \"\\u2827\", \"\\u2807\", \"\\u280F\"],\n interval: 100\n }\n }).start();\n await FSExtra.mkdir(resolvedProjectPath);\n try {\n await cloneStarter(template, resolvedProjectPath);\n process.chdir(resolvedProjectPath);\n } catch (e) {\n console.error(`[vxrn] Failed to copy example into ${resolvedProjectPath}\n\n`, e);\n process.exit(1);\n }\n spinner.stop();\n console.info();\n console.info();\n console.info(ansis.green(`${projectName} created!`));\n console.info();\n console.info();\n const packageJson = await (async () => {\n const errorMessages = [];\n try {\n const dirname = typeof __dirname !== \"undefined\" ? __dirname : path.dirname(fileURLToPath(import.meta.url));\n const possiblePaths = [\n path.join(dirname, \"..\", \"package.json\"),\n path.join(dirname, \"..\", \"..\", \"package.json\"),\n path.join(dirname, \"..\", \"..\", \"..\", \"package.json\")\n ];\n const readFile = promisify(fs.readFile);\n for (const p of possiblePaths) {\n try {\n const data = JSON.parse(await readFile(p));\n return data;\n } catch (e) {\n if (e instanceof Error) errorMessages.push(e.message);\n }\n }\n throw new Error(\"package.json not found in any of the expected locations.\");\n } catch (e) {\n console.error(\"Failed to load package.json:\", errorMessages.join(\"\\n\"));\n throw e;\n }\n })();\n updatePackageJsonName(projectName, resolvedProjectPath);\n updatePackageJsonVersions(packageJson.version, resolvedProjectPath);\n updateAppJsonName(projectName, resolvedProjectPath);\n const packageManager = await (async () => {\n if (\"packageManager\" in template) {\n return template.packageManager;\n }\n const found = await detectPackageManager();\n const allFound = Object.keys(found);\n if (allFound.length === 1) {\n return allFound[0];\n }\n const response = await prompts({\n name: \"packageManager\",\n type: \"select\",\n message: `Package Manager:`,\n choices: allFound.filter((x) => found[x]).map((name) => ({\n title: name,\n value: name\n }))\n });\n return response.packageManager;\n })();\n console.info();\n if (\"preInstall\" in template) {\n await template.preInstall({\n packageManager,\n isFullClone: true,\n projectName,\n projectPath: resolvedProjectPath\n });\n }\n try {\n console.info();\n console.info(ansis.green(`Installing with ${packageManager}...`));\n console.info();\n await installDependencies(resolvedProjectPath, packageManager);\n } catch (e) {\n console.error(\"[vxrn] error installing with \" + packageManager + `\n${e}`);\n process.exit(1);\n }\n const envDefault = path.join(resolvedProjectPath, \".env.default\");\n const env = path.join(resolvedProjectPath, \".env\");\n if (existsSync(envDefault) && !existsSync(env)) {\n await FSExtra.move(envDefault, env);\n }\n if (\"extraSteps\" in template) {\n await template.extraSteps({\n packageManager,\n isFullClone: true,\n projectName,\n projectPath: resolvedProjectPath\n });\n }\n console.info();\n}\nfunction updatePackageJsonName(projectName, dir) {\n const packageJsonPath = path.join(dir, \"package.json\");\n if (existsSync(packageJsonPath)) {\n const content = readFileSync(packageJsonPath).toString();\n const contentWithUpdatedName = content.replace(\n /(\"name\": \")(.*)(\",)/,\n `$1${projectName}$3`\n );\n writeFileSync(packageJsonPath, contentWithUpdatedName);\n }\n}\nfunction updatePackageJsonVersions(version, dir) {\n const packageJsonPath = path.join(dir, \"package.json\");\n if (existsSync(packageJsonPath)) {\n const content = readFileSync(packageJsonPath).toString();\n const contentWithUpdatedVersions = content.replace(/\"workspace:\\^\"/gm, `\"^${version}\"`).replace(/\"workspace:~\"/gm, `\"~${version}\"`).replace(/\"workspace:\\*\"/gm, `\"^${version}\"`);\n writeFileSync(packageJsonPath, contentWithUpdatedVersions);\n }\n}\nfunction updateAppJsonName(projectName, dir) {\n const appJsonPath = path.join(dir, \"app.json\");\n if (existsSync(appJsonPath)) {\n const content = readFileSync(appJsonPath).toString();\n const projectSlug = projectName.toLowerCase().replace(/\\s/g, \"-\");\n const contentWithUpdatedName = content.replace(/(\"name\": \")(.*)(\",)/, `$1${projectName}$3`).replace(/(\"slug\": \")(.*)(\",)/, `$1${projectSlug}$3`);\n writeFileSync(appJsonPath, contentWithUpdatedName);\n }\n}\nexport {\n create\n};\n//# sourceMappingURL=create.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"create.js","names":[],"sources":["esm/create.js"],"sourcesContent":["import ansis from \"ansis\";\nimport FSExtra from \"fs-extra\";\nimport { execSync, exec } from \"node:child_process\";\nimport fs from \"node:fs\";\nimport path from \"node:path\";\nimport { promisify } from \"node:util\";\nimport { fileURLToPath } from \"node:url\";\nimport { cloneStarter } from \"./helpers/cloneStarter\";\nimport { getProjectName } from \"./helpers/getProjectName\";\nimport { getTemplateInfo } from \"./helpers/getTemplateInfo\";\nimport { installDependencies } from \"./helpers/installDependencies\";\nimport { validateNpmName } from \"./helpers/validateNpmPackage\";\nimport prompts from \"prompts\";\nimport { detectPackageManager } from \"@vxrn/utils\";\nconst { existsSync, readFileSync, writeFileSync } = FSExtra;\nasync function create(args) {\n const gitVersionString = Number.parseFloat(\n execSync(`git --version`).toString().replace(`git version `, \"\").trim()\n );\n if (gitVersionString < 2.27) {\n console.error(`\n\n ! vxrn can't install: Git version must be >= 2.27\n\n`);\n process.exit(1);\n }\n let projectName = args.name || \"\";\n let resolvedProjectPath = path.resolve(process.cwd(), projectName);\n async function promptForName() {\n projectName = await getProjectName();\n resolvedProjectPath = path.resolve(process.cwd(), projectName);\n }\n if (projectName) {\n if (fs.existsSync(resolvedProjectPath)) {\n console.error(`Error: folder already exists: ${resolvedProjectPath}`);\n process.exit(1);\n }\n } else {\n await promptForName();\n while (fs.existsSync(resolvedProjectPath)) {\n console.info();\n console.info(\n ansis.yellow(\"!\"),\n `The folder ${ansis.underline(\n ansis.blueBright(projectName)\n )} already exists, lets try another name`\n );\n console.info();\n console.info();\n await promptForName();\n }\n }\n console.info();\n let template = await getTemplateInfo(args.template);\n if (template.type === \"external-link\") {\n const url = template.externalUrl;\n console.info();\n console.info(ansis.green(`Opening ${url}...`));\n console.info();\n const openCmd = process.platform === \"darwin\" ? \"open\" : process.platform === \"win32\" ? \"start\" : \"xdg-open\";\n exec(`${openCmd} ${url}`);\n process.exit(0);\n }\n const { valid, problems } = validateNpmName(projectName);\n if (!valid) {\n console.error(\n `Could not create a project called ${ansis.red(\n `\"${projectName}\"`\n )} because of npm naming restrictions:`\n );\n problems.forEach((p) => console.error(` ${ansis.red.bold(\"*\")} ${p}`));\n process.exit(1);\n }\n console.info();\n const Spinner = await import(\"yocto-spinner\").then((x) => x.default);\n const spinner = Spinner({\n text: `Creating...`,\n spinner: {\n frames: [\"\\u280B\", \"\\u2819\", \"\\u2839\", \"\\u2838\", \"\\u283C\", \"\\u2834\", \"\\u2826\", \"\\u2827\", \"\\u2807\", \"\\u280F\"],\n interval: 100\n }\n }).start();\n const packageJson = await (async () => {\n const errorMessages = [];\n try {\n const dirname = typeof __dirname !== \"undefined\" ? __dirname : path.dirname(fileURLToPath(import.meta.url));\n const possiblePaths = [\n path.join(dirname, \"..\", \"package.json\"),\n path.join(dirname, \"..\", \"..\", \"package.json\"),\n path.join(dirname, \"..\", \"..\", \"..\", \"package.json\")\n ];\n const readFile = promisify(fs.readFile);\n for (const p of possiblePaths) {\n try {\n const data = JSON.parse(await readFile(p));\n return data;\n } catch (e) {\n if (e instanceof Error) errorMessages.push(e.message);\n }\n }\n throw new Error(\"package.json not found in any of the expected locations.\");\n } catch (e) {\n console.error(\"Failed to load package.json:\", errorMessages.join(\"\\n\"));\n throw e;\n }\n })();\n await FSExtra.mkdir(resolvedProjectPath);\n try {\n await cloneStarter(template, resolvedProjectPath);\n process.chdir(resolvedProjectPath);\n } catch (e) {\n console.error(`[vxrn] Failed to copy example into ${resolvedProjectPath}\n\n`, e);\n process.exit(1);\n }\n spinner.stop();\n console.info();\n console.info();\n console.info(ansis.green(`${projectName} created!`));\n console.info();\n console.info();\n updatePackageJsonName(projectName, resolvedProjectPath);\n updatePackageJsonVersions(packageJson.version, resolvedProjectPath);\n updateAppJsonName(projectName, resolvedProjectPath);\n const packageManager = await (async () => {\n if (\"packageManager\" in template) {\n return template.packageManager;\n }\n const found = await detectPackageManager();\n const allFound = Object.keys(found).filter((x) => found[x]);\n if (allFound.length === 1) {\n return allFound[0];\n }\n const response = await prompts({\n name: \"packageManager\",\n type: \"select\",\n message: `Package Manager:`,\n choices: allFound.map((name) => ({\n title: name,\n value: name\n }))\n });\n return response.packageManager;\n })();\n console.info();\n if (\"preInstall\" in template) {\n await template.preInstall({\n packageManager,\n isFullClone: true,\n projectName,\n projectPath: resolvedProjectPath\n });\n }\n try {\n console.info();\n console.info(ansis.green(`Installing with ${packageManager}...`));\n console.info();\n await installDependencies(resolvedProjectPath, packageManager);\n } catch (e) {\n console.error(\"[vxrn] error installing with \" + packageManager + `\n${e}`);\n process.exit(1);\n }\n const envDefault = path.join(resolvedProjectPath, \".env.default\");\n const env = path.join(resolvedProjectPath, \".env\");\n if (existsSync(envDefault) && !existsSync(env)) {\n await FSExtra.move(envDefault, env);\n }\n if (\"extraSteps\" in template) {\n await template.extraSteps({\n packageManager,\n isFullClone: true,\n projectName,\n projectPath: resolvedProjectPath\n });\n }\n console.info();\n}\nfunction updatePackageJsonName(projectName, dir) {\n const packageJsonPath = path.join(dir, \"package.json\");\n if (existsSync(packageJsonPath)) {\n const content = readFileSync(packageJsonPath).toString();\n const contentWithUpdatedName = content.replace(\n /(\"name\": \")(.*)(\",)/,\n `$1${projectName}$3`\n );\n writeFileSync(packageJsonPath, contentWithUpdatedName);\n }\n}\nfunction updatePackageJsonVersions(version, dir) {\n const packageJsonPath = path.join(dir, \"package.json\");\n if (existsSync(packageJsonPath)) {\n const content = readFileSync(packageJsonPath).toString();\n const contentWithUpdatedVersions = content.replace(\n /\"workspace:(?:\\^|~|\\*)\"/gm,\n `\"${version}\"`\n );\n writeFileSync(packageJsonPath, contentWithUpdatedVersions);\n }\n}\nfunction updateAppJsonName(projectName, dir) {\n const appJsonPath = path.join(dir, \"app.json\");\n if (existsSync(appJsonPath)) {\n const content = readFileSync(appJsonPath).toString();\n const projectSlug = projectName.toLowerCase().replace(/\\s/g, \"-\");\n const contentWithUpdatedName = content.replace(/(\"name\": \")(.*)(\",)/, `$1${projectName}$3`).replace(/(\"slug\": \")(.*)(\",)/, `$1${projectSlug}$3`);\n writeFileSync(appJsonPath, contentWithUpdatedName);\n }\n}\nexport {\n create\n};\n//# sourceMappingURL=create.js.map\n"],"mappings":"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"}
@@ -86,22 +86,6 @@ async function create(args) {
86
86
  interval: 100
87
87
  }
88
88
  }).start();
89
- await FSExtra.mkdir(resolvedProjectPath);
90
- try {
91
- await cloneStarter(template, resolvedProjectPath);
92
- process.chdir(resolvedProjectPath);
93
- } catch (e) {
94
- console.error(`[vxrn] Failed to copy example into ${resolvedProjectPath}
95
-
96
- `, e);
97
- process.exit(1);
98
- }
99
- spinner.stop();
100
- console.info();
101
- console.info();
102
- console.info(ansis.green(`${projectName} created!`));
103
- console.info();
104
- console.info();
105
89
  var packageJson = await (async function() {
106
90
  var errorMessages = [];
107
91
  try {
@@ -143,6 +127,22 @@ async function create(args) {
143
127
  throw e;
144
128
  }
145
129
  })();
130
+ await FSExtra.mkdir(resolvedProjectPath);
131
+ try {
132
+ await cloneStarter(template, resolvedProjectPath);
133
+ process.chdir(resolvedProjectPath);
134
+ } catch (e) {
135
+ console.error(`[vxrn] Failed to copy example into ${resolvedProjectPath}
136
+
137
+ `, e);
138
+ process.exit(1);
139
+ }
140
+ spinner.stop();
141
+ console.info();
142
+ console.info();
143
+ console.info(ansis.green(`${projectName} created!`));
144
+ console.info();
145
+ console.info();
146
146
  updatePackageJsonName(projectName, resolvedProjectPath);
147
147
  updatePackageJsonVersions(packageJson.version, resolvedProjectPath);
148
148
  updateAppJsonName(projectName, resolvedProjectPath);
@@ -151,7 +151,9 @@ async function create(args) {
151
151
  return template.packageManager;
152
152
  }
153
153
  var found = await detectPackageManager();
154
- var allFound = Object.keys(found);
154
+ var allFound = Object.keys(found).filter(function(x) {
155
+ return found[x];
156
+ });
155
157
  if (allFound.length === 1) {
156
158
  return allFound[0];
157
159
  }
@@ -159,9 +161,7 @@ async function create(args) {
159
161
  name: "packageManager",
160
162
  type: "select",
161
163
  message: `Package Manager:`,
162
- choices: allFound.filter(function(x) {
163
- return found[x];
164
- }).map(function(name) {
164
+ choices: allFound.map(function(name) {
165
165
  return {
166
166
  title: name,
167
167
  value: name
@@ -216,7 +216,7 @@ function updatePackageJsonVersions(version, dir) {
216
216
  var packageJsonPath = path.join(dir, "package.json");
217
217
  if (existsSync(packageJsonPath)) {
218
218
  var content = readFileSync(packageJsonPath).toString();
219
- var contentWithUpdatedVersions = content.replace(/"workspace:\^"/gm, `"^${version}"`).replace(/"workspace:~"/gm, `"~${version}"`).replace(/"workspace:\*"/gm, `"^${version}"`);
219
+ var contentWithUpdatedVersions = content.replace(/"workspace:(?:\^|~|\*)"/gm, `"${version}"`);
220
220
  writeFileSync(packageJsonPath, contentWithUpdatedVersions);
221
221
  }
222
222
  }
@@ -1 +1 @@
1
- {"version":3,"file":"create.native.js","names":[],"sources":["esm/create.native.js"],"sourcesContent":["import ansis from \"ansis\";\nimport FSExtra from \"fs-extra\";\nimport { execSync, exec } from \"child_process\";\nimport fs from \"fs\";\nimport path from \"path\";\nimport { promisify } from \"util\";\nimport { fileURLToPath } from \"url\";\nimport { cloneStarter } from \"./helpers/cloneStarter\";\nimport { getProjectName } from \"./helpers/getProjectName\";\nimport { getTemplateInfo } from \"./helpers/getTemplateInfo\";\nimport { installDependencies } from \"./helpers/installDependencies\";\nimport { validateNpmName } from \"./helpers/validateNpmPackage\";\nimport prompts from \"prompts\";\nimport { detectPackageManager } from \"@vxrn/utils\";\nvar { existsSync, readFileSync, writeFileSync } = FSExtra;\nasync function create(args) {\n var gitVersionString = Number.parseFloat(execSync(`git --version`).toString().replace(`git version `, \"\").trim());\n if (gitVersionString < 2.27) {\n console.error(`\n\n ! vxrn can't install: Git version must be >= 2.27\n\n`);\n process.exit(1);\n }\n var projectName = args.name || \"\";\n var resolvedProjectPath = path.resolve(process.cwd(), projectName);\n async function promptForName() {\n projectName = await getProjectName();\n resolvedProjectPath = path.resolve(process.cwd(), projectName);\n }\n if (projectName) {\n if (fs.existsSync(resolvedProjectPath)) {\n console.error(`Error: folder already exists: ${resolvedProjectPath}`);\n process.exit(1);\n }\n } else {\n await promptForName();\n while (fs.existsSync(resolvedProjectPath)) {\n console.info();\n console.info(ansis.yellow(\"!\"), `The folder ${ansis.underline(ansis.blueBright(projectName))} already exists, lets try another name`);\n console.info();\n console.info();\n await promptForName();\n }\n }\n console.info();\n var template = await getTemplateInfo(args.template);\n if (template.type === \"external-link\") {\n var url = template.externalUrl;\n console.info();\n console.info(ansis.green(`Opening ${url}...`));\n console.info();\n var openCmd = process.platform === \"darwin\" ? \"open\" : process.platform === \"win32\" ? \"start\" : \"xdg-open\";\n exec(`${openCmd} ${url}`);\n process.exit(0);\n }\n var { valid, problems } = validateNpmName(projectName);\n if (!valid) {\n console.error(`Could not create a project called ${ansis.red(`\"${projectName}\"`)} because of npm naming restrictions:`);\n problems.forEach(function(p) {\n return console.error(` ${ansis.red.bold(\"*\")} ${p}`);\n });\n process.exit(1);\n }\n console.info();\n var Spinner = await import(\"yocto-spinner\").then(function(x) {\n return x.default;\n });\n var spinner = Spinner({\n text: `Creating...`,\n spinner: {\n frames: [\n \"\\u280B\",\n \"\\u2819\",\n \"\\u2839\",\n \"\\u2838\",\n \"\\u283C\",\n \"\\u2834\",\n \"\\u2826\",\n \"\\u2827\",\n \"\\u2807\",\n \"\\u280F\"\n ],\n interval: 100\n }\n }).start();\n await FSExtra.mkdir(resolvedProjectPath);\n try {\n await cloneStarter(template, resolvedProjectPath);\n process.chdir(resolvedProjectPath);\n } catch (e) {\n console.error(`[vxrn] Failed to copy example into ${resolvedProjectPath}\n\n`, e);\n process.exit(1);\n }\n spinner.stop();\n console.info();\n console.info();\n console.info(ansis.green(`${projectName} created!`));\n console.info();\n console.info();\n var packageJson = await (async function() {\n var errorMessages = [];\n try {\n var dirname = typeof __dirname !== \"undefined\" ? __dirname : path.dirname(fileURLToPath(import.meta.url));\n var possiblePaths = [\n path.join(dirname, \"..\", \"package.json\"),\n path.join(dirname, \"..\", \"..\", \"package.json\"),\n path.join(dirname, \"..\", \"..\", \"..\", \"package.json\")\n ];\n var readFile = promisify(fs.readFile);\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = possiblePaths[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var p = _step.value;\n try {\n var data = JSON.parse(await readFile(p));\n return data;\n } catch (e) {\n if (e instanceof Error) errorMessages.push(e.message);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n throw new Error(\"package.json not found in any of the expected locations.\");\n } catch (e) {\n console.error(\"Failed to load package.json:\", errorMessages.join(\"\\n\"));\n throw e;\n }\n })();\n updatePackageJsonName(projectName, resolvedProjectPath);\n updatePackageJsonVersions(packageJson.version, resolvedProjectPath);\n updateAppJsonName(projectName, resolvedProjectPath);\n var packageManager = await (async function() {\n if (\"packageManager\" in template) {\n return template.packageManager;\n }\n var found = await detectPackageManager();\n var allFound = Object.keys(found);\n if (allFound.length === 1) {\n return allFound[0];\n }\n var response = await prompts({\n name: \"packageManager\",\n type: \"select\",\n message: `Package Manager:`,\n choices: allFound.filter(function(x) {\n return found[x];\n }).map(function(name) {\n return {\n title: name,\n value: name\n };\n })\n });\n return response.packageManager;\n })();\n console.info();\n if (\"preInstall\" in template) {\n await template.preInstall({\n packageManager,\n isFullClone: true,\n projectName,\n projectPath: resolvedProjectPath\n });\n }\n try {\n console.info();\n console.info(ansis.green(`Installing with ${packageManager}...`));\n console.info();\n await installDependencies(resolvedProjectPath, packageManager);\n } catch (e) {\n console.error(\"[vxrn] error installing with \" + packageManager + `\n${e}`);\n process.exit(1);\n }\n var envDefault = path.join(resolvedProjectPath, \".env.default\");\n var env = path.join(resolvedProjectPath, \".env\");\n if (existsSync(envDefault) && !existsSync(env)) {\n await FSExtra.move(envDefault, env);\n }\n if (\"extraSteps\" in template) {\n await template.extraSteps({\n packageManager,\n isFullClone: true,\n projectName,\n projectPath: resolvedProjectPath\n });\n }\n console.info();\n}\nfunction updatePackageJsonName(projectName, dir) {\n var packageJsonPath = path.join(dir, \"package.json\");\n if (existsSync(packageJsonPath)) {\n var content = readFileSync(packageJsonPath).toString();\n var contentWithUpdatedName = content.replace(/(\"name\": \")(.*)(\",)/, `$1${projectName}$3`);\n writeFileSync(packageJsonPath, contentWithUpdatedName);\n }\n}\nfunction updatePackageJsonVersions(version, dir) {\n var packageJsonPath = path.join(dir, \"package.json\");\n if (existsSync(packageJsonPath)) {\n var content = readFileSync(packageJsonPath).toString();\n var contentWithUpdatedVersions = content.replace(/\"workspace:\\^\"/gm, `\"^${version}\"`).replace(/\"workspace:~\"/gm, `\"~${version}\"`).replace(/\"workspace:\\*\"/gm, `\"^${version}\"`);\n writeFileSync(packageJsonPath, contentWithUpdatedVersions);\n }\n}\nfunction updateAppJsonName(projectName, dir) {\n var appJsonPath = path.join(dir, \"app.json\");\n if (existsSync(appJsonPath)) {\n var content = readFileSync(appJsonPath).toString();\n var projectSlug = projectName.toLowerCase().replace(/\\s/g, \"-\");\n var contentWithUpdatedName = content.replace(/(\"name\": \")(.*)(\",)/, `$1${projectName}$3`).replace(/(\"slug\": \")(.*)(\",)/, `$1${projectSlug}$3`);\n writeFileSync(appJsonPath, contentWithUpdatedName);\n }\n}\nexport {\n create\n};\n//# sourceMappingURL=create.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"create.native.js","names":[],"sources":["esm/create.native.js"],"sourcesContent":["import ansis from \"ansis\";\nimport FSExtra from \"fs-extra\";\nimport { execSync, exec } from \"child_process\";\nimport fs from \"fs\";\nimport path from \"path\";\nimport { promisify } from \"util\";\nimport { fileURLToPath } from \"url\";\nimport { cloneStarter } from \"./helpers/cloneStarter\";\nimport { getProjectName } from \"./helpers/getProjectName\";\nimport { getTemplateInfo } from \"./helpers/getTemplateInfo\";\nimport { installDependencies } from \"./helpers/installDependencies\";\nimport { validateNpmName } from \"./helpers/validateNpmPackage\";\nimport prompts from \"prompts\";\nimport { detectPackageManager } from \"@vxrn/utils\";\nvar { existsSync, readFileSync, writeFileSync } = FSExtra;\nasync function create(args) {\n var gitVersionString = Number.parseFloat(execSync(`git --version`).toString().replace(`git version `, \"\").trim());\n if (gitVersionString < 2.27) {\n console.error(`\n\n ! vxrn can't install: Git version must be >= 2.27\n\n`);\n process.exit(1);\n }\n var projectName = args.name || \"\";\n var resolvedProjectPath = path.resolve(process.cwd(), projectName);\n async function promptForName() {\n projectName = await getProjectName();\n resolvedProjectPath = path.resolve(process.cwd(), projectName);\n }\n if (projectName) {\n if (fs.existsSync(resolvedProjectPath)) {\n console.error(`Error: folder already exists: ${resolvedProjectPath}`);\n process.exit(1);\n }\n } else {\n await promptForName();\n while (fs.existsSync(resolvedProjectPath)) {\n console.info();\n console.info(ansis.yellow(\"!\"), `The folder ${ansis.underline(ansis.blueBright(projectName))} already exists, lets try another name`);\n console.info();\n console.info();\n await promptForName();\n }\n }\n console.info();\n var template = await getTemplateInfo(args.template);\n if (template.type === \"external-link\") {\n var url = template.externalUrl;\n console.info();\n console.info(ansis.green(`Opening ${url}...`));\n console.info();\n var openCmd = process.platform === \"darwin\" ? \"open\" : process.platform === \"win32\" ? \"start\" : \"xdg-open\";\n exec(`${openCmd} ${url}`);\n process.exit(0);\n }\n var { valid, problems } = validateNpmName(projectName);\n if (!valid) {\n console.error(`Could not create a project called ${ansis.red(`\"${projectName}\"`)} because of npm naming restrictions:`);\n problems.forEach(function(p) {\n return console.error(` ${ansis.red.bold(\"*\")} ${p}`);\n });\n process.exit(1);\n }\n console.info();\n var Spinner = await import(\"yocto-spinner\").then(function(x) {\n return x.default;\n });\n var spinner = Spinner({\n text: `Creating...`,\n spinner: {\n frames: [\n \"\\u280B\",\n \"\\u2819\",\n \"\\u2839\",\n \"\\u2838\",\n \"\\u283C\",\n \"\\u2834\",\n \"\\u2826\",\n \"\\u2827\",\n \"\\u2807\",\n \"\\u280F\"\n ],\n interval: 100\n }\n }).start();\n var packageJson = await (async function() {\n var errorMessages = [];\n try {\n var dirname = typeof __dirname !== \"undefined\" ? __dirname : path.dirname(fileURLToPath(import.meta.url));\n var possiblePaths = [\n path.join(dirname, \"..\", \"package.json\"),\n path.join(dirname, \"..\", \"..\", \"package.json\"),\n path.join(dirname, \"..\", \"..\", \"..\", \"package.json\")\n ];\n var readFile = promisify(fs.readFile);\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = possiblePaths[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var p = _step.value;\n try {\n var data = JSON.parse(await readFile(p));\n return data;\n } catch (e) {\n if (e instanceof Error) errorMessages.push(e.message);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n throw new Error(\"package.json not found in any of the expected locations.\");\n } catch (e) {\n console.error(\"Failed to load package.json:\", errorMessages.join(\"\\n\"));\n throw e;\n }\n })();\n await FSExtra.mkdir(resolvedProjectPath);\n try {\n await cloneStarter(template, resolvedProjectPath);\n process.chdir(resolvedProjectPath);\n } catch (e) {\n console.error(`[vxrn] Failed to copy example into ${resolvedProjectPath}\n\n`, e);\n process.exit(1);\n }\n spinner.stop();\n console.info();\n console.info();\n console.info(ansis.green(`${projectName} created!`));\n console.info();\n console.info();\n updatePackageJsonName(projectName, resolvedProjectPath);\n updatePackageJsonVersions(packageJson.version, resolvedProjectPath);\n updateAppJsonName(projectName, resolvedProjectPath);\n var packageManager = await (async function() {\n if (\"packageManager\" in template) {\n return template.packageManager;\n }\n var found = await detectPackageManager();\n var allFound = Object.keys(found).filter(function(x) {\n return found[x];\n });\n if (allFound.length === 1) {\n return allFound[0];\n }\n var response = await prompts({\n name: \"packageManager\",\n type: \"select\",\n message: `Package Manager:`,\n choices: allFound.map(function(name) {\n return {\n title: name,\n value: name\n };\n })\n });\n return response.packageManager;\n })();\n console.info();\n if (\"preInstall\" in template) {\n await template.preInstall({\n packageManager,\n isFullClone: true,\n projectName,\n projectPath: resolvedProjectPath\n });\n }\n try {\n console.info();\n console.info(ansis.green(`Installing with ${packageManager}...`));\n console.info();\n await installDependencies(resolvedProjectPath, packageManager);\n } catch (e) {\n console.error(\"[vxrn] error installing with \" + packageManager + `\n${e}`);\n process.exit(1);\n }\n var envDefault = path.join(resolvedProjectPath, \".env.default\");\n var env = path.join(resolvedProjectPath, \".env\");\n if (existsSync(envDefault) && !existsSync(env)) {\n await FSExtra.move(envDefault, env);\n }\n if (\"extraSteps\" in template) {\n await template.extraSteps({\n packageManager,\n isFullClone: true,\n projectName,\n projectPath: resolvedProjectPath\n });\n }\n console.info();\n}\nfunction updatePackageJsonName(projectName, dir) {\n var packageJsonPath = path.join(dir, \"package.json\");\n if (existsSync(packageJsonPath)) {\n var content = readFileSync(packageJsonPath).toString();\n var contentWithUpdatedName = content.replace(/(\"name\": \")(.*)(\",)/, `$1${projectName}$3`);\n writeFileSync(packageJsonPath, contentWithUpdatedName);\n }\n}\nfunction updatePackageJsonVersions(version, dir) {\n var packageJsonPath = path.join(dir, \"package.json\");\n if (existsSync(packageJsonPath)) {\n var content = readFileSync(packageJsonPath).toString();\n var contentWithUpdatedVersions = content.replace(/\"workspace:(?:\\^|~|\\*)\"/gm, `\"${version}\"`);\n writeFileSync(packageJsonPath, contentWithUpdatedVersions);\n }\n}\nfunction updateAppJsonName(projectName, dir) {\n var appJsonPath = path.join(dir, \"app.json\");\n if (existsSync(appJsonPath)) {\n var content = readFileSync(appJsonPath).toString();\n var projectSlug = projectName.toLowerCase().replace(/\\s/g, \"-\");\n var contentWithUpdatedName = content.replace(/(\"name\": \")(.*)(\",)/, `$1${projectName}$3`).replace(/(\"slug\": \")(.*)(\",)/, `$1${projectSlug}$3`);\n writeFileSync(appJsonPath, contentWithUpdatedName);\n }\n}\nexport {\n create\n};\n//# sourceMappingURL=create.js.map\n"],"mappings":"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"}
@@ -7,7 +7,8 @@ import { exec, execPromiseQuiet } from "@vxrn/utils";
7
7
  const home = homedir();
8
8
  const vxrnDir = join(home, ".vxrn");
9
9
  const cloneStarter = async (template, resolvedProjectPath) => {
10
- const dir = await setupVxrnDotDir(template, join(vxrnDir, "vxrn", template.repo.url.split("/").at(-1)));
10
+ const branch = template.repo.branch;
11
+ const dir = await setupVxrnDotDir(template, branch, join(vxrnDir, "vxrn", `${template.repo.url.split("/").at(-1)}-${branch}`));
11
12
  if (!await pathExists(dir)) {
12
13
  console.error(`Missing template for ${template.value} in ${dir}`);
13
14
  process.exit(1);
@@ -18,8 +19,7 @@ const cloneStarter = async (template, resolvedProjectPath) => {
18
19
  await execPromiseQuiet(`git init`, { cwd: resolvedProjectPath });
19
20
  }
20
21
  };
21
- async function setupVxrnDotDir(template, targetGitDir, isRetry = false) {
22
- const branch = template.repo.branch;
22
+ async function setupVxrnDotDir(template, branch, targetGitDir, isRetry = false) {
23
23
  await ensureDir(vxrnDir);
24
24
  const isInSubDir = template.repo.dir.length > 0;
25
25
  if (!await pathExists(targetGitDir)) {
@@ -75,7 +75,7 @@ ${err.stack}` : "trying from fresh."}`);
75
75
  process.exit(1);
76
76
  }
77
77
  await rimraf(targetGitDir);
78
- return await setupVxrnDotDir(template, targetGitDir, true);
78
+ return await setupVxrnDotDir(template, branch, targetGitDir, true);
79
79
  }
80
80
  }
81
81
  function isInGitRepo() {
@@ -1 +1 @@
1
- {"version":3,"file":"cloneStarter.js","names":[],"sources":["esm/helpers/cloneStarter.js"],"sourcesContent":["import { copy, ensureDir, pathExists } from \"fs-extra\";\nimport { homedir } from \"node:os\";\nimport { join, sep } from \"node:path\";\nimport { rimraf } from \"rimraf\";\nimport { exec, execPromiseQuiet } from \"@vxrn/utils\";\nconst home = homedir();\nconst vxrnDir = join(home, \".vxrn\");\nconst cloneStarter = async (template, resolvedProjectPath) => {\n const dir = await setupVxrnDotDir(\n template,\n join(vxrnDir, \"vxrn\", template.repo.url.split(\"/\").at(-1))\n );\n if (!await pathExists(dir)) {\n console.error(`Missing template for ${template.value} in ${dir}`);\n process.exit(1);\n }\n await copy(dir, resolvedProjectPath);\n await rimraf(join(resolvedProjectPath, \".git\"));\n if (!isInGitRepo()) {\n await execPromiseQuiet(`git init`, {\n cwd: resolvedProjectPath\n });\n }\n};\nasync function setupVxrnDotDir(template, targetGitDir, isRetry = false) {\n const branch = template.repo.branch;\n await ensureDir(vxrnDir);\n const isInSubDir = template.repo.dir.length > 0;\n if (!await pathExists(targetGitDir)) {\n const sourceGitRepo = template.repo.url;\n const sourceGitRepoSshFallback = template.repo.sshFallback;\n const cmd = `git clone --branch ${branch} ${isInSubDir ? \"--depth 1 --sparse --filter=blob:none \" : \"\"}${sourceGitRepo} \"${targetGitDir}\"`;\n try {\n await execPromiseQuiet(cmd);\n } catch (error) {\n if (cmd.includes(\"https://\")) {\n console.info(`https failed - trying with ssh now...`);\n const sshCmd = cmd.replace(sourceGitRepo, sourceGitRepoSshFallback);\n await execPromiseQuiet(sshCmd);\n } else {\n throw error;\n }\n }\n } else {\n if (!await pathExists(join(targetGitDir, \".git\"))) {\n console.error(\n `Corrupt vxrn directory, please delete ${targetGitDir} folder and re-run`\n );\n process.exit(1);\n }\n }\n if (isInSubDir) {\n try {\n const cmd = `git sparse-checkout set ${template.repo.dir.join(sep) ?? \".\"}`;\n await execPromiseQuiet(cmd, { cwd: targetGitDir });\n } catch (err) {\n if (`${err}`.includes(`code 128`)) {\n console.warn(`\\u26A0\\uFE0F Note: you need to be sure you can git clone from Github, your SSH key isn't valid.\n \n - See: https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account\n\n`);\n }\n throw err;\n }\n }\n try {\n const cmd2 = `git pull --rebase --allow-unrelated-histories --depth 1 origin ${branch}`;\n await execPromiseQuiet(cmd2, {\n cwd: targetGitDir\n });\n console.info();\n const dir = join(targetGitDir, ...template.repo.dir);\n if (!await pathExists(dir)) {\n throw new Error(`Re-clone...`);\n }\n return dir;\n } catch (err) {\n if (isRetry) {\n console.info(\n `Error updating: ${err.message} ${isRetry ? `failing.\n${err.stack}` : \"trying from fresh.\"}`\n );\n console.info(\n `Please file an issue: https://github.com/onejs/one/issues/new?assignees=&labels=&template=bug_report.md&title=`\n );\n process.exit(1);\n }\n await rimraf(targetGitDir);\n return await setupVxrnDotDir(template, targetGitDir, true);\n }\n}\nfunction isInGitRepo() {\n try {\n exec(\"git rev-parse --is-inside-work-tree\", { stdio: \"ignore\" });\n return true;\n } catch (error) {\n return false;\n }\n}\nexport {\n cloneStarter\n};\n//# sourceMappingURL=cloneStarter.js.map\n"],"mappings":";;;;;;;AAKA,MAAM,OAAO,QAAQ;AACrB,MAAM,UAAU,KAAK,MAAM,OAAO;AAClC,MAAM,eAAe,OAAO,UAAU,wBAAwB;CAC5D,MAAM,MAAM,MAAM,gBAChB,UACA,KAAK,SAAS,QAAQ,SAAS,KAAK,IAAI,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAC3D;CACA,IAAI,CAAC,MAAM,WAAW,GAAG,GAAG;EAC1B,QAAQ,MAAM,wBAAwB,SAAS,MAAM,MAAM,KAAK;EAChE,QAAQ,KAAK,CAAC;CAChB;CACA,MAAM,KAAK,KAAK,mBAAmB;CACnC,MAAM,OAAO,KAAK,qBAAqB,MAAM,CAAC;CAC9C,IAAI,CAAC,YAAY,GAAG;EAClB,MAAM,iBAAiB,YAAY,EACjC,KAAK,oBACP,CAAC;CACH;AACF;AACA,eAAe,gBAAgB,UAAU,cAAc,UAAU,OAAO;CACtE,MAAM,SAAS,SAAS,KAAK;CAC7B,MAAM,UAAU,OAAO;CACvB,MAAM,aAAa,SAAS,KAAK,IAAI,SAAS;CAC9C,IAAI,CAAC,MAAM,WAAW,YAAY,GAAG;EACnC,MAAM,gBAAgB,SAAS,KAAK;EACpC,MAAM,2BAA2B,SAAS,KAAK;EAC/C,MAAM,MAAM,sBAAsB,OAAO,GAAG,aAAa,2CAA2C,KAAK,cAAc,IAAI,aAAa;EACxI,IAAI;GACF,MAAM,iBAAiB,GAAG;EAC5B,SAAS,OAAO;GACd,IAAI,IAAI,SAAS,UAAU,GAAG;IAC5B,QAAQ,KAAK,uCAAuC;IACpD,MAAM,SAAS,IAAI,QAAQ,eAAe,wBAAwB;IAClE,MAAM,iBAAiB,MAAM;GAC/B,OAAO;IACL,MAAM;GACR;EACF;CACF,OAAO;EACL,IAAI,CAAC,MAAM,WAAW,KAAK,cAAc,MAAM,CAAC,GAAG;GACjD,QAAQ,MACN,yCAAyC,aAAa,mBACxD;GACA,QAAQ,KAAK,CAAC;EAChB;CACF;CACA,IAAI,YAAY;EACd,IAAI;GACF,MAAM,MAAM,2BAA2B,SAAS,KAAK,IAAI,KAAK,GAAG,KAAK;GACtE,MAAM,iBAAiB,KAAK,EAAE,KAAK,aAAa,CAAC;EACnD,SAAS,KAAK;GACZ,IAAI,GAAG,MAAM,SAAS,UAAU,GAAG;IACjC,QAAQ,KAAK;;;;CAIpB;GACK;GACA,MAAM;EACR;CACF;CACA,IAAI;EACF,MAAM,OAAO,kEAAkE;EAC/E,MAAM,iBAAiB,MAAM,EAC3B,KAAK,aACP,CAAC;EACD,QAAQ,KAAK;EACb,MAAM,MAAM,KAAK,cAAc,GAAG,SAAS,KAAK,GAAG;EACnD,IAAI,CAAC,MAAM,WAAW,GAAG,GAAG;GAC1B,MAAM,IAAI,MAAM,aAAa;EAC/B;EACA,OAAO;CACT,SAAS,KAAK;EACZ,IAAI,SAAS;GACX,QAAQ,KACN,mBAAmB,IAAI,QAAQ,GAAG,UAAU;EAClD,IAAI,UAAU,sBACV;GACA,QAAQ,KACN,gHACF;GACA,QAAQ,KAAK,CAAC;EAChB;EACA,MAAM,OAAO,YAAY;EACzB,OAAO,MAAM,gBAAgB,UAAU,cAAc,IAAI;CAC3D;AACF;AACA,SAAS,cAAc;CACrB,IAAI;EACF,KAAK,uCAAuC,EAAE,OAAO,SAAS,CAAC;EAC/D,OAAO;CACT,SAAS,OAAO;EACd,OAAO;CACT;AACF"}
1
+ {"version":3,"file":"cloneStarter.js","names":[],"sources":["esm/helpers/cloneStarter.js"],"sourcesContent":["import { copy, ensureDir, pathExists } from \"fs-extra\";\nimport { homedir } from \"node:os\";\nimport { join, sep } from \"node:path\";\nimport { rimraf } from \"rimraf\";\nimport { exec, execPromiseQuiet } from \"@vxrn/utils\";\nconst home = homedir();\nconst vxrnDir = join(home, \".vxrn\");\nconst cloneStarter = async (template, resolvedProjectPath) => {\n const branch = template.repo.branch;\n const dir = await setupVxrnDotDir(\n template,\n branch,\n join(vxrnDir, \"vxrn\", `${template.repo.url.split(\"/\").at(-1)}-${branch}`)\n );\n if (!await pathExists(dir)) {\n console.error(`Missing template for ${template.value} in ${dir}`);\n process.exit(1);\n }\n await copy(dir, resolvedProjectPath);\n await rimraf(join(resolvedProjectPath, \".git\"));\n if (!isInGitRepo()) {\n await execPromiseQuiet(`git init`, {\n cwd: resolvedProjectPath\n });\n }\n};\nasync function setupVxrnDotDir(template, branch, targetGitDir, isRetry = false) {\n await ensureDir(vxrnDir);\n const isInSubDir = template.repo.dir.length > 0;\n if (!await pathExists(targetGitDir)) {\n const sourceGitRepo = template.repo.url;\n const sourceGitRepoSshFallback = template.repo.sshFallback;\n const cmd = `git clone --branch ${branch} ${isInSubDir ? \"--depth 1 --sparse --filter=blob:none \" : \"\"}${sourceGitRepo} \"${targetGitDir}\"`;\n try {\n await execPromiseQuiet(cmd);\n } catch (error) {\n if (cmd.includes(\"https://\")) {\n console.info(`https failed - trying with ssh now...`);\n const sshCmd = cmd.replace(sourceGitRepo, sourceGitRepoSshFallback);\n await execPromiseQuiet(sshCmd);\n } else {\n throw error;\n }\n }\n } else {\n if (!await pathExists(join(targetGitDir, \".git\"))) {\n console.error(\n `Corrupt vxrn directory, please delete ${targetGitDir} folder and re-run`\n );\n process.exit(1);\n }\n }\n if (isInSubDir) {\n try {\n const cmd = `git sparse-checkout set ${template.repo.dir.join(sep) ?? \".\"}`;\n await execPromiseQuiet(cmd, { cwd: targetGitDir });\n } catch (err) {\n if (`${err}`.includes(`code 128`)) {\n console.warn(`\\u26A0\\uFE0F Note: you need to be sure you can git clone from Github, your SSH key isn't valid.\n \n - See: https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account\n\n`);\n }\n throw err;\n }\n }\n try {\n const cmd2 = `git pull --rebase --allow-unrelated-histories --depth 1 origin ${branch}`;\n await execPromiseQuiet(cmd2, {\n cwd: targetGitDir\n });\n console.info();\n const dir = join(targetGitDir, ...template.repo.dir);\n if (!await pathExists(dir)) {\n throw new Error(`Re-clone...`);\n }\n return dir;\n } catch (err) {\n if (isRetry) {\n console.info(\n `Error updating: ${err.message} ${isRetry ? `failing.\n${err.stack}` : \"trying from fresh.\"}`\n );\n console.info(\n `Please file an issue: https://github.com/onejs/one/issues/new?assignees=&labels=&template=bug_report.md&title=`\n );\n process.exit(1);\n }\n await rimraf(targetGitDir);\n return await setupVxrnDotDir(template, branch, targetGitDir, true);\n }\n}\nfunction isInGitRepo() {\n try {\n exec(\"git rev-parse --is-inside-work-tree\", { stdio: \"ignore\" });\n return true;\n } catch (error) {\n return false;\n }\n}\nexport {\n cloneStarter\n};\n//# sourceMappingURL=cloneStarter.js.map\n"],"mappings":";;;;;;;AAKA,MAAM,OAAO,QAAQ;AACrB,MAAM,UAAU,KAAK,MAAM,OAAO;AAClC,MAAM,eAAe,OAAO,UAAU,wBAAwB;CAC5D,MAAM,SAAS,SAAS,KAAK;CAC7B,MAAM,MAAM,MAAM,gBAChB,UACA,QACA,KAAK,SAAS,QAAQ,GAAG,SAAS,KAAK,IAAI,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,QAAQ,CAC1E;CACA,IAAI,CAAC,MAAM,WAAW,GAAG,GAAG;EAC1B,QAAQ,MAAM,wBAAwB,SAAS,MAAM,MAAM,KAAK;EAChE,QAAQ,KAAK,CAAC;CAChB;CACA,MAAM,KAAK,KAAK,mBAAmB;CACnC,MAAM,OAAO,KAAK,qBAAqB,MAAM,CAAC;CAC9C,IAAI,CAAC,YAAY,GAAG;EAClB,MAAM,iBAAiB,YAAY,EACjC,KAAK,oBACP,CAAC;CACH;AACF;AACA,eAAe,gBAAgB,UAAU,QAAQ,cAAc,UAAU,OAAO;CAC9E,MAAM,UAAU,OAAO;CACvB,MAAM,aAAa,SAAS,KAAK,IAAI,SAAS;CAC9C,IAAI,CAAC,MAAM,WAAW,YAAY,GAAG;EACnC,MAAM,gBAAgB,SAAS,KAAK;EACpC,MAAM,2BAA2B,SAAS,KAAK;EAC/C,MAAM,MAAM,sBAAsB,OAAO,GAAG,aAAa,2CAA2C,KAAK,cAAc,IAAI,aAAa;EACxI,IAAI;GACF,MAAM,iBAAiB,GAAG;EAC5B,SAAS,OAAO;GACd,IAAI,IAAI,SAAS,UAAU,GAAG;IAC5B,QAAQ,KAAK,uCAAuC;IACpD,MAAM,SAAS,IAAI,QAAQ,eAAe,wBAAwB;IAClE,MAAM,iBAAiB,MAAM;GAC/B,OAAO;IACL,MAAM;GACR;EACF;CACF,OAAO;EACL,IAAI,CAAC,MAAM,WAAW,KAAK,cAAc,MAAM,CAAC,GAAG;GACjD,QAAQ,MACN,yCAAyC,aAAa,mBACxD;GACA,QAAQ,KAAK,CAAC;EAChB;CACF;CACA,IAAI,YAAY;EACd,IAAI;GACF,MAAM,MAAM,2BAA2B,SAAS,KAAK,IAAI,KAAK,GAAG,KAAK;GACtE,MAAM,iBAAiB,KAAK,EAAE,KAAK,aAAa,CAAC;EACnD,SAAS,KAAK;GACZ,IAAI,GAAG,MAAM,SAAS,UAAU,GAAG;IACjC,QAAQ,KAAK;;;;CAIpB;GACK;GACA,MAAM;EACR;CACF;CACA,IAAI;EACF,MAAM,OAAO,kEAAkE;EAC/E,MAAM,iBAAiB,MAAM,EAC3B,KAAK,aACP,CAAC;EACD,QAAQ,KAAK;EACb,MAAM,MAAM,KAAK,cAAc,GAAG,SAAS,KAAK,GAAG;EACnD,IAAI,CAAC,MAAM,WAAW,GAAG,GAAG;GAC1B,MAAM,IAAI,MAAM,aAAa;EAC/B;EACA,OAAO;CACT,SAAS,KAAK;EACZ,IAAI,SAAS;GACX,QAAQ,KACN,mBAAmB,IAAI,QAAQ,GAAG,UAAU;EAClD,IAAI,UAAU,sBACV;GACA,QAAQ,KACN,gHACF;GACA,QAAQ,KAAK,CAAC;EAChB;EACA,MAAM,OAAO,YAAY;EACzB,OAAO,MAAM,gBAAgB,UAAU,QAAQ,cAAc,IAAI;CACnE;AACF;AACA,SAAS,cAAc;CACrB,IAAI;EACF,KAAK,uCAAuC,EAAE,OAAO,SAAS,CAAC;EAC/D,OAAO;CACT,SAAS,OAAO;EACd,OAAO;CACT;AACF"}