UNPKG

ts-open-graph-scraper

Version:

Node.js scraper module for Open Graph and Twitter Card info, based on https://github.com/jshemas/openGraphScraper

32 lines (31 loc) 1.28 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function endsWith(input, suffix) { return input.indexOf(suffix, input.length - suffix.length) !== -1; } exports.endsWith = endsWith; function validate(inputUrl, _inputTimeout) { var _a, _b, _c; var returnInputUrl = null; var returnInputTimeout = 2000; if (validateInputs((_a = inputUrl) === null || _a === void 0 ? void 0 : _a.toString())) returnInputUrl = validateUrl((_b = inputUrl) === null || _b === void 0 ? void 0 : _b.toString()); var inputTimeout = parseInt("" + _inputTimeout, 10); if (validateInputs((_c = inputUrl) === null || _c === void 0 ? void 0 : _c.toString()) && validateTimeout(inputTimeout)) returnInputTimeout = inputTimeout; return { returnInputUrl: returnInputUrl, returnInputTimeout: returnInputTimeout }; } exports.validate = validate; function validateInputs(input) { return (!(input === null || typeof input === 'undefined' || !input || input.length < 1)); } function validateUrl(inputUrl) { return (!/^(f|ht)tps?:\/\//i.test(inputUrl)) ? 'http://' + inputUrl : inputUrl; } function validateTimeout(inputTimeout) { if (!/^\d{1,10}$/.test("" + inputTimeout)) return false; return true; }