{"version":3,"sources":["jsdelivr-header.js","/npm/node-proxy-fetch@1.0.0/dist/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,aACA,IAAI,gBAAmB,MAAQ,KAAK,iBAAoB,SAAU,GAC9D,OAAQ,GAAO,EAAI,WAAc,EAAM,CAAE,QAAW,EACxD,EACA,OAAO,eAAe,QAAS,aAAc,CAAE,OAAO,IACtD,MAAM,YAAc,gBAAgB,QAAQ,cACtC,QAAU,gBAAgB,QAAQ,UAClC,UAAY,gBAAgB,QAAQ,YACpC,qBAAuB,QAAQ,8BAC/B,mBAAqB,QAAQ,4BAC7B,mBAAqB,gBAAgB,QAAQ,qBAC7C,MAAQ,OAAS,YAAW,OAAM,eAAc,uBAClD,IACI,GAAa,SAAT,EAAiB,CAQjB,aAPuB,QAAQ,QAAQ,IAAI,EAAW,CAClD,QAAS,CACL,aAAc,mBAAmB,QAAQ,eACtC,GAAc,YAElB,GAAc,QAGzB,CACK,GAAa,aAAT,EAAqB,CAC1B,IAAI,EACJ,IAAK,EACD,YAC6B,IAA7B,EAAiB,UACjB,EAAiB,QAAU,UACiB,IAA5C,EAAiB,yBACjB,EAAiB,wBAAyB,GAC9C,MAAM,EAAkB,EAAiB,gBAAkB,EAAiB,gBAAkB,CAC1F,eACA,2BACA,0BACA,sBACG,EAAiB,eAAe,MAAQ,IAE3C,EAAiB,eAAe,aACzB,EAAiB,eAAe,KAC3C,MAAM,QAAgB,YAAY,QAAQ,OAAO,CAC7C,KAAM,KACH,EAAiB,gBAElB,QAAa,EAAQ,UAK3B,SAJM,EAAK,aAAa,mBAAmB,QAAQ,mBAC7C,EAAK,KAAK,SACV,EAAK,eAAe,EAAiB,SAC3C,QAAa,EAAK,UACd,EAAiB,uBAAwB,CACzC,MAAM,EAAI,UAAU,QAAQ,KAAK,IACjC,EAAI,qBAAqB,oBAAoB,CAAE,IAAG,QAAS,EAAiB,WAC5E,EAAI,mBAAmB,kBAAkB,CAAE,IAAG,QAAS,EAAiB,UACxE,EAAO,EAAE,MACb,CAEA,aADM,EAAQ,QACP,CACX,CACJ,CACA,MAAO,GAGH,MAFA,QAAQ,IAAI,GACZ,QAAQ,MAAM,yCACR,IAAI,MAAM,EACpB,GAEJ,QAAQ,QAAU","file":"/npm/node-proxy-fetch@1.0.0/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/node-proxy-fetch@1.0.0/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","\"use strict\";\r\nvar __importDefault = (this && this.__importDefault) || function (mod) {\r\n    return (mod && mod.__esModule) ? mod : { \"default\": mod };\r\n};\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nconst puppeteer_1 = __importDefault(require(\"puppeteer\"));\r\nconst axios_1 = __importDefault(require(\"axios\"));\r\nconst cheerio_1 = __importDefault(require(\"cheerio\"));\r\nconst convertAnchorHrefs_1 = require(\"./utils/convertAnchorHrefs\");\r\nconst convertImageSrcs_1 = require(\"./utils/convertImageSrcs\");\r\nconst random_useragent_1 = __importDefault(require(\"random-useragent\"));\r\nconst fetch = async ({ targetURL, type, axiosOptions, puppeteerOptions }) => {\r\n    try {\r\n        if (type === 'BLOB') {\r\n            const response = await axios_1.default.get(targetURL, {\r\n                headers: {\r\n                    'User-Agent': random_useragent_1.default.getRandom(),\r\n                    ...axiosOptions?.headers\r\n                },\r\n                ...axiosOptions?.config\r\n            });\r\n            return response;\r\n        }\r\n        else if (type === 'DOCUMENT') {\r\n            let data = undefined;\r\n            if (!puppeteerOptions)\r\n                return;\r\n            if (puppeteerOptions.waitFor === undefined)\r\n                puppeteerOptions.waitFor = 5000;\r\n            if (puppeteerOptions.transformExternalLinks === undefined)\r\n                puppeteerOptions.transformExternalLinks = true;\r\n            const launchArguments = puppeteerOptions.launchArguments ? puppeteerOptions.launchArguments : [\r\n                '--no-sandbox',\r\n                '--disable-setuid-sandbox',\r\n                '--disable-dev-shm-usage',\r\n                '--single-process',\r\n                ...puppeteerOptions.launchOptions?.args ?? []\r\n            ];\r\n            if (puppeteerOptions.launchOptions?.args)\r\n                delete puppeteerOptions.launchOptions?.args;\r\n            const browser = await puppeteer_1.default.launch({\r\n                args: launchArguments,\r\n                ...puppeteerOptions.launchOptions\r\n            });\r\n            const page = await browser.newPage();\r\n            await page.setUserAgent(random_useragent_1.default.getRandom());\r\n            await page.goto(targetURL);\r\n            await page.waitForTimeout(puppeteerOptions.waitFor);\r\n            data = await page.content();\r\n            if (puppeteerOptions.transformExternalLinks) {\r\n                const $ = cheerio_1.default.load(data);\r\n                (0, convertAnchorHrefs_1.convertAnchorHrefs)({ $, baseURL: puppeteerOptions.baseURL });\r\n                (0, convertImageSrcs_1.convertImageSrcs)({ $, baseURL: puppeteerOptions.baseURL });\r\n                data = $.html();\r\n            }\r\n            await browser.close();\r\n            return data;\r\n        }\r\n    }\r\n    catch (e) {\r\n        console.log(e);\r\n        console.error('node-proxy-fetch encountered an error');\r\n        throw new Error(e);\r\n    }\r\n};\r\nexports.default = fetch;\r\n"]}