one
Version:
One is a new React Framework that makes Vite serve both native and web.
24 lines • 1.17 kB
JavaScript
var import_node_module = require("node:module");
var import_vitest = require("vitest");
var import_NativeTabs = require("./NativeTabs.cjs");
const import_meta = {};
const require2 = (0, import_node_module.createRequire)(import_meta.url);
function hasNativeTabsPeer() {
try {
require2.resolve("@bottom-tabs/react-navigation");
return true;
} catch {
return false;
}
}
(0, import_vitest.describe)("NativeTabs optional peer", () => {
(0, import_vitest.it)("does not throw during ordinary import-time inspection", () => {
(0, import_vitest.expect)(() => Object.prototype.toString.call(import_NativeTabs.NativeTabs)).not.toThrow();
(0, import_vitest.expect)(() => Reflect.get(import_NativeTabs.NativeTabs, "$$typeof")).not.toThrow();
(0, import_vitest.expect)(() => Reflect.get(import_NativeTabs.NativeTabs, "Screen")).not.toThrow();
});
(0, import_vitest.it)("keeps the missing-peer error on actual render use", () => {
if (hasNativeTabsPeer()) return;
(0, import_vitest.expect)(() => import_NativeTabs.NativeTabs.render({}, null)).toThrow("NativeTabs requires @bottom-tabs/react-navigation and react-native-bottom-tabs");
});
});