{"version":3,"sources":["jsdelivr-header.js","/npm/string-math@1.2.2/string-math.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,SAAS,WAAW,EAAI,GACtB,GAAkB,iBAAP,EAAiB,OAAO,EAAe,IAAI,UAAU,sCAAuC,MACvG,MAAM,EAAS,yEACT,EAAU,yEACV,EAAc,0BAEpB,IADA,IAAI,GAC2D,IAAxD,EAAG,OAAO,0CAAiD,CAEhE,IADA,EAAK,EAAa,MACP,EAAS,OAAO,EAAe,IAAI,YAAY,4BAA6B,MACvF,EAAU,CACZ,CACA,OAAO,EAAe,MAAO,GAE7B,SAAS,EAAa,GACpB,MAAmC,IAA5B,EAAG,OAAO,IACf,EAAK,EAAG,QAAQ,GAAa,SAAU,EAAG,EAAG,GAG3C,OADA,EAAI,EADJ,EAAI,EAAQ,IAEQ,iBAAN,EAAiB,EAAI,IAAM,EAAI,CAC/C,IAIF,OADA,EAAK,EADL,EAAK,EAAQ,GAGf,CAEA,SAAS,EAAQ,GACf,MAA8B,IAAvB,EAAG,OAAO,IACf,EAAK,EAAG,QAAQ,GAAQ,SAAU,GAChC,MAAM,EAAQ,EAAO,KAAK,GACpB,EAAsB,MAAb,EAAM,GAAa,EAAM,GAAK,EAAM,GAAK,EAAM,GAAK,EAAM,GACzE,OAAO,GAAU,EAAI,IAAM,EAAS,CACtC,IAEF,OAAO,CACT,CAEA,SAAS,EAAS,GAEhB,IADA,EAAK,EAAG,QAAQ,wBAAwB,SAAU,EAAG,EAAG,EAAG,GAAK,OAAQ,IAAM,EAAI,IAAM,KAAO,CAAG,KACnE,IAAxB,EAAG,OAAO,IACf,EAAK,EAAG,QAAQ,GAAS,SAAU,GACjC,MAAM,EAAQ,EAAQ,KAAK,GAC3B,MAAoB,MAAb,EAAM,IAAc,EAAM,KAAM,EAAM,GAAK,EAAM,GAAK,EAAM,EACrE,IAEF,OAAO,CACT,CAEA,SAAS,EAAe,EAAW,GACjC,GAAwB,mBAAb,GACT,GAAkB,OAAd,EAAoB,MAAM,OAE9B,EAAS,EAAW,GAEtB,OAAO,CAET,CAEF,CAEsB,oBAAX,QAA6C,oBAAZ,SAA2B,OAAO,UAC5E,OAAO,QAAU","file":"/npm/string-math@1.2.2/string-math.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/string-math@1.2.2/string-math.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","function stringMath(eq, callback) {\r\n  if (typeof eq !== 'string') return handleCallback(new TypeError('The [String] argument is expected.'), null);\r\n  const mulDiv = /([+-]?\\d*\\.?\\d+(?:e[+-]\\d+)?)\\s*([*/])\\s*([+-]?\\d*\\.?\\d+(?:e[+-]\\d+)?)/;\r\n  const plusMin = /([+-]?\\d*\\.?\\d+(?:e[+-]\\d+)?)\\s*([+-])\\s*([+-]?\\d*\\.?\\d+(?:e[+-]\\d+)?)/;\r\n  const parentheses = /(\\d)?\\s*\\(([^()]*)\\)\\s*/;\r\n  var current;\r\n  while (eq.search(/^\\s*([+-]?\\d*\\.?\\d+(?:e[+-]\\d+)?)\\s*$/) === -1) {\r\n    eq = fParentheses(eq);\r\n    if (eq === current) return handleCallback(new SyntaxError('The equation is invalid.'), null);\r\n    current = eq;\r\n  }\r\n  return handleCallback(null, +eq);\r\n\r\n  function fParentheses(eq) {\r\n    while (eq.search(parentheses) !== -1) {\r\n      eq = eq.replace(parentheses, function (a, b, c) {\r\n        c = fMulDiv(c);\r\n        c = fPlusMin(c);\r\n        return typeof b === 'string' ? b + '*' + c : c;\r\n      });\r\n    }\r\n    eq = fMulDiv(eq);\r\n    eq = fPlusMin(eq);\r\n    return eq;\r\n  }\r\n\r\n  function fMulDiv(eq) {\r\n    while (eq.search(mulDiv) !== -1) {\r\n      eq = eq.replace(mulDiv, function (a) {\r\n        const sides = mulDiv.exec(a);\r\n        const result = sides[2] === '*' ? sides[1] * sides[3] : sides[1] / sides[3];\r\n        return result >= 0 ? '+' + result : result;\r\n      });\r\n    }\r\n    return eq;\r\n  }\r\n\r\n  function fPlusMin(eq) {\r\n    eq = eq.replace(/([+-])([+-])(\\d|\\.)/g, function (a, b, c, d) { return (b === c ? '+' : '-') + d; });\r\n    while (eq.search(plusMin) !== -1) {\r\n      eq = eq.replace(plusMin, function (a) {\r\n        const sides = plusMin.exec(a);\r\n        return sides[2] === '+' ? +sides[1] + +sides[3] : sides[1] - sides[3];\r\n      });\r\n    }\r\n    return eq;\r\n  }\r\n\r\n  function handleCallback(errObject, result) {\r\n    if (typeof callback !== 'function') {\r\n      if (errObject !== null) throw errObject;\r\n    } else {\r\n      callback(errObject, result);\r\n    }\r\n    return result;\r\n\r\n  }\r\n\r\n}\r\n\r\nif (typeof module !== 'undefined' && typeof exports !== 'undefined' && module.exports) {\r\n  module.exports = stringMath;\r\n}"]}