{"version":3,"sources":["jsdelivr-header.js","/npm/electron-handlebars@2.0.0/lib/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,MAAM,MAAE,OAAU,QAAQ,OACpB,GAAK,QAAQ,MACb,KAAO,QAAQ,QACf,WAAa,QAAQ,cACrB,KAAO,QAAQ,QAEf,OAAS,QAAQ,kBACjB,IAAE,IAAG,SAAE,UAAa,QAAQ,YAC5B,KAAO,QAAQ,YAEf,QAAW,IACf,MAAM,EAAS,MAAM,GACf,EAAU,mBAAmB,EAAO,UAE1C,MAAyB,UAArB,QAAQ,UAAyB,EAAO,KAAK,OAG1C,EAFE,EAAQ,OAAO,EAEV,EAGV,sBAAyB,IACzB,IAEF,QAAQ,MAAM,kCACd,QAAQ,MAAM,GAEhB,EAGI,SAAW,KAAK,OAAO,QAM7B,OAAO,QAAU,CAAC,EAAS,CAAC,KAC1B,IAAI,GAAG,SAAS,IAAM,SAAS,wBAAwB,QAAQ,CAAC,EAAK,KACnE,MAAM,EAAO,QAAQ,EAAI,KACzB,KAAK,GAAG,SAAR,CAAkB,EAAM,QAAQ,MAAM,IACpC,MAAM,EAAM,KAAK,QAAQ,GACzB,GAAI,CAAC,OAAQ,eAAe,SAAS,GAAM,CACzC,MAAM,EAAW,WAAW,QAAQ,GAC9B,EAAO,IAAI,OAAO,EAAS,IACjC,EAAK,CAAE,OAAM,mBACf,KAAO,CACL,MAAM,EAAO,IAAI,OAAO,GACxB,EAAK,CAAE,OAAM,SAAU,KAAK,OAAO,IACrC,KACC,OAAO,IACR,MAAM,EAAM,QAAQ,OAAO,EAAI,oBAC/B,EAAK,CAAE,KAAM,IAAI,OAAO,GAAM,mBAAW,GACzC,KACA,sBAAsB","file":"/npm/electron-handlebars@2.0.0/lib/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/electron-handlebars@2.0.0/lib/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","const { parse } = require('url');\nconst fs = require('fs');\nconst path = require('path');\nconst handlebars = require('handlebars');\nconst mime = require('mime');\n\nconst escape = require('lodash/escape');\nconst { app, protocol } = require('electron');\nconst pify = require('any-pify');\n\nconst getPath = (url) => {\n  const parsed = parse(url);\n  const decoded = decodeURIComponent(parsed.pathname);\n  // Fix windows paths (e.g., file:///c:/...)\n  if (process.platform === 'win32' && !parsed.host.trim()) {\n    return decoded.substr(1);\n  }\n  return decoded;\n};\n\nconst interceptErrorHandler = (err) => {\n  if (err) {\n    /* eslint-disable no-console */\n    console.error('Handlebars interception error.');\n    console.error(err);\n    /* eslint-enable no-console */\n  }\n};\n\nconst mimeType = mime.lookup('html');\n\n/**\n * Main export. Accepts local variable bindings and handles handlebars templates\n * loaded in a main process in an electron app.\n */\nmodule.exports = (locals = {}) => {\n  app.on('ready', () => protocol.interceptBufferProtocol('file', (req, done) => {\n    const file = getPath(req.url);\n    pify(fs.readFile)(file, 'utf8').then((source) => {\n      const ext = path.extname(file);\n      if (['.hbs', '.handlebars'].includes(ext)) {\n        const template = handlebars.compile(source);\n        const data = new Buffer(template(locals));\n        done({ data, mimeType });\n      } else {\n        const data = new Buffer(source);\n        done({ data, mimeType: mime.lookup(ext) });\n      }\n    }).catch((err) => {\n      const str = `<pre>${escape(err.toString())}</pre>`;\n      done({ data: new Buffer(str), mimeType });\n    });\n  }), interceptErrorHandler);\n};\n"]}