{"version":3,"sources":["jsdelivr-header.js","/npm/rf-api-url2pdf@0.4.2/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACHA,MAAM,QAAU,QAAQ,gBAClB,GAAK,QAAQ,MAEnB,IAAI,YAAc,CAAC,EAEnB,OAAO,QAAQ,MAAQ,SAAU,GAW9B,OARA,aADA,EAAU,GAAW,CAAC,IACG,CAAC,OACH,IAAnB,EAAQ,OACT,YAAY,OAAS,EAAQ,OAE7B,YAAY,QAAS,EAIjB,CAEJ,OAAQ,SAAU,EAAM,EAAU,GAG/B,EAAU,GAAW,CAAC,EACtB,IAAI,EAAO,YACX,EAAK,YAAc,EAAQ,aAAe,SAClB,IAApB,EAAQ,UAAuB,EAAK,QAAU,EAAQ,cACpC,IAAlB,EAAQ,QAAqB,EAAK,MAAQ,EAAQ,YAC/B,IAAnB,EAAQ,SAAsB,EAAK,OAAS,EAAQ,QAGpC,iBAAT,IACR,EAAO,CAAC,IAIX,IAAI,EAAW,GACf,IAAK,IAAI,KAAO,EACb,EAAS,KAAK,QAAQ,UAAU,EAAK,IAIxC,QAAQ,IAAI,GAAU,MAAK,IAExB,GAAI,EAAQ,aACT,EAAS,KAAM,QAGf,GAAyB,IAArB,EAAU,OAAc,CACzB,IAAI,EAAc,GAAG,aAAa,EAAU,IAC5C,GAAG,WAAW,EAAU,IACpB,EAAK,SAAQ,EAAc,IAAI,OAAO,EAAa,UAAU,UACjE,EAAS,KAAM,EAGlB,KAAO,CACJ,IAAI,EAAc,QAAQ,KAAK,EAAW,KAAM,YAC5C,EAAK,SAAQ,EAAc,IAAI,OAAO,EAAa,UAAU,UACjE,EAAS,KAAM,IAAI,OAAO,EAAa,UAAU,SACpD,CACH,IAEA,MAAM,EACZ,EAIN","file":"/npm/rf-api-url2pdf@0.4.2/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/rf-api-url2pdf@0.4.2/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","/**\n * API service: url2pdf\n */\nconst url2pdf = require('url2pdf-plus');\nconst fs = require('fs');\n\nlet mainOptions = {};\n\nmodule.exports.start = function (options) {\n\n   options = options || {};\n   mainOptions = options || {};\n   if (options.buffer !== undefined) {\n      mainOptions.buffer = options.buffer;\n   } else {\n      mainOptions.buffer = true;\n   }\n\n\n   return {\n\n      getPdf: function (urls, callback, options) {\n\n         // options\n         options = options || {};\n         let opts = mainOptions;\n         opts.loadTimeout = options.loadTimeout || 2000;\n         if (options.saveDir !== undefined) opts.saveDir = options.saveDir;\n         if (options.debug !== undefined) opts.debug = options.debug;\n         if (options.buffer !== undefined) opts.buffer = options.buffer;\n\n\n         if (typeof urls === 'string') { // allow passing a single url as string\n            urls = [urls];\n         }\n\n         // create a promise for each url\n         let promises = [];\n         for (let url of urls) {\n            promises.push(url2pdf.renderPdf(url, opts));\n         }\n\n         // Wait until all PDFs are finished ...\n         Promise.all(promises).then(filepaths => {\n\n            if (options.onlyFilePath) {\n               callback(null, filepaths);\n            } else {\n               // single pdf => return it\n               if (filepaths.length === 1) {\n                  let fileContent = fs.readFileSync(filepaths[0]);\n                  fs.unlinkSync(filepaths[0]);\n                  if (opts.buffer) fileContent = new Buffer(fileContent, 'binary').toJSON();\n                  callback(null, fileContent);\n\n               // several pdfs => merge them and return them\n               } else {\n                  let fileContent = url2pdf.join(filepaths, null, 'onlyFile');\n                  if (opts.buffer) fileContent = new Buffer(fileContent, 'binary').toJSON();\n                  callback(null, new Buffer(fileContent, 'binary').toJSON());\n               }\n            }\n\n         }).catch(callback);\n      }\n\n\n   };\n};\n"]}