@depup/gatsby 5.16.1-depup.0
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/LICENSE +22 -0
- package/README.md +142 -0
- package/adapters.js +31 -0
- package/apis.json +73 -0
- package/cache-dir/.eslintrc.json +10 -0
- package/cache-dir/api-runner-browser-plugins.js +14 -0
- package/cache-dir/api-runner-browser.js +52 -0
- package/cache-dir/api-runner-ssr.js +88 -0
- package/cache-dir/api-ssr-docs.js +207 -0
- package/cache-dir/app.js +249 -0
- package/cache-dir/blank.css +0 -0
- package/cache-dir/commonjs/api-runner-browser-plugins.js +17 -0
- package/cache-dir/commonjs/api-runner-browser-plugins.js.map +1 -0
- package/cache-dir/commonjs/api-runner-browser.js +49 -0
- package/cache-dir/commonjs/api-runner-browser.js.map +1 -0
- package/cache-dir/commonjs/api-runner-ssr.js +88 -0
- package/cache-dir/commonjs/api-runner-ssr.js.map +1 -0
- package/cache-dir/commonjs/api-ssr-docs.js +210 -0
- package/cache-dir/commonjs/api-ssr-docs.js.map +1 -0
- package/cache-dir/commonjs/app.js +197 -0
- package/cache-dir/commonjs/app.js.map +1 -0
- package/cache-dir/commonjs/context-utils.js +25 -0
- package/cache-dir/commonjs/context-utils.js.map +1 -0
- package/cache-dir/commonjs/create-content-digest-browser-shim.js +4 -0
- package/cache-dir/commonjs/create-content-digest-browser-shim.js.map +1 -0
- package/cache-dir/commonjs/css-to-object.js +21 -0
- package/cache-dir/commonjs/css-to-object.js.map +1 -0
- package/cache-dir/commonjs/debug-log.js +11 -0
- package/cache-dir/commonjs/debug-log.js.map +1 -0
- package/cache-dir/commonjs/default-html.js +33 -0
- package/cache-dir/commonjs/default-html.js.map +1 -0
- package/cache-dir/commonjs/dev-loader.js +247 -0
- package/cache-dir/commonjs/dev-loader.js.map +1 -0
- package/cache-dir/commonjs/develop-static-entry.js +129 -0
- package/cache-dir/commonjs/develop-static-entry.js.map +1 -0
- package/cache-dir/commonjs/dummy.js +8 -0
- package/cache-dir/commonjs/dummy.js.map +1 -0
- package/cache-dir/commonjs/emitter.js +10 -0
- package/cache-dir/commonjs/emitter.js.map +1 -0
- package/cache-dir/commonjs/ensure-resources.js +107 -0
- package/cache-dir/commonjs/ensure-resources.js.map +1 -0
- package/cache-dir/commonjs/error-overlay-handler.js +35 -0
- package/cache-dir/commonjs/error-overlay-handler.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/accordion.js +80 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/accordion.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/build-error.js +44 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/build-error.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/code-frame.js +38 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/code-frame.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/dev-ssr-error.js +52 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/dev-ssr-error.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/error-boundary.js +31 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/error-boundary.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/getserverdata-error.js +47 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/getserverdata-error.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/graphql-errors.js +77 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/graphql-errors.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/hooks.js +93 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/hooks.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/overlay.js +147 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/overlay.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/runtime-errors.js +110 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/runtime-errors.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/use-id.js +50 -0
- package/cache-dir/commonjs/fast-refresh-overlay/components/use-id.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/helpers/focus-trap.js +2879 -0
- package/cache-dir/commonjs/fast-refresh-overlay/helpers/focus-trap.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/helpers/keys.js +84 -0
- package/cache-dir/commonjs/fast-refresh-overlay/helpers/keys.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/helpers/lock-body.js +48 -0
- package/cache-dir/commonjs/fast-refresh-overlay/helpers/lock-body.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/helpers/match.js +44 -0
- package/cache-dir/commonjs/fast-refresh-overlay/helpers/match.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/index.js +182 -0
- package/cache-dir/commonjs/fast-refresh-overlay/index.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/style.js +418 -0
- package/cache-dir/commonjs/fast-refresh-overlay/style.js.map +1 -0
- package/cache-dir/commonjs/fast-refresh-overlay/utils.js +75 -0
- package/cache-dir/commonjs/fast-refresh-overlay/utils.js.map +1 -0
- package/cache-dir/commonjs/find-path.js +145 -0
- package/cache-dir/commonjs/find-path.js.map +1 -0
- package/cache-dir/commonjs/gatsby-browser-entry.js +52 -0
- package/cache-dir/commonjs/gatsby-browser-entry.js.map +1 -0
- package/cache-dir/commonjs/head/components/fire-callback-in-effect.js +18 -0
- package/cache-dir/commonjs/head/components/fire-callback-in-effect.js.map +1 -0
- package/cache-dir/commonjs/head/components/head-components.js +72 -0
- package/cache-dir/commonjs/head/components/head-components.js.map +1 -0
- package/cache-dir/commonjs/head/constants.js +13 -0
- package/cache-dir/commonjs/head/constants.js.map +1 -0
- package/cache-dir/commonjs/head/head-export-handler-for-browser.js +144 -0
- package/cache-dir/commonjs/head/head-export-handler-for-browser.js.map +1 -0
- package/cache-dir/commonjs/head/head-export-handler-for-ssr.js +225 -0
- package/cache-dir/commonjs/head/head-export-handler-for-ssr.js.map +1 -0
- package/cache-dir/commonjs/head/utils.js +264 -0
- package/cache-dir/commonjs/head/utils.js.map +1 -0
- package/cache-dir/commonjs/loader.js +861 -0
- package/cache-dir/commonjs/loader.js.map +1 -0
- package/cache-dir/commonjs/loading-indicator/index.js +25 -0
- package/cache-dir/commonjs/loading-indicator/index.js.map +1 -0
- package/cache-dir/commonjs/loading-indicator/indicator.js +63 -0
- package/cache-dir/commonjs/loading-indicator/indicator.js.map +1 -0
- package/cache-dir/commonjs/loading-indicator/style.js +103 -0
- package/cache-dir/commonjs/loading-indicator/style.js.map +1 -0
- package/cache-dir/commonjs/navigation.js +260 -0
- package/cache-dir/commonjs/navigation.js.map +1 -0
- package/cache-dir/commonjs/normalize-page-path.js +22 -0
- package/cache-dir/commonjs/normalize-page-path.js.map +1 -0
- package/cache-dir/commonjs/page-renderer.js +59 -0
- package/cache-dir/commonjs/page-renderer.js.map +1 -0
- package/cache-dir/commonjs/pages.json +1 -0
- package/cache-dir/commonjs/polyfill-entry.js +7 -0
- package/cache-dir/commonjs/polyfill-entry.js.map +1 -0
- package/cache-dir/commonjs/prefetch.js +67 -0
- package/cache-dir/commonjs/prefetch.js.map +1 -0
- package/cache-dir/commonjs/production-app.js +256 -0
- package/cache-dir/commonjs/production-app.js.map +1 -0
- package/cache-dir/commonjs/public-page-renderer-dev.js +26 -0
- package/cache-dir/commonjs/public-page-renderer-dev.js.map +1 -0
- package/cache-dir/commonjs/public-page-renderer-prod.js +30 -0
- package/cache-dir/commonjs/public-page-renderer-prod.js.map +1 -0
- package/cache-dir/commonjs/public-page-renderer.js +11 -0
- package/cache-dir/commonjs/public-page-renderer.js.map +1 -0
- package/cache-dir/commonjs/query-result-store.js +160 -0
- package/cache-dir/commonjs/query-result-store.js.map +1 -0
- package/cache-dir/commonjs/react-dom-utils.js +34 -0
- package/cache-dir/commonjs/react-dom-utils.js.map +1 -0
- package/cache-dir/commonjs/react-lifecycles-compat.js +4 -0
- package/cache-dir/commonjs/react-lifecycles-compat.js.map +1 -0
- package/cache-dir/commonjs/redirect-utils.js +25 -0
- package/cache-dir/commonjs/redirect-utils.js.map +1 -0
- package/cache-dir/commonjs/redirects.json +1 -0
- package/cache-dir/commonjs/register-service-worker.js +66 -0
- package/cache-dir/commonjs/register-service-worker.js.map +1 -0
- package/cache-dir/commonjs/root.js +105 -0
- package/cache-dir/commonjs/root.js.map +1 -0
- package/cache-dir/commonjs/route-announcer-props.js +24 -0
- package/cache-dir/commonjs/route-announcer-props.js.map +1 -0
- package/cache-dir/commonjs/server-utils/writable-as-promise.js +42 -0
- package/cache-dir/commonjs/server-utils/writable-as-promise.js.map +1 -0
- package/cache-dir/commonjs/shadow-portal.js +36 -0
- package/cache-dir/commonjs/shadow-portal.js.map +1 -0
- package/cache-dir/commonjs/slice/context.js +15 -0
- package/cache-dir/commonjs/slice/context.js.map +1 -0
- package/cache-dir/commonjs/slice/inline-slice.js +34 -0
- package/cache-dir/commonjs/slice/inline-slice.js.map +1 -0
- package/cache-dir/commonjs/slice/server-slice-renderer.js +29 -0
- package/cache-dir/commonjs/slice/server-slice-renderer.js.map +1 -0
- package/cache-dir/commonjs/slice/server-slice.js +54 -0
- package/cache-dir/commonjs/slice/server-slice.js.map +1 -0
- package/cache-dir/commonjs/slice.js +124 -0
- package/cache-dir/commonjs/slice.js.map +1 -0
- package/cache-dir/commonjs/socketIo.js +62 -0
- package/cache-dir/commonjs/socketIo.js.map +1 -0
- package/cache-dir/commonjs/ssr-builtin-trackers/child_process.js +8 -0
- package/cache-dir/commonjs/ssr-builtin-trackers/child_process.js.map +1 -0
- package/cache-dir/commonjs/ssr-builtin-trackers/fs.js +7 -0
- package/cache-dir/commonjs/ssr-builtin-trackers/fs.js.map +1 -0
- package/cache-dir/commonjs/ssr-builtin-trackers/http.js +9 -0
- package/cache-dir/commonjs/ssr-builtin-trackers/http.js.map +1 -0
- package/cache-dir/commonjs/ssr-builtin-trackers/http2.js +7 -0
- package/cache-dir/commonjs/ssr-builtin-trackers/http2.js.map +1 -0
- package/cache-dir/commonjs/ssr-builtin-trackers/https.js +9 -0
- package/cache-dir/commonjs/ssr-builtin-trackers/https.js.map +1 -0
- package/cache-dir/commonjs/ssr-builtin-trackers/tracking-unsafe-module-wrapper.js +55 -0
- package/cache-dir/commonjs/ssr-builtin-trackers/tracking-unsafe-module-wrapper.js.map +1 -0
- package/cache-dir/commonjs/ssr-develop-static-entry.js +366 -0
- package/cache-dir/commonjs/ssr-develop-static-entry.js.map +1 -0
- package/cache-dir/commonjs/static-entry.js +544 -0
- package/cache-dir/commonjs/static-entry.js.map +1 -0
- package/cache-dir/commonjs/static-query.js +74 -0
- package/cache-dir/commonjs/static-query.js.map +1 -0
- package/cache-dir/commonjs/strip-prefix.js +22 -0
- package/cache-dir/commonjs/strip-prefix.js.map +1 -0
- package/cache-dir/context-utils.js +29 -0
- package/cache-dir/create-content-digest-browser-shim.js +1 -0
- package/cache-dir/css-to-object.js +19 -0
- package/cache-dir/debug-log.js +13 -0
- package/cache-dir/default-html.js +36 -0
- package/cache-dir/dev-loader.js +280 -0
- package/cache-dir/develop-static-entry.js +129 -0
- package/cache-dir/dummy.js +2 -0
- package/cache-dir/emitter.js +4 -0
- package/cache-dir/ensure-resources.js +119 -0
- package/cache-dir/error-overlay-handler.js +36 -0
- package/cache-dir/fast-refresh-overlay/components/accordion.js +83 -0
- package/cache-dir/fast-refresh-overlay/components/build-error.js +46 -0
- package/cache-dir/fast-refresh-overlay/components/code-frame.js +38 -0
- package/cache-dir/fast-refresh-overlay/components/dev-ssr-error.js +66 -0
- package/cache-dir/fast-refresh-overlay/components/error-boundary.js +28 -0
- package/cache-dir/fast-refresh-overlay/components/getserverdata-error.js +53 -0
- package/cache-dir/fast-refresh-overlay/components/graphql-errors.js +100 -0
- package/cache-dir/fast-refresh-overlay/components/hooks.js +102 -0
- package/cache-dir/fast-refresh-overlay/components/overlay.js +143 -0
- package/cache-dir/fast-refresh-overlay/components/runtime-errors.js +139 -0
- package/cache-dir/fast-refresh-overlay/components/use-id.js +56 -0
- package/cache-dir/fast-refresh-overlay/helpers/focus-trap.js +3561 -0
- package/cache-dir/fast-refresh-overlay/helpers/keys.js +80 -0
- package/cache-dir/fast-refresh-overlay/helpers/lock-body.js +52 -0
- package/cache-dir/fast-refresh-overlay/helpers/match.js +42 -0
- package/cache-dir/fast-refresh-overlay/index.js +147 -0
- package/cache-dir/fast-refresh-overlay/style.js +413 -0
- package/cache-dir/fast-refresh-overlay/utils.js +81 -0
- package/cache-dir/find-path.js +160 -0
- package/cache-dir/gatsby-browser-entry.js +27 -0
- package/cache-dir/head/components/fire-callback-in-effect.js +12 -0
- package/cache-dir/head/components/head-components.js +86 -0
- package/cache-dir/head/constants.js +15 -0
- package/cache-dir/head/head-export-handler-for-browser.js +170 -0
- package/cache-dir/head/head-export-handler-for-ssr.js +237 -0
- package/cache-dir/head/utils.js +287 -0
- package/cache-dir/loader.js +977 -0
- package/cache-dir/loading-indicator/index.js +19 -0
- package/cache-dir/loading-indicator/indicator.js +65 -0
- package/cache-dir/loading-indicator/style.js +99 -0
- package/cache-dir/navigation.js +257 -0
- package/cache-dir/normalize-page-path.js +17 -0
- package/cache-dir/page-renderer.js +59 -0
- package/cache-dir/page-ssr/index.d.ts +76 -0
- package/cache-dir/pages.json +1 -0
- package/cache-dir/polyfill-entry.js +5 -0
- package/cache-dir/prefetch.js +80 -0
- package/cache-dir/production-app.js +340 -0
- package/cache-dir/public-page-renderer-dev.js +21 -0
- package/cache-dir/public-page-renderer-prod.js +25 -0
- package/cache-dir/public-page-renderer.js +9 -0
- package/cache-dir/query-engine/index.d.ts +31 -0
- package/cache-dir/query-result-store.js +197 -0
- package/cache-dir/react-dom-utils.js +38 -0
- package/cache-dir/react-lifecycles-compat.js +1 -0
- package/cache-dir/redirect-utils.js +22 -0
- package/cache-dir/redirects.json +1 -0
- package/cache-dir/register-service-worker.js +64 -0
- package/cache-dir/root.js +147 -0
- package/cache-dir/route-announcer-props.js +18 -0
- package/cache-dir/server-utils/writable-as-promise.js +41 -0
- package/cache-dir/shadow-portal.js +28 -0
- package/cache-dir/slice/context.js +13 -0
- package/cache-dir/slice/inline-slice.js +34 -0
- package/cache-dir/slice/server-slice-renderer.js +28 -0
- package/cache-dir/slice/server-slice.js +52 -0
- package/cache-dir/slice.js +158 -0
- package/cache-dir/socketIo.js +58 -0
- package/cache-dir/ssr-builtin-trackers/child_process.js +4 -0
- package/cache-dir/ssr-builtin-trackers/fs.js +3 -0
- package/cache-dir/ssr-builtin-trackers/http.js +3 -0
- package/cache-dir/ssr-builtin-trackers/http2.js +3 -0
- package/cache-dir/ssr-builtin-trackers/https.js +3 -0
- package/cache-dir/ssr-builtin-trackers/tracking-unsafe-module-wrapper.js +64 -0
- package/cache-dir/ssr-develop-static-entry.js +428 -0
- package/cache-dir/static-entry.js +594 -0
- package/cache-dir/static-query.js +91 -0
- package/cache-dir/strip-prefix.js +20 -0
- package/changes.json +454 -0
- package/cli.js +3 -0
- package/dist/bin/gatsby.js +5 -0
- package/dist/bin/gatsby.js.map +1 -0
- package/dist/bootstrap/__mocks__/get-config/ts/gatsby-config.d.ts +3 -0
- package/dist/bootstrap/__mocks__/resolve-module-exports.d.ts +1 -0
- package/dist/bootstrap/create-graphql-runner.d.ts +10 -0
- package/dist/bootstrap/create-graphql-runner.js +71 -0
- package/dist/bootstrap/create-graphql-runner.js.map +1 -0
- package/dist/bootstrap/get-config-file.d.ts +4 -0
- package/dist/bootstrap/get-config-file.js +152 -0
- package/dist/bootstrap/get-config-file.js.map +1 -0
- package/dist/bootstrap/index.d.ts +12 -0
- package/dist/bootstrap/index.js +56 -0
- package/dist/bootstrap/index.js.map +1 -0
- package/dist/bootstrap/load-config/index.d.ts +7 -0
- package/dist/bootstrap/load-config/index.js +73 -0
- package/dist/bootstrap/load-config/index.js.map +1 -0
- package/dist/bootstrap/load-plugins/index.d.ts +3 -0
- package/dist/bootstrap/load-plugins/index.js +79 -0
- package/dist/bootstrap/load-plugins/index.js.map +1 -0
- package/dist/bootstrap/load-plugins/load-internal-plugins.d.ts +2 -0
- package/dist/bootstrap/load-plugins/load-internal-plugins.js +105 -0
- package/dist/bootstrap/load-plugins/load-internal-plugins.js.map +1 -0
- package/dist/bootstrap/load-plugins/process-plugin.d.ts +2 -0
- package/dist/bootstrap/load-plugins/process-plugin.js +81 -0
- package/dist/bootstrap/load-plugins/process-plugin.js.map +1 -0
- package/dist/bootstrap/load-plugins/resolve-plugin.d.ts +13 -0
- package/dist/bootstrap/load-plugins/resolve-plugin.js +75 -0
- package/dist/bootstrap/load-plugins/resolve-plugin.js.map +1 -0
- package/dist/bootstrap/load-plugins/types.d.ts +48 -0
- package/dist/bootstrap/load-plugins/types.js +4 -0
- package/dist/bootstrap/load-plugins/types.js.map +1 -0
- package/dist/bootstrap/load-plugins/utils/check-local-plugin.d.ts +8 -0
- package/dist/bootstrap/load-plugins/utils/check-local-plugin.js +38 -0
- package/dist/bootstrap/load-plugins/utils/check-local-plugin.js.map +1 -0
- package/dist/bootstrap/load-plugins/utils/create-hash.d.ts +1 -0
- package/dist/bootstrap/load-plugins/utils/create-hash.js +20 -0
- package/dist/bootstrap/load-plugins/utils/create-hash.js.map +1 -0
- package/dist/bootstrap/load-plugins/utils/create-id.d.ts +10 -0
- package/dist/bootstrap/load-plugins/utils/create-id.js +16 -0
- package/dist/bootstrap/load-plugins/utils/create-id.js.map +1 -0
- package/dist/bootstrap/load-plugins/utils/flatten-plugins.d.ts +2 -0
- package/dist/bootstrap/load-plugins/utils/flatten-plugins.js +41 -0
- package/dist/bootstrap/load-plugins/utils/flatten-plugins.js.map +1 -0
- package/dist/bootstrap/load-plugins/utils/get-api.d.ts +12 -0
- package/dist/bootstrap/load-plugins/utils/get-api.js +12 -0
- package/dist/bootstrap/load-plugins/utils/get-api.js.map +1 -0
- package/dist/bootstrap/load-plugins/utils/normalize.d.ts +5 -0
- package/dist/bootstrap/load-plugins/utils/normalize.js +33 -0
- package/dist/bootstrap/load-plugins/utils/normalize.js.map +1 -0
- package/dist/bootstrap/load-plugins/validate.d.ts +41 -0
- package/dist/bootstrap/load-plugins/validate.js +369 -0
- package/dist/bootstrap/load-plugins/validate.js.map +1 -0
- package/dist/bootstrap/load-themes/index.d.ts +17 -0
- package/dist/bootstrap/load-themes/index.js +186 -0
- package/dist/bootstrap/load-themes/index.js.map +1 -0
- package/dist/bootstrap/log-line-function.d.ts +0 -0
- package/dist/bootstrap/log-line-function.js +19 -0
- package/dist/bootstrap/log-line-function.js.map +1 -0
- package/dist/bootstrap/prefer-default.d.ts +1 -0
- package/dist/bootstrap/prefer-default.js +7 -0
- package/dist/bootstrap/prefer-default.js.map +1 -0
- package/dist/bootstrap/redirects-writer.d.ts +2 -0
- package/dist/bootstrap/redirects-writer.js +59 -0
- package/dist/bootstrap/redirects-writer.js.map +1 -0
- package/dist/bootstrap/remove-stale-jobs.d.ts +2 -0
- package/dist/bootstrap/remove-stale-jobs.js +31 -0
- package/dist/bootstrap/remove-stale-jobs.js.map +1 -0
- package/dist/bootstrap/requires-writer.d.ts +11 -0
- package/dist/bootstrap/requires-writer.js +260 -0
- package/dist/bootstrap/requires-writer.js.map +1 -0
- package/dist/bootstrap/resolve-js-file-path.d.ts +14 -0
- package/dist/bootstrap/resolve-js-file-path.js +58 -0
- package/dist/bootstrap/resolve-js-file-path.js.map +1 -0
- package/dist/bootstrap/resolve-module-exports.d.ts +20 -0
- package/dist/bootstrap/resolve-module-exports.js +188 -0
- package/dist/bootstrap/resolve-module-exports.js.map +1 -0
- package/dist/bootstrap/schema-hot-reloader.d.ts +3 -0
- package/dist/bootstrap/schema-hot-reloader.js +60 -0
- package/dist/bootstrap/schema-hot-reloader.js.map +1 -0
- package/dist/cache/cache-fs.d.ts +1 -0
- package/dist/cache/cache-fs.js +270 -0
- package/dist/cache/cache-fs.js.map +1 -0
- package/dist/cache/json-file-store.d.ts +8 -0
- package/dist/cache/json-file-store.js +144 -0
- package/dist/cache/json-file-store.js.map +1 -0
- package/dist/cache/wrap-callback.d.ts +0 -0
- package/dist/cache/wrap-callback.js +49 -0
- package/dist/cache/wrap-callback.js.map +1 -0
- package/dist/commands/build-html.d.ts +69 -0
- package/dist/commands/build-html.js +652 -0
- package/dist/commands/build-html.js.map +1 -0
- package/dist/commands/build-javascript.d.ts +4 -0
- package/dist/commands/build-javascript.js +18 -0
- package/dist/commands/build-javascript.js.map +1 -0
- package/dist/commands/build-utils.d.ts +8 -0
- package/dist/commands/build-utils.js +186 -0
- package/dist/commands/build-utils.js.map +1 -0
- package/dist/commands/build.d.ts +1 -0
- package/dist/commands/build.js +505 -0
- package/dist/commands/build.js.map +1 -0
- package/dist/commands/clean.d.ts +1 -0
- package/dist/commands/clean.js +29 -0
- package/dist/commands/clean.js.map +1 -0
- package/dist/commands/develop-process.d.ts +1 -0
- package/dist/commands/develop-process.js +120 -0
- package/dist/commands/develop-process.js.map +1 -0
- package/dist/commands/develop-static.d.ts +3 -0
- package/dist/commands/develop-static.js +22 -0
- package/dist/commands/develop-static.js.map +1 -0
- package/dist/commands/develop.d.ts +2 -0
- package/dist/commands/develop.js +273 -0
- package/dist/commands/develop.js.map +1 -0
- package/dist/commands/feedback.d.ts +1 -0
- package/dist/commands/feedback.js +17 -0
- package/dist/commands/feedback.js.map +1 -0
- package/dist/commands/repl.d.ts +1 -0
- package/dist/commands/repl.js +58 -0
- package/dist/commands/repl.js.map +1 -0
- package/dist/commands/serve.d.ts +1 -0
- package/dist/commands/serve.js +282 -0
- package/dist/commands/serve.js.map +1 -0
- package/dist/commands/types.d.ts +54 -0
- package/dist/commands/types.js +23 -0
- package/dist/commands/types.js.map +1 -0
- package/dist/constants.d.ts +1 -0
- package/dist/constants.js +7 -0
- package/dist/constants.js.map +1 -0
- package/dist/datastore/common/iterable.d.ts +51 -0
- package/dist/datastore/common/iterable.js +217 -0
- package/dist/datastore/common/iterable.js.map +1 -0
- package/dist/datastore/common/query.d.ts +69 -0
- package/dist/datastore/common/query.js +219 -0
- package/dist/datastore/common/query.js.map +1 -0
- package/dist/datastore/datastore.d.ts +2 -0
- package/dist/datastore/datastore.js +23 -0
- package/dist/datastore/datastore.js.map +1 -0
- package/dist/datastore/in-memory/in-memory-datastore.d.ts +2 -0
- package/dist/datastore/in-memory/in-memory-datastore.js +75 -0
- package/dist/datastore/in-memory/in-memory-datastore.js.map +1 -0
- package/dist/datastore/in-memory/indexing.d.ts +80 -0
- package/dist/datastore/in-memory/indexing.js +994 -0
- package/dist/datastore/in-memory/indexing.js.map +1 -0
- package/dist/datastore/in-memory/run-fast-filters.d.ts +27 -0
- package/dist/datastore/in-memory/run-fast-filters.js +276 -0
- package/dist/datastore/in-memory/run-fast-filters.js.map +1 -0
- package/dist/datastore/index.d.ts +20 -0
- package/dist/datastore/index.js +34 -0
- package/dist/datastore/index.js.map +1 -0
- package/dist/datastore/lmdb/lmdb-datastore.d.ts +14 -0
- package/dist/datastore/lmdb/lmdb-datastore.js +261 -0
- package/dist/datastore/lmdb/lmdb-datastore.js.map +1 -0
- package/dist/datastore/lmdb/query/common.d.ts +23 -0
- package/dist/datastore/lmdb/query/common.js +127 -0
- package/dist/datastore/lmdb/query/common.js.map +1 -0
- package/dist/datastore/lmdb/query/create-index.d.ts +25 -0
- package/dist/datastore/lmdb/query/create-index.js +239 -0
- package/dist/datastore/lmdb/query/create-index.js.map +1 -0
- package/dist/datastore/lmdb/query/filter-using-index.d.ts +43 -0
- package/dist/datastore/lmdb/query/filter-using-index.js +577 -0
- package/dist/datastore/lmdb/query/filter-using-index.js.map +1 -0
- package/dist/datastore/lmdb/query/run-query.d.ts +9 -0
- package/dist/datastore/lmdb/query/run-query.js +285 -0
- package/dist/datastore/lmdb/query/run-query.js.map +1 -0
- package/dist/datastore/lmdb/query/suggest-index.d.ts +15 -0
- package/dist/datastore/lmdb/query/suggest-index.js +93 -0
- package/dist/datastore/lmdb/query/suggest-index.js.map +1 -0
- package/dist/datastore/lmdb/updates/nodes-by-type.d.ts +3 -0
- package/dist/datastore/lmdb/updates/nodes-by-type.js +21 -0
- package/dist/datastore/lmdb/updates/nodes-by-type.js.map +1 -0
- package/dist/datastore/lmdb/updates/nodes.d.ts +5 -0
- package/dist/datastore/lmdb/updates/nodes.js +33 -0
- package/dist/datastore/lmdb/updates/nodes.js.map +1 -0
- package/dist/datastore/types.d.ts +47 -0
- package/dist/datastore/types.js +4 -0
- package/dist/datastore/types.js.map +1 -0
- package/dist/internal-plugins/bundle-optimisations/gatsby-node.js +42 -0
- package/dist/internal-plugins/bundle-optimisations/gatsby-node.js.map +1 -0
- package/dist/internal-plugins/bundle-optimisations/index.js +3 -0
- package/dist/internal-plugins/bundle-optimisations/index.js.map +1 -0
- package/dist/internal-plugins/bundle-optimisations/package.json +10 -0
- package/dist/internal-plugins/bundle-optimisations/polyfills/fetch.js +4 -0
- package/dist/internal-plugins/bundle-optimisations/polyfills/fetch.js.map +1 -0
- package/dist/internal-plugins/bundle-optimisations/polyfills/no-op.js +3 -0
- package/dist/internal-plugins/bundle-optimisations/polyfills/no-op.js.map +1 -0
- package/dist/internal-plugins/bundle-optimisations/polyfills/object-assign.js +4 -0
- package/dist/internal-plugins/bundle-optimisations/polyfills/object-assign.js.map +1 -0
- package/dist/internal-plugins/bundle-optimisations/polyfills/whatwg-fetch.js +6 -0
- package/dist/internal-plugins/bundle-optimisations/polyfills/whatwg-fetch.js.map +1 -0
- package/dist/internal-plugins/dev-404-page/gatsby-node.js +30 -0
- package/dist/internal-plugins/dev-404-page/gatsby-node.js.map +1 -0
- package/dist/internal-plugins/dev-404-page/index.js +3 -0
- package/dist/internal-plugins/dev-404-page/index.js.map +1 -0
- package/dist/internal-plugins/dev-404-page/package.json +11 -0
- package/dist/internal-plugins/dev-404-page/raw_dev-404-page.js +262 -0
- package/dist/internal-plugins/functions/api-function-webpack-loader.d.ts +3 -0
- package/dist/internal-plugins/functions/api-function-webpack-loader.js +74 -0
- package/dist/internal-plugins/functions/api-function-webpack-loader.js.map +1 -0
- package/dist/internal-plugins/functions/config.d.ts +20 -0
- package/dist/internal-plugins/functions/config.js +96 -0
- package/dist/internal-plugins/functions/config.js.map +1 -0
- package/dist/internal-plugins/functions/gatsby-node.d.ts +3 -0
- package/dist/internal-plugins/functions/gatsby-node.js +452 -0
- package/dist/internal-plugins/functions/gatsby-node.js.map +1 -0
- package/dist/internal-plugins/functions/index.js +3 -0
- package/dist/internal-plugins/functions/index.js.map +1 -0
- package/dist/internal-plugins/functions/middleware.d.ts +11 -0
- package/dist/internal-plugins/functions/middleware.js +160 -0
- package/dist/internal-plugins/functions/middleware.js.map +1 -0
- package/dist/internal-plugins/functions/package.json +11 -0
- package/dist/internal-plugins/internal-data-bridge/gatsby-node.js +191 -0
- package/dist/internal-plugins/internal-data-bridge/gatsby-node.js.map +1 -0
- package/dist/internal-plugins/internal-data-bridge/index.js +3 -0
- package/dist/internal-plugins/internal-data-bridge/index.js.map +1 -0
- package/dist/internal-plugins/internal-data-bridge/package.json +11 -0
- package/dist/internal-plugins/load-babel-config/gatsby-node.js +37 -0
- package/dist/internal-plugins/load-babel-config/gatsby-node.js.map +1 -0
- package/dist/internal-plugins/load-babel-config/index.js +3 -0
- package/dist/internal-plugins/load-babel-config/index.js.map +1 -0
- package/dist/internal-plugins/load-babel-config/package.json +11 -0
- package/dist/internal-plugins/partytown/gatsby-browser.js +23 -0
- package/dist/internal-plugins/partytown/gatsby-browser.js.map +1 -0
- package/dist/internal-plugins/partytown/gatsby-node.d.ts +2 -0
- package/dist/internal-plugins/partytown/gatsby-node.js +60 -0
- package/dist/internal-plugins/partytown/gatsby-node.js.map +1 -0
- package/dist/internal-plugins/partytown/gatsby-ssr.js +39 -0
- package/dist/internal-plugins/partytown/gatsby-ssr.js.map +1 -0
- package/dist/internal-plugins/partytown/index.js +3 -0
- package/dist/internal-plugins/partytown/index.js.map +1 -0
- package/dist/internal-plugins/partytown/package.json +12 -0
- package/dist/internal-plugins/partytown/proxy.d.ts +3 -0
- package/dist/internal-plugins/partytown/proxy.js +26 -0
- package/dist/internal-plugins/partytown/proxy.js.map +1 -0
- package/dist/internal-plugins/partytown/utils/get-forwards.d.ts +2 -0
- package/dist/internal-plugins/partytown/utils/get-forwards.js +8 -0
- package/dist/internal-plugins/partytown/utils/get-forwards.js.map +1 -0
- package/dist/internal-plugins/partytown/utils/inject-partytown-snippet.d.ts +2 -0
- package/dist/internal-plugins/partytown/utils/inject-partytown-snippet.js +28 -0
- package/dist/internal-plugins/partytown/utils/inject-partytown-snippet.js.map +1 -0
- package/dist/internal-plugins/prod-404-500/gatsby-node.js +50 -0
- package/dist/internal-plugins/prod-404-500/gatsby-node.js.map +1 -0
- package/dist/internal-plugins/prod-404-500/index.js +3 -0
- package/dist/internal-plugins/prod-404-500/index.js.map +1 -0
- package/dist/internal-plugins/prod-404-500/package.json +11 -0
- package/dist/internal-plugins/webpack-theme-component-shadowing/create-page.js +31 -0
- package/dist/internal-plugins/webpack-theme-component-shadowing/create-page.js.map +1 -0
- package/dist/internal-plugins/webpack-theme-component-shadowing/gatsby-node.js +31 -0
- package/dist/internal-plugins/webpack-theme-component-shadowing/gatsby-node.js.map +1 -0
- package/dist/internal-plugins/webpack-theme-component-shadowing/index.js +273 -0
- package/dist/internal-plugins/webpack-theme-component-shadowing/index.js.map +1 -0
- package/dist/internal-plugins/webpack-theme-component-shadowing/package.json +11 -0
- package/dist/internal.d.ts +5 -0
- package/dist/internal.js +34 -0
- package/dist/internal.js.map +1 -0
- package/dist/joi-schemas/joi.d.ts +5 -0
- package/dist/joi-schemas/joi.js +122 -0
- package/dist/joi-schemas/joi.js.map +1 -0
- package/dist/query/error-parser.d.ts +19 -0
- package/dist/query/error-parser.js +163 -0
- package/dist/query/error-parser.js.map +1 -0
- package/dist/query/file-parser.js +584 -0
- package/dist/query/file-parser.js.map +1 -0
- package/dist/query/graphql-errors-codeframe.d.ts +1 -0
- package/dist/query/graphql-errors-codeframe.js +20 -0
- package/dist/query/graphql-errors-codeframe.js.map +1 -0
- package/dist/query/graphql-errors.js +278 -0
- package/dist/query/graphql-errors.js.map +1 -0
- package/dist/query/graphql-runner.d.ts +39 -0
- package/dist/query/graphql-runner.js +221 -0
- package/dist/query/graphql-runner.js.map +1 -0
- package/dist/query/graphql-span-tracer.d.ts +19 -0
- package/dist/query/graphql-span-tracer.js +63 -0
- package/dist/query/graphql-span-tracer.js.map +1 -0
- package/dist/query/index.d.ts +32 -0
- package/dist/query/index.js +301 -0
- package/dist/query/index.js.map +1 -0
- package/dist/query/query-compiler.js +433 -0
- package/dist/query/query-compiler.js.map +1 -0
- package/dist/query/query-runner.d.ts +13 -0
- package/dist/query/query-runner.js +176 -0
- package/dist/query/query-runner.js.map +1 -0
- package/dist/query/query-watcher.d.ts +17 -0
- package/dist/query/query-watcher.js +250 -0
- package/dist/query/query-watcher.js.map +1 -0
- package/dist/query/transform-document.d.ts +6 -0
- package/dist/query/transform-document.js +131 -0
- package/dist/query/transform-document.js.map +1 -0
- package/dist/query/types.d.ts +35 -0
- package/dist/query/types.js +4 -0
- package/dist/query/types.js.map +1 -0
- package/dist/query/utils.d.ts +4 -0
- package/dist/query/utils.js +20 -0
- package/dist/query/utils.js.map +1 -0
- package/dist/redux/actions/add-page-dependency.d.ts +7 -0
- package/dist/redux/actions/add-page-dependency.js +52 -0
- package/dist/redux/actions/add-page-dependency.js.map +1 -0
- package/dist/redux/actions/index.d.ts +16 -0
- package/dist/redux/actions/index.js +21 -0
- package/dist/redux/actions/index.js.map +1 -0
- package/dist/redux/actions/internal.d.ts +124 -0
- package/dist/redux/actions/internal.js +394 -0
- package/dist/redux/actions/internal.js.map +1 -0
- package/dist/redux/actions/public.js +1354 -0
- package/dist/redux/actions/public.js.map +1 -0
- package/dist/redux/actions/restricted.d.ts +332 -0
- package/dist/redux/actions/restricted.js +521 -0
- package/dist/redux/actions/restricted.js.map +1 -0
- package/dist/redux/index.d.ts +20 -0
- package/dist/redux/index.js +125 -0
- package/dist/redux/index.js.map +1 -0
- package/dist/redux/persist.d.ts +5 -0
- package/dist/redux/persist.js +191 -0
- package/dist/redux/persist.js.map +1 -0
- package/dist/redux/plugin-runner.d.ts +1 -0
- package/dist/redux/plugin-runner.js +45 -0
- package/dist/redux/plugin-runner.js.map +1 -0
- package/dist/redux/reducers/adapter.d.ts +6 -0
- package/dist/redux/reducers/adapter.js +22 -0
- package/dist/redux/reducers/adapter.js.map +1 -0
- package/dist/redux/reducers/babelrc.d.ts +9 -0
- package/dist/redux/reducers/babelrc.js +104 -0
- package/dist/redux/reducers/babelrc.js.map +1 -0
- package/dist/redux/reducers/components-using-slices.d.ts +2 -0
- package/dist/redux/reducers/components-using-slices.js +15 -0
- package/dist/redux/reducers/components-using-slices.js.map +1 -0
- package/dist/redux/reducers/components.d.ts +2 -0
- package/dist/redux/reducers/components.js +104 -0
- package/dist/redux/reducers/components.js.map +1 -0
- package/dist/redux/reducers/config.d.ts +2 -0
- package/dist/redux/reducers/config.js +16 -0
- package/dist/redux/reducers/config.js.map +1 -0
- package/dist/redux/reducers/definitions.d.ts +2 -0
- package/dist/redux/reducers/definitions.js +14 -0
- package/dist/redux/reducers/definitions.js.map +1 -0
- package/dist/redux/reducers/flattened-plugins.d.ts +17 -0
- package/dist/redux/reducers/flattened-plugins.js +14 -0
- package/dist/redux/reducers/flattened-plugins.js.map +1 -0
- package/dist/redux/reducers/functions.d.ts +2 -0
- package/dist/redux/reducers/functions.js +14 -0
- package/dist/redux/reducers/functions.js.map +1 -0
- package/dist/redux/reducers/html.d.ts +25 -0
- package/dist/redux/reducers/html.js +384 -0
- package/dist/redux/reducers/html.js.map +1 -0
- package/dist/redux/reducers/index.d.ts +45 -0
- package/dist/redux/reducers/index.js +86 -0
- package/dist/redux/reducers/index.js.map +1 -0
- package/dist/redux/reducers/inference-metadata.d.ts +7 -0
- package/dist/redux/reducers/inference-metadata.js +174 -0
- package/dist/redux/reducers/inference-metadata.js.map +1 -0
- package/dist/redux/reducers/jobs.d.ts +5 -0
- package/dist/redux/reducers/jobs.js +65 -0
- package/dist/redux/reducers/jobs.js.map +1 -0
- package/dist/redux/reducers/jobsv2.d.ts +6 -0
- package/dist/redux/reducers/jobsv2.js +88 -0
- package/dist/redux/reducers/jobsv2.js.map +1 -0
- package/dist/redux/reducers/last-action.d.ts +2 -0
- package/dist/redux/reducers/last-action.js +7 -0
- package/dist/redux/reducers/last-action.js.map +1 -0
- package/dist/redux/reducers/node-manifest.d.ts +2 -0
- package/dist/redux/reducers/node-manifest.js +58 -0
- package/dist/redux/reducers/node-manifest.js.map +1 -0
- package/dist/redux/reducers/nodes-by-type.d.ts +2 -0
- package/dist/redux/reducers/nodes-by-type.js +53 -0
- package/dist/redux/reducers/nodes-by-type.js.map +1 -0
- package/dist/redux/reducers/nodes-touched.d.ts +3 -0
- package/dist/redux/reducers/nodes-touched.js +18 -0
- package/dist/redux/reducers/nodes-touched.js.map +1 -0
- package/dist/redux/reducers/nodes.d.ts +2 -0
- package/dist/redux/reducers/nodes.js +30 -0
- package/dist/redux/reducers/nodes.js.map +1 -0
- package/dist/redux/reducers/page-data-stats.d.ts +2 -0
- package/dist/redux/reducers/page-data-stats.js +15 -0
- package/dist/redux/reducers/page-data-stats.js.map +1 -0
- package/dist/redux/reducers/pages.d.ts +2 -0
- package/dist/redux/reducers/pages.js +43 -0
- package/dist/redux/reducers/pages.js.map +1 -0
- package/dist/redux/reducers/pending-page-data-writes.d.ts +5 -0
- package/dist/redux/reducers/pending-page-data-writes.js +66 -0
- package/dist/redux/reducers/pending-page-data-writes.js.map +1 -0
- package/dist/redux/reducers/program.d.ts +2 -0
- package/dist/redux/reducers/program.js +62 -0
- package/dist/redux/reducers/program.js.map +1 -0
- package/dist/redux/reducers/queries.d.ts +26 -0
- package/dist/redux/reducers/queries.js +403 -0
- package/dist/redux/reducers/queries.js.map +1 -0
- package/dist/redux/reducers/redirects.d.ts +2 -0
- package/dist/redux/reducers/redirects.js +39 -0
- package/dist/redux/reducers/redirects.js.map +1 -0
- package/dist/redux/reducers/remote-file-allowed-urls.d.ts +2 -0
- package/dist/redux/reducers/remote-file-allowed-urls.js +19 -0
- package/dist/redux/reducers/remote-file-allowed-urls.js.map +1 -0
- package/dist/redux/reducers/resolved-nodes.d.ts +2 -0
- package/dist/redux/reducers/resolved-nodes.js +45 -0
- package/dist/redux/reducers/resolved-nodes.js.map +1 -0
- package/dist/redux/reducers/schema-customization.d.ts +23 -0
- package/dist/redux/reducers/schema-customization.js +103 -0
- package/dist/redux/reducers/schema-customization.js.map +1 -0
- package/dist/redux/reducers/schema.d.ts +3 -0
- package/dist/redux/reducers/schema.js +17 -0
- package/dist/redux/reducers/schema.js.map +1 -0
- package/dist/redux/reducers/set-request-headers.d.ts +7 -0
- package/dist/redux/reducers/set-request-headers.js +24 -0
- package/dist/redux/reducers/set-request-headers.js.map +1 -0
- package/dist/redux/reducers/slices-by-template.d.ts +2 -0
- package/dist/redux/reducers/slices-by-template.js +16 -0
- package/dist/redux/reducers/slices-by-template.js.map +1 -0
- package/dist/redux/reducers/slices.d.ts +2 -0
- package/dist/redux/reducers/slices.js +22 -0
- package/dist/redux/reducers/slices.js.map +1 -0
- package/dist/redux/reducers/stateful-source-plugins.d.ts +5 -0
- package/dist/redux/reducers/stateful-source-plugins.js +20 -0
- package/dist/redux/reducers/stateful-source-plugins.js.map +1 -0
- package/dist/redux/reducers/static-queries-by-template.d.ts +2 -0
- package/dist/redux/reducers/static-queries-by-template.js +19 -0
- package/dist/redux/reducers/static-queries-by-template.js.map +1 -0
- package/dist/redux/reducers/static-query-components.d.ts +2 -0
- package/dist/redux/reducers/static-query-components.js +18 -0
- package/dist/redux/reducers/static-query-components.js.map +1 -0
- package/dist/redux/reducers/status.d.ts +7 -0
- package/dist/redux/reducers/status.js +57 -0
- package/dist/redux/reducers/status.js.map +1 -0
- package/dist/redux/reducers/telemetry.d.ts +2 -0
- package/dist/redux/reducers/telemetry.js +46 -0
- package/dist/redux/reducers/telemetry.js.map +1 -0
- package/dist/redux/reducers/type-owners.d.ts +5 -0
- package/dist/redux/reducers/type-owners.js +102 -0
- package/dist/redux/reducers/type-owners.js.map +1 -0
- package/dist/redux/reducers/visited-page.d.ts +2 -0
- package/dist/redux/reducers/visited-page.js +31 -0
- package/dist/redux/reducers/visited-page.js.map +1 -0
- package/dist/redux/reducers/webpack-compilation-hash.d.ts +2 -0
- package/dist/redux/reducers/webpack-compilation-hash.js +14 -0
- package/dist/redux/reducers/webpack-compilation-hash.js.map +1 -0
- package/dist/redux/reducers/webpack.d.ts +2 -0
- package/dist/redux/reducers/webpack.js +27 -0
- package/dist/redux/reducers/webpack.js.map +1 -0
- package/dist/redux/save-state.js +19 -0
- package/dist/redux/save-state.js.map +1 -0
- package/dist/redux/types.d.ts +1337 -0
- package/dist/redux/types.js +326 -0
- package/dist/redux/types.js.map +1 -0
- package/dist/schema/context.d.ts +14 -0
- package/dist/schema/context.js +38 -0
- package/dist/schema/context.js.map +1 -0
- package/dist/schema/extensions/index.js +205 -0
- package/dist/schema/extensions/index.js.map +1 -0
- package/dist/schema/graphql-engine/bootstrap.d.ts +2 -0
- package/dist/schema/graphql-engine/bootstrap.js +12 -0
- package/dist/schema/graphql-engine/bootstrap.js.map +1 -0
- package/dist/schema/graphql-engine/bundle-webpack.d.ts +5 -0
- package/dist/schema/graphql-engine/bundle-webpack.js +446 -0
- package/dist/schema/graphql-engine/bundle-webpack.js.map +1 -0
- package/dist/schema/graphql-engine/entry.d.ts +23 -0
- package/dist/schema/graphql-engine/entry.js +204 -0
- package/dist/schema/graphql-engine/entry.js.map +1 -0
- package/dist/schema/graphql-engine/lmdb-bundling-patch.d.ts +1 -0
- package/dist/schema/graphql-engine/lmdb-bundling-patch.js +72 -0
- package/dist/schema/graphql-engine/lmdb-bundling-patch.js.map +1 -0
- package/dist/schema/graphql-engine/platform-and-arch-check.d.ts +0 -0
- package/dist/schema/graphql-engine/platform-and-arch-check.js +6 -0
- package/dist/schema/graphql-engine/platform-and-arch-check.js.map +1 -0
- package/dist/schema/graphql-engine/print-plugins.d.ts +2 -0
- package/dist/schema/graphql-engine/print-plugins.js +145 -0
- package/dist/schema/graphql-engine/print-plugins.js.map +1 -0
- package/dist/schema/graphql-engine/sharp-bundling-patch.d.ts +1 -0
- package/dist/schema/graphql-engine/sharp-bundling-patch.js +8 -0
- package/dist/schema/graphql-engine/sharp-bundling-patch.js.map +1 -0
- package/dist/schema/graphql-engine/shims/gatsby-sharp.js +10 -0
- package/dist/schema/graphql-engine/shims/gatsby-sharp.js.map +1 -0
- package/dist/schema/graphql-engine/shims/no-op-module.js +3 -0
- package/dist/schema/graphql-engine/shims/no-op-module.js.map +1 -0
- package/dist/schema/graphql-engine/shims/ts-node.js +17 -0
- package/dist/schema/graphql-engine/shims/ts-node.js.map +1 -0
- package/dist/schema/graphql-engine/standalone-regenerate.d.ts +2 -0
- package/dist/schema/graphql-engine/standalone-regenerate.js +73 -0
- package/dist/schema/graphql-engine/standalone-regenerate.js.map +1 -0
- package/dist/schema/index.js +189 -0
- package/dist/schema/index.js.map +1 -0
- package/dist/schema/infer/add-inferred-fields.js +413 -0
- package/dist/schema/infer/add-inferred-fields.js.map +1 -0
- package/dist/schema/infer/build-example-data.d.ts +5 -0
- package/dist/schema/infer/build-example-data.js +199 -0
- package/dist/schema/infer/build-example-data.js.map +1 -0
- package/dist/schema/infer/index.js +121 -0
- package/dist/schema/infer/index.js.map +1 -0
- package/dist/schema/infer/inference-metadata.d.ts +72 -0
- package/dist/schema/infer/inference-metadata.js +280 -0
- package/dist/schema/infer/inference-metadata.js.map +1 -0
- package/dist/schema/infer/is-file.d.ts +1 -0
- package/dist/schema/infer/is-file.js +65 -0
- package/dist/schema/infer/is-file.js.map +1 -0
- package/dist/schema/infer/type-conflict-reporter.d.ts +28 -0
- package/dist/schema/infer/type-conflict-reporter.js +104 -0
- package/dist/schema/infer/type-conflict-reporter.js.map +1 -0
- package/dist/schema/node-model.js +784 -0
- package/dist/schema/node-model.js.map +1 -0
- package/dist/schema/print.d.ts +20 -0
- package/dist/schema/print.js +279 -0
- package/dist/schema/print.js.map +1 -0
- package/dist/schema/resolvers.d.ts +40 -0
- package/dist/schema/resolvers.js +569 -0
- package/dist/schema/resolvers.js.map +1 -0
- package/dist/schema/schema-composer.d.ts +3 -0
- package/dist/schema/schema-composer.js +31 -0
- package/dist/schema/schema-composer.js.map +1 -0
- package/dist/schema/schema.js +1295 -0
- package/dist/schema/schema.js.map +1 -0
- package/dist/schema/type-definitions.d.ts +47 -0
- package/dist/schema/type-definitions.js +4 -0
- package/dist/schema/type-definitions.js.map +1 -0
- package/dist/schema/types/built-in-types.d.ts +5 -0
- package/dist/schema/types/built-in-types.js +139 -0
- package/dist/schema/types/built-in-types.js.map +1 -0
- package/dist/schema/types/date.d.ts +37 -0
- package/dist/schema/types/date.js +225 -0
- package/dist/schema/types/date.js.map +1 -0
- package/dist/schema/types/derived-types.d.ts +45 -0
- package/dist/schema/types/derived-types.js +108 -0
- package/dist/schema/types/derived-types.js.map +1 -0
- package/dist/schema/types/filter.d.ts +12 -0
- package/dist/schema/types/filter.js +105 -0
- package/dist/schema/types/filter.js.map +1 -0
- package/dist/schema/types/media.d.ts +2 -0
- package/dist/schema/types/media.js +10 -0
- package/dist/schema/types/media.js.map +1 -0
- package/dist/schema/types/node-interface.d.ts +14 -0
- package/dist/schema/types/node-interface.js +103 -0
- package/dist/schema/types/node-interface.js.map +1 -0
- package/dist/schema/types/pagination.d.ts +16 -0
- package/dist/schema/types/pagination.js +198 -0
- package/dist/schema/types/pagination.js.map +1 -0
- package/dist/schema/types/remote-file-interface.d.ts +3 -0
- package/dist/schema/types/remote-file-interface.js +34 -0
- package/dist/schema/types/remote-file-interface.js.map +1 -0
- package/dist/schema/types/sort.d.ts +24 -0
- package/dist/schema/types/sort.js +178 -0
- package/dist/schema/types/sort.js.map +1 -0
- package/dist/schema/types/type-builders.d.ts +36 -0
- package/dist/schema/types/type-builders.js +61 -0
- package/dist/schema/types/type-builders.js.map +1 -0
- package/dist/schema/types/type-defs.js +86 -0
- package/dist/schema/types/type-defs.js.map +1 -0
- package/dist/schema/types/utils.d.ts +33 -0
- package/dist/schema/types/utils.js +153 -0
- package/dist/schema/types/utils.js.map +1 -0
- package/dist/schema/utils.d.ts +28 -0
- package/dist/schema/utils.js +149 -0
- package/dist/schema/utils.js.map +1 -0
- package/dist/services/build-schema.d.ts +2 -0
- package/dist/services/build-schema.js +24 -0
- package/dist/services/build-schema.js.map +1 -0
- package/dist/services/calculate-dirty-queries.d.ts +5 -0
- package/dist/services/calculate-dirty-queries.js +44 -0
- package/dist/services/calculate-dirty-queries.js.map +1 -0
- package/dist/services/create-pages.d.ts +5 -0
- package/dist/services/create-pages.js +108 -0
- package/dist/services/create-pages.js.map +1 -0
- package/dist/services/customize-schema.d.ts +2 -0
- package/dist/services/customize-schema.js +26 -0
- package/dist/services/customize-schema.js.map +1 -0
- package/dist/services/extract-queries.d.ts +2 -0
- package/dist/services/extract-queries.js +24 -0
- package/dist/services/extract-queries.js.map +1 -0
- package/dist/services/graphql-typegen.d.ts +2 -0
- package/dist/services/graphql-typegen.js +46 -0
- package/dist/services/graphql-typegen.js.map +1 -0
- package/dist/services/index.d.ts +19 -0
- package/dist/services/index.js +68 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/initialize.d.ts +14 -0
- package/dist/services/initialize.js +519 -0
- package/dist/services/initialize.js.map +1 -0
- package/dist/services/listen-for-mutations.d.ts +2 -0
- package/dist/services/listen-for-mutations.js +59 -0
- package/dist/services/listen-for-mutations.js.map +1 -0
- package/dist/services/listen-to-webpack.d.ts +3 -0
- package/dist/services/listen-to-webpack.js +17 -0
- package/dist/services/listen-to-webpack.js.map +1 -0
- package/dist/services/post-bootstrap.d.ts +2 -0
- package/dist/services/post-bootstrap.js +29 -0
- package/dist/services/post-bootstrap.js.map +1 -0
- package/dist/services/recompile.d.ts +3 -0
- package/dist/services/recompile.js +67 -0
- package/dist/services/recompile.js.map +1 -0
- package/dist/services/run-mutation-batch.d.ts +2 -0
- package/dist/services/run-mutation-batch.js +12 -0
- package/dist/services/run-mutation-batch.js.map +1 -0
- package/dist/services/run-page-queries.d.ts +2 -0
- package/dist/services/run-page-queries.js +38 -0
- package/dist/services/run-page-queries.js.map +1 -0
- package/dist/services/run-slice-queries.d.ts +2 -0
- package/dist/services/run-slice-queries.js +40 -0
- package/dist/services/run-slice-queries.js.map +1 -0
- package/dist/services/run-static-queries.d.ts +2 -0
- package/dist/services/run-static-queries.js +38 -0
- package/dist/services/run-static-queries.js.map +1 -0
- package/dist/services/source-nodes.d.ts +5 -0
- package/dist/services/source-nodes.js +47 -0
- package/dist/services/source-nodes.js.map +1 -0
- package/dist/services/start-webpack-server.d.ts +9 -0
- package/dist/services/start-webpack-server.js +103 -0
- package/dist/services/start-webpack-server.js.map +1 -0
- package/dist/services/types.d.ts +53 -0
- package/dist/services/types.js +4 -0
- package/dist/services/types.js.map +1 -0
- package/dist/services/write-out-redirects.d.ts +2 -0
- package/dist/services/write-out-redirects.js +20 -0
- package/dist/services/write-out-redirects.js.map +1 -0
- package/dist/services/write-out-requires.d.ts +2 -0
- package/dist/services/write-out-requires.js +27 -0
- package/dist/services/write-out-requires.js.map +1 -0
- package/dist/state-machines/data-layer/actions.d.ts +11 -0
- package/dist/state-machines/data-layer/actions.js +38 -0
- package/dist/state-machines/data-layer/actions.js.map +1 -0
- package/dist/state-machines/data-layer/index.d.ts +24 -0
- package/dist/state-machines/data-layer/index.js +152 -0
- package/dist/state-machines/data-layer/index.js.map +1 -0
- package/dist/state-machines/data-layer/services.d.ts +3 -0
- package/dist/state-machines/data-layer/services.js +14 -0
- package/dist/state-machines/data-layer/services.js.map +1 -0
- package/dist/state-machines/data-layer/types.d.ts +27 -0
- package/dist/state-machines/data-layer/types.js +4 -0
- package/dist/state-machines/data-layer/types.js.map +1 -0
- package/dist/state-machines/develop/actions.d.ts +68 -0
- package/dist/state-machines/develop/actions.js +259 -0
- package/dist/state-machines/develop/actions.js.map +1 -0
- package/dist/state-machines/develop/index.d.ts +5 -0
- package/dist/state-machines/develop/index.js +372 -0
- package/dist/state-machines/develop/index.js.map +1 -0
- package/dist/state-machines/develop/services.d.ts +3 -0
- package/dist/state-machines/develop/services.js +22 -0
- package/dist/state-machines/develop/services.js.map +1 -0
- package/dist/state-machines/index.d.ts +7 -0
- package/dist/state-machines/index.js +21 -0
- package/dist/state-machines/index.js.map +1 -0
- package/dist/state-machines/query-running/actions.d.ts +9 -0
- package/dist/state-machines/query-running/actions.js +55 -0
- package/dist/state-machines/query-running/actions.js.map +1 -0
- package/dist/state-machines/query-running/index.d.ts +7 -0
- package/dist/state-machines/query-running/index.js +142 -0
- package/dist/state-machines/query-running/index.js.map +1 -0
- package/dist/state-machines/query-running/services.d.ts +3 -0
- package/dist/state-machines/query-running/services.js +17 -0
- package/dist/state-machines/query-running/services.js.map +1 -0
- package/dist/state-machines/query-running/types.d.ts +26 -0
- package/dist/state-machines/query-running/types.js +4 -0
- package/dist/state-machines/query-running/types.js.map +1 -0
- package/dist/state-machines/waiting/actions.d.ts +11 -0
- package/dist/state-machines/waiting/actions.js +36 -0
- package/dist/state-machines/waiting/actions.js.map +1 -0
- package/dist/state-machines/waiting/index.d.ts +12 -0
- package/dist/state-machines/waiting/index.js +145 -0
- package/dist/state-machines/waiting/index.js.map +1 -0
- package/dist/state-machines/waiting/services.d.ts +3 -0
- package/dist/state-machines/waiting/services.js +10 -0
- package/dist/state-machines/waiting/services.js.map +1 -0
- package/dist/state-machines/waiting/types.d.ts +12 -0
- package/dist/state-machines/waiting/types.js +4 -0
- package/dist/state-machines/waiting/types.js.map +1 -0
- package/dist/types.d.ts +9 -0
- package/dist/types.js +4 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/adapter/constants.d.ts +5 -0
- package/dist/utils/adapter/constants.js +31 -0
- package/dist/utils/adapter/constants.js.map +1 -0
- package/dist/utils/adapter/create-headers.d.ts +10 -0
- package/dist/utils/adapter/create-headers.js +94 -0
- package/dist/utils/adapter/create-headers.js.map +1 -0
- package/dist/utils/adapter/get-route-path.d.ts +3 -0
- package/dist/utils/adapter/get-route-path.js +22 -0
- package/dist/utils/adapter/get-route-path.js.map +1 -0
- package/dist/utils/adapter/init.d.ts +3 -0
- package/dist/utils/adapter/init.js +183 -0
- package/dist/utils/adapter/init.js.map +1 -0
- package/dist/utils/adapter/manager.d.ts +9 -0
- package/dist/utils/adapter/manager.js +554 -0
- package/dist/utils/adapter/manager.js.map +1 -0
- package/dist/utils/adapter/no-op-manager.d.ts +2 -0
- package/dist/utils/adapter/no-op-manager.js +18 -0
- package/dist/utils/adapter/no-op-manager.js.map +1 -0
- package/dist/utils/adapter/types.d.ts +282 -0
- package/dist/utils/adapter/types.js +4 -0
- package/dist/utils/adapter/types.js.map +1 -0
- package/dist/utils/api-browser-docs.d.ts +272 -0
- package/dist/utils/api-browser-docs.js +318 -0
- package/dist/utils/api-browser-docs.js.map +1 -0
- package/dist/utils/api-node-docs.d.ts +470 -0
- package/dist/utils/api-node-docs.js +519 -0
- package/dist/utils/api-node-docs.js.map +1 -0
- package/dist/utils/api-node-helpers-docs.js +322 -0
- package/dist/utils/api-node-helpers-docs.js.map +1 -0
- package/dist/utils/api-runner-error-parser.d.ts +5 -0
- package/dist/utils/api-runner-error-parser.js +63 -0
- package/dist/utils/api-runner-error-parser.js.map +1 -0
- package/dist/utils/api-runner-node.js +663 -0
- package/dist/utils/api-runner-node.js.map +1 -0
- package/dist/utils/app-data.d.ts +2 -0
- package/dist/utils/app-data.js +15 -0
- package/dist/utils/app-data.js.map +1 -0
- package/dist/utils/assert-store.d.ts +2 -0
- package/dist/utils/assert-store.js +12 -0
- package/dist/utils/assert-store.js.map +1 -0
- package/dist/utils/babel/babel-module-exports-helpers.d.ts +22 -0
- package/dist/utils/babel/babel-module-exports-helpers.js +48 -0
- package/dist/utils/babel/babel-module-exports-helpers.js.map +1 -0
- package/dist/utils/babel/babel-plugin-add-slice-placeholder-location.d.ts +10 -0
- package/dist/utils/babel/babel-plugin-add-slice-placeholder-location.js +48 -0
- package/dist/utils/babel/babel-plugin-add-slice-placeholder-location.js.map +1 -0
- package/dist/utils/babel/babel-plugin-remove-api.d.ts +5 -0
- package/dist/utils/babel/babel-plugin-remove-api.js +148 -0
- package/dist/utils/babel/babel-plugin-remove-api.js.map +1 -0
- package/dist/utils/babel/find-slices.d.ts +8 -0
- package/dist/utils/babel/find-slices.js +68 -0
- package/dist/utils/babel/find-slices.js.map +1 -0
- package/dist/utils/babel-loader-helpers.d.ts +19 -0
- package/dist/utils/babel-loader-helpers.js +158 -0
- package/dist/utils/babel-loader-helpers.js.map +1 -0
- package/dist/utils/babel-loader.d.ts +8 -0
- package/dist/utils/babel-loader.js +158 -0
- package/dist/utils/babel-loader.js.map +1 -0
- package/dist/utils/babel-parse-to-ast.d.ts +4 -0
- package/dist/utils/babel-parse-to-ast.js +34 -0
- package/dist/utils/babel-parse-to-ast.js.map +1 -0
- package/dist/utils/batcher.d.ts +15 -0
- package/dist/utils/batcher.js +46 -0
- package/dist/utils/batcher.js.map +1 -0
- package/dist/utils/browserslist.d.ts +2 -0
- package/dist/utils/browserslist.js +38 -0
- package/dist/utils/browserslist.js.map +1 -0
- package/dist/utils/cache-lmdb.d.ts +19 -0
- package/dist/utils/cache-lmdb.js +88 -0
- package/dist/utils/cache-lmdb.js.map +1 -0
- package/dist/utils/cache.d.ts +17 -0
- package/dist/utils/cache.js +77 -0
- package/dist/utils/cache.js.map +1 -0
- package/dist/utils/call-deferred-api.d.ts +8 -0
- package/dist/utils/call-deferred-api.js +35 -0
- package/dist/utils/call-deferred-api.js.map +1 -0
- package/dist/utils/changed-pages.d.ts +6 -0
- package/dist/utils/changed-pages.js +45 -0
- package/dist/utils/changed-pages.js.map +1 -0
- package/dist/utils/clear-require-cache.d.ts +1 -0
- package/dist/utils/clear-require-cache.js +24 -0
- package/dist/utils/clear-require-cache.js.map +1 -0
- package/dist/utils/client-assets-for-template.d.ts +9 -0
- package/dist/utils/client-assets-for-template.js +141 -0
- package/dist/utils/client-assets-for-template.js.map +1 -0
- package/dist/utils/create-node-id.d.ts +24 -0
- package/dist/utils/create-node-id.js +67 -0
- package/dist/utils/create-node-id.js.map +1 -0
- package/dist/utils/create-schema-customization.d.ts +6 -0
- package/dist/utils/create-schema-customization.js +25 -0
- package/dist/utils/create-schema-customization.js.map +1 -0
- package/dist/utils/detect-node-mutations.d.ts +4 -0
- package/dist/utils/detect-node-mutations.js +134 -0
- package/dist/utils/detect-node-mutations.js.map +1 -0
- package/dist/utils/detect-port-in-use-and-prompt.d.ts +1 -0
- package/dist/utils/detect-port-in-use-and-prompt.js +31 -0
- package/dist/utils/detect-port-in-use-and-prompt.js.map +1 -0
- package/dist/utils/dev-ssr/parse-error.d.ts +22 -0
- package/dist/utils/dev-ssr/parse-error.js +119 -0
- package/dist/utils/dev-ssr/parse-error.js.map +1 -0
- package/dist/utils/dev-ssr/render-dev-html-child.d.ts +13 -0
- package/dist/utils/dev-ssr/render-dev-html-child.js +47 -0
- package/dist/utils/dev-ssr/render-dev-html-child.js.map +1 -0
- package/dist/utils/dev-ssr/render-dev-html.d.ts +23 -0
- package/dist/utils/dev-ssr/render-dev-html.js +227 -0
- package/dist/utils/dev-ssr/render-dev-html.js.map +1 -0
- package/dist/utils/develop-preload-headers.d.ts +7 -0
- package/dist/utils/develop-preload-headers.js +64 -0
- package/dist/utils/develop-preload-headers.js.map +1 -0
- package/dist/utils/did-you-mean.d.ts +3 -0
- package/dist/utils/did-you-mean.js +21 -0
- package/dist/utils/did-you-mean.js.map +1 -0
- package/dist/utils/engine-context.d.ts +5 -0
- package/dist/utils/engine-context.js +19 -0
- package/dist/utils/engine-context.js.map +1 -0
- package/dist/utils/engines-fs-provider.d.ts +9 -0
- package/dist/utils/engines-fs-provider.js +24 -0
- package/dist/utils/engines-fs-provider.js.map +1 -0
- package/dist/utils/engines-helpers.d.ts +10 -0
- package/dist/utils/engines-helpers.js +48 -0
- package/dist/utils/engines-helpers.js.map +1 -0
- package/dist/utils/ensure-file-content.d.ts +1 -0
- package/dist/utils/ensure-file-content.js +19 -0
- package/dist/utils/ensure-file-content.js.map +1 -0
- package/dist/utils/eslint/required.js +10 -0
- package/dist/utils/eslint/required.js.map +1 -0
- package/dist/utils/eslint-config.d.ts +3 -0
- package/dist/utils/eslint-config.js +136 -0
- package/dist/utils/eslint-config.js.map +1 -0
- package/dist/utils/eslint-rules/limited-exports-page-templates.d.ts +1 -0
- package/dist/utils/eslint-rules/limited-exports-page-templates.js +183 -0
- package/dist/utils/eslint-rules/limited-exports-page-templates.js.map +1 -0
- package/dist/utils/eslint-rules/no-anonymous-exports-page-templates.d.ts +1 -0
- package/dist/utils/eslint-rules/no-anonymous-exports-page-templates.js +75 -0
- package/dist/utils/eslint-rules/no-anonymous-exports-page-templates.js.map +1 -0
- package/dist/utils/eslint-rules-helpers.d.ts +4 -0
- package/dist/utils/eslint-rules-helpers.js +22 -0
- package/dist/utils/eslint-rules-helpers.js.map +1 -0
- package/dist/utils/express-middlewares.d.ts +4 -0
- package/dist/utils/express-middlewares.js +57 -0
- package/dist/utils/express-middlewares.js.map +1 -0
- package/dist/utils/extract-undefined-global.d.ts +4 -0
- package/dist/utils/extract-undefined-global.js +15 -0
- package/dist/utils/extract-undefined-global.js.map +1 -0
- package/dist/utils/fast-refresh-module.d.ts +22 -0
- package/dist/utils/fast-refresh-module.js +53 -0
- package/dist/utils/fast-refresh-module.js.map +1 -0
- package/dist/utils/feedback.d.ts +5 -0
- package/dist/utils/feedback.js +159 -0
- package/dist/utils/feedback.js.map +1 -0
- package/dist/utils/find-page-by-path.d.ts +2 -0
- package/dist/utils/find-page-by-path.js +96 -0
- package/dist/utils/find-page-by-path.js.map +1 -0
- package/dist/utils/flags.d.ts +41 -0
- package/dist/utils/flags.js +92 -0
- package/dist/utils/flags.js.map +1 -0
- package/dist/utils/gatsby-cloud-config.d.ts +4 -0
- package/dist/utils/gatsby-cloud-config.js +15 -0
- package/dist/utils/gatsby-cloud-config.js.map +1 -0
- package/dist/utils/gatsby-dependents.d.ts +8 -0
- package/dist/utils/gatsby-dependents.js +51 -0
- package/dist/utils/gatsby-dependents.js.map +1 -0
- package/dist/utils/gatsby-webpack-stats-extractor.d.ts +7 -0
- package/dist/utils/gatsby-webpack-stats-extractor.js +136 -0
- package/dist/utils/gatsby-webpack-stats-extractor.js.map +1 -0
- package/dist/utils/gatsby-webpack-virtual-modules.d.ts +6 -0
- package/dist/utils/gatsby-webpack-virtual-modules.js +45 -0
- package/dist/utils/gatsby-webpack-virtual-modules.js.map +1 -0
- package/dist/utils/get-cache.d.ts +2 -0
- package/dist/utils/get-cache.js +18 -0
- package/dist/utils/get-cache.js.map +1 -0
- package/dist/utils/get-latest-gatsby-files.d.ts +8 -0
- package/dist/utils/get-latest-gatsby-files.js +93 -0
- package/dist/utils/get-latest-gatsby-files.js.map +1 -0
- package/dist/utils/get-page-data.d.ts +3 -0
- package/dist/utils/get-page-data.js +88 -0
- package/dist/utils/get-page-data.js.map +1 -0
- package/dist/utils/get-public-path.d.ts +5 -0
- package/dist/utils/get-public-path.js +19 -0
- package/dist/utils/get-public-path.js.map +1 -0
- package/dist/utils/get-server-data.d.ts +19 -0
- package/dist/utils/get-server-data.js +29 -0
- package/dist/utils/get-server-data.js.map +1 -0
- package/dist/utils/get-ssl-cert.d.ts +9 -0
- package/dist/utils/get-ssl-cert.js +95 -0
- package/dist/utils/get-ssl-cert.js.map +1 -0
- package/dist/utils/get-static-dir.d.ts +12 -0
- package/dist/utils/get-static-dir.js +60 -0
- package/dist/utils/get-static-dir.js.map +1 -0
- package/dist/utils/get-value-at.d.ts +1 -0
- package/dist/utils/get-value-at.js +22 -0
- package/dist/utils/get-value-at.js.map +1 -0
- package/dist/utils/graphql-typegen/file-writes.d.ts +5 -0
- package/dist/utils/graphql-typegen/file-writes.js +63 -0
- package/dist/utils/graphql-typegen/file-writes.js.map +1 -0
- package/dist/utils/graphql-typegen/ts-codegen.d.ts +5 -0
- package/dist/utils/graphql-typegen/ts-codegen.js +136 -0
- package/dist/utils/graphql-typegen/ts-codegen.js.map +1 -0
- package/dist/utils/graphql-typegen/utils.d.ts +11 -0
- package/dist/utils/graphql-typegen/utils.js +70 -0
- package/dist/utils/graphql-typegen/utils.js.map +1 -0
- package/dist/utils/handle-flags.d.ts +8 -0
- package/dist/utils/handle-flags.js +212 -0
- package/dist/utils/handle-flags.js.map +1 -0
- package/dist/utils/import-gatsby-plugin.d.ts +11 -0
- package/dist/utils/import-gatsby-plugin.js +40 -0
- package/dist/utils/import-gatsby-plugin.js.map +1 -0
- package/dist/utils/is-32-bit-integer.d.ts +1 -0
- package/dist/utils/is-32-bit-integer.js +8 -0
- package/dist/utils/is-32-bit-integer.js.map +1 -0
- package/dist/utils/is-near-match.d.ts +1 -0
- package/dist/utils/is-near-match.js +10 -0
- package/dist/utils/is-near-match.js.map +1 -0
- package/dist/utils/jobs/manager.d.ts +34 -0
- package/dist/utils/jobs/manager.js +313 -0
- package/dist/utils/jobs/manager.js.map +1 -0
- package/dist/utils/jobs/types.d.ts +63 -0
- package/dist/utils/jobs/types.js +32 -0
- package/dist/utils/jobs/types.js.map +1 -0
- package/dist/utils/jobs/worker-messaging.d.ts +10 -0
- package/dist/utils/jobs/worker-messaging.js +114 -0
- package/dist/utils/jobs/worker-messaging.js.map +1 -0
- package/dist/utils/js-chunk-names.d.ts +1 -0
- package/dist/utils/js-chunk-names.js +72 -0
- package/dist/utils/js-chunk-names.js.map +1 -0
- package/dist/utils/loading-indicator.d.ts +3 -0
- package/dist/utils/loading-indicator.js +44 -0
- package/dist/utils/loading-indicator.js.map +1 -0
- package/dist/utils/local-eslint-config-finder.d.ts +1 -0
- package/dist/utils/local-eslint-config-finder.js +31 -0
- package/dist/utils/local-eslint-config-finder.js.map +1 -0
- package/dist/utils/merge-gatsby-config.d.ts +28 -0
- package/dist/utils/merge-gatsby-config.js +43 -0
- package/dist/utils/merge-gatsby-config.js.map +1 -0
- package/dist/utils/mett.d.ts +10 -0
- package/dist/utils/mett.js +42 -0
- package/dist/utils/mett.js.map +1 -0
- package/dist/utils/module-resolver.d.ts +2 -0
- package/dist/utils/module-resolver.js +24 -0
- package/dist/utils/module-resolver.js.map +1 -0
- package/dist/utils/node-manifest.d.ts +46 -0
- package/dist/utils/node-manifest.js +367 -0
- package/dist/utils/node-manifest.js.map +1 -0
- package/dist/utils/nodes.d.ts +13 -0
- package/dist/utils/nodes.js +62 -0
- package/dist/utils/nodes.js.map +1 -0
- package/dist/utils/normalize-path.d.ts +2 -0
- package/dist/utils/normalize-path.js +11 -0
- package/dist/utils/normalize-path.js.map +1 -0
- package/dist/utils/page-data-helpers.d.ts +23 -0
- package/dist/utils/page-data-helpers.js +76 -0
- package/dist/utils/page-data-helpers.js.map +1 -0
- package/dist/utils/page-data.d.ts +39 -0
- package/dist/utils/page-data.js +366 -0
- package/dist/utils/page-data.js.map +1 -0
- package/dist/utils/page-mode.d.ts +18 -0
- package/dist/utils/page-mode.js +124 -0
- package/dist/utils/page-mode.js.map +1 -0
- package/dist/utils/page-ssr-module/bundle-webpack.d.ts +18 -0
- package/dist/utils/page-ssr-module/bundle-webpack.js +209 -0
- package/dist/utils/page-ssr-module/bundle-webpack.js.map +1 -0
- package/dist/utils/page-ssr-module/entry.d.ts +61 -0
- package/dist/utils/page-ssr-module/entry.js +344 -0
- package/dist/utils/page-ssr-module/entry.js.map +1 -0
- package/dist/utils/page-ssr-module/lambda.d.ts +3 -0
- package/dist/utils/page-ssr-module/lambda.js +401 -0
- package/dist/utils/page-ssr-module/lambda.js.map +1 -0
- package/dist/utils/parcel/compile-gatsby-files.d.ts +26 -0
- package/dist/utils/parcel/compile-gatsby-files.js +271 -0
- package/dist/utils/parcel/compile-gatsby-files.js.map +1 -0
- package/dist/utils/path.d.ts +5 -0
- package/dist/utils/path.js +55 -0
- package/dist/utils/path.js.map +1 -0
- package/dist/utils/prepare-regex.d.ts +1 -0
- package/dist/utils/prepare-regex.js +13 -0
- package/dist/utils/prepare-regex.js.map +1 -0
- package/dist/utils/prepare-urls.d.ts +7 -0
- package/dist/utils/prepare-urls.js +58 -0
- package/dist/utils/prepare-urls.js.map +1 -0
- package/dist/utils/print-instructions.d.ts +2 -0
- package/dist/utils/print-instructions.js +42 -0
- package/dist/utils/print-instructions.js.map +1 -0
- package/dist/utils/rank-route.d.ts +1 -0
- package/dist/utils/rank-route.js +26 -0
- package/dist/utils/rank-route.js.map +1 -0
- package/dist/utils/reach-router-add-basecontext-export-loader.d.ts +1 -0
- package/dist/utils/reach-router-add-basecontext-export-loader.js +23 -0
- package/dist/utils/reach-router-add-basecontext-export-loader.js.map +1 -0
- package/dist/utils/report-once.d.ts +1 -0
- package/dist/utils/report-once.js +17 -0
- package/dist/utils/report-once.js.map +1 -0
- package/dist/utils/sanitize-node.d.ts +12 -0
- package/dist/utils/sanitize-node.js +87 -0
- package/dist/utils/sanitize-node.js.map +1 -0
- package/dist/utils/show-experiment-notice.d.ts +6 -0
- package/dist/utils/show-experiment-notice.js +51 -0
- package/dist/utils/show-experiment-notice.js.map +1 -0
- package/dist/utils/slices/stitching.d.ts +4 -0
- package/dist/utils/slices/stitching.js +92 -0
- package/dist/utils/slices/stitching.js.map +1 -0
- package/dist/utils/slices.d.ts +2 -0
- package/dist/utils/slices.js +9 -0
- package/dist/utils/slices.js.map +1 -0
- package/dist/utils/source-nodes-api-runner.d.ts +8 -0
- package/dist/utils/source-nodes-api-runner.js +23 -0
- package/dist/utils/source-nodes-api-runner.js.map +1 -0
- package/dist/utils/source-nodes.d.ts +11 -0
- package/dist/utils/source-nodes.js +150 -0
- package/dist/utils/source-nodes.js.map +1 -0
- package/dist/utils/stack-trace-utils.d.ts +24 -0
- package/dist/utils/stack-trace-utils.js +113 -0
- package/dist/utils/stack-trace-utils.js.map +1 -0
- package/dist/utils/start-server.d.ts +22 -0
- package/dist/utils/start-server.js +722 -0
- package/dist/utils/start-server.js.map +1 -0
- package/dist/utils/state-machine-logging.d.ts +4 -0
- package/dist/utils/state-machine-logging.js +47 -0
- package/dist/utils/state-machine-logging.js.map +1 -0
- package/dist/utils/static-query-utils.d.ts +13 -0
- package/dist/utils/static-query-utils.js +57 -0
- package/dist/utils/static-query-utils.js.map +1 -0
- package/dist/utils/test-import-error.d.ts +1 -0
- package/dist/utils/test-import-error.js +18 -0
- package/dist/utils/test-import-error.js.map +1 -0
- package/dist/utils/tracer/index.d.ts +12 -0
- package/dist/utils/tracer/index.js +42 -0
- package/dist/utils/tracer/index.js.map +1 -0
- package/dist/utils/tracer/jaeger-local.d.ts +4 -0
- package/dist/utils/tracer/jaeger-local.js +32 -0
- package/dist/utils/tracer/jaeger-local.js.map +1 -0
- package/dist/utils/tracer/zipkin-local.d.ts +11 -0
- package/dist/utils/tracer/zipkin-local.js +87 -0
- package/dist/utils/tracer/zipkin-local.js.map +1 -0
- package/dist/utils/tracer/zipkin-types.d.js +14 -0
- package/dist/utils/tracer/zipkin-types.d.js.map +1 -0
- package/dist/utils/validate-component.d.ts +23 -0
- package/dist/utils/validate-component.js +99 -0
- package/dist/utils/validate-component.js.map +1 -0
- package/dist/utils/validate-engines/child.d.ts +1 -0
- package/dist/utils/validate-engines/child.js +74 -0
- package/dist/utils/validate-engines/child.js.map +1 -0
- package/dist/utils/validate-engines/index.d.ts +2 -0
- package/dist/utils/validate-engines/index.js +48 -0
- package/dist/utils/validate-engines/index.js.map +1 -0
- package/dist/utils/wait-until-jobs-complete.d.ts +2 -0
- package/dist/utils/wait-until-jobs-complete.js +30 -0
- package/dist/utils/wait-until-jobs-complete.js.map +1 -0
- package/dist/utils/webpack/bundle.d.ts +9 -0
- package/dist/utils/webpack/bundle.js +41 -0
- package/dist/utils/webpack/bundle.js.map +1 -0
- package/dist/utils/webpack/get-ssr-chunk-hashes.d.ts +9 -0
- package/dist/utils/webpack/get-ssr-chunk-hashes.js +55 -0
- package/dist/utils/webpack/get-ssr-chunk-hashes.js.map +1 -0
- package/dist/utils/webpack/loaders/client-components-requires-writer-loader.d.ts +1 -0
- package/dist/utils/webpack/loaders/client-components-requires-writer-loader.js +22 -0
- package/dist/utils/webpack/loaders/client-components-requires-writer-loader.js.map +1 -0
- package/dist/utils/webpack/loaders/partial-hydration-reference-loader.d.ts +1 -0
- package/dist/utils/webpack/loaders/partial-hydration-reference-loader.js +127 -0
- package/dist/utils/webpack/loaders/partial-hydration-reference-loader.js.map +1 -0
- package/dist/utils/webpack/loaders/webpack-remove-exports-loader.d.ts +1 -0
- package/dist/utils/webpack/loaders/webpack-remove-exports-loader.js +40 -0
- package/dist/utils/webpack/loaders/webpack-remove-exports-loader.js.map +1 -0
- package/dist/utils/webpack/plugins/cache-folder-resolver.d.ts +25 -0
- package/dist/utils/webpack/plugins/cache-folder-resolver.js +111 -0
- package/dist/utils/webpack/plugins/cache-folder-resolver.js.map +1 -0
- package/dist/utils/webpack/plugins/corejs-resolver.d.ts +12 -0
- package/dist/utils/webpack/plugins/corejs-resolver.js +66 -0
- package/dist/utils/webpack/plugins/corejs-resolver.js.map +1 -0
- package/dist/utils/webpack/plugins/force-css-hmr-for-edge-cases.d.ts +22 -0
- package/dist/utils/webpack/plugins/force-css-hmr-for-edge-cases.js +88 -0
- package/dist/utils/webpack/plugins/force-css-hmr-for-edge-cases.js.map +1 -0
- package/dist/utils/webpack/plugins/partial-hydration.d.ts +26 -0
- package/dist/utils/webpack/plugins/partial-hydration.js +362 -0
- package/dist/utils/webpack/plugins/partial-hydration.js.map +1 -0
- package/dist/utils/webpack/plugins/static-query-mapper.d.ts +13 -0
- package/dist/utils/webpack/plugins/static-query-mapper.js +235 -0
- package/dist/utils/webpack/plugins/static-query-mapper.js.map +1 -0
- package/dist/utils/webpack/plugins/webpack-logging.d.ts +12 -0
- package/dist/utils/webpack/plugins/webpack-logging.js +51 -0
- package/dist/utils/webpack/plugins/webpack-logging.js.map +1 -0
- package/dist/utils/webpack/utils/create-normalized-module-key.d.ts +12 -0
- package/dist/utils/webpack/utils/create-normalized-module-key.js +25 -0
- package/dist/utils/webpack/utils/create-normalized-module-key.js.map +1 -0
- package/dist/utils/webpack/utils/is-file-inside-compilations.d.ts +7 -0
- package/dist/utils/webpack/utils/is-file-inside-compilations.js +37 -0
- package/dist/utils/webpack/utils/is-file-inside-compilations.js.map +1 -0
- package/dist/utils/webpack-error-utils.d.ts +24 -0
- package/dist/utils/webpack-error-utils.js +112 -0
- package/dist/utils/webpack-error-utils.js.map +1 -0
- package/dist/utils/webpack-plugins.d.ts +46 -0
- package/dist/utils/webpack-plugins.js +61 -0
- package/dist/utils/webpack-plugins.js.map +1 -0
- package/dist/utils/webpack-status.d.ts +3 -0
- package/dist/utils/webpack-status.js +21 -0
- package/dist/utils/webpack-status.js.map +1 -0
- package/dist/utils/webpack-utils.d.ts +121 -0
- package/dist/utils/webpack-utils.js +574 -0
- package/dist/utils/webpack-utils.js.map +1 -0
- package/dist/utils/webpack.config.js +804 -0
- package/dist/utils/webpack.config.js.map +1 -0
- package/dist/utils/websocket-manager.d.ts +39 -0
- package/dist/utils/websocket-manager.js +183 -0
- package/dist/utils/websocket-manager.js.map +1 -0
- package/dist/utils/worker/child/index.d.ts +5 -0
- package/dist/utils/worker/child/index.js +35 -0
- package/dist/utils/worker/child/index.js.map +1 -0
- package/dist/utils/worker/child/load-config-and-plugins.d.ts +2 -0
- package/dist/utils/worker/child/load-config-and-plugins.js +28 -0
- package/dist/utils/worker/child/load-config-and-plugins.js.map +1 -0
- package/dist/utils/worker/child/queries.d.ts +7 -0
- package/dist/utils/worker/child/queries.js +84 -0
- package/dist/utils/worker/child/queries.js.map +1 -0
- package/dist/utils/worker/child/render-html.d.ts +49 -0
- package/dist/utils/worker/child/render-html.js +562 -0
- package/dist/utils/worker/child/render-html.js.map +1 -0
- package/dist/utils/worker/child/schema.d.ts +2 -0
- package/dist/utils/worker/child/schema.js +41 -0
- package/dist/utils/worker/child/schema.js.map +1 -0
- package/dist/utils/worker/child/state.d.ts +2 -0
- package/dist/utils/worker/child/state.js +13 -0
- package/dist/utils/worker/child/state.js.map +1 -0
- package/dist/utils/worker/messaging.d.ts +16 -0
- package/dist/utils/worker/messaging.js +9 -0
- package/dist/utils/worker/messaging.js.map +1 -0
- package/dist/utils/worker/pool.d.ts +10 -0
- package/dist/utils/worker/pool.js +122 -0
- package/dist/utils/worker/pool.js.map +1 -0
- package/dist/utils/worker/reporter.d.ts +3 -0
- package/dist/utils/worker/reporter.js +26 -0
- package/dist/utils/worker/reporter.js.map +1 -0
- package/dist/utils/worker/types.d.ts +3 -0
- package/dist/utils/worker/types.js +4 -0
- package/dist/utils/worker/types.js.map +1 -0
- package/graphql.d.ts +2 -0
- package/graphql.js +6 -0
- package/index.d.ts +1906 -0
- package/internal.d.ts +4 -0
- package/internal.js +5 -0
- package/ipc.json +3 -0
- package/package.json +744 -0
- package/reporter.d.ts +4 -0
- package/reporter.js +3 -0
- package/scripts/postinstall.js +7 -0
- package/utils.js +1 -0
- package/webpack.d.ts +3 -0
- package/webpack.js +3 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build-example-data.js","names":["getExampleObject","fieldMap","typeName","typeConflictReporter","Object","keys","reduce","acc","key","value","buildExampleValue","path","descriptor","isArrayItem","type","conflicts","resolveWinnerType","addConflict","prepareConflictExamples","typeInfo","isMixOfDateAndString","hasOnlyEmptyStrings","example","item","exampleItemValue","nodes","multiple","linkedNodes","filter","dprops","hasKeys","result","forEach","prop","candidates","possibleTypes","length","isMixedNumber","typeNameMapper","includes","reportedValueMapper","relatedNode","find","relatedNodeList","object","itemValue","array","undefined","conflictingTypes","groups","first","map","nodeId","join","float","int","Boolean","total","date","string","empty"],"sources":["../../../src/schema/infer/build-example-data.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-use-before-define */\nimport { groupBy } from \"lodash\"\nimport {\n IValueDescriptor,\n ValueType,\n ITypeMetadata,\n} from \"./inference-metadata\"\nimport {\n TypeConflictReporter,\n ITypeConflictExample,\n} from \"./type-conflict-reporter\"\n\n// See gatsby/src/schema/infer/inference-metadata.ts for the ValueDescriptor structs (-> typeInfo)\n\nconst getExampleObject = ({\n fieldMap = {},\n typeName,\n typeConflictReporter,\n}: ITypeMetadata): { [k: string]: unknown } =>\n Object.keys(fieldMap).reduce((acc, key) => {\n const value = buildExampleValue({\n path: `${typeName}.${key}`,\n descriptor: fieldMap[key],\n typeConflictReporter,\n })\n if (key && value !== null) {\n acc[key] = value\n }\n return acc\n }, {})\n\nconst buildExampleValue = ({\n descriptor,\n typeConflictReporter,\n isArrayItem = false,\n path = ``,\n}: {\n descriptor: IValueDescriptor\n typeConflictReporter?: TypeConflictReporter\n path?: string\n isArrayItem?: boolean\n}): unknown | null => {\n const [type, conflicts = false] = resolveWinnerType(descriptor)\n\n if (conflicts && typeConflictReporter) {\n typeConflictReporter.addConflict(\n path,\n prepareConflictExamples(descriptor, isArrayItem)\n )\n }\n\n const typeInfo = descriptor[type]\n\n switch (type) {\n case `null`:\n return null\n\n case `date`:\n case `string`: {\n if (isMixOfDateAndString(descriptor)) {\n return hasOnlyEmptyStrings(descriptor) ? `1978-09-26` : `String`\n }\n return typeInfo.example\n }\n\n case `array`: {\n const { item } = typeInfo\n const exampleItemValue = item\n ? buildExampleValue({\n descriptor: item,\n isArrayItem: true,\n typeConflictReporter,\n path,\n })\n : null\n return exampleItemValue === null ? null : [exampleItemValue]\n }\n\n case `relatedNode`:\n case `relatedNodeList`: {\n const { nodes = {} } = typeInfo\n return {\n multiple: type === `relatedNodeList`,\n linkedNodes: Object.keys(nodes).filter(key => nodes[key] > 0),\n }\n }\n\n case `object`: {\n const { dprops } = typeInfo\n let hasKeys = false\n const result = {}\n Object.keys(dprops).forEach(prop => {\n const value = buildExampleValue({\n descriptor: dprops[prop],\n typeConflictReporter,\n path: `${path}.${prop}`,\n })\n if (value !== null) {\n hasKeys = true\n result[prop] = value\n }\n })\n return hasKeys ? result : null\n }\n\n default:\n return typeInfo.example\n }\n}\n\nconst resolveWinnerType = (\n descriptor: IValueDescriptor\n): [ValueType | \"null\", boolean?] => {\n const candidates = possibleTypes(descriptor)\n if (candidates.length === 1) {\n return [candidates[0]]\n }\n if (candidates.length === 2 && isMixedNumber(descriptor)) {\n return [`float`]\n }\n if (candidates.length === 2 && isMixOfDateAndString(descriptor)) {\n return [hasOnlyEmptyStrings(descriptor) ? `date` : `string`]\n }\n if (candidates.length > 1) {\n return [`null`, true]\n }\n return [`null`]\n}\n\nconst prepareConflictExamples = (\n descriptor: IValueDescriptor,\n isArrayItem: boolean\n): Array<ITypeConflictExample> => {\n const typeNameMapper = (typeName: ValueType): string => {\n if (typeName === `relatedNode`) {\n return `string`\n }\n if (typeName === `relatedNodeList`) {\n return `[string]`\n }\n return [`float`, `int`].includes(typeName) ? `number` : typeName\n }\n const reportedValueMapper = (typeName: ValueType): unknown => {\n if (typeName === `relatedNode`) {\n const { nodes } = descriptor.relatedNode ?? { nodes: {} }\n return Object.keys(nodes).find(key => nodes[key] > 0)\n }\n if (typeName === `relatedNodeList`) {\n const { nodes } = descriptor.relatedNodeList ?? { nodes: {} }\n return Object.keys(nodes).filter(key => nodes[key] > 0)\n }\n if (typeName === `object`) {\n return getExampleObject({\n typeName,\n fieldMap: descriptor!.object!.dprops,\n })\n }\n if (typeName === `array`) {\n const itemValue = buildExampleValue({\n descriptor: descriptor!.array!.item,\n isArrayItem: true,\n })\n return itemValue === null || itemValue === undefined ? [] : [itemValue]\n }\n return descriptor[typeName]?.example\n }\n const conflictingTypes = possibleTypes(descriptor)\n\n if (isArrayItem) {\n // Differentiate conflict examples by node they were first seen in.\n // See Caveats section in the header of the ./inference-metadata.ts\n const groups = groupBy(\n conflictingTypes,\n type => descriptor[type]?.first || ``\n )\n return Object.keys(groups).map(nodeId => {\n return {\n type: `[${groups[nodeId].map(typeNameMapper).join(`,`)}]`,\n value: groups[nodeId].map(reportedValueMapper),\n }\n })\n }\n\n return conflictingTypes.map(type => {\n return {\n type: typeNameMapper(type),\n value: reportedValueMapper(type),\n }\n })\n}\n\nconst isMixedNumber = (descriptor: IValueDescriptor): boolean => {\n const { float, int } = descriptor\n return Boolean(float?.total) && Boolean(int?.total)\n}\n\nconst isMixOfDateAndString = (descriptor: IValueDescriptor): boolean => {\n const { date, string } = descriptor\n return Boolean(date?.total) && Boolean(string?.total)\n}\n\nconst hasOnlyEmptyStrings = (descriptor: IValueDescriptor): boolean => {\n const { string } = descriptor\n return string !== undefined && string?.empty === string?.total\n}\n\nconst possibleTypes = (descriptor: IValueDescriptor = {}): Array<ValueType> =>\n Object.keys(descriptor).filter(\n type => descriptor[type].total > 0\n ) as Array<ValueType>\n\nexport { getExampleObject }\n"],"mappings":"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"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const report = require(`gatsby-cli/lib/reporter`);
|
|
4
|
+
const {
|
|
5
|
+
ObjectTypeComposer
|
|
6
|
+
} = require(`graphql-compose`);
|
|
7
|
+
const {
|
|
8
|
+
hasNodes
|
|
9
|
+
} = require(`./inference-metadata`);
|
|
10
|
+
const {
|
|
11
|
+
getExampleObject
|
|
12
|
+
} = require(`./build-example-data`);
|
|
13
|
+
const {
|
|
14
|
+
addNodeInterface
|
|
15
|
+
} = require(`../types/node-interface`);
|
|
16
|
+
const {
|
|
17
|
+
addInferredFields
|
|
18
|
+
} = require(`./add-inferred-fields`);
|
|
19
|
+
const {
|
|
20
|
+
getDataStore
|
|
21
|
+
} = require(`../../datastore`);
|
|
22
|
+
const addInferredTypes = ({
|
|
23
|
+
schemaComposer,
|
|
24
|
+
typeConflictReporter,
|
|
25
|
+
typeMapping,
|
|
26
|
+
inferenceMetadata,
|
|
27
|
+
parentSpan
|
|
28
|
+
}) => {
|
|
29
|
+
// XXX(freiksenet): Won't be needed after plugins set typedefs
|
|
30
|
+
// Infer File first so all the links to it would work
|
|
31
|
+
const {
|
|
32
|
+
typeMap
|
|
33
|
+
} = inferenceMetadata;
|
|
34
|
+
const typesWithNodes = Object.keys(typeMap).filter(typeName => hasNodes(typeMap[typeName]));
|
|
35
|
+
const typeNames = putFileFirst(typesWithNodes);
|
|
36
|
+
const noNodeInterfaceTypes = [];
|
|
37
|
+
const typesToInfer = [];
|
|
38
|
+
typeNames.forEach(typeName => {
|
|
39
|
+
let typeComposer;
|
|
40
|
+
if (schemaComposer.has(typeName)) {
|
|
41
|
+
typeComposer = schemaComposer.getOTC(typeName);
|
|
42
|
+
const runInfer = typeComposer.hasExtension(`infer`) ? typeComposer.getExtension(`infer`) : true;
|
|
43
|
+
if (runInfer) {
|
|
44
|
+
if (!typeComposer.hasInterface(`Node`)) {
|
|
45
|
+
noNodeInterfaceTypes.push(typeName);
|
|
46
|
+
}
|
|
47
|
+
typesToInfer.push(typeComposer);
|
|
48
|
+
}
|
|
49
|
+
} else {
|
|
50
|
+
typeComposer = ObjectTypeComposer.create(typeName, schemaComposer);
|
|
51
|
+
addNodeInterface({
|
|
52
|
+
schemaComposer,
|
|
53
|
+
typeComposer
|
|
54
|
+
});
|
|
55
|
+
typeComposer.setExtension(`createdFrom`, `inference`);
|
|
56
|
+
typesToInfer.push(typeComposer);
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
if (noNodeInterfaceTypes.length > 0) {
|
|
60
|
+
noNodeInterfaceTypes.forEach(typeName => {
|
|
61
|
+
report.warn(`Type \`${typeName}\` declared in \`createTypes\` looks like a node, ` + `but doesn't implement a \`Node\` interface. It's likely that you should ` + `add the \`Node\` interface to your type def:\n\n` + `\`type ${typeName} implements Node { ... }\`\n\n` + `If you know that you don't want it to be a node (which would mean no ` + `root queries to retrieve it), you can explicitly disable inference ` + `for it:\n\n` + `\`type ${typeName} @dontInfer { ... }\``);
|
|
62
|
+
});
|
|
63
|
+
report.panic(`Building schema failed`);
|
|
64
|
+
}
|
|
65
|
+
return typesToInfer.map(typeComposer => addInferredType({
|
|
66
|
+
schemaComposer,
|
|
67
|
+
typeComposer,
|
|
68
|
+
typeConflictReporter,
|
|
69
|
+
typeMapping,
|
|
70
|
+
parentSpan,
|
|
71
|
+
inferenceMetadata
|
|
72
|
+
}));
|
|
73
|
+
};
|
|
74
|
+
const addInferredType = ({
|
|
75
|
+
schemaComposer,
|
|
76
|
+
typeComposer,
|
|
77
|
+
typeConflictReporter,
|
|
78
|
+
typeMapping,
|
|
79
|
+
inferenceMetadata = {},
|
|
80
|
+
parentSpan
|
|
81
|
+
}) => {
|
|
82
|
+
const typeName = typeComposer.getTypeName();
|
|
83
|
+
// TODO: Move this to where the type is created once we can get
|
|
84
|
+
// node type owner information directly from store
|
|
85
|
+
if (typeComposer.getExtension(`createdFrom`) === `inference` && hasNodes(inferenceMetadata.typeMap[typeName])) {
|
|
86
|
+
let firstNode;
|
|
87
|
+
for (const node of getDataStore().iterateNodesByType(typeName)) {
|
|
88
|
+
firstNode = node;
|
|
89
|
+
break;
|
|
90
|
+
}
|
|
91
|
+
if (firstNode) {
|
|
92
|
+
typeComposer.setExtension(`plugin`, firstNode.internal.owner);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
const exampleValue = getExampleObject({
|
|
96
|
+
...inferenceMetadata.typeMap[typeName],
|
|
97
|
+
typeName,
|
|
98
|
+
typeConflictReporter
|
|
99
|
+
});
|
|
100
|
+
addInferredFields({
|
|
101
|
+
schemaComposer,
|
|
102
|
+
typeComposer,
|
|
103
|
+
exampleValue,
|
|
104
|
+
typeMapping,
|
|
105
|
+
parentSpan
|
|
106
|
+
});
|
|
107
|
+
return typeComposer;
|
|
108
|
+
};
|
|
109
|
+
const putFileFirst = typeNames => {
|
|
110
|
+
const index = typeNames.indexOf(`File`);
|
|
111
|
+
if (index !== -1) {
|
|
112
|
+
return [`File`, ...typeNames.slice(0, index), ...typeNames.slice(index + 1)];
|
|
113
|
+
} else {
|
|
114
|
+
return typeNames;
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
module.exports = {
|
|
118
|
+
addInferredType,
|
|
119
|
+
addInferredTypes
|
|
120
|
+
};
|
|
121
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["report","require","ObjectTypeComposer","hasNodes","getExampleObject","addNodeInterface","addInferredFields","getDataStore","addInferredTypes","schemaComposer","typeConflictReporter","typeMapping","inferenceMetadata","parentSpan","typeMap","typesWithNodes","Object","keys","filter","typeName","typeNames","putFileFirst","noNodeInterfaceTypes","typesToInfer","forEach","typeComposer","has","getOTC","runInfer","hasExtension","getExtension","hasInterface","push","create","setExtension","length","warn","panic","map","addInferredType","getTypeName","firstNode","node","iterateNodesByType","internal","owner","exampleValue","index","indexOf","slice","module","exports"],"sources":["../../../src/schema/infer/index.js"],"sourcesContent":["const report = require(`gatsby-cli/lib/reporter`)\nconst { ObjectTypeComposer } = require(`graphql-compose`)\nconst { hasNodes } = require(`./inference-metadata`)\nconst { getExampleObject } = require(`./build-example-data`)\nconst { addNodeInterface } = require(`../types/node-interface`)\nconst { addInferredFields } = require(`./add-inferred-fields`)\nconst { getDataStore } = require(`../../datastore`)\n\nconst addInferredTypes = ({\n schemaComposer,\n typeConflictReporter,\n typeMapping,\n inferenceMetadata,\n parentSpan,\n}) => {\n // XXX(freiksenet): Won't be needed after plugins set typedefs\n // Infer File first so all the links to it would work\n const { typeMap } = inferenceMetadata\n const typesWithNodes = Object.keys(typeMap).filter(typeName =>\n hasNodes(typeMap[typeName])\n )\n const typeNames = putFileFirst(typesWithNodes)\n const noNodeInterfaceTypes = []\n\n const typesToInfer = []\n\n typeNames.forEach(typeName => {\n let typeComposer\n if (schemaComposer.has(typeName)) {\n typeComposer = schemaComposer.getOTC(typeName)\n const runInfer = typeComposer.hasExtension(`infer`)\n ? typeComposer.getExtension(`infer`)\n : true\n if (runInfer) {\n if (!typeComposer.hasInterface(`Node`)) {\n noNodeInterfaceTypes.push(typeName)\n }\n typesToInfer.push(typeComposer)\n }\n } else {\n typeComposer = ObjectTypeComposer.create(typeName, schemaComposer)\n addNodeInterface({ schemaComposer, typeComposer })\n typeComposer.setExtension(`createdFrom`, `inference`)\n typesToInfer.push(typeComposer)\n }\n })\n\n if (noNodeInterfaceTypes.length > 0) {\n noNodeInterfaceTypes.forEach(typeName => {\n report.warn(\n `Type \\`${typeName}\\` declared in \\`createTypes\\` looks like a node, ` +\n `but doesn't implement a \\`Node\\` interface. It's likely that you should ` +\n `add the \\`Node\\` interface to your type def:\\n\\n` +\n `\\`type ${typeName} implements Node { ... }\\`\\n\\n` +\n `If you know that you don't want it to be a node (which would mean no ` +\n `root queries to retrieve it), you can explicitly disable inference ` +\n `for it:\\n\\n` +\n `\\`type ${typeName} @dontInfer { ... }\\``\n )\n })\n report.panic(`Building schema failed`)\n }\n\n return typesToInfer.map(typeComposer =>\n addInferredType({\n schemaComposer,\n typeComposer,\n typeConflictReporter,\n typeMapping,\n parentSpan,\n inferenceMetadata,\n })\n )\n}\n\nconst addInferredType = ({\n schemaComposer,\n typeComposer,\n typeConflictReporter,\n typeMapping,\n inferenceMetadata = {},\n parentSpan,\n}) => {\n const typeName = typeComposer.getTypeName()\n // TODO: Move this to where the type is created once we can get\n // node type owner information directly from store\n if (\n typeComposer.getExtension(`createdFrom`) === `inference` &&\n hasNodes(inferenceMetadata.typeMap[typeName])\n ) {\n let firstNode\n for (const node of getDataStore().iterateNodesByType(typeName)) {\n firstNode = node\n break\n }\n if (firstNode) {\n typeComposer.setExtension(`plugin`, firstNode.internal.owner)\n }\n }\n\n const exampleValue = getExampleObject({\n ...inferenceMetadata.typeMap[typeName],\n typeName,\n typeConflictReporter,\n })\n\n addInferredFields({\n schemaComposer,\n typeComposer,\n exampleValue,\n typeMapping,\n parentSpan,\n })\n return typeComposer\n}\n\nconst putFileFirst = typeNames => {\n const index = typeNames.indexOf(`File`)\n if (index !== -1) {\n return [`File`, ...typeNames.slice(0, index), ...typeNames.slice(index + 1)]\n } else {\n return typeNames\n }\n}\n\nmodule.exports = {\n addInferredType,\n addInferredTypes,\n}\n"],"mappings":";;AAAA,MAAMA,MAAM,GAAGC,OAAO,CAAE,yBAAwB,CAAC;AACjD,MAAM;EAAEC;AAAmB,CAAC,GAAGD,OAAO,CAAE,iBAAgB,CAAC;AACzD,MAAM;EAAEE;AAAS,CAAC,GAAGF,OAAO,CAAE,sBAAqB,CAAC;AACpD,MAAM;EAAEG;AAAiB,CAAC,GAAGH,OAAO,CAAE,sBAAqB,CAAC;AAC5D,MAAM;EAAEI;AAAiB,CAAC,GAAGJ,OAAO,CAAE,yBAAwB,CAAC;AAC/D,MAAM;EAAEK;AAAkB,CAAC,GAAGL,OAAO,CAAE,uBAAsB,CAAC;AAC9D,MAAM;EAAEM;AAAa,CAAC,GAAGN,OAAO,CAAE,iBAAgB,CAAC;AAEnD,MAAMO,gBAAgB,GAAG,CAAC;EACxBC,cAAc;EACdC,oBAAoB;EACpBC,WAAW;EACXC,iBAAiB;EACjBC;AACF,CAAC,KAAK;EACJ;EACA;EACA,MAAM;IAAEC;EAAQ,CAAC,GAAGF,iBAAiB;EACrC,MAAMG,cAAc,GAAGC,MAAM,CAACC,IAAI,CAACH,OAAO,CAAC,CAACI,MAAM,CAACC,QAAQ,IACzDhB,QAAQ,CAACW,OAAO,CAACK,QAAQ,CAAC,CAAC,CAC5B;EACD,MAAMC,SAAS,GAAGC,YAAY,CAACN,cAAc,CAAC;EAC9C,MAAMO,oBAAoB,GAAG,EAAE;EAE/B,MAAMC,YAAY,GAAG,EAAE;EAEvBH,SAAS,CAACI,OAAO,CAACL,QAAQ,IAAI;IAC5B,IAAIM,YAAY;IAChB,IAAIhB,cAAc,CAACiB,GAAG,CAACP,QAAQ,CAAC,EAAE;MAChCM,YAAY,GAAGhB,cAAc,CAACkB,MAAM,CAACR,QAAQ,CAAC;MAC9C,MAAMS,QAAQ,GAAGH,YAAY,CAACI,YAAY,CAAE,OAAM,CAAC,GAC/CJ,YAAY,CAACK,YAAY,CAAE,OAAM,CAAC,GAClC,IAAI;MACR,IAAIF,QAAQ,EAAE;QACZ,IAAI,CAACH,YAAY,CAACM,YAAY,CAAE,MAAK,CAAC,EAAE;UACtCT,oBAAoB,CAACU,IAAI,CAACb,QAAQ,CAAC;QACrC;QACAI,YAAY,CAACS,IAAI,CAACP,YAAY,CAAC;MACjC;IACF,CAAC,MAAM;MACLA,YAAY,GAAGvB,kBAAkB,CAAC+B,MAAM,CAACd,QAAQ,EAAEV,cAAc,CAAC;MAClEJ,gBAAgB,CAAC;QAAEI,cAAc;QAAEgB;MAAa,CAAC,CAAC;MAClDA,YAAY,CAACS,YAAY,CAAE,aAAY,EAAG,WAAU,CAAC;MACrDX,YAAY,CAACS,IAAI,CAACP,YAAY,CAAC;IACjC;EACF,CAAC,CAAC;EAEF,IAAIH,oBAAoB,CAACa,MAAM,GAAG,CAAC,EAAE;IACnCb,oBAAoB,CAACE,OAAO,CAACL,QAAQ,IAAI;MACvCnB,MAAM,CAACoC,IAAI,CACR,UAASjB,QAAS,oDAAmD,GACnE,0EAAyE,GACzE,kDAAiD,GACjD,UAASA,QAAS,gCAA+B,GACjD,uEAAsE,GACtE,qEAAoE,GACpE,aAAY,GACZ,UAASA,QAAS,uBAAsB,CAC5C;IACH,CAAC,CAAC;IACFnB,MAAM,CAACqC,KAAK,CAAE,wBAAuB,CAAC;EACxC;EAEA,OAAOd,YAAY,CAACe,GAAG,CAACb,YAAY,IAClCc,eAAe,CAAC;IACd9B,cAAc;IACdgB,YAAY;IACZf,oBAAoB;IACpBC,WAAW;IACXE,UAAU;IACVD;EACF,CAAC,CAAC,CACH;AACH,CAAC;AAED,MAAM2B,eAAe,GAAG,CAAC;EACvB9B,cAAc;EACdgB,YAAY;EACZf,oBAAoB;EACpBC,WAAW;EACXC,iBAAiB,GAAG,CAAC,CAAC;EACtBC;AACF,CAAC,KAAK;EACJ,MAAMM,QAAQ,GAAGM,YAAY,CAACe,WAAW,EAAE;EAC3C;EACA;EACA,IACEf,YAAY,CAACK,YAAY,CAAE,aAAY,CAAC,KAAM,WAAU,IACxD3B,QAAQ,CAACS,iBAAiB,CAACE,OAAO,CAACK,QAAQ,CAAC,CAAC,EAC7C;IACA,IAAIsB,SAAS;IACb,KAAK,MAAMC,IAAI,IAAInC,YAAY,EAAE,CAACoC,kBAAkB,CAACxB,QAAQ,CAAC,EAAE;MAC9DsB,SAAS,GAAGC,IAAI;MAChB;IACF;IACA,IAAID,SAAS,EAAE;MACbhB,YAAY,CAACS,YAAY,CAAE,QAAO,EAAEO,SAAS,CAACG,QAAQ,CAACC,KAAK,CAAC;IAC/D;EACF;EAEA,MAAMC,YAAY,GAAG1C,gBAAgB,CAAC;IACpC,GAAGQ,iBAAiB,CAACE,OAAO,CAACK,QAAQ,CAAC;IACtCA,QAAQ;IACRT;EACF,CAAC,CAAC;EAEFJ,iBAAiB,CAAC;IAChBG,cAAc;IACdgB,YAAY;IACZqB,YAAY;IACZnC,WAAW;IACXE;EACF,CAAC,CAAC;EACF,OAAOY,YAAY;AACrB,CAAC;AAED,MAAMJ,YAAY,GAAGD,SAAS,IAAI;EAChC,MAAM2B,KAAK,GAAG3B,SAAS,CAAC4B,OAAO,CAAE,MAAK,CAAC;EACvC,IAAID,KAAK,KAAK,CAAC,CAAC,EAAE;IAChB,OAAO,CAAE,MAAK,EAAE,GAAG3B,SAAS,CAAC6B,KAAK,CAAC,CAAC,EAAEF,KAAK,CAAC,EAAE,GAAG3B,SAAS,CAAC6B,KAAK,CAACF,KAAK,GAAG,CAAC,CAAC,CAAC;EAC9E,CAAC,MAAM;IACL,OAAO3B,SAAS;EAClB;AACF,CAAC;AAED8B,MAAM,CAACC,OAAO,GAAG;EACfZ,eAAe;EACf/B;AACF,CAAC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { Node } from "../../../index";
|
|
2
|
+
import { TypeConflictReporter } from "./type-conflict-reporter";
|
|
3
|
+
export interface ITypeInfo {
|
|
4
|
+
first?: string;
|
|
5
|
+
total: number;
|
|
6
|
+
example?: unknown;
|
|
7
|
+
}
|
|
8
|
+
export interface ITypeInfoString extends ITypeInfo {
|
|
9
|
+
empty: number;
|
|
10
|
+
example: string;
|
|
11
|
+
}
|
|
12
|
+
export interface ITypeInfoDate extends ITypeInfo {
|
|
13
|
+
example: string | Date;
|
|
14
|
+
}
|
|
15
|
+
export interface ITypeInfoNumber extends ITypeInfo {
|
|
16
|
+
example: number;
|
|
17
|
+
}
|
|
18
|
+
export interface ITypeInfoBoolean extends ITypeInfo {
|
|
19
|
+
example: boolean;
|
|
20
|
+
}
|
|
21
|
+
export interface ITypeInfoArray extends ITypeInfo {
|
|
22
|
+
item: IValueDescriptor;
|
|
23
|
+
}
|
|
24
|
+
export interface ITypeInfoRelatedNodes extends ITypeInfo {
|
|
25
|
+
nodes: {
|
|
26
|
+
[key: string]: number;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
export interface ITypeInfoObject extends ITypeInfo {
|
|
30
|
+
dprops: {
|
|
31
|
+
[name: string]: IValueDescriptor;
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
export interface IValueDescriptor {
|
|
35
|
+
int?: ITypeInfoNumber;
|
|
36
|
+
float?: ITypeInfoNumber;
|
|
37
|
+
date?: ITypeInfoDate;
|
|
38
|
+
string?: ITypeInfoString;
|
|
39
|
+
boolean?: ITypeInfoBoolean;
|
|
40
|
+
array?: ITypeInfoArray;
|
|
41
|
+
relatedNode?: ITypeInfoRelatedNodes;
|
|
42
|
+
relatedNodeList?: ITypeInfoRelatedNodes;
|
|
43
|
+
object?: ITypeInfoObject;
|
|
44
|
+
}
|
|
45
|
+
export type ValueType = keyof IValueDescriptor;
|
|
46
|
+
export interface ITypeMetadata {
|
|
47
|
+
typeName?: string;
|
|
48
|
+
disabled?: boolean;
|
|
49
|
+
ignored?: boolean;
|
|
50
|
+
dirty?: boolean;
|
|
51
|
+
total?: number;
|
|
52
|
+
ignoredFields?: Set<string>;
|
|
53
|
+
fieldMap?: Record<string, IValueDescriptor>;
|
|
54
|
+
typeConflictReporter?: TypeConflictReporter;
|
|
55
|
+
[key: string]: unknown;
|
|
56
|
+
}
|
|
57
|
+
declare const ignore: (metadata?: ITypeMetadata, set?: boolean) => ITypeMetadata;
|
|
58
|
+
declare const disable: (metadata?: ITypeMetadata, set?: boolean) => ITypeMetadata;
|
|
59
|
+
declare const addNode: (metadata: ITypeMetadata, node: Node) => ITypeMetadata;
|
|
60
|
+
declare const deleteNode: (metadata: ITypeMetadata, node: Node) => ITypeMetadata;
|
|
61
|
+
declare const addNodes: (metadata: ITypeMetadata | undefined, nodes: Iterable<Node>) => ITypeMetadata;
|
|
62
|
+
declare const isEmpty: ({ fieldMap }: {
|
|
63
|
+
fieldMap: any;
|
|
64
|
+
}) => boolean;
|
|
65
|
+
declare const hasNodes: (typeMetadata: ITypeMetadata) => boolean;
|
|
66
|
+
declare const haveEqualFields: ({ fieldMap }?: {
|
|
67
|
+
fieldMap?: {} | undefined;
|
|
68
|
+
}, { fieldMap: otherFieldMap }?: {
|
|
69
|
+
fieldMap?: {} | undefined;
|
|
70
|
+
}) => boolean;
|
|
71
|
+
declare const initialMetadata: (state?: Record<string, unknown>) => ITypeMetadata;
|
|
72
|
+
export { addNode, addNodes, deleteNode, ignore, disable, isEmpty, hasNodes, haveEqualFields, initialMetadata, };
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
exports.__esModule = true;
|
|
5
|
+
exports.isEmpty = exports.initialMetadata = exports.ignore = exports.haveEqualFields = exports.hasNodes = exports.disable = exports.deleteNode = exports.addNodes = exports.addNode = void 0;
|
|
6
|
+
var _isEqual2 = _interopRequireDefault(require("lodash/isEqual"));
|
|
7
|
+
var _is32BitInteger = require("../../utils/is-32-bit-integer");
|
|
8
|
+
var _date = require("../types/date");
|
|
9
|
+
const getType = (value, key) => {
|
|
10
|
+
// Staying as close as possible to GraphQL types
|
|
11
|
+
switch (typeof value) {
|
|
12
|
+
case `number`:
|
|
13
|
+
return (0, _is32BitInteger.is32BitInteger)(value) ? `int` : `float`;
|
|
14
|
+
case `string`:
|
|
15
|
+
if (key.includes(`___NODE`)) {
|
|
16
|
+
return `relatedNode`;
|
|
17
|
+
}
|
|
18
|
+
return (0, _date.looksLikeADate)(value) ? `date` : `string`;
|
|
19
|
+
case `boolean`:
|
|
20
|
+
return `boolean`;
|
|
21
|
+
case `object`:
|
|
22
|
+
if (value === null) return `null`;
|
|
23
|
+
if (value instanceof Date) return `date`;
|
|
24
|
+
if (value instanceof String) return `string`;
|
|
25
|
+
if (Array.isArray(value)) {
|
|
26
|
+
if (value.length === 0) {
|
|
27
|
+
return `null`;
|
|
28
|
+
}
|
|
29
|
+
return key.includes(`___NODE`) ? `relatedNodeList` : `array`;
|
|
30
|
+
}
|
|
31
|
+
if (!Object.keys(value).length) return `null`;
|
|
32
|
+
return `object`;
|
|
33
|
+
default:
|
|
34
|
+
// bigint, symbol, function, unknown (host objects in IE were typeof "unknown", for example)
|
|
35
|
+
return `null`;
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
const updateValueDescriptorObject = (value, typeInfo, nodeId, operation, metadata, path) => {
|
|
39
|
+
path.push(value);
|
|
40
|
+
const {
|
|
41
|
+
dprops = {}
|
|
42
|
+
} = typeInfo;
|
|
43
|
+
typeInfo.dprops = dprops;
|
|
44
|
+
Object.keys(value).forEach(key => {
|
|
45
|
+
const v = value[key];
|
|
46
|
+
let descriptor = dprops[key];
|
|
47
|
+
if (descriptor === undefined) {
|
|
48
|
+
descriptor = {};
|
|
49
|
+
dprops[key] = descriptor;
|
|
50
|
+
}
|
|
51
|
+
updateValueDescriptor(nodeId, key, v, operation, descriptor, metadata, path);
|
|
52
|
+
});
|
|
53
|
+
path.pop();
|
|
54
|
+
};
|
|
55
|
+
const updateValueDescriptorArray = (value, key, typeInfo, nodeId, operation, metadata, path) => {
|
|
56
|
+
value.forEach(item => {
|
|
57
|
+
let descriptor = typeInfo.item;
|
|
58
|
+
if (descriptor === undefined) {
|
|
59
|
+
descriptor = {};
|
|
60
|
+
typeInfo.item = descriptor;
|
|
61
|
+
}
|
|
62
|
+
updateValueDescriptor(nodeId, key, item, operation, descriptor, metadata, path);
|
|
63
|
+
});
|
|
64
|
+
};
|
|
65
|
+
const updateValueDescriptorRelNodes = (listOfNodeIds, delta, operation, typeInfo, metadata) => {
|
|
66
|
+
const {
|
|
67
|
+
nodes = {}
|
|
68
|
+
} = typeInfo;
|
|
69
|
+
typeInfo.nodes = nodes;
|
|
70
|
+
listOfNodeIds.forEach(nodeId => {
|
|
71
|
+
nodes[nodeId] = (nodes[nodeId] || 0) + delta;
|
|
72
|
+
|
|
73
|
+
// Treat any new related node addition or removal as a structural change
|
|
74
|
+
// FIXME: this will produce false positives as this node can be
|
|
75
|
+
// of the same type as another node already in the map (but we don't know it here)
|
|
76
|
+
if (nodes[nodeId] === 0 || operation === `add` && nodes[nodeId] === 1) {
|
|
77
|
+
metadata.dirty = true;
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
};
|
|
81
|
+
const updateValueDescriptorString = (value, delta, typeInfo) => {
|
|
82
|
+
if (value === ``) {
|
|
83
|
+
const {
|
|
84
|
+
empty = 0
|
|
85
|
+
} = typeInfo;
|
|
86
|
+
typeInfo.empty = empty + delta;
|
|
87
|
+
}
|
|
88
|
+
typeInfo.example = typeof typeInfo.example !== `undefined` ? typeInfo.example : value;
|
|
89
|
+
};
|
|
90
|
+
const updateValueDescriptor = (nodeId, key, value, operation = `add`, descriptor, metadata, path) => {
|
|
91
|
+
// The object may be traversed multiple times from root.
|
|
92
|
+
// Each time it does it should not revisit the same node twice
|
|
93
|
+
if (path.includes(value)) {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
const typeName = getType(value, key);
|
|
97
|
+
if (typeName === `null`) {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
const delta = operation === `del` ? -1 : 1;
|
|
101
|
+
let typeInfo = descriptor[typeName];
|
|
102
|
+
if (typeInfo === undefined) {
|
|
103
|
+
// eslint-disable-next-line no-undef
|
|
104
|
+
typeInfo = descriptor[typeName] = {
|
|
105
|
+
total: 0
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
typeInfo.total += delta;
|
|
109
|
+
|
|
110
|
+
// Keeping track of structural changes
|
|
111
|
+
// (when value of a new type is added or an existing type has no more values assigned)
|
|
112
|
+
if (typeInfo.total === 0 || operation === `add` && typeInfo.total === 1) {
|
|
113
|
+
metadata.dirty = true;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
// Keeping track of the first node for this type. Only used for better conflict reporting.
|
|
117
|
+
// (see Caveats section in the header comments)
|
|
118
|
+
if (operation === `add`) {
|
|
119
|
+
if (!typeInfo.first) {
|
|
120
|
+
typeInfo.first = nodeId;
|
|
121
|
+
}
|
|
122
|
+
} else if (operation === `del`) {
|
|
123
|
+
if (typeInfo.first === nodeId || typeInfo.total === 0) {
|
|
124
|
+
typeInfo.first = undefined;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
switch (typeName) {
|
|
128
|
+
case `object`:
|
|
129
|
+
updateValueDescriptorObject(value, typeInfo, nodeId, operation, metadata, path);
|
|
130
|
+
return;
|
|
131
|
+
case `array`:
|
|
132
|
+
updateValueDescriptorArray(value, key, typeInfo, nodeId, operation, metadata, path);
|
|
133
|
+
return;
|
|
134
|
+
case `relatedNode`:
|
|
135
|
+
updateValueDescriptorRelNodes([value], delta, operation, typeInfo, metadata);
|
|
136
|
+
return;
|
|
137
|
+
case `relatedNodeList`:
|
|
138
|
+
updateValueDescriptorRelNodes(value, delta, operation, typeInfo, metadata);
|
|
139
|
+
return;
|
|
140
|
+
case `string`:
|
|
141
|
+
updateValueDescriptorString(value, delta, typeInfo);
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
// int, float, boolean, null
|
|
146
|
+
|
|
147
|
+
typeInfo.example = typeof typeInfo.example !== `undefined` ? typeInfo.example : value;
|
|
148
|
+
};
|
|
149
|
+
const mergeObjectKeys = (dpropsKeysA = {}, dpropsKeysB = {}) => {
|
|
150
|
+
const dprops = Object.keys(dpropsKeysA);
|
|
151
|
+
const otherProps = Object.keys(dpropsKeysB);
|
|
152
|
+
return [...new Set(dprops.concat(otherProps))];
|
|
153
|
+
};
|
|
154
|
+
const descriptorsAreEqual = (descriptor, otherDescriptor) => {
|
|
155
|
+
const types = possibleTypes(descriptor);
|
|
156
|
+
const otherTypes = possibleTypes(otherDescriptor);
|
|
157
|
+
const childDescriptorsAreEqual = type => {
|
|
158
|
+
var _descriptor$array, _otherDescriptor$arra;
|
|
159
|
+
switch (type) {
|
|
160
|
+
case `array`:
|
|
161
|
+
return descriptorsAreEqual(descriptor === null || descriptor === void 0 ? void 0 : (_descriptor$array = descriptor.array) === null || _descriptor$array === void 0 ? void 0 : _descriptor$array.item, otherDescriptor === null || otherDescriptor === void 0 ? void 0 : (_otherDescriptor$arra = otherDescriptor.array) === null || _otherDescriptor$arra === void 0 ? void 0 : _otherDescriptor$arra.item);
|
|
162
|
+
case `object`:
|
|
163
|
+
{
|
|
164
|
+
var _descriptor$object, _otherDescriptor$obje;
|
|
165
|
+
const dpropsKeys = mergeObjectKeys(descriptor === null || descriptor === void 0 ? void 0 : (_descriptor$object = descriptor.object) === null || _descriptor$object === void 0 ? void 0 : _descriptor$object.dprops, otherDescriptor === null || otherDescriptor === void 0 ? void 0 : (_otherDescriptor$obje = otherDescriptor.object) === null || _otherDescriptor$obje === void 0 ? void 0 : _otherDescriptor$obje.dprops);
|
|
166
|
+
return dpropsKeys.every(prop => {
|
|
167
|
+
var _descriptor$object2, _otherDescriptor$obje2;
|
|
168
|
+
return descriptorsAreEqual(descriptor === null || descriptor === void 0 ? void 0 : (_descriptor$object2 = descriptor.object) === null || _descriptor$object2 === void 0 ? void 0 : _descriptor$object2.dprops[prop], otherDescriptor === null || otherDescriptor === void 0 ? void 0 : (_otherDescriptor$obje2 = otherDescriptor.object) === null || _otherDescriptor$obje2 === void 0 ? void 0 : _otherDescriptor$obje2.dprops[prop]);
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
case `relatedNode`:
|
|
172
|
+
{
|
|
173
|
+
var _descriptor$relatedNo, _otherDescriptor$rela;
|
|
174
|
+
const nodeIds = mergeObjectKeys(descriptor === null || descriptor === void 0 ? void 0 : (_descriptor$relatedNo = descriptor.relatedNode) === null || _descriptor$relatedNo === void 0 ? void 0 : _descriptor$relatedNo.nodes, otherDescriptor === null || otherDescriptor === void 0 ? void 0 : (_otherDescriptor$rela = otherDescriptor.relatedNode) === null || _otherDescriptor$rela === void 0 ? void 0 : _otherDescriptor$rela.nodes);
|
|
175
|
+
// Must be present in both descriptors or absent in both
|
|
176
|
+
// in order to be considered equal
|
|
177
|
+
return nodeIds.every(id => {
|
|
178
|
+
var _descriptor$relatedNo2, _otherDescriptor$rela2;
|
|
179
|
+
return Boolean(descriptor === null || descriptor === void 0 ? void 0 : (_descriptor$relatedNo2 = descriptor.relatedNode) === null || _descriptor$relatedNo2 === void 0 ? void 0 : _descriptor$relatedNo2.nodes[id]) === Boolean(otherDescriptor === null || otherDescriptor === void 0 ? void 0 : (_otherDescriptor$rela2 = otherDescriptor.relatedNode) === null || _otherDescriptor$rela2 === void 0 ? void 0 : _otherDescriptor$rela2.nodes[id]);
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
case `relatedNodeList`:
|
|
183
|
+
{
|
|
184
|
+
var _descriptor$relatedNo3, _otherDescriptor$rela3;
|
|
185
|
+
const nodeIds = mergeObjectKeys(descriptor === null || descriptor === void 0 ? void 0 : (_descriptor$relatedNo3 = descriptor.relatedNodeList) === null || _descriptor$relatedNo3 === void 0 ? void 0 : _descriptor$relatedNo3.nodes, otherDescriptor === null || otherDescriptor === void 0 ? void 0 : (_otherDescriptor$rela3 = otherDescriptor.relatedNodeList) === null || _otherDescriptor$rela3 === void 0 ? void 0 : _otherDescriptor$rela3.nodes);
|
|
186
|
+
return nodeIds.every(id => {
|
|
187
|
+
var _descriptor$relatedNo4, _otherDescriptor$rela4;
|
|
188
|
+
return Boolean(descriptor === null || descriptor === void 0 ? void 0 : (_descriptor$relatedNo4 = descriptor.relatedNodeList) === null || _descriptor$relatedNo4 === void 0 ? void 0 : _descriptor$relatedNo4.nodes[id]) === Boolean(otherDescriptor === null || otherDescriptor === void 0 ? void 0 : (_otherDescriptor$rela4 = otherDescriptor.relatedNodeList) === null || _otherDescriptor$rela4 === void 0 ? void 0 : _otherDescriptor$rela4.nodes[id]);
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
default:
|
|
192
|
+
return true;
|
|
193
|
+
}
|
|
194
|
+
};
|
|
195
|
+
|
|
196
|
+
// Equal when all possible types are equal (including conflicts)
|
|
197
|
+
return (0, _isEqual2.default)(types, otherTypes) && types.every(childDescriptorsAreEqual);
|
|
198
|
+
};
|
|
199
|
+
const nodeFields = (node, ignoredFields = new Set()) => Object.keys(node).filter(key => !ignoredFields.has(key));
|
|
200
|
+
const updateTypeMetadata = (metadata = initialMetadata(), operation, node) => {
|
|
201
|
+
if (metadata.disabled) {
|
|
202
|
+
return metadata;
|
|
203
|
+
}
|
|
204
|
+
metadata.total = (metadata.total || 0) + (operation === `add` ? 1 : -1);
|
|
205
|
+
if (metadata.ignored) {
|
|
206
|
+
return metadata;
|
|
207
|
+
}
|
|
208
|
+
const {
|
|
209
|
+
ignoredFields,
|
|
210
|
+
fieldMap = {}
|
|
211
|
+
} = metadata;
|
|
212
|
+
nodeFields(node, ignoredFields).forEach(field => {
|
|
213
|
+
let descriptor = fieldMap[field];
|
|
214
|
+
if (descriptor === undefined) {
|
|
215
|
+
descriptor = {};
|
|
216
|
+
fieldMap[field] = descriptor;
|
|
217
|
+
}
|
|
218
|
+
updateValueDescriptor(node.id, field, node[field], operation, descriptor, metadata, []);
|
|
219
|
+
});
|
|
220
|
+
metadata.fieldMap = fieldMap;
|
|
221
|
+
return metadata;
|
|
222
|
+
};
|
|
223
|
+
const ignore = (metadata = initialMetadata(), set = true) => {
|
|
224
|
+
metadata.ignored = set;
|
|
225
|
+
metadata.fieldMap = {};
|
|
226
|
+
return metadata;
|
|
227
|
+
};
|
|
228
|
+
exports.ignore = ignore;
|
|
229
|
+
const disable = (metadata = initialMetadata(), set = true) => {
|
|
230
|
+
metadata.disabled = set;
|
|
231
|
+
return metadata;
|
|
232
|
+
};
|
|
233
|
+
exports.disable = disable;
|
|
234
|
+
const addNode = (metadata, node) => updateTypeMetadata(metadata, `add`, node);
|
|
235
|
+
exports.addNode = addNode;
|
|
236
|
+
const deleteNode = (metadata, node) => updateTypeMetadata(metadata, `del`, node);
|
|
237
|
+
exports.deleteNode = deleteNode;
|
|
238
|
+
const addNodes = (metadata = initialMetadata(), nodes) => {
|
|
239
|
+
let state = metadata;
|
|
240
|
+
for (const node of nodes) {
|
|
241
|
+
state = addNode(state, node);
|
|
242
|
+
}
|
|
243
|
+
return state;
|
|
244
|
+
};
|
|
245
|
+
exports.addNodes = addNodes;
|
|
246
|
+
const possibleTypes = (descriptor = {}) => Object.keys(descriptor).filter(type => descriptor[type].total > 0);
|
|
247
|
+
const isEmpty = ({
|
|
248
|
+
fieldMap
|
|
249
|
+
}) => Object.keys(fieldMap).every(field => possibleTypes(fieldMap[field]).length === 0);
|
|
250
|
+
|
|
251
|
+
// Even empty type may still have nodes
|
|
252
|
+
exports.isEmpty = isEmpty;
|
|
253
|
+
const hasNodes = typeMetadata => {
|
|
254
|
+
var _typeMetadata$total;
|
|
255
|
+
return ((_typeMetadata$total = typeMetadata.total) !== null && _typeMetadata$total !== void 0 ? _typeMetadata$total : 0) > 0;
|
|
256
|
+
};
|
|
257
|
+
exports.hasNodes = hasNodes;
|
|
258
|
+
const haveEqualFields = ({
|
|
259
|
+
fieldMap = {}
|
|
260
|
+
} = {}, {
|
|
261
|
+
fieldMap: otherFieldMap = {}
|
|
262
|
+
} = {}) => {
|
|
263
|
+
const fields = mergeObjectKeys(fieldMap, otherFieldMap);
|
|
264
|
+
return fields.every(field => descriptorsAreEqual(fieldMap[field], otherFieldMap[field]));
|
|
265
|
+
};
|
|
266
|
+
exports.haveEqualFields = haveEqualFields;
|
|
267
|
+
const initialMetadata = state => {
|
|
268
|
+
return {
|
|
269
|
+
typeName: undefined,
|
|
270
|
+
disabled: false,
|
|
271
|
+
ignored: false,
|
|
272
|
+
dirty: false,
|
|
273
|
+
total: 0,
|
|
274
|
+
ignoredFields: undefined,
|
|
275
|
+
fieldMap: {},
|
|
276
|
+
...state
|
|
277
|
+
};
|
|
278
|
+
};
|
|
279
|
+
exports.initialMetadata = initialMetadata;
|
|
280
|
+
//# sourceMappingURL=inference-metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inference-metadata.js","names":["getType","value","key","is32BitInteger","includes","looksLikeADate","Date","String","Array","isArray","length","Object","keys","updateValueDescriptorObject","typeInfo","nodeId","operation","metadata","path","push","dprops","forEach","v","descriptor","undefined","updateValueDescriptor","pop","updateValueDescriptorArray","item","updateValueDescriptorRelNodes","listOfNodeIds","delta","nodes","dirty","updateValueDescriptorString","empty","example","typeName","total","first","mergeObjectKeys","dpropsKeysA","dpropsKeysB","otherProps","Set","concat","descriptorsAreEqual","otherDescriptor","types","possibleTypes","otherTypes","childDescriptorsAreEqual","type","array","dpropsKeys","object","every","prop","nodeIds","relatedNode","id","Boolean","relatedNodeList","nodeFields","node","ignoredFields","filter","has","updateTypeMetadata","initialMetadata","disabled","ignored","fieldMap","field","ignore","set","disable","addNode","deleteNode","addNodes","state","isEmpty","hasNodes","typeMetadata","haveEqualFields","otherFieldMap","fields"],"sources":["../../../src/schema/infer/inference-metadata.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-use-before-define */\n/*\n## Incrementally track the structure of nodes with metadata\n\nThis metadata can be later utilized for schema inference\n(via building `exampleValue` or directly)\n\n### Usage example:\n\n```javascript\n const node1 = { id: '1', foo: 25, bar: 'str' }\n const node2 = { id: '1', foo: 'conflict' }\n\n let meta = { ignoredFields: new Set(['id']) }\n meta = addNode(meta, node1)\n meta = addNode(meta, node2)\n console.log(meta.fieldMap)\n // outputs: {\n // foo: {\n // int: { total: 1, example: 25 },\n // string: { total: 1, example: 'conflict' },\n // },\n // bar: {\n // string: { total: 1, example: 'str' },\n // },\n // }\n\n const example1 = getExampleObject({ meta, typeName, typeConflictReporter })\n console.log(example1)\n // outputs { bar: 'str' }\n // and reports conflicts discovered\n\n meta = deleteNode(meta, node2)\n console.log(meta.fieldMap)\n // outputs: {\n // foo: {\n // int: { total: 1, example: 25 },\n // string: { total: 0, example: 'conflict' },\n // },\n // bar: { string: { total: 1, example: 'str' } },\n // }\n\n const example2 = getExampleObject({ meta, typeName, typeConflictReporter })\n // outputs: { foo: 25, bar: 'str' }\n```\n\n`addNode`, `deleteNode`, `getExampleObject` are O(N) where N is the number\nof fields in the node object (including nested fields)\n\n### Caveats\n\n* Conflict tracking for arrays is tricky, i.e.: { a: [5, \"foo\"] } and { a: [5] }, { a: [\"foo\"] }\n are represented identically in metadata. To workaround it we additionally track first NodeId:\n { a: { array: { item: { int: { total: 1, first: `1` }, string: { total: 1, first: `1` } }}\n { a: { array: { item: { int: { total: 1, first: `1` }, string: { total: 1, first: `2` } }}\n This way we can produce more useful conflict reports\n (still rare edge cases possible when reporting may be confusing, i.e. when node is deleted)\n*/\n\nimport { isEqual } from \"lodash\"\nimport { is32BitInteger } from \"../../utils/is-32-bit-integer\"\nimport { looksLikeADate } from \"../types/date\"\nimport { Node } from \"../../../index\"\nimport { TypeConflictReporter } from \"./type-conflict-reporter\"\n\nexport interface ITypeInfo {\n first?: string\n total: number\n example?: unknown\n}\n\nexport interface ITypeInfoString extends ITypeInfo {\n empty: number\n example: string\n}\n\nexport interface ITypeInfoDate extends ITypeInfo {\n example: string | Date\n}\n\nexport interface ITypeInfoNumber extends ITypeInfo {\n example: number\n}\n\nexport interface ITypeInfoBoolean extends ITypeInfo {\n example: boolean\n}\n\nexport interface ITypeInfoArray extends ITypeInfo {\n item: IValueDescriptor\n}\n\nexport interface ITypeInfoRelatedNodes extends ITypeInfo {\n nodes: { [key: string]: number }\n}\n\nexport interface ITypeInfoObject extends ITypeInfo {\n dprops: {\n [name: string]: IValueDescriptor\n }\n}\n\nexport interface IValueDescriptor {\n int?: ITypeInfoNumber\n float?: ITypeInfoNumber\n date?: ITypeInfoDate\n string?: ITypeInfoString\n boolean?: ITypeInfoBoolean\n array?: ITypeInfoArray\n relatedNode?: ITypeInfoRelatedNodes\n relatedNodeList?: ITypeInfoRelatedNodes\n object?: ITypeInfoObject\n}\n\nexport type ValueType = keyof IValueDescriptor\n\nexport interface ITypeMetadata {\n typeName?: string\n disabled?: boolean\n ignored?: boolean\n dirty?: boolean\n total?: number\n ignoredFields?: Set<string>\n fieldMap?: Record<string, IValueDescriptor>\n typeConflictReporter?: TypeConflictReporter\n [key: string]: unknown\n}\n\ntype Operation = \"add\" | \"del\"\n\nconst getType = (value: unknown, key: string): ValueType | \"null\" => {\n // Staying as close as possible to GraphQL types\n switch (typeof value) {\n case `number`:\n return is32BitInteger(value) ? `int` : `float`\n case `string`:\n if (key.includes(`___NODE`)) {\n return `relatedNode`\n }\n return looksLikeADate(value) ? `date` : `string`\n case `boolean`:\n return `boolean`\n case `object`:\n if (value === null) return `null`\n if (value instanceof Date) return `date`\n if (value instanceof String) return `string`\n if (Array.isArray(value)) {\n if (value.length === 0) {\n return `null`\n }\n return key.includes(`___NODE`) ? `relatedNodeList` : `array`\n }\n if (!Object.keys(value).length) return `null`\n return `object`\n default:\n // bigint, symbol, function, unknown (host objects in IE were typeof \"unknown\", for example)\n return `null`\n }\n}\n\nconst updateValueDescriptorObject = (\n value: Record<string, unknown>,\n typeInfo: ITypeInfoObject,\n nodeId: string,\n operation: Operation,\n metadata: ITypeMetadata,\n path: Array<Record<string, unknown>>\n): void => {\n path.push(value)\n\n const { dprops = {} } = typeInfo\n typeInfo.dprops = dprops\n\n Object.keys(value).forEach(key => {\n const v = value[key]\n\n let descriptor = dprops[key]\n if (descriptor === undefined) {\n descriptor = {}\n dprops[key] = descriptor\n }\n\n updateValueDescriptor(nodeId, key, v, operation, descriptor, metadata, path)\n })\n\n path.pop()\n}\n\nconst updateValueDescriptorArray = (\n value: Array<unknown>,\n key: string,\n typeInfo: ITypeInfoArray,\n nodeId: string,\n operation: Operation,\n metadata: ITypeMetadata,\n path: Array<Record<string, unknown>>\n): void => {\n value.forEach(item => {\n let descriptor = typeInfo.item\n if (descriptor === undefined) {\n descriptor = {}\n typeInfo.item = descriptor\n }\n\n updateValueDescriptor(\n nodeId,\n key,\n item,\n operation,\n descriptor,\n metadata,\n path\n )\n })\n}\n\nconst updateValueDescriptorRelNodes = (\n listOfNodeIds: Array<string>,\n delta: number,\n operation: Operation,\n typeInfo: ITypeInfoRelatedNodes,\n metadata: ITypeMetadata\n): void => {\n const { nodes = {} } = typeInfo\n typeInfo.nodes = nodes\n\n listOfNodeIds.forEach(nodeId => {\n nodes[nodeId] = (nodes[nodeId] || 0) + delta\n\n // Treat any new related node addition or removal as a structural change\n // FIXME: this will produce false positives as this node can be\n // of the same type as another node already in the map (but we don't know it here)\n if (nodes[nodeId] === 0 || (operation === `add` && nodes[nodeId] === 1)) {\n metadata.dirty = true\n }\n })\n}\n\nconst updateValueDescriptorString = (\n value: string,\n delta: number,\n typeInfo: ITypeInfoString\n): void => {\n if (value === ``) {\n const { empty = 0 } = typeInfo\n typeInfo.empty = empty + delta\n }\n typeInfo.example =\n typeof typeInfo.example !== `undefined` ? typeInfo.example : value\n}\n\nconst updateValueDescriptor = (\n nodeId: string,\n key: string,\n value: unknown,\n operation: Operation = `add`,\n descriptor: IValueDescriptor,\n metadata: ITypeMetadata,\n path: Array<Record<string, unknown>>\n): void => {\n // The object may be traversed multiple times from root.\n // Each time it does it should not revisit the same node twice\n if (path.includes(value as Record<string, unknown>)) {\n return\n }\n\n const typeName = getType(value, key)\n\n if (typeName === `null`) {\n return\n }\n\n const delta = operation === `del` ? -1 : 1\n\n let typeInfo: ITypeInfo | undefined = descriptor[typeName]\n if (typeInfo === undefined) {\n // eslint-disable-next-line no-undef\n typeInfo = (descriptor[typeName] as ITypeInfo) = { total: 0 }\n }\n typeInfo.total += delta\n\n // Keeping track of structural changes\n // (when value of a new type is added or an existing type has no more values assigned)\n if (typeInfo.total === 0 || (operation === `add` && typeInfo.total === 1)) {\n metadata.dirty = true\n }\n\n // Keeping track of the first node for this type. Only used for better conflict reporting.\n // (see Caveats section in the header comments)\n if (operation === `add`) {\n if (!typeInfo.first) {\n typeInfo.first = nodeId\n }\n } else if (operation === `del`) {\n if (typeInfo.first === nodeId || typeInfo.total === 0) {\n typeInfo.first = undefined\n }\n }\n\n switch (typeName) {\n case `object`:\n updateValueDescriptorObject(\n value as Record<string, unknown>,\n typeInfo as ITypeInfoObject,\n nodeId,\n operation,\n metadata,\n path\n )\n return\n case `array`:\n updateValueDescriptorArray(\n value as Array<unknown>,\n key,\n typeInfo as ITypeInfoArray,\n nodeId,\n operation,\n metadata,\n path\n )\n return\n case `relatedNode`:\n updateValueDescriptorRelNodes(\n [value as string],\n delta,\n operation,\n typeInfo as ITypeInfoRelatedNodes,\n metadata\n )\n return\n case `relatedNodeList`:\n updateValueDescriptorRelNodes(\n value as Array<string>,\n delta,\n operation,\n typeInfo as ITypeInfoRelatedNodes,\n metadata\n )\n return\n case `string`:\n updateValueDescriptorString(\n value as string,\n delta,\n typeInfo as ITypeInfoString\n )\n return\n }\n\n // int, float, boolean, null\n\n typeInfo.example =\n typeof typeInfo.example !== `undefined` ? typeInfo.example : value\n}\n\nconst mergeObjectKeys = (\n dpropsKeysA: Record<string, unknown> = {},\n dpropsKeysB: Record<string, unknown> = {}\n): Array<string> => {\n const dprops = Object.keys(dpropsKeysA)\n const otherProps = Object.keys(dpropsKeysB)\n return [...new Set(dprops.concat(otherProps))]\n}\n\nconst descriptorsAreEqual = (\n descriptor?: IValueDescriptor,\n otherDescriptor?: IValueDescriptor\n): boolean => {\n const types = possibleTypes(descriptor)\n const otherTypes = possibleTypes(otherDescriptor)\n\n const childDescriptorsAreEqual = (type: string): boolean => {\n switch (type) {\n case `array`:\n return descriptorsAreEqual(\n descriptor?.array?.item,\n otherDescriptor?.array?.item\n )\n case `object`: {\n const dpropsKeys = mergeObjectKeys(\n descriptor?.object?.dprops,\n otherDescriptor?.object?.dprops\n )\n return dpropsKeys.every(prop =>\n descriptorsAreEqual(\n descriptor?.object?.dprops[prop],\n otherDescriptor?.object?.dprops[prop]\n )\n )\n }\n case `relatedNode`: {\n const nodeIds = mergeObjectKeys(\n descriptor?.relatedNode?.nodes,\n otherDescriptor?.relatedNode?.nodes\n )\n // Must be present in both descriptors or absent in both\n // in order to be considered equal\n return nodeIds.every(\n id =>\n Boolean(descriptor?.relatedNode?.nodes[id]) ===\n Boolean(otherDescriptor?.relatedNode?.nodes[id])\n )\n }\n case `relatedNodeList`: {\n const nodeIds = mergeObjectKeys(\n descriptor?.relatedNodeList?.nodes,\n otherDescriptor?.relatedNodeList?.nodes\n )\n return nodeIds.every(\n id =>\n Boolean(descriptor?.relatedNodeList?.nodes[id]) ===\n Boolean(otherDescriptor?.relatedNodeList?.nodes[id])\n )\n }\n default:\n return true\n }\n }\n\n // Equal when all possible types are equal (including conflicts)\n return isEqual(types, otherTypes) && types.every(childDescriptorsAreEqual)\n}\n\nconst nodeFields = (node: Node, ignoredFields = new Set()): Array<string> =>\n Object.keys(node).filter(key => !ignoredFields.has(key))\n\nconst updateTypeMetadata = (\n metadata = initialMetadata(),\n operation: Operation,\n node: Node\n): ITypeMetadata => {\n if (metadata.disabled) {\n return metadata\n }\n metadata.total = (metadata.total || 0) + (operation === `add` ? 1 : -1)\n if (metadata.ignored) {\n return metadata\n }\n const { ignoredFields, fieldMap = {} } = metadata\n\n nodeFields(node, ignoredFields).forEach(field => {\n let descriptor = fieldMap[field]\n if (descriptor === undefined) {\n descriptor = {}\n fieldMap[field] = descriptor\n }\n\n updateValueDescriptor(\n node.id,\n field,\n node[field],\n operation,\n descriptor,\n metadata,\n []\n )\n })\n metadata.fieldMap = fieldMap\n return metadata\n}\n\nconst ignore = (metadata = initialMetadata(), set = true): ITypeMetadata => {\n metadata.ignored = set\n metadata.fieldMap = {}\n return metadata\n}\n\nconst disable = (metadata = initialMetadata(), set = true): ITypeMetadata => {\n metadata.disabled = set\n return metadata\n}\n\nconst addNode = (metadata: ITypeMetadata, node: Node): ITypeMetadata =>\n updateTypeMetadata(metadata, `add`, node)\n\nconst deleteNode = (metadata: ITypeMetadata, node: Node): ITypeMetadata =>\n updateTypeMetadata(metadata, `del`, node)\n\nconst addNodes = (\n metadata = initialMetadata(),\n nodes: Iterable<Node>\n): ITypeMetadata => {\n let state = metadata\n for (const node of nodes) {\n state = addNode(state, node)\n }\n return state\n}\n\nconst possibleTypes = (descriptor: IValueDescriptor = {}): Array<ValueType> =>\n Object.keys(descriptor).filter(\n type => descriptor[type].total > 0\n ) as Array<ValueType>\n\nconst isEmpty = ({ fieldMap }): boolean =>\n Object.keys(fieldMap).every(\n field => possibleTypes(fieldMap[field]).length === 0\n )\n\n// Even empty type may still have nodes\nconst hasNodes = (typeMetadata: ITypeMetadata): boolean =>\n (typeMetadata.total ?? 0) > 0\n\nconst haveEqualFields = (\n { fieldMap = {} } = {},\n { fieldMap: otherFieldMap = {} } = {}\n): boolean => {\n const fields = mergeObjectKeys(fieldMap, otherFieldMap)\n return fields.every(field =>\n descriptorsAreEqual(fieldMap[field], otherFieldMap[field])\n )\n}\n\nconst initialMetadata = (state?: Record<string, unknown>): ITypeMetadata => {\n return {\n typeName: undefined,\n disabled: false,\n ignored: false,\n dirty: false,\n total: 0,\n ignoredFields: undefined,\n fieldMap: {},\n ...state,\n }\n}\n\nexport {\n addNode,\n addNodes,\n deleteNode,\n ignore,\n disable,\n isEmpty,\n hasNodes,\n haveEqualFields,\n initialMetadata,\n}\n"],"mappings":";;;;;;AA4DA;AACA;AAqEA,MAAMA,OAAO,GAAG,CAACC,KAAc,EAAEC,GAAW,KAAyB;EACnE;EACA,QAAQ,OAAOD,KAAK;IAClB,KAAM,QAAO;MACX,OAAO,IAAAE,8BAAc,EAACF,KAAK,CAAC,GAAI,KAAI,GAAI,OAAM;IAChD,KAAM,QAAO;MACX,IAAIC,GAAG,CAACE,QAAQ,CAAE,SAAQ,CAAC,EAAE;QAC3B,OAAQ,aAAY;MACtB;MACA,OAAO,IAAAC,oBAAc,EAACJ,KAAK,CAAC,GAAI,MAAK,GAAI,QAAO;IAClD,KAAM,SAAQ;MACZ,OAAQ,SAAQ;IAClB,KAAM,QAAO;MACX,IAAIA,KAAK,KAAK,IAAI,EAAE,OAAQ,MAAK;MACjC,IAAIA,KAAK,YAAYK,IAAI,EAAE,OAAQ,MAAK;MACxC,IAAIL,KAAK,YAAYM,MAAM,EAAE,OAAQ,QAAO;MAC5C,IAAIC,KAAK,CAACC,OAAO,CAACR,KAAK,CAAC,EAAE;QACxB,IAAIA,KAAK,CAACS,MAAM,KAAK,CAAC,EAAE;UACtB,OAAQ,MAAK;QACf;QACA,OAAOR,GAAG,CAACE,QAAQ,CAAE,SAAQ,CAAC,GAAI,iBAAgB,GAAI,OAAM;MAC9D;MACA,IAAI,CAACO,MAAM,CAACC,IAAI,CAACX,KAAK,CAAC,CAACS,MAAM,EAAE,OAAQ,MAAK;MAC7C,OAAQ,QAAO;IACjB;MACE;MACA,OAAQ,MAAK;EAAA;AAEnB,CAAC;AAED,MAAMG,2BAA2B,GAAG,CAClCZ,KAA8B,EAC9Ba,QAAyB,EACzBC,MAAc,EACdC,SAAoB,EACpBC,QAAuB,EACvBC,IAAoC,KAC3B;EACTA,IAAI,CAACC,IAAI,CAAClB,KAAK,CAAC;EAEhB,MAAM;IAAEmB,MAAM,GAAG,CAAC;EAAE,CAAC,GAAGN,QAAQ;EAChCA,QAAQ,CAACM,MAAM,GAAGA,MAAM;EAExBT,MAAM,CAACC,IAAI,CAACX,KAAK,CAAC,CAACoB,OAAO,CAACnB,GAAG,IAAI;IAChC,MAAMoB,CAAC,GAAGrB,KAAK,CAACC,GAAG,CAAC;IAEpB,IAAIqB,UAAU,GAAGH,MAAM,CAAClB,GAAG,CAAC;IAC5B,IAAIqB,UAAU,KAAKC,SAAS,EAAE;MAC5BD,UAAU,GAAG,CAAC,CAAC;MACfH,MAAM,CAAClB,GAAG,CAAC,GAAGqB,UAAU;IAC1B;IAEAE,qBAAqB,CAACV,MAAM,EAAEb,GAAG,EAAEoB,CAAC,EAAEN,SAAS,EAAEO,UAAU,EAAEN,QAAQ,EAAEC,IAAI,CAAC;EAC9E,CAAC,CAAC;EAEFA,IAAI,CAACQ,GAAG,EAAE;AACZ,CAAC;AAED,MAAMC,0BAA0B,GAAG,CACjC1B,KAAqB,EACrBC,GAAW,EACXY,QAAwB,EACxBC,MAAc,EACdC,SAAoB,EACpBC,QAAuB,EACvBC,IAAoC,KAC3B;EACTjB,KAAK,CAACoB,OAAO,CAACO,IAAI,IAAI;IACpB,IAAIL,UAAU,GAAGT,QAAQ,CAACc,IAAI;IAC9B,IAAIL,UAAU,KAAKC,SAAS,EAAE;MAC5BD,UAAU,GAAG,CAAC,CAAC;MACfT,QAAQ,CAACc,IAAI,GAAGL,UAAU;IAC5B;IAEAE,qBAAqB,CACnBV,MAAM,EACNb,GAAG,EACH0B,IAAI,EACJZ,SAAS,EACTO,UAAU,EACVN,QAAQ,EACRC,IAAI,CACL;EACH,CAAC,CAAC;AACJ,CAAC;AAED,MAAMW,6BAA6B,GAAG,CACpCC,aAA4B,EAC5BC,KAAa,EACbf,SAAoB,EACpBF,QAA+B,EAC/BG,QAAuB,KACd;EACT,MAAM;IAAEe,KAAK,GAAG,CAAC;EAAE,CAAC,GAAGlB,QAAQ;EAC/BA,QAAQ,CAACkB,KAAK,GAAGA,KAAK;EAEtBF,aAAa,CAACT,OAAO,CAACN,MAAM,IAAI;IAC9BiB,KAAK,CAACjB,MAAM,CAAC,GAAG,CAACiB,KAAK,CAACjB,MAAM,CAAC,IAAI,CAAC,IAAIgB,KAAK;;IAE5C;IACA;IACA;IACA,IAAIC,KAAK,CAACjB,MAAM,CAAC,KAAK,CAAC,IAAKC,SAAS,KAAM,KAAI,IAAIgB,KAAK,CAACjB,MAAM,CAAC,KAAK,CAAE,EAAE;MACvEE,QAAQ,CAACgB,KAAK,GAAG,IAAI;IACvB;EACF,CAAC,CAAC;AACJ,CAAC;AAED,MAAMC,2BAA2B,GAAG,CAClCjC,KAAa,EACb8B,KAAa,EACbjB,QAAyB,KAChB;EACT,IAAIb,KAAK,KAAM,EAAC,EAAE;IAChB,MAAM;MAAEkC,KAAK,GAAG;IAAE,CAAC,GAAGrB,QAAQ;IAC9BA,QAAQ,CAACqB,KAAK,GAAGA,KAAK,GAAGJ,KAAK;EAChC;EACAjB,QAAQ,CAACsB,OAAO,GACd,OAAOtB,QAAQ,CAACsB,OAAO,KAAM,WAAU,GAAGtB,QAAQ,CAACsB,OAAO,GAAGnC,KAAK;AACtE,CAAC;AAED,MAAMwB,qBAAqB,GAAG,CAC5BV,MAAc,EACdb,GAAW,EACXD,KAAc,EACde,SAAoB,GAAI,KAAI,EAC5BO,UAA4B,EAC5BN,QAAuB,EACvBC,IAAoC,KAC3B;EACT;EACA;EACA,IAAIA,IAAI,CAACd,QAAQ,CAACH,KAAK,CAA4B,EAAE;IACnD;EACF;EAEA,MAAMoC,QAAQ,GAAGrC,OAAO,CAACC,KAAK,EAAEC,GAAG,CAAC;EAEpC,IAAImC,QAAQ,KAAM,MAAK,EAAE;IACvB;EACF;EAEA,MAAMN,KAAK,GAAGf,SAAS,KAAM,KAAI,GAAG,CAAC,CAAC,GAAG,CAAC;EAE1C,IAAIF,QAA+B,GAAGS,UAAU,CAACc,QAAQ,CAAC;EAC1D,IAAIvB,QAAQ,KAAKU,SAAS,EAAE;IAC1B;IACAV,QAAQ,GAAIS,UAAU,CAACc,QAAQ,CAAC,GAAiB;MAAEC,KAAK,EAAE;IAAE,CAAC;EAC/D;EACAxB,QAAQ,CAACwB,KAAK,IAAIP,KAAK;;EAEvB;EACA;EACA,IAAIjB,QAAQ,CAACwB,KAAK,KAAK,CAAC,IAAKtB,SAAS,KAAM,KAAI,IAAIF,QAAQ,CAACwB,KAAK,KAAK,CAAE,EAAE;IACzErB,QAAQ,CAACgB,KAAK,GAAG,IAAI;EACvB;;EAEA;EACA;EACA,IAAIjB,SAAS,KAAM,KAAI,EAAE;IACvB,IAAI,CAACF,QAAQ,CAACyB,KAAK,EAAE;MACnBzB,QAAQ,CAACyB,KAAK,GAAGxB,MAAM;IACzB;EACF,CAAC,MAAM,IAAIC,SAAS,KAAM,KAAI,EAAE;IAC9B,IAAIF,QAAQ,CAACyB,KAAK,KAAKxB,MAAM,IAAID,QAAQ,CAACwB,KAAK,KAAK,CAAC,EAAE;MACrDxB,QAAQ,CAACyB,KAAK,GAAGf,SAAS;IAC5B;EACF;EAEA,QAAQa,QAAQ;IACd,KAAM,QAAO;MACXxB,2BAA2B,CACzBZ,KAAK,EACLa,QAAQ,EACRC,MAAM,EACNC,SAAS,EACTC,QAAQ,EACRC,IAAI,CACL;MACD;IACF,KAAM,OAAM;MACVS,0BAA0B,CACxB1B,KAAK,EACLC,GAAG,EACHY,QAAQ,EACRC,MAAM,EACNC,SAAS,EACTC,QAAQ,EACRC,IAAI,CACL;MACD;IACF,KAAM,aAAY;MAChBW,6BAA6B,CAC3B,CAAC5B,KAAK,CAAW,EACjB8B,KAAK,EACLf,SAAS,EACTF,QAAQ,EACRG,QAAQ,CACT;MACD;IACF,KAAM,iBAAgB;MACpBY,6BAA6B,CAC3B5B,KAAK,EACL8B,KAAK,EACLf,SAAS,EACTF,QAAQ,EACRG,QAAQ,CACT;MACD;IACF,KAAM,QAAO;MACXiB,2BAA2B,CACzBjC,KAAK,EACL8B,KAAK,EACLjB,QAAQ,CACT;MACD;EAAM;;EAGV;;EAEAA,QAAQ,CAACsB,OAAO,GACd,OAAOtB,QAAQ,CAACsB,OAAO,KAAM,WAAU,GAAGtB,QAAQ,CAACsB,OAAO,GAAGnC,KAAK;AACtE,CAAC;AAED,MAAMuC,eAAe,GAAG,CACtBC,WAAoC,GAAG,CAAC,CAAC,EACzCC,WAAoC,GAAG,CAAC,CAAC,KACvB;EAClB,MAAMtB,MAAM,GAAGT,MAAM,CAACC,IAAI,CAAC6B,WAAW,CAAC;EACvC,MAAME,UAAU,GAAGhC,MAAM,CAACC,IAAI,CAAC8B,WAAW,CAAC;EAC3C,OAAO,CAAC,GAAG,IAAIE,GAAG,CAACxB,MAAM,CAACyB,MAAM,CAACF,UAAU,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,MAAMG,mBAAmB,GAAG,CAC1BvB,UAA6B,EAC7BwB,eAAkC,KACtB;EACZ,MAAMC,KAAK,GAAGC,aAAa,CAAC1B,UAAU,CAAC;EACvC,MAAM2B,UAAU,GAAGD,aAAa,CAACF,eAAe,CAAC;EAEjD,MAAMI,wBAAwB,GAAIC,IAAY,IAAc;IAAA;IAC1D,QAAQA,IAAI;MACV,KAAM,OAAM;QACV,OAAON,mBAAmB,CACxBvB,UAAU,aAAVA,UAAU,4CAAVA,UAAU,CAAE8B,KAAK,sDAAjB,kBAAmBzB,IAAI,EACvBmB,eAAe,aAAfA,eAAe,gDAAfA,eAAe,CAAEM,KAAK,0DAAtB,sBAAwBzB,IAAI,CAC7B;MACH,KAAM,QAAO;QAAE;UAAA;UACb,MAAM0B,UAAU,GAAGd,eAAe,CAChCjB,UAAU,aAAVA,UAAU,6CAAVA,UAAU,CAAEgC,MAAM,uDAAlB,mBAAoBnC,MAAM,EAC1B2B,eAAe,aAAfA,eAAe,gDAAfA,eAAe,CAAEQ,MAAM,0DAAvB,sBAAyBnC,MAAM,CAChC;UACD,OAAOkC,UAAU,CAACE,KAAK,CAACC,IAAI;YAAA;YAAA,OAC1BX,mBAAmB,CACjBvB,UAAU,aAAVA,UAAU,8CAAVA,UAAU,CAAEgC,MAAM,wDAAlB,oBAAoBnC,MAAM,CAACqC,IAAI,CAAC,EAChCV,eAAe,aAAfA,eAAe,iDAAfA,eAAe,CAAEQ,MAAM,2DAAvB,uBAAyBnC,MAAM,CAACqC,IAAI,CAAC,CACtC;UAAA,EACF;QACH;MACA,KAAM,aAAY;QAAE;UAAA;UAClB,MAAMC,OAAO,GAAGlB,eAAe,CAC7BjB,UAAU,aAAVA,UAAU,gDAAVA,UAAU,CAAEoC,WAAW,0DAAvB,sBAAyB3B,KAAK,EAC9Be,eAAe,aAAfA,eAAe,gDAAfA,eAAe,CAAEY,WAAW,0DAA5B,sBAA8B3B,KAAK,CACpC;UACD;UACA;UACA,OAAO0B,OAAO,CAACF,KAAK,CAClBI,EAAE;YAAA;YAAA,OACAC,OAAO,CAACtC,UAAU,aAAVA,UAAU,iDAAVA,UAAU,CAAEoC,WAAW,2DAAvB,uBAAyB3B,KAAK,CAAC4B,EAAE,CAAC,CAAC,KAC3CC,OAAO,CAACd,eAAe,aAAfA,eAAe,iDAAfA,eAAe,CAAEY,WAAW,2DAA5B,uBAA8B3B,KAAK,CAAC4B,EAAE,CAAC,CAAC;UAAA,EACnD;QACH;MACA,KAAM,iBAAgB;QAAE;UAAA;UACtB,MAAMF,OAAO,GAAGlB,eAAe,CAC7BjB,UAAU,aAAVA,UAAU,iDAAVA,UAAU,CAAEuC,eAAe,2DAA3B,uBAA6B9B,KAAK,EAClCe,eAAe,aAAfA,eAAe,iDAAfA,eAAe,CAAEe,eAAe,2DAAhC,uBAAkC9B,KAAK,CACxC;UACD,OAAO0B,OAAO,CAACF,KAAK,CAClBI,EAAE;YAAA;YAAA,OACAC,OAAO,CAACtC,UAAU,aAAVA,UAAU,iDAAVA,UAAU,CAAEuC,eAAe,2DAA3B,uBAA6B9B,KAAK,CAAC4B,EAAE,CAAC,CAAC,KAC/CC,OAAO,CAACd,eAAe,aAAfA,eAAe,iDAAfA,eAAe,CAAEe,eAAe,2DAAhC,uBAAkC9B,KAAK,CAAC4B,EAAE,CAAC,CAAC;UAAA,EACvD;QACH;MACA;QACE,OAAO,IAAI;IAAA;EAEjB,CAAC;;EAED;EACA,OAAO,uBAAQZ,KAAK,EAAEE,UAAU,CAAC,IAAIF,KAAK,CAACQ,KAAK,CAACL,wBAAwB,CAAC;AAC5E,CAAC;AAED,MAAMY,UAAU,GAAG,CAACC,IAAU,EAAEC,aAAa,GAAG,IAAIrB,GAAG,EAAE,KACvDjC,MAAM,CAACC,IAAI,CAACoD,IAAI,CAAC,CAACE,MAAM,CAAChE,GAAG,IAAI,CAAC+D,aAAa,CAACE,GAAG,CAACjE,GAAG,CAAC,CAAC;AAE1D,MAAMkE,kBAAkB,GAAG,CACzBnD,QAAQ,GAAGoD,eAAe,EAAE,EAC5BrD,SAAoB,EACpBgD,IAAU,KACQ;EAClB,IAAI/C,QAAQ,CAACqD,QAAQ,EAAE;IACrB,OAAOrD,QAAQ;EACjB;EACAA,QAAQ,CAACqB,KAAK,GAAG,CAACrB,QAAQ,CAACqB,KAAK,IAAI,CAAC,KAAKtB,SAAS,KAAM,KAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;EACvE,IAAIC,QAAQ,CAACsD,OAAO,EAAE;IACpB,OAAOtD,QAAQ;EACjB;EACA,MAAM;IAAEgD,aAAa;IAAEO,QAAQ,GAAG,CAAC;EAAE,CAAC,GAAGvD,QAAQ;EAEjD8C,UAAU,CAACC,IAAI,EAAEC,aAAa,CAAC,CAAC5C,OAAO,CAACoD,KAAK,IAAI;IAC/C,IAAIlD,UAAU,GAAGiD,QAAQ,CAACC,KAAK,CAAC;IAChC,IAAIlD,UAAU,KAAKC,SAAS,EAAE;MAC5BD,UAAU,GAAG,CAAC,CAAC;MACfiD,QAAQ,CAACC,KAAK,CAAC,GAAGlD,UAAU;IAC9B;IAEAE,qBAAqB,CACnBuC,IAAI,CAACJ,EAAE,EACPa,KAAK,EACLT,IAAI,CAACS,KAAK,CAAC,EACXzD,SAAS,EACTO,UAAU,EACVN,QAAQ,EACR,EAAE,CACH;EACH,CAAC,CAAC;EACFA,QAAQ,CAACuD,QAAQ,GAAGA,QAAQ;EAC5B,OAAOvD,QAAQ;AACjB,CAAC;AAED,MAAMyD,MAAM,GAAG,CAACzD,QAAQ,GAAGoD,eAAe,EAAE,EAAEM,GAAG,GAAG,IAAI,KAAoB;EAC1E1D,QAAQ,CAACsD,OAAO,GAAGI,GAAG;EACtB1D,QAAQ,CAACuD,QAAQ,GAAG,CAAC,CAAC;EACtB,OAAOvD,QAAQ;AACjB,CAAC;AAAA;AAED,MAAM2D,OAAO,GAAG,CAAC3D,QAAQ,GAAGoD,eAAe,EAAE,EAAEM,GAAG,GAAG,IAAI,KAAoB;EAC3E1D,QAAQ,CAACqD,QAAQ,GAAGK,GAAG;EACvB,OAAO1D,QAAQ;AACjB,CAAC;AAAA;AAED,MAAM4D,OAAO,GAAG,CAAC5D,QAAuB,EAAE+C,IAAU,KAClDI,kBAAkB,CAACnD,QAAQ,EAAG,KAAI,EAAE+C,IAAI,CAAC;AAAA;AAE3C,MAAMc,UAAU,GAAG,CAAC7D,QAAuB,EAAE+C,IAAU,KACrDI,kBAAkB,CAACnD,QAAQ,EAAG,KAAI,EAAE+C,IAAI,CAAC;AAAA;AAE3C,MAAMe,QAAQ,GAAG,CACf9D,QAAQ,GAAGoD,eAAe,EAAE,EAC5BrC,KAAqB,KACH;EAClB,IAAIgD,KAAK,GAAG/D,QAAQ;EACpB,KAAK,MAAM+C,IAAI,IAAIhC,KAAK,EAAE;IACxBgD,KAAK,GAAGH,OAAO,CAACG,KAAK,EAAEhB,IAAI,CAAC;EAC9B;EACA,OAAOgB,KAAK;AACd,CAAC;AAAA;AAED,MAAM/B,aAAa,GAAG,CAAC1B,UAA4B,GAAG,CAAC,CAAC,KACtDZ,MAAM,CAACC,IAAI,CAACW,UAAU,CAAC,CAAC2C,MAAM,CAC5Bd,IAAI,IAAI7B,UAAU,CAAC6B,IAAI,CAAC,CAACd,KAAK,GAAG,CAAC,CACf;AAEvB,MAAM2C,OAAO,GAAG,CAAC;EAAET;AAAS,CAAC,KAC3B7D,MAAM,CAACC,IAAI,CAAC4D,QAAQ,CAAC,CAAChB,KAAK,CACzBiB,KAAK,IAAIxB,aAAa,CAACuB,QAAQ,CAACC,KAAK,CAAC,CAAC,CAAC/D,MAAM,KAAK,CAAC,CACrD;;AAEH;AAAA;AACA,MAAMwE,QAAQ,GAAIC,YAA2B;EAAA;EAAA,OAC3C,wBAACA,YAAY,CAAC7C,KAAK,qEAAI,CAAC,IAAI,CAAC;AAAA;AAAA;AAE/B,MAAM8C,eAAe,GAAG,CACtB;EAAEZ,QAAQ,GAAG,CAAC;AAAE,CAAC,GAAG,CAAC,CAAC,EACtB;EAAEA,QAAQ,EAAEa,aAAa,GAAG,CAAC;AAAE,CAAC,GAAG,CAAC,CAAC,KACzB;EACZ,MAAMC,MAAM,GAAG9C,eAAe,CAACgC,QAAQ,EAAEa,aAAa,CAAC;EACvD,OAAOC,MAAM,CAAC9B,KAAK,CAACiB,KAAK,IACvB3B,mBAAmB,CAAC0B,QAAQ,CAACC,KAAK,CAAC,EAAEY,aAAa,CAACZ,KAAK,CAAC,CAAC,CAC3D;AACH,CAAC;AAAA;AAED,MAAMJ,eAAe,GAAIW,KAA+B,IAAoB;EAC1E,OAAO;IACL3C,QAAQ,EAAEb,SAAS;IACnB8C,QAAQ,EAAE,KAAK;IACfC,OAAO,EAAE,KAAK;IACdtC,KAAK,EAAE,KAAK;IACZK,KAAK,EAAE,CAAC;IACR2B,aAAa,EAAEzC,SAAS;IACxBgD,QAAQ,EAAE,CAAC,CAAC;IACZ,GAAGQ;EACL,CAAC;AACH,CAAC;AAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const isFile: (fieldPath: string, relativePath: string) => boolean;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
exports.__esModule = true;
|
|
5
|
+
exports.isFile = void 0;
|
|
6
|
+
var _path = _interopRequireDefault(require("path"));
|
|
7
|
+
var _gatsbyCoreUtils = require("gatsby-core-utils");
|
|
8
|
+
var _mime = _interopRequireDefault(require("mime"));
|
|
9
|
+
var _isRelative = _interopRequireDefault(require("is-relative"));
|
|
10
|
+
var _isRelativeUrl = _interopRequireDefault(require("is-relative-url"));
|
|
11
|
+
var _getValueAt = require("../../utils/get-value-at");
|
|
12
|
+
var _datastore = require("../../datastore");
|
|
13
|
+
const getFirstValueAt = (node, selector) => {
|
|
14
|
+
let value = (0, _getValueAt.getValueAt)(node, selector);
|
|
15
|
+
while (Array.isArray(value)) {
|
|
16
|
+
value = value[0];
|
|
17
|
+
}
|
|
18
|
+
return value;
|
|
19
|
+
};
|
|
20
|
+
const withBaseDir = dir => p => _path.default.posix.join(dir, (0, _gatsbyCoreUtils.slash)(p));
|
|
21
|
+
const findAncestorNode = (childNode, predicate) => {
|
|
22
|
+
let node = childNode;
|
|
23
|
+
do {
|
|
24
|
+
if (predicate(node)) {
|
|
25
|
+
return node;
|
|
26
|
+
}
|
|
27
|
+
node = (0, _datastore.getNode)(node.parent);
|
|
28
|
+
} while (node !== undefined);
|
|
29
|
+
return null;
|
|
30
|
+
};
|
|
31
|
+
const getBaseDir = node => {
|
|
32
|
+
if (node) {
|
|
33
|
+
const {
|
|
34
|
+
dir
|
|
35
|
+
} = findAncestorNode(node, node => node.internal.type === `File`) || {
|
|
36
|
+
dir: ``
|
|
37
|
+
};
|
|
38
|
+
return typeof dir === `string` ? dir : null;
|
|
39
|
+
}
|
|
40
|
+
return null;
|
|
41
|
+
};
|
|
42
|
+
const getAbsolutePath = (node, relativePath) => {
|
|
43
|
+
const dir = getBaseDir(node);
|
|
44
|
+
const withDir = withBaseDir(dir !== null && dir !== void 0 ? dir : ``);
|
|
45
|
+
return dir ? Array.isArray(relativePath) ? relativePath.map(withDir) : withDir(relativePath) : null;
|
|
46
|
+
};
|
|
47
|
+
const getFilePath = (fieldPath, relativePath) => {
|
|
48
|
+
const [typeName, ...selector] = Array.isArray(fieldPath) ? fieldPath : fieldPath.split(`.`);
|
|
49
|
+
if (typeName === `File`) return null;
|
|
50
|
+
const looksLikeFile = !_path.default.isAbsolute(relativePath) && _mime.default.getType(relativePath) !== null &&
|
|
51
|
+
// FIXME: Do we need all of this?
|
|
52
|
+
_mime.default.getType(relativePath) !== `application/x-msdownload` && (0, _isRelative.default)(relativePath) && (0, _isRelativeUrl.default)(relativePath);
|
|
53
|
+
if (!looksLikeFile) return null;
|
|
54
|
+
const normalizedPath = (0, _gatsbyCoreUtils.slash)(relativePath);
|
|
55
|
+
const node = (0, _datastore.getNodesByType)(typeName).find(node => getFirstValueAt(node, selector) === normalizedPath);
|
|
56
|
+
return node ? getAbsolutePath(node, normalizedPath) : null;
|
|
57
|
+
};
|
|
58
|
+
const isFile = (fieldPath, relativePath) => {
|
|
59
|
+
const filePath = getFilePath(fieldPath, relativePath);
|
|
60
|
+
if (!filePath) return false;
|
|
61
|
+
const filePathExists = (0, _datastore.getNodesByType)(`File`).some(node => node.absolutePath === filePath);
|
|
62
|
+
return filePathExists;
|
|
63
|
+
};
|
|
64
|
+
exports.isFile = isFile;
|
|
65
|
+
//# sourceMappingURL=is-file.js.map
|