{"version":3,"file":"jquery.value_converters.min.js","sources":["jquery.value_converters.js"],"sourcesContent":["/* Safely parsing of numbers */\r\n(function ($) {\r\n    $.mw_tryParseFloatStrict = function (value) {\r\n        if (typeof value === 'undefined') {\r\n            return NaN;\r\n        }\r\n        var ret = value.replace(',', '.');\r\n        return $.isNumeric(ret) ? parseFloat(ret) : NaN;\r\n    };\r\n    $.mw_tryParseIntStrict = function (value) {\r\n        if (typeof value === 'undefined') {\r\n            return NaN;\r\n        }\r\n        var ret = value.replace(',', '.');\r\n        return $.isNumeric(ret) ? parseInt(ret) : NaN;\r\n    };\r\n})(jQuery);\r\n\r\n/* To currency formatter */\r\n(function ($) {\r\n    $.mw_toCurrency = function (prices, currencyCode) {\r\n        prices = $.isArray(prices) ? prices : [prices];\r\n        // If prices are passed as strings, ensure the decimal separator will be '.' and not ','\r\n        var processedPrices = $.map(prices,\r\n            function (price) {\r\n                if (typeof (price) === 'string') {\r\n                    return price.replace(',', '.');\r\n                } else {\r\n                    return price;\r\n                }\r\n            });\r\n\r\n        var params = { prices: JSON.stringify(processedPrices) };\r\n        if (currencyCode) {\r\n            params.currency = currencyCode;\r\n        }\r\n\r\n        return $.get(window.R + 'handlers/public/currencyformatter.ashx', params);\r\n    };\r\n})(jQuery);\r\n\r\n/* String helpers */\r\n(function ($) {\r\n    $.isNullOrWhiteSpace = function (str) {\r\n        return !str || /^\\s*$/.test(str);\r\n    };\r\n\r\n    $.isNullOrEmpty = function (str) {\r\n        return (!str || 0 === str.length);\r\n    };\r\n})(jQuery);\r\n\r\n/* Convertors */\r\n(function ($) {\r\n    $.base64ToBlob = function base64ToBlob(base64, mime) {\r\n        mime = mime || '';\r\n        var sliceSize = 1024;\r\n        var byteChars = window.atob(base64);\r\n        var byteArrays = [];\r\n\r\n        for (var offset = 0, len = byteChars.length; offset < len; offset += sliceSize) {\r\n            var slice = byteChars.slice(offset, offset + sliceSize);\r\n\r\n            var byteNumbers = new Array(slice.length);\r\n            for (var i = 0; i < slice.length; i++) {\r\n                byteNumbers[i] = slice.charCodeAt(i);\r\n            }\r\n\r\n            var byteArray = new Uint8Array(byteNumbers);\r\n\r\n            byteArrays.push(byteArray);\r\n        }\r\n\r\n        return new Blob(byteArrays, { type: mime });\r\n    }\r\n})(jQuery);"],"names":["$","mw_tryParseFloatStrict","value","ret","replace","isNumeric","parseFloat","NaN","mw_tryParseIntStrict","parseInt","jQuery","mw_toCurrency","prices","currencyCode","isArray","processedPrices","map","price","params","JSON","stringify","currency","get","window","R","isNullOrWhiteSpace","str","test","isNullOrEmpty","length","base64ToBlob","base64","mime","byteChars","atob","byteArrays","offset","len","slice","byteNumbers","Array","i","charCodeAt","byteArray","Uint8Array","push","Blob","type"],"mappings":"AACA,CAAA,SAAWA,GACPA,EAAEC,uBAAyB,SAAUC,GACjC,OAAqB,KAAA,IAAVA,IAGPC,EAAMD,EAAME,QAAQ,IAAK,GAAG,EACzBJ,EAAEK,UAAUF,CAAG,GAAIG,WAAWH,CAAG,EAAII,GAChD,EACAP,EAAEQ,qBAAuB,SAAUN,GAC/B,OAAqB,KAAA,IAAVA,IAGPC,EAAMD,EAAME,QAAQ,IAAK,GAAG,EACzBJ,EAAEK,UAAUF,CAAG,GAAIM,SAASN,CAAG,EAAII,GAC9C,CACH,EAAEG,MAAM,EAGT,SAAWV,GACPA,EAAEW,cAAgB,SAAUC,EAAQC,GAChCD,EAASZ,EAAEc,QAAQF,CAAM,EAAIA,EAAS,CAACA,GAEnCG,EAAkBf,EAAEgB,IAAIJ,EACxB,SAAUK,GACN,MAAuB,UAAnB,OAAO,EACAA,EAAMb,QAAQ,IAAK,GAAG,EAEtBa,CAEf,CAAC,EAEDC,EAAS,CAAEN,OAAQO,KAAKC,UAAUL,CAAe,CAAE,EAKvD,OAJIF,IACAK,EAAOG,SAAWR,GAGfb,EAAEsB,IAAIC,OAAOC,EAAI,yCAA0CN,CAAM,CAC5E,CACH,EAAER,MAAM,EAGT,SAAWV,GACPA,EAAEyB,mBAAqB,SAAUC,GAC7B,MAAO,CAACA,GAAO,QAAQC,KAAKD,CAAG,CACnC,EAEA1B,EAAE4B,cAAgB,SAAUF,GACxB,MAAQ,CAACA,GAAO,IAAMA,EAAIG,MAC9B,CACH,EAAEnB,MAAM,EAyBNA,OArBGoB,aAAe,SAAsBC,EAAQC,GAC3CA,EAAOA,GAAQ,GAKf,IAJA,IACIC,EAAYV,OAAOW,KAAKH,CAAM,EAC9BI,EAAa,GAERC,EAAS,EAAGC,EAAMJ,EAAUJ,OAAQO,EAASC,EAAKD,GAJ3C,KAIgE,CAI5E,IAHA,IAAIE,EAAQL,EAAUK,MAAMF,EAAQA,EALxB,IAK0C,EAElDG,EAAc,IAAIC,MAAMF,EAAMT,MAAM,EAC/BY,EAAI,EAAGA,EAAIH,EAAMT,OAAQY,CAAC,GAC/BF,EAAYE,GAAKH,EAAMI,WAAWD,CAAC,EAGvC,IAAIE,EAAY,IAAIC,WAAWL,CAAW,EAE1CJ,EAAWU,KAAKF,CAAS,CAC7B,CAEA,OAAO,IAAIG,KAAKX,EAAY,CAAEY,KAAMf,CAAK,CAAC,CAC9C"}