UNPKG

fabric

Version:

Object model for HTML5 canvas, and SVG-to-canvas parser. Backed by jsdom and node-canvas.

3 lines (2 loc) 1.21 kB
import{multiplyTransformMatrices as i}from"../util/misc/matrix.min.mjs";import{parseUnit as r}from"../util/misc/svgParsing.min.mjs";import{parseTransformAttribute as t}from"./parseTransformAttribute.min.mjs";import{FILL as e,STROKE as s,NONE as n,LEFT as a,RIGHT as o,CENTER as m}from"../constants.min.mjs";function f(f,l,p,c){const u=Array.isArray(l);let x,d=l;if(f!==e&&f!==s||l!==n){if("strokeUniform"===f)return"non-scaling-stroke"===l;if("strokeDashArray"===f)d=l===n?null:l.replace(/,/g," ").split(/\s+/).map(parseFloat);else if("transformMatrix"===f)d=p&&p.transformMatrix?i(p.transformMatrix,t(l)):t(l);else if("visible"===f)d=l!==n&&"hidden"!==l,p&&!1===p.visible&&(d=!1);else if("opacity"===f)d=parseFloat(l),p&&void 0!==p.opacity&&(d*=p.opacity);else if("textAnchor"===f)d="start"===l?a:"end"===l?o:m;else if("charSpacing"===f)x=r(l,c)/c*1e3;else if("paintFirst"===f){const i=l.indexOf(e),r=l.indexOf(s);d=e,(i>-1&&r>-1&&r<i||-1===i&&r>-1)&&(d=s)}else{if("href"===f||"xlink:href"===f||"font"===f||"id"===f)return l;if("imageSmoothing"===f)return"optimizeQuality"===l;x=u?l.map(r):r(l,c)}}else d="";return!u&&isNaN(x)?d:x}export{f as normalizeValue}; //# sourceMappingURL=normalizeValue.min.mjs.map