transformation-matrix
Version:
2d transformation matrix functions written in ES6 syntax. Tree shaking ready!
2 lines • 18.1 kB
JavaScript
!function(r,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.TransformationMatrix=t():r.TransformationMatrix=t()}(self,(()=>(()=>{"use strict";var r={d:(t,n)=>{for(var e in n)r.o(n,e)&&!r.o(t,e)&&Object.defineProperty(t,e,{enumerable:!0,get:n[e]})},o:(r,t)=>Object.prototype.hasOwnProperty.call(r,t),r:r=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})}},t={};function n(r,t){return Array.isArray(t)?[r.a*t[0]+r.c*t[1]+r.e,r.b*t[0]+r.d*t[1]+r.f]:{x:r.a*t.x+r.c*t.y+r.e,y:r.b*t.x+r.d*t.y+r.f}}function e(r,t){return t.map((function(t){return n(r,t)}))}function o(r){return{a:parseFloat(r.a),b:parseFloat(r.b),c:parseFloat(r.c),d:parseFloat(r.d),e:parseFloat(r.e),f:parseFloat(r.f)}}r.r(t),r.d(t,{applyToPoint:()=>n,applyToPoints:()=>e,compose:()=>b,decomposeTSR:()=>G,flipOrigin:()=>U,flipX:()=>X,flipY:()=>L,fromDefinition:()=>N,fromObject:()=>o,fromOneMovingPoint:()=>q,fromString:()=>i,fromStringLegacy:()=>u,fromTransformAttribute:()=>$,fromTriangles:()=>T,fromTwoMovingPoints:()=>V,identity:()=>c,inverse:()=>f,isAffineMatrix:()=>h,rotate:()=>w,rotateDEG:()=>S,scale:()=>E,shear:()=>F,skew:()=>P,skewDEG:()=>C,smoothMatrix:()=>R,toCSS:()=>I,toSVG:()=>_,toString:()=>O,transform:()=>x,translate:()=>y});var a=/^matrix\(\s*([0-9_+-.e]+)\s*,\s*([0-9_+-.e]+)\s*,\s*([0-9_+-.e]+)\s*,\s*([0-9_+-.e]+)\s*,\s*([0-9_+-.e]+)\s*,\s*([0-9_+-.e]+)\s*\)$/i;function i(r){var t=function(t){var n=parseFloat(t);if(Number.isFinite(n))return n;throw new Error("'".concat(r,"' is not a matrix"))},n=r.substring(0,7).toLowerCase(),e=r.substring(r.length-1),o=r.substring(7,r.length-1).split(",");if("matrix("===n&&")"===e&&6===o.length)return{a:t(o[0]),b:t(o[1]),c:t(o[2]),d:t(o[3]),e:t(o[4]),f:t(o[5])};throw new Error("'".concat(r,"' is not a matrix"))}function u(r){var t=r.match(a);if(null===t||t.length<7)throw new Error("'".concat(r,"' is not a matrix"));return{a:parseFloat(t[1]),b:parseFloat(t[2]),c:parseFloat(t[3]),d:parseFloat(t[4]),e:parseFloat(t[5]),f:parseFloat(t[6])}}function c(){return{a:1,c:0,e:0,b:0,d:1,f:0}}function f(r){var t=r.a,n=r.b,e=r.c,o=r.d,a=r.e,i=r.f,u=t*o-n*e;return{a:o/u,b:n/-u,c:e/-u,d:t/u,e:(o*a-e*i)/-u,f:(n*a-t*i)/u}}function l(r){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},l(r)}function s(r){return void 0===r}function p(r){return"number"==typeof r&&!Number.isNaN(r)&&Number.isFinite(r)}function h(r){return"object"===l(t=r)&&null!==t&&!Array.isArray(t)&&"a"in r&&p(r.a)&&"b"in r&&p(r.b)&&"c"in r&&p(r.c)&&"d"in r&&p(r.d)&&"e"in r&&p(r.e)&&"f"in r&&p(r.f);var t}function y(r){return{a:1,c:0,e:r,b:0,d:1,f:arguments.length>1&&void 0!==arguments[1]?arguments[1]:0}}function d(r,t){if(r){if("string"==typeof r)return g(r,t);var n={}.toString.call(r).slice(8,-1);return"Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n?Array.from(r):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?g(r,t):void 0}}function g(r,t){(null==t||t>r.length)&&(t=r.length);for(var n=0,e=Array(t);n<t;n++)e[n]=r[n];return e}function v(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r)}function x(){for(var r=arguments.length,t=new Array(r),n=0;n<r;n++)t[n]=arguments[n];var e,o=function(r,t){return{a:r.a*t.a+r.c*t.b,c:r.a*t.c+r.c*t.d,e:r.a*t.e+r.c*t.f+r.e,b:r.b*t.a+r.d*t.b,d:r.b*t.c+r.d*t.d,f:r.b*t.e+r.d*t.f+r.f}};switch((t=Array.isArray(t[0])?t[0]:t).length){case 0:throw new Error("no matrices provided");case 1:return t[0];case 2:return o(t[0],t[1]);default:var a=function(r){if(Array.isArray(r))return r}(e=t)||v(e)||d(e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),i=a[0],u=a[1],c=a.slice(2),f=o(i,u);return x.apply(void 0,[f].concat(function(r){return function(r){if(Array.isArray(r))return g(r)}(r)||v(r)||d(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(c)))}}function b(){return x.apply(void 0,arguments)}var m=Math.cos,A=Math.sin,M=Math.PI;function w(r,t,n){var e=m(r),o=A(r),a={a:e,c:-o,e:0,b:o,d:e,f:0};return s(t)||s(n)?a:x([y(t,n),a,y(-t,-n)])}function S(r){return w(r*M/180,arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0)}function E(r){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,e=arguments.length>3&&void 0!==arguments[3]?arguments[3]:void 0;s(t)&&(t=r);var o={a:r,c:0,e:0,b:0,d:t,f:0};return s(n)||s(e)?o:x([y(n,e),o,y(-n,-e)])}function F(r,t){return{a:1,c:r,e:0,b:t,d:1,f:0}}var j=Math.tan;function P(r,t){return{a:1,c:j(r),e:0,b:j(t),d:1,f:0}}function C(r,t){return P(r*Math.PI/180,t*Math.PI/180)}function I(r){return O(r)}function _(r){return O(r)}function O(r){return"matrix(".concat(r.a,",").concat(r.b,",").concat(r.c,",").concat(r.d,",").concat(r.e,",").concat(r.f,")")}function R(r){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e10;return{a:Math.round(r.a*t)/t,b:Math.round(r.b*t)/t,c:Math.round(r.c*t)/t,d:Math.round(r.d*t)/t,e:Math.round(r.e*t)/t,f:Math.round(r.f*t)/t}}function T(r,t){var n=null!=r[0].x?r[0].x:r[0][0],e=null!=r[0].y?r[0].y:r[0][1],o=null!=t[0].x?t[0].x:t[0][0],a=null!=t[0].y?t[0].y:t[0][1],i=null!=r[1].x?r[1].x:r[1][0],u=null!=r[1].y?r[1].y:r[1][1],c=null!=t[1].x?t[1].x:t[1][0],l=null!=t[1].y?t[1].y:t[1][1],s=null!=r[2].x?r[2].x:r[2][0],p=null!=r[2].y?r[2].y:r[2][1],h=null!=t[2].x?t[2].x:t[2][0],y=null!=t[2].y?t[2].y:t[2][1];return R(x([{a:o-h,b:a-y,c:c-h,d:l-y,e:h,f:y},f({a:n-s,b:e-p,c:i-s,d:u-p,e:s,f:p})]))}function N(r){return Array.isArray(r)?r.map(t):t(r);function t(r){switch(r.type){case"matrix":if("a"in r&&"b"in r&&"c"in r&&"d"in r&&"e"in r&&"f"in r)return o(r);throw new Error("MISSING_MANDATORY_PARAM");case"translate":if(!("tx"in r))throw new Error("MISSING_MANDATORY_PARAM");return"ty"in r?y(r.tx,r.ty):y(r.tx);case"scale":if(!("sx"in r))throw new Error("MISSING_MANDATORY_PARAM");return"sy"in r?E(r.sx,r.sy):E(r.sx);case"rotate":if(!("angle"in r))throw new Error("MISSING_MANDATORY_PARAM");return"cx"in r&&"cy"in r?S(r.angle,r.cx,r.cy):S(r.angle);case"skewX":if(!("angle"in r))throw new Error("MISSING_MANDATORY_PARAM");return C(r.angle,0);case"skewY":if(!("angle"in r))throw new Error("MISSING_MANDATORY_PARAM");return C(0,r.angle);case"shear":if(!("shx"in r)||!("shy"in r))throw new Error("MISSING_MANDATORY_PARAM");return F(r.shx,r.shy);default:throw new Error("UNSUPPORTED_DESCRIPTOR")}}}function D(r,t,n,e){var o=Error.call(this,r);return Object.setPrototypeOf&&Object.setPrototypeOf(o,D.prototype),o.expected=t,o.found=n,o.location=e,o.name="SyntaxError",o}function Y(r,t,n){return n=n||" ",r.length>t?r:(t-=r.length,r+(n+=n.repeat(t)).slice(0,t))}function k(r,t){var n,e,o,a,i={},u=(t=void 0!==t?t:{}).grammarSource,c={transformList:yr},f=yr,l="matrix",s="(",p=")",h="translate",y="scale",d="rotate",g="skewX",v="skewY",x=",",b=".",m=/^[eE]/,A=/^[+\-]/,M=/^[0-9]/,w=/^[ \t\r\n]/,S=fr("matrix",!1),E=fr("(",!1),F=fr(")",!1),j=fr("translate",!1),P=fr("scale",!1),C=fr("rotate",!1),I=fr("skewX",!1),_=fr("skewY",!1),O=fr(",",!1),R={type:"other",description:"fractionalConstant"},T=fr(".",!1),N=lr(["e","E"],!1,!1),Y=lr(["+","-"],!1,!1),k=lr([["0","9"]],!1,!1),$=lr([" ","\t","\r","\n"],!1,!1),G=function(r){return r},X=function(r,t){return r.concat(t)},L=function(r,t,n,e,o,a){return[{type:"matrix",a:r,b:t,c:n,d:e,e:o,f:a}]},U=function(r,t){var n={type:"translate",tx:r};return t&&(n.ty=t),[n]},q=function(r,t){var n={type:"scale",sx:r};return t&&(n.sy=t),[n]},V=function(r,t){var n={type:"rotate",angle:r};return t&&(n.cx=t[0],n.cy=t[1]),[n]},z=function(r){return[{type:"skewX",angle:r}]},B=function(r){return[{type:"skewY",angle:r}]},H=function(r){return parseFloat(r.join(""))},J=function(r){return parseInt(r.join(""))},K=function(r){return r},Q=function(r,t){return[r,t]},W=function(r){return r.join("")},Z=function(r,t){return[r,t||null].join("")},rr=function(r,t){return[r,t].join("")},tr=function(r,t){return[r?r.join(""):null,".",t.join("")].join("")},nr=function(r){return r.join("")},er=function(r,t){return["e",r,t.join("")].join("")},or=0|t.peg$currPos,ar=[{line:1,column:1}],ir=or,ur=t.peg$maxFailExpected||[],cr=0|t.peg$silentFails;if(t.startRule){if(!(t.startRule in c))throw new Error("Can't start parsing from rule \""+t.startRule+'".');f=c[t.startRule]}function fr(r,t){return{type:"literal",text:r,ignoreCase:t}}function lr(r,t,n){return{type:"class",parts:r,inverted:t,ignoreCase:n}}function sr(t){var n,e=ar[t];if(e)return e;if(t>=ar.length)n=ar.length-1;else for(n=t;!ar[--n];);for(e={line:(e=ar[n]).line,column:e.column};n<t;)10===r.charCodeAt(n)?(e.line++,e.column=1):e.column++,n++;return ar[t]=e,e}function pr(r,t,n){var e=sr(r),o=sr(t),a={source:u,start:{offset:r,line:e.line,column:e.column},end:{offset:t,line:o.line,column:o.column}};return n&&u&&"function"==typeof u.offset&&(a.start=u.offset(a.start),a.end=u.offset(a.end)),a}function hr(r){or<ir||(or>ir&&(ir=or,ur=[]),ur.push(r))}function yr(){var r,t,n,e;for(r=[],t=Er();t!==i;)r.push(t),t=Er();for((t=dr())===i&&(t=null),n=[],e=Er();e!==i;)n.push(e),e=Er();return G(t)}function dr(){var r,t,n,e;if(r=or,(t=gr())!==i){if(n=[],(e=br())!==i)for(;e!==i;)n.push(e),e=br();else n=i;n!==i&&(e=dr())!==i?r=X(t,e):(or=r,r=i)}else or=r,r=i;return r===i&&(r=gr()),r}function gr(){var t;return(t=function(){var t,n,e,o,a,u,c,f,h,y,d,g,v;if(t=or,r.substr(or,6)===l?(n=l,or+=6):(n=i,0===cr&&hr(S)),n!==i){for(e=[],o=Er();o!==i;)e.push(o),o=Er();if(40===r.charCodeAt(or)?(o=s,or++):(o=i,0===cr&&hr(E)),o!==i){for(a=[],u=Er();u!==i;)a.push(u),u=Er();if((u=vr())!==i)if(br()!==i)if((c=vr())!==i)if(br()!==i)if((f=vr())!==i)if(br()!==i)if((h=vr())!==i)if(br()!==i)if((y=vr())!==i)if(br()!==i)if((d=vr())!==i){for(g=[],v=Er();v!==i;)g.push(v),v=Er();41===r.charCodeAt(or)?(v=p,or++):(v=i,0===cr&&hr(F)),v!==i?t=L(u,c,f,h,y,d):(or=t,t=i)}else or=t,t=i;else or=t,t=i;else or=t,t=i;else or=t,t=i;else or=t,t=i;else or=t,t=i;else or=t,t=i;else or=t,t=i;else or=t,t=i;else or=t,t=i;else or=t,t=i}else or=t,t=i}else or=t,t=i;return t}())===i&&(t=function(){var t,n,e,o,a,u,c,f,l;if(t=or,r.substr(or,9)===h?(n=h,or+=9):(n=i,0===cr&&hr(j)),n!==i){for(e=[],o=Er();o!==i;)e.push(o),o=Er();if(40===r.charCodeAt(or)?(o=s,or++):(o=i,0===cr&&hr(E)),o!==i){for(a=[],u=Er();u!==i;)a.push(u),u=Er();if((u=vr())!==i){for((c=xr())===i&&(c=null),f=[],l=Er();l!==i;)f.push(l),l=Er();41===r.charCodeAt(or)?(l=p,or++):(l=i,0===cr&&hr(F)),l!==i?t=U(u,c):(or=t,t=i)}else or=t,t=i}else or=t,t=i}else or=t,t=i;return t}())===i&&(t=function(){var t,n,e,o,a,u,c,f,l;if(t=or,r.substr(or,5)===y?(n=y,or+=5):(n=i,0===cr&&hr(P)),n!==i){for(e=[],o=Er();o!==i;)e.push(o),o=Er();if(40===r.charCodeAt(or)?(o=s,or++):(o=i,0===cr&&hr(E)),o!==i){for(a=[],u=Er();u!==i;)a.push(u),u=Er();if((u=vr())!==i){for((c=xr())===i&&(c=null),f=[],l=Er();l!==i;)f.push(l),l=Er();41===r.charCodeAt(or)?(l=p,or++):(l=i,0===cr&&hr(F)),l!==i?t=q(u,c):(or=t,t=i)}else or=t,t=i}else or=t,t=i}else or=t,t=i;return t}())===i&&(t=function(){var t,n,e,o,a,u,c,f,l;if(t=or,r.substr(or,6)===d?(n=d,or+=6):(n=i,0===cr&&hr(C)),n!==i){for(e=[],o=Er();o!==i;)e.push(o),o=Er();if(40===r.charCodeAt(or)?(o=s,or++):(o=i,0===cr&&hr(E)),o!==i){for(a=[],u=Er();u!==i;)a.push(u),u=Er();if((u=vr())!==i){for(c=function(){var r,t,n;return r=or,br()!==i&&(t=vr())!==i&&br()!==i&&(n=vr())!==i?r=Q(t,n):(or=r,r=i),r}(),c===i&&(c=null),f=[],l=Er();l!==i;)f.push(l),l=Er();41===r.charCodeAt(or)?(l=p,or++):(l=i,0===cr&&hr(F)),l!==i?t=V(u,c):(or=t,t=i)}else or=t,t=i}else or=t,t=i}else or=t,t=i;return t}())===i&&(t=function(){var t,n,e,o,a,u,c,f;if(t=or,r.substr(or,5)===g?(n=g,or+=5):(n=i,0===cr&&hr(I)),n!==i){for(e=[],o=Er();o!==i;)e.push(o),o=Er();if(40===r.charCodeAt(or)?(o=s,or++):(o=i,0===cr&&hr(E)),o!==i){for(a=[],u=Er();u!==i;)a.push(u),u=Er();if((u=vr())!==i){for(c=[],f=Er();f!==i;)c.push(f),f=Er();41===r.charCodeAt(or)?(f=p,or++):(f=i,0===cr&&hr(F)),f!==i?t=z(u):(or=t,t=i)}else or=t,t=i}else or=t,t=i}else or=t,t=i;return t}())===i&&(t=function(){var t,n,e,o,a,u,c,f;if(t=or,r.substr(or,5)===v?(n=v,or+=5):(n=i,0===cr&&hr(_)),n!==i){for(e=[],o=Er();o!==i;)e.push(o),o=Er();if(40===r.charCodeAt(or)?(o=s,or++):(o=i,0===cr&&hr(E)),o!==i){for(a=[],u=Er();u!==i;)a.push(u),u=Er();if((u=vr())!==i){for(c=[],f=Er();f!==i;)c.push(f),f=Er();41===r.charCodeAt(or)?(f=p,or++):(f=i,0===cr&&hr(F)),f!==i?t=B(u):(or=t,t=i)}else or=t,t=i}else or=t,t=i}else or=t,t=i;return t}()),t}function vr(){var t,n,e,o;return t=or,n=or,(e=Mr())===i&&(e=null),o=function(){var t,n,e;return t=or,n=function(){var t,n,e,o;return cr++,t=or,(n=wr())===i&&(n=null),46===r.charCodeAt(or)?(e=b,or++):(e=i,0===cr&&hr(T)),e!==i&&(o=wr())!==i?t=tr(n,o):(or=t,t=i),t===i&&(t=or,(n=wr())!==i?(46===r.charCodeAt(or)?(e=b,or++):(e=i,0===cr&&hr(T)),e!==i?t=nr(n):(or=t,t=i)):(or=t,t=i)),cr--,t===i&&(n=i,0===cr&&hr(R)),t}(),n!==i?((e=Ar())===i&&(e=null),t=Z(n,e)):(or=t,t=i),t===i&&(t=or,(n=wr())!==i&&(e=Ar())!==i?t=rr(n,e):(or=t,t=i)),t}(),o!==i?n=e=[e,o]:(or=n,n=i),n!==i&&(n=H(n)),(t=n)===i&&(t=or,n=or,(e=Mr())===i&&(e=null),o=function(){var r;return(r=wr())!==i&&(r=W(r)),r}(),o!==i?n=e=[e,o]:(or=n,n=i),n!==i&&(n=J(n)),t=n),t}function xr(){var r,t;return r=or,br()!==i&&(t=vr())!==i?r=K(t):(or=r,r=i),r}function br(){var r,t,n,e,o;if(r=or,t=[],(n=Er())!==i)for(;n!==i;)t.push(n),n=Er();else t=i;if(t!==i){for((n=mr())===i&&(n=null),e=[],o=Er();o!==i;)e.push(o),o=Er();r=t=[t,n,e]}else or=r,r=i;if(r===i)if(r=or,(t=mr())!==i){for(n=[],e=Er();e!==i;)n.push(e),e=Er();r=t=[t,n]}else or=r,r=i;return r}function mr(){var t;return 44===r.charCodeAt(or)?(t=x,or++):(t=i,0===cr&&hr(O)),t}function Ar(){var t,n,e,o;return t=or,n=r.charAt(or),m.test(n)?or++:(n=i,0===cr&&hr(N)),n!==i?((e=Mr())===i&&(e=null),(o=wr())!==i?t=er(e,o):(or=t,t=i)):(or=t,t=i),t}function Mr(){var t;return t=r.charAt(or),A.test(t)?or++:(t=i,0===cr&&hr(Y)),t}function wr(){var r,t;if(r=[],(t=Sr())!==i)for(;t!==i;)r.push(t),t=Sr();else r=i;return r}function Sr(){var t;return t=r.charAt(or),M.test(t)?or++:(t=i,0===cr&&hr(k)),t}function Er(){var t;return t=r.charAt(or),w.test(t)?or++:(t=i,0===cr&&hr($)),t}if(n=f(),t.peg$library)return{peg$result:n,peg$currPos:or,peg$FAILED:i,peg$maxFailExpected:ur,peg$maxFailPos:ir};if(n!==i&&or===r.length)return n;throw n!==i&&or<r.length&&hr({type:"end"}),e=ur,o=ir<r.length?r.charAt(ir):null,a=ir<r.length?pr(ir,ir+1):pr(ir,ir),new D(D.buildMessage(e,o),e,o,a)}function $(r){return k(r)}function G(r){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];t?r=b(r,E(n?-1:1,-1)):n&&(r=b(r,E(-1,1)));var e,o,a,i=r.a,u=r.b,c=r.c,f=r.d;if(0!==i||0!==c){var l=Math.hypot(i,c);e=l,o=(i*f-u*c)/l;var s=Math.acos(i/l);a=c>0?-s:s}else if(0!==u||0!==f){var p=Math.hypot(u,f);e=(i*f-u*c)/p,o=p;var h=Math.acos(u/p);a=Math.PI/2+(f>0?-h:h)}else e=0,o=0,a=0;return n&&(e=-e),t&&(o=-o),{translate:{tx:r.e,ty:r.f},scale:{sx:e,sy:o},rotation:{angle:a}}}function X(){return{a:1,c:0,e:0,b:0,d:-1,f:0}}function L(){return{a:-1,c:0,e:0,b:0,d:1,f:0}}function U(){return{a:-1,c:0,e:0,b:0,d:-1,f:0}}function q(r,t){return y(t.x-r.x,t.y-r.y)}function V(r,t,e,o){var a=q(r,e),i=n(a,t),u=e,c=o,f=w(Math.atan2(c.y-u.y,c.x-u.x)-Math.atan2(i.y-u.y,i.x-u.x),u.x,u.y),l=Math.sqrt(Math.pow(i.x-u.x,2)+Math.pow(i.y-u.y,2)),s=Math.sqrt(Math.pow(c.x-u.x,2)+Math.pow(c.y-u.y,2))/l;return b([a,E(s,s,u.x,u.y),f])}return function(r,t){function n(){this.constructor=r}n.prototype=t.prototype,r.prototype=new n}(D,Error),D.prototype.format=function(r){var t="Error: "+this.message;if(this.location){var n,e=null;for(n=0;n<r.length;n++)if(r[n].source===this.location.source){e=r[n].text.split(/\r\n|\n|\r/g);break}var o=this.location.start,a=this.location.source&&"function"==typeof this.location.source.offset?this.location.source.offset(o):o,i=this.location.source+":"+a.line+":"+a.column;if(e){var u=this.location.end,c=Y("",a.line.toString().length," "),f=e[o.line-1],l=(o.line===u.line?u.column:f.length+1)-o.column||1;t+="\n --\x3e "+i+"\n"+c+" |\n"+a.line+" | "+f+"\n"+c+" | "+Y("",o.column-1," ")+Y("",l,"^")}else t+="\n at "+i}return t},D.buildMessage=function(r,t){var n={literal:function(r){return'"'+o(r.text)+'"'},class:function(r){var t=r.parts.map((function(r){return Array.isArray(r)?a(r[0])+"-"+a(r[1]):a(r)}));return"["+(r.inverted?"^":"")+t.join("")+"]"},any:function(){return"any character"},end:function(){return"end of input"},other:function(r){return r.description}};function e(r){return r.charCodeAt(0).toString(16).toUpperCase()}function o(r){return r.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(r){return"\\x0"+e(r)})).replace(/[\x10-\x1F\x7F-\x9F]/g,(function(r){return"\\x"+e(r)}))}function a(r){return r.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,(function(r){return"\\x0"+e(r)})).replace(/[\x10-\x1F\x7F-\x9F]/g,(function(r){return"\\x"+e(r)}))}function i(r){return n[r.type](r)}return"Expected "+function(r){var t,n,e=r.map(i);if(e.sort(),e.length>0){for(t=1,n=1;t<e.length;t++)e[t-1]!==e[t]&&(e[n]=e[t],n++);e.length=n}switch(e.length){case 1:return e[0];case 2:return e[0]+" or "+e[1];default:return e.slice(0,-1).join(", ")+", or "+e[e.length-1]}}(r)+" but "+function(r){return r?'"'+o(r)+'"':"end of input"}(t)+" found."},t})()));
//# sourceMappingURL=transformation-matrix.min.js.map