fabric
Version:
Object model for HTML5 canvas, and SVG-to-canvas parser. Backed by jsdom and node-canvas.
1 lines • 1.13 kB
Source Map (JSON)
{"version":3,"file":"percent.min.mjs","sources":["../../../src/parser/percent.ts"],"sourcesContent":["import { ifNaN } from '../util/internals/ifNaN';\nimport { capValue } from '../util/misc/capValue';\n\nconst RE_PERCENT = /^(\\d+\\.\\d+)%|(\\d+)%$/;\n\nexport function isPercent(value: string | null) {\n return value && RE_PERCENT.test(value);\n}\n\n/**\n *\n * @param value\n * @param valueIfNaN\n * @returns ∈ [0, 1]\n */\nexport function parsePercent(\n value: string | number | null | undefined,\n valueIfNaN?: number,\n) {\n const parsed =\n typeof value === 'number'\n ? value\n : typeof value === 'string'\n ? parseFloat(value) / (isPercent(value) ? 100 : 1)\n : NaN;\n return capValue(0, ifNaN(parsed, valueIfNaN), 1);\n}\n"],"names":["RE_PERCENT","isPercent","value","test","parsePercent","valueIfNaN","parsed","parseFloat","NaN","capValue","ifNaN"],"mappings":"iHAGA,MAAMA,EAAa,uBAEZ,SAASC,EAAUC,GACxB,OAAOA,GAASF,EAAWG,KAAKD,EAClC,CAQO,SAASE,EACdF,EACAG,GAEA,MAAMC,EACa,iBAAVJ,EACHA,EACiB,iBAAVA,EACLK,WAAWL,IAAUD,EAAUC,GAAS,IAAM,GAC9CM,IACR,OAAOC,EAAS,EAAGC,EAAMJ,EAAQD,GAAa,EAChD"}