gatsby 4.19.0 → 4.19.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,12 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  exports.__esModule = true;
4
6
  exports.headHandlerForSSR = headHandlerForSSR;
5
7
 
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+
6
10
  const React = require(`react`);
7
11
 
8
12
  const {
@@ -82,19 +86,29 @@ function headHandlerForSSR({
82
86
 
83
87
  for (const node of headNodes) {
84
88
  const {
85
- rawTagName,
86
- attributes
89
+ rawTagName
87
90
  } = node;
88
- const id = attributes.id;
91
+ const id = node.attributes.id;
89
92
 
90
93
  if (!VALID_NODE_NAMES.includes(rawTagName)) {
91
94
  warnForInvalidTags(rawTagName);
92
95
  } else {
93
- var _node$childNodes$;
94
-
95
- const element = createElement(rawTagName, { ...attributes,
96
+ let element;
97
+ const attributes = { ...node.attributes,
96
98
  "data-gatsby-head": true
97
- }, (_node$childNodes$ = node.childNodes[0]) === null || _node$childNodes$ === void 0 ? void 0 : _node$childNodes$.textContent);
99
+ };
100
+
101
+ if (rawTagName === `script`) {
102
+ element = /*#__PURE__*/React.createElement("script", (0, _extends2.default)({}, attributes, {
103
+ dangerouslySetInnerHTML: {
104
+ __html: node.text
105
+ }
106
+ }));
107
+ } else {
108
+ var _node$childNodes$;
109
+
110
+ element = /*#__PURE__*/React.createElement(node.rawTagName, attributes, (_node$childNodes$ = node.childNodes[0]) === null || _node$childNodes$ === void 0 ? void 0 : _node$childNodes$.textContent);
111
+ }
98
112
 
99
113
  if (id) {
100
114
  if (!seenIds.has(id)) {
@@ -56,20 +56,31 @@ export function headHandlerForSSR({
56
56
 
57
57
  const seenIds = new Map()
58
58
  for (const node of headNodes) {
59
- const { rawTagName, attributes } = node
60
- const id = attributes.id
59
+ const { rawTagName } = node
60
+ const id = node.attributes.id
61
61
 
62
62
  if (!VALID_NODE_NAMES.includes(rawTagName)) {
63
63
  warnForInvalidTags(rawTagName)
64
64
  } else {
65
- const element = createElement(
66
- rawTagName,
67
- {
68
- ...attributes,
69
- "data-gatsby-head": true,
70
- },
71
- node.childNodes[0]?.textContent
72
- )
65
+ let element
66
+ const attributes = { ...node.attributes, "data-gatsby-head": true }
67
+ if (rawTagName === `script`) {
68
+ element = (
69
+ <script
70
+ {...attributes}
71
+ dangerouslySetInnerHTML={{
72
+ __html: node.text,
73
+ }}
74
+ />
75
+ )
76
+ } else {
77
+ element = (
78
+ <node.rawTagName {...attributes}>
79
+ {node.childNodes[0]?.textContent}
80
+ </node.rawTagName>
81
+ )
82
+ }
83
+
73
84
  if (id) {
74
85
  if (!seenIds.has(id)) {
75
86
  validHeadNodes.push(element)
@@ -773,11 +773,9 @@ async function startServer(program, app, workerPool = WorkerPool.create()) {
773
773
 
774
774
  const socket = _websocketManager.websocketManager.init({
775
775
  server
776
- }); // hardcoded `localhost`, because host should match `target` we set
777
- // in http proxy in `develop-proxy`
778
-
776
+ });
779
777
 
780
- const listener = server.listen(program.port, `localhost`);
778
+ const listener = server.listen(program.port, program.host);
781
779
 
782
780
  if (!process.env.GATSBY_EXPERIMENTAL_DEV_SSR) {
783
781
  const chokidar = require(`chokidar`); // Register watcher that rebuilds index.html every time html.js changes.
@@ -1 +1 @@
1
- {"version":3,"file":"start-server.js","names":["startServer","program","app","workerPool","WorkerPool","create","directory","PAGE_RENDERER_PATH","path","join","ROUTES_DIRECTORY","webpackActivity","report","activityTimer","id","start","writeVirtualLoadingIndicatorModule","directoryPath","withBasePath","buildRenderer","doBuildPages","require","createIndexHtml","activity","rendererPath","close","Stage","DevelopHTML","span","err","name","panic","stripIndent","indexHTMLActivity","phantomActivity","pageRenderer","process","env","GATSBY_EXPERIMENTAL_DEV_SSR","initDevWorkerPool","end","devConfig","webpackConfig","Develop","port","parentSpan","compiler","webpack","use","compression","telemetry","expressMiddleware","webpackHotMiddleware","log","heartbeat","cors","graphqlEndpoint","GATSBY_GRAPHQL_IDE","get","graphqlPlayground","endpoint","graphiqlExplorer","getFragments","fragments","def","store","getState","definitions","values","kind","Kind","FRAGMENT_DEFINITION","push","graphqlHTTP","schema","schemaCustomization","composer","Error","graphiql","extensions","enableRefresh","ENABLE_GATSBY_REFRESH_ENDPOINT","refreshToken","GATSBY_REFRESH_TOKEN","context","withResolverContext","schemaComposer","customContext","customFormatErrorFn","formatError","stack","split","REFRESH_ENDPOINT","refresh","req","pluginName","global","__GATSBY","buildId","uuid","v4","emitter","emit","webhookBody","body","post","express","json","res","params","authorizedRefresh","headers","authorization","status","setHeader","error","isEnabled","query","fileName","resolve","cwd","lineNumber","parseInt","launchEditor","isNaN","addImageRoutes","webpackDevMiddlewareInstance","webpackDevMiddleware","publicPath","output","stats","serverSideRender","next","requestedPagePath","pagePath","potentialPagePath","reverseFixedPagePath","page","findPageByPath","serverDataPromise","Promise","pageMode","getPageMode","renderer","componentInstance","getPageChunk","getServerData","catch","pageData","GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND","Date","now","getPageDataExperimental","trackCli","duration","readPageData","statusCode","result","value","Object","entries","serverData","props","getServerDataError","structuredError","panicOnBuild","sourceMessage","message","matchPath","send","e","compilation","locals","devMiddleware","emptyResponse","codeFrame","sourcePosition","sourceContent","moduleId","columnNumber","fileModule","module","modules","moduleIdentifier","chunkGraph","getModuleId","webpackSource","codeGenerationResults","sources","sourceMap","map","position","line","column","findOriginalSourcePositionAndContent","sourceLine","sourceColumn","codeFrameColumns","highlightCode","filePath","fs","readFile","developMiddleware","config","proxy","trailingSlash","configureTrailingSlash","developStatic","index","forEach","prefix","url","proxiedUrl","originalUrl","host","method","pipe","got","stream","decompress","on","response","writeHead","_","sendStatus","apiRunnerNode","deferNodeMutation","trackFeatureIsUsed","pathObj","decodeURI","allowTimedFallback","appendPreloadHeaders","htmlActivity","html","renderResponse","renderDevHTML","skipSsr","prototype","hasOwnProperty","call","htmlComponentRendererPath","filename","source","clientOnlyShell","location","minimalHTML","GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR","routeLoadingIndicatorRequests","fullUrl","protocol","endsWith","webpackCompilationHash","undefined","sendFile","server","http","Server","socket","websocketManager","init","listener","listen","chokidar","watchGlobs","slash","watch","to","webpackWatching","watching"],"sources":["../../src/utils/start-server.ts"],"sourcesContent":["import webpackHotMiddleware from \"@gatsbyjs/webpack-hot-middleware\"\nimport webpackDevMiddleware from \"webpack-dev-middleware\"\nimport got, { Method } from \"got\"\nimport webpack from \"webpack\"\nimport express from \"express\"\nimport compression from \"compression\"\nimport { graphqlHTTP, OptionsData } from \"express-graphql\"\nimport graphqlPlayground from \"graphql-playground-middleware-express\"\nimport graphiqlExplorer from \"gatsby-graphiql-explorer\"\nimport {\n formatError,\n FragmentDefinitionNode,\n GraphQLFormattedError,\n Kind,\n} from \"graphql\"\nimport { slash, uuid } from \"gatsby-core-utils\"\nimport http from \"http\"\nimport cors from \"cors\"\nimport telemetry from \"gatsby-telemetry\"\nimport launchEditor from \"react-dev-utils/launchEditor\"\nimport { codeFrameColumns } from \"@babel/code-frame\"\nimport * as fs from \"fs-extra\"\n\nimport { withBasePath } from \"../utils/path\"\nimport webpackConfig from \"../utils/webpack.config\"\nimport { store, emitter } from \"../redux\"\nimport report from \"gatsby-cli/lib/reporter\"\nimport * as WorkerPool from \"../utils/worker/pool\"\n\nimport { developStatic } from \"../commands/develop-static\"\nimport withResolverContext from \"../schema/context\"\nimport { websocketManager, WebsocketManager } from \"../utils/websocket-manager\"\nimport {\n reverseFixedPagePath,\n readPageData,\n IPageDataWithQueryResult,\n} from \"./page-data\"\nimport { getPageData as getPageDataExperimental } from \"./get-page-data\"\nimport { findPageByPath } from \"./find-page-by-path\"\nimport apiRunnerNode from \"../utils/api-runner-node\"\nimport * as path from \"path\"\n\nimport { Stage, IProgram } from \"../commands/types\"\nimport { findOriginalSourcePositionAndContent } from \"./stack-trace-utils\"\nimport { appendPreloadHeaders } from \"./develop-preload-headers\"\nimport {\n routeLoadingIndicatorRequests,\n writeVirtualLoadingIndicatorModule,\n} from \"./loading-indicator\"\nimport { renderDevHTML } from \"./dev-ssr/render-dev-html\"\nimport { getServerData, IServerData } from \"./get-server-data\"\nimport { ROUTES_DIRECTORY } from \"../constants\"\nimport { getPageMode } from \"./page-mode\"\nimport { configureTrailingSlash } from \"./express-middlewares\"\nimport type { Express } from \"express\"\nimport { addImageRoutes } from \"gatsby-plugin-utils/polyfill-remote-file\"\n\ntype ActivityTracker = any // TODO: Replace this with proper type once reporter is typed\n\ninterface IServer {\n compiler: webpack.Compiler\n listener: http.Server\n webpackActivity: ActivityTracker\n websocketManager: WebsocketManager\n workerPool: WorkerPool.GatsbyWorkerPool\n webpackWatching: IWebpackWatchingPauseResume\n}\n\nexport interface IWebpackWatchingPauseResume {\n suspend: () => void\n resume: () => void\n}\n\nexport async function startServer(\n program: IProgram,\n app: Express,\n workerPool: WorkerPool.GatsbyWorkerPool = WorkerPool.create()\n): Promise<IServer> {\n const directory = program.directory\n const PAGE_RENDERER_PATH = path.join(\n program.directory,\n ROUTES_DIRECTORY,\n `render-page.js`\n )\n\n const webpackActivity = report.activityTimer(`Building development bundle`, {\n id: `webpack-develop`,\n })\n webpackActivity.start()\n\n // loading indicator\n // write virtual module always to not fail webpack compilation, but only add express route handlers when\n // query on demand is enabled and loading indicator is not disabled\n writeVirtualLoadingIndicatorModule()\n\n // Remove the following when merging GATSBY_EXPERIMENTAL_DEV_SSR\n const directoryPath = withBasePath(directory)\n const { buildRenderer, doBuildPages } = require(`../commands/build-html`)\n const createIndexHtml = async (activity: ActivityTracker): Promise<void> => {\n try {\n const { rendererPath, close } = await buildRenderer(\n program,\n Stage.DevelopHTML,\n activity.span\n )\n await doBuildPages(\n rendererPath,\n [`/`],\n activity,\n workerPool,\n Stage.DevelopHTML\n )\n // close the compiler\n await close()\n } catch (err) {\n if (err.name !== `WebpackError`) {\n report.panic(err)\n return\n }\n report.panic(\n report.stripIndent`\n There was an error compiling the html.js component for the development server.\n See our docs page on debugging HTML builds for help https://gatsby.dev/debug-html\n `,\n err\n )\n }\n }\n const indexHTMLActivity = report.phantomActivity(`building index.html`, {})\n\n let pageRenderer: string\n if (process.env.GATSBY_EXPERIMENTAL_DEV_SSR) {\n const { buildRenderer } = require(`../commands/build-html`)\n pageRenderer = (await buildRenderer(program, Stage.DevelopHTML))\n .rendererPath\n const { initDevWorkerPool } = require(`./dev-ssr/render-dev-html`)\n initDevWorkerPool()\n } else {\n indexHTMLActivity.start()\n\n await createIndexHtml(indexHTMLActivity)\n\n indexHTMLActivity.end()\n }\n\n const devConfig = await webpackConfig(\n program,\n directory,\n Stage.Develop,\n program.port,\n {\n parentSpan: webpackActivity.span,\n }\n )\n\n const compiler = webpack(devConfig)\n\n /**\n * Set up the express app.\n **/\n app.use(compression())\n app.use(telemetry.expressMiddleware(`DEVELOP`))\n app.use(\n webpackHotMiddleware(compiler, {\n log: false,\n path: `/__webpack_hmr`,\n heartbeat: 10 * 1000,\n })\n )\n\n app.use(cors())\n\n /**\n * Pattern matching all endpoints with graphql or graphiql with 1 or more leading underscores\n */\n const graphqlEndpoint = `/_+graphi?ql`\n\n // TODO(v5): Remove GraphQL Playground (GraphiQL will be more future-proof)\n if (process.env.GATSBY_GRAPHQL_IDE === `playground`) {\n app.get(\n graphqlEndpoint,\n graphqlPlayground({\n endpoint: `/___graphql`,\n }),\n () => {}\n )\n } else {\n graphiqlExplorer(app, {\n graphqlEndpoint,\n getFragments: function getFragments(): Array<FragmentDefinitionNode> {\n const fragments: Array<FragmentDefinitionNode> = []\n for (const def of store.getState().definitions.values()) {\n if (def.def.kind === Kind.FRAGMENT_DEFINITION) {\n fragments.push(def.def)\n }\n }\n return fragments\n },\n })\n }\n\n app.use(\n graphqlEndpoint,\n graphqlHTTP((): OptionsData => {\n const { schema, schemaCustomization } = store.getState()\n\n if (!schemaCustomization.composer) {\n throw new Error(\n `A schema composer was not created in time. This is likely a gatsby bug. If you experienced this please create an issue.`\n )\n }\n return {\n schema,\n graphiql: false,\n extensions(): { [key: string]: unknown } {\n return {\n enableRefresh: process.env.ENABLE_GATSBY_REFRESH_ENDPOINT,\n refreshToken: process.env.GATSBY_REFRESH_TOKEN,\n }\n },\n context: withResolverContext({\n schema,\n schemaComposer: schemaCustomization.composer,\n context: {},\n customContext: schemaCustomization.context,\n }),\n customFormatErrorFn(\n err\n ): GraphQLFormattedError<{ stack: Array<string> }> {\n return {\n ...formatError(err),\n extensions: {\n stack: err.stack ? err.stack.split(`\\n`) : [],\n },\n }\n },\n }\n })\n )\n\n /**\n * Refresh external data sources.\n * This behavior is disabled by default, but the ENABLE_GATSBY_REFRESH_ENDPOINT env var enables it\n * If no GATSBY_REFRESH_TOKEN env var is available, then no Authorization header is required\n **/\n const REFRESH_ENDPOINT = `/__refresh`\n const refresh = async (\n req: express.Request,\n pluginName?: string\n ): Promise<void> => {\n global.__GATSBY.buildId = uuid.v4()\n\n emitter.emit(`WEBHOOK_RECEIVED`, {\n webhookBody: req.body,\n pluginName,\n })\n }\n\n app.post(`${REFRESH_ENDPOINT}/:plugin_name?`, express.json(), (req, res) => {\n const pluginName = req.params[`plugin_name`]\n\n const enableRefresh = process.env.ENABLE_GATSBY_REFRESH_ENDPOINT\n const refreshToken = process.env.GATSBY_REFRESH_TOKEN\n const authorizedRefresh =\n !refreshToken || req.headers.authorization === refreshToken\n\n if (enableRefresh && authorizedRefresh) {\n refresh(req, pluginName)\n res.status(200)\n res.setHeader(`content-type`, `application/json`)\n } else {\n res.status(authorizedRefresh ? 404 : 403)\n res.json({\n error: enableRefresh\n ? `Authorization failed. Make sure you add authorization header to your refresh requests`\n : `Refresh endpoint is not enabled. Run gatsby with \"ENABLE_GATSBY_REFRESH_ENDPOINT=true\" environment variable set.`,\n isEnabled: !!process.env.ENABLE_GATSBY_REFRESH_ENDPOINT,\n })\n }\n res.end()\n })\n\n app.get(`/__open-stack-frame-in-editor`, (req, res) => {\n if (req.query.fileName) {\n const fileName = path.resolve(process.cwd(), req.query.fileName as string)\n const lineNumber = parseInt(req.query.lineNumber as string, 10)\n launchEditor(fileName, isNaN(lineNumber) ? 1 : lineNumber)\n }\n res.end()\n })\n\n addImageRoutes(app, store)\n\n const webpackDevMiddlewareInstance = webpackDevMiddleware(compiler, {\n publicPath: devConfig.output.publicPath,\n stats: `errors-only`,\n serverSideRender: true,\n })\n\n app.use(webpackDevMiddlewareInstance)\n\n app.get(\n `/page-data/:pagePath(*)/page-data.json`,\n async (req, res, next): Promise<void> => {\n const requestedPagePath = req.params.pagePath\n if (!requestedPagePath) {\n next()\n return\n }\n\n const potentialPagePath = reverseFixedPagePath(requestedPagePath)\n const page = findPageByPath(store.getState(), potentialPagePath, false)\n\n if (page) {\n try {\n let serverDataPromise: Promise<IServerData> | Promise<Error> =\n Promise.resolve({})\n const pageMode = getPageMode(page)\n\n if (pageMode === `SSR`) {\n const renderer = require(PAGE_RENDERER_PATH)\n const componentInstance = await renderer.getPageChunk(page)\n\n serverDataPromise = getServerData(\n req,\n page,\n potentialPagePath,\n componentInstance\n ).catch(error => error)\n }\n\n let pageData: IPageDataWithQueryResult\n // TODO move to query-engine\n if (process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND) {\n const start = Date.now()\n\n pageData = await getPageDataExperimental(page.path)\n\n telemetry.trackCli(`RUN_QUERY_ON_DEMAND`, {\n name: `getPageData`,\n duration: Date.now() - start,\n })\n } else {\n pageData = await readPageData(\n path.join(store.getState().program.directory, `public`),\n page.path\n )\n }\n\n let statusCode = 200\n if (pageMode === `SSR`) {\n try {\n const result = await serverDataPromise\n\n if (result instanceof Error) {\n throw result\n }\n\n if (result.headers) {\n for (const [name, value] of Object.entries(result.headers)) {\n res.setHeader(name, value)\n }\n }\n\n if (result.status) {\n statusCode = result.status\n }\n\n pageData.result.serverData = result.props\n pageData.getServerDataError = null\n } catch (error) {\n const structuredError = report.panicOnBuild({\n id: `95315`,\n context: {\n sourceMessage: error.message,\n pagePath: requestedPagePath,\n potentialPagePath,\n },\n error,\n })\n // Use page-data.json file instead of emitting via websockets as this makes it easier\n // to only display the relevant error + clearing of the error\n // The query-result-store reacts to this\n pageData.getServerDataError = structuredError\n }\n pageData.path = page.matchPath ? `/${potentialPagePath}` : page.path\n } else {\n // When user removes getServerData function, Gatsby browser runtime still has cached version of page-data.\n // Send `null` to always reset cached serverData:\n pageData.result.serverData = null\n }\n\n res.status(statusCode).send(pageData)\n return\n } catch (e) {\n report.error(\n `Error loading a result for the page query in \"${requestedPagePath}\" / \"${potentialPagePath}\". Query was not run and no cached result was found.`,\n e\n )\n }\n }\n\n res.status(404).send({\n path: potentialPagePath,\n })\n }\n )\n\n app.get(`/__original-stack-frame`, (req, res) => {\n const compilation = res.locals?.webpack?.devMiddleware?.stats?.compilation\n const emptyResponse = {\n codeFrame: `No codeFrame could be generated`,\n sourcePosition: null,\n sourceContent: null,\n }\n\n if (!compilation) {\n res.json(emptyResponse)\n return\n }\n\n const moduleId = req.query?.moduleId\n const lineNumber = parseInt((req.query?.lineNumber as string) ?? 1, 10)\n const columnNumber = parseInt((req.query?.columnNumber as string) ?? 1, 10)\n\n let fileModule\n for (const module of compilation.modules) {\n const moduleIdentifier = compilation.chunkGraph.getModuleId(module)\n if (moduleIdentifier === moduleId) {\n fileModule = module\n break\n }\n }\n\n if (!fileModule) {\n res.json(emptyResponse)\n return\n }\n\n // We need the internal webpack file that is used in the bundle, not the module source.\n // It doesn't have the correct sourceMap.\n const webpackSource = compilation?.codeGenerationResults\n ?.get(fileModule)\n ?.sources.get(`javascript`)\n\n const sourceMap = webpackSource?.map()\n\n if (!sourceMap) {\n res.json(emptyResponse)\n return\n }\n\n const position = {\n line: lineNumber,\n column: columnNumber,\n }\n const result = findOriginalSourcePositionAndContent(sourceMap, position)\n\n const sourcePosition = result?.sourcePosition\n const sourceLine = sourcePosition?.line\n const sourceColumn = sourcePosition?.column\n const sourceContent = result?.sourceContent\n\n if (!sourceContent || !sourceLine) {\n res.json(emptyResponse)\n return\n }\n\n const codeFrame = codeFrameColumns(\n sourceContent,\n {\n start: {\n line: sourceLine,\n column: sourceColumn ?? 0,\n },\n },\n {\n highlightCode: true,\n }\n )\n res.json({\n codeFrame,\n sourcePosition,\n sourceContent,\n })\n })\n\n app.get(`/__file-code-frame`, async (req, res) => {\n const emptyResponse = {\n codeFrame: `No codeFrame could be generated`,\n sourcePosition: null,\n sourceContent: null,\n }\n\n const filePath: string | undefined = req.query?.filePath as string\n const lineNumber = parseInt(req.query?.lineNumber as string, 10)\n const columnNumber = parseInt(req.query?.columnNumber as string, 10)\n\n if (!filePath) {\n res.json(emptyResponse)\n return\n }\n\n const sourceContent = await fs.readFile(filePath, `utf-8`)\n\n const codeFrame = codeFrameColumns(\n sourceContent,\n {\n start: {\n line: lineNumber,\n column: columnNumber ?? 0,\n },\n },\n {\n highlightCode: true,\n }\n )\n res.json({\n codeFrame,\n })\n })\n\n // Expose access to app for advanced use cases\n const { developMiddleware } = store.getState().config\n\n if (developMiddleware) {\n developMiddleware(app, program)\n }\n\n const { proxy, trailingSlash } = store.getState().config\n\n app.use(configureTrailingSlash(() => store.getState(), trailingSlash))\n\n // Disable directory indexing i.e. serving index.html from a directory.\n // This can lead to serving stale html files during development.\n //\n // We serve by default an empty index.html that sets up the dev environment.\n app.use(developStatic(`public`, { index: false }))\n\n // Set up API proxy.\n if (proxy) {\n proxy.forEach(({ prefix, url }) => {\n app.use(`${prefix}/*`, (req, res) => {\n const proxiedUrl = url + req.originalUrl\n const {\n // remove `host` from copied headers\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n headers: { host, ...headers },\n method,\n } = req\n req\n .pipe(\n got\n .stream(proxiedUrl, {\n headers,\n method: method as Method,\n decompress: false,\n })\n .on(`response`, response =>\n res.writeHead(response.statusCode || 200, response.headers)\n )\n .on(`error`, (err, _, response) => {\n if (response) {\n res.writeHead(response.statusCode || 400, response.headers)\n } else {\n const message = `Error when trying to proxy request \"${req.originalUrl}\" to \"${proxiedUrl}\"`\n\n report.error(message, err)\n res.sendStatus(500)\n }\n })\n )\n .pipe(res)\n })\n }, cors())\n }\n\n await apiRunnerNode(`onCreateDevServer`, { app, deferNodeMutation: true })\n\n // In case nothing before handled hot-update - send 404.\n // This fixes \"Unexpected token < in JSON at position 0\" runtime\n // errors after restarting development server and\n // cause automatic hard refresh in the browser.\n app.use(/.*\\.hot-update\\.json$/i, (_, res) => {\n res.status(404).end()\n })\n\n // Render an HTML page and serve it.\n if (process.env.GATSBY_EXPERIMENTAL_DEV_SSR) {\n app.get(`*`, async (req, res, next) => {\n telemetry.trackFeatureIsUsed(`GATSBY_EXPERIMENTAL_DEV_SSR`)\n\n const pathObj = findPageByPath(store.getState(), decodeURI(req.path))\n\n if (!pathObj) {\n return next()\n }\n\n const allowTimedFallback = !req.headers[`x-gatsby-wait-for-dev-ssr`]\n\n await appendPreloadHeaders(pathObj.path, res)\n\n const htmlActivity = report.phantomActivity(`building HTML for path`, {})\n htmlActivity.start()\n\n try {\n const { html: renderResponse, serverData } = await renderDevHTML({\n path: pathObj.path,\n page: pathObj,\n skipSsr: Object.prototype.hasOwnProperty.call(req.query, `skip-ssr`),\n store,\n allowTimedFallback,\n htmlComponentRendererPath: PAGE_RENDERER_PATH,\n directory: program.directory,\n req,\n })\n\n if (serverData?.headers) {\n for (const [name, value] of Object.entries(serverData.headers)) {\n res.setHeader(name, value)\n }\n }\n let statusCode = 200\n if (serverData?.status) {\n statusCode = serverData.status\n }\n res.status(statusCode).send(renderResponse)\n } catch (error) {\n // The page errored but couldn't read the page component.\n // This is a race condition when a page is deleted but its requested\n // immediately after before anything can recompile.\n if (error === `404 page`) {\n return next()\n }\n\n // renderDevHTML throws an error with these information\n const lineNumber = error?.line as number\n const columnNumber = error?.column as number\n const filePath = error?.filename as string\n const sourceContent = error?.sourceContent as string\n\n report.error({\n id: `11614`,\n context: {\n path: pathObj.path,\n filePath: filePath,\n line: lineNumber,\n column: columnNumber,\n },\n })\n\n const emptyResponse = {\n codeFrame: `No codeFrame could be generated`,\n sourcePosition: null,\n sourceContent: null,\n }\n\n if (!sourceContent || !lineNumber) {\n res.json(emptyResponse)\n return null\n }\n\n const codeFrame = codeFrameColumns(\n sourceContent,\n {\n start: {\n line: lineNumber,\n column: columnNumber ?? 0,\n },\n },\n {\n highlightCode: true,\n }\n )\n\n const message = {\n codeFrame,\n source: filePath,\n line: lineNumber,\n column: columnNumber ?? 0,\n sourceMessage: error?.message,\n stack: error?.stack,\n }\n\n try {\n // Generate a shell for client-only content -- for the error overlay\n const { html: clientOnlyShell } = await renderDevHTML({\n path: pathObj.path,\n page: pathObj,\n skipSsr: true,\n store,\n error: message,\n htmlComponentRendererPath: PAGE_RENDERER_PATH,\n directory: program.directory,\n req,\n allowTimedFallback,\n })\n\n res.send(clientOnlyShell)\n } catch (e) {\n report.error({\n id: `11616`,\n context: {\n sourceMessage: e.message,\n },\n filePath: e.filename,\n location: {\n start: {\n line: e.line,\n column: e.column,\n },\n },\n })\n\n const minimalHTML = `<head><title>Failed to Server Render (SSR)</title></head><body><h1>Failed to Server Render (SSR)</h1><h2>Error message:</h2><p>${e.message}</p><h2>File:</h2><p>${e.filename}:${e.line}:${e.column}</p><h2>Stack:</h2><pre><code>${e.stack}</code></pre></body>`\n\n res.send(minimalHTML).status(500)\n }\n }\n\n htmlActivity.end()\n\n return null\n })\n }\n\n if (\n process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND &&\n process.env.GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR === `true`\n ) {\n routeLoadingIndicatorRequests(app)\n }\n\n app.use(async (req, res) => {\n // in this catch-all block we don't support POST so we should 404\n if (req.method === `POST`) {\n res.status(404).end()\n return\n }\n\n const fullUrl = req.protocol + `://` + req.get(`host`) + req.originalUrl\n // This isn't used in development.\n if (fullUrl.endsWith(`app-data.json`)) {\n res.json({ webpackCompilationHash: `123` })\n // If this gets here, it's a non-existent file so just send back 404.\n } else if (fullUrl.endsWith(`.json`)) {\n res.json({}).status(404)\n } else {\n await appendPreloadHeaders(req.path, res)\n\n if (process.env.GATSBY_EXPERIMENTAL_DEV_SSR) {\n try {\n const allowTimedFallback = !req.headers[`x-gatsby-wait-for-dev-ssr`]\n const { html: renderResponse } = await renderDevHTML({\n path: `/dev-404-page/`,\n // Let renderDevHTML figure it out.\n page: undefined,\n store,\n htmlComponentRendererPath: pageRenderer,\n directory: program.directory,\n req,\n allowTimedFallback,\n })\n res.status(404).send(renderResponse)\n } catch (e) {\n report.error({\n id: `11615`,\n context: {\n sourceMessage: e.message,\n },\n filePath: e.filename,\n location: {\n start: {\n line: e.line,\n column: e.column,\n },\n },\n })\n res.send(e).status(500)\n }\n } else {\n const potentialPagePath = reverseFixedPagePath(decodeURI(req.path))\n const page = findPageByPath(store.getState(), potentialPagePath, false)\n\n // When we can't find a page we send 404\n if (!page) {\n res.status(404)\n }\n\n res.sendFile(directoryPath(`.cache/develop-html/index.html`), err => {\n if (err) {\n res.status(500).end()\n }\n })\n }\n }\n })\n\n /**\n * Set up the HTTP server and socket.io.\n **/\n const server = new http.Server(app)\n\n const socket = websocketManager.init({ server })\n\n // hardcoded `localhost`, because host should match `target` we set\n // in http proxy in `develop-proxy`\n const listener = server.listen(program.port, `localhost`)\n\n if (!process.env.GATSBY_EXPERIMENTAL_DEV_SSR) {\n const chokidar = require(`chokidar`)\n // Register watcher that rebuilds index.html every time html.js changes.\n const watchGlobs = [`src/html.js`, `plugins/**/gatsby-ssr.js`].map(path =>\n slash(directoryPath(path))\n )\n\n chokidar.watch(watchGlobs).on(`change`, async () => {\n await createIndexHtml(indexHTMLActivity)\n // eslint-disable-next-line no-unused-expressions\n socket?.to(`clients`).emit(`reload`)\n })\n }\n\n return {\n compiler,\n listener,\n webpackActivity,\n websocketManager,\n workerPool,\n webpackWatching: webpackDevMiddlewareInstance.context.watching,\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"start-server.js","names":["startServer","program","app","workerPool","WorkerPool","create","directory","PAGE_RENDERER_PATH","path","join","ROUTES_DIRECTORY","webpackActivity","report","activityTimer","id","start","writeVirtualLoadingIndicatorModule","directoryPath","withBasePath","buildRenderer","doBuildPages","require","createIndexHtml","activity","rendererPath","close","Stage","DevelopHTML","span","err","name","panic","stripIndent","indexHTMLActivity","phantomActivity","pageRenderer","process","env","GATSBY_EXPERIMENTAL_DEV_SSR","initDevWorkerPool","end","devConfig","webpackConfig","Develop","port","parentSpan","compiler","webpack","use","compression","telemetry","expressMiddleware","webpackHotMiddleware","log","heartbeat","cors","graphqlEndpoint","GATSBY_GRAPHQL_IDE","get","graphqlPlayground","endpoint","graphiqlExplorer","getFragments","fragments","def","store","getState","definitions","values","kind","Kind","FRAGMENT_DEFINITION","push","graphqlHTTP","schema","schemaCustomization","composer","Error","graphiql","extensions","enableRefresh","ENABLE_GATSBY_REFRESH_ENDPOINT","refreshToken","GATSBY_REFRESH_TOKEN","context","withResolverContext","schemaComposer","customContext","customFormatErrorFn","formatError","stack","split","REFRESH_ENDPOINT","refresh","req","pluginName","global","__GATSBY","buildId","uuid","v4","emitter","emit","webhookBody","body","post","express","json","res","params","authorizedRefresh","headers","authorization","status","setHeader","error","isEnabled","query","fileName","resolve","cwd","lineNumber","parseInt","launchEditor","isNaN","addImageRoutes","webpackDevMiddlewareInstance","webpackDevMiddleware","publicPath","output","stats","serverSideRender","next","requestedPagePath","pagePath","potentialPagePath","reverseFixedPagePath","page","findPageByPath","serverDataPromise","Promise","pageMode","getPageMode","renderer","componentInstance","getPageChunk","getServerData","catch","pageData","GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND","Date","now","getPageDataExperimental","trackCli","duration","readPageData","statusCode","result","value","Object","entries","serverData","props","getServerDataError","structuredError","panicOnBuild","sourceMessage","message","matchPath","send","e","compilation","locals","devMiddleware","emptyResponse","codeFrame","sourcePosition","sourceContent","moduleId","columnNumber","fileModule","module","modules","moduleIdentifier","chunkGraph","getModuleId","webpackSource","codeGenerationResults","sources","sourceMap","map","position","line","column","findOriginalSourcePositionAndContent","sourceLine","sourceColumn","codeFrameColumns","highlightCode","filePath","fs","readFile","developMiddleware","config","proxy","trailingSlash","configureTrailingSlash","developStatic","index","forEach","prefix","url","proxiedUrl","originalUrl","host","method","pipe","got","stream","decompress","on","response","writeHead","_","sendStatus","apiRunnerNode","deferNodeMutation","trackFeatureIsUsed","pathObj","decodeURI","allowTimedFallback","appendPreloadHeaders","htmlActivity","html","renderResponse","renderDevHTML","skipSsr","prototype","hasOwnProperty","call","htmlComponentRendererPath","filename","source","clientOnlyShell","location","minimalHTML","GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR","routeLoadingIndicatorRequests","fullUrl","protocol","endsWith","webpackCompilationHash","undefined","sendFile","server","http","Server","socket","websocketManager","init","listener","listen","chokidar","watchGlobs","slash","watch","to","webpackWatching","watching"],"sources":["../../src/utils/start-server.ts"],"sourcesContent":["import webpackHotMiddleware from \"@gatsbyjs/webpack-hot-middleware\"\nimport webpackDevMiddleware from \"webpack-dev-middleware\"\nimport got, { Method } from \"got\"\nimport webpack from \"webpack\"\nimport express from \"express\"\nimport compression from \"compression\"\nimport { graphqlHTTP, OptionsData } from \"express-graphql\"\nimport graphqlPlayground from \"graphql-playground-middleware-express\"\nimport graphiqlExplorer from \"gatsby-graphiql-explorer\"\nimport {\n formatError,\n FragmentDefinitionNode,\n GraphQLFormattedError,\n Kind,\n} from \"graphql\"\nimport { slash, uuid } from \"gatsby-core-utils\"\nimport http from \"http\"\nimport cors from \"cors\"\nimport telemetry from \"gatsby-telemetry\"\nimport launchEditor from \"react-dev-utils/launchEditor\"\nimport { codeFrameColumns } from \"@babel/code-frame\"\nimport * as fs from \"fs-extra\"\n\nimport { withBasePath } from \"../utils/path\"\nimport webpackConfig from \"../utils/webpack.config\"\nimport { store, emitter } from \"../redux\"\nimport report from \"gatsby-cli/lib/reporter\"\nimport * as WorkerPool from \"../utils/worker/pool\"\n\nimport { developStatic } from \"../commands/develop-static\"\nimport withResolverContext from \"../schema/context\"\nimport { websocketManager, WebsocketManager } from \"../utils/websocket-manager\"\nimport {\n reverseFixedPagePath,\n readPageData,\n IPageDataWithQueryResult,\n} from \"./page-data\"\nimport { getPageData as getPageDataExperimental } from \"./get-page-data\"\nimport { findPageByPath } from \"./find-page-by-path\"\nimport apiRunnerNode from \"../utils/api-runner-node\"\nimport * as path from \"path\"\n\nimport { Stage, IProgram } from \"../commands/types\"\nimport { findOriginalSourcePositionAndContent } from \"./stack-trace-utils\"\nimport { appendPreloadHeaders } from \"./develop-preload-headers\"\nimport {\n routeLoadingIndicatorRequests,\n writeVirtualLoadingIndicatorModule,\n} from \"./loading-indicator\"\nimport { renderDevHTML } from \"./dev-ssr/render-dev-html\"\nimport { getServerData, IServerData } from \"./get-server-data\"\nimport { ROUTES_DIRECTORY } from \"../constants\"\nimport { getPageMode } from \"./page-mode\"\nimport { configureTrailingSlash } from \"./express-middlewares\"\nimport type { Express } from \"express\"\nimport { addImageRoutes } from \"gatsby-plugin-utils/polyfill-remote-file\"\n\ntype ActivityTracker = any // TODO: Replace this with proper type once reporter is typed\n\ninterface IServer {\n compiler: webpack.Compiler\n listener: http.Server\n webpackActivity: ActivityTracker\n websocketManager: WebsocketManager\n workerPool: WorkerPool.GatsbyWorkerPool\n webpackWatching: IWebpackWatchingPauseResume\n}\n\nexport interface IWebpackWatchingPauseResume {\n suspend: () => void\n resume: () => void\n}\n\nexport async function startServer(\n program: IProgram,\n app: Express,\n workerPool: WorkerPool.GatsbyWorkerPool = WorkerPool.create()\n): Promise<IServer> {\n const directory = program.directory\n const PAGE_RENDERER_PATH = path.join(\n program.directory,\n ROUTES_DIRECTORY,\n `render-page.js`\n )\n\n const webpackActivity = report.activityTimer(`Building development bundle`, {\n id: `webpack-develop`,\n })\n webpackActivity.start()\n\n // loading indicator\n // write virtual module always to not fail webpack compilation, but only add express route handlers when\n // query on demand is enabled and loading indicator is not disabled\n writeVirtualLoadingIndicatorModule()\n\n // Remove the following when merging GATSBY_EXPERIMENTAL_DEV_SSR\n const directoryPath = withBasePath(directory)\n const { buildRenderer, doBuildPages } = require(`../commands/build-html`)\n const createIndexHtml = async (activity: ActivityTracker): Promise<void> => {\n try {\n const { rendererPath, close } = await buildRenderer(\n program,\n Stage.DevelopHTML,\n activity.span\n )\n await doBuildPages(\n rendererPath,\n [`/`],\n activity,\n workerPool,\n Stage.DevelopHTML\n )\n // close the compiler\n await close()\n } catch (err) {\n if (err.name !== `WebpackError`) {\n report.panic(err)\n return\n }\n report.panic(\n report.stripIndent`\n There was an error compiling the html.js component for the development server.\n See our docs page on debugging HTML builds for help https://gatsby.dev/debug-html\n `,\n err\n )\n }\n }\n const indexHTMLActivity = report.phantomActivity(`building index.html`, {})\n\n let pageRenderer: string\n if (process.env.GATSBY_EXPERIMENTAL_DEV_SSR) {\n const { buildRenderer } = require(`../commands/build-html`)\n pageRenderer = (await buildRenderer(program, Stage.DevelopHTML))\n .rendererPath\n const { initDevWorkerPool } = require(`./dev-ssr/render-dev-html`)\n initDevWorkerPool()\n } else {\n indexHTMLActivity.start()\n\n await createIndexHtml(indexHTMLActivity)\n\n indexHTMLActivity.end()\n }\n\n const devConfig = await webpackConfig(\n program,\n directory,\n Stage.Develop,\n program.port,\n {\n parentSpan: webpackActivity.span,\n }\n )\n\n const compiler = webpack(devConfig)\n\n /**\n * Set up the express app.\n **/\n app.use(compression())\n app.use(telemetry.expressMiddleware(`DEVELOP`))\n app.use(\n webpackHotMiddleware(compiler, {\n log: false,\n path: `/__webpack_hmr`,\n heartbeat: 10 * 1000,\n })\n )\n\n app.use(cors())\n\n /**\n * Pattern matching all endpoints with graphql or graphiql with 1 or more leading underscores\n */\n const graphqlEndpoint = `/_+graphi?ql`\n\n // TODO(v5): Remove GraphQL Playground (GraphiQL will be more future-proof)\n if (process.env.GATSBY_GRAPHQL_IDE === `playground`) {\n app.get(\n graphqlEndpoint,\n graphqlPlayground({\n endpoint: `/___graphql`,\n }),\n () => {}\n )\n } else {\n graphiqlExplorer(app, {\n graphqlEndpoint,\n getFragments: function getFragments(): Array<FragmentDefinitionNode> {\n const fragments: Array<FragmentDefinitionNode> = []\n for (const def of store.getState().definitions.values()) {\n if (def.def.kind === Kind.FRAGMENT_DEFINITION) {\n fragments.push(def.def)\n }\n }\n return fragments\n },\n })\n }\n\n app.use(\n graphqlEndpoint,\n graphqlHTTP((): OptionsData => {\n const { schema, schemaCustomization } = store.getState()\n\n if (!schemaCustomization.composer) {\n throw new Error(\n `A schema composer was not created in time. This is likely a gatsby bug. If you experienced this please create an issue.`\n )\n }\n return {\n schema,\n graphiql: false,\n extensions(): { [key: string]: unknown } {\n return {\n enableRefresh: process.env.ENABLE_GATSBY_REFRESH_ENDPOINT,\n refreshToken: process.env.GATSBY_REFRESH_TOKEN,\n }\n },\n context: withResolverContext({\n schema,\n schemaComposer: schemaCustomization.composer,\n context: {},\n customContext: schemaCustomization.context,\n }),\n customFormatErrorFn(\n err\n ): GraphQLFormattedError<{ stack: Array<string> }> {\n return {\n ...formatError(err),\n extensions: {\n stack: err.stack ? err.stack.split(`\\n`) : [],\n },\n }\n },\n }\n })\n )\n\n /**\n * Refresh external data sources.\n * This behavior is disabled by default, but the ENABLE_GATSBY_REFRESH_ENDPOINT env var enables it\n * If no GATSBY_REFRESH_TOKEN env var is available, then no Authorization header is required\n **/\n const REFRESH_ENDPOINT = `/__refresh`\n const refresh = async (\n req: express.Request,\n pluginName?: string\n ): Promise<void> => {\n global.__GATSBY.buildId = uuid.v4()\n\n emitter.emit(`WEBHOOK_RECEIVED`, {\n webhookBody: req.body,\n pluginName,\n })\n }\n\n app.post(`${REFRESH_ENDPOINT}/:plugin_name?`, express.json(), (req, res) => {\n const pluginName = req.params[`plugin_name`]\n\n const enableRefresh = process.env.ENABLE_GATSBY_REFRESH_ENDPOINT\n const refreshToken = process.env.GATSBY_REFRESH_TOKEN\n const authorizedRefresh =\n !refreshToken || req.headers.authorization === refreshToken\n\n if (enableRefresh && authorizedRefresh) {\n refresh(req, pluginName)\n res.status(200)\n res.setHeader(`content-type`, `application/json`)\n } else {\n res.status(authorizedRefresh ? 404 : 403)\n res.json({\n error: enableRefresh\n ? `Authorization failed. Make sure you add authorization header to your refresh requests`\n : `Refresh endpoint is not enabled. Run gatsby with \"ENABLE_GATSBY_REFRESH_ENDPOINT=true\" environment variable set.`,\n isEnabled: !!process.env.ENABLE_GATSBY_REFRESH_ENDPOINT,\n })\n }\n res.end()\n })\n\n app.get(`/__open-stack-frame-in-editor`, (req, res) => {\n if (req.query.fileName) {\n const fileName = path.resolve(process.cwd(), req.query.fileName as string)\n const lineNumber = parseInt(req.query.lineNumber as string, 10)\n launchEditor(fileName, isNaN(lineNumber) ? 1 : lineNumber)\n }\n res.end()\n })\n\n addImageRoutes(app, store)\n\n const webpackDevMiddlewareInstance = webpackDevMiddleware(compiler, {\n publicPath: devConfig.output.publicPath,\n stats: `errors-only`,\n serverSideRender: true,\n })\n\n app.use(webpackDevMiddlewareInstance)\n\n app.get(\n `/page-data/:pagePath(*)/page-data.json`,\n async (req, res, next): Promise<void> => {\n const requestedPagePath = req.params.pagePath\n if (!requestedPagePath) {\n next()\n return\n }\n\n const potentialPagePath = reverseFixedPagePath(requestedPagePath)\n const page = findPageByPath(store.getState(), potentialPagePath, false)\n\n if (page) {\n try {\n let serverDataPromise: Promise<IServerData> | Promise<Error> =\n Promise.resolve({})\n const pageMode = getPageMode(page)\n\n if (pageMode === `SSR`) {\n const renderer = require(PAGE_RENDERER_PATH)\n const componentInstance = await renderer.getPageChunk(page)\n\n serverDataPromise = getServerData(\n req,\n page,\n potentialPagePath,\n componentInstance\n ).catch(error => error)\n }\n\n let pageData: IPageDataWithQueryResult\n // TODO move to query-engine\n if (process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND) {\n const start = Date.now()\n\n pageData = await getPageDataExperimental(page.path)\n\n telemetry.trackCli(`RUN_QUERY_ON_DEMAND`, {\n name: `getPageData`,\n duration: Date.now() - start,\n })\n } else {\n pageData = await readPageData(\n path.join(store.getState().program.directory, `public`),\n page.path\n )\n }\n\n let statusCode = 200\n if (pageMode === `SSR`) {\n try {\n const result = await serverDataPromise\n\n if (result instanceof Error) {\n throw result\n }\n\n if (result.headers) {\n for (const [name, value] of Object.entries(result.headers)) {\n res.setHeader(name, value)\n }\n }\n\n if (result.status) {\n statusCode = result.status\n }\n\n pageData.result.serverData = result.props\n pageData.getServerDataError = null\n } catch (error) {\n const structuredError = report.panicOnBuild({\n id: `95315`,\n context: {\n sourceMessage: error.message,\n pagePath: requestedPagePath,\n potentialPagePath,\n },\n error,\n })\n // Use page-data.json file instead of emitting via websockets as this makes it easier\n // to only display the relevant error + clearing of the error\n // The query-result-store reacts to this\n pageData.getServerDataError = structuredError\n }\n pageData.path = page.matchPath ? `/${potentialPagePath}` : page.path\n } else {\n // When user removes getServerData function, Gatsby browser runtime still has cached version of page-data.\n // Send `null` to always reset cached serverData:\n pageData.result.serverData = null\n }\n\n res.status(statusCode).send(pageData)\n return\n } catch (e) {\n report.error(\n `Error loading a result for the page query in \"${requestedPagePath}\" / \"${potentialPagePath}\". Query was not run and no cached result was found.`,\n e\n )\n }\n }\n\n res.status(404).send({\n path: potentialPagePath,\n })\n }\n )\n\n app.get(`/__original-stack-frame`, (req, res) => {\n const compilation = res.locals?.webpack?.devMiddleware?.stats?.compilation\n const emptyResponse = {\n codeFrame: `No codeFrame could be generated`,\n sourcePosition: null,\n sourceContent: null,\n }\n\n if (!compilation) {\n res.json(emptyResponse)\n return\n }\n\n const moduleId = req.query?.moduleId\n const lineNumber = parseInt((req.query?.lineNumber as string) ?? 1, 10)\n const columnNumber = parseInt((req.query?.columnNumber as string) ?? 1, 10)\n\n let fileModule\n for (const module of compilation.modules) {\n const moduleIdentifier = compilation.chunkGraph.getModuleId(module)\n if (moduleIdentifier === moduleId) {\n fileModule = module\n break\n }\n }\n\n if (!fileModule) {\n res.json(emptyResponse)\n return\n }\n\n // We need the internal webpack file that is used in the bundle, not the module source.\n // It doesn't have the correct sourceMap.\n const webpackSource = compilation?.codeGenerationResults\n ?.get(fileModule)\n ?.sources.get(`javascript`)\n\n const sourceMap = webpackSource?.map()\n\n if (!sourceMap) {\n res.json(emptyResponse)\n return\n }\n\n const position = {\n line: lineNumber,\n column: columnNumber,\n }\n const result = findOriginalSourcePositionAndContent(sourceMap, position)\n\n const sourcePosition = result?.sourcePosition\n const sourceLine = sourcePosition?.line\n const sourceColumn = sourcePosition?.column\n const sourceContent = result?.sourceContent\n\n if (!sourceContent || !sourceLine) {\n res.json(emptyResponse)\n return\n }\n\n const codeFrame = codeFrameColumns(\n sourceContent,\n {\n start: {\n line: sourceLine,\n column: sourceColumn ?? 0,\n },\n },\n {\n highlightCode: true,\n }\n )\n res.json({\n codeFrame,\n sourcePosition,\n sourceContent,\n })\n })\n\n app.get(`/__file-code-frame`, async (req, res) => {\n const emptyResponse = {\n codeFrame: `No codeFrame could be generated`,\n sourcePosition: null,\n sourceContent: null,\n }\n\n const filePath: string | undefined = req.query?.filePath as string\n const lineNumber = parseInt(req.query?.lineNumber as string, 10)\n const columnNumber = parseInt(req.query?.columnNumber as string, 10)\n\n if (!filePath) {\n res.json(emptyResponse)\n return\n }\n\n const sourceContent = await fs.readFile(filePath, `utf-8`)\n\n const codeFrame = codeFrameColumns(\n sourceContent,\n {\n start: {\n line: lineNumber,\n column: columnNumber ?? 0,\n },\n },\n {\n highlightCode: true,\n }\n )\n res.json({\n codeFrame,\n })\n })\n\n // Expose access to app for advanced use cases\n const { developMiddleware } = store.getState().config\n\n if (developMiddleware) {\n developMiddleware(app, program)\n }\n\n const { proxy, trailingSlash } = store.getState().config\n\n app.use(configureTrailingSlash(() => store.getState(), trailingSlash))\n\n // Disable directory indexing i.e. serving index.html from a directory.\n // This can lead to serving stale html files during development.\n //\n // We serve by default an empty index.html that sets up the dev environment.\n app.use(developStatic(`public`, { index: false }))\n\n // Set up API proxy.\n if (proxy) {\n proxy.forEach(({ prefix, url }) => {\n app.use(`${prefix}/*`, (req, res) => {\n const proxiedUrl = url + req.originalUrl\n const {\n // remove `host` from copied headers\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n headers: { host, ...headers },\n method,\n } = req\n req\n .pipe(\n got\n .stream(proxiedUrl, {\n headers,\n method: method as Method,\n decompress: false,\n })\n .on(`response`, response =>\n res.writeHead(response.statusCode || 200, response.headers)\n )\n .on(`error`, (err, _, response) => {\n if (response) {\n res.writeHead(response.statusCode || 400, response.headers)\n } else {\n const message = `Error when trying to proxy request \"${req.originalUrl}\" to \"${proxiedUrl}\"`\n\n report.error(message, err)\n res.sendStatus(500)\n }\n })\n )\n .pipe(res)\n })\n }, cors())\n }\n\n await apiRunnerNode(`onCreateDevServer`, { app, deferNodeMutation: true })\n\n // In case nothing before handled hot-update - send 404.\n // This fixes \"Unexpected token < in JSON at position 0\" runtime\n // errors after restarting development server and\n // cause automatic hard refresh in the browser.\n app.use(/.*\\.hot-update\\.json$/i, (_, res) => {\n res.status(404).end()\n })\n\n // Render an HTML page and serve it.\n if (process.env.GATSBY_EXPERIMENTAL_DEV_SSR) {\n app.get(`*`, async (req, res, next) => {\n telemetry.trackFeatureIsUsed(`GATSBY_EXPERIMENTAL_DEV_SSR`)\n\n const pathObj = findPageByPath(store.getState(), decodeURI(req.path))\n\n if (!pathObj) {\n return next()\n }\n\n const allowTimedFallback = !req.headers[`x-gatsby-wait-for-dev-ssr`]\n\n await appendPreloadHeaders(pathObj.path, res)\n\n const htmlActivity = report.phantomActivity(`building HTML for path`, {})\n htmlActivity.start()\n\n try {\n const { html: renderResponse, serverData } = await renderDevHTML({\n path: pathObj.path,\n page: pathObj,\n skipSsr: Object.prototype.hasOwnProperty.call(req.query, `skip-ssr`),\n store,\n allowTimedFallback,\n htmlComponentRendererPath: PAGE_RENDERER_PATH,\n directory: program.directory,\n req,\n })\n\n if (serverData?.headers) {\n for (const [name, value] of Object.entries(serverData.headers)) {\n res.setHeader(name, value)\n }\n }\n let statusCode = 200\n if (serverData?.status) {\n statusCode = serverData.status\n }\n res.status(statusCode).send(renderResponse)\n } catch (error) {\n // The page errored but couldn't read the page component.\n // This is a race condition when a page is deleted but its requested\n // immediately after before anything can recompile.\n if (error === `404 page`) {\n return next()\n }\n\n // renderDevHTML throws an error with these information\n const lineNumber = error?.line as number\n const columnNumber = error?.column as number\n const filePath = error?.filename as string\n const sourceContent = error?.sourceContent as string\n\n report.error({\n id: `11614`,\n context: {\n path: pathObj.path,\n filePath: filePath,\n line: lineNumber,\n column: columnNumber,\n },\n })\n\n const emptyResponse = {\n codeFrame: `No codeFrame could be generated`,\n sourcePosition: null,\n sourceContent: null,\n }\n\n if (!sourceContent || !lineNumber) {\n res.json(emptyResponse)\n return null\n }\n\n const codeFrame = codeFrameColumns(\n sourceContent,\n {\n start: {\n line: lineNumber,\n column: columnNumber ?? 0,\n },\n },\n {\n highlightCode: true,\n }\n )\n\n const message = {\n codeFrame,\n source: filePath,\n line: lineNumber,\n column: columnNumber ?? 0,\n sourceMessage: error?.message,\n stack: error?.stack,\n }\n\n try {\n // Generate a shell for client-only content -- for the error overlay\n const { html: clientOnlyShell } = await renderDevHTML({\n path: pathObj.path,\n page: pathObj,\n skipSsr: true,\n store,\n error: message,\n htmlComponentRendererPath: PAGE_RENDERER_PATH,\n directory: program.directory,\n req,\n allowTimedFallback,\n })\n\n res.send(clientOnlyShell)\n } catch (e) {\n report.error({\n id: `11616`,\n context: {\n sourceMessage: e.message,\n },\n filePath: e.filename,\n location: {\n start: {\n line: e.line,\n column: e.column,\n },\n },\n })\n\n const minimalHTML = `<head><title>Failed to Server Render (SSR)</title></head><body><h1>Failed to Server Render (SSR)</h1><h2>Error message:</h2><p>${e.message}</p><h2>File:</h2><p>${e.filename}:${e.line}:${e.column}</p><h2>Stack:</h2><pre><code>${e.stack}</code></pre></body>`\n\n res.send(minimalHTML).status(500)\n }\n }\n\n htmlActivity.end()\n\n return null\n })\n }\n\n if (\n process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND &&\n process.env.GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR === `true`\n ) {\n routeLoadingIndicatorRequests(app)\n }\n\n app.use(async (req, res) => {\n // in this catch-all block we don't support POST so we should 404\n if (req.method === `POST`) {\n res.status(404).end()\n return\n }\n\n const fullUrl = req.protocol + `://` + req.get(`host`) + req.originalUrl\n // This isn't used in development.\n if (fullUrl.endsWith(`app-data.json`)) {\n res.json({ webpackCompilationHash: `123` })\n // If this gets here, it's a non-existent file so just send back 404.\n } else if (fullUrl.endsWith(`.json`)) {\n res.json({}).status(404)\n } else {\n await appendPreloadHeaders(req.path, res)\n\n if (process.env.GATSBY_EXPERIMENTAL_DEV_SSR) {\n try {\n const allowTimedFallback = !req.headers[`x-gatsby-wait-for-dev-ssr`]\n const { html: renderResponse } = await renderDevHTML({\n path: `/dev-404-page/`,\n // Let renderDevHTML figure it out.\n page: undefined,\n store,\n htmlComponentRendererPath: pageRenderer,\n directory: program.directory,\n req,\n allowTimedFallback,\n })\n res.status(404).send(renderResponse)\n } catch (e) {\n report.error({\n id: `11615`,\n context: {\n sourceMessage: e.message,\n },\n filePath: e.filename,\n location: {\n start: {\n line: e.line,\n column: e.column,\n },\n },\n })\n res.send(e).status(500)\n }\n } else {\n const potentialPagePath = reverseFixedPagePath(decodeURI(req.path))\n const page = findPageByPath(store.getState(), potentialPagePath, false)\n\n // When we can't find a page we send 404\n if (!page) {\n res.status(404)\n }\n\n res.sendFile(directoryPath(`.cache/develop-html/index.html`), err => {\n if (err) {\n res.status(500).end()\n }\n })\n }\n }\n })\n\n /**\n * Set up the HTTP server and socket.io.\n **/\n const server = new http.Server(app)\n const socket = websocketManager.init({ server })\n const listener = server.listen(program.port, program.host)\n\n if (!process.env.GATSBY_EXPERIMENTAL_DEV_SSR) {\n const chokidar = require(`chokidar`)\n // Register watcher that rebuilds index.html every time html.js changes.\n const watchGlobs = [`src/html.js`, `plugins/**/gatsby-ssr.js`].map(path =>\n slash(directoryPath(path))\n )\n\n chokidar.watch(watchGlobs).on(`change`, async () => {\n await createIndexHtml(indexHTMLActivity)\n // eslint-disable-next-line no-unused-expressions\n socket?.to(`clients`).emit(`reload`)\n })\n }\n\n return {\n compiler,\n listener,\n webpackActivity,\n websocketManager,\n workerPool,\n webpackWatching: webpackDevMiddlewareInstance.context.watching,\n }\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "gatsby",
3
3
  "description": "Blazing fast modern site generator for React",
4
- "version": "4.19.0",
4
+ "version": "4.19.1",
5
5
  "author": "Kyle Mathews <mathews.kyle@gmail.com>",
6
6
  "bin": {
7
7
  "gatsby": "./cli.js"
@@ -93,7 +93,7 @@
93
93
  "gatsby-legacy-polyfills": "^2.19.0",
94
94
  "gatsby-link": "^4.19.0",
95
95
  "gatsby-page-utils": "^2.19.0",
96
- "gatsby-parcel-config": "^0.10.0",
96
+ "gatsby-parcel-config": "^0.10.1",
97
97
  "gatsby-plugin-page-creator": "^4.19.0",
98
98
  "gatsby-plugin-typescript": "^4.19.0",
99
99
  "gatsby-plugin-utils": "^3.13.0",
@@ -270,5 +270,5 @@
270
270
  "yargs": {
271
271
  "boolean-negation": false
272
272
  },
273
- "gitHead": "53bedf19e998aee23db6a7b85205470ee6e3cc0a"
273
+ "gitHead": "3789449fafe6aecee7b3747a4782e7d89a71f93c"
274
274
  }