one
Version:
One is a new React Framework that makes Vite serve both native and web.
49 lines (48 loc) • 2.61 kB
JavaScript
import path from "path";
import { buildMetroConfigInputFromViteConfig } from "@vxrn/vite-plugin-metro";
import { getViteMetroPluginOptions } from "./getViteMetroPluginOptions.native.js";
import { loadUserOneOptions } from "../vite/loadConfig.native.js";
async function loadUserViteMetroOptions(projectRoot) {
var previousCwd = process.cwd();
var previousIsVxrnCli = process.env.IS_VXRN_CLI;
try {
process.chdir(projectRoot);
process.env.IS_VXRN_CLI = "true";
return await loadUserOneOptions("build", true);
} finally {
process.chdir(previousCwd);
if (previousIsVxrnCli === void 0) {
delete process.env.IS_VXRN_CLI;
} else {
process.env.IS_VXRN_CLI = previousIsVxrnCli;
}
}
}
async function withOne(baseConfigOrProjectRoot) {
var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
var _options_projectRoot, _ref, _options_routerRoot, _ref1;
var _loaded_config, _loaded_config_config, _loaded_config1;
var projectRoot = path.resolve(typeof baseConfigOrProjectRoot === "string" ? baseConfigOrProjectRoot : (_options_projectRoot = options.projectRoot) !== null && _options_projectRoot !== void 0 ? _options_projectRoot : process.cwd());
var loaded = options.loadViteConfig === false ? void 0 : await loadUserViteMetroOptions(projectRoot);
var metroPluginOptions = (_ref = loaded === null || loaded === void 0 ? void 0 : loaded.metroOptions) !== null && _ref !== void 0 ? _ref : getViteMetroPluginOptions({
projectRoot,
relativeRouterRoot: (_options_routerRoot = options.routerRoot) !== null && _options_routerRoot !== void 0 ? _options_routerRoot : "app",
ignoredRouteFiles: options.ignoredRouteFiles,
linking: options.linking,
setupFile: options.setupFile
});
var viteConfig = {
...(loaded === null || loaded === void 0 ? void 0 : (_loaded_config = loaded.config) === null || _loaded_config === void 0 ? void 0 : _loaded_config.config),
root: path.resolve((_ref1 = loaded === null || loaded === void 0 ? void 0 : (_loaded_config1 = loaded.config) === null || _loaded_config1 === void 0 ? void 0 : (_loaded_config_config = _loaded_config1.config) === null || _loaded_config_config === void 0 ? void 0 : _loaded_config_config.root) !== null && _ref1 !== void 0 ? _ref1 : projectRoot)
};
var {
defaultConfig
} = await buildMetroConfigInputFromViteConfig(viteConfig, {
...metroPluginOptions,
mainModuleName: "one/metro-entry"
});
return defaultConfig;
}
var withOne_default = withOne;
export { withOne_default as default, withOne };
//# sourceMappingURL=withOne.native.js.map