Next.js website for Rocky Mountain Vending company featuring: - Product catalog with Stripe integration - Service areas and parts pages - Admin dashboard with Clerk authentication - SEO optimized pages with JSON-LD structured data Co-authored-by: Cursor <cursoragent@cursor.com>
1 line
No EOL
6.7 KiB
Text
1 line
No EOL
6.7 KiB
Text
{"version":3,"sources":["../../../src/export/routes/pages.ts"],"sourcesContent":["import type { ExportRouteResult } from '../types'\nimport type {\n PagesRenderContext,\n PagesSharedContext,\n RenderOpts,\n} from '../../server/render'\nimport type { LoadComponentsReturnType } from '../../server/load-components'\nimport type { NextParsedUrlQuery } from '../../server/request-meta'\nimport type { Params } from '../../server/request/params'\n\nimport RenderResult from '../../server/render-result'\nimport { join } from 'path'\nimport type {\n MockedRequest,\n MockedResponse,\n} from '../../server/lib/mock-request'\nimport {\n HTML_CONTENT_TYPE_HEADER,\n NEXT_DATA_SUFFIX,\n SERVER_PROPS_EXPORT_ERROR,\n} from '../../lib/constants'\nimport { isBailoutToCSRError } from '../../shared/lib/lazy-dynamic/bailout-to-csr'\nimport { lazyRenderPagesPage } from '../../server/route-modules/pages/module.render'\nimport type { MultiFileWriter } from '../../lib/multi-file-writer'\n\n/**\n * Renders & exports a page associated with the /pages directory\n */\nexport async function exportPagesPage(\n req: MockedRequest,\n res: MockedResponse,\n path: string,\n page: string,\n query: NextParsedUrlQuery,\n params: Params | undefined,\n htmlFilepath: string,\n htmlFilename: string,\n pagesDataDir: string,\n buildExport: boolean,\n isDynamic: boolean,\n sharedContext: PagesSharedContext,\n renderContext: PagesRenderContext,\n hasOrigQueryValues: boolean,\n renderOpts: RenderOpts,\n components: LoadComponentsReturnType,\n fileWriter: MultiFileWriter\n): Promise<ExportRouteResult | undefined> {\n if (components.getServerSideProps) {\n throw new Error(`Error for page ${page}: ${SERVER_PROPS_EXPORT_ERROR}`)\n }\n\n // for non-dynamic SSG pages we should have already\n // prerendered the file\n if (!buildExport && components.getStaticProps && !isDynamic) {\n return\n }\n\n // Pages router merges page params (e.g. [lang]) with query params\n // primarily to support them both being accessible on `useRouter().query`.\n // If we extracted dynamic params from the path, we need to merge them\n // back into the query object.\n const searchAndDynamicParams = {\n ...query,\n ...params,\n }\n\n if (components.getStaticProps && !htmlFilepath.endsWith('.html')) {\n // make sure it ends with .html if the name contains a dot\n htmlFilepath += '.html'\n htmlFilename += '.html'\n }\n\n let renderResult: RenderResult | undefined\n\n if (typeof components.Component === 'string') {\n renderResult = RenderResult.fromStatic(\n components.Component,\n HTML_CONTENT_TYPE_HEADER\n )\n\n if (hasOrigQueryValues) {\n throw new Error(\n `\\nError: you provided query values for ${path} which is an auto-exported page. These can not be applied since the page can no longer be re-rendered on the server. To disable auto-export for this page add \\`getInitialProps\\`\\n`\n )\n }\n } else {\n /**\n * This sets environment variable to be used at the time of SSR by head.tsx.\n * Using this from process.env allows targeting SSR by calling\n * `process.env.__NEXT_OPTIMIZE_CSS`.\n */\n if (renderOpts.optimizeCss) {\n process.env.__NEXT_OPTIMIZE_CSS = JSON.stringify(true)\n }\n try {\n renderResult = await lazyRenderPagesPage(\n req,\n res,\n page,\n searchAndDynamicParams,\n renderOpts,\n sharedContext,\n renderContext\n )\n } catch (err) {\n if (!isBailoutToCSRError(err)) throw err\n }\n }\n\n const ssgNotFound = renderResult?.metadata.isNotFound\n\n const html =\n renderResult && !renderResult.isNull ? renderResult.toUnchunkedString() : ''\n\n const metadata = renderResult?.metadata || {}\n if (metadata.pageData) {\n const dataFile = join(\n pagesDataDir,\n htmlFilename.replace(/\\.html$/, NEXT_DATA_SUFFIX)\n )\n\n fileWriter.append(dataFile, JSON.stringify(metadata.pageData))\n }\n\n if (!ssgNotFound) {\n // don't attempt writing to disk if getStaticProps returned not found\n fileWriter.append(htmlFilepath, html)\n }\n\n return {\n cacheControl: metadata.cacheControl ?? {\n revalidate: false,\n expire: undefined,\n },\n ssgNotFound,\n }\n}\n"],"names":["RenderResult","join","HTML_CONTENT_TYPE_HEADER","NEXT_DATA_SUFFIX","SERVER_PROPS_EXPORT_ERROR","isBailoutToCSRError","lazyRenderPagesPage","exportPagesPage","req","res","path","page","query","params","htmlFilepath","htmlFilename","pagesDataDir","buildExport","isDynamic","sharedContext","renderContext","hasOrigQueryValues","renderOpts","components","fileWriter","getServerSideProps","Error","getStaticProps","searchAndDynamicParams","endsWith","renderResult","Component","fromStatic","optimizeCss","process","env","__NEXT_OPTIMIZE_CSS","JSON","stringify","err","ssgNotFound","metadata","isNotFound","html","isNull","toUnchunkedString","pageData","dataFile","replace","append","cacheControl","revalidate","expire","undefined"],"mappings":"AAUA,OAAOA,kBAAkB,6BAA4B;AACrD,SAASC,IAAI,QAAQ,OAAM;AAK3B,SACEC,wBAAwB,EACxBC,gBAAgB,EAChBC,yBAAyB,QACpB,sBAAqB;AAC5B,SAASC,mBAAmB,QAAQ,+CAA8C;AAClF,SAASC,mBAAmB,QAAQ,iDAAgD;AAGpF;;CAEC,GACD,OAAO,eAAeC,gBACpBC,GAAkB,EAClBC,GAAmB,EACnBC,IAAY,EACZC,IAAY,EACZC,KAAyB,EACzBC,MAA0B,EAC1BC,YAAoB,EACpBC,YAAoB,EACpBC,YAAoB,EACpBC,WAAoB,EACpBC,SAAkB,EAClBC,aAAiC,EACjCC,aAAiC,EACjCC,kBAA2B,EAC3BC,UAAsB,EACtBC,UAAoC,EACpCC,UAA2B;IAE3B,IAAID,WAAWE,kBAAkB,EAAE;QACjC,MAAM,qBAAiE,CAAjE,IAAIC,MAAM,CAAC,eAAe,EAAEf,KAAK,EAAE,EAAEP,2BAA2B,GAAhE,qBAAA;mBAAA;wBAAA;0BAAA;QAAgE;IACxE;IAEA,mDAAmD;IACnD,uBAAuB;IACvB,IAAI,CAACa,eAAeM,WAAWI,cAAc,IAAI,CAACT,WAAW;QAC3D;IACF;IAEA,kEAAkE;IAClE,0EAA0E;IAC1E,sEAAsE;IACtE,8BAA8B;IAC9B,MAAMU,yBAAyB;QAC7B,GAAGhB,KAAK;QACR,GAAGC,MAAM;IACX;IAEA,IAAIU,WAAWI,cAAc,IAAI,CAACb,aAAae,QAAQ,CAAC,UAAU;QAChE,0DAA0D;QAC1Df,gBAAgB;QAChBC,gBAAgB;IAClB;IAEA,IAAIe;IAEJ,IAAI,OAAOP,WAAWQ,SAAS,KAAK,UAAU;QAC5CD,eAAe9B,aAAagC,UAAU,CACpCT,WAAWQ,SAAS,EACpB7B;QAGF,IAAImB,oBAAoB;YACtB,MAAM,qBAEL,CAFK,IAAIK,MACR,CAAC,uCAAuC,EAAEhB,KAAK,mLAAmL,CAAC,GAD/N,qBAAA;uBAAA;4BAAA;8BAAA;YAEN;QACF;IACF,OAAO;QACL;;;;KAIC,GACD,IAAIY,WAAWW,WAAW,EAAE;YAC1BC,QAAQC,GAAG,CAACC,mBAAmB,GAAGC,KAAKC,SAAS,CAAC;QACnD;QACA,IAAI;YACFR,eAAe,MAAMxB,oBACnBE,KACAC,KACAE,MACAiB,wBACAN,YACAH,eACAC;QAEJ,EAAE,OAAOmB,KAAK;YACZ,IAAI,CAAClC,oBAAoBkC,MAAM,MAAMA;QACvC;IACF;IAEA,MAAMC,cAAcV,gCAAAA,aAAcW,QAAQ,CAACC,UAAU;IAErD,MAAMC,OACJb,gBAAgB,CAACA,aAAac,MAAM,GAAGd,aAAae,iBAAiB,KAAK;IAE5E,MAAMJ,WAAWX,CAAAA,gCAAAA,aAAcW,QAAQ,KAAI,CAAC;IAC5C,IAAIA,SAASK,QAAQ,EAAE;QACrB,MAAMC,WAAW9C,KACfe,cACAD,aAAaiC,OAAO,CAAC,WAAW7C;QAGlCqB,WAAWyB,MAAM,CAACF,UAAUV,KAAKC,SAAS,CAACG,SAASK,QAAQ;IAC9D;IAEA,IAAI,CAACN,aAAa;QAChB,qEAAqE;QACrEhB,WAAWyB,MAAM,CAACnC,cAAc6B;IAClC;IAEA,OAAO;QACLO,cAAcT,SAASS,YAAY,IAAI;YACrCC,YAAY;YACZC,QAAQC;QACV;QACAb;IACF;AACF","ignoreList":[0]} |