UNPKG

one

Version:

One is a new React Framework that makes Vite serve both native and web.

24 lines 1.15 kB
var import_node_fs = require("node:fs"); var import_node_url = require("node:url"); var import_vitest = require("vitest"); const import_meta = {}; const packageDirectory = (0, import_node_url.fileURLToPath)(new import_node_url.URL("../", import_meta.url)); function collectExportTargets(value) { if (typeof value === "string") { return value.includes("*") ? [] : [value]; } if (!value || typeof value !== "object" || Array.isArray(value)) { return []; } return Object.values(value).flatMap(collectExportTargets); } (0, import_vitest.describe)("package exports", () => { (0, import_vitest.test)("all concrete targets exist in the built package", () => { const packageJson = JSON.parse((0, import_node_fs.readFileSync)(`${packageDirectory}/package.json`, "utf8")); if (!packageJson || typeof packageJson !== "object" || !("exports" in packageJson)) { throw new Error("one package.json must define exports"); } const missing = collectExportTargets(packageJson.exports).filter(target => !(0, import_node_fs.existsSync)(`${packageDirectory}/${target}`)); (0, import_vitest.expect)(missing).toEqual([]); }); });