Duffer Derek
{"version":3,"sources":["../../src/server/post-process.ts"],"sourcesContent":["import type { RenderOpts } from './render'\n\nimport { nonNullable } from '../lib/non-nullable'\n\ntype PostProcessorFunction =\n | ((html: string) => Promise<string>)\n | ((html: string) => string)\n\nasync function postProcessHTML(\n pathname: string,\n content: string,\n renderOpts: Pick<\n RenderOpts,\n | 'ampOptimizerConfig'\n | 'ampValidator'\n | 'ampSkipValidation'\n | 'optimizeCss'\n | 'distDir'\n | 'assetPrefix'\n >,\n { inAmpMode, hybridAmp }: { inAmpMode: boolean; hybridAmp: boolean }\n) {\n const postProcessors: Array<PostProcessorFunction> = [\n process.env.NEXT_RUNTIME !== 'edge' && inAmpMode\n ? async (html: string) => {\n const optimizeAmp = require('./optimize-amp')\n .default as typeof import('./optimize-amp').default\n html = await optimizeAmp!(html, renderOpts.ampOptimizerConfig)\n if (!renderOpts.ampSkipValidation && renderOpts.ampValidator) {\n await renderOpts.ampValidator(html, pathname)\n }\n return html\n }\n : null,\n process.env.NEXT_RUNTIME !== 'edge' && renderOpts.optimizeCss\n ? async (html: string) => {\n // eslint-disable-next-line import/no-extraneous-dependencies\n const Critters = require('critters')\n const cssOptimizer = new Critters({\n ssrMode: true,\n reduceInlineStyles: false,\n path: renderOpts.distDir,\n publicPath: `${renderOpts.assetPrefix}/_next/`,\n preload: 'media',\n fonts: false,\n logLevel:\n process.env.CRITTERS_LOG_LEVEL ||\n (process.env.NODE_ENV === 'production' ? 'warn' : 'info'),\n ...renderOpts.optimizeCss,\n })\n return await cssOptimizer.process(html)\n }\n : null,\n inAmpMode || hybridAmp\n ? (html: string) => {\n return html.replace(/&amp=1/g, '&=1')\n }\n : null,\n ].filter(nonNullable)\n\n for (const postProcessor of postProcessors) {\n if (postProcessor) {\n content = await postProcessor(content)\n }\n }\n return content\n}\n\nexport { postProcessHTML }\n"],"names":["postProcessHTML","pathname","content","renderOpts","inAmpMode","hybridAmp","postProcessors","process","env","NEXT_RUNTIME","html","optimizeAmp","require","default","ampOptimizerConfig","ampSkipValidation","ampValidator","optimizeCss","Critters","cssOptimizer","ssrMode","reduceInlineStyles","path","distDir","publicPath","assetPrefix","preload","fonts","logLevel","CRITTERS_LOG_LEVEL","NODE_ENV","replace","filter","nonNullable","postProcessor"],"mappings":";;;;+BAoESA;;;eAAAA;;;6BAlEmB;AAM5B,eAAeA,gBACbC,QAAgB,EAChBC,OAAe,EACfC,UAQC,EACD,EAAEC,SAAS,EAAEC,SAAS,EAA8C;IAEpE,MAAMC,iBAA+C;QACnDC,QAAQC,GAAG,CAACC,YAAY,KAAK,UAAUL,YACnC,OAAOM;YACL,MAAMC,cAAcC,QAAQ,kBACzBC,OAAO;YACVH,OAAO,MAAMC,YAAaD,MAAMP,WAAWW,kBAAkB;YAC7D,IAAI,CAACX,WAAWY,iBAAiB,IAAIZ,WAAWa,YAAY,EAAE;gBAC5D,MAAMb,WAAWa,YAAY,CAACN,MAAMT;YACtC;YACA,OAAOS;QACT,IACA;QACJH,QAAQC,GAAG,CAACC,YAAY,KAAK,UAAUN,WAAWc,WAAW,GACzD,OAAOP;YACL,6DAA6D;YAC7D,MAAMQ,WAAWN,QAAQ;YACzB,MAAMO,eAAe,IAAID,SAAS;gBAChCE,SAAS;gBACTC,oBAAoB;gBACpBC,MAAMnB,WAAWoB,OAAO;gBACxBC,YAAY,GAAGrB,WAAWsB,WAAW,CAAC,OAAO,CAAC;gBAC9CC,SAAS;gBACTC,OAAO;gBACPC,UACErB,QAAQC,GAAG,CAACqB,kBAAkB,IAC7BtB,CAAAA,QAAQC,GAAG,CAACsB,QAAQ,KAAK,eAAe,SAAS,MAAK;gBACzD,GAAG3B,WAAWc,WAAW;YAC3B;YACA,OAAO,MAAME,aAAaZ,OAAO,CAACG;QACpC,IACA;QACJN,aAAaC,YACT,CAACK;YACC,OAAOA,KAAKqB,OAAO,CAAC,eAAe;QACrC,IACA;KACL,CAACC,MAAM,CAACC,wBAAW;IAEpB,KAAK,MAAMC,iBAAiB5B,eAAgB;QAC1C,IAAI4B,eAAe;YACjBhC,UAAU,MAAMgC,cAAchC;QAChC;IACF;IACA,OAAOA;AACT"}
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists