UNPKG

4.54 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../../src/utils/stack-trace-utils.js"],"names":["stackTrace","require","codeFrameColumns","fs","path","chalk","isNodeInternalModulePath","gatsbyLocation","dirname","resolve","reduxThunkLocation","reduxLocation","getNonGatsbyCallSite","get","find","callSite","getFileName","includes","getNonGatsbyCodeFrame","highlightCode","fileName","line","getLineNumber","column","getColumnNumber","code","readFileSync","encoding","codeFrame","start","getNonGatsbyCodeFrameFormatted","possibleCodeFrame","bold","module","exports"],"mappings":";;AAAA,MAAMA,UAAU,GAAGC,OAAO,CAAE,aAAF,CAA1B;;AACA,MAAM;AAAEC,EAAAA;AAAF,IAAuBD,OAAO,CAAE,mBAAF,CAApC;;AACA,MAAME,EAAE,GAAGF,OAAO,CAAE,UAAF,CAAlB;;AACA,MAAMG,IAAI,GAAGH,OAAO,CAAE,MAAF,CAApB;;AACA,MAAMI,KAAK,GAAGJ,OAAO,CAAE,OAAF,CAArB;;AACA,MAAM;AAAEK,EAAAA;AAAF,IAA+BL,OAAO,CAAE,mBAAF,CAA5C;;AAEA,MAAMM,cAAc,GAAGH,IAAI,CAACI,OAAL,CAAaP,OAAO,CAACQ,OAAR,CAAiB,qBAAjB,CAAb,CAAvB;AACA,MAAMC,kBAAkB,GAAGN,IAAI,CAACI,OAAL,CACzBP,OAAO,CAACQ,OAAR,CAAiB,0BAAjB,CADyB,CAA3B;AAGA,MAAME,aAAa,GAAGP,IAAI,CAACI,OAAL,CAAaP,OAAO,CAACQ,OAAR,CAAiB,oBAAjB,CAAb,CAAtB;;AAEA,MAAMG,oBAAoB,GAAG,MAC3BZ,UAAU,CACPa,GADH,GAEGC,IAFH,CAGIC,QAAQ,IACNA,QAAQ,IACRA,QAAQ,CAACC,WAAT,EADA,IAEA,CAACD,QAAQ,CAACC,WAAT,GAAuBC,QAAvB,CAAgCV,cAAhC,CAFD,IAGA,CAACQ,QAAQ,CAACC,WAAT,GAAuBC,QAAvB,CAAgCN,aAAhC,CAHD,IAIA,CAACI,QAAQ,CAACC,WAAT,GAAuBC,QAAvB,CAAgCP,kBAAhC,CAJD,IAKA,CAACJ,wBAAwB,CAACS,QAAQ,CAACC,WAAT,EAAD,CAT/B,CADF;;AAaA,MAAME,qBAAqB,GAAG,CAAC;AAAEC,EAAAA,aAAa,GAAG;AAAlB,IAA2B,EAA5B,KAAmC;AAC/D,QAAMJ,QAAQ,GAAGH,oBAAoB,EAArC;;AACA,MAAI,CAACG,QAAL,EAAe;AACb,WAAO,IAAP;AACD;;AAED,QAAMK,QAAQ,GAAGL,QAAQ,CAACC,WAAT,EAAjB;AACA,QAAMK,IAAI,GAAGN,QAAQ,CAACO,aAAT,EAAb;AACA,QAAMC,MAAM,GAAGR,QAAQ,CAACS,eAAT,EAAf;AAEA,QAAMC,IAAI,GAAGtB,EAAE,CAACuB,YAAH,CAAgBN,QAAhB,EAA0B;AAAEO,IAAAA,QAAQ,EAAG;AAAb,GAA1B,CAAb;AACA,SAAO;AACLP,IAAAA,QADK;AAELC,IAAAA,IAFK;AAGLE,IAAAA,MAHK;AAILK,IAAAA,SAAS,EAAE1B,gBAAgB,CACzBuB,IADyB,EAEzB;AACEI,MAAAA,KAAK,EAAE;AACLR,QAAAA,IADK;AAELE,QAAAA;AAFK;AADT,KAFyB,EAQzB;AACEJ,MAAAA;AADF,KARyB;AAJtB,GAAP;AAiBD,CA5BD;;AA8BA,MAAMW,8BAA8B,GAAG,CAAC;AAAEX,EAAAA,aAAa,GAAG;AAAlB,IAA2B,EAA5B,KAAmC;AACxE,QAAMY,iBAAiB,GAAGb,qBAAqB,CAAC;AAC9CC,IAAAA;AAD8C,GAAD,CAA/C;;AAIA,MAAI,CAACY,iBAAL,EAAwB;AACtB,WAAO,IAAP;AACD;;AAED,QAAM;AAAEX,IAAAA,QAAF;AAAYC,IAAAA,IAAZ;AAAkBE,IAAAA,MAAlB;AAA0BK,IAAAA;AAA1B,MAAwCG,iBAA9C;AACA,SAAQ,QAAO1B,KAAK,CAAC2B,IAAN,CAAY,GAAEZ,QAAS,IAAGC,IAAK,IAAGE,MAAO,EAAzC,CAA4C,KAAIK,SAAU,EAAzE;AACD,CAXD;;AAaAK,MAAM,CAACC,OAAP,GAAiB;AACfhB,EAAAA,qBADe;AAEfY,EAAAA;AAFe,CAAjB","sourcesContent":["const stackTrace = require(`stack-trace`)\nconst { codeFrameColumns } = require(`@babel/code-frame`)\nconst fs = require(`fs-extra`)\nconst path = require(`path`)\nconst chalk = require(`chalk`)\nconst { isNodeInternalModulePath } = require(`gatsby-core-utils`)\n\nconst gatsbyLocation = path.dirname(require.resolve(`gatsby/package.json`))\nconst reduxThunkLocation = path.dirname(\n require.resolve(`redux-thunk/package.json`)\n)\nconst reduxLocation = path.dirname(require.resolve(`redux/package.json`))\n\nconst getNonGatsbyCallSite = () =>\n stackTrace\n .get()\n .find(\n callSite =>\n callSite &&\n callSite.getFileName() &&\n !callSite.getFileName().includes(gatsbyLocation) &&\n !callSite.getFileName().includes(reduxLocation) &&\n !callSite.getFileName().includes(reduxThunkLocation) &&\n !isNodeInternalModulePath(callSite.getFileName())\n )\n\nconst getNonGatsbyCodeFrame = ({ highlightCode = true } = {}) => {\n const callSite = getNonGatsbyCallSite()\n if (!callSite) {\n return null\n }\n\n const fileName = callSite.getFileName()\n const line = callSite.getLineNumber()\n const column = callSite.getColumnNumber()\n\n const code = fs.readFileSync(fileName, { encoding: `utf-8` })\n return {\n fileName,\n line,\n column,\n codeFrame: codeFrameColumns(\n code,\n {\n start: {\n line,\n column,\n },\n },\n {\n highlightCode,\n }\n ),\n }\n}\n\nconst getNonGatsbyCodeFrameFormatted = ({ highlightCode = true } = {}) => {\n const possibleCodeFrame = getNonGatsbyCodeFrame({\n highlightCode,\n })\n\n if (!possibleCodeFrame) {\n return null\n }\n\n const { fileName, line, column, codeFrame } = possibleCodeFrame\n return `File ${chalk.bold(`${fileName}:${line}:${column}`)}\\n${codeFrame}`\n}\n\nmodule.exports = {\n getNonGatsbyCodeFrame,\n getNonGatsbyCodeFrameFormatted,\n}\n"],"file":"stack-trace-utils.js"}
\No newline at end of file