{"version":3,"sources":["jsdelivr-header.js","/npm/falafel@2.2.5/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,IAAI,MAAQ,QAAQ,SAChB,QAAU,QAAQ,WAClB,KAAO,QAAQ,QAwDnB,SAAS,cAAe,EAAM,EAAQ,GAOlC,GANA,EAAK,OAAS,EAEd,EAAK,OAAS,WACV,OAAO,EAAO,MAAM,EAAK,MAAO,EAAK,KAAK,KAAK,GACnD,EAEI,EAAK,QAAiC,iBAAhB,EAAK,OAAqB,CAChD,IAAI,EAAO,EAAK,OAChB,IAAK,IAAI,KAAO,EACR,OAAO,UAAU,eAAe,KAAK,EAAM,KAC3C,EAAO,GAAO,EAAK,IAG3B,EAAK,OAAS,CAClB,MAEI,EAAK,OAAS,EAGlB,SAAS,EAAQ,GACb,EAAO,EAAK,OAAS,EACrB,IAAK,IAAI,EAAI,EAAK,MAAQ,EAAG,EAAI,EAAK,IAAK,IACvC,EAAO,GAAK,EAEpB,CACJ,CAhFA,OAAO,QAAU,SAAU,EAAK,EAAM,GACd,mBAAT,IACP,EAAK,EACL,EAAO,CAAC,GAER,GAAsB,iBAAR,GAA6C,WAAzB,EAAI,YAAY,KAClD,EAAM,EAAI,WAEL,GAAsB,iBAAR,IAEnB,GADA,EAAO,GACI,cACJ,EAAK,QAGG,iBADnB,OAAc,IAAR,EAAoB,EAAK,OAAS,KACX,EAAM,OAAO,IAC1C,IACI,GADS,EAAK,QAAU,OACX,MAAM,EAAK,GAExB,EAAS,CACT,OAAS,EAAI,MAAM,IACnB,SAAW,WAAc,OAAO,EAAO,OAAO,KAAK,GAAI,EACvD,QAAU,WAAc,OAAO,EAAO,UAAW,GAEjD,KAAK,QAAQ,SACb,EAAO,KAAK,QAAQ,QAAU,EAAO,UA2BzC,OAvBA,SAAU,EAAM,EAAM,GAGlB,IAAK,IAAI,KAFT,cAAc,EAAM,EAAQ,EAAO,QAEnB,EACZ,GAAY,WAAR,GAAqB,OAAO,UAAU,eAAe,KAAK,EAAM,GAApE,CAIA,IAAI,EAAQ,EAAK,GACjB,GAAI,QAAQ,GACR,IAAK,IAAI,EAAI,EAAG,EAAI,EAAM,OAAQ,GAAK,EAC/B,EAAM,IAA+B,iBAAlB,EAAM,GAAG,MAC5B,EAAK,EAAM,GAAI,QAIlB,GAA+B,iBAAf,EAAM,MAC3B,EAAK,EAAO,EAXhB,CAcJ,EAAG,EACN,CArBD,CAqBG,OAAK,GAED,CACX","file":"/npm/falafel@2.2.5/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.37.0.\n * Original file: /npm/falafel@2.2.5/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","var acorn = require('acorn');\nvar isArray = require('isarray');\nvar util = require('util');\n\nmodule.exports = function (src, opts, fn) {\n    if (typeof opts === 'function') {\n        fn = opts;\n        opts = {};\n    }\n    if (src && typeof src === 'object' && src.constructor.name === 'Buffer') {\n        src = src.toString();\n    }\n    else if (src && typeof src === 'object') {\n        opts = src;\n        src = opts.source;\n        delete opts.source;\n    }\n    src = src === undefined ? opts.source : src;\n    if (typeof src !== 'string') src = String(src);\n    var parser = opts.parser || acorn;\n    var ast = parser.parse(src, opts);\n    \n    var result = {\n        chunks : src.split(''),\n        toString : function () { return result.chunks.join('') },\n        inspect : function () { return result.toString() }\n    };\n    if (util.inspect.custom) {\n        result[util.inspect.custom] = result.toString;\n    }\n    var index = 0;\n    \n    (function walk (node, parent) {\n        insertHelpers(node, parent, result.chunks);\n        \n        for (var key in node) {\n            if (key === 'parent' || !Object.prototype.hasOwnProperty.call(node, key)) {\n                continue;\n            }\n            \n            var child = node[key];\n            if (isArray(child)) {\n                for (var i = 0; i < child.length; i += 1) {\n                    if (child[i] && typeof child[i].type === 'string') {\n                        walk(child[i], node);\n                    }\n                }\n            }\n            else if (child && typeof child.type === 'string') {\n                walk(child, node);\n            }\n        }\n        fn(node);\n    })(ast, undefined);\n    \n    return result;\n};\n \nfunction insertHelpers (node, parent, chunks) {\n    node.parent = parent;\n    \n    node.source = function () {\n        return chunks.slice(node.start, node.end).join('');\n    };\n    \n    if (node.update && typeof node.update === 'object') {\n        var prev = node.update;\n        for (var key in prev) {\n            if (Object.prototype.hasOwnProperty.call(prev, key)) {\n                update[key] = prev[key];\n            }\n        }\n        node.update = update;\n    }\n    else {\n        node.update = update;\n    }\n    \n    function update (s) {\n        chunks[node.start] = s;\n        for (var i = node.start + 1; i < node.end; i++) {\n            chunks[i] = '';\n        }\n    }\n}\n"]}