@dark-engine/platform-server
Version:
Dark renderer for server
87 lines (86 loc) • 1.69 kB
JavaScript
import { detectIsUndefined, illegal as $illegal } from '@dark-engine/core';
import { LIB } from '../constants';
const svgTagNames = new Set([
'svg',
'animate',
'animateMotion',
'animateTransform',
'circle',
'clipPath',
'defs',
'desc',
'ellipse',
'feBlend',
'feColorMatrix',
'feComponentTransfer',
'feComposite',
'feConvolveMatrix',
'feDiffuseLighting',
'feDisplacementMap',
'feDistantLight',
'feDropShadow',
'feFlood',
'feFuncA',
'feFuncB',
'feFuncG',
'feFuncR',
'feGaussianBlur',
'feImage',
'feMerge',
'feMergeNode',
'feMorphology',
'feOffset',
'fePointLight',
'feSpecularLighting',
'feSpotLight',
'feTile',
'feTurbulence',
'filter',
'foreignObject',
'g',
'image',
'line',
'linearGradient',
'marker',
'mask',
'metadata',
'mpath',
'path',
'pattern',
'polygon',
'polyline',
'radialGradient',
'rect',
'stop',
'switch',
'symbol',
'text',
'textPath',
'tspan',
'use',
'view',
]);
const voidTagNames = new Set([
'area',
'base',
'br',
'col',
'embed',
'hr',
'img',
'input',
'link',
'meta',
'param',
'source',
'track',
'wbr',
]);
const detectIsSvgElement = name => svgTagNames.has(name);
const detectIsVoidElement = name => voidTagNames.has(name);
const detectIsBrowser = () => !detectIsUndefined(globalThis.window);
const illegal = x => $illegal(x, LIB);
const removeContent = element => (element.innerHTML = '');
const setInnerHTML = (element, html) => element.innerHTML !== html && (element.innerHTML = html);
export { detectIsSvgElement, detectIsVoidElement, detectIsBrowser, illegal, removeContent, setInnerHTML };
//# sourceMappingURL=utils.js.map