next 15.1.1-canary.11 → 15.1.1-canary.12
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.
Potentially problematic release.
This version of next might be problematic. Click here for more details.
- package/dist/bin/next +1 -1
- package/dist/build/index.d.ts +5 -0
- package/dist/build/index.js +5 -2
- package/dist/build/index.js.map +1 -1
- package/dist/build/swc/index.js +1 -1
- package/dist/build/webpack-config.js +2 -2
- package/dist/client/app-bootstrap.js +1 -1
- package/dist/client/components/react-dev-overlay/_experimental/app/ReactDevOverlay.d.ts +18 -0
- package/dist/client/components/react-dev-overlay/_experimental/app/ReactDevOverlay.js +92 -0
- package/dist/client/components/react-dev-overlay/_experimental/app/ReactDevOverlay.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/CodeFrame.d.ts +7 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/CodeFrame.js +120 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/CodeFrame.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/index.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/index.js +19 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/index.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/styles.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/styles.js +30 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/styles.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/Dialog.d.ts +10 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/Dialog.js +86 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/Dialog.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogBody.d.ts +7 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogBody.js +29 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogBody.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogContent.d.ts +7 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogContent.js +29 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogContent.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogHeader.d.ts +7 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogHeader.js +29 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogHeader.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/index.d.ts +5 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/index.js +47 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/index.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/styles.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/styles.js +30 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Dialog/styles.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/LeftRightDialogHeader.d.ts +10 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/LeftRightDialogHeader.js +178 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/LeftRightDialogHeader.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/index.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/index.js +32 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/index.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/styles.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/styles.js +30 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/styles.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/Overlay.d.ts +8 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/Overlay.js +62 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/Overlay.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/body-locker.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/body-locker.js +62 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/body-locker.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/index.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/index.js +19 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/index.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/maintain--tab-focus.d.ts +3 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/maintain--tab-focus.js +2749 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/maintain--tab-focus.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/styles.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/styles.js +30 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Overlay/styles.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/ShadowPortal.d.ts +4 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/ShadowPortal.js +42 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/ShadowPortal.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Terminal/EditorLink.d.ts +10 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Terminal/EditorLink.js +67 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Terminal/EditorLink.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Terminal/Terminal.d.ts +5 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Terminal/Terminal.js +108 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Terminal/Terminal.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Terminal/index.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Terminal/index.js +19 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Terminal/index.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Terminal/styles.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Terminal/styles.js +30 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Terminal/styles.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Toast/Toast.d.ts +7 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Toast/Toast.js +36 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Toast/Toast.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Toast/index.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Toast/index.js +32 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Toast/index.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Toast/styles.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Toast/styles.js +30 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/Toast/styles.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/VersionStalenessInfo.d.ts +9 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/VersionStalenessInfo.js +103 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/VersionStalenessInfo.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/index.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/index.js +32 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/index.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/styles.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/styles.js +30 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/styles.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/copy-button/index.d.ts +7 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/copy-button/index.js +230 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/copy-button/index.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/hot-linked-text/index.d.ts +5 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/hot-linked-text/index.js +74 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/hot-linked-text/index.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/nodejs-inspector.d.ts +3 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/nodejs-inspector.js +119 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/components/nodejs-inspector.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/BuildError.d.ts +8 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/BuildError.js +100 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/BuildError.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/Errors.d.ts +19 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/Errors.js +392 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/Errors.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/CallStackFrame.d.ts +4 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/CallStackFrame.js +91 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/CallStackFrame.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/ComponentStackFrameRow.d.ts +4 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/ComponentStackFrameRow.js +116 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/ComponentStackFrameRow.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/component-stack-pseudo-html.d.ts +56 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/component-stack-pseudo-html.js +243 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/component-stack-pseudo-html.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/index.d.ts +6 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/index.js +92 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/index.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/StaticIndicator.d.ts +4 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/StaticIndicator.js +56 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/StaticIndicator.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/root-layout-missing-tags-error.d.ts +8 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/root-layout-missing-tags-error.js +59 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/container/root-layout-missing-tags-error.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/attach-hydration-error-state.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/attach-hydration-error-state.js +51 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/attach-hydration-error-state.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/console-error.d.ts +10 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/console-error.js +52 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/console-error.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/enqueue-client-error.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/enqueue-client-error.js +35 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/enqueue-client-error.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/format-webpack-messages.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/format-webpack-messages.js +164 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/format-webpack-messages.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/get-error-by-type.d.ts +11 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/get-error-by-type.js +50 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/get-error-by-type.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/get-socket-url.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/get-socket-url.js +38 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/get-socket-url.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/get-source-map-from-file.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/get-source-map-from-file.js +83 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/get-source-map-from-file.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/get-source-map-url.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/get-source-map-url.js +33 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/get-source-map-url.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/hydration-error-info.d.ts +20 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/hydration-error-info.js +104 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/hydration-error-info.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/launchEditor.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/launchEditor.js +407 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/launchEditor.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/node-stack-frames.d.ts +4 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/node-stack-frames.js +88 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/node-stack-frames.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/noop-template.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/noop-template.js +25 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/noop-template.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/parse-component-stack.d.ts +8 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/parse-component-stack.js +99 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/parse-component-stack.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/parse-stack.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/parse-stack.js +54 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/parse-stack.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/runtime-error-handler.d.ts +3 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/runtime-error-handler.js +21 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/runtime-error-handler.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/stack-frame.d.ts +11 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/stack-frame.js +140 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/stack-frame.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/stitched-error.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/stitched-error.js +57 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/stitched-error.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/use-error-handler.d.ts +4 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/use-error-handler.js +121 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/use-error-handler.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/use-open-in-editor.d.ts +5 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/use-open-in-editor.js +37 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/use-open-in-editor.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/use-websocket.d.ts +5 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/use-websocket.js +129 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/use-websocket.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/webpack-module-path.d.ts +12 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/webpack-module-path.js +50 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/webpack-module-path.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/helpers/webpack-module-path.test.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/hooks/use-on-click-outside.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/hooks/use-on-click-outside.js +46 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/hooks/use-on-click-outside.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/icons/CloseIcon.d.ts +2 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/icons/CloseIcon.js +46 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/icons/CloseIcon.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/icons/CollapseIcon.d.ts +3 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/icons/CollapseIcon.js +43 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/icons/CollapseIcon.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/icons/LightningBolt.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/icons/LightningBolt.js +34 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/icons/LightningBolt.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/styles/Base.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/styles/Base.js +37 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/styles/Base.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/styles/ComponentStyles.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/styles/ComponentStyles.js +55 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/styles/ComponentStyles.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/styles/CssReset.d.ts +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/styles/CssReset.js +37 -0
- package/dist/client/components/react-dev-overlay/_experimental/internal/styles/CssReset.js.map +1 -0
- package/dist/client/components/react-dev-overlay/_experimental/pages/ReactDevOverlay.d.ts +9 -0
- package/dist/client/components/react-dev-overlay/_experimental/pages/ReactDevOverlay.js +59 -0
- package/dist/client/components/react-dev-overlay/_experimental/pages/ReactDevOverlay.js.map +1 -0
- package/dist/client/components/react-dev-overlay/app/OldReactDevOverlay.d.ts +18 -0
- package/dist/client/components/react-dev-overlay/app/OldReactDevOverlay.js +92 -0
- package/dist/client/components/react-dev-overlay/app/OldReactDevOverlay.js.map +1 -0
- package/dist/client/components/react-dev-overlay/app/ReactDevOverlay.d.ts +3 -18
- package/dist/client/components/react-dev-overlay/app/ReactDevOverlay.js +4 -74
- package/dist/client/components/react-dev-overlay/app/ReactDevOverlay.js.map +1 -1
- package/dist/client/components/react-dev-overlay/pages/OldReactDevOverlay.d.ts +9 -0
- package/dist/client/components/react-dev-overlay/pages/OldReactDevOverlay.js +59 -0
- package/dist/client/components/react-dev-overlay/pages/OldReactDevOverlay.js.map +1 -0
- package/dist/client/components/react-dev-overlay/pages/ReactDevOverlay.d.ts +3 -9
- package/dist/client/components/react-dev-overlay/pages/ReactDevOverlay.js +5 -42
- package/dist/client/components/react-dev-overlay/pages/ReactDevOverlay.js.map +1 -1
- package/dist/client/components/react-dev-overlay/pages/hooks.d.ts +1 -1
- package/dist/client/components/react-dev-overlay/pages/hooks.js.map +1 -1
- package/dist/client/index.js +1 -1
- package/dist/compiled/next-server/app-page-experimental.runtime.dev.js +2 -2
- package/dist/compiled/next-server/app-page-experimental.runtime.dev.js.map +1 -1
- package/dist/compiled/next-server/app-page.runtime.dev.js +2 -2
- package/dist/compiled/next-server/app-page.runtime.dev.js.map +1 -1
- package/dist/esm/build/index.js +5 -2
- package/dist/esm/build/index.js.map +1 -1
- package/dist/esm/build/swc/index.js +1 -1
- package/dist/esm/build/webpack-config.js +2 -2
- package/dist/esm/client/app-bootstrap.js +1 -1
- package/dist/esm/client/components/react-dev-overlay/_experimental/app/ReactDevOverlay.js +76 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/app/ReactDevOverlay.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/CodeFrame.js +102 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/CodeFrame.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/index.js +3 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/index.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/styles.js +15 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/CodeFrame/styles.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Dialog/Dialog.js +70 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Dialog/Dialog.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogBody.js +13 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogBody.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogContent.js +13 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogContent.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogHeader.js +13 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Dialog/DialogHeader.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Dialog/index.js +7 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Dialog/index.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Dialog/styles.js +15 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Dialog/styles.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/LeftRightDialogHeader.js +162 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/LeftRightDialogHeader.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/index.js +4 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/index.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/styles.js +15 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/LeftRightDialogHeader/styles.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Overlay/Overlay.js +45 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Overlay/Overlay.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Overlay/body-locker.js +34 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Overlay/body-locker.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Overlay/index.js +3 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Overlay/index.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Overlay/maintain--tab-focus.js +2732 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Overlay/maintain--tab-focus.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Overlay/styles.js +15 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Overlay/styles.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/ShadowPortal.js +25 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/ShadowPortal.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Terminal/EditorLink.js +50 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Terminal/EditorLink.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Terminal/Terminal.js +90 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Terminal/Terminal.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Terminal/index.js +3 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Terminal/index.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Terminal/styles.js +15 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Terminal/styles.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Toast/Toast.js +19 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Toast/Toast.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Toast/index.js +4 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Toast/index.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Toast/styles.js +15 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/Toast/styles.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/VersionStalenessInfo.js +75 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/VersionStalenessInfo.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/index.js +4 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/index.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/styles.js +15 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/VersionStalenessInfo/styles.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/copy-button/index.js +213 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/copy-button/index.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/hot-linked-text/index.js +57 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/hot-linked-text/index.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/nodejs-inspector.js +103 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/nodejs-inspector.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/BuildError.js +71 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/BuildError.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/Errors.js +364 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/Errors.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/CallStackFrame.js +75 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/CallStackFrame.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/ComponentStackFrameRow.js +99 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/ComponentStackFrameRow.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/component-stack-pseudo-html.js +275 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/component-stack-pseudo-html.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/index.js +63 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/RuntimeError/index.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/StaticIndicator.js +39 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/StaticIndicator.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/root-layout-missing-tags-error.js +42 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/root-layout-missing-tags-error.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/attach-hydration-error-state.js +35 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/attach-hydration-error-state.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/console-error.js +20 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/console-error.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/enqueue-client-error.js +20 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/enqueue-client-error.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/format-webpack-messages.js +147 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/format-webpack-messages.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/get-error-by-type.js +34 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/get-error-by-type.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/get-socket-url.js +22 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/get-socket-url.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/get-source-map-from-file.js +66 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/get-source-map-from-file.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/get-source-map-url.js +17 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/get-source-map-url.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/hydration-error-info.js +73 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/hydration-error-info.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/launchEditor.js +391 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/launchEditor.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/node-stack-frames.js +60 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/node-stack-frames.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/noop-template.js +9 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/noop-template.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/parse-component-stack.js +83 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/parse-component-stack.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/parse-stack.js +38 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/parse-stack.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/runtime-error-handler.js +5 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/runtime-error-handler.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/stack-frame.js +112 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/stack-frame.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/stitched-error.js +40 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/stitched-error.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/use-error-handler.js +88 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/use-error-handler.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/use-open-in-editor.js +21 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/use-open-in-editor.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/use-websocket.js +93 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/use-websocket.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/webpack-module-path.js +31 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/helpers/webpack-module-path.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/hooks/use-on-click-outside.js +29 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/hooks/use-on-click-outside.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/icons/CloseIcon.js +30 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/icons/CloseIcon.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/icons/CollapseIcon.js +27 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/icons/CollapseIcon.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/icons/LightningBolt.js +18 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/icons/LightningBolt.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/styles/Base.js +20 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/styles/Base.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/styles/ComponentStyles.js +39 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/styles/ComponentStyles.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/styles/CssReset.js +20 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/internal/styles/CssReset.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/pages/ReactDevOverlay.js +42 -0
- package/dist/esm/client/components/react-dev-overlay/_experimental/pages/ReactDevOverlay.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/app/OldReactDevOverlay.js +76 -0
- package/dist/esm/client/components/react-dev-overlay/app/OldReactDevOverlay.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/app/ReactDevOverlay.js +3 -74
- package/dist/esm/client/components/react-dev-overlay/app/ReactDevOverlay.js.map +1 -1
- package/dist/esm/client/components/react-dev-overlay/pages/OldReactDevOverlay.js +42 -0
- package/dist/esm/client/components/react-dev-overlay/pages/OldReactDevOverlay.js.map +1 -0
- package/dist/esm/client/components/react-dev-overlay/pages/ReactDevOverlay.js +3 -40
- package/dist/esm/client/components/react-dev-overlay/pages/ReactDevOverlay.js.map +1 -1
- package/dist/esm/client/components/react-dev-overlay/pages/hooks.js.map +1 -1
- package/dist/esm/client/index.js +1 -1
- package/dist/esm/server/config.js +1 -1
- package/dist/esm/server/dev/hot-reloader-turbopack.js +1 -1
- package/dist/esm/server/dev/hot-reloader-webpack.js +1 -1
- package/dist/esm/server/lib/app-info-log.js +1 -1
- package/dist/esm/server/lib/start-server.js +1 -1
- package/dist/server/config.js +1 -1
- package/dist/server/dev/hot-reloader-turbopack.js +1 -1
- package/dist/server/dev/hot-reloader-webpack.js +1 -1
- package/dist/server/lib/app-info-log.js +1 -1
- package/dist/server/lib/start-server.js +1 -1
- package/dist/telemetry/anonymous-meta.js +1 -1
- package/dist/telemetry/events/session-stopped.js +2 -2
- package/dist/telemetry/events/version.js +2 -2
- package/package.json +15 -15
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { CopyButton } from './copy-button';
|
|
3
|
+
// Inline this helper to avoid widely used across the codebase,
|
|
4
|
+
// as for this feature the Chrome detector doesn't need to be super accurate.
|
|
5
|
+
function isChrome() {
|
|
6
|
+
if (typeof window === 'undefined') return false;
|
|
7
|
+
const isChromium = 'chrome' in window && window.chrome;
|
|
8
|
+
const vendorName = window.navigator.vendor;
|
|
9
|
+
return isChromium !== null && isChromium !== undefined && vendorName === 'Google Inc.';
|
|
10
|
+
}
|
|
11
|
+
const isChromeBrowser = isChrome();
|
|
12
|
+
function NodeJsIcon(props) {
|
|
13
|
+
return /*#__PURE__*/ _jsxs("svg", {
|
|
14
|
+
width: "44",
|
|
15
|
+
height: "44",
|
|
16
|
+
viewBox: "0 0 44 44",
|
|
17
|
+
fill: "none",
|
|
18
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
19
|
+
...props,
|
|
20
|
+
children: [
|
|
21
|
+
/*#__PURE__*/ _jsxs("g", {
|
|
22
|
+
clipPath: "url(#clip0_1546_2)",
|
|
23
|
+
children: [
|
|
24
|
+
/*#__PURE__*/ _jsx("path", {
|
|
25
|
+
d: "M22 0L41.0526 11V33L22 44L2.94744 33V11L22 0Z",
|
|
26
|
+
fill: "#71BD55"
|
|
27
|
+
}),
|
|
28
|
+
/*#__PURE__*/ _jsx("path", {
|
|
29
|
+
d: "M41.0493 11.0001L41.0493 33L22 1.5583e-07L41.0493 11.0001Z",
|
|
30
|
+
fill: "#A1DF83"
|
|
31
|
+
})
|
|
32
|
+
]
|
|
33
|
+
}),
|
|
34
|
+
/*#__PURE__*/ _jsx("defs", {
|
|
35
|
+
children: /*#__PURE__*/ _jsx("clipPath", {
|
|
36
|
+
id: "clip0_1546_2",
|
|
37
|
+
children: /*#__PURE__*/ _jsx("rect", {
|
|
38
|
+
width: "44",
|
|
39
|
+
height: "44",
|
|
40
|
+
fill: "white"
|
|
41
|
+
})
|
|
42
|
+
})
|
|
43
|
+
})
|
|
44
|
+
]
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
function NodeJsDisabledIcon(props) {
|
|
48
|
+
return /*#__PURE__*/ _jsxs("svg", {
|
|
49
|
+
width: "44",
|
|
50
|
+
height: "44",
|
|
51
|
+
viewBox: "0 0 44 44",
|
|
52
|
+
fill: "none",
|
|
53
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
54
|
+
...props,
|
|
55
|
+
children: [
|
|
56
|
+
/*#__PURE__*/ _jsx("path", {
|
|
57
|
+
d: "M4.44744 11.866L22 1.73205L39.5526 11.866V32.134L22 42.2679L4.44744 32.134V11.866Z",
|
|
58
|
+
stroke: "currentColor",
|
|
59
|
+
fill: "transparent",
|
|
60
|
+
strokeWidth: "3",
|
|
61
|
+
strokeLinejoin: "round"
|
|
62
|
+
}),
|
|
63
|
+
/*#__PURE__*/ _jsx("path", {
|
|
64
|
+
d: "M22 2L39 32",
|
|
65
|
+
stroke: "currentColor",
|
|
66
|
+
strokeWidth: "3",
|
|
67
|
+
strokeLinecap: "round"
|
|
68
|
+
})
|
|
69
|
+
]
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
const label = 'Learn more about enabling Node.js inspector for server code with Chrome DevTools';
|
|
73
|
+
export function NodejsInspectorCopyButton(param) {
|
|
74
|
+
let { devtoolsFrontendUrl } = param;
|
|
75
|
+
const content = devtoolsFrontendUrl || '';
|
|
76
|
+
const disabled = !content || !isChromeBrowser;
|
|
77
|
+
if (disabled) {
|
|
78
|
+
return /*#__PURE__*/ _jsx("a", {
|
|
79
|
+
title: label,
|
|
80
|
+
"aria-label": label,
|
|
81
|
+
className: "nextjs-data-runtime-error-inspect-link",
|
|
82
|
+
href: "https://nextjs.org/docs/app/building-your-application/configuring/debugging#server-side-code",
|
|
83
|
+
target: "_blank",
|
|
84
|
+
rel: "noopener noreferrer",
|
|
85
|
+
children: /*#__PURE__*/ _jsx(NodeJsDisabledIcon, {
|
|
86
|
+
width: 16,
|
|
87
|
+
height: 16
|
|
88
|
+
})
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
return /*#__PURE__*/ _jsx(CopyButton, {
|
|
92
|
+
"data-nextjs-data-runtime-error-copy-devtools-url": true,
|
|
93
|
+
actionLabel: 'Copy Chrome DevTools URL',
|
|
94
|
+
successLabel: "Copied",
|
|
95
|
+
content: content,
|
|
96
|
+
icon: /*#__PURE__*/ _jsx(NodeJsIcon, {
|
|
97
|
+
width: 16,
|
|
98
|
+
height: 16
|
|
99
|
+
})
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
//# sourceMappingURL=nodejs-inspector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../../src/client/components/react-dev-overlay/_experimental/internal/components/nodejs-inspector.tsx"],"sourcesContent":["import { CopyButton } from './copy-button'\n\n// Inline this helper to avoid widely used across the codebase,\n// as for this feature the Chrome detector doesn't need to be super accurate.\nfunction isChrome() {\n if (typeof window === 'undefined') return false\n const isChromium = 'chrome' in window && window.chrome\n const vendorName = window.navigator.vendor\n\n return (\n isChromium !== null &&\n isChromium !== undefined &&\n vendorName === 'Google Inc.'\n )\n}\n\nconst isChromeBrowser = isChrome()\n\nfunction NodeJsIcon(props: any) {\n return (\n <svg\n width=\"44\"\n height=\"44\"\n viewBox=\"0 0 44 44\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <g clipPath=\"url(#clip0_1546_2)\">\n <path\n d=\"M22 0L41.0526 11V33L22 44L2.94744 33V11L22 0Z\"\n fill=\"#71BD55\"\n />\n <path\n d=\"M41.0493 11.0001L41.0493 33L22 1.5583e-07L41.0493 11.0001Z\"\n fill=\"#A1DF83\"\n />\n </g>\n <defs>\n <clipPath id=\"clip0_1546_2\">\n <rect width=\"44\" height=\"44\" fill=\"white\" />\n </clipPath>\n </defs>\n </svg>\n )\n}\n\nfunction NodeJsDisabledIcon(props: any) {\n return (\n <svg\n width=\"44\"\n height=\"44\"\n viewBox=\"0 0 44 44\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n d=\"M4.44744 11.866L22 1.73205L39.5526 11.866V32.134L22 42.2679L4.44744 32.134V11.866Z\"\n stroke=\"currentColor\"\n fill=\"transparent\"\n strokeWidth=\"3\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M22 2L39 32\"\n stroke=\"currentColor\"\n strokeWidth=\"3\"\n strokeLinecap=\"round\"\n />\n </svg>\n )\n}\n\nconst label =\n 'Learn more about enabling Node.js inspector for server code with Chrome DevTools'\n\nexport function NodejsInspectorCopyButton({\n devtoolsFrontendUrl,\n}: {\n devtoolsFrontendUrl: string | undefined\n}) {\n const content = devtoolsFrontendUrl || ''\n const disabled = !content || !isChromeBrowser\n if (disabled) {\n return (\n <a\n title={label}\n aria-label={label}\n className=\"nextjs-data-runtime-error-inspect-link\"\n href={`https://nextjs.org/docs/app/building-your-application/configuring/debugging#server-side-code`}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n <NodeJsDisabledIcon width={16} height={16} />\n </a>\n )\n }\n return (\n <CopyButton\n data-nextjs-data-runtime-error-copy-devtools-url\n actionLabel={'Copy Chrome DevTools URL'}\n successLabel=\"Copied\"\n content={content}\n icon={<NodeJsIcon width={16} height={16} />}\n />\n )\n}\n"],"names":["CopyButton","isChrome","window","isChromium","chrome","vendorName","navigator","vendor","undefined","isChromeBrowser","NodeJsIcon","props","svg","width","height","viewBox","fill","xmlns","g","clipPath","path","d","defs","id","rect","NodeJsDisabledIcon","stroke","strokeWidth","strokeLinejoin","strokeLinecap","label","NodejsInspectorCopyButton","devtoolsFrontendUrl","content","disabled","a","title","aria-label","className","href","target","rel","data-nextjs-data-runtime-error-copy-devtools-url","actionLabel","successLabel","icon"],"mappings":";AAAA,SAASA,UAAU,QAAQ,gBAAe;AAE1C,+DAA+D;AAC/D,6EAA6E;AAC7E,SAASC;IACP,IAAI,OAAOC,WAAW,aAAa,OAAO;IAC1C,MAAMC,aAAa,YAAYD,UAAUA,OAAOE,MAAM;IACtD,MAAMC,aAAaH,OAAOI,SAAS,CAACC,MAAM;IAE1C,OACEJ,eAAe,QACfA,eAAeK,aACfH,eAAe;AAEnB;AAEA,MAAMI,kBAAkBR;AAExB,SAASS,WAAWC,KAAU;IAC5B,qBACE,MAACC;QACCC,OAAM;QACNC,QAAO;QACPC,SAAQ;QACRC,MAAK;QACLC,OAAM;QACL,GAAGN,KAAK;;0BAET,MAACO;gBAAEC,UAAS;;kCACV,KAACC;wBACCC,GAAE;wBACFL,MAAK;;kCAEP,KAACI;wBACCC,GAAE;wBACFL,MAAK;;;;0BAGT,KAACM;0BACC,cAAA,KAACH;oBAASI,IAAG;8BACX,cAAA,KAACC;wBAAKX,OAAM;wBAAKC,QAAO;wBAAKE,MAAK;;;;;;AAK5C;AAEA,SAASS,mBAAmBd,KAAU;IACpC,qBACE,MAACC;QACCC,OAAM;QACNC,QAAO;QACPC,SAAQ;QACRC,MAAK;QACLC,OAAM;QACL,GAAGN,KAAK;;0BAET,KAACS;gBACCC,GAAE;gBACFK,QAAO;gBACPV,MAAK;gBACLW,aAAY;gBACZC,gBAAe;;0BAEjB,KAACR;gBACCC,GAAE;gBACFK,QAAO;gBACPC,aAAY;gBACZE,eAAc;;;;AAItB;AAEA,MAAMC,QACJ;AAEF,OAAO,SAASC,0BAA0B,KAIzC;IAJyC,IAAA,EACxCC,mBAAmB,EAGpB,GAJyC;IAKxC,MAAMC,UAAUD,uBAAuB;IACvC,MAAME,WAAW,CAACD,WAAW,CAACxB;IAC9B,IAAIyB,UAAU;QACZ,qBACE,KAACC;YACCC,OAAON;YACPO,cAAYP;YACZQ,WAAU;YACVC,MAAO;YACPC,QAAO;YACPC,KAAI;sBAEJ,cAAA,KAAChB;gBAAmBZ,OAAO;gBAAIC,QAAQ;;;IAG7C;IACA,qBACE,KAACd;QACC0C,kDAAgD;QAChDC,aAAa;QACbC,cAAa;QACbX,SAASA;QACTY,oBAAM,KAACnC;YAAWG,OAAO;YAAIC,QAAQ;;;AAG3C"}
|
package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/BuildError.js
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { _ as _tagged_template_literal_loose } from "@swc/helpers/_/_tagged_template_literal_loose";
|
|
2
|
+
function _templateObject() {
|
|
3
|
+
const data = _tagged_template_literal_loose([
|
|
4
|
+
"\n h1.nextjs__container_errors_label {\n font-size: var(--size-font-big);\n line-height: var(--size-font-bigger);\n font-weight: bold;\n margin: var(--size-gap-double) 0;\n }\n .nextjs-container-errors-header p {\n font-size: var(--size-font-small);\n line-height: var(--size-font-big);\n white-space: pre-wrap;\n }\n .nextjs-container-errors-body footer {\n margin-top: var(--size-gap);\n }\n .nextjs-container-errors-body footer p {\n margin: 0;\n }\n\n .nextjs-container-errors-body small {\n color: var(--color-font);\n }\n"
|
|
5
|
+
]);
|
|
6
|
+
_templateObject = function() {
|
|
7
|
+
return data;
|
|
8
|
+
};
|
|
9
|
+
return data;
|
|
10
|
+
}
|
|
11
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
+
import * as React from 'react';
|
|
13
|
+
import { Dialog, DialogBody, DialogContent, DialogHeader } from '../components/Dialog';
|
|
14
|
+
import { Overlay } from '../components/Overlay';
|
|
15
|
+
import { Terminal } from '../components/Terminal';
|
|
16
|
+
import { VersionStalenessInfo } from '../components/VersionStalenessInfo';
|
|
17
|
+
import { noop as css } from '../helpers/noop-template';
|
|
18
|
+
export const BuildError = function BuildError(param) {
|
|
19
|
+
let { message, versionInfo } = param;
|
|
20
|
+
const noop = React.useCallback(()=>{}, []);
|
|
21
|
+
return /*#__PURE__*/ _jsx(Overlay, {
|
|
22
|
+
fixed: true,
|
|
23
|
+
children: /*#__PURE__*/ _jsx(Dialog, {
|
|
24
|
+
type: "error",
|
|
25
|
+
"aria-labelledby": "nextjs__container_error_label",
|
|
26
|
+
"aria-describedby": "nextjs__container_error_desc",
|
|
27
|
+
onClose: noop,
|
|
28
|
+
children: /*#__PURE__*/ _jsxs(DialogContent, {
|
|
29
|
+
children: [
|
|
30
|
+
/*#__PURE__*/ _jsxs(DialogHeader, {
|
|
31
|
+
className: "nextjs-container-errors-header",
|
|
32
|
+
children: [
|
|
33
|
+
/*#__PURE__*/ _jsx("h1", {
|
|
34
|
+
id: "nextjs__container_errors_label",
|
|
35
|
+
className: "nextjs__container_errors_label",
|
|
36
|
+
children: 'Build Error'
|
|
37
|
+
}),
|
|
38
|
+
/*#__PURE__*/ _jsx(VersionStalenessInfo, {
|
|
39
|
+
versionInfo: versionInfo
|
|
40
|
+
}),
|
|
41
|
+
/*#__PURE__*/ _jsx("p", {
|
|
42
|
+
id: "nextjs__container_errors_desc",
|
|
43
|
+
className: "nextjs__container_errors_desc",
|
|
44
|
+
children: "Failed to compile"
|
|
45
|
+
})
|
|
46
|
+
]
|
|
47
|
+
}),
|
|
48
|
+
/*#__PURE__*/ _jsxs(DialogBody, {
|
|
49
|
+
className: "nextjs-container-errors-body",
|
|
50
|
+
children: [
|
|
51
|
+
/*#__PURE__*/ _jsx(Terminal, {
|
|
52
|
+
content: message
|
|
53
|
+
}),
|
|
54
|
+
/*#__PURE__*/ _jsx("footer", {
|
|
55
|
+
children: /*#__PURE__*/ _jsx("p", {
|
|
56
|
+
id: "nextjs__container_build_error_desc",
|
|
57
|
+
children: /*#__PURE__*/ _jsx("small", {
|
|
58
|
+
children: "This error occurred during the build process and can only be dismissed by fixing the error."
|
|
59
|
+
})
|
|
60
|
+
})
|
|
61
|
+
})
|
|
62
|
+
]
|
|
63
|
+
})
|
|
64
|
+
]
|
|
65
|
+
})
|
|
66
|
+
})
|
|
67
|
+
});
|
|
68
|
+
};
|
|
69
|
+
export const styles = css(_templateObject());
|
|
70
|
+
|
|
71
|
+
//# sourceMappingURL=BuildError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../../src/client/components/react-dev-overlay/_experimental/internal/container/BuildError.tsx"],"sourcesContent":["import * as React from 'react'\nimport type { VersionInfo } from '../../../../../../server/dev/parse-version-info'\nimport {\n Dialog,\n DialogBody,\n DialogContent,\n DialogHeader,\n} from '../components/Dialog'\nimport { Overlay } from '../components/Overlay'\nimport { Terminal } from '../components/Terminal'\nimport { VersionStalenessInfo } from '../components/VersionStalenessInfo'\nimport { noop as css } from '../helpers/noop-template'\n\nexport type BuildErrorProps = { message: string; versionInfo?: VersionInfo }\n\nexport const BuildError: React.FC<BuildErrorProps> = function BuildError({\n message,\n versionInfo,\n}) {\n const noop = React.useCallback(() => {}, [])\n return (\n <Overlay fixed>\n <Dialog\n type=\"error\"\n aria-labelledby=\"nextjs__container_error_label\"\n aria-describedby=\"nextjs__container_error_desc\"\n onClose={noop}\n >\n <DialogContent>\n <DialogHeader className=\"nextjs-container-errors-header\">\n <h1\n id=\"nextjs__container_errors_label\"\n className=\"nextjs__container_errors_label\"\n >\n {'Build Error'}\n </h1>\n <VersionStalenessInfo versionInfo={versionInfo} />\n <p\n id=\"nextjs__container_errors_desc\"\n className=\"nextjs__container_errors_desc\"\n >\n Failed to compile\n </p>\n </DialogHeader>\n <DialogBody className=\"nextjs-container-errors-body\">\n <Terminal content={message} />\n <footer>\n <p id=\"nextjs__container_build_error_desc\">\n <small>\n This error occurred during the build process and can only be\n dismissed by fixing the error.\n </small>\n </p>\n </footer>\n </DialogBody>\n </DialogContent>\n </Dialog>\n </Overlay>\n )\n}\n\nexport const styles = css`\n h1.nextjs__container_errors_label {\n font-size: var(--size-font-big);\n line-height: var(--size-font-bigger);\n font-weight: bold;\n margin: var(--size-gap-double) 0;\n }\n .nextjs-container-errors-header p {\n font-size: var(--size-font-small);\n line-height: var(--size-font-big);\n white-space: pre-wrap;\n }\n .nextjs-container-errors-body footer {\n margin-top: var(--size-gap);\n }\n .nextjs-container-errors-body footer p {\n margin: 0;\n }\n\n .nextjs-container-errors-body small {\n color: var(--color-font);\n }\n`\n"],"names":["React","Dialog","DialogBody","DialogContent","DialogHeader","Overlay","Terminal","VersionStalenessInfo","noop","css","BuildError","message","versionInfo","useCallback","fixed","type","aria-labelledby","aria-describedby","onClose","className","h1","id","p","content","footer","small","styles"],"mappings":";;;;;;;;;;;AAAA,YAAYA,WAAW,QAAO;AAE9B,SACEC,MAAM,EACNC,UAAU,EACVC,aAAa,EACbC,YAAY,QACP,uBAAsB;AAC7B,SAASC,OAAO,QAAQ,wBAAuB;AAC/C,SAASC,QAAQ,QAAQ,yBAAwB;AACjD,SAASC,oBAAoB,QAAQ,qCAAoC;AACzE,SAASC,QAAQC,GAAG,QAAQ,2BAA0B;AAItD,OAAO,MAAMC,aAAwC,SAASA,WAAW,KAGxE;IAHwE,IAAA,EACvEC,OAAO,EACPC,WAAW,EACZ,GAHwE;IAIvE,MAAMJ,OAAOR,MAAMa,WAAW,CAAC,KAAO,GAAG,EAAE;IAC3C,qBACE,KAACR;QAAQS,KAAK;kBACZ,cAAA,KAACb;YACCc,MAAK;YACLC,mBAAgB;YAChBC,oBAAiB;YACjBC,SAASV;sBAET,cAAA,MAACL;;kCACC,MAACC;wBAAae,WAAU;;0CACtB,KAACC;gCACCC,IAAG;gCACHF,WAAU;0CAET;;0CAEH,KAACZ;gCAAqBK,aAAaA;;0CACnC,KAACU;gCACCD,IAAG;gCACHF,WAAU;0CACX;;;;kCAIH,MAACjB;wBAAWiB,WAAU;;0CACpB,KAACb;gCAASiB,SAASZ;;0CACnB,KAACa;0CACC,cAAA,KAACF;oCAAED,IAAG;8CACJ,cAAA,KAACI;kDAAM;;;;;;;;;;AAWvB,EAAC;AAED,OAAO,MAAMC,SAASjB,uBAsBrB"}
|
package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/Errors.js
ADDED
|
@@ -0,0 +1,364 @@
|
|
|
1
|
+
import { _ as _tagged_template_literal_loose } from "@swc/helpers/_/_tagged_template_literal_loose";
|
|
2
|
+
function _templateObject() {
|
|
3
|
+
const data = _tagged_template_literal_loose([
|
|
4
|
+
"\n .nextjs-error-with-static {\n bottom: calc(var(--size-gap-double) * 4.5);\n }\n .nextjs-container-errors-header {\n position: relative;\n }\n .nextjs-container-errors-header > h1 {\n font-size: var(--size-font-big);\n line-height: var(--size-font-bigger);\n font-weight: bold;\n margin: calc(var(--size-gap-double) * 1.5) 0;\n color: var(--color-title-h1);\n }\n .nextjs-container-errors-header small {\n font-size: var(--size-font-small);\n color: var(--color-accents-1);\n margin-left: var(--size-gap-double);\n }\n .nextjs-container-errors-header small > span {\n font-family: var(--font-stack-monospace);\n }\n .nextjs-container-errors-header p {\n font-size: var(--size-font-small);\n line-height: var(--size-font-big);\n white-space: pre-wrap;\n }\n .nextjs__container_errors_desc {\n font-family: var(--font-stack-monospace);\n padding: var(--size-gap) var(--size-gap-double);\n border-left: 2px solid var(--color-text-color-red-1);\n margin-top: var(--size-gap);\n font-weight: bold;\n color: var(--color-text-color-red-1);\n background-color: var(--color-text-background-red-1);\n }\n p.nextjs__container_errors__link {\n margin: var(--size-gap-double) auto;\n color: var(--color-text-color-red-1);\n font-weight: 600;\n font-size: 15px;\n }\n p.nextjs__container_errors__notes {\n margin: var(--size-gap-double) auto;\n color: var(--color-stack-notes);\n font-weight: 600;\n font-size: 15px;\n }\n .nextjs-container-errors-header > div > small {\n margin: 0;\n margin-top: var(--size-gap-half);\n }\n .nextjs-container-errors-header > p > a {\n color: inherit;\n font-weight: bold;\n }\n .nextjs-container-errors-body > h2:not(:first-child) {\n margin-top: calc(var(--size-gap-double) + var(--size-gap));\n }\n .nextjs-container-errors-body > h2 {\n color: var(--color-title-color);\n margin-bottom: var(--size-gap);\n font-size: var(--size-font-big);\n }\n .nextjs__container_errors__component-stack {\n padding: 12px 32px;\n color: var(--color-ansi-fg);\n background: var(--color-ansi-bg);\n }\n .nextjs-toast-errors-parent {\n cursor: pointer;\n transition: transform 0.2s ease;\n }\n .nextjs-toast-errors-parent:hover {\n transform: scale(1.1);\n }\n .nextjs-toast-errors {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n }\n .nextjs-toast-errors > svg {\n margin-right: var(--size-gap);\n }\n .nextjs-toast-hide-button {\n margin-left: var(--size-gap-triple);\n border: none;\n background: none;\n color: var(--color-ansi-bright-white);\n padding: 0;\n transition: opacity 0.25s ease;\n opacity: 0.7;\n }\n .nextjs-toast-hide-button:hover {\n opacity: 1;\n }\n .nextjs-container-errors-header\n > .nextjs-container-build-error-version-status {\n position: absolute;\n top: 0;\n right: 0;\n }\n .nextjs__container_errors_inspect_copy_button {\n cursor: pointer;\n background: none;\n border: none;\n color: var(--color-ansi-bright-white);\n font-size: 1.5rem;\n padding: 0;\n margin: 0;\n margin-left: var(--size-gap);\n transition: opacity 0.25s ease;\n }\n .nextjs__container_errors__error_title {\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n .nextjs-data-runtime-error-inspect-link,\n .nextjs-data-runtime-error-inspect-link:hover {\n margin: 0 8px;\n color: inherit;\n }\n"
|
|
5
|
+
]);
|
|
6
|
+
_templateObject = function() {
|
|
7
|
+
return data;
|
|
8
|
+
};
|
|
9
|
+
return data;
|
|
10
|
+
}
|
|
11
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
12
|
+
import { useState, useEffect, useMemo, useCallback } from 'react';
|
|
13
|
+
import { ACTION_UNHANDLED_ERROR, ACTION_UNHANDLED_REJECTION } from '../../../shared';
|
|
14
|
+
import { Dialog, DialogBody, DialogContent, DialogHeader } from '../components/Dialog';
|
|
15
|
+
import { LeftRightDialogHeader } from '../components/LeftRightDialogHeader';
|
|
16
|
+
import { Overlay } from '../components/Overlay';
|
|
17
|
+
import { Toast } from '../components/Toast';
|
|
18
|
+
import { getErrorByType } from '../helpers/get-error-by-type';
|
|
19
|
+
import { noop as css } from '../helpers/noop-template';
|
|
20
|
+
import { CloseIcon } from '../icons/CloseIcon';
|
|
21
|
+
import { RuntimeError } from './RuntimeError';
|
|
22
|
+
import { VersionStalenessInfo } from '../components/VersionStalenessInfo';
|
|
23
|
+
import { getErrorSource } from '../../../../../../shared/lib/error-source';
|
|
24
|
+
import { HotlinkedText } from '../components/hot-linked-text';
|
|
25
|
+
import { PseudoHtmlDiff } from './RuntimeError/component-stack-pseudo-html';
|
|
26
|
+
import { getHydrationWarningType } from '../helpers/hydration-error-info';
|
|
27
|
+
import { NodejsInspectorCopyButton } from '../components/nodejs-inspector';
|
|
28
|
+
import { CopyButton } from '../components/copy-button';
|
|
29
|
+
import { getUnhandledErrorType, isUnhandledConsoleOrRejection } from '../helpers/console-error';
|
|
30
|
+
import { extractNextErrorCode } from '../../../../../../lib/error-telemetry-utils';
|
|
31
|
+
function isNextjsLink(text) {
|
|
32
|
+
return text.startsWith('https://nextjs.org');
|
|
33
|
+
}
|
|
34
|
+
function ErrorDescription(param) {
|
|
35
|
+
let { error, hydrationWarning } = param;
|
|
36
|
+
const isUnhandledOrReplayError = isUnhandledConsoleOrRejection(error);
|
|
37
|
+
const unhandledErrorType = isUnhandledOrReplayError ? getUnhandledErrorType(error) : null;
|
|
38
|
+
const isConsoleErrorStringMessage = unhandledErrorType === 'string';
|
|
39
|
+
// If the error is:
|
|
40
|
+
// - hydration warning
|
|
41
|
+
// - captured console error or unhandled rejection
|
|
42
|
+
// skip displaying the error name
|
|
43
|
+
const title = isUnhandledOrReplayError && isConsoleErrorStringMessage || hydrationWarning ? '' : error.name + ': ';
|
|
44
|
+
// If it's replayed error, display the environment name
|
|
45
|
+
const environmentName = 'environmentName' in error ? error['environmentName'] : '';
|
|
46
|
+
const envPrefix = environmentName ? "[ " + environmentName + " ] " : '';
|
|
47
|
+
return /*#__PURE__*/ _jsxs(_Fragment, {
|
|
48
|
+
children: [
|
|
49
|
+
envPrefix,
|
|
50
|
+
title,
|
|
51
|
+
/*#__PURE__*/ _jsx(HotlinkedText, {
|
|
52
|
+
text: hydrationWarning || error.message,
|
|
53
|
+
matcher: isNextjsLink
|
|
54
|
+
})
|
|
55
|
+
]
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
function getErrorSignature(ev) {
|
|
59
|
+
const { event } = ev;
|
|
60
|
+
switch(event.type){
|
|
61
|
+
case ACTION_UNHANDLED_ERROR:
|
|
62
|
+
case ACTION_UNHANDLED_REJECTION:
|
|
63
|
+
{
|
|
64
|
+
return event.reason.name + "::" + event.reason.message + "::" + event.reason.stack;
|
|
65
|
+
}
|
|
66
|
+
default:
|
|
67
|
+
{}
|
|
68
|
+
}
|
|
69
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
70
|
+
const _ = event;
|
|
71
|
+
return '';
|
|
72
|
+
}
|
|
73
|
+
export function Errors(param) {
|
|
74
|
+
let { isAppDir, errors, initialDisplayState, versionInfo, hasStaticIndicator, debugInfo } = param;
|
|
75
|
+
var _activeError_componentStackFrames;
|
|
76
|
+
const [lookups, setLookups] = useState({});
|
|
77
|
+
const [readyErrors, nextError] = useMemo(()=>{
|
|
78
|
+
let ready = [];
|
|
79
|
+
let next = null;
|
|
80
|
+
// Ensure errors are displayed in the order they occurred in:
|
|
81
|
+
for(let idx = 0; idx < errors.length; ++idx){
|
|
82
|
+
const e = errors[idx];
|
|
83
|
+
const { id } = e;
|
|
84
|
+
if (id in lookups) {
|
|
85
|
+
ready.push(lookups[id]);
|
|
86
|
+
continue;
|
|
87
|
+
}
|
|
88
|
+
// Check for duplicate errors
|
|
89
|
+
if (idx > 0) {
|
|
90
|
+
const prev = errors[idx - 1];
|
|
91
|
+
if (getErrorSignature(prev) === getErrorSignature(e)) {
|
|
92
|
+
continue;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
next = e;
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
return [
|
|
99
|
+
ready,
|
|
100
|
+
next
|
|
101
|
+
];
|
|
102
|
+
}, [
|
|
103
|
+
errors,
|
|
104
|
+
lookups
|
|
105
|
+
]);
|
|
106
|
+
const isLoading = useMemo(()=>{
|
|
107
|
+
return readyErrors.length < 1 && Boolean(errors.length);
|
|
108
|
+
}, [
|
|
109
|
+
errors.length,
|
|
110
|
+
readyErrors.length
|
|
111
|
+
]);
|
|
112
|
+
useEffect(()=>{
|
|
113
|
+
if (nextError == null) {
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
let mounted = true;
|
|
117
|
+
getErrorByType(nextError, isAppDir).then((resolved)=>{
|
|
118
|
+
// We don't care if the desired error changed while we were resolving,
|
|
119
|
+
// thus we're not tracking it using a ref. Once the work has been done,
|
|
120
|
+
// we'll store it.
|
|
121
|
+
if (mounted) {
|
|
122
|
+
setLookups((m)=>({
|
|
123
|
+
...m,
|
|
124
|
+
[resolved.id]: resolved
|
|
125
|
+
}));
|
|
126
|
+
}
|
|
127
|
+
}, ()=>{
|
|
128
|
+
// TODO: handle this, though an edge case
|
|
129
|
+
});
|
|
130
|
+
return ()=>{
|
|
131
|
+
mounted = false;
|
|
132
|
+
};
|
|
133
|
+
}, [
|
|
134
|
+
nextError,
|
|
135
|
+
isAppDir
|
|
136
|
+
]);
|
|
137
|
+
const [displayState, setDisplayState] = useState(initialDisplayState);
|
|
138
|
+
const [activeIdx, setActiveIndex] = useState(0);
|
|
139
|
+
const previous = useCallback(()=>setActiveIndex((v)=>Math.max(0, v - 1)), []);
|
|
140
|
+
const next = useCallback(()=>setActiveIndex((v)=>Math.max(0, Math.min(readyErrors.length - 1, v + 1))), [
|
|
141
|
+
readyErrors.length
|
|
142
|
+
]);
|
|
143
|
+
const activeError = useMemo(()=>{
|
|
144
|
+
var _readyErrors_activeIdx;
|
|
145
|
+
return (_readyErrors_activeIdx = readyErrors[activeIdx]) != null ? _readyErrors_activeIdx : null;
|
|
146
|
+
}, [
|
|
147
|
+
activeIdx,
|
|
148
|
+
readyErrors
|
|
149
|
+
]);
|
|
150
|
+
// Reset component state when there are no errors to be displayed.
|
|
151
|
+
// This should never happen, but lets handle it.
|
|
152
|
+
useEffect(()=>{
|
|
153
|
+
if (errors.length < 1) {
|
|
154
|
+
setLookups({});
|
|
155
|
+
setDisplayState('hidden');
|
|
156
|
+
setActiveIndex(0);
|
|
157
|
+
}
|
|
158
|
+
}, [
|
|
159
|
+
errors.length
|
|
160
|
+
]);
|
|
161
|
+
const minimize = useCallback(()=>setDisplayState('minimized'), []);
|
|
162
|
+
const hide = useCallback(()=>setDisplayState('hidden'), []);
|
|
163
|
+
const fullscreen = useCallback(()=>setDisplayState('fullscreen'), []);
|
|
164
|
+
// This component shouldn't be rendered with no errors, but if it is, let's
|
|
165
|
+
// handle it gracefully by rendering nothing.
|
|
166
|
+
if (errors.length < 1 || activeError == null) {
|
|
167
|
+
return null;
|
|
168
|
+
}
|
|
169
|
+
if (isLoading) {
|
|
170
|
+
// TODO: better loading state
|
|
171
|
+
return /*#__PURE__*/ _jsx(Overlay, {});
|
|
172
|
+
}
|
|
173
|
+
if (displayState === 'hidden') {
|
|
174
|
+
return null;
|
|
175
|
+
}
|
|
176
|
+
if (displayState === 'minimized') {
|
|
177
|
+
return /*#__PURE__*/ _jsx(Toast, {
|
|
178
|
+
"data-nextjs-toast": true,
|
|
179
|
+
className: "nextjs-toast-errors-parent" + (hasStaticIndicator ? ' nextjs-error-with-static' : ''),
|
|
180
|
+
onClick: fullscreen,
|
|
181
|
+
children: /*#__PURE__*/ _jsxs("div", {
|
|
182
|
+
className: "nextjs-toast-errors",
|
|
183
|
+
children: [
|
|
184
|
+
/*#__PURE__*/ _jsxs("svg", {
|
|
185
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
186
|
+
width: "24",
|
|
187
|
+
height: "24",
|
|
188
|
+
viewBox: "0 0 24 24",
|
|
189
|
+
fill: "none",
|
|
190
|
+
stroke: "currentColor",
|
|
191
|
+
strokeWidth: "2",
|
|
192
|
+
strokeLinecap: "round",
|
|
193
|
+
strokeLinejoin: "round",
|
|
194
|
+
children: [
|
|
195
|
+
/*#__PURE__*/ _jsx("circle", {
|
|
196
|
+
cx: "12",
|
|
197
|
+
cy: "12",
|
|
198
|
+
r: "10"
|
|
199
|
+
}),
|
|
200
|
+
/*#__PURE__*/ _jsx("line", {
|
|
201
|
+
x1: "12",
|
|
202
|
+
y1: "8",
|
|
203
|
+
x2: "12",
|
|
204
|
+
y2: "12"
|
|
205
|
+
}),
|
|
206
|
+
/*#__PURE__*/ _jsx("line", {
|
|
207
|
+
x1: "12",
|
|
208
|
+
y1: "16",
|
|
209
|
+
x2: "12.01",
|
|
210
|
+
y2: "16"
|
|
211
|
+
})
|
|
212
|
+
]
|
|
213
|
+
}),
|
|
214
|
+
/*#__PURE__*/ _jsxs("span", {
|
|
215
|
+
children: [
|
|
216
|
+
readyErrors.length,
|
|
217
|
+
" issue",
|
|
218
|
+
readyErrors.length > 1 ? 's' : ''
|
|
219
|
+
]
|
|
220
|
+
}),
|
|
221
|
+
/*#__PURE__*/ _jsx("button", {
|
|
222
|
+
"data-nextjs-toast-errors-hide-button": true,
|
|
223
|
+
className: "nextjs-toast-hide-button",
|
|
224
|
+
type: "button",
|
|
225
|
+
onClick: (e)=>{
|
|
226
|
+
e.stopPropagation();
|
|
227
|
+
hide();
|
|
228
|
+
},
|
|
229
|
+
"aria-label": "Hide Issues",
|
|
230
|
+
children: /*#__PURE__*/ _jsx(CloseIcon, {})
|
|
231
|
+
})
|
|
232
|
+
]
|
|
233
|
+
})
|
|
234
|
+
});
|
|
235
|
+
}
|
|
236
|
+
const error = activeError.error;
|
|
237
|
+
const isServerError = [
|
|
238
|
+
'server',
|
|
239
|
+
'edge-server'
|
|
240
|
+
].includes(getErrorSource(error) || '');
|
|
241
|
+
const isUnhandledError = isUnhandledConsoleOrRejection(error);
|
|
242
|
+
const errorDetails = error.details || {};
|
|
243
|
+
const notes = errorDetails.notes || '';
|
|
244
|
+
const [warningTemplate, serverContent, clientContent] = errorDetails.warning || [
|
|
245
|
+
null,
|
|
246
|
+
'',
|
|
247
|
+
''
|
|
248
|
+
];
|
|
249
|
+
const hydrationErrorType = getHydrationWarningType(warningTemplate);
|
|
250
|
+
const hydrationWarning = warningTemplate ? warningTemplate.replace('%s', serverContent).replace('%s', clientContent).replace('%s', '') // remove the %s for stack
|
|
251
|
+
.replace(/%s$/, '') // If there's still a %s at the end, remove it
|
|
252
|
+
.replace(/^Warning: /, '').replace(/^Error: /, '') : null;
|
|
253
|
+
return /*#__PURE__*/ _jsx(Overlay, {
|
|
254
|
+
children: /*#__PURE__*/ _jsx(Dialog, {
|
|
255
|
+
type: "error",
|
|
256
|
+
"aria-labelledby": "nextjs__container_errors_label",
|
|
257
|
+
"aria-describedby": "nextjs__container_errors_desc",
|
|
258
|
+
onClose: isServerError ? undefined : minimize,
|
|
259
|
+
children: /*#__PURE__*/ _jsxs(DialogContent, {
|
|
260
|
+
children: [
|
|
261
|
+
/*#__PURE__*/ _jsxs(DialogHeader, {
|
|
262
|
+
className: "nextjs-container-errors-header",
|
|
263
|
+
children: [
|
|
264
|
+
/*#__PURE__*/ _jsxs(LeftRightDialogHeader, {
|
|
265
|
+
previous: activeIdx > 0 ? previous : null,
|
|
266
|
+
next: activeIdx < readyErrors.length - 1 ? next : null,
|
|
267
|
+
close: isServerError ? undefined : minimize,
|
|
268
|
+
children: [
|
|
269
|
+
/*#__PURE__*/ _jsxs("small", {
|
|
270
|
+
children: [
|
|
271
|
+
/*#__PURE__*/ _jsx("span", {
|
|
272
|
+
children: activeIdx + 1
|
|
273
|
+
}),
|
|
274
|
+
" of",
|
|
275
|
+
' ',
|
|
276
|
+
/*#__PURE__*/ _jsx("span", {
|
|
277
|
+
"data-nextjs-dialog-header-total-count": true,
|
|
278
|
+
children: readyErrors.length
|
|
279
|
+
}),
|
|
280
|
+
' issue',
|
|
281
|
+
readyErrors.length < 2 ? '' : 's'
|
|
282
|
+
]
|
|
283
|
+
}),
|
|
284
|
+
/*#__PURE__*/ _jsx(VersionStalenessInfo, {
|
|
285
|
+
versionInfo: versionInfo
|
|
286
|
+
})
|
|
287
|
+
]
|
|
288
|
+
}),
|
|
289
|
+
/*#__PURE__*/ _jsxs("div", {
|
|
290
|
+
className: "nextjs__container_errors__error_title",
|
|
291
|
+
"data-nextjs-error-code": extractNextErrorCode(error),
|
|
292
|
+
children: [
|
|
293
|
+
/*#__PURE__*/ _jsx("h1", {
|
|
294
|
+
id: "nextjs__container_errors_label",
|
|
295
|
+
className: "nextjs__container_errors_label",
|
|
296
|
+
children: isServerError ? 'Server Error' : isUnhandledError ? 'Console Error' : 'Unhandled Runtime Error'
|
|
297
|
+
}),
|
|
298
|
+
/*#__PURE__*/ _jsxs("span", {
|
|
299
|
+
children: [
|
|
300
|
+
/*#__PURE__*/ _jsx(CopyButton, {
|
|
301
|
+
"data-nextjs-data-runtime-error-copy-stack": true,
|
|
302
|
+
actionLabel: "Copy error stack",
|
|
303
|
+
successLabel: "Copied",
|
|
304
|
+
content: error.stack || '',
|
|
305
|
+
disabled: !error.stack
|
|
306
|
+
}),
|
|
307
|
+
/*#__PURE__*/ _jsx(NodejsInspectorCopyButton, {
|
|
308
|
+
devtoolsFrontendUrl: debugInfo == null ? void 0 : debugInfo.devtoolsFrontendUrl
|
|
309
|
+
})
|
|
310
|
+
]
|
|
311
|
+
})
|
|
312
|
+
]
|
|
313
|
+
}),
|
|
314
|
+
/*#__PURE__*/ _jsx("p", {
|
|
315
|
+
id: "nextjs__container_errors_desc",
|
|
316
|
+
className: "nextjs__container_errors_desc",
|
|
317
|
+
children: /*#__PURE__*/ _jsx(ErrorDescription, {
|
|
318
|
+
error: error,
|
|
319
|
+
hydrationWarning: hydrationWarning
|
|
320
|
+
})
|
|
321
|
+
}),
|
|
322
|
+
notes ? /*#__PURE__*/ _jsx(_Fragment, {
|
|
323
|
+
children: /*#__PURE__*/ _jsx("p", {
|
|
324
|
+
id: "nextjs__container_errors__notes",
|
|
325
|
+
className: "nextjs__container_errors__notes",
|
|
326
|
+
children: notes
|
|
327
|
+
})
|
|
328
|
+
}) : null,
|
|
329
|
+
hydrationWarning ? /*#__PURE__*/ _jsx("p", {
|
|
330
|
+
id: "nextjs__container_errors__link",
|
|
331
|
+
className: "nextjs__container_errors__link",
|
|
332
|
+
children: /*#__PURE__*/ _jsx(HotlinkedText, {
|
|
333
|
+
text: "See more info here: https://nextjs.org/docs/messages/react-hydration-error"
|
|
334
|
+
})
|
|
335
|
+
}) : null,
|
|
336
|
+
hydrationWarning && (((_activeError_componentStackFrames = activeError.componentStackFrames) == null ? void 0 : _activeError_componentStackFrames.length) || !!errorDetails.reactOutputComponentDiff) ? /*#__PURE__*/ _jsx(PseudoHtmlDiff, {
|
|
337
|
+
className: "nextjs__container_errors__component-stack",
|
|
338
|
+
hydrationMismatchType: hydrationErrorType,
|
|
339
|
+
componentStackFrames: activeError.componentStackFrames || [],
|
|
340
|
+
firstContent: serverContent,
|
|
341
|
+
secondContent: clientContent,
|
|
342
|
+
reactOutputComponentDiff: errorDetails.reactOutputComponentDiff
|
|
343
|
+
}) : null,
|
|
344
|
+
isServerError ? /*#__PURE__*/ _jsx("div", {
|
|
345
|
+
children: /*#__PURE__*/ _jsx("small", {
|
|
346
|
+
children: "This error happened while generating the page. Any console logs will be displayed in the terminal window."
|
|
347
|
+
})
|
|
348
|
+
}) : undefined
|
|
349
|
+
]
|
|
350
|
+
}),
|
|
351
|
+
/*#__PURE__*/ _jsx(DialogBody, {
|
|
352
|
+
className: "nextjs-container-errors-body",
|
|
353
|
+
children: /*#__PURE__*/ _jsx(RuntimeError, {
|
|
354
|
+
error: activeError
|
|
355
|
+
}, activeError.id.toString())
|
|
356
|
+
})
|
|
357
|
+
]
|
|
358
|
+
})
|
|
359
|
+
})
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
export const styles = css(_templateObject());
|
|
363
|
+
|
|
364
|
+
//# sourceMappingURL=Errors.js.map
|
package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/Errors.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../../src/client/components/react-dev-overlay/_experimental/internal/container/Errors.tsx"],"sourcesContent":["import { useState, useEffect, useMemo, useCallback } from 'react'\nimport {\n ACTION_UNHANDLED_ERROR,\n ACTION_UNHANDLED_REJECTION,\n type UnhandledErrorAction,\n type UnhandledRejectionAction,\n} from '../../../shared'\nimport type { DebugInfo } from '../../../types'\nimport {\n Dialog,\n DialogBody,\n DialogContent,\n DialogHeader,\n} from '../components/Dialog'\nimport { LeftRightDialogHeader } from '../components/LeftRightDialogHeader'\nimport { Overlay } from '../components/Overlay'\nimport { Toast } from '../components/Toast'\nimport { getErrorByType } from '../helpers/get-error-by-type'\nimport type { ReadyRuntimeError } from '../helpers/get-error-by-type'\nimport { noop as css } from '../helpers/noop-template'\nimport { CloseIcon } from '../icons/CloseIcon'\nimport { RuntimeError } from './RuntimeError'\nimport { VersionStalenessInfo } from '../components/VersionStalenessInfo'\nimport type { VersionInfo } from '../../../../../../server/dev/parse-version-info'\nimport { getErrorSource } from '../../../../../../shared/lib/error-source'\nimport { HotlinkedText } from '../components/hot-linked-text'\nimport { PseudoHtmlDiff } from './RuntimeError/component-stack-pseudo-html'\nimport {\n type HydrationErrorState,\n getHydrationWarningType,\n} from '../helpers/hydration-error-info'\nimport { NodejsInspectorCopyButton } from '../components/nodejs-inspector'\nimport { CopyButton } from '../components/copy-button'\nimport {\n getUnhandledErrorType,\n isUnhandledConsoleOrRejection,\n} from '../helpers/console-error'\nimport { extractNextErrorCode } from '../../../../../../lib/error-telemetry-utils'\n\nexport type SupportedErrorEvent = {\n id: number\n event: UnhandledErrorAction | UnhandledRejectionAction\n}\nexport type ErrorsProps = {\n isAppDir: boolean\n errors: SupportedErrorEvent[]\n initialDisplayState: DisplayState\n versionInfo?: VersionInfo\n hasStaticIndicator?: boolean\n debugInfo?: DebugInfo\n}\n\ntype ReadyErrorEvent = ReadyRuntimeError\n\ntype DisplayState = 'minimized' | 'fullscreen' | 'hidden'\n\nfunction isNextjsLink(text: string): boolean {\n return text.startsWith('https://nextjs.org')\n}\n\nfunction ErrorDescription({\n error,\n hydrationWarning,\n}: {\n error: Error\n hydrationWarning: string | null\n}) {\n const isUnhandledOrReplayError = isUnhandledConsoleOrRejection(error)\n const unhandledErrorType = isUnhandledOrReplayError\n ? getUnhandledErrorType(error)\n : null\n const isConsoleErrorStringMessage = unhandledErrorType === 'string'\n // If the error is:\n // - hydration warning\n // - captured console error or unhandled rejection\n // skip displaying the error name\n const title =\n (isUnhandledOrReplayError && isConsoleErrorStringMessage) ||\n hydrationWarning\n ? ''\n : error.name + ': '\n\n // If it's replayed error, display the environment name\n const environmentName =\n 'environmentName' in error ? error['environmentName'] : ''\n const envPrefix = environmentName ? `[ ${environmentName} ] ` : ''\n return (\n <>\n {envPrefix}\n {title}\n <HotlinkedText\n text={hydrationWarning || error.message}\n matcher={isNextjsLink}\n />\n </>\n )\n}\n\nfunction getErrorSignature(ev: SupportedErrorEvent): string {\n const { event } = ev\n switch (event.type) {\n case ACTION_UNHANDLED_ERROR:\n case ACTION_UNHANDLED_REJECTION: {\n return `${event.reason.name}::${event.reason.message}::${event.reason.stack}`\n }\n default: {\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const _: never = event as never\n return ''\n}\n\nexport function Errors({\n isAppDir,\n errors,\n initialDisplayState,\n versionInfo,\n hasStaticIndicator,\n debugInfo,\n}: ErrorsProps) {\n const [lookups, setLookups] = useState(\n {} as { [eventId: string]: ReadyErrorEvent }\n )\n\n const [readyErrors, nextError] = useMemo<\n [ReadyErrorEvent[], SupportedErrorEvent | null]\n >(() => {\n let ready: ReadyErrorEvent[] = []\n let next: SupportedErrorEvent | null = null\n\n // Ensure errors are displayed in the order they occurred in:\n for (let idx = 0; idx < errors.length; ++idx) {\n const e = errors[idx]\n const { id } = e\n if (id in lookups) {\n ready.push(lookups[id])\n continue\n }\n\n // Check for duplicate errors\n if (idx > 0) {\n const prev = errors[idx - 1]\n if (getErrorSignature(prev) === getErrorSignature(e)) {\n continue\n }\n }\n\n next = e\n break\n }\n\n return [ready, next]\n }, [errors, lookups])\n\n const isLoading = useMemo<boolean>(() => {\n return readyErrors.length < 1 && Boolean(errors.length)\n }, [errors.length, readyErrors.length])\n\n useEffect(() => {\n if (nextError == null) {\n return\n }\n let mounted = true\n\n getErrorByType(nextError, isAppDir).then(\n (resolved) => {\n // We don't care if the desired error changed while we were resolving,\n // thus we're not tracking it using a ref. Once the work has been done,\n // we'll store it.\n if (mounted) {\n setLookups((m) => ({ ...m, [resolved.id]: resolved }))\n }\n },\n () => {\n // TODO: handle this, though an edge case\n }\n )\n\n return () => {\n mounted = false\n }\n }, [nextError, isAppDir])\n\n const [displayState, setDisplayState] =\n useState<DisplayState>(initialDisplayState)\n const [activeIdx, setActiveIndex] = useState<number>(0)\n const previous = useCallback(\n () => setActiveIndex((v) => Math.max(0, v - 1)),\n []\n )\n const next = useCallback(\n () =>\n setActiveIndex((v) =>\n Math.max(0, Math.min(readyErrors.length - 1, v + 1))\n ),\n [readyErrors.length]\n )\n\n const activeError = useMemo<ReadyErrorEvent | null>(\n () => readyErrors[activeIdx] ?? null,\n [activeIdx, readyErrors]\n )\n\n // Reset component state when there are no errors to be displayed.\n // This should never happen, but lets handle it.\n useEffect(() => {\n if (errors.length < 1) {\n setLookups({})\n setDisplayState('hidden')\n setActiveIndex(0)\n }\n }, [errors.length])\n\n const minimize = useCallback(() => setDisplayState('minimized'), [])\n const hide = useCallback(() => setDisplayState('hidden'), [])\n const fullscreen = useCallback(() => setDisplayState('fullscreen'), [])\n\n // This component shouldn't be rendered with no errors, but if it is, let's\n // handle it gracefully by rendering nothing.\n if (errors.length < 1 || activeError == null) {\n return null\n }\n\n if (isLoading) {\n // TODO: better loading state\n return <Overlay />\n }\n\n if (displayState === 'hidden') {\n return null\n }\n\n if (displayState === 'minimized') {\n return (\n <Toast\n data-nextjs-toast\n className={`nextjs-toast-errors-parent${hasStaticIndicator ? ' nextjs-error-with-static' : ''}`}\n onClick={fullscreen}\n >\n <div className=\"nextjs-toast-errors\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"10\"></circle>\n <line x1=\"12\" y1=\"8\" x2=\"12\" y2=\"12\"></line>\n <line x1=\"12\" y1=\"16\" x2=\"12.01\" y2=\"16\"></line>\n </svg>\n <span>\n {readyErrors.length} issue{readyErrors.length > 1 ? 's' : ''}\n </span>\n <button\n data-nextjs-toast-errors-hide-button\n className=\"nextjs-toast-hide-button\"\n type=\"button\"\n onClick={(e) => {\n e.stopPropagation()\n hide()\n }}\n aria-label=\"Hide Issues\"\n >\n <CloseIcon />\n </button>\n </div>\n </Toast>\n )\n }\n\n const error = activeError.error\n const isServerError = ['server', 'edge-server'].includes(\n getErrorSource(error) || ''\n )\n const isUnhandledError = isUnhandledConsoleOrRejection(error)\n const errorDetails: HydrationErrorState = (error as any).details || {}\n const notes = errorDetails.notes || ''\n const [warningTemplate, serverContent, clientContent] =\n errorDetails.warning || [null, '', '']\n\n const hydrationErrorType = getHydrationWarningType(warningTemplate)\n const hydrationWarning = warningTemplate\n ? warningTemplate\n .replace('%s', serverContent)\n .replace('%s', clientContent)\n .replace('%s', '') // remove the %s for stack\n .replace(/%s$/, '') // If there's still a %s at the end, remove it\n .replace(/^Warning: /, '')\n .replace(/^Error: /, '')\n : null\n\n return (\n <Overlay>\n <Dialog\n type=\"error\"\n aria-labelledby=\"nextjs__container_errors_label\"\n aria-describedby=\"nextjs__container_errors_desc\"\n onClose={isServerError ? undefined : minimize}\n >\n <DialogContent>\n <DialogHeader className=\"nextjs-container-errors-header\">\n <LeftRightDialogHeader\n previous={activeIdx > 0 ? previous : null}\n next={activeIdx < readyErrors.length - 1 ? next : null}\n close={isServerError ? undefined : minimize}\n >\n <small>\n <span>{activeIdx + 1}</span> of{' '}\n <span data-nextjs-dialog-header-total-count>\n {readyErrors.length}\n </span>\n {' issue'}\n {readyErrors.length < 2 ? '' : 's'}\n </small>\n <VersionStalenessInfo versionInfo={versionInfo} />\n </LeftRightDialogHeader>\n\n <div\n className=\"nextjs__container_errors__error_title\"\n data-nextjs-error-code={extractNextErrorCode(error)} // allow assertion in tests before error rating is implemented\n >\n <h1\n id=\"nextjs__container_errors_label\"\n className=\"nextjs__container_errors_label\"\n >\n {isServerError\n ? 'Server Error'\n : isUnhandledError\n ? 'Console Error'\n : 'Unhandled Runtime Error'}\n </h1>\n <span>\n <CopyButton\n data-nextjs-data-runtime-error-copy-stack\n actionLabel=\"Copy error stack\"\n successLabel=\"Copied\"\n content={error.stack || ''}\n disabled={!error.stack}\n />\n\n <NodejsInspectorCopyButton\n devtoolsFrontendUrl={debugInfo?.devtoolsFrontendUrl}\n />\n </span>\n </div>\n <p\n id=\"nextjs__container_errors_desc\"\n className=\"nextjs__container_errors_desc\"\n >\n <ErrorDescription\n error={error}\n hydrationWarning={hydrationWarning}\n />\n </p>\n {notes ? (\n <>\n <p\n id=\"nextjs__container_errors__notes\"\n className=\"nextjs__container_errors__notes\"\n >\n {notes}\n </p>\n </>\n ) : null}\n {hydrationWarning ? (\n <p\n id=\"nextjs__container_errors__link\"\n className=\"nextjs__container_errors__link\"\n >\n <HotlinkedText text=\"See more info here: https://nextjs.org/docs/messages/react-hydration-error\" />\n </p>\n ) : null}\n\n {hydrationWarning &&\n (activeError.componentStackFrames?.length ||\n !!errorDetails.reactOutputComponentDiff) ? (\n <PseudoHtmlDiff\n className=\"nextjs__container_errors__component-stack\"\n hydrationMismatchType={hydrationErrorType}\n componentStackFrames={activeError.componentStackFrames || []}\n firstContent={serverContent}\n secondContent={clientContent}\n reactOutputComponentDiff={errorDetails.reactOutputComponentDiff}\n />\n ) : null}\n {isServerError ? (\n <div>\n <small>\n This error happened while generating the page. Any console\n logs will be displayed in the terminal window.\n </small>\n </div>\n ) : undefined}\n </DialogHeader>\n <DialogBody className=\"nextjs-container-errors-body\">\n <RuntimeError key={activeError.id.toString()} error={activeError} />\n </DialogBody>\n </DialogContent>\n </Dialog>\n </Overlay>\n )\n}\n\nexport const styles = css`\n .nextjs-error-with-static {\n bottom: calc(var(--size-gap-double) * 4.5);\n }\n .nextjs-container-errors-header {\n position: relative;\n }\n .nextjs-container-errors-header > h1 {\n font-size: var(--size-font-big);\n line-height: var(--size-font-bigger);\n font-weight: bold;\n margin: calc(var(--size-gap-double) * 1.5) 0;\n color: var(--color-title-h1);\n }\n .nextjs-container-errors-header small {\n font-size: var(--size-font-small);\n color: var(--color-accents-1);\n margin-left: var(--size-gap-double);\n }\n .nextjs-container-errors-header small > span {\n font-family: var(--font-stack-monospace);\n }\n .nextjs-container-errors-header p {\n font-size: var(--size-font-small);\n line-height: var(--size-font-big);\n white-space: pre-wrap;\n }\n .nextjs__container_errors_desc {\n font-family: var(--font-stack-monospace);\n padding: var(--size-gap) var(--size-gap-double);\n border-left: 2px solid var(--color-text-color-red-1);\n margin-top: var(--size-gap);\n font-weight: bold;\n color: var(--color-text-color-red-1);\n background-color: var(--color-text-background-red-1);\n }\n p.nextjs__container_errors__link {\n margin: var(--size-gap-double) auto;\n color: var(--color-text-color-red-1);\n font-weight: 600;\n font-size: 15px;\n }\n p.nextjs__container_errors__notes {\n margin: var(--size-gap-double) auto;\n color: var(--color-stack-notes);\n font-weight: 600;\n font-size: 15px;\n }\n .nextjs-container-errors-header > div > small {\n margin: 0;\n margin-top: var(--size-gap-half);\n }\n .nextjs-container-errors-header > p > a {\n color: inherit;\n font-weight: bold;\n }\n .nextjs-container-errors-body > h2:not(:first-child) {\n margin-top: calc(var(--size-gap-double) + var(--size-gap));\n }\n .nextjs-container-errors-body > h2 {\n color: var(--color-title-color);\n margin-bottom: var(--size-gap);\n font-size: var(--size-font-big);\n }\n .nextjs__container_errors__component-stack {\n padding: 12px 32px;\n color: var(--color-ansi-fg);\n background: var(--color-ansi-bg);\n }\n .nextjs-toast-errors-parent {\n cursor: pointer;\n transition: transform 0.2s ease;\n }\n .nextjs-toast-errors-parent:hover {\n transform: scale(1.1);\n }\n .nextjs-toast-errors {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n }\n .nextjs-toast-errors > svg {\n margin-right: var(--size-gap);\n }\n .nextjs-toast-hide-button {\n margin-left: var(--size-gap-triple);\n border: none;\n background: none;\n color: var(--color-ansi-bright-white);\n padding: 0;\n transition: opacity 0.25s ease;\n opacity: 0.7;\n }\n .nextjs-toast-hide-button:hover {\n opacity: 1;\n }\n .nextjs-container-errors-header\n > .nextjs-container-build-error-version-status {\n position: absolute;\n top: 0;\n right: 0;\n }\n .nextjs__container_errors_inspect_copy_button {\n cursor: pointer;\n background: none;\n border: none;\n color: var(--color-ansi-bright-white);\n font-size: 1.5rem;\n padding: 0;\n margin: 0;\n margin-left: var(--size-gap);\n transition: opacity 0.25s ease;\n }\n .nextjs__container_errors__error_title {\n display: flex;\n align-items: center;\n justify-content: space-between;\n }\n .nextjs-data-runtime-error-inspect-link,\n .nextjs-data-runtime-error-inspect-link:hover {\n margin: 0 8px;\n color: inherit;\n }\n`\n"],"names":["useState","useEffect","useMemo","useCallback","ACTION_UNHANDLED_ERROR","ACTION_UNHANDLED_REJECTION","Dialog","DialogBody","DialogContent","DialogHeader","LeftRightDialogHeader","Overlay","Toast","getErrorByType","noop","css","CloseIcon","RuntimeError","VersionStalenessInfo","getErrorSource","HotlinkedText","PseudoHtmlDiff","getHydrationWarningType","NodejsInspectorCopyButton","CopyButton","getUnhandledErrorType","isUnhandledConsoleOrRejection","extractNextErrorCode","isNextjsLink","text","startsWith","ErrorDescription","error","hydrationWarning","isUnhandledOrReplayError","unhandledErrorType","isConsoleErrorStringMessage","title","name","environmentName","envPrefix","message","matcher","getErrorSignature","ev","event","type","reason","stack","_","Errors","isAppDir","errors","initialDisplayState","versionInfo","hasStaticIndicator","debugInfo","activeError","lookups","setLookups","readyErrors","nextError","ready","next","idx","length","e","id","push","prev","isLoading","Boolean","mounted","then","resolved","m","displayState","setDisplayState","activeIdx","setActiveIndex","previous","v","Math","max","min","minimize","hide","fullscreen","data-nextjs-toast","className","onClick","div","svg","xmlns","width","height","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","circle","cx","cy","r","line","x1","y1","x2","y2","span","button","data-nextjs-toast-errors-hide-button","stopPropagation","aria-label","isServerError","includes","isUnhandledError","errorDetails","details","notes","warningTemplate","serverContent","clientContent","warning","hydrationErrorType","replace","aria-labelledby","aria-describedby","onClose","undefined","close","small","data-nextjs-dialog-header-total-count","data-nextjs-error-code","h1","data-nextjs-data-runtime-error-copy-stack","actionLabel","successLabel","content","disabled","devtoolsFrontendUrl","p","componentStackFrames","reactOutputComponentDiff","hydrationMismatchType","firstContent","secondContent","toString","styles"],"mappings":"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"}
|