UNPKG

@formant/ava-react

Version:

React components of AVA.

60 lines (58 loc) 2.21 kB
var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/NarrativeTextVis/line-charts/hooks/getElementFontSize.ts var getElementFontSize_exports = {}; __export(getElementFontSize_exports, { getElementFontSize: () => getElementFontSize }); module.exports = __toCommonJS(getElementFontSize_exports); var import_theme = require("../../theme"); function getStyle(ele, style) { var _a; return window.getComputedStyle ? window.getComputedStyle(ele, null)[style] : (_a = ele == null ? void 0 : ele.currentStyle) == null ? void 0 : _a[style]; } function isAbsoluteUnitPx(str) { return str == null ? void 0 : str.endsWith("px"); } function getPxNumber(str) { const removeUnit = str.replace(/px$/, ""); const resultNumber = Number(removeUnit); if (!Number.isNaN(resultNumber)) return resultNumber; return void 0; } function getElementFontSize(ele, defaultSize = import_theme.seedToken.fontSizeBase) { const FONT_SIZE = "font-size"; const eleFontSizeStr = getStyle(ele, FONT_SIZE); if (eleFontSizeStr && isAbsoluteUnitPx(eleFontSizeStr)) { const px = getPxNumber(eleFontSizeStr); if (px) return px; } const bodyFontSizeStr = getStyle(window.document.body, FONT_SIZE); if (bodyFontSizeStr && isAbsoluteUnitPx(bodyFontSizeStr)) { const px = getPxNumber(bodyFontSizeStr); if (px) return px; } return defaultSize; } // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { getElementFontSize });