{"version":3,"sources":["jsdelivr-header.js","/npm/image-saver@0.1.3/image-saver.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,IAAI,KAAO,QAAQ,QACjB,GAAK,QAAQ,MACb,KAAO,QAAQ,QACf,YAAc,QAAQ,eAExB,SAAS,KAAK,EAAM,EAAM,GACxB,QAAQ,IAAI,kBAAmB,EAAM,KAErC,IAAI,EAAS,IAAI,OACf,EAAK,QAAQ,2BAA4B,IACzC,UAGF,GAAG,UAAU,EAAM,EAAQ,EAC7B,CAEA,SAAS,OAAO,EAAW,GAEzB,GAAK,GAAG,WAAW,GAQnB,OAHA,QAAQ,IAAI,qBAAsB,GAClC,QAAQ,IAAI,oBAAqB,KAAK,QAAQ,IAEvC,KAAK,cAAa,SAAS,EAAS,GACzC,OAAO,EAAS,EAAU,EAC5B,IAAG,OAAO,GATR,QAAQ,MAAM,8BAA+B,EAUjD,CAEA,SAAS,OAAO,EAAS,EAAU,GAEjC,IAAI,EAAO,GAEX,EAAQ,GAAG,QAAQ,SAAS,GAC1B,GAAQ,CACV,IAEA,EAAQ,GAAG,OAAO,WAEhB,IAAI,EAAS,YAAY,MAAM,GAW/B,KAVS,KAAK,QAAQ,EAAW,EAAO,MAC/B,EAAO,MAEhB,SAAiB,GACf,EAAS,UAAU,IAAK,CACtB,8BAAgC,MAElC,EAAS,KACX,GAGF,GACF,CAEA,QAAQ,aAAe,OACvB,QAAQ,KAAO","file":"/npm/image-saver@0.1.3/image-saver.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/image-saver@0.1.3/image-saver.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","var http = require(\"http\"),\n  fs = require(\"fs\"),\n  path = require('path'),\n  querystring = require('querystring');\n\nfunction save(name, data, callback){\n  console.log(\"Saving image to\", name, \"…\");\n  \n  var buffer = new Buffer(\n    data.replace(/^data:image\\/\\w+;base64,/, \"\"),\n    'base64'\n  );\n\n  fs.writeFile(name, buffer, callback);\n}\n\nfunction server(directory, port){\n\n  if (!fs.existsSync(directory)){\n    console.error(\"ERROR: Path does not exist:\", directory);\n    return;\n  }\n\n  console.log(\"Listening on port:\", port);\n  console.log(\"Target directory:\", path.resolve(directory));\n\n  return http.createServer(function(request, response){\n    handle(request, response, directory);\n  }).listen(port);\n}\n\nfunction handle(request, response, directory) {\n\n  var body = \"\";\n\n  request.on('data', function(data) {\n    body += data;\n  });\n\n  request.on('end', function(){\n    \n    var params = querystring.parse(body),\n      name = path.resolve(directory, params.name),\n      data = params.data;\n\n    function respond(error){\n      response.writeHead(200, {\n        'Access-Control-Allow-Origin' : '*'\n      });\n      response.end();\n    }\n\n    save(name, data, respond);\n  });\n}\n\nexports.createServer = server;\nexports.save = save;\n\n"]}