next 15.2.0-canary.65 → 15.2.0-canary.66

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.

Files changed (334) hide show
  1. package/dist/bin/next +5 -1
  2. package/dist/bin/next.map +1 -1
  3. package/dist/build/entries.d.ts +1 -0
  4. package/dist/build/entries.js +12 -1
  5. package/dist/build/entries.js.map +1 -1
  6. package/dist/build/index.js +3 -3
  7. package/dist/build/index.js.map +1 -1
  8. package/dist/build/swc/index.js +1 -1
  9. package/dist/build/webpack/config/blocks/base.js +3 -1
  10. package/dist/build/webpack/config/blocks/base.js.map +1 -1
  11. package/dist/build/webpack/config/blocks/css/index.js +3 -1
  12. package/dist/build/webpack/config/blocks/css/index.js.map +1 -1
  13. package/dist/build/webpack/config/blocks/css/loaders/client.js +3 -1
  14. package/dist/build/webpack/config/blocks/css/loaders/client.js.map +1 -1
  15. package/dist/build/webpack/loaders/next-flight-client-entry-loader.js +4 -0
  16. package/dist/build/webpack/loaders/next-flight-client-entry-loader.js.map +1 -1
  17. package/dist/build/webpack/loaders/next-flight-client-module-loader.js +7 -1
  18. package/dist/build/webpack/loaders/next-flight-client-module-loader.js.map +1 -1
  19. package/dist/build/webpack/loaders/next-flight-loader/index.js +8 -2
  20. package/dist/build/webpack/loaders/next-flight-loader/index.js.map +1 -1
  21. package/dist/build/webpack/loaders/utils.js +1 -1
  22. package/dist/build/webpack/loaders/utils.js.map +1 -1
  23. package/dist/build/webpack/plugins/build-manifest-plugin.d.ts +1 -1
  24. package/dist/build/webpack/plugins/build-manifest-plugin.js +13 -4
  25. package/dist/build/webpack/plugins/build-manifest-plugin.js.map +1 -1
  26. package/dist/build/webpack/plugins/flight-client-entry-plugin.d.ts +1 -1
  27. package/dist/build/webpack/plugins/flight-client-entry-plugin.js +28 -18
  28. package/dist/build/webpack/plugins/flight-client-entry-plugin.js.map +1 -1
  29. package/dist/build/webpack/plugins/flight-manifest-plugin.js +3 -3
  30. package/dist/build/webpack/plugins/flight-manifest-plugin.js.map +1 -1
  31. package/dist/build/webpack/plugins/middleware-plugin.js +6 -3
  32. package/dist/build/webpack/plugins/middleware-plugin.js.map +1 -1
  33. package/dist/build/webpack/plugins/next-trace-entrypoints-plugin.js +11 -1
  34. package/dist/build/webpack/plugins/next-trace-entrypoints-plugin.js.map +1 -1
  35. package/dist/build/webpack/plugins/nextjs-require-cache-hot-reloader.js +1 -1
  36. package/dist/build/webpack/plugins/nextjs-require-cache-hot-reloader.js.map +1 -1
  37. package/dist/build/webpack/plugins/rspack-flight-client-entry-plugin.d.ts +36 -0
  38. package/dist/build/webpack/plugins/rspack-flight-client-entry-plugin.js +97 -0
  39. package/dist/build/webpack/plugins/rspack-flight-client-entry-plugin.js.map +1 -0
  40. package/dist/build/webpack/plugins/rspack-profiling-plugin.d.ts +9 -0
  41. package/dist/build/webpack/plugins/rspack-profiling-plugin.js +62 -0
  42. package/dist/build/webpack/plugins/rspack-profiling-plugin.js.map +1 -0
  43. package/dist/build/webpack/plugins/wellknown-errors-plugin/parseNextAppLoaderError.js +2 -1
  44. package/dist/build/webpack/plugins/wellknown-errors-plugin/parseNextAppLoaderError.js.map +1 -1
  45. package/dist/build/webpack/utils.js +6 -2
  46. package/dist/build/webpack/utils.js.map +1 -1
  47. package/dist/build/webpack-config.js +37 -5
  48. package/dist/build/webpack-config.js.map +1 -1
  49. package/dist/client/app-bootstrap.js +1 -1
  50. package/dist/client/app-dir/link.js +2 -0
  51. package/dist/client/app-dir/link.js.map +1 -1
  52. package/dist/client/components/react-dev-overlay/_experimental/app/react-dev-overlay.js +34 -26
  53. package/dist/client/components/react-dev-overlay/_experimental/app/react-dev-overlay.js.map +1 -1
  54. package/dist/client/components/react-dev-overlay/_experimental/app/react-dev-overlay.stories.js +1 -0
  55. package/dist/client/components/react-dev-overlay/_experimental/app/react-dev-overlay.stories.js.map +1 -1
  56. package/dist/client/components/react-dev-overlay/_experimental/font/font-styles.d.ts +1 -0
  57. package/dist/client/components/react-dev-overlay/_experimental/font/font-styles.js +41 -0
  58. package/dist/client/components/react-dev-overlay/_experimental/font/font-styles.js.map +1 -0
  59. package/dist/client/components/react-dev-overlay/_experimental/font/geist-latin-ext.woff2 +0 -0
  60. package/dist/client/components/react-dev-overlay/_experimental/font/geist-latin.woff2 +0 -0
  61. package/dist/client/components/react-dev-overlay/_experimental/font/geist-mono-latin-ext.woff2 +0 -0
  62. package/dist/client/components/react-dev-overlay/_experimental/font/geist-mono-latin.woff2 +0 -0
  63. package/dist/client/components/react-dev-overlay/_experimental/font/get-dev-overlay-font-middleware.d.ts +2 -0
  64. package/dist/client/components/react-dev-overlay/_experimental/font/get-dev-overlay-font-middleware.js +72 -0
  65. package/dist/client/components/react-dev-overlay/_experimental/font/get-dev-overlay-font-middleware.js.map +1 -0
  66. package/dist/client/components/react-dev-overlay/_experimental/internal/components/code-frame/code-frame.js +16 -8
  67. package/dist/client/components/react-dev-overlay/_experimental/internal/components/code-frame/code-frame.js.map +1 -1
  68. package/dist/client/components/react-dev-overlay/_experimental/internal/components/copy-button/index.js +3 -3
  69. package/dist/client/components/react-dev-overlay/_experimental/internal/components/copy-button/index.js.map +1 -1
  70. package/dist/client/components/react-dev-overlay/_experimental/internal/components/dialog/dialog.js +2 -1
  71. package/dist/client/components/react-dev-overlay/_experimental/internal/components/dialog/dialog.js.map +1 -1
  72. package/dist/client/components/react-dev-overlay/_experimental/internal/components/dialog/styles.js +1 -1
  73. package/dist/client/components/react-dev-overlay/_experimental/internal/components/dialog/styles.js.map +1 -1
  74. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-indicator.d.ts +2 -1
  75. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-indicator.js +82 -31
  76. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-indicator.js.map +1 -1
  77. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-indicator.stories.d.ts +2 -2
  78. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-indicator.stories.js +20 -21
  79. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-indicator.stories.js.map +1 -1
  80. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/dev-tools-info.d.ts +8 -0
  81. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/dev-tools-info.js +80 -0
  82. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/dev-tools-info.js.map +1 -0
  83. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/route-info.d.ts +9 -0
  84. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/route-info.js +158 -0
  85. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/route-info.js.map +1 -0
  86. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/turbopack-info.d.ts +8 -0
  87. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/turbopack-info.js +212 -0
  88. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/turbopack-info.js.map +1 -0
  89. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/internal/next-logo.d.ts +1 -0
  90. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/internal/next-logo.js +28 -6
  91. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/internal/next-logo.js.map +1 -1
  92. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-message/error-message.js +1 -1
  93. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-message/error-message.js.map +1 -1
  94. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay/error-overlay.d.ts +2 -2
  95. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay/error-overlay.js +3 -3
  96. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay/error-overlay.js.map +1 -1
  97. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-layout/error-overlay-layout.d.ts +2 -2
  98. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-layout/error-overlay-layout.js +4 -4
  99. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-layout/error-overlay-layout.js.map +1 -1
  100. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-nav/error-overlay-nav.d.ts +2 -2
  101. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-nav/error-overlay-nav.js +2 -2
  102. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-nav/error-overlay-nav.js.map +1 -1
  103. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-nav/error-overlay-nav.stories.js +1 -1
  104. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-nav/error-overlay-nav.stories.js.map +1 -1
  105. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-pagination/error-overlay-pagination.d.ts +2 -2
  106. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-pagination/error-overlay-pagination.js +9 -9
  107. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-pagination/error-overlay-pagination.js.map +1 -1
  108. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-pagination/error-overlay-pagination.stories.js +4 -4
  109. package/dist/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-pagination/error-overlay-pagination.stories.js.map +1 -1
  110. package/dist/client/components/react-dev-overlay/_experimental/internal/components/terminal/terminal.js +15 -10
  111. package/dist/client/components/react-dev-overlay/_experimental/internal/components/terminal/terminal.js.map +1 -1
  112. package/dist/client/components/react-dev-overlay/_experimental/internal/components/toast/toast.js +3 -1
  113. package/dist/client/components/react-dev-overlay/_experimental/internal/components/toast/toast.js.map +1 -1
  114. package/dist/client/components/react-dev-overlay/_experimental/internal/container/errors.d.ts +2 -2
  115. package/dist/client/components/react-dev-overlay/_experimental/internal/container/errors.js +7 -7
  116. package/dist/client/components/react-dev-overlay/_experimental/internal/container/errors.js.map +1 -1
  117. package/dist/client/components/react-dev-overlay/_experimental/internal/container/errors.stories.js +5 -5
  118. package/dist/client/components/react-dev-overlay/_experimental/internal/container/errors.stories.js.map +1 -1
  119. package/dist/client/components/react-dev-overlay/_experimental/internal/container/runtime-error/component-stack-pseudo-html.js +1 -1
  120. package/dist/client/components/react-dev-overlay/_experimental/internal/container/runtime-error/component-stack-pseudo-html.js.map +1 -1
  121. package/dist/client/components/react-dev-overlay/_experimental/internal/container/runtime-error/render-error.d.ts +1 -1
  122. package/dist/client/components/react-dev-overlay/_experimental/internal/container/runtime-error/render-error.js +4 -12
  123. package/dist/client/components/react-dev-overlay/_experimental/internal/container/runtime-error/render-error.js.map +1 -1
  124. package/dist/client/components/react-dev-overlay/_experimental/internal/icons/collapse-icon.js +3 -1
  125. package/dist/client/components/react-dev-overlay/_experimental/internal/icons/collapse-icon.js.map +1 -1
  126. package/dist/client/components/react-dev-overlay/_experimental/internal/icons/stop-icon.d.ts +1 -0
  127. package/dist/client/components/react-dev-overlay/_experimental/internal/icons/stop-icon.js +34 -0
  128. package/dist/client/components/react-dev-overlay/_experimental/internal/icons/stop-icon.js.map +1 -0
  129. package/dist/client/components/react-dev-overlay/_experimental/internal/styles/base.js +2 -2
  130. package/dist/client/components/react-dev-overlay/_experimental/internal/styles/base.js.map +1 -1
  131. package/dist/client/components/react-dev-overlay/_experimental/internal/styles/component-styles.js +7 -1
  132. package/dist/client/components/react-dev-overlay/_experimental/internal/styles/component-styles.js.map +1 -1
  133. package/dist/client/components/react-dev-overlay/_experimental/pages/react-dev-overlay.js +6 -2
  134. package/dist/client/components/react-dev-overlay/_experimental/pages/react-dev-overlay.js.map +1 -1
  135. package/dist/client/components/react-dev-overlay/hydration-diff/diff-view.js +2 -2
  136. package/dist/client/components/react-dev-overlay/hydration-diff/diff-view.js.map +1 -1
  137. package/dist/client/components/react-dev-overlay/server/get-next-error-feedback-middleware.js +4 -4
  138. package/dist/client/components/react-dev-overlay/server/get-next-error-feedback-middleware.js.map +1 -1
  139. package/dist/client/components/react-dev-overlay/server/middleware-response.d.ts +9 -0
  140. package/dist/client/components/react-dev-overlay/server/middleware-response.js +46 -0
  141. package/dist/client/components/react-dev-overlay/server/middleware-response.js.map +1 -0
  142. package/dist/client/components/react-dev-overlay/server/middleware-turbopack.js +13 -12
  143. package/dist/client/components/react-dev-overlay/server/middleware-turbopack.js.map +1 -1
  144. package/dist/client/components/react-dev-overlay/server/middleware-webpack.js +12 -11
  145. package/dist/client/components/react-dev-overlay/server/middleware-webpack.js.map +1 -1
  146. package/dist/client/components/react-dev-overlay/server/shared.d.ts +0 -7
  147. package/dist/client/components/react-dev-overlay/server/shared.js +1 -51
  148. package/dist/client/components/react-dev-overlay/server/shared.js.map +1 -1
  149. package/dist/client/components/react-dev-overlay/shared.d.ts +1 -0
  150. package/dist/client/components/react-dev-overlay/shared.js +2 -0
  151. package/dist/client/components/react-dev-overlay/shared.js.map +1 -1
  152. package/dist/client/index.js +2 -3
  153. package/dist/client/index.js.map +1 -1
  154. package/dist/client/link.js.map +1 -1
  155. package/dist/compiled/@next/font/dist/google/fetch-css-from-google-fonts.js +8 -44
  156. package/dist/compiled/@next/font/dist/google/fetch-font-file.d.ts +2 -1
  157. package/dist/compiled/@next/font/dist/google/fetch-font-file.js +6 -20
  158. package/dist/compiled/@next/font/dist/google/fetch-resource.d.ts +6 -0
  159. package/dist/compiled/@next/font/dist/google/fetch-resource.js +46 -0
  160. package/dist/compiled/next-server/app-page-experimental.runtime.dev.js +3 -3
  161. package/dist/compiled/next-server/app-page-experimental.runtime.dev.js.map +1 -1
  162. package/dist/compiled/next-server/app-page.runtime.dev.js +3 -3
  163. package/dist/compiled/next-server/app-page.runtime.dev.js.map +1 -1
  164. package/dist/compiled/next-server/server.runtime.prod.js +2 -2
  165. package/dist/compiled/next-server/server.runtime.prod.js.map +1 -1
  166. package/dist/compiled/node-fetch/index.js +1 -1
  167. package/dist/compiled/sass-loader/cjs.js +1 -1
  168. package/dist/compiled/webpack/webpack.js +23 -1
  169. package/dist/esm/build/entries.js +9 -2
  170. package/dist/esm/build/entries.js.map +1 -1
  171. package/dist/esm/build/index.js +3 -3
  172. package/dist/esm/build/index.js.map +1 -1
  173. package/dist/esm/build/swc/index.js +1 -1
  174. package/dist/esm/build/webpack/config/blocks/base.js +3 -1
  175. package/dist/esm/build/webpack/config/blocks/base.js.map +1 -1
  176. package/dist/esm/build/webpack/config/blocks/css/index.js +3 -1
  177. package/dist/esm/build/webpack/config/blocks/css/index.js.map +1 -1
  178. package/dist/esm/build/webpack/config/blocks/css/loaders/client.js +3 -1
  179. package/dist/esm/build/webpack/config/blocks/css/loaders/client.js.map +1 -1
  180. package/dist/esm/build/webpack/loaders/next-flight-client-entry-loader.js +4 -0
  181. package/dist/esm/build/webpack/loaders/next-flight-client-entry-loader.js.map +1 -1
  182. package/dist/esm/build/webpack/loaders/next-flight-client-module-loader.js +7 -1
  183. package/dist/esm/build/webpack/loaders/next-flight-client-module-loader.js.map +1 -1
  184. package/dist/esm/build/webpack/loaders/next-flight-loader/index.js +8 -2
  185. package/dist/esm/build/webpack/loaders/next-flight-loader/index.js.map +1 -1
  186. package/dist/esm/build/webpack/loaders/utils.js +1 -1
  187. package/dist/esm/build/webpack/loaders/utils.js.map +1 -1
  188. package/dist/esm/build/webpack/plugins/build-manifest-plugin.js +14 -5
  189. package/dist/esm/build/webpack/plugins/build-manifest-plugin.js.map +1 -1
  190. package/dist/esm/build/webpack/plugins/flight-client-entry-plugin.js +28 -18
  191. package/dist/esm/build/webpack/plugins/flight-client-entry-plugin.js.map +1 -1
  192. package/dist/esm/build/webpack/plugins/flight-manifest-plugin.js +3 -3
  193. package/dist/esm/build/webpack/plugins/flight-manifest-plugin.js.map +1 -1
  194. package/dist/esm/build/webpack/plugins/middleware-plugin.js +6 -3
  195. package/dist/esm/build/webpack/plugins/middleware-plugin.js.map +1 -1
  196. package/dist/esm/build/webpack/plugins/next-trace-entrypoints-plugin.js +11 -1
  197. package/dist/esm/build/webpack/plugins/next-trace-entrypoints-plugin.js.map +1 -1
  198. package/dist/esm/build/webpack/plugins/nextjs-require-cache-hot-reloader.js +1 -1
  199. package/dist/esm/build/webpack/plugins/nextjs-require-cache-hot-reloader.js.map +1 -1
  200. package/dist/esm/build/webpack/plugins/rspack-flight-client-entry-plugin.js +87 -0
  201. package/dist/esm/build/webpack/plugins/rspack-flight-client-entry-plugin.js.map +1 -0
  202. package/dist/esm/build/webpack/plugins/rspack-profiling-plugin.js +40 -0
  203. package/dist/esm/build/webpack/plugins/rspack-profiling-plugin.js.map +1 -0
  204. package/dist/esm/build/webpack/plugins/wellknown-errors-plugin/parseNextAppLoaderError.js +2 -1
  205. package/dist/esm/build/webpack/plugins/wellknown-errors-plugin/parseNextAppLoaderError.js.map +1 -1
  206. package/dist/esm/build/webpack/utils.js +6 -2
  207. package/dist/esm/build/webpack/utils.js.map +1 -1
  208. package/dist/esm/build/webpack-config.js +37 -5
  209. package/dist/esm/build/webpack-config.js.map +1 -1
  210. package/dist/esm/client/app-bootstrap.js +1 -1
  211. package/dist/esm/client/app-dir/link.js +2 -0
  212. package/dist/esm/client/app-dir/link.js.map +1 -1
  213. package/dist/esm/client/components/react-dev-overlay/_experimental/app/react-dev-overlay.js +34 -26
  214. package/dist/esm/client/components/react-dev-overlay/_experimental/app/react-dev-overlay.js.map +1 -1
  215. package/dist/esm/client/components/react-dev-overlay/_experimental/app/react-dev-overlay.stories.js +1 -0
  216. package/dist/esm/client/components/react-dev-overlay/_experimental/app/react-dev-overlay.stories.js.map +1 -1
  217. package/dist/esm/client/components/react-dev-overlay/_experimental/font/font-styles.js +25 -0
  218. package/dist/esm/client/components/react-dev-overlay/_experimental/font/font-styles.js.map +1 -0
  219. package/dist/esm/client/components/react-dev-overlay/_experimental/font/geist-latin-ext.woff2 +0 -0
  220. package/dist/esm/client/components/react-dev-overlay/_experimental/font/geist-latin.woff2 +0 -0
  221. package/dist/esm/client/components/react-dev-overlay/_experimental/font/geist-mono-latin-ext.woff2 +0 -0
  222. package/dist/esm/client/components/react-dev-overlay/_experimental/font/geist-mono-latin.woff2 +0 -0
  223. package/dist/esm/client/components/react-dev-overlay/_experimental/font/get-dev-overlay-font-middleware.js +54 -0
  224. package/dist/esm/client/components/react-dev-overlay/_experimental/font/get-dev-overlay-font-middleware.js.map +1 -0
  225. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/code-frame/code-frame.js +16 -8
  226. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/code-frame/code-frame.js.map +1 -1
  227. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/copy-button/index.js +3 -3
  228. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/copy-button/index.js.map +1 -1
  229. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/dialog/dialog.js +2 -1
  230. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/dialog/dialog.js.map +1 -1
  231. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/dialog/styles.js +1 -1
  232. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/dialog/styles.js.map +1 -1
  233. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-indicator.js +83 -31
  234. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-indicator.js.map +1 -1
  235. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-indicator.stories.js +13 -14
  236. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-indicator.stories.js.map +1 -1
  237. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/dev-tools-info.js +52 -0
  238. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/dev-tools-info.js.map +1 -0
  239. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/route-info.js +130 -0
  240. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/route-info.js.map +1 -0
  241. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/turbopack-info.js +184 -0
  242. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/turbopack-info.js.map +1 -0
  243. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/internal/next-logo.js +28 -6
  244. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/internal/next-logo.js.map +1 -1
  245. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-message/error-message.js +1 -1
  246. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-message/error-message.js.map +1 -1
  247. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay/error-overlay.js +3 -3
  248. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay/error-overlay.js.map +1 -1
  249. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-layout/error-overlay-layout.js +4 -4
  250. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-layout/error-overlay-layout.js.map +1 -1
  251. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-nav/error-overlay-nav.js +2 -2
  252. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-nav/error-overlay-nav.js.map +1 -1
  253. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-nav/error-overlay-nav.stories.js +1 -1
  254. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-nav/error-overlay-nav.stories.js.map +1 -1
  255. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-pagination/error-overlay-pagination.js +9 -9
  256. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-pagination/error-overlay-pagination.js.map +1 -1
  257. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-pagination/error-overlay-pagination.stories.js +4 -4
  258. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay-pagination/error-overlay-pagination.stories.js.map +1 -1
  259. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/terminal/terminal.js +15 -10
  260. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/terminal/terminal.js.map +1 -1
  261. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/toast/toast.js +3 -1
  262. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/components/toast/toast.js.map +1 -1
  263. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/errors.js +7 -7
  264. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/errors.js.map +1 -1
  265. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/errors.stories.js +5 -5
  266. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/errors.stories.js.map +1 -1
  267. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/runtime-error/component-stack-pseudo-html.js +1 -1
  268. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/runtime-error/component-stack-pseudo-html.js.map +1 -1
  269. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/runtime-error/render-error.js +4 -12
  270. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/container/runtime-error/render-error.js.map +1 -1
  271. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/icons/collapse-icon.js +3 -1
  272. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/icons/collapse-icon.js.map +1 -1
  273. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/icons/stop-icon.js +18 -0
  274. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/icons/stop-icon.js.map +1 -0
  275. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/styles/base.js +2 -2
  276. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/styles/base.js.map +1 -1
  277. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/styles/component-styles.js +7 -1
  278. package/dist/esm/client/components/react-dev-overlay/_experimental/internal/styles/component-styles.js.map +1 -1
  279. package/dist/esm/client/components/react-dev-overlay/_experimental/pages/react-dev-overlay.js +6 -2
  280. package/dist/esm/client/components/react-dev-overlay/_experimental/pages/react-dev-overlay.js.map +1 -1
  281. package/dist/esm/client/components/react-dev-overlay/hydration-diff/diff-view.js +1 -1
  282. package/dist/esm/client/components/react-dev-overlay/hydration-diff/diff-view.js.map +1 -1
  283. package/dist/esm/client/components/react-dev-overlay/server/get-next-error-feedback-middleware.js +4 -4
  284. package/dist/esm/client/components/react-dev-overlay/server/get-next-error-feedback-middleware.js.map +1 -1
  285. package/dist/esm/client/components/react-dev-overlay/server/middleware-response.js +30 -0
  286. package/dist/esm/client/components/react-dev-overlay/server/middleware-response.js.map +1 -0
  287. package/dist/esm/client/components/react-dev-overlay/server/middleware-turbopack.js +14 -13
  288. package/dist/esm/client/components/react-dev-overlay/server/middleware-turbopack.js.map +1 -1
  289. package/dist/esm/client/components/react-dev-overlay/server/middleware-webpack.js +13 -12
  290. package/dist/esm/client/components/react-dev-overlay/server/middleware-webpack.js.map +1 -1
  291. package/dist/esm/client/components/react-dev-overlay/server/shared.js +0 -26
  292. package/dist/esm/client/components/react-dev-overlay/server/shared.js.map +1 -1
  293. package/dist/esm/client/components/react-dev-overlay/shared.js +2 -0
  294. package/dist/esm/client/components/react-dev-overlay/shared.js.map +1 -1
  295. package/dist/esm/client/index.js +2 -3
  296. package/dist/esm/client/index.js.map +1 -1
  297. package/dist/esm/client/link.js.map +1 -1
  298. package/dist/esm/server/base-server.js +15 -15
  299. package/dist/esm/server/base-server.js.map +1 -1
  300. package/dist/esm/server/config-shared.js.map +1 -1
  301. package/dist/esm/server/config.js +1 -1
  302. package/dist/esm/server/dev/hot-reloader-turbopack.js +4 -2
  303. package/dist/esm/server/dev/hot-reloader-turbopack.js.map +1 -1
  304. package/dist/esm/server/dev/hot-reloader-webpack.js +4 -2
  305. package/dist/esm/server/dev/hot-reloader-webpack.js.map +1 -1
  306. package/dist/esm/server/lib/app-info-log.js +1 -1
  307. package/dist/esm/server/lib/start-server.js +1 -1
  308. package/dist/esm/shared/lib/get-rspack.js +32 -0
  309. package/dist/esm/shared/lib/get-rspack.js.map +1 -0
  310. package/dist/server/base-server.js +15 -15
  311. package/dist/server/base-server.js.map +1 -1
  312. package/dist/server/config-shared.d.ts +3 -3
  313. package/dist/server/config-shared.js.map +1 -1
  314. package/dist/server/config.js +1 -1
  315. package/dist/server/dev/hot-reloader-turbopack.js +4 -2
  316. package/dist/server/dev/hot-reloader-turbopack.js.map +1 -1
  317. package/dist/server/dev/hot-reloader-webpack.js +4 -2
  318. package/dist/server/dev/hot-reloader-webpack.js.map +1 -1
  319. package/dist/server/lib/app-info-log.js +1 -1
  320. package/dist/server/lib/start-server.js +1 -1
  321. package/dist/shared/lib/get-rspack.d.ts +2 -0
  322. package/dist/shared/lib/get-rspack.js +54 -0
  323. package/dist/shared/lib/get-rspack.js.map +1 -0
  324. package/dist/telemetry/anonymous-meta.js +1 -1
  325. package/dist/telemetry/events/session-stopped.js +2 -2
  326. package/dist/telemetry/events/version.js +2 -2
  327. package/dist/trace/trace-uploader.js +1 -2
  328. package/dist/trace/trace-uploader.js.map +1 -1
  329. package/package.json +15 -15
  330. package/dist/client/components/react-dev-overlay/internal/icons/CollapseIcon.d.ts +0 -3
  331. package/dist/client/components/react-dev-overlay/internal/icons/CollapseIcon.js +0 -43
  332. package/dist/client/components/react-dev-overlay/internal/icons/CollapseIcon.js.map +0 -1
  333. package/dist/esm/client/components/react-dev-overlay/internal/icons/CollapseIcon.js +0 -27
  334. package/dist/esm/client/components/react-dev-overlay/internal/icons/CollapseIcon.js.map +0 -1
@@ -0,0 +1,212 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ 0 && (module.exports = {
6
+ DEV_TOOLS_INFO_TURBOPACK_INFO_STYLES: null,
7
+ TurbopackInfo: null
8
+ });
9
+ function _export(target, all) {
10
+ for(var name in all)Object.defineProperty(target, name, {
11
+ enumerable: true,
12
+ get: all[name]
13
+ });
14
+ }
15
+ _export(exports, {
16
+ DEV_TOOLS_INFO_TURBOPACK_INFO_STYLES: function() {
17
+ return DEV_TOOLS_INFO_TURBOPACK_INFO_STYLES;
18
+ },
19
+ TurbopackInfo: function() {
20
+ return TurbopackInfo;
21
+ }
22
+ });
23
+ const _tagged_template_literal_loose = require("@swc/helpers/_/_tagged_template_literal_loose");
24
+ const _jsxruntime = require("react/jsx-runtime");
25
+ const _devtoolsinfo = require("./dev-tools-info");
26
+ const _copybutton = require("../../../copy-button");
27
+ const _nooptemplate = require("../../../../helpers/noop-template");
28
+ function _templateObject() {
29
+ const data = _tagged_template_literal_loose._([
30
+ "\n .dev-tools-info-code {\n background: var(--color-gray-400);\n color: var(--color-gray-1000);\n font-family: var(--font-stack-mono);\n padding: var(--size-0_5) var(--size-1);\n margin: 0;\n font-size: 13px;\n white-space: break-spaces;\n border-radius: var(--rounded-md-2);\n }\n\n .dev-tools-info-code-block-container {\n padding: var(--size-1_5);\n }\n\n .dev-tools-info-code-block {\n position: relative;\n background: var(--color-background-200);\n border: 1px solid var(--color-gray-alpha-400);\n border-radius: var(--rounded-md-2);\n min-width: 326px;\n }\n\n .dev-tools-info-code-block-pre {\n margin: 0;\n font-family: var(--font-stack-mono);\n font-size: 12px;\n }\n\n .dev-tools-info-copy-button {\n position: absolute;\n\n display: flex;\n justify-content: center;\n align-items: center;\n right: var(--size-2);\n top: var(--size-2);\n padding: var(--size-1);\n height: var(--size-6);\n width: var(--size-6);\n border-radius: var(--rounded-md-2);\n border: 1px solid var(--color-gray-alpha-400);\n background: var(--color-background-100);\n }\n\n .dev-tools-info-code-block-line {\n display: block;\n line-height: 1.5;\n padding: 0 1rem;\n }\n\n .dev-tools-info-code-block-line.dev-tools-info-highlight {\n border-left: 2px solid var(--color-blue-900);\n background: var(--color-blue-400);\n }\n\n .dev-tools-info-code-block-json-key {\n color: var(--color-syntax-keyword);\n }\n\n .dev-tools-info-code-block-json-value {\n color: var(--color-syntax-link);\n }\n"
31
+ ]);
32
+ _templateObject = function() {
33
+ return data;
34
+ };
35
+ return data;
36
+ }
37
+ function TurbopackInfo(param) {
38
+ let { isOpen, setIsOpen, setPreviousOpen, ...props } = param;
39
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_devtoolsinfo.DevToolsInfo, {
40
+ title: "Turbopack",
41
+ learnMoreLink: "https://nextjs.org/docs/app/api-reference/turbopack",
42
+ setIsOpen: setIsOpen,
43
+ setPreviousOpen: setPreviousOpen,
44
+ ...props,
45
+ children: [
46
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("article", {
47
+ className: "dev-tools-info-article",
48
+ children: [
49
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("p", {
50
+ className: "dev-tools-info-paragraph",
51
+ children: [
52
+ "Turbopack is an incremental bundler optimized for JavaScript and TypeScript, written in Rust, and built into Next.js. Turbopack can be used in Next.js in both the",
53
+ ' ',
54
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("code", {
55
+ className: "dev-tools-info-code",
56
+ children: "pages"
57
+ }),
58
+ " and",
59
+ ' ',
60
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("code", {
61
+ className: "dev-tools-info-code",
62
+ children: "app"
63
+ }),
64
+ " directories for faster local development."
65
+ ]
66
+ }),
67
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("p", {
68
+ className: "dev-tools-info-paragraph",
69
+ children: [
70
+ "To enable Turbopack, use the",
71
+ ' ',
72
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("code", {
73
+ className: "dev-tools-info-code",
74
+ children: "--turbopack"
75
+ }),
76
+ " flag when running the Next.js development server."
77
+ ]
78
+ })
79
+ ]
80
+ }),
81
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
82
+ className: "dev-tools-info-code-block-container",
83
+ children: /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
84
+ className: "dev-tools-info-code-block",
85
+ children: [
86
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_copybutton.CopyButton, {
87
+ actionLabel: "Copy Next.js Turbopack Command",
88
+ successLabel: "Next.js Turbopack Command Copied",
89
+ content: '--turbopack',
90
+ className: "dev-tools-info-copy-button"
91
+ }),
92
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("pre", {
93
+ className: "dev-tools-info-code-block-pre",
94
+ children: /*#__PURE__*/ (0, _jsxruntime.jsxs)("code", {
95
+ children: [
96
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
97
+ className: "dev-tools-info-code-block-line",
98
+ children: ' '
99
+ }),
100
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
101
+ className: "dev-tools-info-code-block-line",
102
+ children: '{'
103
+ }),
104
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
105
+ className: "dev-tools-info-code-block-line",
106
+ children: [
107
+ ' ',
108
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
109
+ className: "dev-tools-info-code-block-json-key",
110
+ children: '"scripts"'
111
+ }),
112
+ ": ",
113
+ '{'
114
+ ]
115
+ }),
116
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
117
+ className: "dev-tools-info-code-block-line dev-tools-info-highlight",
118
+ children: [
119
+ ' ',
120
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
121
+ className: "dev-tools-info-code-block-json-key",
122
+ children: '"dev"'
123
+ }),
124
+ ":",
125
+ ' ',
126
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
127
+ className: "dev-tools-info-code-block-json-value",
128
+ children: '"next dev --turbopack"'
129
+ }),
130
+ ","
131
+ ]
132
+ }),
133
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
134
+ className: "dev-tools-info-code-block-line",
135
+ children: [
136
+ ' ',
137
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
138
+ className: "dev-tools-info-code-block-json-key",
139
+ children: '"build"'
140
+ }),
141
+ ":",
142
+ ' ',
143
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
144
+ className: "dev-tools-info-code-block-json-value",
145
+ children: '"next build"'
146
+ }),
147
+ ","
148
+ ]
149
+ }),
150
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
151
+ className: "dev-tools-info-code-block-line",
152
+ children: [
153
+ ' ',
154
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
155
+ className: "dev-tools-info-code-block-json-key",
156
+ children: '"start"'
157
+ }),
158
+ ":",
159
+ ' ',
160
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
161
+ className: "dev-tools-info-code-block-json-value",
162
+ children: '"next start"'
163
+ }),
164
+ ","
165
+ ]
166
+ }),
167
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
168
+ className: "dev-tools-info-code-block-line",
169
+ children: [
170
+ ' ',
171
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
172
+ className: "dev-tools-info-code-block-json-key",
173
+ children: '"lint"'
174
+ }),
175
+ ":",
176
+ ' ',
177
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
178
+ className: "dev-tools-info-code-block-json-value",
179
+ children: '"next lint"'
180
+ })
181
+ ]
182
+ }),
183
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
184
+ className: "dev-tools-info-code-block-line",
185
+ children: ' }'
186
+ }),
187
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
188
+ className: "dev-tools-info-code-block-line",
189
+ children: '}'
190
+ }),
191
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
192
+ className: "dev-tools-info-code-block-line",
193
+ children: ' '
194
+ })
195
+ ]
196
+ })
197
+ })
198
+ ]
199
+ })
200
+ })
201
+ ]
202
+ });
203
+ }
204
+ const DEV_TOOLS_INFO_TURBOPACK_INFO_STYLES = (0, _nooptemplate.noop)(_templateObject());
205
+
206
+ if ((typeof exports.default === 'function' || (typeof exports.default === 'object' && exports.default !== null)) && typeof exports.default.__esModule === 'undefined') {
207
+ Object.defineProperty(exports.default, '__esModule', { value: true });
208
+ Object.assign(exports.default, exports);
209
+ module.exports = exports.default;
210
+ }
211
+
212
+ //# sourceMappingURL=turbopack-info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../../../../src/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/dev-tools-info/turbopack-info.tsx"],"sourcesContent":["import { DevToolsInfo } from './dev-tools-info'\nimport { CopyButton } from '../../../copy-button'\nimport { noop as css } from '../../../../helpers/noop-template'\n\nexport function TurbopackInfo({\n isOpen,\n setIsOpen,\n setPreviousOpen,\n ...props\n}: {\n isOpen: boolean\n setIsOpen: (isOpen: boolean) => void\n setPreviousOpen: (isOpen: boolean) => void\n style?: React.CSSProperties\n ref?: React.RefObject<HTMLElement | null>\n}) {\n return (\n <DevToolsInfo\n title=\"Turbopack\"\n learnMoreLink=\"https://nextjs.org/docs/app/api-reference/turbopack\"\n setIsOpen={setIsOpen}\n setPreviousOpen={setPreviousOpen}\n {...props}\n >\n <article className=\"dev-tools-info-article\">\n <p className=\"dev-tools-info-paragraph\">\n Turbopack is an incremental bundler optimized for JavaScript and\n TypeScript, written in Rust, and built into Next.js. Turbopack can be\n used in Next.js in both the{' '}\n <code className=\"dev-tools-info-code\">pages</code> and{' '}\n <code className=\"dev-tools-info-code\">app</code> directories for\n faster local development.\n </p>\n <p className=\"dev-tools-info-paragraph\">\n To enable Turbopack, use the{' '}\n <code className=\"dev-tools-info-code\">--turbopack</code> flag when\n running the Next.js development server.\n </p>\n </article>\n\n <div className=\"dev-tools-info-code-block-container\">\n <div className=\"dev-tools-info-code-block\">\n <CopyButton\n actionLabel=\"Copy Next.js Turbopack Command\"\n successLabel=\"Next.js Turbopack Command Copied\"\n content={'--turbopack'}\n className=\"dev-tools-info-copy-button\"\n />\n <pre className=\"dev-tools-info-code-block-pre\">\n <code>\n <div className=\"dev-tools-info-code-block-line\">{' '}</div>\n <div className=\"dev-tools-info-code-block-line\">{'{'}</div>\n <div className=\"dev-tools-info-code-block-line\">\n {' '}\n <span className=\"dev-tools-info-code-block-json-key\">\n \"scripts\"\n </span>\n : {'{'}\n </div>\n <div className=\"dev-tools-info-code-block-line dev-tools-info-highlight\">\n {' '}\n <span className=\"dev-tools-info-code-block-json-key\">\n \"dev\"\n </span>\n :{' '}\n <span className=\"dev-tools-info-code-block-json-value\">\n \"next dev --turbopack\"\n </span>\n ,\n </div>\n <div className=\"dev-tools-info-code-block-line\">\n {' '}\n <span className=\"dev-tools-info-code-block-json-key\">\n \"build\"\n </span>\n :{' '}\n <span className=\"dev-tools-info-code-block-json-value\">\n \"next build\"\n </span>\n ,\n </div>\n <div className=\"dev-tools-info-code-block-line\">\n {' '}\n <span className=\"dev-tools-info-code-block-json-key\">\n \"start\"\n </span>\n :{' '}\n <span className=\"dev-tools-info-code-block-json-value\">\n \"next start\"\n </span>\n ,\n </div>\n <div className=\"dev-tools-info-code-block-line\">\n {' '}\n <span className=\"dev-tools-info-code-block-json-key\">\n \"lint\"\n </span>\n :{' '}\n <span className=\"dev-tools-info-code-block-json-value\">\n \"next lint\"\n </span>\n </div>\n <div className=\"dev-tools-info-code-block-line\">{' }'}</div>\n <div className=\"dev-tools-info-code-block-line\">{'}'}</div>\n <div className=\"dev-tools-info-code-block-line\">{' '}</div>\n </code>\n </pre>\n </div>\n </div>\n </DevToolsInfo>\n )\n}\n\nexport const DEV_TOOLS_INFO_TURBOPACK_INFO_STYLES = css`\n .dev-tools-info-code {\n background: var(--color-gray-400);\n color: var(--color-gray-1000);\n font-family: var(--font-stack-mono);\n padding: var(--size-0_5) var(--size-1);\n margin: 0;\n font-size: 13px;\n white-space: break-spaces;\n border-radius: var(--rounded-md-2);\n }\n\n .dev-tools-info-code-block-container {\n padding: var(--size-1_5);\n }\n\n .dev-tools-info-code-block {\n position: relative;\n background: var(--color-background-200);\n border: 1px solid var(--color-gray-alpha-400);\n border-radius: var(--rounded-md-2);\n min-width: 326px;\n }\n\n .dev-tools-info-code-block-pre {\n margin: 0;\n font-family: var(--font-stack-mono);\n font-size: 12px;\n }\n\n .dev-tools-info-copy-button {\n position: absolute;\n\n display: flex;\n justify-content: center;\n align-items: center;\n right: var(--size-2);\n top: var(--size-2);\n padding: var(--size-1);\n height: var(--size-6);\n width: var(--size-6);\n border-radius: var(--rounded-md-2);\n border: 1px solid var(--color-gray-alpha-400);\n background: var(--color-background-100);\n }\n\n .dev-tools-info-code-block-line {\n display: block;\n line-height: 1.5;\n padding: 0 1rem;\n }\n\n .dev-tools-info-code-block-line.dev-tools-info-highlight {\n border-left: 2px solid var(--color-blue-900);\n background: var(--color-blue-400);\n }\n\n .dev-tools-info-code-block-json-key {\n color: var(--color-syntax-keyword);\n }\n\n .dev-tools-info-code-block-json-value {\n color: var(--color-syntax-link);\n }\n`\n"],"names":["DEV_TOOLS_INFO_TURBOPACK_INFO_STYLES","TurbopackInfo","isOpen","setIsOpen","setPreviousOpen","props","DevToolsInfo","title","learnMoreLink","article","className","p","code","div","CopyButton","actionLabel","successLabel","content","pre","span","css"],"mappings":";;;;;;;;;;;;;;;IAiHaA,oCAAoC;eAApCA;;IA7GGC,aAAa;eAAbA;;;;;8BAJa;4BACF;8BACC;;;;;;;;;;AAErB,SAASA,cAAc,KAW7B;IAX6B,IAAA,EAC5BC,MAAM,EACNC,SAAS,EACTC,eAAe,EACf,GAAGC,OAOJ,GAX6B;IAY5B,qBACE,sBAACC,0BAAY;QACXC,OAAM;QACNC,eAAc;QACdL,WAAWA;QACXC,iBAAiBA;QAChB,GAAGC,KAAK;;0BAET,sBAACI;gBAAQC,WAAU;;kCACjB,sBAACC;wBAAED,WAAU;;4BAA2B;4BAGV;0CAC5B,qBAACE;gCAAKF,WAAU;0CAAsB;;4BAAY;4BAAK;0CACvD,qBAACE;gCAAKF,WAAU;0CAAsB;;4BAAU;;;kCAGlD,sBAACC;wBAAED,WAAU;;4BAA2B;4BACT;0CAC7B,qBAACE;gCAAKF,WAAU;0CAAsB;;4BAAkB;;;;;0BAK5D,qBAACG;gBAAIH,WAAU;0BACb,cAAA,sBAACG;oBAAIH,WAAU;;sCACb,qBAACI,sBAAU;4BACTC,aAAY;4BACZC,cAAa;4BACbC,SAAS;4BACTP,WAAU;;sCAEZ,qBAACQ;4BAAIR,WAAU;sCACb,cAAA,sBAACE;;kDACC,qBAACC;wCAAIH,WAAU;kDAAkC;;kDACjD,qBAACG;wCAAIH,WAAU;kDAAkC;;kDACjD,sBAACG;wCAAIH,WAAU;;4CACZ;0DACD,qBAACS;gDAAKT,WAAU;0DAAqC;;4CAE9C;4CACJ;;;kDAEL,sBAACG;wCAAIH,WAAU;;4CACZ;0DACD,qBAACS;gDAAKT,WAAU;0DAAqC;;4CAE9C;4CACL;0DACF,qBAACS;gDAAKT,WAAU;0DAAuC;;4CAEhD;;;kDAGT,sBAACG;wCAAIH,WAAU;;4CACZ;0DACD,qBAACS;gDAAKT,WAAU;0DAAqC;;4CAE9C;4CACL;0DACF,qBAACS;gDAAKT,WAAU;0DAAuC;;4CAEhD;;;kDAGT,sBAACG;wCAAIH,WAAU;;4CACZ;0DACD,qBAACS;gDAAKT,WAAU;0DAAqC;;4CAE9C;4CACL;0DACF,qBAACS;gDAAKT,WAAU;0DAAuC;;4CAEhD;;;kDAGT,sBAACG;wCAAIH,WAAU;;4CACZ;0DACD,qBAACS;gDAAKT,WAAU;0DAAqC;;4CAE9C;4CACL;0DACF,qBAACS;gDAAKT,WAAU;0DAAuC;;;;kDAIzD,qBAACG;wCAAIH,WAAU;kDAAkC;;kDACjD,qBAACG;wCAAIH,WAAU;kDAAkC;;kDACjD,qBAACG;wCAAIH,WAAU;kDAAkC;;;;;;;;;;AAO/D;AAEO,MAAMV,2CAAuCoB,kBAAG"}
@@ -2,6 +2,7 @@ interface Props extends React.ComponentProps<'button'> {
2
2
  issueCount: number;
3
3
  isDevBuilding: boolean;
4
4
  isDevRendering: boolean;
5
+ isBuildError: boolean;
5
6
  onTriggerClick: () => void;
6
7
  openErrorOverlay: () => void;
7
8
  }
@@ -29,7 +29,8 @@ const _mergerefs = /*#__PURE__*/ _interop_require_default._(require("../../../..
29
29
  const _useminimumloadingtimemultiple = require("./use-minimum-loading-time-multiple");
30
30
  function _templateObject() {
31
31
  const data = _tagged_template_literal_loose._([
32
- "\n [data-next-badge-root] {\n --timing: cubic-bezier(0.23, 0.88, 0.26, 0.92);\n --duration-long: 250ms;\n --color-outer-border: #171717;\n --color-inner-border: hsla(0, 0%, 100%, 0.14);\n --color-hover-alpha-subtle: hsla(0, 0%, 100%, 0.13);\n --color-hover-alpha-error: hsla(0, 0%, 100%, 0.2);\n --color-hover-alpha-error-2: hsla(0, 0%, 100%, 0.25);\n --padding: 2px;\n --mark-size: calc(var(--size) - var(--padding) * 2);\n\n --focus-color: var(--color-blue-800);\n --focus-ring: 2px solid var(--focus-color);\n\n &:has([data-next-badge][data-error='true']) {\n --focus-color: #fff;\n }\n }\n\n [data-next-badge] {\n -webkit-font-smoothing: antialiased;\n width: var(--size);\n height: var(--size);\n display: flex;\n align-items: center;\n position: relative;\n background: rgba(0, 0, 0, 0.8);\n box-shadow:\n 0 0 0 1px var(--color-outer-border),\n inset 0 0 0 1px var(--color-inner-border),\n 0px 16px 32px -8px rgba(0, 0, 0, 0.24);\n backdrop-filter: blur(48px);\n border-radius: 9999px;\n user-select: none;\n cursor: pointer;\n scale: 1;\n overflow: hidden;\n will-change: scale, box-shadow, width, background;\n transition:\n scale var(--duration-short) var(--timing),\n width var(--duration-long) var(--timing),\n box-shadow var(--duration-long) var(--timing),\n background var(--duration-short) ease;\n\n &:active[data-error='false'] {\n scale: 0.95;\n }\n\n &[data-animate='true']:not(:hover) {\n scale: 1.02;\n }\n\n &[data-error='false']:has([data-next-mark]:focus-visible) {\n outline: var(--focus-ring);\n outline-offset: 3px;\n }\n\n &[data-error='true'] {\n background: #ca2a30;\n --color-inner-border: #e5484d;\n\n [data-next-mark] {\n background: var(--color-hover-alpha-error);\n outline-offset: 0px;\n\n &:focus-visible {\n outline: var(--focus-ring);\n outline-offset: -1px;\n }\n\n &:hover {\n background: var(--color-hover-alpha-error-2);\n }\n }\n }\n\n &[data-error-expanded='false'][data-error='true'] ~ [data-dot] {\n scale: 1;\n }\n\n > div {\n display: flex;\n }\n }\n\n [data-issues-collapse]:focus-visible {\n outline: var(--focus-ring);\n }\n\n [data-issues]:has([data-issues-open]:focus-visible) {\n outline: var(--focus-ring);\n outline-offset: -1px;\n }\n\n [data-dot] {\n content: '';\n width: 8px;\n height: 8px;\n background: #fff;\n box-shadow: 0 0 0 1px var(--color-outer-border);\n border-radius: 50%;\n position: absolute;\n top: 2px;\n right: 0px;\n scale: 0;\n pointer-events: none;\n transition: scale 200ms var(--timing);\n transition-delay: var(--duration-short);\n }\n\n [data-issues] {\n display: flex;\n gap: var(--padding);\n align-items: center;\n padding-left: 8px;\n padding-right: calc(var(--padding) * 2);\n height: 32px;\n margin: 0 var(--padding);\n border-radius: 9999px;\n transition: background var(--duration-short) ease;\n\n &:has([data-issues-open]:hover) {\n background: var(--color-hover-alpha-error);\n }\n\n [data-cross] {\n translate: 0px -1px;\n }\n }\n\n [data-issues-open] {\n font-size: 13px;\n color: white;\n width: fit-content;\n height: 100%;\n display: flex;\n gap: 2px;\n align-items: center;\n margin: 0;\n line-height: 36px;\n font-weight: 500;\n z-index: 2;\n white-space: nowrap;\n\n &:focus-visible {\n outline: 0;\n }\n }\n\n [data-issues-collapse] {\n width: 24px;\n height: 24px;\n border-radius: 9999px;\n transition: background var(--duration-short) ease;\n\n &:hover {\n background: var(--color-hover-alpha-error);\n }\n }\n\n [data-cross] {\n color: #fff;\n }\n\n [data-next-mark] {\n width: var(--mark-size);\n height: var(--mark-size);\n margin-left: var(--padding);\n display: flex;\n align-items: center;\n border-radius: 9999px;\n transition: background var(--duration-long) var(--timing);\n\n &:focus-visible {\n outline: 0;\n }\n\n &:hover {\n background: var(--color-hover-alpha-subtle);\n }\n\n svg {\n flex-shrink: 0;\n }\n }\n\n [data-issues-count-animation] {\n display: grid;\n place-items: center center;\n font-variant-numeric: tabular-nums;\n\n &[data-animate='false'] {\n [data-issues-count-exit],\n [data-issues-count-enter] {\n animation-duration: 0ms;\n }\n }\n\n > * {\n grid-area: 1 / 1;\n }\n\n [data-issues-count-exit] {\n animation: fadeOut 300ms var(--timing) forwards;\n }\n\n [data-issues-count-enter] {\n animation: fadeIn 300ms var(--timing) forwards;\n }\n }\n\n [data-issues-count-plural] {\n display: inline-block;\n animation: fadeIn 300ms var(--timing) forwards;\n }\n\n .path0 {\n animation: draw0 1.5s ease-in-out infinite;\n }\n\n .path1 {\n animation: draw1 1.5s ease-out infinite;\n animation-delay: 0.3s;\n }\n\n .paused {\n stroke-dashoffset: 0;\n }\n\n @keyframes fadeIn {\n 0% {\n opacity: 0;\n filter: blur(2px);\n transform: translateY(8px);\n }\n 100% {\n opacity: 1;\n filter: blur(0px);\n transform: translateY(0);\n }\n }\n\n @keyframes fadeOut {\n 0% {\n opacity: 1;\n filter: blur(0px);\n transform: translateY(0);\n }\n 100% {\n opacity: 0;\n transform: translateY(-12px);\n filter: blur(2px);\n }\n }\n\n @keyframes draw0 {\n 0%,\n 25% {\n stroke-dashoffset: -29.6;\n }\n 25%,\n 50% {\n stroke-dashoffset: 0;\n }\n 50%,\n 75% {\n stroke-dashoffset: 0;\n }\n 75%,\n 100% {\n stroke-dashoffset: 29.6;\n }\n }\n\n @keyframes draw1 {\n 0%,\n 20% {\n stroke-dashoffset: -11.6;\n }\n 20%,\n 50% {\n stroke-dashoffset: 0;\n }\n 50%,\n 75% {\n stroke-dashoffset: 0;\n }\n 75%,\n 100% {\n stroke-dashoffset: 11.6;\n }\n }\n\n @media (prefers-reduced-motion) {\n [data-issues-count-exit],\n [data-issues-count-enter],\n [data-issues-count-plural] {\n animation-duration: 0ms !important;\n }\n }\n "
32
+ "\n [data-next-badge-root] {\n --timing: cubic-bezier(0.23, 0.88, 0.26, 0.92);\n --duration-long: 250ms;\n --color-outer-border: #171717;\n --color-inner-border: hsla(0, 0%, 100%, 0.14);\n --color-hover-alpha-subtle: hsla(0, 0%, 100%, 0.13);\n --color-hover-alpha-error: hsla(0, 0%, 100%, 0.2);\n --color-hover-alpha-error-2: hsla(0, 0%, 100%, 0.25);\n --padding: 2px;\n --mark-size: calc(var(--size) - var(--padding) * 2);\n\n --focus-color: var(--color-blue-800);\n --focus-ring: 2px solid var(--focus-color);\n\n &:has([data-next-badge][data-error='true']) {\n --focus-color: #fff;\n }\n }\n\n [data-disabled-icon] {\n display: flex;\n align-items: center;\n justify-content: center;\n padding-right: 4px;\n }\n\n [data-next-badge] {\n -webkit-font-smoothing: antialiased;\n width: var(--size);\n height: var(--size);\n display: flex;\n align-items: center;\n position: relative;\n background: rgba(0, 0, 0, 0.8);\n box-shadow:\n 0 0 0 1px var(--color-outer-border),\n inset 0 0 0 1px var(--color-inner-border),\n 0px 16px 32px -8px rgba(0, 0, 0, 0.24);\n backdrop-filter: blur(48px);\n border-radius: 9999px;\n user-select: none;\n cursor: pointer;\n scale: 1;\n overflow: hidden;\n will-change: scale, box-shadow, width, background;\n transition:\n scale var(--duration-short) var(--timing),\n width var(--duration-long) var(--timing),\n box-shadow var(--duration-long) var(--timing),\n background var(--duration-short) ease;\n\n &:active[data-error='false'] {\n scale: 0.95;\n }\n\n &[data-animate='true']:not(:hover) {\n scale: 1.02;\n }\n\n &[data-error='false']:has([data-next-mark]:focus-visible) {\n outline: var(--focus-ring);\n outline-offset: 3px;\n }\n\n &[data-error='true'] {\n background: #ca2a30;\n --color-inner-border: #e5484d;\n\n [data-next-mark] {\n background: var(--color-hover-alpha-error);\n outline-offset: 0px;\n\n &:focus-visible {\n outline: var(--focus-ring);\n outline-offset: -1px;\n }\n\n &:hover {\n background: var(--color-hover-alpha-error-2);\n }\n }\n }\n\n &[data-error-expanded='false'][data-error='true'] ~ [data-dot] {\n scale: 1;\n }\n\n > div {\n display: flex;\n }\n }\n\n [data-issues-collapse]:focus-visible {\n outline: var(--focus-ring);\n }\n\n [data-issues]:has([data-issues-open]:focus-visible) {\n outline: var(--focus-ring);\n outline-offset: -1px;\n }\n\n [data-dot] {\n content: '';\n width: 8px;\n height: 8px;\n background: #fff;\n box-shadow: 0 0 0 1px var(--color-outer-border);\n border-radius: 50%;\n position: absolute;\n top: 2px;\n right: 0px;\n scale: 0;\n pointer-events: none;\n transition: scale 200ms var(--timing);\n transition-delay: var(--duration-short);\n }\n\n [data-issues] {\n display: flex;\n gap: var(--padding);\n align-items: center;\n padding-left: 8px;\n padding-right: ",
33
+ ";\n height: 32px;\n margin: 0 var(--padding);\n border-radius: 9999px;\n transition: background var(--duration-short) ease;\n\n &:has([data-issues-open]:hover) {\n background: var(--color-hover-alpha-error);\n }\n\n [data-cross] {\n translate: 0px -1px;\n }\n }\n\n [data-issues-open] {\n font-size: 13px;\n color: white;\n width: fit-content;\n height: 100%;\n display: flex;\n gap: 2px;\n align-items: center;\n margin: 0;\n line-height: 36px;\n font-weight: 500;\n z-index: 2;\n white-space: nowrap;\n\n &:focus-visible {\n outline: 0;\n }\n }\n\n [data-issues-collapse] {\n width: 24px;\n height: 24px;\n border-radius: 9999px;\n transition: background var(--duration-short) ease;\n\n &:hover {\n background: var(--color-hover-alpha-error);\n }\n }\n\n [data-cross] {\n color: #fff;\n }\n\n [data-next-mark] {\n width: var(--mark-size);\n height: var(--mark-size);\n margin-left: var(--padding);\n display: flex;\n align-items: center;\n border-radius: 9999px;\n transition: background var(--duration-long) var(--timing);\n\n &:focus-visible {\n outline: 0;\n }\n\n &:hover {\n background: var(--color-hover-alpha-subtle);\n }\n\n svg {\n flex-shrink: 0;\n }\n }\n\n [data-issues-count-animation] {\n display: grid;\n place-items: center center;\n font-variant-numeric: tabular-nums;\n\n &[data-animate='false'] {\n [data-issues-count-exit],\n [data-issues-count-enter] {\n animation-duration: 0ms;\n }\n }\n\n > * {\n grid-area: 1 / 1;\n }\n\n [data-issues-count-exit] {\n animation: fadeOut 300ms var(--timing) forwards;\n }\n\n [data-issues-count-enter] {\n animation: fadeIn 300ms var(--timing) forwards;\n }\n }\n\n [data-issues-count-plural] {\n display: inline-block;\n animation: fadeIn 300ms var(--timing) forwards;\n }\n\n .path0 {\n animation: draw0 1.5s ease-in-out infinite;\n }\n\n .path1 {\n animation: draw1 1.5s ease-out infinite;\n animation-delay: 0.3s;\n }\n\n .paused {\n stroke-dashoffset: 0;\n }\n\n @keyframes fadeIn {\n 0% {\n opacity: 0;\n filter: blur(2px);\n transform: translateY(8px);\n }\n 100% {\n opacity: 1;\n filter: blur(0px);\n transform: translateY(0);\n }\n }\n\n @keyframes fadeOut {\n 0% {\n opacity: 1;\n filter: blur(0px);\n transform: translateY(0);\n }\n 100% {\n opacity: 0;\n transform: translateY(-12px);\n filter: blur(2px);\n }\n }\n\n @keyframes draw0 {\n 0%,\n 25% {\n stroke-dashoffset: -29.6;\n }\n 25%,\n 50% {\n stroke-dashoffset: 0;\n }\n 50%,\n 75% {\n stroke-dashoffset: 0;\n }\n 75%,\n 100% {\n stroke-dashoffset: 29.6;\n }\n }\n\n @keyframes draw1 {\n 0%,\n 20% {\n stroke-dashoffset: -11.6;\n }\n 20%,\n 50% {\n stroke-dashoffset: 0;\n }\n 50%,\n 75% {\n stroke-dashoffset: 0;\n }\n 75%,\n 100% {\n stroke-dashoffset: 11.6;\n }\n }\n\n @media (prefers-reduced-motion) {\n [data-issues-count-exit],\n [data-issues-count-enter],\n [data-issues-count-plural] {\n animation-duration: 0ms !important;\n }\n }\n "
33
34
  ]);
34
35
  _templateObject = function() {
35
36
  return data;
@@ -74,7 +75,7 @@ const SHORT_DURATION_MS = 150;
74
75
  return animatedDep;
75
76
  };
76
77
  const NextLogo = /*#__PURE__*/ (0, _react.forwardRef)(function NextLogo(param, propRef) {
77
- let { issueCount, isDevBuilding, isDevRendering, onTriggerClick, openErrorOverlay, ...props } = param;
78
+ let { disabled, issueCount, isDevBuilding, isDevRendering, isBuildError, onTriggerClick, openErrorOverlay, ...props } = param;
78
79
  const hasError = issueCount > 0;
79
80
  const [isErrorExpanded, setIsErrorExpanded] = (0, _react.useState)(hasError);
80
81
  const newErrorDetected = useAnimated(issueCount, {
@@ -94,11 +95,13 @@ const NextLogo = /*#__PURE__*/ (0, _react.forwardRef)(function NextLogo(param, p
94
95
  "data-next-badge-root": true,
95
96
  style: {
96
97
  '--size': "" + SIZE + "px",
97
- '--duration-short': "" + SHORT_DURATION_MS + "ms"
98
+ '--duration-short': "" + SHORT_DURATION_MS + "ms",
99
+ // if the indicator is disabled and there are no errors, hide the badge
100
+ display: disabled && !hasError ? 'none' : 'block'
98
101
  },
99
102
  children: [
100
103
  /*#__PURE__*/ (0, _jsxruntime.jsx)("style", {
101
- children: (0, _nooptemplate.noop)(_templateObject())
104
+ children: (0, _nooptemplate.noop)(_templateObject(), disabled || isBuildError ? '8px' : 'calc(var(--padding) * 2)')
102
105
  }),
103
106
  /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
104
107
  "data-next-badge": true,
@@ -111,7 +114,7 @@ const NextLogo = /*#__PURE__*/ (0, _react.forwardRef)(function NextLogo(param, p
111
114
  children: /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
112
115
  ref: ref,
113
116
  children: [
114
- /*#__PURE__*/ (0, _jsxruntime.jsx)("button", {
117
+ !disabled && /*#__PURE__*/ (0, _jsxruntime.jsx)("button", {
115
118
  ref: (0, _mergerefs.default)(triggerRef, propRef),
116
119
  "data-next-mark": true,
117
120
  "data-next-mark-loading": isLoading,
@@ -129,6 +132,10 @@ const NextLogo = /*#__PURE__*/ (0, _react.forwardRef)(function NextLogo(param, p
129
132
  "aria-label": "Open issues overlay",
130
133
  onClick: openErrorOverlay,
131
134
  children: [
135
+ disabled && /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
136
+ "data-disabled-icon": true,
137
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(Warning, {})
138
+ }),
132
139
  /*#__PURE__*/ (0, _jsxruntime.jsx)(AnimateCount, {
133
140
  animate: newErrorDetected,
134
141
  "data-issues-count-animation": true,
@@ -147,7 +154,7 @@ const NextLogo = /*#__PURE__*/ (0, _react.forwardRef)(function NextLogo(param, p
147
154
  })
148
155
  ]
149
156
  }),
150
- /*#__PURE__*/ (0, _jsxruntime.jsx)("button", {
157
+ !disabled && !isBuildError && /*#__PURE__*/ (0, _jsxruntime.jsx)("button", {
151
158
  "data-issues-collapse": true,
152
159
  "aria-label": "Collapse issues badge",
153
160
  onClick: ()=>{
@@ -304,6 +311,21 @@ function NextMark(param) {
304
311
  ]
305
312
  });
306
313
  }
314
+ function Warning() {
315
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)("svg", {
316
+ width: "12",
317
+ height: "12",
318
+ viewBox: "0 0 12 12",
319
+ fill: "none",
320
+ xmlns: "http://www.w3.org/2000/svg",
321
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)("path", {
322
+ fillRule: "evenodd",
323
+ clipRule: "evenodd",
324
+ d: "M3.98071 1.125L1.125 3.98071L1.125 8.01929L3.98071 10.875H8.01929L10.875 8.01929V3.98071L8.01929 1.125H3.98071ZM3.82538 0C3.62647 0 3.4357 0.0790176 3.29505 0.21967L0.21967 3.29505C0.0790176 3.4357 0 3.62647 0 3.82538V8.17462C0 8.37353 0.0790178 8.5643 0.21967 8.70495L3.29505 11.7803C3.4357 11.921 3.62647 12 3.82538 12H8.17462C8.37353 12 8.5643 11.921 8.70495 11.7803L11.7803 8.70495C11.921 8.5643 12 8.37353 12 8.17462V3.82538C12 3.62647 11.921 3.4357 11.7803 3.29505L8.70495 0.21967C8.5643 0.0790177 8.37353 0 8.17462 0H3.82538ZM6.5625 2.8125V3.375V6V6.5625H5.4375V6V3.375V2.8125H6.5625ZM6 9C6.41421 9 6.75 8.66421 6.75 8.25C6.75 7.83579 6.41421 7.5 6 7.5C5.58579 7.5 5.25 7.83579 5.25 8.25C5.25 8.66421 5.58579 9 6 9Z",
325
+ fill: "#EAEAEA"
326
+ })
327
+ });
328
+ }
307
329
  function Cross(props) {
308
330
  return /*#__PURE__*/ (0, _jsxruntime.jsx)("svg", {
309
331
  width: "12",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../../../../src/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/internal/next-logo.tsx"],"sourcesContent":["import { forwardRef, useEffect, useRef, useState } from 'react'\nimport { noop as css } from '../../../../../../internal/helpers/noop-template'\nimport mergeRefs from '../../../../helpers/merge-refs'\nimport { useMinimumLoadingTimeMultiple } from './use-minimum-loading-time-multiple'\n\ninterface Props extends React.ComponentProps<'button'> {\n issueCount: number\n isDevBuilding: boolean\n isDevRendering: boolean\n onTriggerClick: () => void\n openErrorOverlay: () => void\n}\n\nconst SIZE = 36\nconst SHORT_DURATION_MS = 150\n\n/**\n * A hook that creates an animated state based on changes to a dependency.\n * When the dependency changes and passes the shouldSkip check, it triggers\n * an animation state that lasts for the specified duration.\n *\n * @param dep The dependency to watch for changes\n * @param config Configuration object containing:\n * - shouldSkip: Function to determine if animation should be skipped\n * - animationDuration: Duration of the animation in milliseconds\n * @returns Boolean indicating if animation is currently active\n */\nconst useAnimated = <T,>(\n dep: T,\n config: { shouldSkip: (dep: T) => boolean; animationDuration: number }\n) => {\n const { shouldSkip: _shouldSkip, animationDuration } = config\n const shouldSkipRef = useRef(_shouldSkip) // ensure stable reference in case it's not\n\n const [animatedDep, setAnimatedDep] = useState(false)\n const isInitialRef = useRef(true)\n\n useEffect(() => {\n if (isInitialRef.current) {\n isInitialRef.current = false\n return\n }\n\n if (shouldSkipRef.current(dep)) {\n return\n }\n\n setAnimatedDep(true)\n const timeoutId = setTimeout(() => {\n setAnimatedDep(false)\n }, animationDuration)\n\n return () => clearTimeout(timeoutId)\n }, [dep, animationDuration])\n\n return animatedDep\n}\n\nexport const NextLogo = forwardRef(function NextLogo(\n {\n issueCount,\n isDevBuilding,\n isDevRendering,\n onTriggerClick,\n openErrorOverlay,\n ...props\n }: Props,\n propRef: React.Ref<HTMLButtonElement>\n) {\n const hasError = issueCount > 0\n const [isErrorExpanded, setIsErrorExpanded] = useState(hasError)\n const newErrorDetected = useAnimated(issueCount, {\n shouldSkip: (count) => count === 0,\n animationDuration: SHORT_DURATION_MS,\n })\n\n const triggerRef = useRef<HTMLButtonElement | null>(null)\n const ref = useRef<HTMLDivElement | null>(null)\n const width = useMeasureWidth(ref)\n\n const isLoading = useMinimumLoadingTimeMultiple(\n isDevBuilding || isDevRendering\n )\n\n useEffect(() => {\n setIsErrorExpanded(hasError)\n }, [hasError])\n\n return (\n <div\n data-next-badge-root\n style={\n {\n '--size': `${SIZE}px`,\n '--duration-short': `${SHORT_DURATION_MS}ms`,\n } as React.CSSProperties\n }\n >\n {/* Styles */}\n <style>\n {css`\n [data-next-badge-root] {\n --timing: cubic-bezier(0.23, 0.88, 0.26, 0.92);\n --duration-long: 250ms;\n --color-outer-border: #171717;\n --color-inner-border: hsla(0, 0%, 100%, 0.14);\n --color-hover-alpha-subtle: hsla(0, 0%, 100%, 0.13);\n --color-hover-alpha-error: hsla(0, 0%, 100%, 0.2);\n --color-hover-alpha-error-2: hsla(0, 0%, 100%, 0.25);\n --padding: 2px;\n --mark-size: calc(var(--size) - var(--padding) * 2);\n\n --focus-color: var(--color-blue-800);\n --focus-ring: 2px solid var(--focus-color);\n\n &:has([data-next-badge][data-error='true']) {\n --focus-color: #fff;\n }\n }\n\n [data-next-badge] {\n -webkit-font-smoothing: antialiased;\n width: var(--size);\n height: var(--size);\n display: flex;\n align-items: center;\n position: relative;\n background: rgba(0, 0, 0, 0.8);\n box-shadow:\n 0 0 0 1px var(--color-outer-border),\n inset 0 0 0 1px var(--color-inner-border),\n 0px 16px 32px -8px rgba(0, 0, 0, 0.24);\n backdrop-filter: blur(48px);\n border-radius: 9999px;\n user-select: none;\n cursor: pointer;\n scale: 1;\n overflow: hidden;\n will-change: scale, box-shadow, width, background;\n transition:\n scale var(--duration-short) var(--timing),\n width var(--duration-long) var(--timing),\n box-shadow var(--duration-long) var(--timing),\n background var(--duration-short) ease;\n\n &:active[data-error='false'] {\n scale: 0.95;\n }\n\n &[data-animate='true']:not(:hover) {\n scale: 1.02;\n }\n\n &[data-error='false']:has([data-next-mark]:focus-visible) {\n outline: var(--focus-ring);\n outline-offset: 3px;\n }\n\n &[data-error='true'] {\n background: #ca2a30;\n --color-inner-border: #e5484d;\n\n [data-next-mark] {\n background: var(--color-hover-alpha-error);\n outline-offset: 0px;\n\n &:focus-visible {\n outline: var(--focus-ring);\n outline-offset: -1px;\n }\n\n &:hover {\n background: var(--color-hover-alpha-error-2);\n }\n }\n }\n\n &[data-error-expanded='false'][data-error='true'] ~ [data-dot] {\n scale: 1;\n }\n\n > div {\n display: flex;\n }\n }\n\n [data-issues-collapse]:focus-visible {\n outline: var(--focus-ring);\n }\n\n [data-issues]:has([data-issues-open]:focus-visible) {\n outline: var(--focus-ring);\n outline-offset: -1px;\n }\n\n [data-dot] {\n content: '';\n width: 8px;\n height: 8px;\n background: #fff;\n box-shadow: 0 0 0 1px var(--color-outer-border);\n border-radius: 50%;\n position: absolute;\n top: 2px;\n right: 0px;\n scale: 0;\n pointer-events: none;\n transition: scale 200ms var(--timing);\n transition-delay: var(--duration-short);\n }\n\n [data-issues] {\n display: flex;\n gap: var(--padding);\n align-items: center;\n padding-left: 8px;\n padding-right: calc(var(--padding) * 2);\n height: 32px;\n margin: 0 var(--padding);\n border-radius: 9999px;\n transition: background var(--duration-short) ease;\n\n &:has([data-issues-open]:hover) {\n background: var(--color-hover-alpha-error);\n }\n\n [data-cross] {\n translate: 0px -1px;\n }\n }\n\n [data-issues-open] {\n font-size: 13px;\n color: white;\n width: fit-content;\n height: 100%;\n display: flex;\n gap: 2px;\n align-items: center;\n margin: 0;\n line-height: 36px;\n font-weight: 500;\n z-index: 2;\n white-space: nowrap;\n\n &:focus-visible {\n outline: 0;\n }\n }\n\n [data-issues-collapse] {\n width: 24px;\n height: 24px;\n border-radius: 9999px;\n transition: background var(--duration-short) ease;\n\n &:hover {\n background: var(--color-hover-alpha-error);\n }\n }\n\n [data-cross] {\n color: #fff;\n }\n\n [data-next-mark] {\n width: var(--mark-size);\n height: var(--mark-size);\n margin-left: var(--padding);\n display: flex;\n align-items: center;\n border-radius: 9999px;\n transition: background var(--duration-long) var(--timing);\n\n &:focus-visible {\n outline: 0;\n }\n\n &:hover {\n background: var(--color-hover-alpha-subtle);\n }\n\n svg {\n flex-shrink: 0;\n }\n }\n\n [data-issues-count-animation] {\n display: grid;\n place-items: center center;\n font-variant-numeric: tabular-nums;\n\n &[data-animate='false'] {\n [data-issues-count-exit],\n [data-issues-count-enter] {\n animation-duration: 0ms;\n }\n }\n\n > * {\n grid-area: 1 / 1;\n }\n\n [data-issues-count-exit] {\n animation: fadeOut 300ms var(--timing) forwards;\n }\n\n [data-issues-count-enter] {\n animation: fadeIn 300ms var(--timing) forwards;\n }\n }\n\n [data-issues-count-plural] {\n display: inline-block;\n animation: fadeIn 300ms var(--timing) forwards;\n }\n\n .path0 {\n animation: draw0 1.5s ease-in-out infinite;\n }\n\n .path1 {\n animation: draw1 1.5s ease-out infinite;\n animation-delay: 0.3s;\n }\n\n .paused {\n stroke-dashoffset: 0;\n }\n\n @keyframes fadeIn {\n 0% {\n opacity: 0;\n filter: blur(2px);\n transform: translateY(8px);\n }\n 100% {\n opacity: 1;\n filter: blur(0px);\n transform: translateY(0);\n }\n }\n\n @keyframes fadeOut {\n 0% {\n opacity: 1;\n filter: blur(0px);\n transform: translateY(0);\n }\n 100% {\n opacity: 0;\n transform: translateY(-12px);\n filter: blur(2px);\n }\n }\n\n @keyframes draw0 {\n 0%,\n 25% {\n stroke-dashoffset: -29.6;\n }\n 25%,\n 50% {\n stroke-dashoffset: 0;\n }\n 50%,\n 75% {\n stroke-dashoffset: 0;\n }\n 75%,\n 100% {\n stroke-dashoffset: 29.6;\n }\n }\n\n @keyframes draw1 {\n 0%,\n 20% {\n stroke-dashoffset: -11.6;\n }\n 20%,\n 50% {\n stroke-dashoffset: 0;\n }\n 50%,\n 75% {\n stroke-dashoffset: 0;\n }\n 75%,\n 100% {\n stroke-dashoffset: 11.6;\n }\n }\n\n @media (prefers-reduced-motion) {\n [data-issues-count-exit],\n [data-issues-count-enter],\n [data-issues-count-plural] {\n animation-duration: 0ms !important;\n }\n }\n `}\n </style>\n <div\n data-next-badge\n data-error={hasError}\n data-error-expanded={isErrorExpanded}\n data-animate={newErrorDetected}\n style={{\n width: hasError && width > SIZE ? width : SIZE,\n }}\n >\n <div ref={ref}>\n {/* Children */}\n <button\n ref={mergeRefs(triggerRef, propRef)}\n data-next-mark\n data-next-mark-loading={isLoading}\n onClick={onTriggerClick}\n {...props}\n >\n <NextMark isLoading={isLoading} />\n </button>\n {isErrorExpanded && (\n <div data-issues>\n <button\n data-issues-open\n aria-label=\"Open issues overlay\"\n onClick={openErrorOverlay}\n >\n <AnimateCount\n // Used the key to force a re-render when the count changes.\n key={issueCount}\n animate={newErrorDetected}\n data-issues-count-animation\n >\n {issueCount}\n </AnimateCount>{' '}\n <div>\n Issue\n {issueCount > 1 && (\n <span aria-hidden data-issues-count-plural>\n s\n </span>\n )}\n </div>\n </button>\n <button\n data-issues-collapse\n aria-label=\"Collapse issues badge\"\n onClick={() => {\n setIsErrorExpanded(false)\n // Move focus to the trigger to prevent having it stuck on this element\n triggerRef.current?.focus()\n }}\n >\n <Cross data-cross />\n </button>\n </div>\n )}\n </div>\n </div>\n <div aria-hidden data-dot />\n </div>\n )\n})\n\nfunction AnimateCount({\n children: count,\n animate = true,\n ...props\n}: {\n children: number\n animate: boolean\n}) {\n return (\n <div {...props} data-animate={animate}>\n <div aria-hidden data-issues-count-exit>\n {count - 1}\n </div>\n <div data-issues-count data-issues-count-enter>\n {count}\n </div>\n </div>\n )\n}\n\nfunction useMeasureWidth(ref: React.RefObject<HTMLDivElement | null>) {\n const [width, setWidth] = useState<number>(0)\n\n useEffect(() => {\n const el = ref.current\n\n if (!el) {\n return\n }\n\n const observer = new ResizeObserver(() => {\n const { width: w } = el.getBoundingClientRect()\n setWidth(w)\n })\n\n observer.observe(el)\n return () => observer.disconnect()\n }, [ref])\n\n return width\n}\n\nfunction NextMark({ isLoading }: { isLoading?: boolean }) {\n return (\n <svg\n width=\"40\"\n height=\"40\"\n viewBox=\"0 0 40 40\"\n fill=\"none\"\n data-next-mark-loading={isLoading}\n >\n <g transform=\"translate(8.5, 13)\">\n <path\n className={isLoading ? 'path0' : 'paused'}\n d=\"M13.3 15.2 L2.34 1 V12.6\"\n fill=\"none\"\n stroke=\"url(#paint0_linear_1357_10853)\"\n strokeWidth=\"1.86\"\n mask=\"url(#mask0)\"\n strokeDasharray=\"29.6\"\n strokeDashoffset=\"29.6\"\n />\n <path\n className={isLoading ? 'path1' : 'paused'}\n d=\"M11.825 1.5 V13.1\"\n strokeWidth=\"1.86\"\n stroke=\"url(#paint1_linear_1357_10853)\"\n strokeDasharray=\"11.6\"\n strokeDashoffset=\"11.6\"\n />\n </g>\n <defs>\n <linearGradient\n id=\"paint0_linear_1357_10853\"\n x1=\"9.95555\"\n y1=\"11.1226\"\n x2=\"15.4778\"\n y2=\"17.9671\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop stopColor=\"white\" />\n <stop offset=\"0.604072\" stopColor=\"white\" stopOpacity=\"0\" />\n <stop offset=\"1\" stopColor=\"white\" stopOpacity=\"0\" />\n </linearGradient>\n <linearGradient\n id=\"paint1_linear_1357_10853\"\n x1=\"11.8222\"\n y1=\"1.40039\"\n x2=\"11.791\"\n y2=\"9.62542\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop stopColor=\"white\" />\n <stop offset=\"1\" stopColor=\"white\" stopOpacity=\"0\" />\n </linearGradient>\n <mask id=\"mask0\">\n <rect width=\"100%\" height=\"100%\" fill=\"white\" />\n <rect width=\"5\" height=\"1.5\" fill=\"black\" />\n </mask>\n </defs>\n </svg>\n )\n}\n\nexport function Cross(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M3.08889 11.8384L2.62486 12.3024L1.69678 11.3744L2.16082 10.9103L6.07178 6.99937L2.16082 3.08841L1.69678 2.62437L2.62486 1.69629L3.08889 2.16033L6.99986 6.07129L10.9108 2.16033L11.3749 1.69629L12.3029 2.62437L11.8389 3.08841L7.92793 6.99937L11.8389 10.9103L12.3029 11.3744L11.3749 12.3024L10.9108 11.8384L6.99986 7.92744L3.08889 11.8384Z\"\n fill=\"currentColor\"\n />\n </svg>\n )\n}\n"],"names":["Cross","NextLogo","SIZE","SHORT_DURATION_MS","useAnimated","dep","config","shouldSkip","_shouldSkip","animationDuration","shouldSkipRef","useRef","animatedDep","setAnimatedDep","useState","isInitialRef","useEffect","current","timeoutId","setTimeout","clearTimeout","forwardRef","propRef","issueCount","isDevBuilding","isDevRendering","onTriggerClick","openErrorOverlay","props","hasError","isErrorExpanded","setIsErrorExpanded","newErrorDetected","count","triggerRef","ref","width","useMeasureWidth","isLoading","useMinimumLoadingTimeMultiple","div","data-next-badge-root","style","css","data-next-badge","data-error","data-error-expanded","data-animate","button","mergeRefs","data-next-mark","data-next-mark-loading","onClick","NextMark","data-issues","data-issues-open","aria-label","AnimateCount","animate","data-issues-count-animation","span","aria-hidden","data-issues-count-plural","data-issues-collapse","focus","data-cross","data-dot","children","data-issues-count-exit","data-issues-count","data-issues-count-enter","setWidth","el","observer","ResizeObserver","w","getBoundingClientRect","observe","disconnect","svg","height","viewBox","fill","g","transform","path","className","d","stroke","strokeWidth","mask","strokeDasharray","strokeDashoffset","defs","linearGradient","id","x1","y1","x2","y2","gradientUnits","stop","stopColor","offset","stopOpacity","rect","xmlns","fillRule","clipRule"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../../../../../../src/client/components/react-dev-overlay/_experimental/internal/components/errors/dev-tools-indicator/internal/next-logo.tsx"],"sourcesContent":["import { forwardRef, useEffect, useRef, useState } from 'react'\nimport { noop as css } from '../../../../../../internal/helpers/noop-template'\nimport mergeRefs from '../../../../helpers/merge-refs'\nimport { useMinimumLoadingTimeMultiple } from './use-minimum-loading-time-multiple'\n\ninterface Props extends React.ComponentProps<'button'> {\n issueCount: number\n isDevBuilding: boolean\n isDevRendering: boolean\n isBuildError: boolean\n onTriggerClick: () => void\n openErrorOverlay: () => void\n}\n\nconst SIZE = 36\nconst SHORT_DURATION_MS = 150\n\n/**\n * A hook that creates an animated state based on changes to a dependency.\n * When the dependency changes and passes the shouldSkip check, it triggers\n * an animation state that lasts for the specified duration.\n *\n * @param dep The dependency to watch for changes\n * @param config Configuration object containing:\n * - shouldSkip: Function to determine if animation should be skipped\n * - animationDuration: Duration of the animation in milliseconds\n * @returns Boolean indicating if animation is currently active\n */\nconst useAnimated = <T,>(\n dep: T,\n config: { shouldSkip: (dep: T) => boolean; animationDuration: number }\n) => {\n const { shouldSkip: _shouldSkip, animationDuration } = config\n const shouldSkipRef = useRef(_shouldSkip) // ensure stable reference in case it's not\n\n const [animatedDep, setAnimatedDep] = useState(false)\n const isInitialRef = useRef(true)\n\n useEffect(() => {\n if (isInitialRef.current) {\n isInitialRef.current = false\n return\n }\n\n if (shouldSkipRef.current(dep)) {\n return\n }\n\n setAnimatedDep(true)\n const timeoutId = setTimeout(() => {\n setAnimatedDep(false)\n }, animationDuration)\n\n return () => clearTimeout(timeoutId)\n }, [dep, animationDuration])\n\n return animatedDep\n}\n\nexport const NextLogo = forwardRef(function NextLogo(\n {\n disabled,\n issueCount,\n isDevBuilding,\n isDevRendering,\n isBuildError,\n onTriggerClick,\n openErrorOverlay,\n ...props\n }: Props,\n propRef: React.Ref<HTMLButtonElement>\n) {\n const hasError = issueCount > 0\n const [isErrorExpanded, setIsErrorExpanded] = useState(hasError)\n const newErrorDetected = useAnimated(issueCount, {\n shouldSkip: (count) => count === 0,\n animationDuration: SHORT_DURATION_MS,\n })\n\n const triggerRef = useRef<HTMLButtonElement | null>(null)\n const ref = useRef<HTMLDivElement | null>(null)\n const width = useMeasureWidth(ref)\n\n const isLoading = useMinimumLoadingTimeMultiple(\n isDevBuilding || isDevRendering\n )\n\n useEffect(() => {\n setIsErrorExpanded(hasError)\n }, [hasError])\n\n return (\n <div\n data-next-badge-root\n style={\n {\n '--size': `${SIZE}px`,\n '--duration-short': `${SHORT_DURATION_MS}ms`,\n // if the indicator is disabled and there are no errors, hide the badge\n display: disabled && !hasError ? 'none' : 'block',\n } as React.CSSProperties\n }\n >\n {/* Styles */}\n <style>\n {css`\n [data-next-badge-root] {\n --timing: cubic-bezier(0.23, 0.88, 0.26, 0.92);\n --duration-long: 250ms;\n --color-outer-border: #171717;\n --color-inner-border: hsla(0, 0%, 100%, 0.14);\n --color-hover-alpha-subtle: hsla(0, 0%, 100%, 0.13);\n --color-hover-alpha-error: hsla(0, 0%, 100%, 0.2);\n --color-hover-alpha-error-2: hsla(0, 0%, 100%, 0.25);\n --padding: 2px;\n --mark-size: calc(var(--size) - var(--padding) * 2);\n\n --focus-color: var(--color-blue-800);\n --focus-ring: 2px solid var(--focus-color);\n\n &:has([data-next-badge][data-error='true']) {\n --focus-color: #fff;\n }\n }\n\n [data-disabled-icon] {\n display: flex;\n align-items: center;\n justify-content: center;\n padding-right: 4px;\n }\n\n [data-next-badge] {\n -webkit-font-smoothing: antialiased;\n width: var(--size);\n height: var(--size);\n display: flex;\n align-items: center;\n position: relative;\n background: rgba(0, 0, 0, 0.8);\n box-shadow:\n 0 0 0 1px var(--color-outer-border),\n inset 0 0 0 1px var(--color-inner-border),\n 0px 16px 32px -8px rgba(0, 0, 0, 0.24);\n backdrop-filter: blur(48px);\n border-radius: 9999px;\n user-select: none;\n cursor: pointer;\n scale: 1;\n overflow: hidden;\n will-change: scale, box-shadow, width, background;\n transition:\n scale var(--duration-short) var(--timing),\n width var(--duration-long) var(--timing),\n box-shadow var(--duration-long) var(--timing),\n background var(--duration-short) ease;\n\n &:active[data-error='false'] {\n scale: 0.95;\n }\n\n &[data-animate='true']:not(:hover) {\n scale: 1.02;\n }\n\n &[data-error='false']:has([data-next-mark]:focus-visible) {\n outline: var(--focus-ring);\n outline-offset: 3px;\n }\n\n &[data-error='true'] {\n background: #ca2a30;\n --color-inner-border: #e5484d;\n\n [data-next-mark] {\n background: var(--color-hover-alpha-error);\n outline-offset: 0px;\n\n &:focus-visible {\n outline: var(--focus-ring);\n outline-offset: -1px;\n }\n\n &:hover {\n background: var(--color-hover-alpha-error-2);\n }\n }\n }\n\n &[data-error-expanded='false'][data-error='true'] ~ [data-dot] {\n scale: 1;\n }\n\n > div {\n display: flex;\n }\n }\n\n [data-issues-collapse]:focus-visible {\n outline: var(--focus-ring);\n }\n\n [data-issues]:has([data-issues-open]:focus-visible) {\n outline: var(--focus-ring);\n outline-offset: -1px;\n }\n\n [data-dot] {\n content: '';\n width: 8px;\n height: 8px;\n background: #fff;\n box-shadow: 0 0 0 1px var(--color-outer-border);\n border-radius: 50%;\n position: absolute;\n top: 2px;\n right: 0px;\n scale: 0;\n pointer-events: none;\n transition: scale 200ms var(--timing);\n transition-delay: var(--duration-short);\n }\n\n [data-issues] {\n display: flex;\n gap: var(--padding);\n align-items: center;\n padding-left: 8px;\n padding-right: ${disabled || isBuildError\n ? '8px'\n : 'calc(var(--padding) * 2)'};\n height: 32px;\n margin: 0 var(--padding);\n border-radius: 9999px;\n transition: background var(--duration-short) ease;\n\n &:has([data-issues-open]:hover) {\n background: var(--color-hover-alpha-error);\n }\n\n [data-cross] {\n translate: 0px -1px;\n }\n }\n\n [data-issues-open] {\n font-size: 13px;\n color: white;\n width: fit-content;\n height: 100%;\n display: flex;\n gap: 2px;\n align-items: center;\n margin: 0;\n line-height: 36px;\n font-weight: 500;\n z-index: 2;\n white-space: nowrap;\n\n &:focus-visible {\n outline: 0;\n }\n }\n\n [data-issues-collapse] {\n width: 24px;\n height: 24px;\n border-radius: 9999px;\n transition: background var(--duration-short) ease;\n\n &:hover {\n background: var(--color-hover-alpha-error);\n }\n }\n\n [data-cross] {\n color: #fff;\n }\n\n [data-next-mark] {\n width: var(--mark-size);\n height: var(--mark-size);\n margin-left: var(--padding);\n display: flex;\n align-items: center;\n border-radius: 9999px;\n transition: background var(--duration-long) var(--timing);\n\n &:focus-visible {\n outline: 0;\n }\n\n &:hover {\n background: var(--color-hover-alpha-subtle);\n }\n\n svg {\n flex-shrink: 0;\n }\n }\n\n [data-issues-count-animation] {\n display: grid;\n place-items: center center;\n font-variant-numeric: tabular-nums;\n\n &[data-animate='false'] {\n [data-issues-count-exit],\n [data-issues-count-enter] {\n animation-duration: 0ms;\n }\n }\n\n > * {\n grid-area: 1 / 1;\n }\n\n [data-issues-count-exit] {\n animation: fadeOut 300ms var(--timing) forwards;\n }\n\n [data-issues-count-enter] {\n animation: fadeIn 300ms var(--timing) forwards;\n }\n }\n\n [data-issues-count-plural] {\n display: inline-block;\n animation: fadeIn 300ms var(--timing) forwards;\n }\n\n .path0 {\n animation: draw0 1.5s ease-in-out infinite;\n }\n\n .path1 {\n animation: draw1 1.5s ease-out infinite;\n animation-delay: 0.3s;\n }\n\n .paused {\n stroke-dashoffset: 0;\n }\n\n @keyframes fadeIn {\n 0% {\n opacity: 0;\n filter: blur(2px);\n transform: translateY(8px);\n }\n 100% {\n opacity: 1;\n filter: blur(0px);\n transform: translateY(0);\n }\n }\n\n @keyframes fadeOut {\n 0% {\n opacity: 1;\n filter: blur(0px);\n transform: translateY(0);\n }\n 100% {\n opacity: 0;\n transform: translateY(-12px);\n filter: blur(2px);\n }\n }\n\n @keyframes draw0 {\n 0%,\n 25% {\n stroke-dashoffset: -29.6;\n }\n 25%,\n 50% {\n stroke-dashoffset: 0;\n }\n 50%,\n 75% {\n stroke-dashoffset: 0;\n }\n 75%,\n 100% {\n stroke-dashoffset: 29.6;\n }\n }\n\n @keyframes draw1 {\n 0%,\n 20% {\n stroke-dashoffset: -11.6;\n }\n 20%,\n 50% {\n stroke-dashoffset: 0;\n }\n 50%,\n 75% {\n stroke-dashoffset: 0;\n }\n 75%,\n 100% {\n stroke-dashoffset: 11.6;\n }\n }\n\n @media (prefers-reduced-motion) {\n [data-issues-count-exit],\n [data-issues-count-enter],\n [data-issues-count-plural] {\n animation-duration: 0ms !important;\n }\n }\n `}\n </style>\n <div\n data-next-badge\n data-error={hasError}\n data-error-expanded={isErrorExpanded}\n data-animate={newErrorDetected}\n style={{\n width: hasError && width > SIZE ? width : SIZE,\n }}\n >\n <div ref={ref}>\n {/* Children */}\n {!disabled && (\n <button\n ref={mergeRefs(triggerRef, propRef)}\n data-next-mark\n data-next-mark-loading={isLoading}\n onClick={onTriggerClick}\n {...props}\n >\n <NextMark isLoading={isLoading} />\n </button>\n )}\n {isErrorExpanded && (\n <div data-issues>\n <button\n data-issues-open\n aria-label=\"Open issues overlay\"\n onClick={openErrorOverlay}\n >\n {disabled && (\n <div data-disabled-icon>\n <Warning />\n </div>\n )}\n <AnimateCount\n // Used the key to force a re-render when the count changes.\n key={issueCount}\n animate={newErrorDetected}\n data-issues-count-animation\n >\n {issueCount}\n </AnimateCount>{' '}\n <div>\n Issue\n {issueCount > 1 && (\n <span aria-hidden data-issues-count-plural>\n s\n </span>\n )}\n </div>\n </button>\n {!disabled && !isBuildError && (\n <button\n data-issues-collapse\n aria-label=\"Collapse issues badge\"\n onClick={() => {\n setIsErrorExpanded(false)\n // Move focus to the trigger to prevent having it stuck on this element\n triggerRef.current?.focus()\n }}\n >\n <Cross data-cross />\n </button>\n )}\n </div>\n )}\n </div>\n </div>\n <div aria-hidden data-dot />\n </div>\n )\n})\n\nfunction AnimateCount({\n children: count,\n animate = true,\n ...props\n}: {\n children: number\n animate: boolean\n}) {\n return (\n <div {...props} data-animate={animate}>\n <div aria-hidden data-issues-count-exit>\n {count - 1}\n </div>\n <div data-issues-count data-issues-count-enter>\n {count}\n </div>\n </div>\n )\n}\n\nfunction useMeasureWidth(ref: React.RefObject<HTMLDivElement | null>) {\n const [width, setWidth] = useState<number>(0)\n\n useEffect(() => {\n const el = ref.current\n\n if (!el) {\n return\n }\n\n const observer = new ResizeObserver(() => {\n const { width: w } = el.getBoundingClientRect()\n setWidth(w)\n })\n\n observer.observe(el)\n return () => observer.disconnect()\n }, [ref])\n\n return width\n}\n\nfunction NextMark({ isLoading }: { isLoading?: boolean }) {\n return (\n <svg\n width=\"40\"\n height=\"40\"\n viewBox=\"0 0 40 40\"\n fill=\"none\"\n data-next-mark-loading={isLoading}\n >\n <g transform=\"translate(8.5, 13)\">\n <path\n className={isLoading ? 'path0' : 'paused'}\n d=\"M13.3 15.2 L2.34 1 V12.6\"\n fill=\"none\"\n stroke=\"url(#paint0_linear_1357_10853)\"\n strokeWidth=\"1.86\"\n mask=\"url(#mask0)\"\n strokeDasharray=\"29.6\"\n strokeDashoffset=\"29.6\"\n />\n <path\n className={isLoading ? 'path1' : 'paused'}\n d=\"M11.825 1.5 V13.1\"\n strokeWidth=\"1.86\"\n stroke=\"url(#paint1_linear_1357_10853)\"\n strokeDasharray=\"11.6\"\n strokeDashoffset=\"11.6\"\n />\n </g>\n <defs>\n <linearGradient\n id=\"paint0_linear_1357_10853\"\n x1=\"9.95555\"\n y1=\"11.1226\"\n x2=\"15.4778\"\n y2=\"17.9671\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop stopColor=\"white\" />\n <stop offset=\"0.604072\" stopColor=\"white\" stopOpacity=\"0\" />\n <stop offset=\"1\" stopColor=\"white\" stopOpacity=\"0\" />\n </linearGradient>\n <linearGradient\n id=\"paint1_linear_1357_10853\"\n x1=\"11.8222\"\n y1=\"1.40039\"\n x2=\"11.791\"\n y2=\"9.62542\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop stopColor=\"white\" />\n <stop offset=\"1\" stopColor=\"white\" stopOpacity=\"0\" />\n </linearGradient>\n <mask id=\"mask0\">\n <rect width=\"100%\" height=\"100%\" fill=\"white\" />\n <rect width=\"5\" height=\"1.5\" fill=\"black\" />\n </mask>\n </defs>\n </svg>\n )\n}\n\nfunction Warning() {\n return (\n <svg\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M3.98071 1.125L1.125 3.98071L1.125 8.01929L3.98071 10.875H8.01929L10.875 8.01929V3.98071L8.01929 1.125H3.98071ZM3.82538 0C3.62647 0 3.4357 0.0790176 3.29505 0.21967L0.21967 3.29505C0.0790176 3.4357 0 3.62647 0 3.82538V8.17462C0 8.37353 0.0790178 8.5643 0.21967 8.70495L3.29505 11.7803C3.4357 11.921 3.62647 12 3.82538 12H8.17462C8.37353 12 8.5643 11.921 8.70495 11.7803L11.7803 8.70495C11.921 8.5643 12 8.37353 12 8.17462V3.82538C12 3.62647 11.921 3.4357 11.7803 3.29505L8.70495 0.21967C8.5643 0.0790177 8.37353 0 8.17462 0H3.82538ZM6.5625 2.8125V3.375V6V6.5625H5.4375V6V3.375V2.8125H6.5625ZM6 9C6.41421 9 6.75 8.66421 6.75 8.25C6.75 7.83579 6.41421 7.5 6 7.5C5.58579 7.5 5.25 7.83579 5.25 8.25C5.25 8.66421 5.58579 9 6 9Z\"\n fill=\"#EAEAEA\"\n />\n </svg>\n )\n}\n\nexport function Cross(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M3.08889 11.8384L2.62486 12.3024L1.69678 11.3744L2.16082 10.9103L6.07178 6.99937L2.16082 3.08841L1.69678 2.62437L2.62486 1.69629L3.08889 2.16033L6.99986 6.07129L10.9108 2.16033L11.3749 1.69629L12.3029 2.62437L11.8389 3.08841L7.92793 6.99937L11.8389 10.9103L12.3029 11.3744L11.3749 12.3024L10.9108 11.8384L6.99986 7.92744L3.08889 11.8384Z\"\n fill=\"currentColor\"\n />\n </svg>\n )\n}\n"],"names":["Cross","NextLogo","SIZE","SHORT_DURATION_MS","useAnimated","dep","config","shouldSkip","_shouldSkip","animationDuration","shouldSkipRef","useRef","animatedDep","setAnimatedDep","useState","isInitialRef","useEffect","current","timeoutId","setTimeout","clearTimeout","forwardRef","propRef","disabled","issueCount","isDevBuilding","isDevRendering","isBuildError","onTriggerClick","openErrorOverlay","props","hasError","isErrorExpanded","setIsErrorExpanded","newErrorDetected","count","triggerRef","ref","width","useMeasureWidth","isLoading","useMinimumLoadingTimeMultiple","div","data-next-badge-root","style","display","css","data-next-badge","data-error","data-error-expanded","data-animate","button","mergeRefs","data-next-mark","data-next-mark-loading","onClick","NextMark","data-issues","data-issues-open","aria-label","data-disabled-icon","Warning","AnimateCount","animate","data-issues-count-animation","span","aria-hidden","data-issues-count-plural","data-issues-collapse","focus","data-cross","data-dot","children","data-issues-count-exit","data-issues-count","data-issues-count-enter","setWidth","el","observer","ResizeObserver","w","getBoundingClientRect","observe","disconnect","svg","height","viewBox","fill","g","transform","path","className","d","stroke","strokeWidth","mask","strokeDasharray","strokeDashoffset","defs","linearGradient","id","x1","y1","x2","y2","gradientUnits","stop","stopColor","offset","stopOpacity","rect","xmlns","fillRule","clipRule"],"mappings":"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"}
@@ -25,7 +25,7 @@ const _jsxruntime = require("react/jsx-runtime");
25
25
  const _nooptemplate = require("../../../helpers/noop-template");
26
26
  function _templateObject() {
27
27
  const data = _tagged_template_literal_loose._([
28
- "\n .nextjs__container_errors_desc {\n margin: 0;\n margin-left: var(--size-1);\n color: var(--color-red-900);\n font-weight: 500;\n font-size: var(--size-font);\n letter-spacing: -0.32px;\n line-height: var(--size-6);\n white-space: pre-wrap;\n }\n"
28
+ "\n .nextjs__container_errors_desc {\n margin: 0;\n margin-left: var(--size-1);\n color: var(--color-red-900);\n font-weight: 500;\n font-size: var(--size-font);\n letter-spacing: -0.32px;\n line-height: var(--size-6);\n overflow-wrap: break-word;\n white-space: pre-wrap;\n }\n"
29
29
  ]);
30
30
  _templateObject = function() {
31
31
  return data;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../../../src/client/components/react-dev-overlay/_experimental/internal/components/errors/error-message/error-message.tsx"],"sourcesContent":["import { noop as css } from '../../../helpers/noop-template'\n\nexport type ErrorMessageType = React.ReactNode\n\ntype ErrorMessageProps = {\n errorMessage: ErrorMessageType\n}\n\nexport function ErrorMessage({ errorMessage }: ErrorMessageProps) {\n return (\n <p\n id=\"nextjs__container_errors_desc\"\n className=\"nextjs__container_errors_desc\"\n >\n {errorMessage}\n </p>\n )\n}\n\nexport const styles = css`\n .nextjs__container_errors_desc {\n margin: 0;\n margin-left: var(--size-1);\n color: var(--color-red-900);\n font-weight: 500;\n font-size: var(--size-font);\n letter-spacing: -0.32px;\n line-height: var(--size-6);\n white-space: pre-wrap;\n }\n`\n"],"names":["ErrorMessage","styles","errorMessage","p","id","className","css"],"mappings":";;;;;;;;;;;;;;;IAQgBA,YAAY;eAAZA;;IAWHC,MAAM;eAANA;;;;;8BAnBe;;;;;;;;;;AAQrB,SAASD,aAAa,KAAmC;IAAnC,IAAA,EAAEE,YAAY,EAAqB,GAAnC;IAC3B,qBACE,qBAACC;QACCC,IAAG;QACHC,WAAU;kBAETH;;AAGP;AAEO,MAAMD,aAASK,kBAAG"}
1
+ {"version":3,"sources":["../../../../../../../../../src/client/components/react-dev-overlay/_experimental/internal/components/errors/error-message/error-message.tsx"],"sourcesContent":["import { noop as css } from '../../../helpers/noop-template'\n\nexport type ErrorMessageType = React.ReactNode\n\ntype ErrorMessageProps = {\n errorMessage: ErrorMessageType\n}\n\nexport function ErrorMessage({ errorMessage }: ErrorMessageProps) {\n return (\n <p\n id=\"nextjs__container_errors_desc\"\n className=\"nextjs__container_errors_desc\"\n >\n {errorMessage}\n </p>\n )\n}\n\nexport const styles = css`\n .nextjs__container_errors_desc {\n margin: 0;\n margin-left: var(--size-1);\n color: var(--color-red-900);\n font-weight: 500;\n font-size: var(--size-font);\n letter-spacing: -0.32px;\n line-height: var(--size-6);\n overflow-wrap: break-word;\n white-space: pre-wrap;\n }\n`\n"],"names":["ErrorMessage","styles","errorMessage","p","id","className","css"],"mappings":";;;;;;;;;;;;;;;IAQgBA,YAAY;eAAZA;;IAWHC,MAAM;eAANA;;;;;8BAnBe;;;;;;;;;;AAQrB,SAASD,aAAa,KAAmC;IAAnC,IAAA,EAAEE,YAAY,EAAqB,GAAnC;IAC3B,qBACE,qBAACC;QACCC,IAAG;QACHC,WAAU;kBAETH;;AAGP;AAEO,MAAMD,aAASK,kBAAG"}
@@ -6,9 +6,9 @@ export interface ErrorBaseProps {
6
6
  isTurbopack: boolean;
7
7
  versionInfo: OverlayState['versionInfo'];
8
8
  }
9
- export declare function ErrorOverlay({ state, readyErrors, isErrorOverlayOpen, setIsErrorOverlayOpen, }: {
9
+ export declare function ErrorOverlay({ state, runtimeErrors, isErrorOverlayOpen, setIsErrorOverlayOpen, }: {
10
10
  state: OverlayState;
11
- readyErrors: ReadyRuntimeError[];
11
+ runtimeErrors: ReadyRuntimeError[];
12
12
  isErrorOverlayOpen: boolean;
13
13
  setIsErrorOverlayOpen: (value: boolean) => void;
14
14
  }): import("react/jsx-runtime").JSX.Element | null;
@@ -15,7 +15,7 @@ const _rootlayoutmissingtagserror = require("../../../container/root-layout-miss
15
15
  const _usedelayedrender = require("../../../hooks/use-delayed-render");
16
16
  const transitionDurationMs = 200;
17
17
  function ErrorOverlay(param) {
18
- let { state, readyErrors, isErrorOverlayOpen, setIsErrorOverlayOpen } = param;
18
+ let { state, runtimeErrors, isErrorOverlayOpen, setIsErrorOverlayOpen } = param;
19
19
  var _state_rootLayoutMissingTags;
20
20
  const isTurbopack = !!process.env.TURBOPACK;
21
21
  // This hook lets us do an exit animation before unmounting the component
@@ -45,7 +45,7 @@ function ErrorOverlay(param) {
45
45
  });
46
46
  }
47
47
  // No Runtime Errors.
48
- if (!readyErrors.length) {
48
+ if (!runtimeErrors.length) {
49
49
  return null;
50
50
  }
51
51
  if (!mounted) {
@@ -54,7 +54,7 @@ function ErrorOverlay(param) {
54
54
  return /*#__PURE__*/ (0, _jsxruntime.jsx)(_errors.Errors, {
55
55
  ...commonProps,
56
56
  debugInfo: state.debugInfo,
57
- readyErrors: readyErrors,
57
+ runtimeErrors: runtimeErrors,
58
58
  onClose: ()=>{
59
59
  setIsErrorOverlayOpen(false);
60
60
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../../../src/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay/error-overlay.tsx"],"sourcesContent":["import type { OverlayState } from '../../../../../shared'\n\nimport { BuildError } from '../../../container/build-error'\nimport { Errors } from '../../../container/errors'\nimport { RootLayoutMissingTagsError } from '../../../container/root-layout-missing-tags-error'\nimport { useDelayedRender } from '../../../hooks/use-delayed-render'\nimport type { ReadyRuntimeError } from '../../../../../internal/helpers/get-error-by-type'\n\nconst transitionDurationMs = 200\n\nexport interface ErrorBaseProps {\n rendered: boolean\n transitionDurationMs: number\n isTurbopack: boolean\n versionInfo: OverlayState['versionInfo']\n}\n\nexport function ErrorOverlay({\n state,\n readyErrors,\n isErrorOverlayOpen,\n setIsErrorOverlayOpen,\n}: {\n state: OverlayState\n readyErrors: ReadyRuntimeError[]\n isErrorOverlayOpen: boolean\n setIsErrorOverlayOpen: (value: boolean) => void\n}) {\n const isTurbopack = !!process.env.TURBOPACK\n\n // This hook lets us do an exit animation before unmounting the component\n const { mounted, rendered } = useDelayedRender(isErrorOverlayOpen, {\n exitDelay: transitionDurationMs,\n })\n\n const commonProps = {\n rendered,\n transitionDurationMs,\n isTurbopack,\n versionInfo: state.versionInfo,\n }\n\n if (!!state.rootLayoutMissingTags?.length) {\n return (\n <RootLayoutMissingTagsError\n {...commonProps}\n // This is not a runtime error, forcedly display error overlay\n rendered\n missingTags={state.rootLayoutMissingTags}\n />\n )\n }\n\n if (state.buildError !== null) {\n return (\n <BuildError\n {...commonProps}\n message={state.buildError}\n // This is not a runtime error, forcedly display error overlay\n rendered\n />\n )\n }\n\n // No Runtime Errors.\n if (!readyErrors.length) {\n return null\n }\n\n if (!mounted) {\n return null\n }\n\n return (\n <Errors\n {...commonProps}\n debugInfo={state.debugInfo}\n readyErrors={readyErrors}\n onClose={() => {\n setIsErrorOverlayOpen(false)\n }}\n />\n )\n}\n"],"names":["ErrorOverlay","transitionDurationMs","state","readyErrors","isErrorOverlayOpen","setIsErrorOverlayOpen","isTurbopack","process","env","TURBOPACK","mounted","rendered","useDelayedRender","exitDelay","commonProps","versionInfo","rootLayoutMissingTags","length","RootLayoutMissingTagsError","missingTags","buildError","BuildError","message","Errors","debugInfo","onClose"],"mappings":";;;;+BAiBgBA;;;eAAAA;;;;4BAfW;wBACJ;4CACoB;kCACV;AAGjC,MAAMC,uBAAuB;AAStB,SAASD,aAAa,KAU5B;IAV4B,IAAA,EAC3BE,KAAK,EACLC,WAAW,EACXC,kBAAkB,EAClBC,qBAAqB,EAMtB,GAV4B;QAyBrBH;IAdN,MAAMI,cAAc,CAAC,CAACC,QAAQC,GAAG,CAACC,SAAS;IAE3C,yEAAyE;IACzE,MAAM,EAAEC,OAAO,EAAEC,QAAQ,EAAE,GAAGC,IAAAA,kCAAgB,EAACR,oBAAoB;QACjES,WAAWZ;IACb;IAEA,MAAMa,cAAc;QAClBH;QACAV;QACAK;QACAS,aAAab,MAAMa,WAAW;IAChC;IAEA,IAAI,CAAC,GAACb,+BAAAA,MAAMc,qBAAqB,qBAA3Bd,6BAA6Be,MAAM,GAAE;QACzC,qBACE,qBAACC,sDAA0B;YACxB,GAAGJ,WAAW;YACf,8DAA8D;YAC9DH,QAAQ;YACRQ,aAAajB,MAAMc,qBAAqB;;IAG9C;IAEA,IAAId,MAAMkB,UAAU,KAAK,MAAM;QAC7B,qBACE,qBAACC,sBAAU;YACR,GAAGP,WAAW;YACfQ,SAASpB,MAAMkB,UAAU;YACzB,8DAA8D;YAC9DT,QAAQ;;IAGd;IAEA,qBAAqB;IACrB,IAAI,CAACR,YAAYc,MAAM,EAAE;QACvB,OAAO;IACT;IAEA,IAAI,CAACP,SAAS;QACZ,OAAO;IACT;IAEA,qBACE,qBAACa,cAAM;QACJ,GAAGT,WAAW;QACfU,WAAWtB,MAAMsB,SAAS;QAC1BrB,aAAaA;QACbsB,SAAS;YACPpB,sBAAsB;QACxB;;AAGN"}
1
+ {"version":3,"sources":["../../../../../../../../../src/client/components/react-dev-overlay/_experimental/internal/components/errors/error-overlay/error-overlay.tsx"],"sourcesContent":["import type { OverlayState } from '../../../../../shared'\n\nimport { BuildError } from '../../../container/build-error'\nimport { Errors } from '../../../container/errors'\nimport { RootLayoutMissingTagsError } from '../../../container/root-layout-missing-tags-error'\nimport { useDelayedRender } from '../../../hooks/use-delayed-render'\nimport type { ReadyRuntimeError } from '../../../../../internal/helpers/get-error-by-type'\n\nconst transitionDurationMs = 200\n\nexport interface ErrorBaseProps {\n rendered: boolean\n transitionDurationMs: number\n isTurbopack: boolean\n versionInfo: OverlayState['versionInfo']\n}\n\nexport function ErrorOverlay({\n state,\n runtimeErrors,\n isErrorOverlayOpen,\n setIsErrorOverlayOpen,\n}: {\n state: OverlayState\n runtimeErrors: ReadyRuntimeError[]\n isErrorOverlayOpen: boolean\n setIsErrorOverlayOpen: (value: boolean) => void\n}) {\n const isTurbopack = !!process.env.TURBOPACK\n\n // This hook lets us do an exit animation before unmounting the component\n const { mounted, rendered } = useDelayedRender(isErrorOverlayOpen, {\n exitDelay: transitionDurationMs,\n })\n\n const commonProps = {\n rendered,\n transitionDurationMs,\n isTurbopack,\n versionInfo: state.versionInfo,\n }\n\n if (!!state.rootLayoutMissingTags?.length) {\n return (\n <RootLayoutMissingTagsError\n {...commonProps}\n // This is not a runtime error, forcedly display error overlay\n rendered\n missingTags={state.rootLayoutMissingTags}\n />\n )\n }\n\n if (state.buildError !== null) {\n return (\n <BuildError\n {...commonProps}\n message={state.buildError}\n // This is not a runtime error, forcedly display error overlay\n rendered\n />\n )\n }\n\n // No Runtime Errors.\n if (!runtimeErrors.length) {\n return null\n }\n\n if (!mounted) {\n return null\n }\n\n return (\n <Errors\n {...commonProps}\n debugInfo={state.debugInfo}\n runtimeErrors={runtimeErrors}\n onClose={() => {\n setIsErrorOverlayOpen(false)\n }}\n />\n )\n}\n"],"names":["ErrorOverlay","transitionDurationMs","state","runtimeErrors","isErrorOverlayOpen","setIsErrorOverlayOpen","isTurbopack","process","env","TURBOPACK","mounted","rendered","useDelayedRender","exitDelay","commonProps","versionInfo","rootLayoutMissingTags","length","RootLayoutMissingTagsError","missingTags","buildError","BuildError","message","Errors","debugInfo","onClose"],"mappings":";;;;+BAiBgBA;;;eAAAA;;;;4BAfW;wBACJ;4CACoB;kCACV;AAGjC,MAAMC,uBAAuB;AAStB,SAASD,aAAa,KAU5B;IAV4B,IAAA,EAC3BE,KAAK,EACLC,aAAa,EACbC,kBAAkB,EAClBC,qBAAqB,EAMtB,GAV4B;QAyBrBH;IAdN,MAAMI,cAAc,CAAC,CAACC,QAAQC,GAAG,CAACC,SAAS;IAE3C,yEAAyE;IACzE,MAAM,EAAEC,OAAO,EAAEC,QAAQ,EAAE,GAAGC,IAAAA,kCAAgB,EAACR,oBAAoB;QACjES,WAAWZ;IACb;IAEA,MAAMa,cAAc;QAClBH;QACAV;QACAK;QACAS,aAAab,MAAMa,WAAW;IAChC;IAEA,IAAI,CAAC,GAACb,+BAAAA,MAAMc,qBAAqB,qBAA3Bd,6BAA6Be,MAAM,GAAE;QACzC,qBACE,qBAACC,sDAA0B;YACxB,GAAGJ,WAAW;YACf,8DAA8D;YAC9DH,QAAQ;YACRQ,aAAajB,MAAMc,qBAAqB;;IAG9C;IAEA,IAAId,MAAMkB,UAAU,KAAK,MAAM;QAC7B,qBACE,qBAACC,sBAAU;YACR,GAAGP,WAAW;YACfQ,SAASpB,MAAMkB,UAAU;YACzB,8DAA8D;YAC9DT,QAAQ;;IAGd;IAEA,qBAAqB;IACrB,IAAI,CAACR,cAAcc,MAAM,EAAE;QACzB,OAAO;IACT;IAEA,IAAI,CAACP,SAAS;QACZ,OAAO;IACT;IAEA,qBACE,qBAACa,cAAM;QACJ,GAAGT,WAAW;QACfU,WAAWtB,MAAMsB,SAAS;QAC1BrB,eAAeA;QACfsB,SAAS;YACPpB,sBAAsB;QACxB;;AAGN"}
@@ -12,12 +12,12 @@ interface ErrorOverlayLayoutProps extends ErrorBaseProps {
12
12
  debugInfo?: DebugInfo;
13
13
  isBuildError?: boolean;
14
14
  onClose?: () => void;
15
- readyErrors?: ReadyRuntimeError[];
15
+ runtimeErrors?: ReadyRuntimeError[];
16
16
  activeIdx?: number;
17
17
  setActiveIndex?: (index: number) => void;
18
18
  footerMessage?: string;
19
19
  dialogResizerRef?: React.RefObject<HTMLDivElement | null>;
20
20
  }
21
- export declare function ErrorOverlayLayout({ errorMessage, errorType, children, errorCode, error, debugInfo, isBuildError, onClose, versionInfo, readyErrors, activeIdx, setActiveIndex, footerMessage, isTurbopack, dialogResizerRef, rendered, transitionDurationMs, }: ErrorOverlayLayoutProps): import("react/jsx-runtime").JSX.Element;
21
+ export declare function ErrorOverlayLayout({ errorMessage, errorType, children, errorCode, error, debugInfo, isBuildError, onClose, versionInfo, runtimeErrors, activeIdx, setActiveIndex, footerMessage, isTurbopack, dialogResizerRef, rendered, transitionDurationMs, }: ErrorOverlayLayoutProps): import("react/jsx-runtime").JSX.Element;
22
22
  export declare const styles: string;
23
23
  export {};