gatsby 3.9.0 → 3.9.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.
- package/CHANGELOG.md +6 -0
- package/dist/bootstrap/load-plugins/index.js +1 -5
- package/dist/bootstrap/load-plugins/index.js.map +1 -1
- package/dist/services/initialize.js +3 -1
- package/dist/services/initialize.js.map +1 -1
- package/dist/utils/worker/child/load-config-and-plugins.js +7 -1
- package/dist/utils/worker/child/load-config-and-plugins.js.map +1 -1
- package/gatsby-admin-public/index.html +1 -1
- package/gatsby-admin-public/pages/index.html +1 -1
- package/gatsby-admin-public/plugins/index.html +1 -1
- package/gatsby-admin-public/recipe/index.html +1 -1
- package/gatsby-admin-public/recipes/index.html +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,12 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [3.9.1](https://github.com/gatsbyjs/gatsby/compare/gatsby@3.9.0...gatsby@3.9.1) (2021-07-09)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
- **gatsby:** delay 'unstable_onPluginInit' lifecycle to after cache is initialized ([#32307](https://github.com/gatsbyjs/gatsby/issues/32307)) ([#32312](https://github.com/gatsbyjs/gatsby/issues/32312)) ([36613fb](https://github.com/gatsbyjs/gatsby/commit/36613fba356c7929494edc3abf1ab954d3ec412a))
|
|
11
|
+
|
|
6
12
|
# [3.9.0](https://github.com/gatsbyjs/gatsby/compare/gatsby@3.9.0-next.1...gatsby@3.9.0) (2021-07-06)
|
|
7
13
|
|
|
8
14
|
### Bug Fixes
|
|
@@ -19,8 +19,6 @@ var _load = require("./load");
|
|
|
19
19
|
|
|
20
20
|
var _validate = require("./validate");
|
|
21
21
|
|
|
22
|
-
var _apiRunnerNode = _interopRequireDefault(require("../../utils/api-runner-node"));
|
|
23
|
-
|
|
24
22
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
25
23
|
|
|
26
24
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -117,10 +115,8 @@ async function loadPlugins(rawConfig = {}, rootDir) {
|
|
|
117
115
|
_redux.store.dispatch({
|
|
118
116
|
type: `SET_SITE_FLATTENED_PLUGINS`,
|
|
119
117
|
payload: flattenedPlugins
|
|
120
|
-
});
|
|
121
|
-
|
|
118
|
+
});
|
|
122
119
|
|
|
123
|
-
await (0, _apiRunnerNode.default)(`unstable_onPluginInit`);
|
|
124
120
|
return flattenedPlugins;
|
|
125
121
|
}
|
|
126
122
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/bootstrap/load-plugins/index.ts"],"names":["getAPI","api","_","keys","reduce","merged","key","flattenPlugins","plugins","flattened","extractPlugins","plugin","pluginOptions","forEach","subPlugin","push","normalizePlugin","resolve","options","normalizePlugins","map","normalizeConfig","config","loadPlugins","rawConfig","rootDir","currentAPIs","browser","browserAPIs","node","nodeAPIs","ssr","ssrAPIs","pluginInfos","pluginArray","x","flattenedPlugins","badExports","store","dispatch","type","payload"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA
|
|
1
|
+
{"version":3,"sources":["../../../src/bootstrap/load-plugins/index.ts"],"names":["getAPI","api","_","keys","reduce","merged","key","flattenPlugins","plugins","flattened","extractPlugins","plugin","pluginOptions","forEach","subPlugin","push","normalizePlugin","resolve","options","normalizePlugins","map","normalizeConfig","config","loadPlugins","rawConfig","rootDir","currentAPIs","browser","browserAPIs","node","nodeAPIs","ssr","ssrAPIs","pluginInfos","pluginArray","x","flattenedPlugins","badExports","store","dispatch","type","payload"],"mappings":"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","sourcesContent":["import _ from \"lodash\"\n\nimport { store } from \"../../redux\"\nimport * as nodeAPIs from \"../../utils/api-node-docs\"\nimport * as browserAPIs from \"../../utils/api-browser-docs\"\nimport ssrAPIs from \"../../../cache-dir/api-ssr-docs\"\nimport { loadPlugins as loadPluginsInternal } from \"./load\"\nimport {\n collatePluginAPIs,\n handleBadExports,\n handleMultipleReplaceRenderers,\n ExportType,\n ICurrentAPIs,\n validateConfigPluginsOptions,\n} from \"./validate\"\nimport {\n IPluginInfo,\n IFlattenedPlugin,\n ISiteConfig,\n IRawSiteConfig,\n} from \"./types\"\nimport { IPluginRefObject, PluginRef } from \"gatsby-plugin-utils/dist/types\"\n\nconst getAPI = (\n api: { [exportType in ExportType]: { [api: string]: boolean } }\n): ICurrentAPIs =>\n _.keys(api).reduce<Partial<ICurrentAPIs>>((merged, key) => {\n merged[key] = _.keys(api[key])\n return merged\n }, {}) as ICurrentAPIs\n\n// Create a \"flattened\" array of plugins with all subplugins\n// brought to the top-level. This simplifies running gatsby-* files\n// for subplugins.\nconst flattenPlugins = (plugins: Array<IPluginInfo>): Array<IPluginInfo> => {\n const flattened: Array<IPluginInfo> = []\n const extractPlugins = (plugin: IPluginInfo): void => {\n if (plugin.pluginOptions && plugin.pluginOptions.plugins) {\n plugin.pluginOptions.plugins.forEach(subPlugin => {\n flattened.push(subPlugin)\n extractPlugins(subPlugin)\n })\n }\n }\n\n plugins.forEach(plugin => {\n flattened.push(plugin)\n extractPlugins(plugin)\n })\n\n return flattened\n}\n\nfunction normalizePlugin(plugin): IPluginRefObject {\n if (typeof plugin === `string`) {\n return {\n resolve: plugin,\n options: {},\n }\n }\n\n if (plugin.options?.plugins) {\n plugin.options = {\n ...plugin.options,\n plugins: normalizePlugins(plugin.options.plugins),\n }\n }\n\n return plugin\n}\n\nfunction normalizePlugins(plugins?: Array<PluginRef>): Array<IPluginRefObject> {\n return (plugins || []).map(normalizePlugin)\n}\n\nconst normalizeConfig = (config: IRawSiteConfig = {}): ISiteConfig => {\n return {\n ...config,\n plugins: (config.plugins || []).map(normalizePlugin),\n }\n}\n\nexport async function loadPlugins(\n rawConfig: IRawSiteConfig = {},\n rootDir: string\n): Promise<Array<IFlattenedPlugin>> {\n // Turn all strings in plugins: [`...`] into the { resolve: ``, options: {} } form\n const config = normalizeConfig(rawConfig)\n\n // Show errors for invalid plugin configuration\n await validateConfigPluginsOptions(config, rootDir)\n\n const currentAPIs = getAPI({\n browser: browserAPIs,\n node: nodeAPIs,\n ssr: ssrAPIs,\n })\n\n // Collate internal plugins, site config plugins, site default plugins\n const pluginInfos = loadPluginsInternal(config, rootDir)\n\n // Create a flattened array of the plugins\n const pluginArray = flattenPlugins(pluginInfos)\n\n // Work out which plugins use which APIs, including those which are not\n // valid Gatsby APIs, aka 'badExports'\n const x = collatePluginAPIs({ currentAPIs, flattenedPlugins: pluginArray })\n\n // From this point on, these are fully-resolved plugins.\n let flattenedPlugins = x.flattenedPlugins\n const badExports = x.badExports\n\n // Show errors for any non-Gatsby APIs exported from plugins\n await handleBadExports({ currentAPIs, badExports })\n\n // Show errors when ReplaceRenderer has been implemented multiple times\n flattenedPlugins = handleMultipleReplaceRenderers({\n flattenedPlugins,\n })\n\n // If we get this far, everything looks good. Update the store\n store.dispatch({\n type: `SET_SITE_FLATTENED_PLUGINS`,\n payload: flattenedPlugins,\n })\n\n return flattenedPlugins\n}\n"],"file":"index.js"}
|
|
@@ -369,7 +369,9 @@ async function initialize({
|
|
|
369
369
|
|
|
370
370
|
await _fsExtra.default.ensureDir(cacheDirectory); // Ensure the public/static directory
|
|
371
371
|
|
|
372
|
-
await _fsExtra.default.ensureDir(`${publicDirectory}/static`);
|
|
372
|
+
await _fsExtra.default.ensureDir(`${publicDirectory}/static`); // Init plugins once cache is initialized
|
|
373
|
+
|
|
374
|
+
await (0, _apiRunnerNode.default)(`unstable_onPluginInit`);
|
|
373
375
|
activity.end();
|
|
374
376
|
activity = _reporter.default.activityTimer(`copy gatsby files`, {
|
|
375
377
|
parentSpan
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/services/initialize.ts"],"names":["process","env","gatsby_executing_command","GATSBY_EXPERIMENTAL_FAST_DEV","GATSBY_EXPERIMENTAL_DEV_SSR","PRESERVE_FILE_DOWNLOAD_CACHE","PRESERVE_WEBPACK_CACHE","reporter","info","telemetry","trackFeatureIsUsed","on","reason","panic","initialize","program","args","parentSpan","GATSBY_DISABLE_CACHE_PERSISTENCE","setStore","store","directory","browserslist","dispatch","type","payload","activityForJobs","emitter","phantomActivity","start","onEndJob","getState","jobs","active","length","end","activity","activityTimer","config","flattenedPlugins","siteDirectory","processFlags","GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND","GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR","polyfill","warn","CYPRESS_SUPPORT","verbose","pluginsStr","_","uniq","map","p","name","version","decorateEvent","plugins","span","cacheDirectory","publicDirectory","cacheJsonDirExists","fs","existsSync","publicDirExists","NODE_ENV","pluginVersions","hashes","Promise","all","catch","pluginsHash","crypto","createHash","update","JSON","stringify","concat","digest","state","oldPluginsHash","status","PLUGINS_HASH","stripIndent","cacheIsCorrupt","GATSBY_EXPERIMENTAL_PRESERVE_FILE_DOWNLOAD_CACHE","GATSBY_EXPERIMENTAL_PRESERVE_WEBPACK_CACHE","deleteGlobs","push","remove","emptyDir","e","error","pluginCachesPurged","ensureDir","srcDir","__dirname","siteDir","tryRequire","copy","ensureDirSync","err","hasAPIFile","plugin","skipSSR","undefined","envAPIs","require","resolve","path","join","Array","isArray","isResolved","isResolvedSSR","ssrPlugins","options","pluginOptions","filter","browserPlugins","browserPluginsRequires","relativePluginPath","relative","browserAPIRunner","sSRAPIRunner","readFileSync","ssrPluginsRequires","writeFileSync","extensions","apiResults","traceId","flattenDeep","workerPool","WorkerPool","create"],"mappings":"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","sourcesContent":["import _ from \"lodash\"\nimport { slash, isCI } from \"gatsby-core-utils\"\nimport fs from \"fs-extra\"\nimport md5File from \"md5-file\"\nimport crypto from \"crypto\"\nimport del from \"del\"\nimport path from \"path\"\nimport telemetry from \"gatsby-telemetry\"\n\nimport apiRunnerNode from \"../utils/api-runner-node\"\nimport { getBrowsersList } from \"../utils/browserslist\"\nimport { Store, AnyAction } from \"redux\"\nimport * as WorkerPool from \"../utils/worker/pool\"\nimport { startPluginRunner } from \"../redux/plugin-runner\"\nimport { store, emitter } from \"../redux\"\nimport reporter from \"gatsby-cli/lib/reporter\"\nimport { removeStaleJobs } from \"../bootstrap/remove-stale-jobs\"\nimport { IPluginInfoOptions } from \"../bootstrap/load-plugins/types\"\nimport { IGatsbyState } from \"../redux/types\"\nimport { IBuildContext } from \"./types\"\nimport { detectLmdbStore } from \"../datastore\"\nimport { loadConfigAndPlugins } from \"../bootstrap/load-config-and-plugins\"\n\ninterface IPluginResolution {\n resolve: string\n options: IPluginInfoOptions\n}\n\ninterface IPluginResolutionSSR extends IPluginResolution {\n name: string\n}\n\n// If the env variable GATSBY_EXPERIMENTAL_FAST_DEV is set, enable\n// all DEV experimental changes (but only during development & not on CI).\nif (\n process.env.gatsby_executing_command === `develop` &&\n process.env.GATSBY_EXPERIMENTAL_FAST_DEV &&\n !isCI()\n) {\n process.env.GATSBY_EXPERIMENTAL_DEV_SSR = `true`\n process.env.PRESERVE_FILE_DOWNLOAD_CACHE = `true`\n process.env.PRESERVE_WEBPACK_CACHE = `true`\n\n reporter.info(`\nThree fast dev experiments are enabled: Development SSR, preserving file download cache and preserving webpack cache.\n\nPlease give feedback on their respective umbrella issues!\n\n- https://gatsby.dev/dev-ssr-feedback\n- https://gatsby.dev/cache-clearing-feedback\n `)\n\n telemetry.trackFeatureIsUsed(`FastDev`)\n}\n\n// Show stack trace on unhandled promises.\nprocess.on(`unhandledRejection`, (reason: unknown) => {\n // https://github.com/DefinitelyTyped/DefinitelyTyped/issues/33636\n reporter.panic((reason as Error) || `Unhandled rejection`)\n})\n\n// Override console.log to add the source file + line number.\n// Useful for debugging if you lose a console.log somewhere.\n// Otherwise leave commented out.\n// require(`../bootstrap/log-line-function`)\n\nexport async function initialize({\n program: args,\n parentSpan,\n}: IBuildContext): Promise<{\n store: Store<IGatsbyState, AnyAction>\n workerPool: WorkerPool.GatsbyWorkerPool\n}> {\n if (process.env.GATSBY_DISABLE_CACHE_PERSISTENCE) {\n reporter.info(\n `GATSBY_DISABLE_CACHE_PERSISTENCE is enabled. Cache won't be persisted. Next builds will not be able to reuse any work done by current session.`\n )\n telemetry.trackFeatureIsUsed(`DisableCachePersistence`)\n }\n if (!args) {\n reporter.panic(`Missing program args`)\n }\n\n /* Time for a little story...\n * When running `gatsby develop`, the globally installed gatsby-cli starts\n * and sets up a Redux store (which is where logs are now stored). When gatsby\n * finds your project's locally installed gatsby-cli package in node_modules,\n * it switches over. This instance will have a separate redux store. We need to\n * ensure that the correct store is used which is why we call setStore\n * (/packages/gatsby-cli/src/reporter/redux/index.js)\n *\n * This function\n * - copies over the logs from the global gatsby-cli to the local one\n * - sets the store to the local one (so that further actions dispatched by\n * the global gatsby-cli are handled by the local one)\n */\n if (args.setStore) {\n args.setStore(store)\n }\n\n const directory = slash(args.directory)\n\n const program = {\n ...args,\n browserslist: getBrowsersList(directory),\n // Fix program directory path for windows env.\n directory,\n }\n\n store.dispatch({\n type: `SET_PROGRAM`,\n payload: program,\n })\n\n let activityForJobs\n\n emitter.on(`CREATE_JOB`, () => {\n if (!activityForJobs) {\n activityForJobs = reporter.phantomActivity(`Running jobs`)\n activityForJobs.start()\n }\n })\n\n const onEndJob = (): void => {\n if (activityForJobs && store.getState().jobs.active.length === 0) {\n activityForJobs.end()\n activityForJobs = null\n }\n }\n\n emitter.on(`END_JOB`, onEndJob)\n\n // Try opening the site's gatsby-config.js file.\n let activity = reporter.activityTimer(\n `open and validate gatsby-configs, load plugins`,\n {\n parentSpan,\n }\n )\n activity.start()\n\n const { config, flattenedPlugins } = await loadConfigAndPlugins({\n siteDirectory: program.directory,\n processFlags: true,\n })\n\n // TODO: figure out proper way of disabling loading indicator\n // for now GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR=false gatsby develop\n // will work, but we don't want to force users into using env vars\n if (\n process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND &&\n !process.env.GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR\n ) {\n // if query on demand is enabled and GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR was not set at all\n // enable loading indicator\n process.env.GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR = `true`\n }\n detectLmdbStore()\n\n if (config && config.polyfill) {\n reporter.warn(\n `Support for custom Promise polyfills has been removed in Gatsby v2. We only support Babel 7's new automatic polyfilling behavior.`\n )\n }\n\n activity.end()\n\n if (process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND) {\n if (process.env.gatsby_executing_command !== `develop`) {\n // we don't want to ever have this flag enabled for anything than develop\n // in case someone have this env var globally set\n delete process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND\n } else if (isCI() && !process.env.CYPRESS_SUPPORT) {\n delete process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND\n reporter.verbose(\n `Experimental Query on Demand feature is not available in CI environment. Continuing with eager query running.`\n )\n }\n }\n\n // run stale jobs\n store.dispatch(removeStaleJobs(store.getState()))\n\n // Multiple occurrences of the same name-version-pair can occur,\n // so we report an array of unique pairs\n const pluginsStr = _.uniq(flattenedPlugins.map(p => `${p.name}@${p.version}`))\n telemetry.decorateEvent(`BUILD_END`, {\n plugins: pluginsStr,\n })\n\n telemetry.decorateEvent(`DEVELOP_STOP`, {\n plugins: pluginsStr,\n })\n\n // Start plugin runner which listens to the store\n // and invokes Gatsby API based on actions.\n startPluginRunner()\n\n // onPreInit\n activity = reporter.activityTimer(`onPreInit`, {\n parentSpan,\n })\n activity.start()\n await apiRunnerNode(`onPreInit`, { parentSpan: activity.span })\n activity.end()\n\n const cacheDirectory = `${program.directory}/.cache`\n const publicDirectory = `${program.directory}/public`\n\n const cacheJsonDirExists = fs.existsSync(`${cacheDirectory}/json`)\n const publicDirExists = fs.existsSync(publicDirectory)\n\n // For builds in case public dir exists, but cache doesn't, we need to clean up potentially stale\n // artifacts from previous builds (due to cache not being available, we can't rely on tracking of artifacts)\n if (\n process.env.NODE_ENV === `production` &&\n publicDirExists &&\n !cacheJsonDirExists\n ) {\n activity = reporter.activityTimer(\n `delete html and css files from previous builds`,\n {\n parentSpan,\n }\n )\n activity.start()\n await del([\n `public/**/*.{html,css}`,\n `!public/page-data/**/*`,\n `!public/static`,\n `!public/static/**/*.{html,css}`,\n ])\n activity.end()\n }\n\n activity = reporter.activityTimer(`initialize cache`, {\n parentSpan,\n })\n activity.start()\n // Check if any plugins have been updated since our last run. If so\n // we delete the cache is there's likely been changes\n // since the previous run.\n //\n // We do this by creating a hash of all the version numbers of installed\n // plugins, the site's package.json, gatsby-config.js, and gatsby-node.js.\n // The last, gatsby-node.js, is important as many gatsby sites put important\n // logic in there e.g. generating slugs for custom pages.\n const pluginVersions = flattenedPlugins.map(p => p.version)\n const hashes: any = await Promise.all([\n md5File(`package.json`),\n md5File(`${program.directory}/gatsby-config.js`).catch(() => {}), // ignore as this file isn't required),\n md5File(`${program.directory}/gatsby-node.js`).catch(() => {}), // ignore as this file isn't required),\n ])\n const pluginsHash = crypto\n .createHash(`md5`)\n .update(JSON.stringify(pluginVersions.concat(hashes)))\n .digest(`hex`)\n const state = store.getState()\n const oldPluginsHash = state && state.status ? state.status.PLUGINS_HASH : ``\n\n // Check if anything has changed. If it has, delete the site's .cache\n // directory and tell reducers to empty themselves.\n //\n // Also if the hash isn't there, then delete things just in case something\n // is weird.\n if (oldPluginsHash && pluginsHash !== oldPluginsHash) {\n reporter.info(reporter.stripIndent`\n One or more of your plugins have changed since the last time you ran Gatsby. As\n a precaution, we're deleting your site's cache to ensure there's no stale data.\n `)\n }\n\n // .cache directory exists in develop at this point\n // so checking for .cache/json as a heuristic (could be any expected file)\n const cacheIsCorrupt = cacheJsonDirExists && !publicDirExists\n\n if (cacheIsCorrupt) {\n reporter.info(reporter.stripIndent`\n We've detected that the Gatsby cache is incomplete (the .cache directory exists\n but the public directory does not). As a precaution, we're deleting your site's\n cache to ensure there's no stale data.\n `)\n }\n\n if (!oldPluginsHash || pluginsHash !== oldPluginsHash || cacheIsCorrupt) {\n try {\n // Comment out inviet until we can test perf impact\n //\n // let sourceFileSystemVersion = flattenedPlugins.find(\n // plugin => plugin.name === `gatsby-source-filesystem`\n // )?.version\n\n // // The site might be using a plugin which uses \"createRemoteFileNode\" but\n // // doesn't have gatsby-source-filesystem in their gatsby-config.js. So lets\n // // also try requiring it.\n // if (!sourceFileSystemVersion) {\n // try {\n // sourceFileSystemVersion = require(`gatsby-source-filesystem/package.json`)\n // ?.version\n // } catch {\n // // ignore require errors\n // }\n // }\n // } else if (\n // sourceFileSystemVersion &&\n // semver.lt(sourceFileSystemVersion, `2.9.0`)\n // ) {\n // // If the site has more than 50 downloaded files in it, tell them\n // // how to save time.\n // try {\n // // Divide by two as the directory as both cache files + the actual downloaded files so\n // // two results / downloaded file.\n // const filesCount =\n // (await fs.readdir(`.cache/caches/gatsby-source-filesystem`))\n // .length / 2\n // if (filesCount > 50) {\n // reporter.info(stripIndent`\\n\\n\n\n // Your local development experience is about to get better, faster, and stronger!\n\n // Your friendly Gatsby maintainers detected your site downloads quite a few files and that we're about to delete all ${Math.round(\n // filesCount\n // )} of them 😅. We're working right now to make our caching smarter which means we won't delete your downloaded files any more.\n\n // If you're interested in trialing the new caching behavior *today* — which should make your local development environment faster, go ahead and enable the PRESERVE_FILE_DOWNLOAD_CACHE flag and run your develop server again.\n\n // To do so, add to your gatsby-config.js:\n\n // flags: {\n // preserve_file_download_cache: true,\n // }\n\n // visit the umbrella issue to learn more: https://github.com/gatsbyjs/gatsby/discussions/28331\n // `)\n // }\n // } catch {\n // // ignore errors (mostly will just be directory not found).\n // }\n // }\n\n if (\n process.env.GATSBY_EXPERIMENTAL_PRESERVE_FILE_DOWNLOAD_CACHE ||\n process.env.GATSBY_EXPERIMENTAL_PRESERVE_WEBPACK_CACHE\n ) {\n const deleteGlobs = [\n // By default delete all files & subdirectories\n `${cacheDirectory}/**`,\n `${cacheDirectory}/*/`,\n ]\n\n if (process.env.GATSBY_EXPERIMENTAL_PRESERVE_FILE_DOWNLOAD_CACHE) {\n // Stop the caches directory from being deleted, add all sub directories,\n // but remove gatsby-source-filesystem\n deleteGlobs.push(`!${cacheDirectory}/caches`)\n deleteGlobs.push(`${cacheDirectory}/caches/*`)\n deleteGlobs.push(`!${cacheDirectory}/caches/gatsby-source-filesystem`)\n }\n\n if (process.env.GATSBY_EXPERIMENTAL_PRESERVE_WEBPACK_CACHE) {\n // Add webpack\n deleteGlobs.push(`!${cacheDirectory}/webpack`)\n }\n await del(deleteGlobs)\n } else {\n // Attempt to empty dir if remove fails,\n // like when directory is mount point\n await fs.remove(cacheDirectory).catch(() => fs.emptyDir(cacheDirectory))\n }\n } catch (e) {\n reporter.error(`Failed to remove .cache files.`, e)\n }\n // Tell reducers to delete their data (the store will already have\n // been loaded from the file system cache).\n store.dispatch({\n type: `DELETE_CACHE`,\n cacheIsCorrupt,\n })\n\n // in future this should show which plugin's caches are purged\n // possibly should also have which plugins had caches\n telemetry.decorateEvent(`BUILD_END`, {\n pluginCachesPurged: [`*`],\n })\n telemetry.decorateEvent(`DEVELOP_STOP`, {\n pluginCachesPurged: [`*`],\n })\n }\n\n // Update the store with the new plugins hash.\n store.dispatch({\n type: `UPDATE_PLUGINS_HASH`,\n payload: pluginsHash,\n })\n\n // Now that we know the .cache directory is safe, initialize the cache\n // directory.\n await fs.ensureDir(cacheDirectory)\n\n // Ensure the public/static directory\n await fs.ensureDir(`${publicDirectory}/static`)\n\n activity.end()\n\n activity = reporter.activityTimer(`copy gatsby files`, {\n parentSpan,\n })\n activity.start()\n const srcDir = `${__dirname}/../../cache-dir`\n const siteDir = cacheDirectory\n const tryRequire = `${__dirname}/../utils/test-require-error.js`\n try {\n await fs.copy(srcDir, siteDir)\n await fs.copy(tryRequire, `${siteDir}/test-require-error.js`)\n await fs.ensureDirSync(`${cacheDirectory}/json`)\n\n // Ensure .cache/fragments exists and is empty. We want fragments to be\n // added on every run in response to data as fragments can only be added if\n // the data used to create the schema they're dependent on is available.\n await fs.emptyDir(`${cacheDirectory}/fragments`)\n } catch (err) {\n reporter.panic(`Unable to copy site files to .cache`, err)\n }\n\n // Find plugins which implement gatsby-browser and gatsby-ssr and write\n // out api-runners for them.\n const hasAPIFile = (env, plugin): string | undefined => {\n // The plugin loader has disabled SSR APIs for this plugin. Usually due to\n // multiple implementations of an API that can only be implemented once\n if (env === `ssr` && plugin.skipSSR === true) return undefined\n\n const envAPIs = plugin[`${env}APIs`]\n\n // Always include gatsby-browser.js files if they exist as they're\n // a handy place to include global styles and other global imports.\n try {\n if (env === `browser`) {\n return slash(\n require.resolve(path.join(plugin.resolve, `gatsby-${env}`))\n )\n }\n } catch (e) {\n // ignore\n }\n\n if (envAPIs && Array.isArray(envAPIs) && envAPIs.length > 0) {\n return slash(path.join(plugin.resolve, `gatsby-${env}`))\n }\n return undefined\n }\n\n const isResolved = (plugin): plugin is IPluginResolution => !!plugin.resolve\n const isResolvedSSR = (plugin): plugin is IPluginResolutionSSR =>\n !!plugin.resolve\n\n const ssrPlugins: Array<IPluginResolutionSSR> = flattenedPlugins\n .map(plugin => {\n return {\n name: plugin.name,\n resolve: hasAPIFile(`ssr`, plugin),\n options: plugin.pluginOptions,\n }\n })\n .filter(isResolvedSSR)\n\n const browserPlugins: Array<IPluginResolution> = flattenedPlugins\n .map(plugin => {\n return {\n resolve: hasAPIFile(`browser`, plugin),\n options: plugin.pluginOptions,\n }\n })\n .filter(isResolved)\n\n const browserPluginsRequires = browserPlugins\n .map(plugin => {\n // we need a relative import path to keep contenthash the same if directory changes\n const relativePluginPath = path.relative(siteDir, plugin.resolve)\n return `{\n plugin: require('${slash(relativePluginPath)}'),\n options: ${JSON.stringify(plugin.options)},\n }`\n })\n .join(`,`)\n\n const browserAPIRunner = `module.exports = [${browserPluginsRequires}]\\n`\n\n let sSRAPIRunner = ``\n\n try {\n sSRAPIRunner = fs.readFileSync(`${siteDir}/api-runner-ssr.js`, `utf-8`)\n } catch (err) {\n reporter.panic(`Failed to read ${siteDir}/api-runner-ssr.js`, err)\n }\n\n const ssrPluginsRequires = ssrPlugins\n .map(\n plugin =>\n `{\n name: '${plugin.name}',\n plugin: require('${plugin.resolve}'),\n options: ${JSON.stringify(plugin.options)},\n }`\n )\n .join(`,`)\n sSRAPIRunner = `var plugins = [${ssrPluginsRequires}]\\n${sSRAPIRunner}`\n\n fs.writeFileSync(\n `${siteDir}/api-runner-browser-plugins.js`,\n browserAPIRunner,\n `utf-8`\n )\n fs.writeFileSync(`${siteDir}/api-runner-ssr.js`, sSRAPIRunner, `utf-8`)\n\n activity.end()\n /**\n * Start the main bootstrap processes.\n */\n\n // onPreBootstrap\n activity = reporter.activityTimer(`onPreBootstrap`, {\n parentSpan,\n })\n activity.start()\n await apiRunnerNode(`onPreBootstrap`, {\n parentSpan: activity.span,\n })\n activity.end()\n\n // Collect resolvable extensions and attach to program.\n const extensions = [`.mjs`, `.js`, `.jsx`, `.wasm`, `.json`]\n // Change to this being an action and plugins implement `onPreBootstrap`\n // for adding extensions.\n const apiResults = await apiRunnerNode(`resolvableExtensions`, {\n traceId: `initial-resolvableExtensions`,\n parentSpan,\n })\n\n store.dispatch({\n type: `SET_PROGRAM_EXTENSIONS`,\n payload: _.flattenDeep([extensions, apiResults]),\n })\n\n const workerPool = WorkerPool.create()\n\n return {\n store,\n workerPool,\n }\n}\n"],"file":"initialize.js"}
|
|
1
|
+
{"version":3,"sources":["../../src/services/initialize.ts"],"names":["process","env","gatsby_executing_command","GATSBY_EXPERIMENTAL_FAST_DEV","GATSBY_EXPERIMENTAL_DEV_SSR","PRESERVE_FILE_DOWNLOAD_CACHE","PRESERVE_WEBPACK_CACHE","reporter","info","telemetry","trackFeatureIsUsed","on","reason","panic","initialize","program","args","parentSpan","GATSBY_DISABLE_CACHE_PERSISTENCE","setStore","store","directory","browserslist","dispatch","type","payload","activityForJobs","emitter","phantomActivity","start","onEndJob","getState","jobs","active","length","end","activity","activityTimer","config","flattenedPlugins","siteDirectory","processFlags","GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND","GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR","polyfill","warn","CYPRESS_SUPPORT","verbose","pluginsStr","_","uniq","map","p","name","version","decorateEvent","plugins","span","cacheDirectory","publicDirectory","cacheJsonDirExists","fs","existsSync","publicDirExists","NODE_ENV","pluginVersions","hashes","Promise","all","catch","pluginsHash","crypto","createHash","update","JSON","stringify","concat","digest","state","oldPluginsHash","status","PLUGINS_HASH","stripIndent","cacheIsCorrupt","GATSBY_EXPERIMENTAL_PRESERVE_FILE_DOWNLOAD_CACHE","GATSBY_EXPERIMENTAL_PRESERVE_WEBPACK_CACHE","deleteGlobs","push","remove","emptyDir","e","error","pluginCachesPurged","ensureDir","srcDir","__dirname","siteDir","tryRequire","copy","ensureDirSync","err","hasAPIFile","plugin","skipSSR","undefined","envAPIs","require","resolve","path","join","Array","isArray","isResolved","isResolvedSSR","ssrPlugins","options","pluginOptions","filter","browserPlugins","browserPluginsRequires","relativePluginPath","relative","browserAPIRunner","sSRAPIRunner","readFileSync","ssrPluginsRequires","writeFileSync","extensions","apiResults","traceId","flattenDeep","workerPool","WorkerPool","create"],"mappings":"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","sourcesContent":["import _ from \"lodash\"\nimport { slash, isCI } from \"gatsby-core-utils\"\nimport fs from \"fs-extra\"\nimport md5File from \"md5-file\"\nimport crypto from \"crypto\"\nimport del from \"del\"\nimport path from \"path\"\nimport telemetry from \"gatsby-telemetry\"\n\nimport apiRunnerNode from \"../utils/api-runner-node\"\nimport { getBrowsersList } from \"../utils/browserslist\"\nimport { Store, AnyAction } from \"redux\"\nimport * as WorkerPool from \"../utils/worker/pool\"\nimport { startPluginRunner } from \"../redux/plugin-runner\"\nimport { store, emitter } from \"../redux\"\nimport reporter from \"gatsby-cli/lib/reporter\"\nimport { removeStaleJobs } from \"../bootstrap/remove-stale-jobs\"\nimport { IPluginInfoOptions } from \"../bootstrap/load-plugins/types\"\nimport { IGatsbyState } from \"../redux/types\"\nimport { IBuildContext } from \"./types\"\nimport { detectLmdbStore } from \"../datastore\"\nimport { loadConfigAndPlugins } from \"../bootstrap/load-config-and-plugins\"\n\ninterface IPluginResolution {\n resolve: string\n options: IPluginInfoOptions\n}\n\ninterface IPluginResolutionSSR extends IPluginResolution {\n name: string\n}\n\n// If the env variable GATSBY_EXPERIMENTAL_FAST_DEV is set, enable\n// all DEV experimental changes (but only during development & not on CI).\nif (\n process.env.gatsby_executing_command === `develop` &&\n process.env.GATSBY_EXPERIMENTAL_FAST_DEV &&\n !isCI()\n) {\n process.env.GATSBY_EXPERIMENTAL_DEV_SSR = `true`\n process.env.PRESERVE_FILE_DOWNLOAD_CACHE = `true`\n process.env.PRESERVE_WEBPACK_CACHE = `true`\n\n reporter.info(`\nThree fast dev experiments are enabled: Development SSR, preserving file download cache and preserving webpack cache.\n\nPlease give feedback on their respective umbrella issues!\n\n- https://gatsby.dev/dev-ssr-feedback\n- https://gatsby.dev/cache-clearing-feedback\n `)\n\n telemetry.trackFeatureIsUsed(`FastDev`)\n}\n\n// Show stack trace on unhandled promises.\nprocess.on(`unhandledRejection`, (reason: unknown) => {\n // https://github.com/DefinitelyTyped/DefinitelyTyped/issues/33636\n reporter.panic((reason as Error) || `Unhandled rejection`)\n})\n\n// Override console.log to add the source file + line number.\n// Useful for debugging if you lose a console.log somewhere.\n// Otherwise leave commented out.\n// require(`../bootstrap/log-line-function`)\n\nexport async function initialize({\n program: args,\n parentSpan,\n}: IBuildContext): Promise<{\n store: Store<IGatsbyState, AnyAction>\n workerPool: WorkerPool.GatsbyWorkerPool\n}> {\n if (process.env.GATSBY_DISABLE_CACHE_PERSISTENCE) {\n reporter.info(\n `GATSBY_DISABLE_CACHE_PERSISTENCE is enabled. Cache won't be persisted. Next builds will not be able to reuse any work done by current session.`\n )\n telemetry.trackFeatureIsUsed(`DisableCachePersistence`)\n }\n if (!args) {\n reporter.panic(`Missing program args`)\n }\n\n /* Time for a little story...\n * When running `gatsby develop`, the globally installed gatsby-cli starts\n * and sets up a Redux store (which is where logs are now stored). When gatsby\n * finds your project's locally installed gatsby-cli package in node_modules,\n * it switches over. This instance will have a separate redux store. We need to\n * ensure that the correct store is used which is why we call setStore\n * (/packages/gatsby-cli/src/reporter/redux/index.js)\n *\n * This function\n * - copies over the logs from the global gatsby-cli to the local one\n * - sets the store to the local one (so that further actions dispatched by\n * the global gatsby-cli are handled by the local one)\n */\n if (args.setStore) {\n args.setStore(store)\n }\n\n const directory = slash(args.directory)\n\n const program = {\n ...args,\n browserslist: getBrowsersList(directory),\n // Fix program directory path for windows env.\n directory,\n }\n\n store.dispatch({\n type: `SET_PROGRAM`,\n payload: program,\n })\n\n let activityForJobs\n\n emitter.on(`CREATE_JOB`, () => {\n if (!activityForJobs) {\n activityForJobs = reporter.phantomActivity(`Running jobs`)\n activityForJobs.start()\n }\n })\n\n const onEndJob = (): void => {\n if (activityForJobs && store.getState().jobs.active.length === 0) {\n activityForJobs.end()\n activityForJobs = null\n }\n }\n\n emitter.on(`END_JOB`, onEndJob)\n\n // Try opening the site's gatsby-config.js file.\n let activity = reporter.activityTimer(\n `open and validate gatsby-configs, load plugins`,\n {\n parentSpan,\n }\n )\n activity.start()\n\n const { config, flattenedPlugins } = await loadConfigAndPlugins({\n siteDirectory: program.directory,\n processFlags: true,\n })\n\n // TODO: figure out proper way of disabling loading indicator\n // for now GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR=false gatsby develop\n // will work, but we don't want to force users into using env vars\n if (\n process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND &&\n !process.env.GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR\n ) {\n // if query on demand is enabled and GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR was not set at all\n // enable loading indicator\n process.env.GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR = `true`\n }\n detectLmdbStore()\n\n if (config && config.polyfill) {\n reporter.warn(\n `Support for custom Promise polyfills has been removed in Gatsby v2. We only support Babel 7's new automatic polyfilling behavior.`\n )\n }\n\n activity.end()\n\n if (process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND) {\n if (process.env.gatsby_executing_command !== `develop`) {\n // we don't want to ever have this flag enabled for anything than develop\n // in case someone have this env var globally set\n delete process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND\n } else if (isCI() && !process.env.CYPRESS_SUPPORT) {\n delete process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND\n reporter.verbose(\n `Experimental Query on Demand feature is not available in CI environment. Continuing with eager query running.`\n )\n }\n }\n\n // run stale jobs\n store.dispatch(removeStaleJobs(store.getState()))\n\n // Multiple occurrences of the same name-version-pair can occur,\n // so we report an array of unique pairs\n const pluginsStr = _.uniq(flattenedPlugins.map(p => `${p.name}@${p.version}`))\n telemetry.decorateEvent(`BUILD_END`, {\n plugins: pluginsStr,\n })\n\n telemetry.decorateEvent(`DEVELOP_STOP`, {\n plugins: pluginsStr,\n })\n\n // Start plugin runner which listens to the store\n // and invokes Gatsby API based on actions.\n startPluginRunner()\n\n // onPreInit\n activity = reporter.activityTimer(`onPreInit`, {\n parentSpan,\n })\n activity.start()\n await apiRunnerNode(`onPreInit`, { parentSpan: activity.span })\n activity.end()\n\n const cacheDirectory = `${program.directory}/.cache`\n const publicDirectory = `${program.directory}/public`\n\n const cacheJsonDirExists = fs.existsSync(`${cacheDirectory}/json`)\n const publicDirExists = fs.existsSync(publicDirectory)\n\n // For builds in case public dir exists, but cache doesn't, we need to clean up potentially stale\n // artifacts from previous builds (due to cache not being available, we can't rely on tracking of artifacts)\n if (\n process.env.NODE_ENV === `production` &&\n publicDirExists &&\n !cacheJsonDirExists\n ) {\n activity = reporter.activityTimer(\n `delete html and css files from previous builds`,\n {\n parentSpan,\n }\n )\n activity.start()\n await del([\n `public/**/*.{html,css}`,\n `!public/page-data/**/*`,\n `!public/static`,\n `!public/static/**/*.{html,css}`,\n ])\n activity.end()\n }\n\n activity = reporter.activityTimer(`initialize cache`, {\n parentSpan,\n })\n activity.start()\n // Check if any plugins have been updated since our last run. If so\n // we delete the cache is there's likely been changes\n // since the previous run.\n //\n // We do this by creating a hash of all the version numbers of installed\n // plugins, the site's package.json, gatsby-config.js, and gatsby-node.js.\n // The last, gatsby-node.js, is important as many gatsby sites put important\n // logic in there e.g. generating slugs for custom pages.\n const pluginVersions = flattenedPlugins.map(p => p.version)\n const hashes: any = await Promise.all([\n md5File(`package.json`),\n md5File(`${program.directory}/gatsby-config.js`).catch(() => {}), // ignore as this file isn't required),\n md5File(`${program.directory}/gatsby-node.js`).catch(() => {}), // ignore as this file isn't required),\n ])\n const pluginsHash = crypto\n .createHash(`md5`)\n .update(JSON.stringify(pluginVersions.concat(hashes)))\n .digest(`hex`)\n const state = store.getState()\n const oldPluginsHash = state && state.status ? state.status.PLUGINS_HASH : ``\n\n // Check if anything has changed. If it has, delete the site's .cache\n // directory and tell reducers to empty themselves.\n //\n // Also if the hash isn't there, then delete things just in case something\n // is weird.\n if (oldPluginsHash && pluginsHash !== oldPluginsHash) {\n reporter.info(reporter.stripIndent`\n One or more of your plugins have changed since the last time you ran Gatsby. As\n a precaution, we're deleting your site's cache to ensure there's no stale data.\n `)\n }\n\n // .cache directory exists in develop at this point\n // so checking for .cache/json as a heuristic (could be any expected file)\n const cacheIsCorrupt = cacheJsonDirExists && !publicDirExists\n\n if (cacheIsCorrupt) {\n reporter.info(reporter.stripIndent`\n We've detected that the Gatsby cache is incomplete (the .cache directory exists\n but the public directory does not). As a precaution, we're deleting your site's\n cache to ensure there's no stale data.\n `)\n }\n\n if (!oldPluginsHash || pluginsHash !== oldPluginsHash || cacheIsCorrupt) {\n try {\n // Comment out inviet until we can test perf impact\n //\n // let sourceFileSystemVersion = flattenedPlugins.find(\n // plugin => plugin.name === `gatsby-source-filesystem`\n // )?.version\n\n // // The site might be using a plugin which uses \"createRemoteFileNode\" but\n // // doesn't have gatsby-source-filesystem in their gatsby-config.js. So lets\n // // also try requiring it.\n // if (!sourceFileSystemVersion) {\n // try {\n // sourceFileSystemVersion = require(`gatsby-source-filesystem/package.json`)\n // ?.version\n // } catch {\n // // ignore require errors\n // }\n // }\n // } else if (\n // sourceFileSystemVersion &&\n // semver.lt(sourceFileSystemVersion, `2.9.0`)\n // ) {\n // // If the site has more than 50 downloaded files in it, tell them\n // // how to save time.\n // try {\n // // Divide by two as the directory as both cache files + the actual downloaded files so\n // // two results / downloaded file.\n // const filesCount =\n // (await fs.readdir(`.cache/caches/gatsby-source-filesystem`))\n // .length / 2\n // if (filesCount > 50) {\n // reporter.info(stripIndent`\\n\\n\n\n // Your local development experience is about to get better, faster, and stronger!\n\n // Your friendly Gatsby maintainers detected your site downloads quite a few files and that we're about to delete all ${Math.round(\n // filesCount\n // )} of them 😅. We're working right now to make our caching smarter which means we won't delete your downloaded files any more.\n\n // If you're interested in trialing the new caching behavior *today* — which should make your local development environment faster, go ahead and enable the PRESERVE_FILE_DOWNLOAD_CACHE flag and run your develop server again.\n\n // To do so, add to your gatsby-config.js:\n\n // flags: {\n // preserve_file_download_cache: true,\n // }\n\n // visit the umbrella issue to learn more: https://github.com/gatsbyjs/gatsby/discussions/28331\n // `)\n // }\n // } catch {\n // // ignore errors (mostly will just be directory not found).\n // }\n // }\n\n if (\n process.env.GATSBY_EXPERIMENTAL_PRESERVE_FILE_DOWNLOAD_CACHE ||\n process.env.GATSBY_EXPERIMENTAL_PRESERVE_WEBPACK_CACHE\n ) {\n const deleteGlobs = [\n // By default delete all files & subdirectories\n `${cacheDirectory}/**`,\n `${cacheDirectory}/*/`,\n ]\n\n if (process.env.GATSBY_EXPERIMENTAL_PRESERVE_FILE_DOWNLOAD_CACHE) {\n // Stop the caches directory from being deleted, add all sub directories,\n // but remove gatsby-source-filesystem\n deleteGlobs.push(`!${cacheDirectory}/caches`)\n deleteGlobs.push(`${cacheDirectory}/caches/*`)\n deleteGlobs.push(`!${cacheDirectory}/caches/gatsby-source-filesystem`)\n }\n\n if (process.env.GATSBY_EXPERIMENTAL_PRESERVE_WEBPACK_CACHE) {\n // Add webpack\n deleteGlobs.push(`!${cacheDirectory}/webpack`)\n }\n await del(deleteGlobs)\n } else {\n // Attempt to empty dir if remove fails,\n // like when directory is mount point\n await fs.remove(cacheDirectory).catch(() => fs.emptyDir(cacheDirectory))\n }\n } catch (e) {\n reporter.error(`Failed to remove .cache files.`, e)\n }\n // Tell reducers to delete their data (the store will already have\n // been loaded from the file system cache).\n store.dispatch({\n type: `DELETE_CACHE`,\n cacheIsCorrupt,\n })\n\n // in future this should show which plugin's caches are purged\n // possibly should also have which plugins had caches\n telemetry.decorateEvent(`BUILD_END`, {\n pluginCachesPurged: [`*`],\n })\n telemetry.decorateEvent(`DEVELOP_STOP`, {\n pluginCachesPurged: [`*`],\n })\n }\n\n // Update the store with the new plugins hash.\n store.dispatch({\n type: `UPDATE_PLUGINS_HASH`,\n payload: pluginsHash,\n })\n\n // Now that we know the .cache directory is safe, initialize the cache\n // directory.\n await fs.ensureDir(cacheDirectory)\n\n // Ensure the public/static directory\n await fs.ensureDir(`${publicDirectory}/static`)\n\n // Init plugins once cache is initialized\n await apiRunnerNode(`unstable_onPluginInit`)\n\n activity.end()\n\n activity = reporter.activityTimer(`copy gatsby files`, {\n parentSpan,\n })\n activity.start()\n const srcDir = `${__dirname}/../../cache-dir`\n const siteDir = cacheDirectory\n const tryRequire = `${__dirname}/../utils/test-require-error.js`\n try {\n await fs.copy(srcDir, siteDir)\n await fs.copy(tryRequire, `${siteDir}/test-require-error.js`)\n await fs.ensureDirSync(`${cacheDirectory}/json`)\n\n // Ensure .cache/fragments exists and is empty. We want fragments to be\n // added on every run in response to data as fragments can only be added if\n // the data used to create the schema they're dependent on is available.\n await fs.emptyDir(`${cacheDirectory}/fragments`)\n } catch (err) {\n reporter.panic(`Unable to copy site files to .cache`, err)\n }\n\n // Find plugins which implement gatsby-browser and gatsby-ssr and write\n // out api-runners for them.\n const hasAPIFile = (env, plugin): string | undefined => {\n // The plugin loader has disabled SSR APIs for this plugin. Usually due to\n // multiple implementations of an API that can only be implemented once\n if (env === `ssr` && plugin.skipSSR === true) return undefined\n\n const envAPIs = plugin[`${env}APIs`]\n\n // Always include gatsby-browser.js files if they exist as they're\n // a handy place to include global styles and other global imports.\n try {\n if (env === `browser`) {\n return slash(\n require.resolve(path.join(plugin.resolve, `gatsby-${env}`))\n )\n }\n } catch (e) {\n // ignore\n }\n\n if (envAPIs && Array.isArray(envAPIs) && envAPIs.length > 0) {\n return slash(path.join(plugin.resolve, `gatsby-${env}`))\n }\n return undefined\n }\n\n const isResolved = (plugin): plugin is IPluginResolution => !!plugin.resolve\n const isResolvedSSR = (plugin): plugin is IPluginResolutionSSR =>\n !!plugin.resolve\n\n const ssrPlugins: Array<IPluginResolutionSSR> = flattenedPlugins\n .map(plugin => {\n return {\n name: plugin.name,\n resolve: hasAPIFile(`ssr`, plugin),\n options: plugin.pluginOptions,\n }\n })\n .filter(isResolvedSSR)\n\n const browserPlugins: Array<IPluginResolution> = flattenedPlugins\n .map(plugin => {\n return {\n resolve: hasAPIFile(`browser`, plugin),\n options: plugin.pluginOptions,\n }\n })\n .filter(isResolved)\n\n const browserPluginsRequires = browserPlugins\n .map(plugin => {\n // we need a relative import path to keep contenthash the same if directory changes\n const relativePluginPath = path.relative(siteDir, plugin.resolve)\n return `{\n plugin: require('${slash(relativePluginPath)}'),\n options: ${JSON.stringify(plugin.options)},\n }`\n })\n .join(`,`)\n\n const browserAPIRunner = `module.exports = [${browserPluginsRequires}]\\n`\n\n let sSRAPIRunner = ``\n\n try {\n sSRAPIRunner = fs.readFileSync(`${siteDir}/api-runner-ssr.js`, `utf-8`)\n } catch (err) {\n reporter.panic(`Failed to read ${siteDir}/api-runner-ssr.js`, err)\n }\n\n const ssrPluginsRequires = ssrPlugins\n .map(\n plugin =>\n `{\n name: '${plugin.name}',\n plugin: require('${plugin.resolve}'),\n options: ${JSON.stringify(plugin.options)},\n }`\n )\n .join(`,`)\n sSRAPIRunner = `var plugins = [${ssrPluginsRequires}]\\n${sSRAPIRunner}`\n\n fs.writeFileSync(\n `${siteDir}/api-runner-browser-plugins.js`,\n browserAPIRunner,\n `utf-8`\n )\n fs.writeFileSync(`${siteDir}/api-runner-ssr.js`, sSRAPIRunner, `utf-8`)\n\n activity.end()\n /**\n * Start the main bootstrap processes.\n */\n\n // onPreBootstrap\n activity = reporter.activityTimer(`onPreBootstrap`, {\n parentSpan,\n })\n activity.start()\n await apiRunnerNode(`onPreBootstrap`, {\n parentSpan: activity.span,\n })\n activity.end()\n\n // Collect resolvable extensions and attach to program.\n const extensions = [`.mjs`, `.js`, `.jsx`, `.wasm`, `.json`]\n // Change to this being an action and plugins implement `onPreBootstrap`\n // for adding extensions.\n const apiResults = await apiRunnerNode(`resolvableExtensions`, {\n traceId: `initial-resolvableExtensions`,\n parentSpan,\n })\n\n store.dispatch({\n type: `SET_PROGRAM_EXTENSIONS`,\n payload: _.flattenDeep([extensions, apiResults]),\n })\n\n const workerPool = WorkerPool.create()\n\n return {\n store,\n workerPool,\n }\n}\n"],"file":"initialize.js"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
3
5
|
exports.__esModule = true;
|
|
4
6
|
exports.loadConfigAndPlugins = loadConfigAndPlugins;
|
|
5
7
|
|
|
@@ -7,6 +9,8 @@ var _loadConfigAndPlugins = require("../../../bootstrap/load-config-and-plugins"
|
|
|
7
9
|
|
|
8
10
|
var _redux = require("../../../redux");
|
|
9
11
|
|
|
12
|
+
var _apiRunnerNode = _interopRequireDefault(require("../../api-runner-node"));
|
|
13
|
+
|
|
10
14
|
async function loadConfigAndPlugins(...args) {
|
|
11
15
|
const [{
|
|
12
16
|
siteDirectory
|
|
@@ -19,6 +23,8 @@ async function loadConfigAndPlugins(...args) {
|
|
|
19
23
|
}
|
|
20
24
|
});
|
|
21
25
|
|
|
22
|
-
await (0, _loadConfigAndPlugins.loadConfigAndPlugins)(...args);
|
|
26
|
+
await (0, _loadConfigAndPlugins.loadConfigAndPlugins)(...args); // Cache is already initialized
|
|
27
|
+
|
|
28
|
+
await (0, _apiRunnerNode.default)(`unstable_onPluginInit`);
|
|
23
29
|
}
|
|
24
30
|
//# sourceMappingURL=load-config-and-plugins.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/utils/worker/child/load-config-and-plugins.ts"],"names":["loadConfigAndPlugins","args","siteDirectory","store","dispatch","type","payload","directory"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../src/utils/worker/child/load-config-and-plugins.ts"],"names":["loadConfigAndPlugins","args","siteDirectory","store","dispatch","type","payload","directory"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAEO,eAAeA,oBAAf,CACL,GAAGC,IADE,EAEU;AACf,QAAM,CAAC;AAAEC,IAAAA;AAAF,GAAD,IAAsBD,IAA5B;;AAEAE,eAAMC,QAAN,CAAe;AACbC,IAAAA,IAAI,EAAG,aADM;AAEbC,IAAAA,OAAO,EAAE;AACPC,MAAAA,SAAS,EAAEL;AADJ;AAFI,GAAf;;AAMA,QAAM,gDAA6B,GAAGD,IAAhC,CAAN,CATe,CAWf;;AACA,QAAM,4BAAe,uBAAf,CAAN;AACD","sourcesContent":["import { loadConfigAndPlugins as internalLoadConfigAndPlugins } from \"../../../bootstrap/load-config-and-plugins\"\nimport { store } from \"../../../redux\"\nimport apiRunnerNode from \"../../api-runner-node\"\n\nexport async function loadConfigAndPlugins(\n ...args: Parameters<typeof internalLoadConfigAndPlugins>\n): Promise<void> {\n const [{ siteDirectory }] = args\n\n store.dispatch({\n type: `SET_PROGRAM`,\n payload: {\n directory: siteDirectory,\n },\n })\n await internalLoadConfigAndPlugins(...args)\n\n // Cache is already initialized\n await apiRunnerNode(`unstable_onPluginInit`)\n}\n"],"file":"load-config-and-plugins.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/___admin/styles.ac2d3128404ecdaeec67.css" data-identity="gatsby-global-css">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}</style><meta name="generator" content="Gatsby 3.9.
|
|
1
|
+
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/___admin/styles.ac2d3128404ecdaeec67.css" data-identity="gatsby-global-css">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}</style><meta name="generator" content="Gatsby 3.9.1"/><title data-react-helmet="true"></title><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hiA.woff2"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hiA.woff2"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hiA.woff2"/><style>@font-face{font-family:Inter;font-style:normal;font-weight:400;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:600;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:800;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:400;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hjg.woff) format("woff");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:600;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hjg.woff) format("woff");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:800;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hjg.woff) format("woff");font-display:swap}</style><link as="script" rel="preload" href="/___admin/webpack-runtime-e28720258d642805053f.js"/><link as="script" rel="preload" href="/___admin/framework-b24cde22b86a9930317b.js"/><link as="script" rel="preload" href="/___admin/app-87ad9d5b0d69e1dff850.js"/><link as="script" rel="preload" href="/___admin/e2852b4470dcb2615e49edcd9de2a3c8119d4bec-8f0ece9fb0388e9d29f0.js"/><link as="script" rel="preload" href="/___admin/c432bec7e9afb3443fd639df9e5f119e13575cf7-c73e9fe03e5830637703.js"/><link as="script" rel="preload" href="/___admin/854a7ef1f34af0aefbdfdd9304a0c00251662775-b0fb3ea518f8db46ab3c.js"/><link as="script" rel="preload" href="/___admin/component---src-pages-index-tsx-455d21fec959a5b752ca.js"/><link as="fetch" rel="preload" href="/___admin/page-data/index/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/___admin/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><style data-emotion-css="ict6so">body{background-color:#ffffff;}body color{header:#000000;primary:#36313d;secondary:#78757a;placeholder:#b7b5bd;}</style><style data-emotion-css="fw25na">*{box-sizing:border-box;}body{margin:0rem;background-color:var(--theme-ui-colors-grey-5,#fbfbfb);}</style><style data-emotion-css="1pf5xd">.css-1pf5xd{box-sizing:border-box;margin:0;min-width:0;color:primary;overflow:visible;}</style><svg viewBox="0 0 32 32" width="48" height="48" stroke-width="4" fill="none" stroke="currentcolor" role="img" class="css-1pf5xd"><title>Loading...</title><circle cx="16" cy="16" r="12" opacity="0.125"></circle><style data-emotion-css="wpcq6n animation-1q8eu9e">.css-wpcq6n{box-sizing:border-box;margin:0;min-width:0;-webkit-transform-origin:50% 50%;-ms-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-animation-name:animation-1q8eu9e;animation-name:animation-1q8eu9e;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-duration:500ms;animation-duration:500ms;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;}@-webkit-keyframes animation-1q8eu9e{from{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}to{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}@keyframes animation-1q8eu9e{from{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}to{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}</style><circle cx="16" cy="16" r="12" stroke-dasharray="75.39822368615503" stroke-dashoffset="56.548667764616276" class="css-wpcq6n"></circle></svg></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e2b931f86732051d332e.js"],"app":["/app-87ad9d5b0d69e1dff850.js"],"component---src-pages-index-tsx":["/component---src-pages-index-tsx-455d21fec959a5b752ca.js"],"component---src-pages-pages-tsx":["/component---src-pages-pages-tsx-561790bad7dfbd777c34.js"],"component---src-pages-plugins-tsx":["/component---src-pages-plugins-tsx-79f5388e76bb004c461a.js"],"component---src-pages-recipe-js":["/component---src-pages-recipe-js-67ce632b0cfbcb61d113.js"],"component---src-pages-recipes-tsx":["/component---src-pages-recipes-tsx-d2dfd910c146829d70ac.js"]};/*]]>*/</script><script src="/___admin/polyfill-e2b931f86732051d332e.js" nomodule=""></script><script src="/___admin/component---src-pages-index-tsx-455d21fec959a5b752ca.js" async=""></script><script src="/___admin/854a7ef1f34af0aefbdfdd9304a0c00251662775-b0fb3ea518f8db46ab3c.js" async=""></script><script src="/___admin/c432bec7e9afb3443fd639df9e5f119e13575cf7-c73e9fe03e5830637703.js" async=""></script><script src="/___admin/e2852b4470dcb2615e49edcd9de2a3c8119d4bec-8f0ece9fb0388e9d29f0.js" async=""></script><script src="/___admin/app-87ad9d5b0d69e1dff850.js" async=""></script><script src="/___admin/framework-b24cde22b86a9930317b.js" async=""></script><script src="/___admin/webpack-runtime-e28720258d642805053f.js" async=""></script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/___admin/styles.ac2d3128404ecdaeec67.css" data-identity="gatsby-global-css">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}</style><meta name="generator" content="Gatsby 3.9.
|
|
1
|
+
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/___admin/styles.ac2d3128404ecdaeec67.css" data-identity="gatsby-global-css">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}</style><meta name="generator" content="Gatsby 3.9.1"/><title data-react-helmet="true"></title><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hiA.woff2"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hiA.woff2"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hiA.woff2"/><style>@font-face{font-family:Inter;font-style:normal;font-weight:400;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:600;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:800;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:400;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hjg.woff) format("woff");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:600;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hjg.woff) format("woff");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:800;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hjg.woff) format("woff");font-display:swap}</style><link as="script" rel="preload" href="/___admin/webpack-runtime-e28720258d642805053f.js"/><link as="script" rel="preload" href="/___admin/framework-b24cde22b86a9930317b.js"/><link as="script" rel="preload" href="/___admin/app-87ad9d5b0d69e1dff850.js"/><link as="script" rel="preload" href="/___admin/component---src-pages-pages-tsx-561790bad7dfbd777c34.js"/><link as="fetch" rel="preload" href="/___admin/page-data/pages/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/___admin/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><style data-emotion-css="ict6so">body{background-color:#ffffff;}body color{header:#000000;primary:#36313d;secondary:#78757a;placeholder:#b7b5bd;}</style><style data-emotion-css="fw25na">*{box-sizing:border-box;}body{margin:0rem;background-color:var(--theme-ui-colors-grey-5,#fbfbfb);}</style><style data-emotion-css="1pf5xd">.css-1pf5xd{box-sizing:border-box;margin:0;min-width:0;color:primary;overflow:visible;}</style><svg viewBox="0 0 32 32" width="48" height="48" stroke-width="4" fill="none" stroke="currentcolor" role="img" class="css-1pf5xd"><title>Loading...</title><circle cx="16" cy="16" r="12" opacity="0.125"></circle><style data-emotion-css="wpcq6n animation-1q8eu9e">.css-wpcq6n{box-sizing:border-box;margin:0;min-width:0;-webkit-transform-origin:50% 50%;-ms-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-animation-name:animation-1q8eu9e;animation-name:animation-1q8eu9e;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-duration:500ms;animation-duration:500ms;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;}@-webkit-keyframes animation-1q8eu9e{from{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}to{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}@keyframes animation-1q8eu9e{from{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}to{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}</style><circle cx="16" cy="16" r="12" stroke-dasharray="75.39822368615503" stroke-dashoffset="56.548667764616276" class="css-wpcq6n"></circle></svg></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/pages/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e2b931f86732051d332e.js"],"app":["/app-87ad9d5b0d69e1dff850.js"],"component---src-pages-index-tsx":["/component---src-pages-index-tsx-455d21fec959a5b752ca.js"],"component---src-pages-pages-tsx":["/component---src-pages-pages-tsx-561790bad7dfbd777c34.js"],"component---src-pages-plugins-tsx":["/component---src-pages-plugins-tsx-79f5388e76bb004c461a.js"],"component---src-pages-recipe-js":["/component---src-pages-recipe-js-67ce632b0cfbcb61d113.js"],"component---src-pages-recipes-tsx":["/component---src-pages-recipes-tsx-d2dfd910c146829d70ac.js"]};/*]]>*/</script><script src="/___admin/polyfill-e2b931f86732051d332e.js" nomodule=""></script><script src="/___admin/component---src-pages-pages-tsx-561790bad7dfbd777c34.js" async=""></script><script src="/___admin/app-87ad9d5b0d69e1dff850.js" async=""></script><script src="/___admin/framework-b24cde22b86a9930317b.js" async=""></script><script src="/___admin/webpack-runtime-e28720258d642805053f.js" async=""></script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/___admin/styles.ac2d3128404ecdaeec67.css" data-identity="gatsby-global-css">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}</style><meta name="generator" content="Gatsby 3.9.
|
|
1
|
+
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/___admin/styles.ac2d3128404ecdaeec67.css" data-identity="gatsby-global-css">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}</style><meta name="generator" content="Gatsby 3.9.1"/><title data-react-helmet="true"></title><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hiA.woff2"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hiA.woff2"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hiA.woff2"/><style>@font-face{font-family:Inter;font-style:normal;font-weight:400;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:600;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:800;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:400;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hjg.woff) format("woff");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:600;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hjg.woff) format("woff");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:800;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hjg.woff) format("woff");font-display:swap}</style><link as="script" rel="preload" href="/___admin/webpack-runtime-e28720258d642805053f.js"/><link as="script" rel="preload" href="/___admin/framework-b24cde22b86a9930317b.js"/><link as="script" rel="preload" href="/___admin/app-87ad9d5b0d69e1dff850.js"/><link as="script" rel="preload" href="/___admin/69bd6bf3-f374cd2e1ee0e375f045.js"/><link as="script" rel="preload" href="/___admin/4c744e84-130bfe682cbb8896de3a.js"/><link as="script" rel="preload" href="/___admin/e2852b4470dcb2615e49edcd9de2a3c8119d4bec-8f0ece9fb0388e9d29f0.js"/><link as="script" rel="preload" href="/___admin/c432bec7e9afb3443fd639df9e5f119e13575cf7-c73e9fe03e5830637703.js"/><link as="script" rel="preload" href="/___admin/784b2cee55c07b638f20445dec340adf9f1888a3-ff699326697a9b0f1141.js"/><link as="script" rel="preload" href="/___admin/component---src-pages-plugins-tsx-79f5388e76bb004c461a.js"/><link as="fetch" rel="preload" href="/___admin/page-data/plugins/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/___admin/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><style data-emotion-css="ict6so">body{background-color:#ffffff;}body color{header:#000000;primary:#36313d;secondary:#78757a;placeholder:#b7b5bd;}</style><style data-emotion-css="fw25na">*{box-sizing:border-box;}body{margin:0rem;background-color:var(--theme-ui-colors-grey-5,#fbfbfb);}</style><style data-emotion-css="1pf5xd">.css-1pf5xd{box-sizing:border-box;margin:0;min-width:0;color:primary;overflow:visible;}</style><svg viewBox="0 0 32 32" width="48" height="48" stroke-width="4" fill="none" stroke="currentcolor" role="img" class="css-1pf5xd"><title>Loading...</title><circle cx="16" cy="16" r="12" opacity="0.125"></circle><style data-emotion-css="wpcq6n animation-1q8eu9e">.css-wpcq6n{box-sizing:border-box;margin:0;min-width:0;-webkit-transform-origin:50% 50%;-ms-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-animation-name:animation-1q8eu9e;animation-name:animation-1q8eu9e;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-duration:500ms;animation-duration:500ms;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;}@-webkit-keyframes animation-1q8eu9e{from{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}to{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}@keyframes animation-1q8eu9e{from{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}to{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}</style><circle cx="16" cy="16" r="12" stroke-dasharray="75.39822368615503" stroke-dashoffset="56.548667764616276" class="css-wpcq6n"></circle></svg></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/plugins/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e2b931f86732051d332e.js"],"app":["/app-87ad9d5b0d69e1dff850.js"],"component---src-pages-index-tsx":["/component---src-pages-index-tsx-455d21fec959a5b752ca.js"],"component---src-pages-pages-tsx":["/component---src-pages-pages-tsx-561790bad7dfbd777c34.js"],"component---src-pages-plugins-tsx":["/component---src-pages-plugins-tsx-79f5388e76bb004c461a.js"],"component---src-pages-recipe-js":["/component---src-pages-recipe-js-67ce632b0cfbcb61d113.js"],"component---src-pages-recipes-tsx":["/component---src-pages-recipes-tsx-d2dfd910c146829d70ac.js"]};/*]]>*/</script><script src="/___admin/polyfill-e2b931f86732051d332e.js" nomodule=""></script><script src="/___admin/component---src-pages-plugins-tsx-79f5388e76bb004c461a.js" async=""></script><script src="/___admin/784b2cee55c07b638f20445dec340adf9f1888a3-ff699326697a9b0f1141.js" async=""></script><script src="/___admin/c432bec7e9afb3443fd639df9e5f119e13575cf7-c73e9fe03e5830637703.js" async=""></script><script src="/___admin/e2852b4470dcb2615e49edcd9de2a3c8119d4bec-8f0ece9fb0388e9d29f0.js" async=""></script><script src="/___admin/4c744e84-130bfe682cbb8896de3a.js" async=""></script><script src="/___admin/69bd6bf3-f374cd2e1ee0e375f045.js" async=""></script><script src="/___admin/app-87ad9d5b0d69e1dff850.js" async=""></script><script src="/___admin/framework-b24cde22b86a9930317b.js" async=""></script><script src="/___admin/webpack-runtime-e28720258d642805053f.js" async=""></script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/___admin/styles.ac2d3128404ecdaeec67.css" data-identity="gatsby-global-css">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}</style><meta name="generator" content="Gatsby 3.9.
|
|
1
|
+
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/___admin/styles.ac2d3128404ecdaeec67.css" data-identity="gatsby-global-css">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}</style><meta name="generator" content="Gatsby 3.9.1"/><title data-react-helmet="true"></title><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hiA.woff2"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hiA.woff2"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hiA.woff2"/><style>@font-face{font-family:Inter;font-style:normal;font-weight:400;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:600;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:800;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:400;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hjg.woff) format("woff");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:600;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hjg.woff) format("woff");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:800;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hjg.woff) format("woff");font-display:swap}</style><link as="script" rel="preload" href="/___admin/webpack-runtime-e28720258d642805053f.js"/><link as="script" rel="preload" href="/___admin/framework-b24cde22b86a9930317b.js"/><link as="script" rel="preload" href="/___admin/app-87ad9d5b0d69e1dff850.js"/><link as="script" rel="preload" href="/___admin/69bd6bf3-f374cd2e1ee0e375f045.js"/><link as="script" rel="preload" href="/___admin/854a7ef1f34af0aefbdfdd9304a0c00251662775-b0fb3ea518f8db46ab3c.js"/><link as="script" rel="preload" href="/___admin/784b2cee55c07b638f20445dec340adf9f1888a3-ff699326697a9b0f1141.js"/><link as="script" rel="preload" href="/___admin/component---src-pages-recipe-js-67ce632b0cfbcb61d113.js"/><link as="fetch" rel="preload" href="/___admin/page-data/recipe/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/___admin/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><style data-emotion-css="ict6so">body{background-color:#ffffff;}body color{header:#000000;primary:#36313d;secondary:#78757a;placeholder:#b7b5bd;}</style><style data-emotion-css="fw25na">*{box-sizing:border-box;}body{margin:0rem;background-color:var(--theme-ui-colors-grey-5,#fbfbfb);}</style><style data-emotion-css="1pf5xd">.css-1pf5xd{box-sizing:border-box;margin:0;min-width:0;color:primary;overflow:visible;}</style><svg viewBox="0 0 32 32" width="48" height="48" stroke-width="4" fill="none" stroke="currentcolor" role="img" class="css-1pf5xd"><title>Loading...</title><circle cx="16" cy="16" r="12" opacity="0.125"></circle><style data-emotion-css="wpcq6n animation-1q8eu9e">.css-wpcq6n{box-sizing:border-box;margin:0;min-width:0;-webkit-transform-origin:50% 50%;-ms-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-animation-name:animation-1q8eu9e;animation-name:animation-1q8eu9e;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-duration:500ms;animation-duration:500ms;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;}@-webkit-keyframes animation-1q8eu9e{from{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}to{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}@keyframes animation-1q8eu9e{from{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}to{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}</style><circle cx="16" cy="16" r="12" stroke-dasharray="75.39822368615503" stroke-dashoffset="56.548667764616276" class="css-wpcq6n"></circle></svg></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/recipe/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e2b931f86732051d332e.js"],"app":["/app-87ad9d5b0d69e1dff850.js"],"component---src-pages-index-tsx":["/component---src-pages-index-tsx-455d21fec959a5b752ca.js"],"component---src-pages-pages-tsx":["/component---src-pages-pages-tsx-561790bad7dfbd777c34.js"],"component---src-pages-plugins-tsx":["/component---src-pages-plugins-tsx-79f5388e76bb004c461a.js"],"component---src-pages-recipe-js":["/component---src-pages-recipe-js-67ce632b0cfbcb61d113.js"],"component---src-pages-recipes-tsx":["/component---src-pages-recipes-tsx-d2dfd910c146829d70ac.js"]};/*]]>*/</script><script src="/___admin/polyfill-e2b931f86732051d332e.js" nomodule=""></script><script src="/___admin/component---src-pages-recipe-js-67ce632b0cfbcb61d113.js" async=""></script><script src="/___admin/784b2cee55c07b638f20445dec340adf9f1888a3-ff699326697a9b0f1141.js" async=""></script><script src="/___admin/854a7ef1f34af0aefbdfdd9304a0c00251662775-b0fb3ea518f8db46ab3c.js" async=""></script><script src="/___admin/69bd6bf3-f374cd2e1ee0e375f045.js" async=""></script><script src="/___admin/app-87ad9d5b0d69e1dff850.js" async=""></script><script src="/___admin/framework-b24cde22b86a9930317b.js" async=""></script><script src="/___admin/webpack-runtime-e28720258d642805053f.js" async=""></script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/___admin/styles.ac2d3128404ecdaeec67.css" data-identity="gatsby-global-css">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}</style><meta name="generator" content="Gatsby 3.9.
|
|
1
|
+
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/___admin/styles.ac2d3128404ecdaeec67.css" data-identity="gatsby-global-css">/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}</style><meta name="generator" content="Gatsby 3.9.1"/><title data-react-helmet="true"></title><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hiA.woff2"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hiA.woff2"/><link rel="preload" as="font" type="font/woff2" crossorigin="anonymous" href="/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hiA.woff2"/><style>@font-face{font-family:Inter;font-style:normal;font-weight:400;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:600;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:800;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hiA.woff2) format("woff2");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:400;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfAZ9hjg.woff) format("woff");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:600;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuGKYAZ9hjg.woff) format("woff");font-display:swap}@font-face{font-family:Inter;font-style:normal;font-weight:800;src:url(/___admin/static/webfonts/s/inter/v3/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuDyYAZ9hjg.woff) format("woff");font-display:swap}</style><link as="script" rel="preload" href="/___admin/webpack-runtime-e28720258d642805053f.js"/><link as="script" rel="preload" href="/___admin/framework-b24cde22b86a9930317b.js"/><link as="script" rel="preload" href="/___admin/app-87ad9d5b0d69e1dff850.js"/><link as="script" rel="preload" href="/___admin/component---src-pages-recipes-tsx-d2dfd910c146829d70ac.js"/><link as="fetch" rel="preload" href="/___admin/page-data/recipes/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/___admin/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><style data-emotion-css="ict6so">body{background-color:#ffffff;}body color{header:#000000;primary:#36313d;secondary:#78757a;placeholder:#b7b5bd;}</style><style data-emotion-css="fw25na">*{box-sizing:border-box;}body{margin:0rem;background-color:var(--theme-ui-colors-grey-5,#fbfbfb);}</style><style data-emotion-css="1pf5xd">.css-1pf5xd{box-sizing:border-box;margin:0;min-width:0;color:primary;overflow:visible;}</style><svg viewBox="0 0 32 32" width="48" height="48" stroke-width="4" fill="none" stroke="currentcolor" role="img" class="css-1pf5xd"><title>Loading...</title><circle cx="16" cy="16" r="12" opacity="0.125"></circle><style data-emotion-css="wpcq6n animation-1q8eu9e">.css-wpcq6n{box-sizing:border-box;margin:0;min-width:0;-webkit-transform-origin:50% 50%;-ms-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-animation-name:animation-1q8eu9e;animation-name:animation-1q8eu9e;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-duration:500ms;animation-duration:500ms;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;}@-webkit-keyframes animation-1q8eu9e{from{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}to{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}@keyframes animation-1q8eu9e{from{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}to{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}</style><circle cx="16" cy="16" r="12" stroke-dasharray="75.39822368615503" stroke-dashoffset="56.548667764616276" class="css-wpcq6n"></circle></svg></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/recipes/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e2b931f86732051d332e.js"],"app":["/app-87ad9d5b0d69e1dff850.js"],"component---src-pages-index-tsx":["/component---src-pages-index-tsx-455d21fec959a5b752ca.js"],"component---src-pages-pages-tsx":["/component---src-pages-pages-tsx-561790bad7dfbd777c34.js"],"component---src-pages-plugins-tsx":["/component---src-pages-plugins-tsx-79f5388e76bb004c461a.js"],"component---src-pages-recipe-js":["/component---src-pages-recipe-js-67ce632b0cfbcb61d113.js"],"component---src-pages-recipes-tsx":["/component---src-pages-recipes-tsx-d2dfd910c146829d70ac.js"]};/*]]>*/</script><script src="/___admin/polyfill-e2b931f86732051d332e.js" nomodule=""></script><script src="/___admin/component---src-pages-recipes-tsx-d2dfd910c146829d70ac.js" async=""></script><script src="/___admin/app-87ad9d5b0d69e1dff850.js" async=""></script><script src="/___admin/framework-b24cde22b86a9930317b.js" async=""></script><script src="/___admin/webpack-runtime-e28720258d642805053f.js" async=""></script></body></html>
|
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": "3.9.
|
|
4
|
+
"version": "3.9.1",
|
|
5
5
|
"author": "Kyle Mathews <mathews.kyle@gmail.com>",
|
|
6
6
|
"bin": {
|
|
7
7
|
"gatsby": "./cli.js"
|
|
@@ -259,5 +259,5 @@
|
|
|
259
259
|
"yargs": {
|
|
260
260
|
"boolean-negation": false
|
|
261
261
|
},
|
|
262
|
-
"gitHead": "
|
|
262
|
+
"gitHead": "ea694a3d571a7ccc7dc9d3e22a7e4a0ba2829f07"
|
|
263
263
|
}
|