one 2.0.0-beta.58.1 → 2.0.0-beta.59.1

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.
@@ -27,9 +27,17 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
27
27
  var prebuild_exports = {};
28
28
  __export(prebuild_exports, { run: () => run });
29
29
  module.exports = __toCommonJS(prebuild_exports);
30
+ var import_node_fs = require("node:fs");
31
+ var import_node_path = require("node:path");
30
32
  var import_appManifest = require("../native/appManifest.cjs");
31
33
  var import_loadConfig = require("../vite/loadConfig.cjs");
32
34
  async function run(args) {
35
+ const root = process.cwd();
36
+ const packageJson = JSON.parse((0, import_node_fs.readFileSync)((0, import_node_path.join)(root, "package.json"), "utf8"));
37
+ const hasExpo = Object.hasOwn(packageJson.dependencies ?? {}, "expo") || Object.hasOwn(packageJson.devDependencies ?? {}, "expo");
38
+ if (hasExpo) {
39
+ throw new Error("[one] one prebuild only generates Expo-free projects. This app declares expo; run Expo prebuild and list \"vxrn/expo-plugin\" in the Expo config.");
40
+ }
33
41
  const { oneOptions } = await (0, import_loadConfig.loadUserOneOptions)("build", true);
34
42
  const native = oneOptions?.native;
35
43
  const app = typeof native === "object" ? native.app : void 0;
@@ -29,9 +29,18 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
29
29
  var prebuild_exports = {};
30
30
  __export(prebuild_exports, { run: () => run });
31
31
  module.exports = __toCommonJS(prebuild_exports);
32
+ var import_fs = require("fs");
33
+ var import_path = require("path");
32
34
  var import_appManifest = require("../native/appManifest.native.js");
33
35
  var import_loadConfig = require("../vite/loadConfig.native.js");
34
36
  async function run(args) {
37
+ var _packageJson_dependencies, _packageJson_devDependencies;
38
+ var root = process.cwd();
39
+ var packageJson = JSON.parse((0, import_fs.readFileSync)((0, import_path.join)(root, "package.json"), "utf8"));
40
+ var hasExpo = Object.hasOwn((_packageJson_dependencies = packageJson.dependencies) !== null && _packageJson_dependencies !== void 0 ? _packageJson_dependencies : {}, "expo") || Object.hasOwn((_packageJson_devDependencies = packageJson.devDependencies) !== null && _packageJson_devDependencies !== void 0 ? _packageJson_devDependencies : {}, "expo");
41
+ if (hasExpo) {
42
+ throw new Error("[one] one prebuild only generates Expo-free projects. This app declares expo; run Expo prebuild and list \"vxrn/expo-plugin\" in the Expo config.");
43
+ }
35
44
  var { oneOptions } = await (0, import_loadConfig.loadUserOneOptions)("build", true);
36
45
  var native = oneOptions === null || oneOptions === void 0 ? void 0 : oneOptions.native;
37
46
  var app = typeof native === "object" ? native.app : void 0;
@@ -29,9 +29,18 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
29
29
  var prebuild_exports = {};
30
30
  __export(prebuild_exports, { run: () => run });
31
31
  module.exports = __toCommonJS(prebuild_exports);
32
+ var import_fs = require("fs");
33
+ var import_path = require("path");
32
34
  var import_appManifest = require("../native/appManifest.native.js");
33
35
  var import_loadConfig = require("../vite/loadConfig.native.js");
34
36
  async function run(args) {
37
+ var _packageJson_dependencies, _packageJson_devDependencies;
38
+ var root = process.cwd();
39
+ var packageJson = JSON.parse((0, import_fs.readFileSync)((0, import_path.join)(root, "package.json"), "utf8"));
40
+ var hasExpo = Object.hasOwn((_packageJson_dependencies = packageJson.dependencies) !== null && _packageJson_dependencies !== void 0 ? _packageJson_dependencies : {}, "expo") || Object.hasOwn((_packageJson_devDependencies = packageJson.devDependencies) !== null && _packageJson_devDependencies !== void 0 ? _packageJson_devDependencies : {}, "expo");
41
+ if (hasExpo) {
42
+ throw new Error("[one] one prebuild only generates Expo-free projects. This app declares expo; run Expo prebuild and list \"vxrn/expo-plugin\" in the Expo config.");
43
+ }
35
44
  var { oneOptions } = await (0, import_loadConfig.loadUserOneOptions)("build", true);
36
45
  var native = oneOptions === null || oneOptions === void 0 ? void 0 : oneOptions.native;
37
46
  var app = typeof native === "object" ? native.app : void 0;
@@ -1 +1 @@
1
- {"version":3,"file":"prebuild.native.js","names":[],"sources":["cjs/cli/prebuild.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 prebuild_exports = {};\n__export(prebuild_exports, {\n run: () => run\n});\nmodule.exports = __toCommonJS(prebuild_exports);\nvar import_appManifest = require(\"../native/appManifest\");\nvar import_loadConfig = require(\"../vite/loadConfig\");\nasync function run(args) {\n var { oneOptions } = await (0, import_loadConfig.loadUserOneOptions)(\"build\", true);\n var native = oneOptions === null || oneOptions === void 0 ? void 0 : oneOptions.native;\n var app = typeof native === \"object\" ? native.app : void 0;\n if (!app) {\n throw new Error(\"[one] native.app is required: configure one({ native: { app } }) with name, ios.bundleId, and android.applicationId\");\n }\n (0, import_appManifest.validateNativeApp)(app);\n var { prebuild } = await import(\"vxrn\");\n await prebuild({\n root: process.cwd(),\n ...args,\n app\n });\n}\n//# sourceMappingURL=prebuild.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,mBAAmB,CAAC;AACxB,SAAS,kBAAkB,EACzB,WAAW,IACb,CAAC;AACD,OAAO,UAAU,aAAa,gBAAgB;AAC9C,IAAI,qBAAqB,QAAQ,iCAAuB;AACxD,IAAI,oBAAoB,QAAQ,8BAAoB;AACpD,eAAe,IAAI,MAAM;CACvB,IAAI,EAAE,eAAe,OAAO,GAAG,kBAAkB,mBAAkB,CAAE,SAAS,IAAI;CAClF,IAAI,SAAS,eAAe,QAAQ,eAAe,KAAK,IAAI,KAAK,IAAI,WAAW;CAChF,IAAI,MAAM,OAAO,WAAW,WAAW,OAAO,MAAM,KAAK;CACzD,IAAI,CAAC,KAAK;EACR,MAAM,IAAI,MAAM,qHAAqH;CACvI;CACA,CAAC,GAAG,mBAAmB,kBAAiB,CAAE,GAAG;CAC7C,IAAI,EAAE,aAAa,MAAM,OAAO;CAChC,MAAM,SAAS;EACb,MAAM,QAAQ,IAAI;EAClB,GAAG;EACH;CACF,CAAC;AACH"}
1
+ {"version":3,"file":"prebuild.native.js","names":[],"sources":["cjs/cli/prebuild.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 prebuild_exports = {};\n__export(prebuild_exports, {\n run: () => run\n});\nmodule.exports = __toCommonJS(prebuild_exports);\nvar import_fs = require(\"fs\");\nvar import_path = require(\"path\");\nvar import_appManifest = require(\"../native/appManifest\");\nvar import_loadConfig = require(\"../vite/loadConfig\");\nasync function run(args) {\n var _packageJson_dependencies, _packageJson_devDependencies;\n var root = process.cwd();\n var packageJson = JSON.parse((0, import_fs.readFileSync)((0, import_path.join)(root, \"package.json\"), \"utf8\"));\n var hasExpo = Object.hasOwn((_packageJson_dependencies = packageJson.dependencies) !== null && _packageJson_dependencies !== void 0 ? _packageJson_dependencies : {}, \"expo\") || Object.hasOwn((_packageJson_devDependencies = packageJson.devDependencies) !== null && _packageJson_devDependencies !== void 0 ? _packageJson_devDependencies : {}, \"expo\");\n if (hasExpo) {\n throw new Error('[one] one prebuild only generates Expo-free projects. This app declares expo; run Expo prebuild and list \"vxrn/expo-plugin\" in the Expo config.');\n }\n var { oneOptions } = await (0, import_loadConfig.loadUserOneOptions)(\"build\", true);\n var native = oneOptions === null || oneOptions === void 0 ? void 0 : oneOptions.native;\n var app = typeof native === \"object\" ? native.app : void 0;\n if (!app) {\n throw new Error(\"[one] native.app is required: configure one({ native: { app } }) with name, ios.bundleId, and android.applicationId\");\n }\n (0, import_appManifest.validateNativeApp)(app);\n var { prebuild } = await import(\"vxrn\");\n await prebuild({\n root: process.cwd(),\n ...args,\n app\n });\n}\n//# sourceMappingURL=prebuild.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,mBAAmB,CAAC;AACxB,SAAS,kBAAkB,EACzB,WAAW,IACb,CAAC;AACD,OAAO,UAAU,aAAa,gBAAgB;AAC9C,IAAI,YAAY,QAAQ,IAAI;AAC5B,IAAI,cAAc,QAAQ,MAAM;AAChC,IAAI,qBAAqB,QAAQ,iCAAuB;AACxD,IAAI,oBAAoB,QAAQ,8BAAoB;AACpD,eAAe,IAAI,MAAM;CACvB,IAAI,2BAA2B;CAC/B,IAAI,OAAO,QAAQ,IAAI;CACvB,IAAI,cAAc,KAAK,OAAO,GAAG,UAAU,aAAY,EAAG,GAAG,YAAY,KAAI,CAAE,MAAM,cAAc,GAAG,MAAM,CAAC;CAC7G,IAAI,UAAU,OAAO,QAAQ,4BAA4B,YAAY,kBAAkB,QAAQ,8BAA8B,KAAK,IAAI,4BAA4B,CAAC,GAAG,MAAM,KAAK,OAAO,QAAQ,+BAA+B,YAAY,qBAAqB,QAAQ,iCAAiC,KAAK,IAAI,+BAA+B,CAAC,GAAG,MAAM;CAC3V,IAAI,SAAS;EACX,MAAM,IAAI,MAAM,mJAAiJ;CACnK;CACA,IAAI,EAAE,eAAe,OAAO,GAAG,kBAAkB,mBAAkB,CAAE,SAAS,IAAI;CAClF,IAAI,SAAS,eAAe,QAAQ,eAAe,KAAK,IAAI,KAAK,IAAI,WAAW;CAChF,IAAI,MAAM,OAAO,WAAW,WAAW,OAAO,MAAM,KAAK;CACzD,IAAI,CAAC,KAAK;EACR,MAAM,IAAI,MAAM,qHAAqH;CACvI;CACA,CAAC,GAAG,mBAAmB,kBAAiB,CAAE,GAAG;CAC7C,IAAI,EAAE,aAAa,MAAM,OAAO;CAChC,MAAM,SAAS;EACb,MAAM,QAAQ,IAAI;EAClB,GAAG;EACH;CACF,CAAC;AACH"}
@@ -1,7 +1,15 @@
1
+ import { readFileSync } from "node:fs";
2
+ import { join } from "node:path";
1
3
  import { validateNativeApp } from "../native/appManifest.mjs";
2
4
  import { loadUserOneOptions } from "../vite/loadConfig.mjs";
3
5
 
4
6
  async function run(args) {
7
+ const root = process.cwd();
8
+ const packageJson = JSON.parse(readFileSync(join(root, "package.json"), "utf8"));
9
+ const hasExpo = Object.hasOwn(packageJson.dependencies ?? {}, "expo") || Object.hasOwn(packageJson.devDependencies ?? {}, "expo");
10
+ if (hasExpo) {
11
+ throw new Error("[one] one prebuild only generates Expo-free projects. This app declares expo; run Expo prebuild and list \"vxrn/expo-plugin\" in the Expo config.");
12
+ }
5
13
  const { oneOptions } = await loadUserOneOptions("build", true);
6
14
  const native = oneOptions?.native;
7
15
  const app = typeof native === "object" ? native.app : void 0;
@@ -1 +1 @@
1
- {"version":3,"file":"prebuild.js","names":[],"sources":["esm/cli/prebuild.js"],"sourcesContent":["import { validateNativeApp } from \"../native/appManifest\";\nimport { loadUserOneOptions } from \"../vite/loadConfig\";\nasync function run(args) {\n const { oneOptions } = await loadUserOneOptions(\"build\", true);\n const native = oneOptions?.native;\n const app = typeof native === \"object\" ? native.app : void 0;\n if (!app) {\n throw new Error(\n \"[one] native.app is required: configure one({ native: { app } }) with name, ios.bundleId, and android.applicationId\"\n );\n }\n validateNativeApp(app);\n const { prebuild } = await import(\"vxrn\");\n await prebuild({\n root: process.cwd(),\n ...args,\n app\n });\n}\nexport {\n run\n};\n//# sourceMappingURL=prebuild.js.map\n"],"mappings":";;;;AAEA,eAAe,IAAI,MAAM;CACvB,MAAM,EAAE,eAAe,MAAM,mBAAmB,SAAS,IAAI;CAC7D,MAAM,SAAS,YAAY;CAC3B,MAAM,MAAM,OAAO,WAAW,WAAW,OAAO,MAAM,KAAK;CAC3D,IAAI,CAAC,KAAK;EACR,MAAM,IAAI,MACR,qHACF;CACF;CACA,kBAAkB,GAAG;CACrB,MAAM,EAAE,aAAa,MAAM,OAAO;CAClC,MAAM,SAAS;EACb,MAAM,QAAQ,IAAI;EAClB,GAAG;EACH;CACF,CAAC;AACH"}
1
+ {"version":3,"file":"prebuild.js","names":[],"sources":["esm/cli/prebuild.js"],"sourcesContent":["import { readFileSync } from \"node:fs\";\nimport { join } from \"node:path\";\nimport { validateNativeApp } from \"../native/appManifest\";\nimport { loadUserOneOptions } from \"../vite/loadConfig\";\nasync function run(args) {\n const root = process.cwd();\n const packageJson = JSON.parse(readFileSync(join(root, \"package.json\"), \"utf8\"));\n const hasExpo = Object.hasOwn(packageJson.dependencies ?? {}, \"expo\") || Object.hasOwn(packageJson.devDependencies ?? {}, \"expo\");\n if (hasExpo) {\n throw new Error(\n '[one] one prebuild only generates Expo-free projects. This app declares expo; run Expo prebuild and list \"vxrn/expo-plugin\" in the Expo config.'\n );\n }\n const { oneOptions } = await loadUserOneOptions(\"build\", true);\n const native = oneOptions?.native;\n const app = typeof native === \"object\" ? native.app : void 0;\n if (!app) {\n throw new Error(\n \"[one] native.app is required: configure one({ native: { app } }) with name, ios.bundleId, and android.applicationId\"\n );\n }\n validateNativeApp(app);\n const { prebuild } = await import(\"vxrn\");\n await prebuild({\n root: process.cwd(),\n ...args,\n app\n });\n}\nexport {\n run\n};\n//# sourceMappingURL=prebuild.js.map\n"],"mappings":";;;;;;AAIA,eAAe,IAAI,MAAM;CACvB,MAAM,OAAO,QAAQ,IAAI;CACzB,MAAM,cAAc,KAAK,MAAM,aAAa,KAAK,MAAM,cAAc,GAAG,MAAM,CAAC;CAC/E,MAAM,UAAU,OAAO,OAAO,YAAY,gBAAgB,CAAC,GAAG,MAAM,KAAK,OAAO,OAAO,YAAY,mBAAmB,CAAC,GAAG,MAAM;CAChI,IAAI,SAAS;EACX,MAAM,IAAI,MACR,mJACF;CACF;CACA,MAAM,EAAE,eAAe,MAAM,mBAAmB,SAAS,IAAI;CAC7D,MAAM,SAAS,YAAY;CAC3B,MAAM,MAAM,OAAO,WAAW,WAAW,OAAO,MAAM,KAAK;CAC3D,IAAI,CAAC,KAAK;EACR,MAAM,IAAI,MACR,qHACF;CACF;CACA,kBAAkB,GAAG;CACrB,MAAM,EAAE,aAAa,MAAM,OAAO;CAClC,MAAM,SAAS;EACb,MAAM,QAAQ,IAAI;EAClB,GAAG;EACH;CACF,CAAC;AACH"}
@@ -1,7 +1,16 @@
1
+ import { readFileSync } from "fs";
2
+ import { join } from "path";
1
3
  import { validateNativeApp } from "../native/appManifest.native.js";
2
4
  import { loadUserOneOptions } from "../vite/loadConfig.native.js";
3
5
 
4
6
  async function run(args) {
7
+ var _packageJson_dependencies, _packageJson_devDependencies;
8
+ var root = process.cwd();
9
+ var packageJson = JSON.parse(readFileSync(join(root, "package.json"), "utf8"));
10
+ var hasExpo = Object.hasOwn((_packageJson_dependencies = packageJson.dependencies) !== null && _packageJson_dependencies !== void 0 ? _packageJson_dependencies : {}, "expo") || Object.hasOwn((_packageJson_devDependencies = packageJson.devDependencies) !== null && _packageJson_devDependencies !== void 0 ? _packageJson_devDependencies : {}, "expo");
11
+ if (hasExpo) {
12
+ throw new Error("[one] one prebuild only generates Expo-free projects. This app declares expo; run Expo prebuild and list \"vxrn/expo-plugin\" in the Expo config.");
13
+ }
5
14
  var { oneOptions } = await loadUserOneOptions("build", true);
6
15
  var native = oneOptions === null || oneOptions === void 0 ? void 0 : oneOptions.native;
7
16
  var app = typeof native === "object" ? native.app : void 0;
@@ -1 +1 @@
1
- {"version":3,"file":"prebuild.native.js","names":[],"sources":["esm/cli/prebuild.native.js"],"sourcesContent":["import { validateNativeApp } from \"../native/appManifest\";\nimport { loadUserOneOptions } from \"../vite/loadConfig\";\nasync function run(args) {\n var { oneOptions } = await loadUserOneOptions(\"build\", true);\n var native = oneOptions === null || oneOptions === void 0 ? void 0 : oneOptions.native;\n var app = typeof native === \"object\" ? native.app : void 0;\n if (!app) {\n throw new Error(\"[one] native.app is required: configure one({ native: { app } }) with name, ios.bundleId, and android.applicationId\");\n }\n validateNativeApp(app);\n var { prebuild } = await import(\"vxrn\");\n await prebuild({\n root: process.cwd(),\n ...args,\n app\n });\n}\nexport {\n run\n};\n//# sourceMappingURL=prebuild.js.map\n"],"mappings":";;;;AAEA,eAAe,IAAI,MAAM;CACvB,IAAI,EAAE,eAAe,MAAM,mBAAmB,SAAS,IAAI;CAC3D,IAAI,SAAS,eAAe,QAAQ,eAAe,KAAK,IAAI,KAAK,IAAI,WAAW;CAChF,IAAI,MAAM,OAAO,WAAW,WAAW,OAAO,MAAM,KAAK;CACzD,IAAI,CAAC,KAAK;EACR,MAAM,IAAI,MAAM,qHAAqH;CACvI;CACA,kBAAkB,GAAG;CACrB,IAAI,EAAE,aAAa,MAAM,OAAO;CAChC,MAAM,SAAS;EACb,MAAM,QAAQ,IAAI;EAClB,GAAG;EACH;CACF,CAAC;AACH"}
1
+ {"version":3,"file":"prebuild.native.js","names":[],"sources":["esm/cli/prebuild.native.js"],"sourcesContent":["import { readFileSync } from \"fs\";\nimport { join } from \"path\";\nimport { validateNativeApp } from \"../native/appManifest\";\nimport { loadUserOneOptions } from \"../vite/loadConfig\";\nasync function run(args) {\n var _packageJson_dependencies, _packageJson_devDependencies;\n var root = process.cwd();\n var packageJson = JSON.parse(readFileSync(join(root, \"package.json\"), \"utf8\"));\n var hasExpo = Object.hasOwn((_packageJson_dependencies = packageJson.dependencies) !== null && _packageJson_dependencies !== void 0 ? _packageJson_dependencies : {}, \"expo\") || Object.hasOwn((_packageJson_devDependencies = packageJson.devDependencies) !== null && _packageJson_devDependencies !== void 0 ? _packageJson_devDependencies : {}, \"expo\");\n if (hasExpo) {\n throw new Error('[one] one prebuild only generates Expo-free projects. This app declares expo; run Expo prebuild and list \"vxrn/expo-plugin\" in the Expo config.');\n }\n var { oneOptions } = await loadUserOneOptions(\"build\", true);\n var native = oneOptions === null || oneOptions === void 0 ? void 0 : oneOptions.native;\n var app = typeof native === \"object\" ? native.app : void 0;\n if (!app) {\n throw new Error(\"[one] native.app is required: configure one({ native: { app } }) with name, ios.bundleId, and android.applicationId\");\n }\n validateNativeApp(app);\n var { prebuild } = await import(\"vxrn\");\n await prebuild({\n root: process.cwd(),\n ...args,\n app\n });\n}\nexport {\n run\n};\n//# sourceMappingURL=prebuild.js.map\n"],"mappings":";;;;;;AAIA,eAAe,IAAI,MAAM;CACvB,IAAI,2BAA2B;CAC/B,IAAI,OAAO,QAAQ,IAAI;CACvB,IAAI,cAAc,KAAK,MAAM,aAAa,KAAK,MAAM,cAAc,GAAG,MAAM,CAAC;CAC7E,IAAI,UAAU,OAAO,QAAQ,4BAA4B,YAAY,kBAAkB,QAAQ,8BAA8B,KAAK,IAAI,4BAA4B,CAAC,GAAG,MAAM,KAAK,OAAO,QAAQ,+BAA+B,YAAY,qBAAqB,QAAQ,iCAAiC,KAAK,IAAI,+BAA+B,CAAC,GAAG,MAAM;CAC3V,IAAI,SAAS;EACX,MAAM,IAAI,MAAM,mJAAiJ;CACnK;CACA,IAAI,EAAE,eAAe,MAAM,mBAAmB,SAAS,IAAI;CAC3D,IAAI,SAAS,eAAe,QAAQ,eAAe,KAAK,IAAI,KAAK,IAAI,WAAW;CAChF,IAAI,MAAM,OAAO,WAAW,WAAW,OAAO,MAAM,KAAK;CACzD,IAAI,CAAC,KAAK;EACR,MAAM,IAAI,MAAM,qHAAqH;CACvI;CACA,kBAAkB,GAAG;CACrB,IAAI,EAAE,aAAa,MAAM,OAAO;CAChC,MAAM,SAAS;EACb,MAAM,QAAQ,IAAI;EAClB,GAAG;EACH;CACF,CAAC;AACH"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "one",
3
- "version": "2.0.0-beta.58.1",
3
+ "version": "2.0.0-beta.59.1",
4
4
  "license": "BSD-3-Clause",
5
5
  "sideEffects": [
6
6
  "setup.mjs",
@@ -190,20 +190,20 @@
190
190
  "@react-navigation/routers": "~8.0.0-alpha.17",
191
191
  "@cloudflare/vite-plugin": "^1.33.1",
192
192
  "@ungap/structured-clone": "^1.2.0",
193
- "@vxrn/color-scheme": "2.0.0-beta.58.1",
194
- "@vxrn/compiler": "2.0.0-beta.58.1",
195
- "@vxrn/native": "2.0.0-beta.58.1",
196
- "@vxrn/resolve": "2.0.0-beta.58.1",
197
- "@vxrn/safe-area": "2.0.0-beta.58.1",
198
- "@vxrn/tslib-lite": "2.0.0-beta.58.1",
199
- "@vxrn/use-isomorphic-layout-effect": "2.0.0-beta.58.1",
200
- "@vxrn/utils": "2.0.0-beta.58.1",
201
- "@vxrn/vite-plugin-metro": "2.0.0-beta.58.1",
193
+ "@vxrn/color-scheme": "2.0.0-beta.59.1",
194
+ "@vxrn/compiler": "2.0.0-beta.59.1",
195
+ "@vxrn/native": "2.0.0-beta.59.1",
196
+ "@vxrn/resolve": "2.0.0-beta.59.1",
197
+ "@vxrn/safe-area": "2.0.0-beta.59.1",
198
+ "@vxrn/tslib-lite": "2.0.0-beta.59.1",
199
+ "@vxrn/use-isomorphic-layout-effect": "2.0.0-beta.59.1",
200
+ "@vxrn/utils": "2.0.0-beta.59.1",
201
+ "@vxrn/vite-plugin-metro": "2.0.0-beta.59.1",
202
202
  "babel-dead-code-elimination": "1.0.10",
203
203
  "babel-plugin-module-resolver": "^5.0.2",
204
204
  "citty": "^0.1.6",
205
205
  "core-js": "^3.38.1",
206
- "create-vxrn": "2.0.0-beta.58.1",
206
+ "create-vxrn": "2.0.0-beta.59.1",
207
207
  "escape-string-regexp": "^5.0.0",
208
208
  "fast-deep-equal": "^3.1.3",
209
209
  "fast-glob": "^3.3.3",
@@ -222,7 +222,7 @@
222
222
  "tsconfig-paths": "^4",
223
223
  "use-latest-callback": "^0.2.3",
224
224
  "vite": "^8.2.2",
225
- "vxrn": "2.0.0-beta.58.1",
225
+ "vxrn": "2.0.0-beta.59.1",
226
226
  "web-streams-polyfill": "^4.3.0",
227
227
  "ws": "^8.21.0",
228
228
  "xxhashjs": "^0.2.2"
@@ -1,4 +1,7 @@
1
- import { beforeEach, describe, expect, it, vi } from 'vitest'
1
+ import { mkdirSync, mkdtempSync, rmSync, writeFileSync } from 'node:fs'
2
+ import { tmpdir } from 'node:os'
3
+ import { join } from 'node:path'
4
+ import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'
2
5
  import { run } from './prebuild'
3
6
 
4
7
  const { loadUserOneOptionsMock, prebuildMock } = vi.hoisted(() => ({
@@ -21,11 +24,22 @@ const app = {
21
24
  }
22
25
 
23
26
  describe('one prebuild', () => {
27
+ const originalCwd = process.cwd()
28
+ let projectRoot: string
29
+
24
30
  beforeEach(() => {
31
+ projectRoot = mkdtempSync(join(tmpdir(), 'one-prebuild-'))
32
+ writeFileSync(join(projectRoot, 'package.json'), '{"private":true}')
33
+ process.chdir(projectRoot)
25
34
  loadUserOneOptionsMock.mockReset()
26
35
  prebuildMock.mockReset()
27
36
  })
28
37
 
38
+ afterEach(() => {
39
+ process.chdir(originalCwd)
40
+ rmSync(projectRoot, { recursive: true, force: true })
41
+ })
42
+
29
43
  it('passes the loaded, validated native.app into vxrn', async () => {
30
44
  loadUserOneOptionsMock.mockResolvedValueOnce({ oneOptions: { native: { app } } })
31
45
 
@@ -65,4 +79,38 @@ describe('one prebuild', () => {
65
79
  await expect(run({ platform: 'ios' })).rejects.toThrow('invalid vite config')
66
80
  expect(prebuildMock).not.toHaveBeenCalled()
67
81
  })
82
+
83
+ it('ignores an undeclared expo-modules-core hoisted into node_modules', async () => {
84
+ const expoModulesCore = join(projectRoot, 'node_modules', 'expo-modules-core')
85
+ mkdirSync(expoModulesCore, { recursive: true })
86
+ writeFileSync(
87
+ join(expoModulesCore, 'package.json'),
88
+ '{"name":"expo-modules-core","version":"1.0.0"}'
89
+ )
90
+ loadUserOneOptionsMock.mockResolvedValueOnce({ oneOptions: { native: { app } } })
91
+
92
+ await run({ platform: 'ios' })
93
+
94
+ expect(prebuildMock).toHaveBeenCalledWith({
95
+ root: process.cwd(),
96
+ platform: 'ios',
97
+ app,
98
+ })
99
+ })
100
+
101
+ it.each(['dependencies', 'devDependencies'])(
102
+ 'directs apps declaring Expo in %s to Expo prebuild before loading One config',
103
+ async (dependencyType) => {
104
+ writeFileSync(
105
+ join(projectRoot, 'package.json'),
106
+ JSON.stringify({ private: true, [dependencyType]: { expo: '^54.0.0' } })
107
+ )
108
+
109
+ await expect(run({ platform: 'ios' })).rejects.toThrow(
110
+ 'run Expo prebuild and list "vxrn/expo-plugin" in the Expo config'
111
+ )
112
+ expect(loadUserOneOptionsMock).not.toHaveBeenCalled()
113
+ expect(prebuildMock).not.toHaveBeenCalled()
114
+ }
115
+ )
68
116
  })
@@ -1,10 +1,19 @@
1
+ import { readFileSync } from 'node:fs'
2
+ import { join } from 'node:path'
1
3
  import { validateNativeApp } from '../native/appManifest'
2
4
  import { loadUserOneOptions } from '../vite/loadConfig'
3
5
 
4
- export async function run(args: {
5
- platform?: string
6
- 'no-install'?: boolean
7
- }) {
6
+ export async function run(args: { platform?: string; 'no-install'?: boolean }) {
7
+ const root = process.cwd()
8
+ const packageJson = JSON.parse(readFileSync(join(root, 'package.json'), 'utf8'))
9
+ const hasExpo =
10
+ Object.hasOwn(packageJson.dependencies ?? {}, 'expo') ||
11
+ Object.hasOwn(packageJson.devDependencies ?? {}, 'expo')
12
+ if (hasExpo) {
13
+ throw new Error(
14
+ '[one] one prebuild only generates Expo-free projects. This app declares expo; run Expo prebuild and list "vxrn/expo-plugin" in the Expo config.'
15
+ )
16
+ }
8
17
  const { oneOptions } = await loadUserOneOptions('build', true)
9
18
  const native = oneOptions?.native
10
19
  const app = typeof native === 'object' ? native.app : undefined
@@ -116,13 +116,12 @@ describe('packed-artifact closure oracle', () => {
116
116
  )
117
117
  }
118
118
  }
119
- const vxrnPkg = JSON.parse(
120
- readFileSync(
121
- join(unpack(packToDir(vxrnDir, tmp), join(tmp, 'vxrn')), 'package.json'),
122
- 'utf8'
123
- )
124
- )
119
+ const vxrnExtracted = unpack(packToDir(vxrnDir, tmp), join(tmp, 'vxrn'))
120
+ const vxrnPkg = JSON.parse(readFileSync(join(vxrnExtracted, 'package.json'), 'utf8'))
125
121
  expect(auditUnpackedManifest(vxrnPkg)).toEqual(KNOWN_VXRN_BLOCKERS)
122
+ expect(vxrnPkg.exports['./expo-plugin']).toBe('./expo-plugin.cjs')
123
+ expect(existsSync(join(vxrnExtracted, 'expo-plugin.cjs'))).toBe(true)
124
+ expect(existsSync(join(vxrnExtracted, 'native-project-patches.cjs'))).toBe(true)
126
125
  const vitePluginMetroPkg = JSON.parse(
127
126
  readFileSync(
128
127
  join(
@@ -1 +1 @@
1
- {"version":3,"file":"prebuild.d.ts","sourceRoot":"","sources":["../../src/cli/prebuild.ts"],"names":[],"mappings":"AAGA,wBAAsB,GAAG,CAAC,IAAI,EAAE;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB,iBAiBA"}
1
+ {"version":3,"file":"prebuild.d.ts","sourceRoot":"","sources":["../../src/cli/prebuild.ts"],"names":[],"mappings":"AAKA,wBAAsB,GAAG,CAAC,IAAI,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,iBA2B5E"}