@bacons/expo-metro-runtime
Version:
Tools for making experimental Metro bundler features work
35 lines • 1.29 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
// @ts-expect-error
const client_1 = __importDefault(require("react-dom/client"));
const react_1 = __importDefault(require("react"));
let currentRoot = null;
exports.default = {
show() {
if (currentRoot) {
return;
}
const ErrorOverlay = require('../../ErrorOverlay').default;
// Create a new div with ID `error-overlay` element and render LogBoxInspector into it.
const div = document.createElement('div');
div.id = 'error-overlay';
document.body.appendChild(div);
currentRoot = client_1.default.createRoot(div);
// @ts-expect-error
currentRoot.render(react_1.default.createElement(ErrorOverlay, null));
},
hide() {
// Remove div with ID `error-overlay`
if (currentRoot) {
// @ts-expect-error
currentRoot.unmount();
currentRoot = null;
}
const div = document.getElementById('error-overlay');
div === null || div === void 0 ? void 0 : div.remove();
},
};
//# sourceMappingURL=index.js.map