UNPKG

filestack-js

Version:

Official JavaScript library for Filestack

68 lines (66 loc) 6.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isFacebook = exports.isMobile = exports.getVersion = exports.b64 = exports.md5 = void 0; var tslib_1 = require("tslib"); /* * Copyright (c) 2019 by Filestack. * Some rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ var SparkMD5 = tslib_1.__importStar(require("spark-md5")); var mobileRegexp = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino|android|ipad|playbook|silk/i; /** * Calculates a MD5 checksum for passed buffer * @private * @param data Data to be hashed * @returns base64 encoded MD5 hash */ var md5 = function (data) { /* istanbul ignore next */ return btoa(SparkMD5.ArrayBuffer.hash(data, true)); }; exports.md5 = md5; /** * return based string * * @param data */ var b64 = function (data, safeUrl) { if (safeUrl === void 0) { safeUrl = false; } var b64 = btoa(data); if (safeUrl) { return b64.replace(/\//g, '_').replace(/\+/g, '-'); } return b64; }; exports.b64 = b64; /** * Return currently used filestack-js sdk version */ var getVersion = function () { return 'JS-4.0.3'; }; exports.getVersion = getVersion; /** * Returns if browser is a mobile device (if node env always return false) */ /* istanbul ignore next */ var isMobile = function () { return navigator && navigator.userAgent && mobileRegexp.test(navigator.userAgent); }; exports.isMobile = isMobile; /** * Check if application is runned in facebook browser */ var isFacebook = function () { return navigator && navigator.userAgent && /\[FB.*;/i.test(navigator.userAgent); }; exports.isFacebook = isFacebook; //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvdXRpbHMvaW5kZXguYnJvd3Nlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsMERBQXNDO0FBRXRDLElBQU0sWUFBWSxHQUFHLDRWQUE0VixDQUFDO0FBRWxYOzs7OztHQUtHO0FBQ0ksSUFBTSxHQUFHLEdBQUcsVUFBQyxJQUFTO0lBQzNCLDBCQUEwQjtJQUMxQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztBQUNyRCxDQUFDLENBQUM7QUFIVyxRQUFBLEdBQUcsT0FHZDtBQUVGOzs7O0dBSUc7QUFDSSxJQUFNLEdBQUcsR0FBRyxVQUFDLElBQVksRUFBRSxPQUF3QjtJQUF4Qix3QkFBQSxFQUFBLGVBQXdCO0lBQ3hELElBQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUV2QixJQUFJLE9BQU8sRUFBRTtRQUNYLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztLQUNwRDtJQUVELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQyxDQUFDO0FBUlcsUUFBQSxHQUFHLE9BUWQ7QUFFRjs7R0FFRztBQUNJLElBQU0sVUFBVSxHQUFHO0lBQ3hCLE9BQU8sZUFBZSxDQUFDO0FBQ3pCLENBQUMsQ0FBQztBQUZXLFFBQUEsVUFBVSxjQUVyQjtBQUVGOztHQUVHO0FBQ0gsMEJBQTBCO0FBQ25CLElBQU0sUUFBUSxHQUFHLGNBQU0sT0FBQSxTQUFTLElBQUksU0FBUyxDQUFDLFNBQVMsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBMUUsQ0FBMEUsQ0FBQztBQUE1RixRQUFBLFFBQVEsWUFBb0Y7QUFFekc7O0dBRUc7QUFDSSxJQUFNLFVBQVUsR0FBRyxjQUFNLE9BQUEsU0FBUyxJQUFJLFNBQVMsQ0FBQyxTQUFTLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQXhFLENBQXdFLENBQUM7QUFBNUYsUUFBQSxVQUFVLGNBQWtGIiwiZmlsZSI6ImxpYi91dGlscy9pbmRleC5icm93c2VyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOSBieSBGaWxlc3RhY2suXG4gKiBTb21lIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCAqIGFzIFNwYXJrTUQ1IGZyb20gJ3NwYXJrLW1kNSc7XG5cbmNvbnN0IG1vYmlsZVJlZ2V4cCA9IC8oYW5kcm9pZHxiYlxcZCt8bWVlZ28pLittb2JpbGV8YXZhbnRnb3xiYWRhXFwvfGJsYWNrYmVycnl8YmxhemVyfGNvbXBhbHxlbGFpbmV8ZmVubmVjfGhpcHRvcHxpZW1vYmlsZXxpcChob25lfG9kKXxpcmlzfGtpbmRsZXxsZ2UgfG1hZW1vfG1pZHB8bW1wfG1vYmlsZS4rZmlyZWZveHxuZXRmcm9udHxvcGVyYSBtKG9ifGluKWl8cGFsbSggb3MpP3xwaG9uZXxwKGl4aXxyZSlcXC98cGx1Y2tlcnxwb2NrZXR8cHNwfHNlcmllc1s0Nl0wfHN5bWJpYW58dHJlb3x1cFxcLihicm93c2VyfGxpbmspfHZvZGFmb25lfHdhcHx3aW5kb3dzIChjZXxwaG9uZSl8eGRhfHhpaW5vfGFuZHJvaWR8aXBhZHxwbGF5Ym9va3xzaWxrL2k7XG5cbi8qKlxuICogQ2FsY3VsYXRlcyBhIE1ENSBjaGVja3N1bSBmb3IgcGFzc2VkIGJ1ZmZlclxuICogQHByaXZhdGVcbiAqIEBwYXJhbSBkYXRhICBEYXRhIHRvIGJlIGhhc2hlZFxuICogQHJldHVybnMgICAgIGJhc2U2NCBlbmNvZGVkIE1ENSBoYXNoXG4gKi9cbmV4cG9ydCBjb25zdCBtZDUgPSAoZGF0YTogYW55KTogc3RyaW5nID0+IHtcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgcmV0dXJuIGJ0b2EoU3BhcmtNRDUuQXJyYXlCdWZmZXIuaGFzaChkYXRhLCB0cnVlKSk7XG59O1xuXG4vKipcbiAqIHJldHVybiBiYXNlZCBzdHJpbmdcbiAqXG4gKiBAcGFyYW0gZGF0YVxuICovXG5leHBvcnQgY29uc3QgYjY0ID0gKGRhdGE6IHN0cmluZywgc2FmZVVybDogYm9vbGVhbiA9IGZhbHNlKTogc3RyaW5nID0+IHtcbiAgY29uc3QgYjY0ID0gYnRvYShkYXRhKTtcblxuICBpZiAoc2FmZVVybCkge1xuICAgIHJldHVybiBiNjQucmVwbGFjZSgvXFwvL2csICdfJykucmVwbGFjZSgvXFwrL2csICctJyk7XG4gIH1cblxuICByZXR1cm4gYjY0O1xufTtcblxuLyoqXG4gKiBSZXR1cm4gY3VycmVudGx5IHVzZWQgZmlsZXN0YWNrLWpzIHNkayB2ZXJzaW9uXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRWZXJzaW9uID0gKCkgPT4ge1xuICByZXR1cm4gJ0pTLUB7VkVSU0lPTn0nO1xufTtcblxuLyoqXG4gKiBSZXR1cm5zIGlmIGJyb3dzZXIgaXMgYSBtb2JpbGUgZGV2aWNlIChpZiBub2RlIGVudiBhbHdheXMgcmV0dXJuIGZhbHNlKVxuICovXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuZXhwb3J0IGNvbnN0IGlzTW9iaWxlID0gKCkgPT4gbmF2aWdhdG9yICYmIG5hdmlnYXRvci51c2VyQWdlbnQgJiYgbW9iaWxlUmVnZXhwLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCk7XG5cbi8qKlxuICogQ2hlY2sgaWYgYXBwbGljYXRpb24gaXMgcnVubmVkIGluIGZhY2Vib29rIGJyb3dzZXJcbiAqL1xuZXhwb3J0IGNvbnN0IGlzRmFjZWJvb2sgPSAoKSA9PiBuYXZpZ2F0b3IgJiYgbmF2aWdhdG9yLnVzZXJBZ2VudCAmJiAvXFxbRkIuKjsvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpO1xuIl19