UNPKG

botframework-webchat-component

Version:
60 lines (43 loc) 4.72 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parse = parse; exports.default = readDataURIToBlob; var _base64Js = require("base64-js"); function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } var PATTERN = /^data:((?:(?!,)[\s\S])*?)(;(base64))?,([\+\/-9=A-Za-z]+)/; var DEFAULT_CONTENT_TYPE = 'text/plain;charset=US-ASCII'; function parse(dataURI) { var match = PATTERN.exec(dataURI); if (!match) { return; } var _match = _slicedToArray(match, 5), contentType = _match[1], encoding = _match[3], base64 = _match[4]; if (encoding !== 'base64') { return; } return { base64: base64, contentType: contentType || DEFAULT_CONTENT_TYPE, encoding: encoding }; } function readDataURIToBlob(dataURI) { var parsed = parse(dataURI); if (!parsed) { return; } return new Blob([(0, _base64Js.toByteArray)(parsed.base64)], { type: parsed.contentType }); } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9VdGlscy9yZWFkRGF0YVVSSVRvQmxvYi5qcyJdLCJuYW1lcyI6WyJQQVRURVJOIiwiREVGQVVMVF9DT05URU5UX1RZUEUiLCJwYXJzZSIsImRhdGFVUkkiLCJtYXRjaCIsImV4ZWMiLCJjb250ZW50VHlwZSIsImVuY29kaW5nIiwiYmFzZTY0IiwicmVhZERhdGFVUklUb0Jsb2IiLCJwYXJzZWQiLCJCbG9iIiwidHlwZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTs7Ozs7Ozs7Ozs7Ozs7QUFFQSxJQUFNQSxPQUFPLEdBQUcsMERBQWhCO0FBRUEsSUFBTUMsb0JBQW9CLEdBQUcsNkJBQTdCOztBQUVPLFNBQVNDLEtBQVQsQ0FBZUMsT0FBZixFQUF3QjtBQUM3QixNQUFNQyxLQUFLLEdBQUdKLE9BQU8sQ0FBQ0ssSUFBUixDQUFhRixPQUFiLENBQWQ7O0FBRUEsTUFBSSxDQUFDQyxLQUFMLEVBQVk7QUFDVjtBQUNEOztBQUw0Qiw4QkFPZUEsS0FQZjtBQUFBLE1BT3BCRSxXQVBvQjtBQUFBLE1BT0xDLFFBUEs7QUFBQSxNQU9LQyxNQVBMOztBQVM3QixNQUFJRCxRQUFRLEtBQUssUUFBakIsRUFBMkI7QUFDekI7QUFDRDs7QUFFRCxTQUFPO0FBQUVDLElBQUFBLE1BQU0sRUFBTkEsTUFBRjtBQUFVRixJQUFBQSxXQUFXLEVBQUVBLFdBQVcsSUFBSUwsb0JBQXRDO0FBQTRETSxJQUFBQSxRQUFRLEVBQVJBO0FBQTVELEdBQVA7QUFDRDs7QUFFYyxTQUFTRSxpQkFBVCxDQUEyQk4sT0FBM0IsRUFBb0M7QUFDakQsTUFBTU8sTUFBTSxHQUFHUixLQUFLLENBQUNDLE9BQUQsQ0FBcEI7O0FBRUEsTUFBSSxDQUFDTyxNQUFMLEVBQWE7QUFDWDtBQUNEOztBQUVELFNBQU8sSUFBSUMsSUFBSixDQUFTLENBQUMsMkJBQVlELE1BQU0sQ0FBQ0YsTUFBbkIsQ0FBRCxDQUFULEVBQXVDO0FBQUVJLElBQUFBLElBQUksRUFBRUYsTUFBTSxDQUFDSjtBQUFmLEdBQXZDLENBQVA7QUFDRCIsInNvdXJjZVJvb3QiOiJjb21wb25lbnQ6Ly8vIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdG9CeXRlQXJyYXkgfSBmcm9tICdiYXNlNjQtanMnO1xuXG5jb25zdCBQQVRURVJOID0gL15kYXRhOihbXixdKj8pKDsoYmFzZTY0KSl7MCwxfSwoW0EtWmEtejAtOSsvPV0rKS91O1xuXG5jb25zdCBERUZBVUxUX0NPTlRFTlRfVFlQRSA9ICd0ZXh0L3BsYWluO2NoYXJzZXQ9VVMtQVNDSUknO1xuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2UoZGF0YVVSSSkge1xuICBjb25zdCBtYXRjaCA9IFBBVFRFUk4uZXhlYyhkYXRhVVJJKTtcblxuICBpZiAoIW1hdGNoKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgWywgY29udGVudFR5cGUsICwgZW5jb2RpbmcsIGJhc2U2NF0gPSBtYXRjaDtcblxuICBpZiAoZW5jb2RpbmcgIT09ICdiYXNlNjQnKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgcmV0dXJuIHsgYmFzZTY0LCBjb250ZW50VHlwZTogY29udGVudFR5cGUgfHwgREVGQVVMVF9DT05URU5UX1RZUEUsIGVuY29kaW5nIH07XG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHJlYWREYXRhVVJJVG9CbG9iKGRhdGFVUkkpIHtcbiAgY29uc3QgcGFyc2VkID0gcGFyc2UoZGF0YVVSSSk7XG5cbiAgaWYgKCFwYXJzZWQpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICByZXR1cm4gbmV3IEJsb2IoW3RvQnl0ZUFycmF5KHBhcnNlZC5iYXNlNjQpXSwgeyB0eXBlOiBwYXJzZWQuY29udGVudFR5cGUgfSk7XG59XG4iXX0=