@jeetiss/upload
Version:
Library for work with Uploadcare Upload API
31 lines (30 loc) • 949 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var isNode_1 = require("../tools/isNode");
/**
* FileData type guard.
*/
exports.isFileData = function (data) {
return (data !== undefined &&
((!isNode_1.isNode() && data instanceof Blob) ||
(!isNode_1.isNode() && data instanceof File) ||
(isNode_1.isNode() && data instanceof Buffer)));
};
/**
* Uuid type guard.
*/
exports.isUuid = function (data) {
var UUID_REGEX = '[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}';
var regExp = new RegExp(UUID_REGEX);
return !exports.isFileData(data) && regExp.test(data);
};
/**
* Url type guard.
*
* @param {FileData | Url | Uuid} data
*/
exports.isUrl = function (data) {
var URL_REGEX = '^(?:\\w+:)?\\/\\/([^\\s\\.]+\\.\\S{2}|localhost[\\:?\\d]*)\\S*$';
var regExp = new RegExp(URL_REGEX);
return !exports.isFileData(data) && regExp.test(data);
};