{"version":3,"sources":["jsdelivr-header.js","/npm/good-blender@1.0.2/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACcA,MAAM,IAAM,QAAQ,OACd,KAAO,QAAQ,QAErB,OAAO,QAAU,CAAC,EAAS,KACvB,MAAM,EAAO,IAAI,MAAyB,iBAAZ,EAAuB,EAAU,IACzD,EAAO,IAAI,MAAyB,iBAAZ,EAAuB,EAAU,IAEzD,EAAQ,GA0Cd,OAxCI,EAAK,UACL,EAAM,KAAK,EAAK,UAChB,EAAM,KAAK,OACJ,EAAK,WACZ,EAAM,KAAK,EAAK,UAChB,EAAM,KAAK,OAGX,EAAK,KACL,EAAM,KAAK,EAAK,MACT,EAAK,OACR,EAAK,OACL,EAAM,KAAK,EAAK,MAChB,EAAM,KAAK,MAEf,EAAM,KAAK,EAAK,OAGhB,EAAK,SACL,EAAM,KACF,IAAI,QACA,KAAK,UACoB,MAArB,EAAK,SAAS,GACd,EAAK,SACL,KAAK,KAAK,EAAK,UAAY,GAAI,EAAK,WACrC,KAGJ,EAAK,UACZ,EAAM,KAAK,IAAI,QAAQ,EAAK,SAAU,KAGtC,EAAK,QACL,EAAM,KAAK,EAAK,QAGhB,EAAK,MACL,EAAM,KAAK,EAAK,MAGb,EAAM,KAAK,GAAG","file":"/npm/good-blender@1.0.2/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/good-blender@1.0.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","/*\nhttps://nodejs.org/docs/latest/api/url.html#url_url_strings_and_url_objects\n┌─────────────────────────────────────────────────────────────────────────────────────────────┐\n│                                            href                                             │\n├──────────┬──┬─────────────────────┬─────────────────────┬───────────────────────────┬───────┤\n│ protocol │  │        auth         │        host         │           path            │ hash  │\n│          │  │                     ├──────────────┬──────┼──────────┬────────────────┤       │\n│          │  │                     │   hostname   │ port │ pathname │     search     │       │\n│          │  │                     │              │      │          ├─┬──────────────┤       │\n│          │  │                     │              │      │          │ │    query     │       │\n\"  https:   //    user   :   pass   @ sub.host.com : 8080   /p/a/t/h  ?  query=string   #hash \"\n│          │  │          │          │   hostname   │ port │          │                │       │\n│          │  │          │          ├──────────────┴──────┤          │                │       │\n│ protocol │  │ username │ password │        host         │          │                │       │\n├──────────┴──┼──────────┴──────────┼─────────────────────┤          │                │       │\n│   origin    │                     │       origin        │ pathname │     search     │ hash  │\n├─────────────┴─────────────────────┴─────────────────────┴──────────┴────────────────┴───────┤\n│                                            href                                             │\n└─────────────────────────────────────────────────────────────────────────────────────────────┘\n*/\nconst url = require('url');\nconst path = require('path');\n\nmodule.exports = (request, context) => {\n    const rurl = url.parse(typeof request === 'string' ? request : '');\n    const curl = url.parse(typeof context === 'string' ? context : '');\n\n    const parts = [];\n\n    if (rurl.protocol) {\n        parts.push(rurl.protocol);\n        parts.push('//');\n    } else if (curl.protocol) {\n        parts.push(curl.protocol);\n        parts.push('//');\n    }\n\n    if (rurl.host) {\n        parts.push(rurl.host);\n    } else if (curl.host) {\n        if (curl.auth) {\n            parts.push(curl.auth);\n            parts.push('@');\n        }\n        parts.push(curl.host);\n    }\n\n    if (rurl.pathname) {\n        parts.push(\n            url.resolve(\n                path.normalize(\n                    rurl.pathname[0] === '/' ?\n                    rurl.pathname :\n                    path.join(curl.pathname || '', rurl.pathname)\n                ), ''\n            )\n        );\n    } else if (curl.pathname) {\n        parts.push(url.resolve(curl.pathname, ''));\n    }\n\n    if (rurl.search) {\n        parts.push(rurl.search);\n    }\n\n    if (rurl.hash) {\n        parts.push(rurl.hash);\n    }\n\n    return parts.join('');\n}"]}