@vimeo/iris
Version:
Vimeo Design System
27 lines (22 loc) • 848 B
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var utils_DOM_SSR = require('./SSR.js');
var utils_DOM_createElement = require('./createElement.js');
require('../../tslib.es6-3ec409b7.js');
function createPortalOutlet(id) {
var _a;
if (utils_DOM_SSR.SSR)
return null;
// if Portal already exists, return Portal element
// if Portal does not exist, make and return a new Portal element
return (_a = document.getElementById(id)) !== null && _a !== void 0 ? _a : makePortal(id);
}
function makePortal(id) {
if (utils_DOM_SSR.SSR)
return null;
// create new Portal element with specified id
var portal = utils_DOM_createElement.createElement('div', { id: id });
document.body.appendChild(portal);
return portal;
}
exports.createPortalOutlet = createPortalOutlet;