agmon 0.1.2 → 0.1.3

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.
Files changed (233) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/app-path-routes-manifest.json +7 -0
  3. package/.next/build/chunks/[root-of-the-server]__05i36w1t4lzaf._.js +502 -0
  4. package/.next/build/chunks/[root-of-the-server]__05i36w1t4lzaf._.js.map +11 -0
  5. package/.next/build/chunks/[root-of-the-server]__1kki86fknkq7y._.js +190 -0
  6. package/.next/build/chunks/[root-of-the-server]__1kki86fknkq7y._.js.map +8 -0
  7. package/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_1gfkiq9iz8yb8._.js +13 -0
  8. package/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_1gfkiq9iz8yb8._.js.map +5 -0
  9. package/.next/build/chunks/[turbopack]_runtime.js +1056 -0
  10. package/.next/build/chunks/[turbopack]_runtime.js.map +11 -0
  11. package/.next/build/chunks/node_modules_20v-8wlfss9m1._.js +7314 -0
  12. package/.next/build/chunks/node_modules_20v-8wlfss9m1._.js.map +47 -0
  13. package/.next/build/chunks/pool_entry-[turbopack-node]_transforms_postcss_ts_0tp-k2vy8nj6i._.js +6 -0
  14. package/.next/build/chunks/pool_entry-[turbopack-node]_transforms_postcss_ts_0tp-k2vy8nj6i._.js.map +5 -0
  15. package/.next/build/package.json +1 -0
  16. package/.next/build-manifest.json +54 -0
  17. package/.next/export-marker.json +6 -0
  18. package/.next/fallback-build-manifest.json +15 -0
  19. package/.next/images-manifest.json +68 -0
  20. package/.next/next-minimal-server.js.nft.json +1 -0
  21. package/.next/next-server.js.nft.json +1 -0
  22. package/.next/package.json +1 -0
  23. package/.next/prerender-manifest.json +97 -0
  24. package/.next/required-server-files.js +366 -0
  25. package/.next/required-server-files.json +366 -0
  26. package/.next/routes-manifest.json +75 -0
  27. package/.next/server/app/_global-error/page/app-paths-manifest.json +3 -0
  28. package/.next/server/app/_global-error/page/build-manifest.json +21 -0
  29. package/.next/server/app/_global-error/page/next-font-manifest.json +6 -0
  30. package/.next/server/app/_global-error/page/react-loadable-manifest.json +1 -0
  31. package/.next/server/app/_global-error/page/server-reference-manifest.json +4 -0
  32. package/.next/server/app/_global-error/page.js +10 -0
  33. package/.next/server/app/_global-error/page.js.map +5 -0
  34. package/.next/server/app/_global-error/page.js.nft.json +1 -0
  35. package/.next/server/app/_global-error/page_client-reference-manifest.js +3 -0
  36. package/.next/server/app/_global-error.html +1 -0
  37. package/.next/server/app/_global-error.meta +30 -0
  38. package/.next/server/app/_global-error.rsc +18 -0
  39. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +23 -0
  40. package/.next/server/app/_global-error.segments/_full.segment.rsc +18 -0
  41. package/.next/server/app/_global-error.segments/_tree.segment.rsc +2 -0
  42. package/.next/server/app/_not-found/page/app-paths-manifest.json +3 -0
  43. package/.next/server/app/_not-found/page/build-manifest.json +21 -0
  44. package/.next/server/app/_not-found/page/next-font-manifest.json +6 -0
  45. package/.next/server/app/_not-found/page/react-loadable-manifest.json +1 -0
  46. package/.next/server/app/_not-found/page/server-reference-manifest.json +4 -0
  47. package/.next/server/app/_not-found/page.js +12 -0
  48. package/.next/server/app/_not-found/page.js.map +5 -0
  49. package/.next/server/app/_not-found/page.js.nft.json +1 -0
  50. package/.next/server/app/_not-found/page_client-reference-manifest.js +3 -0
  51. package/.next/server/app/_not-found.html +1 -0
  52. package/.next/server/app/_not-found.meta +35 -0
  53. package/.next/server/app/_not-found.rsc +22 -0
  54. package/.next/server/app/_not-found.segments/_full.segment.rsc +22 -0
  55. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +28 -0
  56. package/.next/server/app/_not-found.segments/_tree.segment.rsc +4 -0
  57. package/.next/server/app/api/traces/stream/route/app-paths-manifest.json +3 -0
  58. package/.next/server/app/api/traces/stream/route/build-manifest.json +12 -0
  59. package/.next/server/app/api/traces/stream/route/server-reference-manifest.json +4 -0
  60. package/.next/server/app/api/traces/stream/route.js +7 -0
  61. package/.next/server/app/api/traces/stream/route.js.map +5 -0
  62. package/.next/server/app/api/traces/stream/route.js.nft.json +1 -0
  63. package/.next/server/app/api/traces/stream/route_client-reference-manifest.js +3 -0
  64. package/.next/server/app/api/version/route/app-paths-manifest.json +3 -0
  65. package/.next/server/app/api/version/route/build-manifest.json +12 -0
  66. package/.next/server/app/api/version/route/server-reference-manifest.json +4 -0
  67. package/.next/server/app/api/version/route.js +7 -0
  68. package/.next/server/app/api/version/route.js.map +5 -0
  69. package/.next/server/app/api/version/route.js.nft.json +1 -0
  70. package/.next/server/app/api/version/route_client-reference-manifest.js +3 -0
  71. package/.next/server/app/index.html +1 -0
  72. package/.next/server/app/index.meta +29 -0
  73. package/.next/server/app/index.rsc +29 -0
  74. package/.next/server/app/index.segments/__PAGE__.segment.rsc +34 -0
  75. package/.next/server/app/index.segments/_full.segment.rsc +29 -0
  76. package/.next/server/app/index.segments/_tree.segment.rsc +3 -0
  77. package/.next/server/app/page/app-paths-manifest.json +3 -0
  78. package/.next/server/app/page/build-manifest.json +21 -0
  79. package/.next/server/app/page/next-font-manifest.json +6 -0
  80. package/.next/server/app/page/react-loadable-manifest.json +1 -0
  81. package/.next/server/app/page/server-reference-manifest.json +4 -0
  82. package/.next/server/app/page.js +13 -0
  83. package/.next/server/app/page.js.map +5 -0
  84. package/.next/server/app/page.js.nft.json +1 -0
  85. package/.next/server/app/page_client-reference-manifest.js +3 -0
  86. package/.next/server/app-paths-manifest.json +7 -0
  87. package/.next/server/chunks/[externals]__0bwf06g0pqv3h._.js +3 -0
  88. package/.next/server/chunks/[externals]__0bwf06g0pqv3h._.js.map +1 -0
  89. package/.next/server/chunks/[externals]__1p2j9_5g429uh._.js +3 -0
  90. package/.next/server/chunks/[externals]__1p2j9_5g429uh._.js.map +1 -0
  91. package/.next/server/chunks/[root-of-the-server]__04an4kw4xcc5l._.js +5 -0
  92. package/.next/server/chunks/[root-of-the-server]__04an4kw4xcc5l._.js.map +1 -0
  93. package/.next/server/chunks/[root-of-the-server]__1s6v8mz-nanm-._.js +5 -0
  94. package/.next/server/chunks/[root-of-the-server]__1s6v8mz-nanm-._.js.map +1 -0
  95. package/.next/server/chunks/[root-of-the-server]__20xfs4y2ipcvv._.js +320 -0
  96. package/.next/server/chunks/[root-of-the-server]__20xfs4y2ipcvv._.js.map +1 -0
  97. package/.next/server/chunks/[turbopack]_runtime.js +937 -0
  98. package/.next/server/chunks/[turbopack]_runtime.js.map +10 -0
  99. package/.next/server/chunks/_next-internal_server_app_api_traces_stream_route_actions_07rmicxgds803.js +3 -0
  100. package/.next/server/chunks/_next-internal_server_app_api_traces_stream_route_actions_07rmicxgds803.js.map +1 -0
  101. package/.next/server/chunks/_next-internal_server_app_api_version_route_actions_0kbx30hro8e93.js +3 -0
  102. package/.next/server/chunks/_next-internal_server_app_api_version_route_actions_0kbx30hro8e93.js.map +1 -0
  103. package/.next/server/chunks/ssr/1q96_modules_pixi_js_lib_rendering_renderers_canvas_CanvasRenderer_mjs_1xntzghggpb51._.js +3 -0
  104. package/.next/server/chunks/ssr/1q96_modules_pixi_js_lib_rendering_renderers_canvas_CanvasRenderer_mjs_1xntzghggpb51._.js.map +1 -0
  105. package/.next/server/chunks/ssr/1q96_modules_pixi_js_lib_rendering_renderers_gpu_WebGPURenderer_mjs_00tc9jrf-ft1_._.js +76 -0
  106. package/.next/server/chunks/ssr/1q96_modules_pixi_js_lib_rendering_renderers_gpu_WebGPURenderer_mjs_00tc9jrf-ft1_._.js.map +1 -0
  107. package/.next/server/chunks/ssr/[root-of-the-server]__08zgqq_38tv57._.js +3 -0
  108. package/.next/server/chunks/ssr/[root-of-the-server]__08zgqq_38tv57._.js.map +1 -0
  109. package/.next/server/chunks/ssr/[root-of-the-server]__0aa2929udndo-._.js +3 -0
  110. package/.next/server/chunks/ssr/[root-of-the-server]__0aa2929udndo-._.js.map +1 -0
  111. package/.next/server/chunks/ssr/[root-of-the-server]__0ayw3c9e93kvf._.js +3 -0
  112. package/.next/server/chunks/ssr/[root-of-the-server]__0ayw3c9e93kvf._.js.map +1 -0
  113. package/.next/server/chunks/ssr/[root-of-the-server]__0ojpb-dtuk3-q._.js +3 -0
  114. package/.next/server/chunks/ssr/[root-of-the-server]__0ojpb-dtuk3-q._.js.map +1 -0
  115. package/.next/server/chunks/ssr/[root-of-the-server]__0py1t7q9ntzgc._.js +3 -0
  116. package/.next/server/chunks/ssr/[root-of-the-server]__0py1t7q9ntzgc._.js.map +1 -0
  117. package/.next/server/chunks/ssr/[root-of-the-server]__1cf6qt9agg_9-._.js +14 -0
  118. package/.next/server/chunks/ssr/[root-of-the-server]__1cf6qt9agg_9-._.js.map +1 -0
  119. package/.next/server/chunks/ssr/[root-of-the-server]__1e1_fmeab1ca7._.js +3 -0
  120. package/.next/server/chunks/ssr/[root-of-the-server]__1e1_fmeab1ca7._.js.map +1 -0
  121. package/.next/server/chunks/ssr/[root-of-the-server]__1w2vu9hh0h02y._.js +3 -0
  122. package/.next/server/chunks/ssr/[root-of-the-server]__1w2vu9hh0h02y._.js.map +1 -0
  123. package/.next/server/chunks/ssr/[turbopack]_runtime.js +937 -0
  124. package/.next/server/chunks/ssr/[turbopack]_runtime.js.map +10 -0
  125. package/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0zi5s8-psc_d2.js +3 -0
  126. package/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0zi5s8-psc_d2.js.map +1 -0
  127. package/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0pt47yrisjoev.js +3 -0
  128. package/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_0pt47yrisjoev.js.map +1 -0
  129. package/.next/server/chunks/ssr/_next-internal_server_app_page_actions_0hhsz1jew5ls7.js +3 -0
  130. package/.next/server/chunks/ssr/_next-internal_server_app_page_actions_0hhsz1jew5ls7.js.map +1 -0
  131. package/.next/server/chunks/ssr/node_modules_01xbj_9zg44kw._.js +33 -0
  132. package/.next/server/chunks/ssr/node_modules_01xbj_9zg44kw._.js.map +1 -0
  133. package/.next/server/chunks/ssr/node_modules_0a548_llmwce7._.js +23 -0
  134. package/.next/server/chunks/ssr/node_modules_0a548_llmwce7._.js.map +1 -0
  135. package/.next/server/chunks/ssr/node_modules_0gxlxpuufujz9._.js +33 -0
  136. package/.next/server/chunks/ssr/node_modules_0gxlxpuufujz9._.js.map +1 -0
  137. package/.next/server/chunks/ssr/node_modules_next_dist_0janj0i6dqko7._.js +6 -0
  138. package/.next/server/chunks/ssr/node_modules_next_dist_0janj0i6dqko7._.js.map +1 -0
  139. package/.next/server/chunks/ssr/node_modules_next_dist_1hgv5i-pr1hza._.js +3 -0
  140. package/.next/server/chunks/ssr/node_modules_next_dist_1hgv5i-pr1hza._.js.map +1 -0
  141. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0wpq8j32_ibz4._.js +3 -0
  142. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_0wpq8j32_ibz4._.js.map +1 -0
  143. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0symwr9mbf-fh.js +3 -0
  144. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0symwr9mbf-fh.js.map +1 -0
  145. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0q-w892nagajq.js +3 -0
  146. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0q-w892nagajq.js.map +1 -0
  147. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0l_sp0xky89qu.js +3 -0
  148. package/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0l_sp0xky89qu.js.map +1 -0
  149. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0aymk_x8-bu4q.js +3 -0
  150. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_0aymk_x8-bu4q.js.map +1 -0
  151. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_19--w_z4y02i7.js +3 -0
  152. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_19--w_z4y02i7.js.map +1 -0
  153. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1qjycfedgh109.js +3 -0
  154. package/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_1qjycfedgh109.js.map +1 -0
  155. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_0hcyh9uzlz7ci._.js +3 -0
  156. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_0hcyh9uzlz7ci._.js.map +1 -0
  157. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_0k3f3soanqdoq._.js +3 -0
  158. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_0k3f3soanqdoq._.js.map +1 -0
  159. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_0ovgsftn-uvbz._.js +3 -0
  160. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_0ovgsftn-uvbz._.js.map +1 -0
  161. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_0xa24fqr5c5qi._.js +5 -0
  162. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_0xa24fqr5c5qi._.js.map +1 -0
  163. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_0zrftay3kjup7._.js +5 -0
  164. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_0zrftay3kjup7._.js.map +1 -0
  165. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_1z4lgkg_w-7fr._.js +208 -0
  166. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_1z4lgkg_w-7fr._.js.map +1 -0
  167. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_1zjkoj2kc4hm-._.js +3 -0
  168. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_1zjkoj2kc4hm-._.js.map +1 -0
  169. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_environment-browser_browserAll_mjs_0xb_t3dj4ad1f._.js +16 -0
  170. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_environment-browser_browserAll_mjs_0xb_t3dj4ad1f._.js.map +1 -0
  171. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_filters_Filter_mjs_0luksfw8ekifi._.js +3 -0
  172. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_filters_Filter_mjs_0luksfw8ekifi._.js.map +1 -0
  173. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_filters_init_mjs_1o5fmm_m60v_s._.js +3 -0
  174. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_filters_init_mjs_1o5fmm_m60v_s._.js.map +1 -0
  175. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_rendering_1fkio2phhfvow._.js +196 -0
  176. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_rendering_1fkio2phhfvow._.js.map +1 -0
  177. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_rendering_1n1q7aum4i7zo._.js +196 -0
  178. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_rendering_1n1q7aum4i7zo._.js.map +1 -0
  179. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_rendering_renderers_10vpvx1o7svnk._.js +3 -0
  180. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_rendering_renderers_10vpvx1o7svnk._.js.map +1 -0
  181. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_rendering_renderers_gl_WebGLRenderer_mjs_1hlux44jh7dk-._.js +153 -0
  182. package/.next/server/chunks/ssr/node_modules_pixi_js_lib_rendering_renderers_gl_WebGLRenderer_mjs_1hlux44jh7dk-._.js.map +1 -0
  183. package/.next/server/chunks/ssr/src_app_page_1vqfk0-j72fp6.js +3 -0
  184. package/.next/server/chunks/ssr/src_app_page_1vqfk0-j72fp6.js.map +1 -0
  185. package/.next/server/functions-config-manifest.json +4 -0
  186. package/.next/server/interception-route-rewrite-manifest.js +1 -0
  187. package/.next/server/middleware-build-manifest.js +54 -0
  188. package/.next/server/middleware-manifest.json +6 -0
  189. package/.next/server/next-font-manifest.js +1 -0
  190. package/.next/server/next-font-manifest.json +6 -0
  191. package/.next/server/pages/404.html +1 -0
  192. package/.next/server/pages/500.html +1 -0
  193. package/.next/server/pages-manifest.json +4 -0
  194. package/.next/server/prefetch-hints.json +34 -0
  195. package/.next/server/preview-props.json +5 -0
  196. package/.next/server/server-reference-manifest.js +1 -0
  197. package/.next/server/server-reference-manifest.json +5 -0
  198. package/.next/static/chunks/0_9x2udu0iodw.js +1 -0
  199. package/.next/static/chunks/0cz1d0mv5g_q7.js +1 -0
  200. package/.next/static/chunks/0umf92h1sb77c.js +1 -0
  201. package/.next/static/chunks/10om7oix6wjze.js +1 -0
  202. package/.next/static/chunks/1780fh11o7pze.js +1 -0
  203. package/.next/static/chunks/1cldmiyw3ya18.js +21 -0
  204. package/.next/static/chunks/1unuqfq-vfqtp.js +1 -0
  205. package/.next/static/chunks/2-vsu_pt58kse.js +3 -0
  206. package/.next/static/chunks/2drjv1ti9t4pg.js +1 -0
  207. package/.next/static/chunks/2hgsvrrwu57--.css +1 -0
  208. package/.next/static/chunks/2ogvir8krwwhf.js +1 -0
  209. package/.next/static/chunks/2tc54fmsk8v8q.js +1 -0
  210. package/.next/static/chunks/304ue7hvto0o0.js +206 -0
  211. package/.next/static/chunks/31gve42sn75--.js +1 -0
  212. package/.next/static/chunks/32kizm_7q94vd.js +194 -0
  213. package/.next/static/chunks/33bap0u4zwgab.js +74 -0
  214. package/.next/static/chunks/3c4xol65z2da2.js +22 -0
  215. package/.next/static/chunks/3cfn99dbrcvvp.js +31 -0
  216. package/.next/static/chunks/3d6xc1eemxy82.js +1 -0
  217. package/.next/static/chunks/3ycr8gfnsg-xv.js +151 -0
  218. package/.next/static/chunks/3ytt3vrdhke9u.js +14 -0
  219. package/.next/static/chunks/turbopack-3-ry682tkyiqk.js +1 -0
  220. package/.next/static/cy2F4S28h_-YWqCOuE_ul/_buildManifest.js +11 -0
  221. package/.next/static/cy2F4S28h_-YWqCOuE_ul/_clientMiddlewareManifest.js +1 -0
  222. package/.next/static/cy2F4S28h_-YWqCOuE_ul/_ssgManifest.js +1 -0
  223. package/.next/trace +1 -0
  224. package/.next/trace-build +1 -0
  225. package/.next/types/cache-life.d.ts +114 -0
  226. package/.next/types/root-params.d.ts +3 -0
  227. package/.next/types/routes.d.ts +74 -0
  228. package/.next/types/validator.ts +17 -0
  229. package/bin/cli.js +11 -4
  230. package/package.json +3 -1
  231. package/src/app/api/traces/stream/route.js +2 -2
  232. package/src/app/layout.js +1 -1
  233. package/src/app/page.js +6 -6
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sections": [
5
+ {"offset": {"line": 16, "column": 0}, "map": {"version":3,"sources":["turbopack:///[turbopack]/shared/runtime/runtime-utils.ts"],"sourcesContent":["/**\n * This file contains runtime types and functions that are shared between all\n * TurboPack ECMAScript runtimes.\n *\n * It will be prepended to the runtime code of each runtime.\n */\n\n/* eslint-disable @typescript-eslint/no-unused-vars */\n\n/// <reference path=\"./runtime-types.d.ts\" />\n/// <reference path=\"./async-module.ts\" />\n\ntype EsmNamespaceObject = Record<string, any>\n\n/**\n * Describes why a module was instantiated.\n * Shared between browser and Node.js runtimes.\n */\nenum SourceType {\n /**\n * The module was instantiated because it was included in an evaluated chunk's\n * runtime.\n * SourceData is a ChunkPath.\n */\n Runtime = 0,\n /**\n * The module was instantiated because a parent module imported it.\n * SourceData is a ModuleId.\n */\n Parent = 1,\n /**\n * The module was instantiated because it was included in a chunk's hot module\n * update.\n * SourceData is an array of ModuleIds or undefined.\n */\n Update = 2,\n}\n\ntype SourceData = ChunkPath | ModuleId | ModuleId[] | undefined\n\n// @ts-ignore Defined in `dev-base.ts`\ndeclare function getOrInstantiateModuleFromParent<M>(\n id: ModuleId,\n sourceModule: M\n): M\n\n/**\n * Flag indicating which module object type to create when a module is merged. Set to `true`\n * by each runtime that uses ModuleWithDirection (browser dev-base.ts, nodejs dev-base.ts,\n * nodejs build-base.ts). Browser production (build-base.ts) leaves it as `false` since it\n * uses plain Module objects.\n */\nlet createModuleWithDirectionFlag = false\n\nconst REEXPORTED_OBJECTS = new WeakMap<Module, ReexportedObjects>()\n\n/**\n * Constructs the `__turbopack_context__` object for a module.\n */\nfunction Context(\n this: TurbopackBaseContext<Module>,\n module: Module,\n exports: Exports\n) {\n this.m = module\n // We need to store this here instead of accessing it from the module object to:\n // 1. Make it available to factories directly, since we rewrite `this` to\n // `__turbopack_context__.e` in CJS modules.\n // 2. Support async modules which rewrite `module.exports` to a promise, so we\n // can still access the original exports object from functions like\n // `esmExport`\n // Ideally we could find a new approach for async modules and drop this property altogether.\n this.e = exports\n}\nconst contextPrototype = Context.prototype as TurbopackBaseContext<Module>\n\ntype ModuleContextMap = Record<ModuleId, ModuleContextEntry>\n\ninterface ModuleContextEntry {\n id: () => ModuleId\n module: () => any\n}\n\ninterface ModuleContext {\n // require call\n (moduleId: string): Exports | EsmNamespaceObject\n\n // async import call\n import(moduleId: string): Promise<Exports | EsmNamespaceObject>\n\n keys(): ModuleId[]\n\n resolve(moduleId: string): ModuleId\n}\n\ntype GetOrInstantiateModuleFromParent<M extends Module> = (\n moduleId: M['id'],\n parentModule: M\n) => M\n\ndeclare function getOrInstantiateRuntimeModule(\n chunkPath: ChunkPath,\n moduleId: ModuleId\n): Module\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty\nconst toStringTag = typeof Symbol !== 'undefined' && Symbol.toStringTag\n\nfunction defineProp(\n obj: any,\n name: PropertyKey,\n options: PropertyDescriptor & ThisType<any>\n) {\n if (!hasOwnProperty.call(obj, name)) Object.defineProperty(obj, name, options)\n}\n\nfunction getOverwrittenModule(\n moduleCache: ModuleCache<Module>,\n id: ModuleId\n): Module {\n let module = moduleCache.get(id)\n if (module === undefined) {\n if (createModuleWithDirectionFlag) {\n // set in development modes for hmr support\n module = createModuleWithDirection(id)\n } else {\n module = createModuleObject(id)\n }\n moduleCache.set(id, module)\n }\n return module\n}\n\n/**\n * Creates the module object. Only done here to ensure all module objects have the same shape.\n */\nfunction createModuleObject(id: ModuleId): Module {\n return {\n exports: {},\n error: undefined,\n id,\n namespaceObject: undefined,\n }\n}\n\nfunction createModuleWithDirection(id: ModuleId): ModuleWithDirection {\n return {\n exports: {},\n error: undefined,\n id,\n namespaceObject: undefined,\n parents: [],\n children: [],\n }\n}\n\ntype BindingTag = 0\nconst BindingTag_Value = 0 as BindingTag\n\n// an arbitrary sequence of bindings as\n// - a prop name\n// - BindingTag_Value, a value to be bound directly, or\n// - 1 or 2 functions to bind as getters and sdetters\ntype EsmBindings = Array<\n string | BindingTag | (() => unknown) | ((v: unknown) => void) | unknown\n>\n\n/**\n * Terminates a module's group of entries in an {@link EsmReexports} list.\n */\nconst REEXPORT_GROUP_END = 0\n\n/**\n * Adds the getters to the exports object.\n */\nfunction esm(exports: Exports, bindings: EsmBindings, dynamic?: boolean) {\n defineProp(exports, '__esModule', { value: true })\n if (toStringTag) defineProp(exports, toStringTag, { value: 'Module' })\n let i = 0\n while (i < bindings.length) {\n const propName = bindings[i++] as string\n const tagOrFunction = bindings[i++]\n if (typeof tagOrFunction === 'number') {\n if (tagOrFunction === BindingTag_Value) {\n defineProp(exports, propName, {\n value: bindings[i++],\n enumerable: true,\n writable: false,\n })\n } else {\n throw new Error(`unexpected tag: ${tagOrFunction}`)\n }\n } else {\n const getterFn = tagOrFunction as () => unknown\n if (typeof bindings[i] === 'function') {\n const setterFn = bindings[i++] as (v: unknown) => void\n defineProp(exports, propName, {\n get: getterFn,\n set: setterFn,\n enumerable: true,\n })\n } else {\n defineProp(exports, propName, {\n get: getterFn,\n enumerable: true,\n })\n }\n }\n }\n // The properties defined above are already non-configurable and\n // non-writable, so the namespace's existing exports are effectively\n // immutable. Sealing additionally makes the object non-extensible, matching\n // real ESM-namespace semantics. Modules with dynamic re-exports\n // (`export *` from a CommonJS module) must stay extensible so the dynamic\n // export proxy can surface keys discovered at runtime, so skip the seal for\n // them.\n if (!dynamic) Object.seal(exports)\n}\n\n/**\n * Makes the module an ESM with exports\n */\nfunction esmExport(\n this: TurbopackBaseContext<Module>,\n bindings: EsmBindings,\n id: ModuleId | undefined,\n dynamic?: boolean\n) {\n let module: Module\n let exports: Module['exports']\n if (id != null) {\n module = getOverwrittenModule(this.c, id)\n exports = module.exports\n } else {\n module = this.m\n exports = this.e\n }\n module.namespaceObject = exports\n esm(exports, bindings, dynamic)\n}\ncontextPrototype.s = esmExport\n\n/**\n * Registers re-exports that all forward to properties of other modules.\n *\n * This is a compact spelling of the pattern\n *\n * ```js\n * var ns = context.i(moduleId)\n * context.s([exportName, () => ns[importedName], ...])\n * ```\n *\n * The list is a flat sequence of groups. Each group starts with the source the exports come from,\n * followed by that group's entries, and is terminated by the `0` sentinel (or the end of the list).\n *\n * The group head is either a **module id**, which is instantiated here:\n *\n * ```js\n * context.S([\n * 76061, 'default', 'f', 'named', 'A', 0,\n * 29842, 'otherModule', 'f',\n * ])\n * ```\n *\n * or the **namespace value** of a module that has already been imported, which is used directly:\n *\n * ```js\n * var ns1 = context.i(76061)\n * context.S([ns1, 'default', 'f', 'named', 'A'])\n * ```\n *\n * The producer picks the namespace form when it has generated the import anyway -- because some\n * later import must not be reordered past it -- so nothing is instantiated twice. The two are told\n * apart by type: a module id is always a string or number. A CommonJS function export produces a\n * callable namespace value, so namespace heads can be functions as well as objects.\n *\n * Entries are `exportName, importedName` pairs, except when a group holds exactly one string. That\n * string is then a comma-joined list of the same pairs, which saves the repeated quoting:\n *\n * ```js\n * context.S([\n * 76061, 'default,f,named,A', 0,\n * 29842, 'otherModule,f',\n * ])\n * ```\n *\n * The producer picks that spelling independently for each group whose names contain no commas,\n * since that group's names are recovered by splitting on them.\n *\n * Groups whose head is a module id are instantiated in list order, at the point where the call\n * appears, so the producer must not merge such a group across an import of another module. The\n * destination reuses a source data value or getter descriptor when one exists, falling back to a\n * wrapper getter for dynamic/proxy/inherited properties.\n *\n * `id` names the module the exports belong to when this module was merged into a scope-hoisting\n * group, exactly as it does for {@link EsmExport}.\n *\n * Only the source descriptor's payload (value or getter) is reused. {@link esm} still defines a\n * fresh enumerable, non-configurable destination property, and no source setter is ever forwarded.\n */\nfunction esmReexport(\n this: TurbopackBaseContext<Module>,\n list: EsmReexports,\n id?: ModuleId\n): void {\n const bindings: EsmBindings = []\n let i = 0\n while (i < list.length) {\n const head = list[i++]\n const start = i\n while (i < list.length && list[i] !== REEXPORT_GROUP_END) i++\n const end = i\n // Skip the sentinel, if this group was terminated by one rather than by the end of the list.\n i++\n\n // Module ids are always strings or numbers. Other values are already-imported namespaces;\n // notably, interop with a CommonJS function export produces a callable namespace function.\n // `esmImport` may return a promise for an async module, but re-exports of async modules keep\n // going through `context.s`, so the producer never routes them here and this stays synchronous.\n const namespace = (\n typeof head === 'string' || typeof head === 'number'\n ? esmImport.call(this, head)\n : head\n ) as Record<string, unknown>\n if (end - start === 1) {\n const pairs = (list[start] as string).split(',')\n for (let j = 0; j < pairs.length; j += 2) {\n appendReexportBinding(bindings, pairs[j], namespace, pairs[j + 1])\n }\n } else {\n for (let j = start; j < end; j += 2) {\n appendReexportBinding(\n bindings,\n list[j] as string,\n namespace,\n list[j + 1] as string\n )\n }\n }\n }\n esmExport.call(this, bindings, id)\n}\ncontextPrototype.S = esmReexport\n\nfunction appendReexportBinding(\n bindings: EsmBindings,\n exportedName: string,\n namespace: Record<string, unknown>,\n importedName: string\n): void {\n const descriptor = Reflect.getOwnPropertyDescriptor(namespace, importedName)\n if (descriptor) {\n if ('value' in descriptor) {\n // Code generation only routes immutable imported bindings through this helper, so a data\n // descriptor is a constant export and can be captured once.\n bindings.push(exportedName, BindingTag_Value, descriptor.value)\n return\n }\n if (descriptor.get) {\n // Accessors remain live by reusing the source getter. `esmReexport` is only called by\n // generated code: every group head is either produced by\n // `this.i` or is the namespace variable from a generated `this.i` call. Every getter on such\n // a namespace is receiver-independent: ESM bindings are compiler-generated arrow functions,\n // and the CommonJS/dynamic-namespace paths create arrows in `createGetter` and\n // `getOwnPropertyDescriptor`. The destination can therefore reuse the exact function instead\n // of allocating another wrapper getter.\n bindings.push(exportedName, descriptor.get)\n return\n }\n }\n\n // Dynamic/proxy/inherited CommonJS edge cases may not expose a usable own descriptor.\n bindings.push(exportedName, () => namespace[importedName])\n}\n\ntype ReexportedObjects = Record<PropertyKey, unknown>[]\nfunction ensureDynamicExports(\n module: Module,\n exports: Exports\n): ReexportedObjects {\n let reexportedObjects: ReexportedObjects | undefined =\n REEXPORTED_OBJECTS.get(module)\n\n if (!reexportedObjects) {\n REEXPORTED_OBJECTS.set(module, (reexportedObjects = []))\n // Returns the re-exported object that provides `prop` as an own property,\n // or `undefined` if none does. The traps share this logic so they always\n // agree on which keys are synthesized from `reexportedObjects`. `default`\n // is never re-exported by `export *`, so it is never synthesized.\n const reexportOwning = (prop: PropertyKey) => {\n if (prop !== 'default') {\n for (const obj of reexportedObjects!) {\n if (hasOwnProperty.call(obj, prop)) return obj\n }\n }\n return undefined\n }\n // Modules with dynamic re-exports are not sealed by `esm()`, so the\n // target beneath the namespace stays extensible. That is what lets the\n // `ownKeys` and `getOwnPropertyDescriptor` traps legally report keys that\n // exist on `reexportedObjects` but not on the target itself.\n module.exports = module.namespaceObject = new Proxy(exports, {\n get(target, prop) {\n if (\n hasOwnProperty.call(target, prop) ||\n prop === 'default' ||\n prop === '__esModule'\n ) {\n return Reflect.get(target, prop)\n }\n const obj = reexportOwning(prop)\n return obj && Reflect.get(obj, prop)\n },\n // The namespace is read-only, like a real esm namespace object. The\n // re-exported modules can still mutate their own exports (exposed live\n // via `get`), but mutating the namespace itself is rejected. Refusing\n // here, rather than forwarding to the extensible target, also prevents an\n // assignment/definition from shadowing a dynamic re-export. It also\n // prevents delete from removing a static export.\n set() {\n return false\n },\n defineProperty() {\n return false\n },\n deleteProperty() {\n return false\n },\n // The `has` trap ensures that `'exportName' in starImports` will reflect\n // the truth of whether a key is exported.\n has(target, prop) {\n if (Reflect.has(target, prop)) return true\n if (prop === 'default' || prop === '__esModule') return false\n return reexportOwning(prop) !== undefined\n },\n // ownKeys and getOwnPropertyDescriptor together make the keys enumerable.\n // If a value is returned from `ownKeys` but its property descriptor is\n // not enumerable, it will not be visible to iterator methods.\n // Collectively, they allow code like the following:\n //\n // ```\n // // module.js re-exports dynamic CJS exports\n // export * from './legacyModule.cjs'\n //\n // // from another JS file, reference the re-exported dynamic values\n // import * as Namespace from './module.js'\n // Object.keys(Namespace)\n // ```\n ownKeys(target) {\n const keys = Reflect.ownKeys(target)\n for (const obj of reexportedObjects!) {\n for (const key of Reflect.ownKeys(obj)) {\n if (key !== 'default' && !keys.includes(key)) keys.push(key)\n }\n }\n return keys\n },\n getOwnPropertyDescriptor(target, prop) {\n const own = Reflect.getOwnPropertyDescriptor(target, prop)\n if (own || prop === 'default' || prop === '__esModule') return own\n const obj = reexportOwning(prop)\n if (obj) {\n // Synthetic keys don't exist on the target, so they MUST be\n // reported as configurable. However the set/delete traps above will\n // prevent them from actually being changed\n return {\n enumerable: true,\n configurable: true,\n get: () => Reflect.get(obj, prop),\n }\n }\n return undefined\n },\n })\n }\n return reexportedObjects\n}\n\n/**\n * Dynamically exports properties from an object\n */\nfunction dynamicExport(\n this: TurbopackBaseContext<Module>,\n object: Record<string, any>,\n id: ModuleId | undefined\n) {\n let module: Module\n let exports: Exports\n if (id != null) {\n module = getOverwrittenModule(this.c, id)\n exports = module.exports\n } else {\n module = this.m\n exports = this.e\n }\n const reexportedObjects = ensureDynamicExports(module, exports)\n\n if (typeof object === 'object' && object !== null) {\n reexportedObjects.push(object)\n }\n}\ncontextPrototype.j = dynamicExport\n\nfunction exportValue(\n this: TurbopackBaseContext<Module>,\n value: any,\n id: ModuleId | undefined\n) {\n let module: Module\n if (id != null) {\n module = getOverwrittenModule(this.c, id)\n } else {\n module = this.m\n }\n module.exports = value\n}\ncontextPrototype.v = exportValue\n\nfunction exportNamespace(\n this: TurbopackBaseContext<Module>,\n namespace: any,\n id: ModuleId | undefined\n) {\n let module: Module\n if (id != null) {\n module = getOverwrittenModule(this.c, id)\n } else {\n module = this.m\n }\n module.exports = module.namespaceObject = namespace\n}\ncontextPrototype.n = exportNamespace\n\nfunction createGetter(obj: Record<string | symbol, any>, key: string | symbol) {\n return () => obj[key]\n}\n\n/**\n * @returns prototype of the object\n */\nconst getProto: (obj: any) => any = Object.getPrototypeOf\n ? (obj) => Object.getPrototypeOf(obj)\n : (obj) => obj.__proto__\n\n/** Prototypes that are not expanded for exports */\nconst LEAF_PROTOTYPES = [null, getProto({}), getProto([]), getProto(getProto)]\n\n/**\n * @param raw\n * @param ns\n * @param allowExportDefault\n * * `false`: will have the raw module as default export\n * * `true`: will have the default property as default export\n */\nfunction interopEsm(\n raw: Exports,\n ns: EsmNamespaceObject,\n allowExportDefault?: boolean\n) {\n const bindings: EsmBindings = []\n let defaultLocation = -1\n for (\n let current = raw;\n (typeof current === 'object' || typeof current === 'function') &&\n !LEAF_PROTOTYPES.includes(current);\n current = getProto(current)\n ) {\n for (const key of Object.getOwnPropertyNames(current)) {\n bindings.push(key, createGetter(raw, key))\n if (defaultLocation === -1 && key === 'default') {\n defaultLocation = bindings.length - 1\n }\n }\n }\n\n // this is not really correct\n // we should set the `default` getter if the imported module is a `.cjs file`\n if (!(allowExportDefault && defaultLocation >= 0)) {\n // Replace the binding with one for the namespace itself in order to preserve iteration order.\n if (defaultLocation >= 0) {\n // Replace the getter with the value\n bindings.splice(defaultLocation, 1, BindingTag_Value, raw)\n } else {\n bindings.push('default', BindingTag_Value, raw)\n }\n }\n\n esm(ns, bindings)\n return ns\n}\n\nfunction createNS(raw: Module['exports']): EsmNamespaceObject {\n if (typeof raw === 'function') {\n return function (this: any, ...args: any[]) {\n return raw.apply(this, args)\n }\n } else {\n return Object.create(null)\n }\n}\n\nfunction esmImport(\n this: TurbopackBaseContext<Module>,\n id: ModuleId\n): Exclude<Module['namespaceObject'], undefined> {\n const module = getOrInstantiateModuleFromParent(id, this.m)\n\n // any ES module has to have `module.namespaceObject` defined.\n if (module.namespaceObject) return module.namespaceObject\n\n // only ESM can be an async module, so we don't need to worry about exports being a promise here.\n const raw = module.exports\n return (module.namespaceObject = interopEsm(\n raw,\n createNS(raw),\n raw && (raw as any).__esModule\n ))\n}\ncontextPrototype.i = esmImport\n\nfunction asyncLoader(\n this: TurbopackBaseContext<Module>,\n moduleId: ModuleId\n): Promise<Exports> {\n const loader = this.r(moduleId) as (\n importFunction: EsmImport\n ) => Promise<Exports>\n return loader(esmImport.bind(this))\n}\ncontextPrototype.A = asyncLoader\n\n// Add a simple runtime require so that environments without one can still pass\n// `typeof require` CommonJS checks so that exports are correctly registered.\nconst runtimeRequire =\n // @ts-ignore\n typeof require === 'function'\n ? // @ts-ignore\n require\n : function require() {\n throw new Error('Unexpected use of runtime require')\n }\ncontextPrototype.t = runtimeRequire\n\nfunction commonJsRequire(\n this: TurbopackBaseContext<Module>,\n id: ModuleId\n): Exports {\n return getOrInstantiateModuleFromParent(id, this.m).exports\n}\ncontextPrototype.r = commonJsRequire\n\n/**\n * Remove fragments and query parameters since they are never part of the context map keys\n *\n * This matches how we parse patterns at resolving time. Arguably we should only do this for\n * strings passed to `import` but the resolve does it for `import` and `require` and so we do\n * here as well.\n */\nfunction parseRequest(request: string): string {\n // Per the URI spec fragments can contain `?` characters, so we should trim it off first\n // https://datatracker.ietf.org/doc/html/rfc3986#section-3.5\n const hashIndex = request.indexOf('#')\n if (hashIndex !== -1) {\n request = request.substring(0, hashIndex)\n }\n\n const queryIndex = request.indexOf('?')\n if (queryIndex !== -1) {\n request = request.substring(0, queryIndex)\n }\n\n return request\n}\n/**\n * `require.context` and require/import expression runtime.\n */\nfunction moduleContext(map: ModuleContextMap): ModuleContext {\n function moduleContext(id: string): Exports {\n id = parseRequest(id)\n if (hasOwnProperty.call(map, id)) {\n return map[id].module()\n }\n\n const e = new Error(`Cannot find module '${id}'`)\n ;(e as any).code = 'MODULE_NOT_FOUND'\n throw e\n }\n\n moduleContext.keys = (): string[] => {\n return Object.keys(map)\n }\n\n moduleContext.resolve = (id: string): ModuleId => {\n id = parseRequest(id)\n if (hasOwnProperty.call(map, id)) {\n return map[id].id()\n }\n\n const e = new Error(`Cannot find module '${id}'`)\n ;(e as any).code = 'MODULE_NOT_FOUND'\n throw e\n }\n\n moduleContext.import = async (id: string) => {\n return await (moduleContext(id) as Promise<Exports>)\n }\n\n return moduleContext\n}\ncontextPrototype.f = moduleContext\n\n/**\n * Returns the path of a chunk defined by its data.\n */\nfunction getChunkPath(chunkData: ChunkData): ChunkPath {\n return typeof chunkData === 'string' ? chunkData : chunkData.path\n}\n\n// Load the CompressedModuleFactories of a chunk into the `moduleFactories` Map.\n// The flat format alternates one or more module IDs with their factory function.\n// Strict factories can be prepended as a nested array.\nfunction installCompressedModuleFactories(\n chunkModules: CompressedModuleFactories,\n offset: number,\n moduleFactories: ModuleFactories,\n newModuleId?: (id: ModuleId) => void\n) {\n let i = offset\n const strictFactories = chunkModules[i]\n if (Array.isArray(strictFactories)) {\n installCompressedModuleFactories(\n strictFactories,\n 0,\n moduleFactories,\n newModuleId\n )\n i++\n }\n while (i < chunkModules.length) {\n let end = i + 1\n // Find our factory function\n while (\n end < chunkModules.length &&\n typeof chunkModules[end] !== 'function'\n ) {\n end++\n }\n if (end === chunkModules.length) {\n throw new Error('malformed chunk format, expected a factory function')\n }\n\n // Install the factory for each module ID that doesn't already have one.\n // When some IDs in this group already have a factory, reuse that existing\n // group factory for the missing IDs to keep all IDs in the group consistent.\n // Otherwise, install the factory from this chunk.\n const moduleFactoryFn = chunkModules[end] as Function\n let existingGroupFactory: Function | undefined = undefined\n for (let j = i; j < end; j++) {\n const id = chunkModules[j] as ModuleId\n const existingFactory = moduleFactories.get(id)\n if (existingFactory) {\n existingGroupFactory = existingFactory\n break\n }\n }\n const factoryToInstall = existingGroupFactory ?? moduleFactoryFn\n\n let didInstallFactory = false\n for (let j = i; j < end; j++) {\n const id = chunkModules[j] as ModuleId\n if (!moduleFactories.has(id)) {\n if (!didInstallFactory) {\n if (factoryToInstall === moduleFactoryFn) {\n applyModuleFactoryName(moduleFactoryFn)\n }\n didInstallFactory = true\n }\n moduleFactories.set(id, factoryToInstall)\n newModuleId?.(id)\n }\n }\n i = end + 1\n }\n}\n\n/**\n * A pseudo \"fake\" URL object to resolve to its relative path.\n *\n * When UrlRewriteBehavior is set to relative, calls to the `new URL()` will construct url without base using this\n * runtime function to generate context-agnostic urls between different rendering context, i.e ssr / client to avoid\n * hydration mismatch.\n *\n * This is based on webpack's existing implementation:\n * https://github.com/webpack/webpack/blob/87660921808566ef3b8796f8df61bd79fc026108/lib/runtime/RelativeUrlRuntimeModule.js\n */\nconst relativeURL = function relativeURL(this: any, inputUrl: string) {\n const realUrl = new URL(inputUrl, 'x:/')\n const values: Record<string, any> = {}\n for (const key in realUrl) values[key] = (realUrl as any)[key]\n values.href = inputUrl\n values.pathname = inputUrl.replace(/[?#].*/, '')\n values.origin = values.protocol = ''\n values.toString = values.toJSON = (..._args: Array<any>) => inputUrl\n for (const key in values)\n Object.defineProperty(this, key, {\n enumerable: true,\n configurable: true,\n value: values[key],\n })\n}\nrelativeURL.prototype = URL.prototype\ncontextPrototype.U = relativeURL\n\n/**\n * Utility function to ensure all variants of an enum are handled.\n */\nfunction invariant(never: never, computeMessage: (arg: any) => string): never {\n throw new Error(`Invariant: ${computeMessage(never)}`)\n}\n\n/**\n * Constructs an error message for when a module factory is not available.\n */\nfunction factoryNotAvailableMessage(\n moduleId: ModuleId,\n sourceType: SourceType,\n sourceData: SourceData\n): string {\n let instantiationReason: string\n switch (sourceType) {\n case SourceType.Runtime:\n instantiationReason = `as a runtime entry of chunk ${sourceData}`\n break\n case SourceType.Parent:\n instantiationReason = `because it was required from module ${sourceData}`\n break\n case SourceType.Update:\n instantiationReason = 'because of an HMR update'\n break\n default:\n invariant(\n sourceType,\n (sourceType) => `Unknown source type: ${sourceType}`\n )\n }\n return `Module ${moduleId} was instantiated ${instantiationReason}, but the module factory is not available.`\n}\n\n/**\n * Returns a `file://` URL under a synthetic directory named after `root`\n * (`ROOT` for the project root), for when the real filesystem path is unknown.\n * The root name and path segments are percent-encoded so the result is always\n * a valid file URI.\n */\nfunction placeholderFileUrl(modulePath: string, root?: string): string {\n return `file:///${encodeURIComponent(root ?? 'ROOT')}/${modulePath\n .split('/')\n .map(encodeURIComponent)\n .join('/')}`\n}\n\n/**\n * A stub function to make `require` available but non-functional in ESM.\n */\nfunction requireStub(_moduleId: ModuleId): never {\n throw new Error('dynamic usage of require is not supported')\n}\ncontextPrototype.z = requireStub\n\n// Make `globalThis` available to the module in a way that cannot be shadowed by a local variable.\ncontextPrototype.g = globalThis\n\ntype ContextConstructor<M> = {\n new (module: Module, exports: Exports): TurbopackBaseContext<M>\n}\n\nfunction applyModuleFactoryName(factory: Function) {\n // Give the module factory a nice name to improve stack traces.\n Object.defineProperty(factory, 'name', {\n value: 'module evaluation',\n })\n}\n"],"names":["SourceType","createModuleWithDirectionFlag","REEXPORTED_OBJECTS","WeakMap","Context","module","exports","m","e","contextPrototype","prototype","hasOwnProperty","Object","toStringTag","Symbol","defineProp","obj","name","options","call","defineProperty","getOverwrittenModule","moduleCache","id","get","undefined","createModuleWithDirection","createModuleObject","set","error","namespaceObject","parents","children","BindingTag_Value","REEXPORT_GROUP_END","esm","bindings","dynamic","value","i","length","propName","tagOrFunction","enumerable","writable","Error","getterFn","setterFn","seal","esmExport","c","s","esmReexport","list","head","start","end","namespace","esmImport","pairs","split","j","appendReexportBinding","S","exportedName","importedName","descriptor","Reflect","getOwnPropertyDescriptor","push","ensureDynamicExports","reexportedObjects","reexportOwning","prop","Proxy","target","deleteProperty","has","ownKeys","keys","key","includes","own","configurable","dynamicExport","object","exportValue","v","exportNamespace","n","createGetter","getProto","getPrototypeOf","__proto__","LEAF_PROTOTYPES","interopEsm","raw","ns","allowExportDefault","defaultLocation","current","getOwnPropertyNames","splice","createNS","args","apply","create","getOrInstantiateModuleFromParent","__esModule","asyncLoader","moduleId","loader","r","bind","A","runtimeRequire","require","require1","t","commonJsRequire","parseRequest","request","hashIndex","indexOf","substring","queryIndex","moduleContext","map","code","resolve","import","f","getChunkPath","chunkData","path","installCompressedModuleFactories","chunkModules","offset","moduleFactories","newModuleId","strictFactories","Array","isArray","moduleFactoryFn","existingGroupFactory","existingFactory","factoryToInstall","didInstallFactory","applyModuleFactoryName","relativeURL","inputUrl","realUrl","URL","values","href","pathname","replace","origin","protocol","toString","toJSON","_args","U","invariant","never","computeMessage","factoryNotAvailableMessage","sourceType","sourceData","instantiationReason","placeholderFileUrl","modulePath","root","encodeURIComponent","join","requireStub","_moduleId","z","g","globalThis","factory"],"mappings":"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","ignoreList":[0]}},
6
+ {"offset": {"line": 664, "column": 0}, "map": {"version":3,"sources":["turbopack:///[turbopack]/shared-node/base-externals-utils.ts"],"sourcesContent":["/// <reference path=\"../shared/runtime/runtime-utils.ts\" />\n\n/// A 'base' utilities to support runtime can have externals.\n/// Currently this is for node.js / edge runtime both.\n/// If a fn requires node.js specific behavior, it should be placed in `node-external-utils` instead.\n\nasync function externalImport(id: DependencySpecifier) {\n let raw\n try {\n raw = await import(id)\n } catch (err) {\n // TODO(alexkirsz) This can happen when a client-side module tries to load\n // an external module we don't provide a shim for (e.g. querystring, url).\n // For now, we fail semi-silently, but in the future this should be a\n // compilation error.\n throw new Error(`Failed to load external module ${id}: ${err}`)\n }\n\n if (raw && raw.__esModule && raw.default && 'default' in raw.default) {\n return interopEsm(raw.default, createNS(raw), true)\n }\n\n return raw\n}\ncontextPrototype.y = externalImport\n\nfunction externalRequire(\n id: ModuleId,\n thunk: () => any,\n esm: boolean = false\n): Exports | EsmNamespaceObject {\n let raw\n try {\n raw = thunk()\n } catch (err) {\n // TODO(alexkirsz) This can happen when a client-side module tries to load\n // an external module we don't provide a shim for (e.g. querystring, url).\n // For now, we fail semi-silently, but in the future this should be a\n // compilation error.\n throw new Error(`Failed to load external module ${id}: ${err}`)\n }\n\n if (!esm || raw.__esModule) {\n return raw\n }\n\n return interopEsm(raw, createNS(raw), true)\n}\n\nexternalRequire.resolve = (\n id: string,\n options?: {\n paths?: string[]\n }\n) => {\n return require.resolve(id, options)\n}\ncontextPrototype.x = externalRequire\n"],"names":["externalImport","id","raw","err","Error","__esModule","default","interopEsm","createNS","contextPrototype","y","externalRequire","thunk","esm","resolve","options","require","x"],"mappings":"AAAA,2DAA2D;AAE3D,6DAA6D;AAC7D,sDAAsD;AACtD,qGAAqG;AAErG,eAAeA,eAAeC,EAAuB;IACnD,IAAIC;IACJ,IAAI;QACFA,MAAM,MAAM,MAAM,CAACD;IACrB,EAAE,OAAOE,KAAK;QACZ,0EAA0E;QAC1E,0EAA0E;QAC1E,qEAAqE;QACrE,qBAAqB;QACrB,MAAM,IAAIC,MAAM,CAAC,+BAA+B,EAAEH,GAAG,EAAE,EAAEE,KAAK;IAChE;IAEA,IAAID,OAAOA,IAAIG,UAAU,IAAIH,IAAII,OAAO,IAAI,aAAaJ,IAAII,OAAO,EAAE;QACpE,OAAOC,WAAWL,IAAII,OAAO,EAAEE,SAASN,MAAM;IAChD;IAEA,OAAOA;AACT;AACAO,iBAAiBC,CAAC,GAAGV;AAErB,SAASW,gBACPV,EAAY,EACZW,KAAgB,EAChBC,MAAe,KAAK;IAEpB,IAAIX;IACJ,IAAI;QACFA,MAAMU;IACR,EAAE,OAAOT,KAAK;QACZ,0EAA0E;QAC1E,0EAA0E;QAC1E,qEAAqE;QACrE,qBAAqB;QACrB,MAAM,IAAIC,MAAM,CAAC,+BAA+B,EAAEH,GAAG,EAAE,EAAEE,KAAK;IAChE;IAEA,IAAI,CAACU,OAAOX,IAAIG,UAAU,EAAE;QAC1B,OAAOH;IACT;IAEA,OAAOK,WAAWL,KAAKM,SAASN,MAAM;AACxC;AAEAS,gBAAgBG,OAAO,GAAG,CACxBb,IACAc;IAIA,OAAOC,QAAQF,OAAO,CAACb,IAAIc;AAC7B;AACAN,iBAAiBQ,CAAC,GAAGN","ignoreList":[0]}},
7
+ {"offset": {"line": 705, "column": 0}, "map": {"version":3,"sources":["turbopack:///[turbopack]/shared-node/node-externals-utils.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n\ndeclare var RUNTIME_PUBLIC_PATH: string\ndeclare var RELATIVE_ROOT_PATH: string\ndeclare var ASSET_PREFIX: string\n\nconst path = require('path')\n\nconst relativePathToRuntimeRoot = path.relative(RUNTIME_PUBLIC_PATH, '.')\n// Compute the relative path to the `distDir`.\nconst relativePathToDistRoot = path.join(\n relativePathToRuntimeRoot,\n RELATIVE_ROOT_PATH\n)\nconst RUNTIME_ROOT = path.resolve(__filename, relativePathToRuntimeRoot)\n// Compute the absolute path to the root, by stripping distDir from the absolute path to this file.\nconst ABSOLUTE_ROOT = path.resolve(__filename, relativePathToDistRoot)\n\n/**\n * Returns an absolute path to the given module path.\n * Module path should be relative, either path to a file or a directory.\n *\n * This fn allows to calculate an absolute path for some global static values, such as\n * `__dirname` or `import.meta.url` that Turbopack will not embeds in compile time.\n * See ImportMetaBinding::code_generation for the usage.\n */\nfunction resolveAbsolutePath(modulePath?: string): string {\n if (modulePath) {\n return path.join(ABSOLUTE_ROOT, modulePath)\n }\n return ABSOLUTE_ROOT\n}\nContext.prototype.P = resolveAbsolutePath\n\n/**\n * Returns an absolute `file://` URL for the given module path, which is\n * relative to the project root or the named `root`.\n *\n * Uses `url.pathToFileURL` so that the resulting URL is a valid file URI on\n * all platforms (forward slashes on Windows, drive letters handled\n * correctly, path segments URL-encoded).\n *\n * The location of a named `root` isn't known at runtime (the output may have\n * been moved away from the sources), so this returns a placeholder URL for it.\n */\nfunction resolveFileUrl(modulePath: string, root?: string): string {\n if (root !== undefined) {\n return placeholderFileUrl(modulePath, root)\n }\n return require('url').pathToFileURL(resolveAbsolutePath(modulePath)).href\n}\nContext.prototype.F = resolveFileUrl\n"],"names":["path","require","relativePathToRuntimeRoot","relative","RUNTIME_PUBLIC_PATH","relativePathToDistRoot","join","RELATIVE_ROOT_PATH","RUNTIME_ROOT","resolve","__filename","ABSOLUTE_ROOT","resolveAbsolutePath","modulePath","Context","prototype","P","resolveFileUrl","root","undefined","placeholderFileUrl","pathToFileURL","href","F"],"mappings":"AAAA,oDAAoD,GAMpD,MAAMA,OAAOC,QAAQ;AAErB,MAAMC,4BAA4BF,KAAKG,QAAQ,CAACC,qBAAqB;AACrE,8CAA8C;AAC9C,MAAMC,yBAAyBL,KAAKM,IAAI,CACtCJ,2BACAK;AAEF,MAAMC,eAAeR,KAAKS,OAAO,CAACC,YAAYR;AAC9C,mGAAmG;AACnG,MAAMS,gBAAgBX,KAAKS,OAAO,CAACC,YAAYL;AAE/C;;;;;;;CAOC,GACD,SAASO,oBAAoBC,UAAmB;IAC9C,IAAIA,YAAY;QACd,OAAOb,KAAKM,IAAI,CAACK,eAAeE;IAClC;IACA,OAAOF;AACT;AACAG,QAAQC,SAAS,CAACC,CAAC,GAAGJ;AAEtB;;;;;;;;;;CAUC,GACD,SAASK,eAAeJ,UAAkB,EAAEK,IAAa;IACvD,IAAIA,SAASC,WAAW;QACtB,OAAOC,mBAAmBP,YAAYK;IACxC;IACA,OAAOjB,QAAQ,OAAOoB,aAAa,CAACT,oBAAoBC,aAAaS,IAAI;AAC3E;AACAR,QAAQC,SAAS,CAACQ,CAAC,GAAGN","ignoreList":[0]}},
8
+ {"offset": {"line": 743, "column": 0}, "map": {"version":3,"sources":["turbopack:///[turbopack]/nodejs/runtime/runtime-base.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n\n/// <reference path=\"../../shared/runtime/runtime-utils.ts\" />\n/// <reference path=\"../../shared-node/base-externals-utils.ts\" />\n/// <reference path=\"../../shared-node/node-externals-utils.ts\" />\n/// <reference path=\"./nodejs-globals.d.ts\" />\n\n/**\n * Base Node.js runtime shared between production and development.\n * Contains chunk loading, module caching, and other non-HMR functionality.\n */\n\nprocess.env.TURBOPACK = '1'\n\nconst url = require('url') as typeof import('url')\n\nconst moduleFactories: ModuleFactories = new Map()\nconst moduleCache: ModuleCache<Module> = new Map()\n\n/**\n * Returns an absolute path to the given module's id.\n */\nfunction resolvePathFromModule(\n this: TurbopackBaseContext<Module>,\n moduleId: string\n): string {\n const exported = this.r(moduleId)\n const exportedPath = exported?.default ?? exported\n if (typeof exportedPath !== 'string') {\n return exported as any\n }\n\n const strippedAssetPrefix = exportedPath.slice(ASSET_PREFIX.length)\n const resolved = path.resolve(RUNTIME_ROOT, strippedAssetPrefix)\n\n return url.pathToFileURL(resolved).href\n}\n\n/**\n * Exports a URL value. No suffix is added in Node.js runtime.\n */\nfunction exportUrl(\n this: TurbopackBaseContext<Module>,\n urlValue: string,\n id: ModuleId | undefined\n) {\n exportValue.call(this, urlValue, id)\n}\n\nfunction loadRuntimeChunk(sourcePath: ChunkPath, chunkData: ChunkData): void {\n if (typeof chunkData === 'string') {\n loadRuntimeChunkPath(sourcePath, chunkData)\n } else {\n loadRuntimeChunkPath(sourcePath, chunkData.path)\n }\n}\n\nconst loadedChunks = new Set<ChunkPath>()\nconst unsupportedLoadChunk = Promise.resolve(undefined)\nconst loadedChunk: Promise<void> = Promise.resolve(undefined)\nconst chunkCache = new Map<ChunkPath, Promise<void>>()\n\nfunction clearChunkCache() {\n chunkCache.clear()\n loadedChunks.clear()\n}\n\nfunction loadRuntimeChunkPath(\n sourcePath: ChunkPath,\n chunkPath: ChunkPath\n): void {\n if (!isJs(chunkPath)) {\n // We only support loading JS chunks in Node.js.\n // This branch can be hit when trying to load a CSS chunk.\n return\n }\n\n if (loadedChunks.has(chunkPath)) {\n return\n }\n\n try {\n const resolved = path.resolve(RUNTIME_ROOT, chunkPath)\n const chunkModules: CompressedModuleFactories = require(resolved)\n installCompressedModuleFactories(chunkModules, 0, moduleFactories)\n loadedChunks.add(chunkPath)\n } catch (cause) {\n let errorMessage = `Failed to load chunk ${chunkPath}`\n\n if (sourcePath) {\n errorMessage += ` from runtime for chunk ${sourcePath}`\n }\n\n const error = new Error(errorMessage, { cause })\n error.name = 'ChunkLoadError'\n throw error\n }\n}\n\nfunction loadChunkAsync<TModule extends Module>(\n this: TurbopackBaseContext<TModule>,\n chunkData: ChunkData\n): Promise<void> {\n const chunkPath = typeof chunkData === 'string' ? chunkData : chunkData.path\n if (!isJs(chunkPath)) {\n // We only support loading JS chunks in Node.js.\n // This branch can be hit when trying to load a CSS chunk.\n return unsupportedLoadChunk\n }\n\n let entry = chunkCache.get(chunkPath)\n if (entry === undefined) {\n try {\n // resolve to an absolute path to simplify `require` handling\n const resolved = path.resolve(RUNTIME_ROOT, chunkPath)\n // TODO: consider switching to `import()` to enable concurrent chunk loading and async file io\n // However this is incompatible with hot reloading (since `import` doesn't use the require cache)\n const chunkModules: CompressedModuleFactories = require(resolved)\n installCompressedModuleFactories(chunkModules, 0, moduleFactories)\n entry = loadedChunk\n } catch (cause) {\n const errorMessage = `Failed to load chunk ${chunkPath} from module ${this.m.id}`\n const error = new Error(errorMessage, { cause })\n error.name = 'ChunkLoadError'\n\n // Cache the failure promise, future requests will also get this same rejection\n entry = Promise.reject(error)\n }\n chunkCache.set(chunkPath, entry)\n }\n // TODO: Return an instrumented Promise that React can use instead of relying on referential equality.\n return entry\n}\ncontextPrototype.l = loadChunkAsync\n\nfunction loadChunkAsyncByUrl<TModule extends Module>(\n this: TurbopackBaseContext<TModule>,\n chunkUrl: string\n) {\n const path = url.fileURLToPath(new URL(chunkUrl, RUNTIME_ROOT)) as ChunkPath\n return loadChunkAsync.call(this, path)\n}\ncontextPrototype.L = loadChunkAsyncByUrl\n\n// Shared runtime primitive: the root that on-disk chunk paths are resolved\n// against. Used by the bundled wasm helper (exposed as `__turbopack_runtime_root__`).\ncontextPrototype.w = RUNTIME_ROOT\n\nconst regexJsUrl = /\\.js(?:\\?[^#]*)?(?:#.*)?$/\n/**\n * Checks if a given path/URL ends with .js, optionally followed by ?query or #fragment.\n */\nfunction isJs(chunkUrlOrPath: ChunkUrl | ChunkPath): boolean {\n return regexJsUrl.test(chunkUrlOrPath)\n}\n"],"names":["process","env","TURBOPACK","url","require","moduleFactories","Map","moduleCache","resolvePathFromModule","moduleId","exported","r","exportedPath","default","strippedAssetPrefix","slice","ASSET_PREFIX","length","resolved","path","resolve","RUNTIME_ROOT","pathToFileURL","href","exportUrl","urlValue","id","exportValue","call","loadRuntimeChunk","sourcePath","chunkData","loadRuntimeChunkPath","loadedChunks","Set","unsupportedLoadChunk","Promise","undefined","loadedChunk","chunkCache","clearChunkCache","clear","chunkPath","isJs","has","chunkModules","installCompressedModuleFactories","add","cause","errorMessage","error","Error","name","loadChunkAsync","entry","get","m","reject","set","contextPrototype","l","loadChunkAsyncByUrl","chunkUrl","path1","fileURLToPath","URL","L","w","regexJsUrl","chunkUrlOrPath","test"],"mappings":"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","ignoreList":[0]}},
9
+ {"offset": {"line": 858, "column": 0}, "map": {"version":3,"sources":["turbopack:///[turbopack]/nodejs/runtime/build-base.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n\n/// <reference path=\"./runtime-base.ts\" />\n\n/**\n * Production Node.js runtime.\n * Uses ModuleWithDirection and simple module instantiation without HMR support.\n */\n\n// moduleCache and moduleFactories are declared in runtime-base.ts\n\n// this is read in runtime-utils.ts so it creates a module with direction for hmr\ncreateModuleWithDirectionFlag = true\n\ninterface TurbopackNodeBuildContext\n extends TurbopackBaseContext<ModuleWithDirection> {\n R: ResolvePathFromModule\n x: ExternalRequire\n y: ExternalImport\n C: typeof clearChunkCache\n}\n\nconst nodeContextPrototype = Context.prototype as TurbopackNodeBuildContext\n\nnodeContextPrototype.q = exportUrl\nnodeContextPrototype.M = moduleFactories\n// Cast moduleCache to ModuleWithDirection for production mode\nnodeContextPrototype.c = moduleCache as ModuleCache<ModuleWithDirection>\nnodeContextPrototype.R = resolvePathFromModule\nnodeContextPrototype.C = clearChunkCache\n\nfunction instantiateModule(\n id: ModuleId,\n sourceType: SourceType,\n sourceData: SourceData\n): ModuleWithDirection {\n const moduleFactory = moduleFactories.get(id)\n if (typeof moduleFactory !== 'function') {\n // This can happen if modules incorrectly handle HMR disposes/updates,\n // e.g. when they keep a `setTimeout` around which still executes old code\n // and contains e.g. a `require(\"something\")` call.\n throw new Error(factoryNotAvailableMessage(id, sourceType, sourceData))\n }\n\n const module: ModuleWithDirection = createModuleWithDirection(id)\n const exports = module.exports\n moduleCache.set(id, module)\n\n const context =\n new (Context as any as ContextConstructor<ModuleWithDirection>)(\n module,\n exports\n )\n // NOTE(alexkirsz) This can fail when the module encounters a runtime error.\n try {\n moduleFactory(context, module, exports)\n } catch (error) {\n module.error = error as any\n throw error\n }\n\n ;(module as any).loaded = true\n if (module.namespaceObject && module.exports !== module.namespaceObject) {\n // in case of a circular dependency: cjs1 -> esm2 -> cjs1\n interopEsm(module.exports, module.namespaceObject)\n }\n\n return module\n}\n\n/**\n * Retrieves a module from the cache, or instantiate it if it is not cached.\n */\n// @ts-ignore\nfunction getOrInstantiateModuleFromParent(\n id: ModuleId,\n sourceModule: ModuleWithDirection\n): ModuleWithDirection {\n const module = moduleCache.get(id) as ModuleWithDirection | undefined\n\n if (module) {\n if (module.error) {\n throw module.error\n }\n\n return module\n }\n\n return instantiateModule(id, SourceType.Parent, sourceModule.id)\n}\n\n/**\n * Instantiates a runtime module.\n */\nfunction instantiateRuntimeModule(\n chunkPath: ChunkPath,\n moduleId: ModuleId\n): ModuleWithDirection {\n return instantiateModule(moduleId, SourceType.Runtime, chunkPath)\n}\n\n/**\n * Retrieves a module from the cache, or instantiate it as a runtime module if it is not cached.\n */\n// @ts-ignore TypeScript doesn't separate this module space from the browser runtime\nfunction getOrInstantiateRuntimeModule(\n chunkPath: ChunkPath,\n moduleId: ModuleId\n): ModuleWithDirection {\n const module = moduleCache.get(moduleId) as ModuleWithDirection | undefined\n\n if (module) {\n if (module.error) {\n throw module.error\n }\n return module\n }\n\n return instantiateRuntimeModule(chunkPath, moduleId)\n}\n\nmodule.exports = (sourcePath: ChunkPath) => ({\n m: (id: ModuleId) => getOrInstantiateRuntimeModule(sourcePath, id),\n c: (chunkData: ChunkData) => loadRuntimeChunk(sourcePath, chunkData),\n})\n"],"names":["createModuleWithDirectionFlag","nodeContextPrototype","Context","prototype","q","exportUrl","M","moduleFactories","c","moduleCache","R","resolvePathFromModule","C","clearChunkCache","instantiateModule","id","sourceType","sourceData","moduleFactory","get","Error","factoryNotAvailableMessage","module1","createModuleWithDirection","exports","set","context","error","loaded","namespaceObject","interopEsm","getOrInstantiateModuleFromParent","sourceModule","SourceType","Parent","instantiateRuntimeModule","chunkPath","moduleId","Runtime","getOrInstantiateRuntimeModule","module","sourcePath","m","chunkData","loadRuntimeChunk"],"mappings":"AAAA,oDAAoD,GAEpD,0CAA0C;AAE1C;;;CAGC,GAED,kEAAkE;AAElE,iFAAiF;AACjFA,gCAAgC;AAUhC,MAAMC,uBAAuBC,QAAQC,SAAS;AAE9CF,qBAAqBG,CAAC,GAAGC;AACzBJ,qBAAqBK,CAAC,GAAGC;AACzB,8DAA8D;AAC9DN,qBAAqBO,CAAC,GAAGC;AACzBR,qBAAqBS,CAAC,GAAGC;AACzBV,qBAAqBW,CAAC,GAAGC;AAEzB,SAASC,kBACPC,EAAY,EACZC,UAAsB,EACtBC,UAAsB;IAEtB,MAAMC,gBAAgBX,gBAAgBY,GAAG,CAACJ;IAC1C,IAAI,OAAOG,kBAAkB,YAAY;QACvC,sEAAsE;QACtE,0EAA0E;QAC1E,mDAAmD;QACnD,MAAM,IAAIE,MAAMC,2BAA2BN,IAAIC,YAAYC;IAC7D;IAEA,MAAMK,UAA8BC,0BAA0BR;IAC9D,MAAMS,UAAUF,QAAOE,OAAO;IAC9Bf,YAAYgB,GAAG,CAACV,IAAIO;IAEpB,MAAMI,UACJ,IAAKxB,QACHoB,SACAE;IAEJ,4EAA4E;IAC5E,IAAI;QACFN,cAAcQ,SAASJ,SAAQE;IACjC,EAAE,OAAOG,OAAO;QACdL,QAAOK,KAAK,GAAGA;QACf,MAAMA;IACR;;IAEEL,QAAeM,MAAM,GAAG;IAC1B,IAAIN,QAAOO,eAAe,IAAIP,QAAOE,OAAO,KAAKF,QAAOO,eAAe,EAAE;QACvE,yDAAyD;QACzDC,WAAWR,QAAOE,OAAO,EAAEF,QAAOO,eAAe;IACnD;IAEA,OAAOP;AACT;AAEA;;CAEC,GACD,aAAa;AACb,SAASS,iCACPhB,EAAY,EACZiB,YAAiC;IAEjC,MAAMV,UAASb,YAAYU,GAAG,CAACJ;IAE/B,IAAIO,SAAQ;QACV,IAAIA,QAAOK,KAAK,EAAE;YAChB,MAAML,QAAOK,KAAK;QACpB;QAEA,OAAOL;IACT;IAEA,OAAOR,kBAAkBC,IAAIkB,WAAWC,MAAM,EAAEF,aAAajB,EAAE;AACjE;AAEA;;CAEC,GACD,SAASoB,yBACPC,SAAoB,EACpBC,QAAkB;IAElB,OAAOvB,kBAAkBuB,UAAUJ,WAAWK,OAAO,EAAEF;AACzD;AAEA;;CAEC,GACD,oFAAoF;AACpF,SAASG,8BACPH,SAAoB,EACpBC,QAAkB;IAElB,MAAMf,UAASb,YAAYU,GAAG,CAACkB;IAE/B,IAAIf,SAAQ;QACV,IAAIA,QAAOK,KAAK,EAAE;YAChB,MAAML,QAAOK,KAAK;QACpB;QACA,OAAOL;IACT;IAEA,OAAOa,yBAAyBC,WAAWC;AAC7C;AAEAG,OAAOhB,OAAO,GAAG,CAACiB,aAA0B,CAAC;QAC3CC,GAAG,CAAC3B,KAAiBwB,8BAA8BE,YAAY1B;QAC/DP,GAAG,CAACmC,YAAyBC,iBAAiBH,YAAYE;IAC5D,CAAC","ignoreList":[0]}}]
10
+ }
@@ -0,0 +1,3 @@
1
+ module.exports=[31286,s=>{"use strict";s.s([])}];
2
+
3
+ //# sourceMappingURL=_next-internal_server_app_api_traces_stream_route_actions_07rmicxgds803.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ module.exports=[81986,s=>{"use strict";s.s([])}];
2
+
3
+ //# sourceMappingURL=_next-internal_server_app_api_version_route_actions_0kbx30hro8e93.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ module.exports=[10767,a=>{"use strict";var b=a.i(44373),c=a.i(65239),d=a.i(92110),e=a.i(93469),f=a.i(67309),g=a.i(87069),h=a.i(71805),i=a.i(99585),j=a.i(7062),k=a.i(2048),l=a.i(13753),m=a.i(89376),n=a.i(43817),o=a.i(45914);let p=new f.f,q=new f.f,r=new f.f,s=new f.f,t=new f.f;function u(a,b){switch(b.type){case"rectangle":a.rect(b.x,b.y,b.width,b.height);break;case"roundedRectangle":var c,d,e,f,g;c=b.x,d=b.y,e=b.width,f=b.height,g=Math.max(0,Math.min(g=b.radius,Math.min(e,f)/2)),a.moveTo(c+g,d),a.lineTo(c+e-g,d),a.quadraticCurveTo(c+e,d,c+e,d+g),a.lineTo(c+e,d+f-g),a.quadraticCurveTo(c+e,d+f,c+e-g,d+f),a.lineTo(c+g,d+f),a.quadraticCurveTo(c,d+f,c,d+f-g),a.lineTo(c,d+g),a.quadraticCurveTo(c,d,c+g,d);break;case"circle":a.arc(b.x,b.y,b.radius,0,2*Math.PI);break;case"ellipse":a.ellipse?a.ellipse(b.x,b.y,b.halfWidth,b.halfHeight,0,0,2*Math.PI):(a.save(),a.translate(b.x,b.y),a.scale(b.halfWidth,b.halfHeight),a.arc(0,0,1,0,2*Math.PI),a.restore());break;case"triangle":a.moveTo(b.x,b.y),a.lineTo(b.x2,b.y2),a.lineTo(b.x3,b.y3),a.closePath();break;default:{let c=b.points;if(!c?.length)break;a.moveTo(c[0],c[1]);for(let b=2;b<c.length;b+=2)a.lineTo(c[b],c[b+1]);b.closePath&&a.closePath()}}}class v{constructor(){this.shader=null}contextChange(a){}execute(a,b){let c=a.renderer,d=c.canvasContext,f=d.activeContext,v=b.groupTransform,w=c.globalUniforms.globalUniformData?.worldColor??0xffffffff,x=b.groupColorAlpha,y=(w>>>24&255)/255*((x>>>24&255)/255)*(c.filter?.alphaMultiplier??1);if(y<=0)return;let z=(0,i.k)((0,j.f)(0xffffff&x,0xffffff&w)),A=c._roundPixels|b._roundPixels;f.save(),d.setContextTransform(v,1===A),d.setBlendMode(b.groupBlendMode);let B=b.context.instructions;for(let a=0;a<B.length;a++){let b=B[a];if("texture"===b.action){let a=b.data,c=a.image,h=c?g.f.getCanvasSource(c):null;if(!h)continue;let i=a.alpha*y;if(i<=0)continue;let k=(0,j.f)(a.style,z);f.globalAlpha=i;let l=h;0xffffff!==k&&(l=g.f.getTintedCanvas({texture:c},k));let m=c.frame,n=c.source._resolution??c.source.resolution??1,o=m.x*n,q=m.y*n,r=m.width*n,s=m.height*n;l!==h&&(o=0,q=0);let t=a.transform,u=t&&!t.isIdentity(),w=c.rotate;u||w?(p.copyFrom(v),u&&p.append(t),w&&e.f.matrixAppendRotationInv(p,w,a.dx,a.dy,a.dw,a.dh),d.setContextTransform(p,1===A)):d.setContextTransform(v,1===A),f.drawImage(l,o,q,l===h?r:l.width,l===h?s:l.height,w?0:a.dx,w?0:a.dy,a.dw,a.dh),(u||w)&&d.setContextTransform(v,1===A);continue}let c=b.data,i=c?.path?.shapePath;if(!i?.shapePrimitives?.length)continue;let w=c.style,x=(0,j.f)(w.color,z),C=w.alpha*y;if(C<=0)continue;let D="stroke"===b.action;f.globalAlpha=C,D&&(f.lineWidth=w.width,f.lineCap=w.cap,f.lineJoin=w.join,f.miterLimit=w.miterLimit);let E=i.shapePrimitives;!D&&c.hole?.shapePath?.shapePrimitives?.length&&(E[E.length-1].holes=c.hole.shapePath.shapePrimitives);for(let a=0;a<E.length;a++){let b=E[a];if(!b?.shape)continue;let c=b.transform,d=c&&!c.isIdentity(),e=w.texture&&w.texture!==h.f.WHITE,i="global"===w.textureSpace?c:null,j=e?(0,o.f)(q,w,b.shape,i):null,p=function(a,b,c,d){let e=a.fill;if(e instanceof l.f){e.buildGradient();let f=e.texture;if(f){let h=g.f.getTintedPattern(f,b),i=c?s.copyFrom(c).scale(f.source.pixelWidth,f.source.pixelHeight):s.copyFrom(e.transform);return d&&!a.textureSpace&&i.append(d),g.f.applyPatternTransform(h,i),h}}if(e instanceof m.f){let a=g.f.getTintedPattern(e.texture,b);return g.f.applyPatternTransform(a,e.transform,!1),a}let f=a.texture;if(f&&f!==h.f.WHITE){if(!f.source.resource)return"#808080";let d=g.f.getTintedPattern(f,b),e=a.matrix;if(c){let{resolution:a}=f.source;if(e=s.copyFrom(c),f.rotate){let{uvs:b,orig:c}=f;e.prepend(t.set(b.x1-b.x0,b.y1-b.y0,b.x3-b.x0,b.y3-b.y0,b.x0,b.y0).invert()).scale(c.width*a,c.height*a)}else e.scale(f.source.pixelWidth,f.source.pixelHeight).translate(-f.frame.x*a,-f.frame.y*a)}return g.f.applyPatternTransform(d,e),d}return`#${(0xffffff&b).toString(16).padStart(6,"0")}`}(w,x,j,d?r.copyFrom(v).append(c):v);if(d&&(f.save(),f.transform(c.a,c.b,c.c,c.d,c.tx,c.ty)),D)if(.5===w.alignment||w.pixelLine)f.strokeStyle=p,f.beginPath(),u(f,b.shape),f.stroke();else{let a=[],c=[],d=[],e=n.f[b.shape.type];if(e?.build(b.shape,a)){let e=b.shape.closePath??!0;(0,k.f)(a,w,!1,e,c,d),f.fillStyle=p;f.beginPath();for(let a=0;a<d.length;a+=3){let b=2*d[a],e=2*d[a+1],g=2*d[a+2];f.moveTo(c[b],c[b+1]),f.lineTo(c[e],c[e+1]),f.lineTo(c[g],c[g+1]),f.closePath()}f.fill()}else f.strokeStyle=p,f.beginPath(),u(f,b.shape),f.stroke()}else f.fillStyle=p,f.beginPath(),u(f,b.shape),function(a,b){if(!b?.length)return!1;for(let c=0;c<b.length;c++){let d=b[c];if(!d?.shape)continue;let e=d.transform,f=e&&!e.isIdentity();f&&(a.save(),a.transform(e.a,e.b,e.c,e.d,e.tx,e.ty)),u(a,d.shape),f&&a.restore()}return!0}(f,b.holes)?f.fill("evenodd"):f.fill();d&&f.restore()}}f.restore()}destroy(){this.shader=null}}v.extension={type:[b.x.CanvasPipesAdaptor],name:"graphics"};var w=a.i(54590);let x=class a{static _getPatternRepeat(a,b){let c=a&&"clamp-to-edge"!==a,d=b&&"clamp-to-edge"!==b;return c&&d?"repeat":c?"repeat-x":d?"repeat-y":"no-repeat"}start(a,b,c){}execute(b,c){let d=c.elements;if(!d||!d.length)return;let f=b.renderer,h=f.canvasContext,k=h.activeContext;for(let b=0;b<d.length;b++){let l=d[b];if(!l.packAsQuad)continue;let m=l.texture,n=m?g.f.getCanvasSource(m):null;if(!n)continue;let o=m.source.style,p=h.smoothProperty,q="nearest"!==o.scaleMode;k[p]!==q&&(k[p]=q),h.setBlendMode(c.blendMode);let r=f.globalUniforms.globalUniformData?.worldColor??0xffffffff,s=l.color,t=(r>>>24&255)/255*((s>>>24&255)/255)*(f.filter?.alphaMultiplier??1);if(t<=0)continue;k.globalAlpha=t;let u=0xffffff&r,v=0xffffff&s,w=(0,i.k)((0,j.f)(v,u)),x=m.frame,y=o.addressModeU??o.addressMode,z=o.addressModeV??o.addressMode,A=a._getPatternRepeat(y,z),B=m.source._resolution??m.source.resolution??1,C=l.renderable?.renderGroup?.isCachedAsTexture,D=x.x*B,E=x.y*B,F=x.width*B,G=x.height*B,H=l.bounds,I=f.renderTarget.renderTarget.isRoot,J=H.minX,K=H.minY,L=H.maxX-H.minX,M=H.maxY-H.minY,N=m.rotate,O=m.uvs,P=Math.min(O.x0,O.x1,O.x2,O.x3,O.y0,O.y1,O.y2,O.y3),Q=Math.max(O.x0,O.x1,O.x2,O.x3,O.y0,O.y1,O.y2,O.y3),R="no-repeat"!==A&&(P<0||Q>1),S=!R&&(0xffffff!==w||N),T=N&&!S;T?(a._tempPatternMatrix.copyFrom(l.transform),e.f.matrixAppendRotationInv(a._tempPatternMatrix,N,J,K,L,M),h.setContextTransform(a._tempPatternMatrix,1===l.roundPixels,void 0,C&&I)):h.setContextTransform(l.transform,1===l.roundPixels,void 0,C&&I);let U=T?0:J,V=T?0:K;if(T||1!==l.roundPixels||(U|=0,V|=0),R){let b=n,c=0xffffff!==w&&!N,d=x.width<=m.source.width&&x.height<=m.source.height;c&&d&&(b=g.f.getTintedCanvas({texture:m},w));let e=k.createPattern(b,A);if(!e||0===L||0===M)continue;let f=1/L,h=1/M,i=(O.x1-O.x0)*f,j=(O.y1-O.y0)*f,l=(O.x3-O.x0)*h,o=(O.y3-O.y0)*h,p=O.x0-i*U-l*V,q=O.y0-j*U-o*V,r=m.source.pixelWidth,s=m.source.pixelHeight;a._tempPatternMatrix.set(i*r,j*s,l*r,o*s,p*r,q*s),g.f.applyPatternTransform(e,a._tempPatternMatrix),k.fillStyle=e,k.fillRect(U,V,L,M)}else{let a=0xffffff!==w||N?g.f.getTintedCanvas({texture:m},w):n,b=a!==n;k.drawImage(a,b?0:D,b?0:E,b?a.width:F,b?a.height:G,U,V,L,M)}}}};x._tempPatternMatrix=new f.f,x.extension={type:[b.x.CanvasPipesAdaptor],name:"batch"};var y=a.i(35261),z=a.i(65272);class A{constructor(a){this._colorStack=[],this._colorStackIndex=0,this._currentColor=0,this._renderer=a}buildStart(){this._colorStack[0]=15,this._colorStackIndex=1,this._currentColor=15}push(a,b,c){this._renderer.renderPipes.batch.break(c);let d=this._colorStack;d[this._colorStackIndex]=d[this._colorStackIndex-1]&a.mask;let e=this._colorStack[this._colorStackIndex];e!==this._currentColor&&(this._currentColor=e,c.add({renderPipeId:"colorMask",colorMask:e,canBundle:!1})),this._colorStackIndex++}pop(a,b,c){this._renderer.renderPipes.batch.break(c);let d=this._colorStack;this._colorStackIndex--;let e=d[this._colorStackIndex-1];e!==this._currentColor&&(this._currentColor=e,c.add({renderPipeId:"colorMask",colorMask:e,canBundle:!1}))}execute(a){}destroy(){this._renderer=null,this._colorStack=null}}A.extension={type:[b.x.CanvasPipes],name:"colorMask"};var B=a.i(28136),C=a.i(51983);function D(a,b){switch(b.type){case"rectangle":a.rect(b.x,b.y,b.width,b.height);break;case"roundedRectangle":var c,d,e,f,g;c=b.x,d=b.y,e=b.width,f=b.height,g=Math.max(0,Math.min(g=b.radius,Math.min(e,f)/2)),a.moveTo(c+g,d),a.lineTo(c+e-g,d),a.quadraticCurveTo(c+e,d,c+e,d+g),a.lineTo(c+e,d+f-g),a.quadraticCurveTo(c+e,d+f,c+e-g,d+f),a.lineTo(c+g,d+f),a.quadraticCurveTo(c,d+f,c,d+f-g),a.lineTo(c,d+g),a.quadraticCurveTo(c,d,c+g,d);break;case"circle":a.moveTo(b.x+b.radius,b.y),a.arc(b.x,b.y,b.radius,0,2*Math.PI);break;case"ellipse":a.ellipse?(a.moveTo(b.x+b.halfWidth,b.y),a.ellipse(b.x,b.y,b.halfWidth,b.halfHeight,0,0,2*Math.PI)):(a.save(),a.translate(b.x,b.y),a.scale(b.halfWidth,b.halfHeight),a.moveTo(1,0),a.arc(0,0,1,0,2*Math.PI),a.restore());break;case"triangle":a.moveTo(b.x,b.y),a.lineTo(b.x2,b.y2),a.lineTo(b.x3,b.y3),a.closePath();break;default:{let c=b.points;if(!c?.length)break;a.moveTo(c[0],c[1]);for(let b=2;b<c.length;b+=2)a.lineTo(c[b],c[b+1]);b.closePath&&a.closePath()}}}class E{constructor(a){this._warnedMaskTypes=new Set,this._canvasMaskStack=[],this._renderer=a}push(a,b,c){this._renderer.renderPipes.batch.break(c),c.add({renderPipeId:"stencilMask",action:"pushMaskBegin",mask:a,inverse:b._maskOptions.inverse,canBundle:!1})}pop(a,b,c){this._renderer.renderPipes.batch.break(c),c.add({renderPipeId:"stencilMask",action:"popMaskEnd",mask:a,inverse:b._maskOptions.inverse,canBundle:!1})}execute(a){if("pushMaskBegin"!==a.action&&"popMaskEnd"!==a.action)return;let b=this._renderer,c=b.canvasContext,d=c?.activeContext;if(!d)return;if("popMaskEnd"===a.action){this._canvasMaskStack.pop()&&d.restore();return}a.inverse&&this._warnOnce("inverse","CanvasRenderer: inverse masks are not supported on Canvas2D; ignoring inverse flag.");let e=a.mask.mask;if(!(e instanceof B.f)){this._warnOnce("nonGraphics","CanvasRenderer: only Graphics masks are supported in Canvas2D; skipping mask."),this._canvasMaskStack.push(!1);return}let f=e.context?.instructions;if(!f?.length)return void this._canvasMaskStack.push(!1);d.save(),c.setContextTransform(e.groupTransform,(b._roundPixels|e._roundPixels)==1),d.beginPath();let g=!1,h=!1;for(let a=0;a<f.length;a++){let b=f[a],c=b.action;if("fill"!==c&&"stroke"!==c)continue;let e=b.data,i=e?.path?.shapePath;if(!i?.shapePrimitives?.length)continue;let j="stroke"===c,l=i.shapePrimitives;for(let a=0;a<l.length;a++){let b=l[a];if(!b?.shape)continue;let c=b.transform,f=c&&!c.isIdentity();f&&(d.save(),d.transform(c.a,c.b,c.c,c.d,c.tx,c.ty)),j&&e.style?g=function(a,b,c){let d=[],e=[],f=[],g=n.f[b.type];if(!g?.build(b,d))return!1;let h=b.closePath??!0;(0,k.f)(d,c,!1,h,e,f);for(let b=0;b<f.length;b+=3){let c=2*f[b],d=2*f[b+1],g=2*f[b+2];a.moveTo(e[c],e[c+1]),a.lineTo(e[d],e[d+1]),a.lineTo(e[g],e[g+1]),a.closePath()}return!0}(d,b.shape,e.style)||g:(D(d,b.shape),h=function(a,b){if(!b?.length)return!1;for(let c=0;c<b.length;c++){let d=b[c];if(!d?.shape)continue;let e=d.transform,f=e&&!e.isIdentity();f&&(a.save(),a.transform(e.a,e.b,e.c,e.d,e.tx,e.ty)),D(a,d.shape),f&&a.restore()}return!0}(d,b.holes)||h,g=!0),f&&d.restore()}}if(!g){d.restore(),this._canvasMaskStack.push(!1);return}h?d.clip("evenodd"):d.clip(),this._canvasMaskStack.push(!0)}destroy(){this._renderer=null,this._warnedMaskTypes=null,this._canvasMaskStack=null}_warnOnce(a,b){this._warnedMaskTypes.has(a)||(this._warnedMaskTypes.add(a),(0,C.f)(b))}}E.extension={type:[b.x.CanvasPipes],name:"stencilMask"};var F=a.i(69356),G=a.i(67663),H=a.i(33057),I=a.i(53507),J=a.i(98063),K=a.i(43399);let L="source-over",M=new f.f;class N{constructor(a){let b,c;this.activeResolution=1,this.smoothProperty="imageSmoothingEnabled",this.blendModes=(b=(0,K.f)(),(c=Object.create(null)).inherit=L,c.none=L,c.normal="source-over",c.add="lighter",c.multiply=b?"multiply":L,c.screen=b?"screen":L,c.overlay=b?"overlay":L,c.darken=b?"darken":L,c.lighten=b?"lighten":L,c["color-dodge"]=b?"color-dodge":L,c["color-burn"]=b?"color-burn":L,c["hard-light"]=b?"hard-light":L,c["soft-light"]=b?"soft-light":L,c.difference=b?"difference":L,c.exclusion=b?"exclusion":L,c.saturation=b?"saturation":L,c.color=b?"color":L,c.luminosity=b?"luminosity":L,c["linear-burn"]=b?"color-burn":L,c["linear-dodge"]=b?"color-dodge":L,c["linear-light"]=b?"hard-light":L,c["pin-light"]=b?"hard-light":L,c["vivid-light"]=b?"hard-light":L,c["hard-mix"]=L,c.negation=b?"difference":L,c["normal-npm"]=c.normal,c["add-npm"]=c.add,c["screen-npm"]=c.screen,c.erase="destination-out",c.subtract=L,c.divide=L,c.min=L,c.max=L,c),this._activeBlendMode="normal",this._projTransform=null,this._outerBlend=!1,this._warnedBlendModes=new Set,this._renderer=a}resolutionChange(a){this.activeResolution=a}init(){let a=this._renderer.background.alpha<1;if(this.rootContext=this._renderer.canvas.getContext("2d",{alpha:a}),this.activeContext=this.rootContext,this.activeResolution=this._renderer.resolution,!this.rootContext.imageSmoothingEnabled){let a=this.rootContext;a.webkitImageSmoothingEnabled?this.smoothProperty="webkitImageSmoothingEnabled":a.mozImageSmoothingEnabled?this.smoothProperty="mozImageSmoothingEnabled":a.oImageSmoothingEnabled?this.smoothProperty="oImageSmoothingEnabled":a.msImageSmoothingEnabled&&(this.smoothProperty="msImageSmoothingEnabled")}}setContextTransform(a,b,c,d){let e=d?f.f.IDENTITY:this._renderer.globalUniforms.globalUniformData?.worldTransformMatrix||f.f.IDENTITY,g=M;g.copyFrom(e),g.append(a);let h=this._projTransform,i=this.activeResolution;if(c=c||i,h){let a=f.f.shared;a.copyFrom(g),a.prepend(h),g=a}b?this.activeContext.setTransform(g.a*c,g.b*c,g.c*c,g.d*c,g.tx*i|0,g.ty*i|0):this.activeContext.setTransform(g.a*c,g.b*c,g.c*c,g.d*c,g.tx*i,g.ty*i)}clear(a,b){let c=this.activeContext,d=this._renderer;if(c.clearRect(0,0,d.width,d.height),a){let e=J.f.shared.setValue(a);c.globalAlpha=b??e.alpha,c.fillStyle=e.toHex(),c.fillRect(0,0,d.width,d.height),c.globalAlpha=1}}setBlendMode(a){if(this._activeBlendMode===a)return;this._activeBlendMode=a,this._outerBlend=!1;let b=this.blendModes[a];if(!b){this._warnedBlendModes.has(a)||(console.warn(`CanvasRenderer: blend mode "${a}" is not supported in Canvas2D; falling back to "source-over".`),this._warnedBlendModes.add(a)),this.activeContext.globalCompositeOperation="source-over";return}this.activeContext.globalCompositeOperation=b}destroy(){this.rootContext=null,this.activeContext=null,this._warnedBlendModes.clear()}}N.extension={type:[b.x.CanvasSystem],name:"canvasContext"};class O{constructor(){this.maxTextures=16,this.maxBatchableTextures=16,this.maxUniformBindings=0}init(){}}O.extension={type:[b.x.CanvasSystem],name:"limits"};var P=a.i(31741),Q=a.i(58422),R=a.i(39238);class S{init(a,b){this._renderer=a,this._renderTargetSystem=b}initGpuRenderTarget(a){let b=a.colorTexture,{canvas:c,context:d}=this._ensureCanvas(b);return{canvas:c,context:d,width:c.width,height:c.height}}resizeGpuRenderTarget(a){let b=a.colorTexture,{canvas:c}=this._ensureCanvas(b);c.width=a.pixelWidth,c.height=a.pixelHeight}startRenderPass(a,b,c,d){let e=this._renderTargetSystem.getGpuRenderTarget(a);this._renderer.canvasContext.activeContext=e.context,this._renderer.canvasContext.activeResolution=a.resolution,b&&this.clear(a,b,c,d)}clear(a,b,c,d){let e=this._renderTargetSystem.getGpuRenderTarget(a).context,f=d||{x:0,y:0,width:a.pixelWidth,height:a.pixelHeight};if(e.setTransform(1,0,0,1,0,0),e.clearRect(f.x,f.y,f.width,f.height),c){let a=J.f.shared.setValue(c);a.alpha>0&&(e.globalAlpha=a.alpha,e.fillStyle=a.toHex(),e.fillRect(f.x,f.y,f.width,f.height),e.globalAlpha=1)}}finishRenderPass(){}copyToTexture(a,b,c,d,e){let f=this._renderTargetSystem.getGpuRenderTarget(a).canvas,g=b.source,{context:h}=this._ensureCanvas(g),i=e?.x??0,j=e?.y??0;return h.drawImage(f,c.x,c.y,d.width,d.height,i,j,d.width,d.height),g.update(),b}copyDepthTexture(a,b,c,d,e){(0,C.f)("[CanvasRenderTargetAdaptor] copyDepthTexture is not supported in the canvas renderer")}destroyGpuRenderTarget(a){}_ensureCanvas(a){let b=a.resource;b&&R.f.test(b)||(b=Q.f.get().createCanvas(a.pixelWidth,a.pixelHeight),a.resource=b),(b.width!==a.pixelWidth||b.height!==a.pixelHeight)&&(b.width=a.pixelWidth,b.height=a.pixelHeight);let c=b.getContext("2d");return{canvas:b,context:c}}}class T extends P.f{constructor(a){super(a),this.adaptor=new S,this.adaptor.init(a,this)}}T.extension={type:[b.x.CanvasSystem],name:"renderTarget"};class U{constructor(a){}init(){}initSource(a){}generateCanvas(a){let b=Q.f.get().createCanvas(),c=b.getContext("2d"),d=g.f.getCanvasSource(a);if(!d)return b;let e=a.frame,f=a.source._resolution??a.source.resolution??1,h=e.x*f,i=e.y*f,j=e.width*f,k=e.height*f;return b.width=Math.ceil(j),b.height=Math.ceil(k),c.drawImage(d,h,i,j,k,0,0,j,k),b}getPixels(a){let b=this.generateCanvas(a);return{pixels:b.getContext("2d",{willReadFrequently:!0}).getImageData(0,0,b.width,b.height).data,width:b.width,height:b.height}}destroy(){}}U.extension={type:[b.x.CanvasSystem],name:"texture"};let V=[...H.q,N,O,U,T],W=[F.f,y.f,w.f,d.f,z.f,E,A,c.f],X=[x,v],Y=[],Z=[],$=[],_=[];b.H.handleByNamedList(b.x.CanvasSystem,Y),b.H.handleByNamedList(b.x.CanvasPipes,Z),b.H.handleByNamedList(b.x.CanvasPipesAdaptor,$),b.H.handleByNamedList(b.x.CanvasLoader,_),b.H.add(...V,...W,...X);class aa extends G.f{constructor(){super({name:"canvas",type:I.f.CANVAS,systems:Y,renderPipes:Z,renderPipeAdaptors:$,loaders:_})}}a.s(["CanvasRenderer",0,aa],10767)}];
2
+
3
+ //# sourceMappingURL=1q96_modules_pixi_js_lib_rendering_renderers_canvas_CanvasRenderer_mjs_1xntzghggpb51._.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../node_modules/pixi.js/src/rendering/renderers/canvas/utils/mapCanvasBlendModesToPixi.ts","../../../../node_modules/pixi.js/src/rendering/renderers/canvas/CanvasLimitsSystem.ts","../../../../node_modules/pixi.js/src/rendering/mask/color/CanvasColorMaskPipe.ts","../../../../node_modules/pixi.js/src/rendering/renderers/canvas/texture/CanvasTextureSystem.ts","../../../../node_modules/pixi.js/src/rendering/renderers/canvas/renderTarget/CanvasRenderTargetSystem.ts","../../../../node_modules/pixi.js/src/rendering/renderers/canvas/CanvasContextSystem.ts","../../../../node_modules/pixi.js/src/rendering/renderers/canvas/renderTarget/CanvasRenderTargetAdaptor.ts","../../../../node_modules/pixi.js/src/rendering/mask/stencil/CanvasStencilMaskPipe.ts","../../../../node_modules/pixi.js/src/rendering/batcher/canvas/CanvasBatchAdaptor.ts","../../../../node_modules/pixi.js/src/scene/graphics/canvas/CanvasGraphicsAdaptor.ts","../../../../node_modules/pixi.js/src/rendering/renderers/canvas/CanvasRenderer.ts"],"sourcesContent":["import { canUseNewCanvasBlendModes } from './canUseNewCanvasBlendModes';\n\nimport type { BLEND_MODES } from '../../shared/state/const';\n\nconst FALLBACK_BLEND: GlobalCompositeOperation = 'source-over';\n\n/**\n * Builds the Canvas blend mode map for Pixi blend enums.\n * @returns A mapping of Pixi blend modes to canvas composite ops.\n * @internal\n */\nexport function mapCanvasBlendModesToPixi(): Record<BLEND_MODES, GlobalCompositeOperation | null>\n{\n const supportsAdvanced = canUseNewCanvasBlendModes();\n const map = Object.create(null) as Record<BLEND_MODES, GlobalCompositeOperation>;\n\n map.inherit = FALLBACK_BLEND;\n map.none = FALLBACK_BLEND;\n\n map.normal = 'source-over';\n map.add = 'lighter';\n map.multiply = supportsAdvanced ? 'multiply' : FALLBACK_BLEND;\n map.screen = supportsAdvanced ? 'screen' : FALLBACK_BLEND;\n map.overlay = supportsAdvanced ? 'overlay' : FALLBACK_BLEND;\n map.darken = supportsAdvanced ? 'darken' : FALLBACK_BLEND;\n map.lighten = supportsAdvanced ? 'lighten' : FALLBACK_BLEND;\n map['color-dodge'] = supportsAdvanced ? 'color-dodge' : FALLBACK_BLEND;\n map['color-burn'] = supportsAdvanced ? 'color-burn' : FALLBACK_BLEND;\n map['hard-light'] = supportsAdvanced ? 'hard-light' : FALLBACK_BLEND;\n map['soft-light'] = supportsAdvanced ? 'soft-light' : FALLBACK_BLEND;\n map.difference = supportsAdvanced ? 'difference' : FALLBACK_BLEND;\n map.exclusion = supportsAdvanced ? 'exclusion' : FALLBACK_BLEND;\n map.saturation = supportsAdvanced ? 'saturation' : FALLBACK_BLEND;\n map.color = supportsAdvanced ? 'color' : FALLBACK_BLEND;\n map.luminosity = supportsAdvanced ? 'luminosity' : FALLBACK_BLEND;\n\n map['linear-burn'] = supportsAdvanced ? 'color-burn' : FALLBACK_BLEND;\n map['linear-dodge'] = supportsAdvanced ? 'color-dodge' : FALLBACK_BLEND;\n map['linear-light'] = supportsAdvanced ? 'hard-light' : FALLBACK_BLEND;\n map['pin-light'] = supportsAdvanced ? 'hard-light' : FALLBACK_BLEND;\n map['vivid-light'] = supportsAdvanced ? 'hard-light' : FALLBACK_BLEND;\n map['hard-mix'] = FALLBACK_BLEND;\n map.negation = supportsAdvanced ? 'difference' : FALLBACK_BLEND;\n\n map['normal-npm'] = map.normal;\n map['add-npm'] = map.add;\n map['screen-npm'] = map.screen;\n\n map.erase = 'destination-out';\n map.subtract = FALLBACK_BLEND;\n map.divide = FALLBACK_BLEND;\n map.min = FALLBACK_BLEND;\n map.max = FALLBACK_BLEND;\n\n return map;\n}\n","import { ExtensionType } from '../../../extensions/Extensions';\n\nimport type { System } from '../shared/system/System';\n\n/**\n * Basic limits for CanvasRenderer.\n * @category rendering\n * @advanced\n */\nexport class CanvasLimitsSystem implements System\n{\n /** @ignore */\n public static extension = {\n type: [\n ExtensionType.CanvasSystem,\n ],\n name: 'limits',\n } as const;\n\n public maxTextures = 16;\n public maxBatchableTextures = 16;\n public maxUniformBindings = 0;\n\n public init(): void\n {\n // fixed limits for canvas\n }\n}\n","import { ExtensionType } from '../../../extensions/Extensions';\n\nimport type { Container } from '../../../scene/container/Container';\nimport type { Effect } from '../../../scene/container/Effect';\nimport type { InstructionSet } from '../../renderers/shared/instructions/InstructionSet';\nimport type { InstructionPipe } from '../../renderers/shared/instructions/RenderPipe';\nimport type { Renderer } from '../../renderers/types';\nimport type { ColorMask } from './ColorMask';\nimport type { ColorMaskInstruction } from './ColorMaskTypes';\n\n/** @internal */\nexport class CanvasColorMaskPipe implements InstructionPipe<ColorMaskInstruction>\n{\n /** @ignore */\n public static extension = {\n type: [\n ExtensionType.CanvasPipes,\n ],\n name: 'colorMask',\n } as const;\n\n private readonly _renderer: Renderer;\n private _colorStack: number[] = [];\n private _colorStackIndex = 0;\n private _currentColor = 0;\n\n constructor(renderer: Renderer)\n {\n this._renderer = renderer;\n }\n\n public buildStart()\n {\n this._colorStack[0] = 0xF;\n this._colorStackIndex = 1;\n this._currentColor = 0xF;\n }\n\n public push(mask: Effect, _container: Container, instructionSet: InstructionSet): void\n {\n this._renderer.renderPipes.batch.break(instructionSet);\n\n const colorStack = this._colorStack;\n\n colorStack[this._colorStackIndex] = colorStack[this._colorStackIndex - 1] & (mask as ColorMask).mask;\n\n const currentColor = this._colorStack[this._colorStackIndex];\n\n if (currentColor !== this._currentColor)\n {\n this._currentColor = currentColor;\n instructionSet.add({\n renderPipeId: 'colorMask',\n colorMask: currentColor,\n canBundle: false,\n } as ColorMaskInstruction);\n }\n\n this._colorStackIndex++;\n }\n\n public pop(_mask: Effect, _container: Container, instructionSet: InstructionSet): void\n {\n this._renderer.renderPipes.batch.break(instructionSet);\n\n const colorStack = this._colorStack;\n\n this._colorStackIndex--;\n\n const currentColor = colorStack[this._colorStackIndex - 1];\n\n if (currentColor !== this._currentColor)\n {\n this._currentColor = currentColor;\n\n instructionSet.add({\n renderPipeId: 'colorMask',\n colorMask: currentColor,\n canBundle: false,\n } as ColorMaskInstruction);\n }\n }\n\n public execute(_instruction: ColorMaskInstruction)\n {\n // no-op on canvas\n }\n\n public destroy()\n {\n (this._renderer as null) = null;\n this._colorStack = null;\n }\n}\n","import { DOMAdapter } from '../../../../environment/adapter';\nimport { ExtensionType } from '../../../../extensions/Extensions';\nimport { canvasUtils } from '../utils/canvasUtils';\n\nimport type { ICanvas } from '../../../../environment/canvas/ICanvas';\nimport type { System } from '../../shared/system/System';\nimport type { CanvasGenerator, GetPixelsOutput } from '../../shared/texture/GenerateCanvas';\nimport type { TextureSource } from '../../shared/texture/sources/TextureSource';\nimport type { Texture } from '../../shared/texture/Texture';\nimport type { CanvasRenderer } from '../CanvasRenderer';\n\n/**\n * Texture helper system for CanvasRenderer.\n * @category rendering\n * @advanced\n */\nexport class CanvasTextureSystem implements System, CanvasGenerator\n{\n /** @ignore */\n public static extension = {\n type: [\n ExtensionType.CanvasSystem,\n ],\n name: 'texture',\n } as const;\n\n /**\n * @param renderer - The owning CanvasRenderer.\n */\n constructor(renderer: CanvasRenderer)\n {\n void renderer;\n }\n\n /** Initializes the system (no-op for canvas). */\n public init(): void\n {\n // no-op\n }\n\n /**\n * Initializes a texture source (no-op for canvas).\n * @param _source - Texture source.\n */\n public initSource(_source: TextureSource): void\n {\n // no-op for canvas\n }\n\n /**\n * Creates a canvas containing the texture's frame.\n * @param texture - Texture to render.\n */\n public generateCanvas(texture: Texture): ICanvas\n {\n const canvas = DOMAdapter.get().createCanvas();\n const context = canvas.getContext('2d');\n const source = canvasUtils.getCanvasSource(texture);\n\n if (!source)\n {\n return canvas;\n }\n\n const frame = texture.frame;\n const resolution = texture.source._resolution ?? texture.source.resolution ?? 1;\n\n const sx = frame.x * resolution;\n const sy = frame.y * resolution;\n const sw = frame.width * resolution;\n const sh = frame.height * resolution;\n\n canvas.width = Math.ceil(sw);\n canvas.height = Math.ceil(sh);\n\n context.drawImage(\n source,\n sx,\n sy,\n sw,\n sh,\n 0,\n 0,\n sw,\n sh\n );\n\n return canvas;\n }\n\n /**\n * Reads pixel data from a texture.\n * @param texture - Texture to read.\n */\n public getPixels(texture: Texture): GetPixelsOutput\n {\n const canvas = this.generateCanvas(texture);\n const context = canvas.getContext('2d', { willReadFrequently: true });\n const imageData = context.getImageData(0, 0, canvas.width, canvas.height);\n\n return {\n pixels: imageData.data,\n width: canvas.width,\n height: canvas.height,\n };\n }\n\n /** Destroys the system (no-op for canvas). */\n public destroy(): void\n {\n // no-op\n }\n}\n","import { ExtensionType } from '../../../../extensions/Extensions';\nimport { RenderTargetSystem } from '../../shared/renderTarget/RenderTargetSystem';\nimport { type CanvasRenderTarget, CanvasRenderTargetAdaptor } from './CanvasRenderTargetAdaptor';\n\nimport type { CanvasRenderer } from '../CanvasRenderer';\n\n/**\n * The Canvas adaptor for the render target system.\n * @category rendering\n * @advanced\n */\nexport class CanvasRenderTargetSystem extends RenderTargetSystem<CanvasRenderTarget>\n{\n /** @ignore */\n public static extension = {\n type: [ExtensionType.CanvasSystem],\n name: 'renderTarget',\n } as const;\n\n public adaptor = new CanvasRenderTargetAdaptor();\n\n constructor(renderer: CanvasRenderer)\n {\n super(renderer);\n\n this.adaptor.init(renderer, this);\n }\n}\n","import { Color } from '../../../color/Color';\nimport { ExtensionType } from '../../../extensions/Extensions';\nimport { Matrix } from '../../../maths/matrix/Matrix';\nimport { mapCanvasBlendModesToPixi } from './utils/mapCanvasBlendModesToPixi';\n\nimport type { ICanvasRenderingContext2D } from '../../../environment/canvas/ICanvasRenderingContext2D';\nimport type { BLEND_MODES } from '../shared/state/const';\nimport type { System } from '../shared/system/System';\nimport type { CanvasRenderer } from './CanvasRenderer';\n\nconst tempMatrix = new Matrix();\n\n/**\n * Canvas 2D context with vendor image smoothing flags.\n * @internal\n */\nexport interface CrossPlatformCanvasRenderingContext2D extends ICanvasRenderingContext2D\n{\n /** WebKit-specific image smoothing flag. */\n webkitImageSmoothingEnabled: boolean;\n /** Mozilla-specific image smoothing flag. */\n mozImageSmoothingEnabled: boolean;\n /** Opera-specific image smoothing flag. */\n oImageSmoothingEnabled: boolean;\n /** Microsoft-specific image smoothing flag. */\n msImageSmoothingEnabled: boolean;\n}\n\n/**\n * Available image smoothing flags for the current context.\n * @internal\n */\nexport type SmoothingEnabledProperties =\n 'imageSmoothingEnabled' |\n 'webkitImageSmoothingEnabled' |\n 'mozImageSmoothingEnabled' |\n 'oImageSmoothingEnabled' |\n 'msImageSmoothingEnabled';\n\n/**\n * Canvas 2D context system for the CanvasRenderer.\n * @category rendering\n * @advanced\n */\nexport class CanvasContextSystem implements System\n{\n /** @ignore */\n public static extension = {\n type: [\n ExtensionType.CanvasSystem,\n ],\n name: 'canvasContext',\n } as const;\n\n private readonly _renderer: CanvasRenderer;\n\n /** Root 2D context tied to the renderer's canvas. */\n public rootContext: CrossPlatformCanvasRenderingContext2D;\n /** Active 2D context for rendering (root or render target). */\n public activeContext: CrossPlatformCanvasRenderingContext2D;\n /** Resolution of the active context. */\n public activeResolution = 1;\n\n /** The image smoothing property to toggle for this browser. */\n public smoothProperty: SmoothingEnabledProperties = 'imageSmoothingEnabled';\n /** Map of Pixi blend modes to canvas composite operations. */\n public readonly blendModes = mapCanvasBlendModesToPixi();\n\n /** Current canvas blend mode. */\n public _activeBlendMode: BLEND_MODES = 'normal';\n /** Optional projection transform for render targets. */\n public _projTransform: Matrix = null;\n /** True when external blend mode control is in use. */\n public _outerBlend = false;\n /** Tracks unsupported blend mode warnings to avoid spam. */\n private readonly _warnedBlendModes = new Set<BLEND_MODES>();\n\n /**\n * @param renderer - The owning CanvasRenderer.\n */\n constructor(renderer: CanvasRenderer)\n {\n this._renderer = renderer;\n }\n\n protected resolutionChange(resolution: number): void\n {\n this.activeResolution = resolution;\n }\n\n /** Initializes the root context and smoothing flag selection. */\n public init(): void\n {\n const alpha = this._renderer.background.alpha < 1;\n\n this.rootContext = this._renderer.canvas.getContext(\n '2d',\n { alpha }\n ) as unknown as CrossPlatformCanvasRenderingContext2D;\n this.activeContext = this.rootContext;\n this.activeResolution = this._renderer.resolution;\n\n if (!this.rootContext.imageSmoothingEnabled)\n {\n const rc = this.rootContext;\n\n if (rc.webkitImageSmoothingEnabled)\n {\n this.smoothProperty = 'webkitImageSmoothingEnabled';\n }\n else if (rc.mozImageSmoothingEnabled)\n {\n this.smoothProperty = 'mozImageSmoothingEnabled';\n }\n else if (rc.oImageSmoothingEnabled)\n {\n this.smoothProperty = 'oImageSmoothingEnabled';\n }\n else if (rc.msImageSmoothingEnabled)\n {\n this.smoothProperty = 'msImageSmoothingEnabled';\n }\n }\n }\n\n /**\n * Sets the current transform on the active context.\n * @param transform - Transform to apply.\n * @param roundPixels - Whether to round translation to integers.\n * @param localResolution - Optional local resolution multiplier.\n * @param skipGlobalTransform - If true, skip applying the global world transform matrix.\n */\n public setContextTransform(\n transform: Matrix,\n roundPixels?: boolean,\n localResolution?: number,\n skipGlobalTransform?: boolean\n ): void\n {\n const globalTransform = skipGlobalTransform\n ? Matrix.IDENTITY\n : (this._renderer.globalUniforms.globalUniformData?.worldTransformMatrix || Matrix.IDENTITY);\n\n let mat = tempMatrix;\n\n mat.copyFrom(globalTransform);\n mat.append(transform);\n\n const proj = this._projTransform;\n const contextResolution = this.activeResolution;\n\n localResolution = localResolution || contextResolution;\n\n if (proj)\n {\n const finalMat = Matrix.shared;\n\n finalMat.copyFrom(mat);\n finalMat.prepend(proj);\n mat = finalMat;\n }\n\n if (roundPixels)\n {\n this.activeContext.setTransform(\n mat.a * localResolution,\n mat.b * localResolution,\n mat.c * localResolution,\n mat.d * localResolution,\n (mat.tx * contextResolution) | 0,\n (mat.ty * contextResolution) | 0\n );\n }\n else\n {\n this.activeContext.setTransform(\n mat.a * localResolution,\n mat.b * localResolution,\n mat.c * localResolution,\n mat.d * localResolution,\n mat.tx * contextResolution,\n mat.ty * contextResolution\n );\n }\n }\n\n /**\n * Clears the current render target, optionally filling with a color.\n * @param clearColor - Color to fill after clearing.\n * @param alpha - Alpha override for the clear color.\n */\n public clear(clearColor?: number[] | string | number, alpha?: number): void\n {\n const context = this.activeContext;\n const renderer = this._renderer;\n\n context.clearRect(0, 0, renderer.width, renderer.height);\n\n if (clearColor)\n {\n const color = Color.shared.setValue(clearColor);\n\n context.globalAlpha = alpha ?? color.alpha;\n context.fillStyle = color.toHex();\n context.fillRect(0, 0, renderer.width, renderer.height);\n context.globalAlpha = 1;\n }\n }\n\n /**\n * Sets the active blend mode.\n * @param blendMode - Pixi blend mode.\n */\n public setBlendMode(blendMode: BLEND_MODES): void\n {\n if (this._activeBlendMode === blendMode) return;\n\n this._activeBlendMode = blendMode;\n this._outerBlend = false;\n\n const mappedBlend = this.blendModes[blendMode];\n\n if (!mappedBlend)\n {\n if (!this._warnedBlendModes.has(blendMode))\n {\n console.warn(\n `CanvasRenderer: blend mode \"${blendMode}\" is not supported in Canvas2D; falling back to \"source-over\".`\n );\n this._warnedBlendModes.add(blendMode);\n }\n\n this.activeContext.globalCompositeOperation = 'source-over';\n\n return;\n }\n\n this.activeContext.globalCompositeOperation = mappedBlend;\n }\n\n /** Releases context references. */\n public destroy(): void\n {\n this.rootContext = null;\n this.activeContext = null;\n this._warnedBlendModes.clear();\n }\n}\n","import { Color } from '../../../../color/Color';\nimport { DOMAdapter } from '../../../../environment/adapter';\nimport { warn } from '../../../../utils/logging/warn';\nimport { CanvasSource } from '../../shared/texture/sources/CanvasSource';\n\nimport type { ICanvas } from '../../../../environment/canvas/ICanvas';\nimport type { ICanvasRenderingContext2D } from '../../../../environment/canvas/ICanvasRenderingContext2D';\nimport type { Rectangle } from '../../../../maths/shapes/Rectangle';\nimport type { CLEAR_OR_BOOL } from '../../gl/const';\nimport type { RenderTarget } from '../../shared/renderTarget/RenderTarget';\nimport type { RenderTargetAdaptor, RenderTargetSystem } from '../../shared/renderTarget/RenderTargetSystem';\nimport type { TextureSource } from '../../shared/texture/sources/TextureSource';\nimport type { Texture } from '../../shared/texture/Texture';\nimport type { CanvasRenderer } from '../CanvasRenderer';\n\n/**\n * Canvas render target backing store.\n * @internal\n */\nexport type CanvasRenderTarget = {\n /** Backing canvas element. */\n canvas: ICanvas;\n /** 2D context associated with the canvas. */\n context: ICanvasRenderingContext2D;\n /** Pixel width. */\n width: number;\n /** Pixel height. */\n height: number;\n};\n\n/**\n * Canvas adaptor for render targets.\n * @category rendering\n * @advanced\n */\nexport class CanvasRenderTargetAdaptor implements RenderTargetAdaptor<CanvasRenderTarget>\n{\n private _renderer: CanvasRenderer;\n private _renderTargetSystem: RenderTargetSystem<CanvasRenderTarget>;\n\n /**\n * Initializes the adaptor.\n * @param renderer - Canvas renderer instance.\n * @param renderTargetSystem - The render target system.\n * @advanced\n */\n public init(renderer: CanvasRenderer, renderTargetSystem: RenderTargetSystem<CanvasRenderTarget>): void\n {\n this._renderer = renderer;\n this._renderTargetSystem = renderTargetSystem;\n }\n\n /**\n * Creates a GPU render target for canvas.\n * @param renderTarget - Render target to initialize.\n * @advanced\n */\n public initGpuRenderTarget(renderTarget: RenderTarget): CanvasRenderTarget\n {\n const colorTexture = renderTarget.colorTexture;\n const { canvas, context } = this._ensureCanvas(colorTexture);\n\n return {\n canvas,\n context,\n width: canvas.width,\n height: canvas.height,\n };\n }\n\n /**\n * Resizes the backing canvas for a render target.\n * @param renderTarget - Render target to resize.\n * @advanced\n */\n public resizeGpuRenderTarget(renderTarget: RenderTarget): void\n {\n const colorTexture = renderTarget.colorTexture;\n const { canvas } = this._ensureCanvas(colorTexture);\n\n canvas.width = renderTarget.pixelWidth;\n canvas.height = renderTarget.pixelHeight;\n }\n\n /**\n * Starts a render pass on the canvas target.\n * @param renderTarget - Target to render to.\n * @param clear - Clear mode.\n * @param clearColor - Optional clear color.\n * @param viewport - Optional viewport.\n * @advanced\n */\n public startRenderPass(\n renderTarget: RenderTarget,\n clear: CLEAR_OR_BOOL,\n clearColor?: number[],\n viewport?: Rectangle\n ): void\n {\n const gpuRenderTarget = this._renderTargetSystem.getGpuRenderTarget(renderTarget);\n\n this._renderer.canvasContext.activeContext = gpuRenderTarget.context as any;\n this._renderer.canvasContext.activeResolution = renderTarget.resolution;\n\n if (clear)\n {\n this.clear(renderTarget, clear, clearColor, viewport);\n }\n }\n\n /**\n * Clears the render target.\n * @param renderTarget - Target to clear.\n * @param _clear - Clear mode (unused).\n * @param clearColor - Optional clear color.\n * @param viewport - Optional viewport rectangle.\n * @advanced\n */\n public clear(\n renderTarget: RenderTarget,\n _clear: CLEAR_OR_BOOL,\n clearColor?: number[],\n viewport?: Rectangle\n ): void\n {\n const gpuRenderTarget = this._renderTargetSystem.getGpuRenderTarget(renderTarget);\n const context = gpuRenderTarget.context as ICanvasRenderingContext2D;\n const bounds = viewport || { x: 0, y: 0, width: renderTarget.pixelWidth, height: renderTarget.pixelHeight };\n\n context.setTransform(1, 0, 0, 1, 0, 0);\n context.clearRect(bounds.x, bounds.y, bounds.width, bounds.height);\n\n if (clearColor)\n {\n const color = Color.shared.setValue(clearColor);\n\n if (color.alpha > 0)\n {\n context.globalAlpha = color.alpha;\n context.fillStyle = color.toHex();\n context.fillRect(bounds.x, bounds.y, bounds.width, bounds.height);\n context.globalAlpha = 1;\n }\n }\n }\n\n /**\n * Finishes the render pass (no-op for canvas).\n * @advanced\n */\n public finishRenderPass(): void\n {\n // no-op for canvas\n }\n\n /**\n * Copies a render target into a texture source.\n * @param {RenderTarget} sourceRenderSurfaceTexture - Source render target.\n * @param {Texture} destinationTexture - Destination texture.\n * @param {object} originSrc - Source origin.\n * @param {number} originSrc.x - Source x origin.\n * @param {number} originSrc.y - Source y origin.\n * @param {object} size - Copy size.\n * @param {number} size.width - Copy width.\n * @param {number} size.height - Copy height.\n * @param {object} [originDest] - Destination origin.\n * @param {number} originDest.x - Destination x origin.\n * @param {number} originDest.y - Destination y origin.\n * @advanced\n */\n public copyToTexture(\n sourceRenderSurfaceTexture: RenderTarget,\n destinationTexture: Texture,\n originSrc: { x: number; y: number },\n size: { width: number; height: number },\n originDest?: { x: number; y: number },\n ): Texture\n {\n const sourceGpuTarget = this._renderTargetSystem.getGpuRenderTarget(sourceRenderSurfaceTexture);\n const sourceCanvas = sourceGpuTarget.canvas as CanvasImageSource;\n\n const destSource = destinationTexture.source as TextureSource;\n const { context } = this._ensureCanvas(destSource);\n\n const dx = originDest?.x ?? 0;\n const dy = originDest?.y ?? 0;\n\n context.drawImage(\n sourceCanvas,\n originSrc.x,\n originSrc.y,\n size.width,\n size.height,\n dx,\n dy,\n size.width,\n size.height\n );\n\n destSource.update();\n\n return destinationTexture;\n }\n\n /**\n * Copies the depth attachment of a render target into a texture (not supported in canvas).\n * @param _source - Source render target.\n * @param _destination - Destination depth/stencil texture.\n * @param _originSrc - Source origin of the copy.\n * @param _originSrc.x\n * @param _originSrc.y\n * @param _size - Size of the copy.\n * @param _size.width\n * @param _size.height\n * @param _originDest - Destination origin of the copy.\n * @param _originDest.x\n * @param _originDest.y\n * @advanced\n */\n public copyDepthTexture(\n _source: RenderTarget,\n _destination: Texture,\n _originSrc?: { x: number; y: number; },\n _size?: { width: number; height: number; },\n _originDest?: { x: number; y: number; },\n ): void\n {\n warn('[CanvasRenderTargetAdaptor] copyDepthTexture is not supported in the canvas renderer');\n }\n\n /**\n * Destroys a GPU render target (no-op for canvas).\n * @param _gpuRenderTarget - Target to destroy.\n * @advanced\n */\n public destroyGpuRenderTarget(_gpuRenderTarget: CanvasRenderTarget): void\n {\n // no-op for canvas\n }\n\n private _ensureCanvas(source: TextureSource)\n {\n let canvas = source.resource as ICanvas;\n\n if (!canvas || !(CanvasSource.test(canvas)))\n {\n canvas = DOMAdapter.get().createCanvas(source.pixelWidth, source.pixelHeight);\n source.resource = canvas as any;\n }\n\n if (canvas.width !== source.pixelWidth || canvas.height !== source.pixelHeight)\n {\n canvas.width = source.pixelWidth;\n canvas.height = source.pixelHeight;\n }\n\n const context = canvas.getContext('2d') as ICanvasRenderingContext2D;\n\n return { canvas, context };\n }\n}\n","import { ExtensionType } from '../../../extensions/Extensions';\nimport { type Matrix } from '../../../maths/matrix/Matrix';\nimport { buildLine } from '../../../scene/graphics/shared/buildCommands/buildLine';\nimport { Graphics } from '../../../scene/graphics/shared/Graphics';\nimport { shapeBuilders } from '../../../scene/graphics/shared/utils/buildContextBatches';\nimport { warn } from '../../../utils/logging/warn';\n\nimport type { ShapePrimitive } from '../../../maths/shapes/ShapePrimitive';\nimport type { Container } from '../../../scene/container/Container';\nimport type { Effect } from '../../../scene/container/Effect';\nimport type { ConvertedStrokeStyle } from '../../../scene/graphics/shared/FillTypes';\nimport type { ShapePrimitiveWithHoles } from '../../../scene/graphics/shared/path/ShapePath';\nimport type { CrossPlatformCanvasRenderingContext2D } from '../../renderers/canvas/CanvasContextSystem';\nimport type { InstructionSet } from '../../renderers/shared/instructions/InstructionSet';\nimport type { InstructionPipe } from '../../renderers/shared/instructions/RenderPipe';\nimport type { Renderer } from '../../renderers/types';\nimport type { StencilMaskInstruction } from './StencilMaskTypes';\n\nfunction buildRoundedRectPath(\n context: CrossPlatformCanvasRenderingContext2D,\n x: number,\n y: number,\n width: number,\n height: number,\n radius: number\n): void\n{\n radius = Math.max(0, Math.min(radius, Math.min(width, height) / 2));\n\n context.moveTo(x + radius, y);\n context.lineTo(x + width - radius, y);\n context.quadraticCurveTo(x + width, y, x + width, y + radius);\n context.lineTo(x + width, y + height - radius);\n context.quadraticCurveTo(x + width, y + height, x + width - radius, y + height);\n context.lineTo(x + radius, y + height);\n context.quadraticCurveTo(x, y + height, x, y + height - radius);\n context.lineTo(x, y + radius);\n context.quadraticCurveTo(x, y, x + radius, y);\n}\n\nfunction buildShapePath(context: CrossPlatformCanvasRenderingContext2D, shape: ShapePrimitive): void\n{\n switch (shape.type)\n {\n case 'rectangle':\n {\n const rect = shape as typeof shape & { width: number; height: number };\n\n context.rect(rect.x, rect.y, rect.width, rect.height);\n break;\n }\n case 'roundedRectangle':\n {\n const rect = shape as typeof shape & { width: number; height: number; radius: number };\n\n buildRoundedRectPath(context, rect.x, rect.y, rect.width, rect.height, rect.radius);\n break;\n }\n case 'circle':\n {\n const circle = shape as typeof shape & { radius: number };\n\n context.moveTo(circle.x + circle.radius, circle.y);\n context.arc(circle.x, circle.y, circle.radius, 0, Math.PI * 2);\n break;\n }\n case 'ellipse':\n {\n const ellipse = shape as typeof shape & { halfWidth: number; halfHeight: number };\n\n if (context.ellipse)\n {\n context.moveTo(ellipse.x + ellipse.halfWidth, ellipse.y);\n context.ellipse(ellipse.x, ellipse.y, ellipse.halfWidth, ellipse.halfHeight, 0, 0, Math.PI * 2);\n }\n else\n {\n context.save();\n context.translate(ellipse.x, ellipse.y);\n context.scale(ellipse.halfWidth, ellipse.halfHeight);\n context.moveTo(1, 0);\n context.arc(0, 0, 1, 0, Math.PI * 2);\n context.restore();\n }\n break;\n }\n case 'triangle':\n {\n const tri = shape as typeof shape & { x2: number; y2: number; x3: number; y3: number };\n\n context.moveTo(tri.x, tri.y);\n context.lineTo(tri.x2, tri.y2);\n context.lineTo(tri.x3, tri.y3);\n context.closePath();\n break;\n }\n case 'polygon':\n default:\n {\n const poly = shape as typeof shape & { points: number[]; closePath: boolean };\n const points = poly.points;\n\n if (!points?.length) break;\n\n context.moveTo(points[0], points[1]);\n\n for (let i = 2; i < points.length; i += 2)\n {\n context.lineTo(points[i], points[i + 1]);\n }\n\n if (poly.closePath)\n {\n context.closePath();\n }\n break;\n }\n }\n}\n\nfunction buildStrokeMaskPath(\n context: CrossPlatformCanvasRenderingContext2D,\n shape: ShapePrimitive,\n strokeStyle: ConvertedStrokeStyle\n): boolean\n{\n const points: number[] = [];\n const vertices: number[] = [];\n const indices: number[] = [];\n const shapeBuilder = shapeBuilders[shape.type];\n\n if (!shapeBuilder?.build(shape, points)) return false;\n\n const close = (shape as { closePath?: boolean }).closePath ?? true;\n\n buildLine(points, strokeStyle, false, close, vertices, indices);\n\n for (let i = 0; i < indices.length; i += 3)\n {\n const i0 = indices[i] * 2;\n const i1 = indices[i + 1] * 2;\n const i2 = indices[i + 2] * 2;\n\n context.moveTo(vertices[i0], vertices[i0 + 1]);\n context.lineTo(vertices[i1], vertices[i1 + 1]);\n context.lineTo(vertices[i2], vertices[i2 + 1]);\n context.closePath();\n }\n\n return true;\n}\n\nfunction addHolePaths(\n context: CrossPlatformCanvasRenderingContext2D,\n holes?: ShapePrimitiveWithHoles[]\n): boolean\n{\n if (!holes?.length) return false;\n\n for (let i = 0; i < holes.length; i++)\n {\n const hole = holes[i];\n\n if (!hole?.shape) continue;\n\n const transform = hole.transform;\n const hasTransform = transform && !transform.isIdentity();\n\n if (hasTransform)\n {\n context.save();\n context.transform(transform.a, transform.b, transform.c, transform.d, transform.tx, transform.ty);\n }\n\n buildShapePath(context, hole.shape);\n\n if (hasTransform)\n {\n context.restore();\n }\n }\n\n return true;\n}\n\n/** @internal */\nexport class CanvasStencilMaskPipe implements InstructionPipe<StencilMaskInstruction>\n{\n public static extension = {\n type: [\n ExtensionType.CanvasPipes,\n ],\n name: 'stencilMask',\n } as const;\n\n private _renderer: Renderer;\n private _warnedMaskTypes = new Set<string>();\n private _canvasMaskStack: boolean[] = [];\n\n constructor(renderer: Renderer)\n {\n this._renderer = renderer;\n }\n\n public push(mask: Effect, _container: Container, instructionSet: InstructionSet): void\n {\n this._renderer.renderPipes.batch.break(instructionSet);\n\n instructionSet.add({\n renderPipeId: 'stencilMask',\n action: 'pushMaskBegin',\n mask,\n inverse: _container._maskOptions.inverse,\n canBundle: false,\n } as StencilMaskInstruction);\n }\n\n public pop(_mask: Effect, _container: Container, instructionSet: InstructionSet): void\n {\n this._renderer.renderPipes.batch.break(instructionSet);\n\n instructionSet.add({\n renderPipeId: 'stencilMask',\n action: 'popMaskEnd',\n mask: _mask,\n inverse: _container._maskOptions.inverse,\n canBundle: false,\n } as StencilMaskInstruction);\n }\n\n public execute(instruction: StencilMaskInstruction)\n {\n if (instruction.action !== 'pushMaskBegin' && instruction.action !== 'popMaskEnd')\n {\n return;\n }\n\n const canvasRenderer = this._renderer as unknown as {\n canvasContext: {\n activeContext: CrossPlatformCanvasRenderingContext2D;\n setContextTransform: (transform: Matrix, roundPixels?: boolean) => void;\n };\n _roundPixels: number;\n };\n const contextSystem = canvasRenderer.canvasContext;\n const context = contextSystem?.activeContext;\n\n if (!context) return;\n\n if (instruction.action === 'popMaskEnd')\n {\n const didClip = this._canvasMaskStack.pop();\n\n if (didClip)\n {\n context.restore();\n }\n\n return;\n }\n\n if (instruction.inverse)\n {\n this._warnOnce(\n 'inverse',\n 'CanvasRenderer: inverse masks are not supported on Canvas2D; '\n + 'ignoring inverse flag.'\n );\n }\n\n const maskContainer = instruction.mask.mask;\n\n if (!(maskContainer instanceof Graphics))\n {\n this._warnOnce(\n 'nonGraphics',\n 'CanvasRenderer: only Graphics masks are supported in Canvas2D; '\n + 'skipping mask.'\n );\n this._canvasMaskStack.push(false);\n\n return;\n }\n\n const graphics = maskContainer;\n const instructions = graphics.context?.instructions;\n\n if (!instructions?.length)\n {\n this._canvasMaskStack.push(false);\n\n return;\n }\n\n context.save();\n contextSystem.setContextTransform(\n graphics.groupTransform,\n ((canvasRenderer._roundPixels | graphics._roundPixels) as 0 | 1) === 1\n );\n context.beginPath();\n\n let drewPath = false;\n let hasHoles = false;\n\n for (let i = 0; i < instructions.length; i++)\n {\n const instructionData = instructions[i];\n const action = instructionData.action;\n\n if (action !== 'fill' && action !== 'stroke') continue;\n\n const data = instructionData.data as {\n style?: ConvertedStrokeStyle;\n path?: {\n shapePath?: {\n shapePrimitives?: ShapePrimitiveWithHoles[];\n };\n };\n };\n const shapePath = data?.path?.shapePath;\n\n if (!shapePath?.shapePrimitives?.length) continue;\n\n const isStroke = action === 'stroke';\n const shapePrimitives = shapePath.shapePrimitives;\n\n for (let j = 0; j < shapePrimitives.length; j++)\n {\n const primitive = shapePrimitives[j];\n\n if (!primitive?.shape) continue;\n\n const transform = primitive.transform;\n const hasTransform = transform && !transform.isIdentity();\n\n if (hasTransform)\n {\n context.save();\n context.transform(transform.a, transform.b, transform.c, transform.d, transform.tx, transform.ty);\n }\n\n if (isStroke && data.style)\n {\n drewPath = buildStrokeMaskPath(\n context, primitive.shape as ShapePrimitive, data.style\n ) || drewPath;\n }\n else\n {\n buildShapePath(context, primitive.shape as ShapePrimitive);\n hasHoles = addHolePaths(context, primitive.holes) || hasHoles;\n drewPath = true;\n }\n\n if (hasTransform)\n {\n context.restore();\n }\n }\n }\n\n if (!drewPath)\n {\n context.restore();\n this._canvasMaskStack.push(false);\n\n return;\n }\n\n if (hasHoles)\n {\n context.clip('evenodd');\n }\n else\n {\n context.clip();\n }\n\n this._canvasMaskStack.push(true);\n }\n\n public destroy()\n {\n this._renderer = null;\n this._warnedMaskTypes = null;\n this._canvasMaskStack = null;\n }\n\n private _warnOnce(key: string, message: string): void\n {\n if (this._warnedMaskTypes.has(key)) return;\n\n this._warnedMaskTypes.add(key);\n warn(message);\n }\n}\n","import { ExtensionType } from '../../../extensions/Extensions';\nimport { groupD8 } from '../../../maths/matrix/groupD8';\nimport { Matrix } from '../../../maths/matrix/Matrix';\nimport { bgr2rgb } from '../../../scene/container/container-mixins/getGlobalMixin';\nimport { multiplyHexColors } from '../../../scene/container/utils/multiplyHexColors';\nimport { type PatternRepetition } from '../../../scene/graphics/shared/fill/FillPattern';\nimport { canvasUtils } from '../../renderers/canvas/utils/canvasUtils';\n\nimport type { CanvasRenderer } from '../../renderers/canvas/CanvasRenderer';\nimport type { Geometry } from '../../renderers/shared/geometry/Geometry';\nimport type { Shader } from '../../renderers/shared/shader/Shader';\nimport type { Batch } from '../shared/Batcher';\nimport type { BatcherAdaptor, BatcherPipe } from '../shared/BatcherPipe';\nimport type { DefaultBatchableQuadElement } from '../shared/DefaultBatcher';\n\n/**\n * A BatcherAdaptor that renders batches using Canvas2D.\n * @category rendering\n * @ignore\n */\nexport class CanvasBatchAdaptor implements BatcherAdaptor\n{\n private static readonly _tempPatternMatrix = new Matrix();\n\n private static _getPatternRepeat(\n addressModeU?: string,\n addressModeV?: string\n ): PatternRepetition\n {\n const repeatU = addressModeU && addressModeU !== 'clamp-to-edge';\n const repeatV = addressModeV && addressModeV !== 'clamp-to-edge';\n\n if (repeatU && repeatV) return 'repeat';\n if (repeatU) return 'repeat-x';\n if (repeatV) return 'repeat-y';\n\n return 'no-repeat';\n }\n\n /** @ignore */\n public static extension = {\n type: [\n ExtensionType.CanvasPipesAdaptor,\n ],\n name: 'batch',\n } as const;\n\n public start(batchPipe: BatcherPipe, geometry: Geometry, shader: Shader): void\n {\n void batchPipe;\n void geometry;\n void shader;\n }\n\n public execute(batchPipe: BatcherPipe, batch: Batch): void\n {\n const elements = batch.elements;\n\n if (!elements || !elements.length) return;\n\n const renderer = batchPipe.renderer as CanvasRenderer;\n const contextSystem = renderer.canvasContext;\n const context = contextSystem.activeContext;\n\n for (let i = 0; i < elements.length; i++)\n {\n const element = elements[i];\n\n if (!element.packAsQuad) continue;\n\n const quad = element as DefaultBatchableQuadElement;\n const texture = quad.texture;\n const source = texture ? canvasUtils.getCanvasSource(texture) : null;\n\n if (!source) continue;\n\n const textureStyle = texture.source.style;\n const smoothProperty = contextSystem.smoothProperty;\n const shouldSmooth = textureStyle.scaleMode !== 'nearest';\n\n if (context[smoothProperty] !== shouldSmooth)\n {\n context[smoothProperty] = shouldSmooth;\n }\n\n // Use the batch-level (already alpha-adjusted) blend mode\n contextSystem.setBlendMode(batch.blendMode);\n\n const globalColor = renderer.globalUniforms.globalUniformData?.worldColor ?? 0xFFFFFFFF;\n const argb = quad.color;\n\n const globalAlpha = ((globalColor >>> 24) & 0xFF) / 255;\n const quadAlpha = ((argb >>> 24) & 0xFF) / 255;\n\n const filterAlpha = (renderer.filter as { alphaMultiplier?: number } | null)?.alphaMultiplier ?? 1;\n const alpha = globalAlpha * quadAlpha * filterAlpha;\n\n if (alpha <= 0) continue;\n\n context.globalAlpha = alpha;\n\n const globalTint = globalColor & 0xFFFFFF;\n const quadTint = argb & 0xFFFFFF;\n\n const tint = bgr2rgb(multiplyHexColors(quadTint, globalTint));\n const frame = texture.frame;\n const repeatU = textureStyle.addressModeU ?? textureStyle.addressMode;\n const repeatV = textureStyle.addressModeV ?? textureStyle.addressMode;\n const repeat = CanvasBatchAdaptor._getPatternRepeat(repeatU, repeatV);\n\n const resolution = texture.source._resolution ?? texture.source.resolution ?? 1;\n\n const isFromCachedRenderGroup = ((quad as any).renderable as any)?.renderGroup?.isCachedAsTexture;\n\n const sx = frame.x * resolution;\n const sy = frame.y * resolution;\n const sw = frame.width * resolution;\n const sh = frame.height * resolution;\n\n const bounds = quad.bounds;\n\n const isRootTarget = renderer.renderTarget.renderTarget.isRoot;\n const dx = bounds.minX;\n const dy = bounds.minY;\n const dw = bounds.maxX - bounds.minX;\n const dh = bounds.maxY - bounds.minY;\n\n const rotate = texture.rotate;\n\n const uvs = texture.uvs;\n const uvMin = Math.min(uvs.x0, uvs.x1, uvs.x2, uvs.x3, uvs.y0, uvs.y1, uvs.y2, uvs.y3);\n const uvMax = Math.max(uvs.x0, uvs.x1, uvs.x2, uvs.x3, uvs.y0, uvs.y1, uvs.y2, uvs.y3);\n const needsRepeat = repeat !== 'no-repeat' && (uvMin < 0 || uvMax > 1);\n\n // Determine if we'll use getTintedCanvas (which handles rotation internally)\n // Use it for tinting OR rotation (for non-repeat path)\n const willUseProcessedCanvas = !needsRepeat && (tint !== 0xFFFFFF || rotate);\n // Only apply rotation transform when NOT using processed canvas (which handles rotation itself)\n const applyRotateTransform = rotate && !willUseProcessedCanvas;\n\n if (applyRotateTransform)\n {\n CanvasBatchAdaptor._tempPatternMatrix.copyFrom(quad.transform);\n groupD8.matrixAppendRotationInv(\n CanvasBatchAdaptor._tempPatternMatrix,\n rotate,\n dx,\n dy,\n dw,\n dh\n );\n contextSystem.setContextTransform(\n CanvasBatchAdaptor._tempPatternMatrix,\n quad.roundPixels === 1,\n undefined,\n isFromCachedRenderGroup && isRootTarget\n );\n }\n else\n {\n contextSystem.setContextTransform(\n quad.transform,\n quad.roundPixels === 1,\n undefined,\n isFromCachedRenderGroup && isRootTarget\n );\n }\n\n const drawW = dw;\n const drawH = dh;\n\n let drawX = applyRotateTransform ? 0 : dx;\n let drawY = applyRotateTransform ? 0 : dy;\n\n if (!applyRotateTransform && quad.roundPixels === 1)\n {\n drawX |= 0;\n drawY |= 0;\n }\n\n if (needsRepeat)\n {\n // We can now allow tinting for PMA textures because getCanvasSource\n // returns an un-premultiplied (straight alpha) version for Canvas.\n // NOTE: Don't use getTintedCanvas when rotated because it applies rotation compensation,\n // but the repeat path uses UV-based pattern transforms that expect the original rotated source.\n let patternSource = source;\n\n const canTint = tint !== 0xFFFFFF && !rotate;\n const fitsFrame = frame.width <= texture.source.width && frame.height <= texture.source.height;\n\n if (canTint && fitsFrame)\n {\n patternSource = canvasUtils.getTintedCanvas({ texture }, tint) as CanvasImageSource;\n }\n\n const pattern = context.createPattern(patternSource, repeat);\n\n if (!pattern) continue;\n\n const denomX = drawW;\n const denomY = drawH;\n\n if (denomX === 0 || denomY === 0) continue;\n\n const invDx = 1 / denomX;\n const invDy = 1 / denomY;\n\n const a = (uvs.x1 - uvs.x0) * invDx;\n const b = (uvs.y1 - uvs.y0) * invDx;\n const c = (uvs.x3 - uvs.x0) * invDy;\n const d = (uvs.y3 - uvs.y0) * invDy;\n const tx = uvs.x0 - (a * drawX) - (c * drawY);\n const ty = uvs.y0 - (b * drawX) - (d * drawY);\n\n const pixelWidth = texture.source.pixelWidth;\n const pixelHeight = texture.source.pixelHeight;\n\n CanvasBatchAdaptor._tempPatternMatrix.set(\n a * pixelWidth,\n b * pixelHeight,\n c * pixelWidth,\n d * pixelHeight,\n tx * pixelWidth,\n ty * pixelHeight\n );\n\n canvasUtils.applyPatternTransform(pattern, CanvasBatchAdaptor._tempPatternMatrix);\n context.fillStyle = pattern;\n context.fillRect(drawX, drawY, drawW, drawH);\n }\n else\n {\n // We can now allow tinting for PMA textures because getCanvasSource\n // returns an un-premultiplied (straight alpha) version for Canvas.\n // getTintedCanvas handles rotation internally, so use it for rotated textures too\n const needsProcessing = tint !== 0xFFFFFF || rotate;\n const processedSource = needsProcessing\n ? canvasUtils.getTintedCanvas({ texture }, tint) as CanvasImageSource\n : source;\n\n const isProcessed = processedSource !== source;\n\n context.drawImage(\n processedSource,\n isProcessed ? 0 : sx,\n isProcessed ? 0 : sy,\n isProcessed ? (processedSource as any).width : sw,\n isProcessed ? (processedSource as any).height : sh,\n drawX,\n drawY,\n drawW,\n drawH\n );\n }\n }\n }\n}\n","import { ExtensionType } from '../../../extensions/Extensions';\nimport { groupD8 } from '../../../maths/matrix/groupD8';\nimport { Matrix } from '../../../maths/matrix/Matrix';\nimport { canvasUtils } from '../../../rendering/renderers/canvas/utils/canvasUtils';\nimport { Texture } from '../../../rendering/renderers/shared/texture/Texture';\nimport { bgr2rgb } from '../../container/container-mixins/getGlobalMixin';\nimport { multiplyHexColors } from '../../container/utils/multiplyHexColors';\nimport { buildLine } from '../shared/buildCommands/buildLine';\nimport { FillGradient } from '../shared/fill/FillGradient';\nimport { FillPattern } from '../shared/fill/FillPattern';\nimport { shapeBuilders } from '../shared/utils/buildContextBatches';\nimport { generateTextureMatrix as generateTextureFillMatrix } from '../shared/utils/generateTextureFillMatrix';\n\nimport type { ShapePrimitive } from '../../../maths/shapes/ShapePrimitive';\nimport type { CrossPlatformCanvasRenderingContext2D } from '../../../rendering/renderers/canvas/CanvasContextSystem';\nimport type { CanvasRenderer } from '../../../rendering/renderers/canvas/CanvasRenderer';\nimport type { Shader } from '../../../rendering/renderers/shared/shader/Shader';\nimport type { Renderer } from '../../../rendering/renderers/types';\nimport type { ConvertedFillStyle, ConvertedStrokeStyle } from '../shared/FillTypes';\nimport type { Graphics } from '../shared/Graphics';\nimport type { GraphicsAdaptor, GraphicsPipeLike } from '../shared/GraphicsPipe';\nimport type { ShapePrimitiveWithHoles } from '../shared/path/ShapePath';\n\nconst emptyCanvasStyle = '#808080';\nconst tempMatrix = new Matrix();\nconst tempTextureMatrix = new Matrix();\nconst tempGradientMatrix = new Matrix();\nconst tempPatternMatrix = new Matrix();\nconst tempUvMatrix = new Matrix();\n\nfunction fillTriangles(\n context: CrossPlatformCanvasRenderingContext2D,\n vertices: number[],\n indices: number[]\n): void\n{\n context.beginPath();\n\n for (let i = 0; i < indices.length; i += 3)\n {\n const i0 = indices[i] * 2;\n const i1 = indices[i + 1] * 2;\n const i2 = indices[i + 2] * 2;\n\n context.moveTo(vertices[i0], vertices[i0 + 1]);\n context.lineTo(vertices[i1], vertices[i1 + 1]);\n context.lineTo(vertices[i2], vertices[i2 + 1]);\n context.closePath();\n }\n\n context.fill();\n}\n\nfunction colorToHex(color: number): string\n{\n const clamped = color & 0xFFFFFF;\n\n return `#${clamped.toString(16).padStart(6, '0')}`;\n}\n\nfunction buildRoundedRectPath(\n context: CrossPlatformCanvasRenderingContext2D,\n x: number,\n y: number,\n width: number,\n height: number,\n radius: number\n): void\n{\n radius = Math.max(0, Math.min(radius, Math.min(width, height) / 2));\n\n context.moveTo(x + radius, y);\n context.lineTo(x + width - radius, y);\n context.quadraticCurveTo(x + width, y, x + width, y + radius);\n context.lineTo(x + width, y + height - radius);\n context.quadraticCurveTo(x + width, y + height, x + width - radius, y + height);\n context.lineTo(x + radius, y + height);\n context.quadraticCurveTo(x, y + height, x, y + height - radius);\n context.lineTo(x, y + radius);\n context.quadraticCurveTo(x, y, x + radius, y);\n}\n\nfunction buildShapePath(context: CrossPlatformCanvasRenderingContext2D, shape: ShapePrimitive): void\n{\n switch (shape.type)\n {\n case 'rectangle':\n {\n const rect = shape as typeof shape & { width: number; height: number };\n\n context.rect(rect.x, rect.y, rect.width, rect.height);\n break;\n }\n case 'roundedRectangle':\n {\n const rect = shape as typeof shape & { width: number; height: number; radius: number };\n\n buildRoundedRectPath(context, rect.x, rect.y, rect.width, rect.height, rect.radius);\n break;\n }\n case 'circle':\n {\n const circle = shape as typeof shape & { radius: number };\n\n context.arc(circle.x, circle.y, circle.radius, 0, Math.PI * 2);\n break;\n }\n case 'ellipse':\n {\n const ellipse = shape as typeof shape & { halfWidth: number; halfHeight: number };\n\n if (context.ellipse)\n {\n context.ellipse(ellipse.x, ellipse.y, ellipse.halfWidth, ellipse.halfHeight, 0, 0, Math.PI * 2);\n }\n else\n {\n context.save();\n context.translate(ellipse.x, ellipse.y);\n context.scale(ellipse.halfWidth, ellipse.halfHeight);\n context.arc(0, 0, 1, 0, Math.PI * 2);\n context.restore();\n }\n break;\n }\n case 'triangle':\n {\n const tri = shape as typeof shape & { x2: number; y2: number; x3: number; y3: number };\n\n context.moveTo(tri.x, tri.y);\n context.lineTo(tri.x2, tri.y2);\n context.lineTo(tri.x3, tri.y3);\n context.closePath();\n break;\n }\n case 'polygon':\n default:\n {\n const poly = shape as typeof shape & { points: number[]; closePath: boolean };\n const points = poly.points;\n\n if (!points?.length) break;\n\n context.moveTo(points[0], points[1]);\n\n for (let i = 2; i < points.length; i += 2)\n {\n context.lineTo(points[i], points[i + 1]);\n }\n\n if (poly.closePath)\n {\n context.closePath();\n }\n break;\n }\n }\n}\n\nfunction addHolePaths(context: CrossPlatformCanvasRenderingContext2D, holes?: ShapePrimitiveWithHoles[]): boolean\n{\n if (!holes?.length) return false;\n\n for (let i = 0; i < holes.length; i++)\n {\n const hole = holes[i];\n\n if (!hole?.shape) continue;\n\n const transform = hole.transform;\n const hasTransform = transform && !transform.isIdentity();\n\n if (hasTransform)\n {\n context.save();\n context.transform(transform.a, transform.b, transform.c, transform.d, transform.tx, transform.ty);\n }\n\n buildShapePath(context, hole.shape);\n\n if (hasTransform)\n {\n context.restore();\n }\n }\n\n return true;\n}\n\nfunction getCanvasStyle(\n style: ConvertedFillStyle,\n tint: number,\n textureMatrix?: Matrix,\n currentTransform?: Matrix\n): string | CanvasPattern | CanvasGradient\n{\n const fill = style.fill;\n\n if (fill instanceof FillGradient)\n {\n fill.buildGradient();\n\n const gradientTexture = fill.texture;\n\n if (gradientTexture)\n {\n const pattern = canvasUtils.getTintedPattern(gradientTexture, tint);\n const patternMatrix = textureMatrix\n ? tempPatternMatrix\n .copyFrom(textureMatrix)\n .scale(gradientTexture.source.pixelWidth, gradientTexture.source.pixelHeight)\n : tempPatternMatrix.copyFrom(fill.transform);\n\n if (currentTransform && !style.textureSpace)\n {\n patternMatrix.append(currentTransform);\n }\n\n canvasUtils.applyPatternTransform(pattern, patternMatrix);\n\n return pattern;\n }\n }\n\n if (fill instanceof FillPattern)\n {\n const pattern = canvasUtils.getTintedPattern(fill.texture, tint);\n\n canvasUtils.applyPatternTransform(pattern, fill.transform, false);\n\n return pattern;\n }\n\n const texture = style.texture;\n\n if (texture && texture !== Texture.WHITE)\n {\n if (!texture.source.resource)\n {\n return emptyCanvasStyle;\n }\n\n const pattern = canvasUtils.getTintedPattern(texture, tint);\n let patternMatrix = style.matrix;\n\n if (textureMatrix)\n {\n // getTintedPattern crops the texture to its frame (and un-rotates groupD8-rotated\n // sub-textures), so the pattern content is the orig-oriented region starting at\n // (0,0) - but textureMatrix maps into full-source coordinates. Map back through\n // the texture's uvs into pattern pixel space.\n const { resolution } = texture.source;\n\n patternMatrix = tempPatternMatrix.copyFrom(textureMatrix);\n\n if (texture.rotate)\n {\n const { uvs, orig } = texture;\n\n patternMatrix\n .prepend(tempUvMatrix.set(\n uvs.x1 - uvs.x0, uvs.y1 - uvs.y0,\n uvs.x3 - uvs.x0, uvs.y3 - uvs.y0,\n uvs.x0, uvs.y0\n ).invert())\n .scale(orig.width * resolution, orig.height * resolution);\n }\n else\n {\n patternMatrix\n .scale(texture.source.pixelWidth, texture.source.pixelHeight)\n .translate(-texture.frame.x * resolution, -texture.frame.y * resolution);\n }\n }\n\n canvasUtils.applyPatternTransform(pattern, patternMatrix);\n\n return pattern;\n }\n\n return colorToHex(tint);\n}\n\n/**\n * A GraphicsAdaptor that uses Canvas2D to render graphics.\n * @category rendering\n * @ignore\n */\nexport class CanvasGraphicsAdaptor implements GraphicsAdaptor\n{\n /** @ignore */\n public static extension = {\n type: [\n ExtensionType.CanvasPipesAdaptor,\n ],\n name: 'graphics',\n } as const;\n\n public shader: Shader = null;\n\n public contextChange(renderer: Renderer): void\n {\n void renderer;\n }\n\n public execute(graphicsPipe: GraphicsPipeLike, renderable: Graphics): void\n {\n const renderer = graphicsPipe.renderer as CanvasRenderer;\n const contextSystem = renderer.canvasContext;\n const context = contextSystem.activeContext;\n const baseTransform = renderable.groupTransform;\n\n const globalColor = renderer.globalUniforms.globalUniformData?.worldColor ?? 0xFFFFFFFF;\n const groupColorAlpha = renderable.groupColorAlpha;\n\n const globalAlpha = ((globalColor >>> 24) & 0xFF) / 255;\n const groupAlphaValue = ((groupColorAlpha >>> 24) & 0xFF) / 255;\n\n const filterAlpha = (renderer.filter as { alphaMultiplier?: number } | null)?.alphaMultiplier ?? 1;\n const groupAlpha = globalAlpha * groupAlphaValue * filterAlpha;\n\n if (groupAlpha <= 0) return;\n\n const globalTint = globalColor & 0xFFFFFF;\n const groupTintBGR = groupColorAlpha & 0xFFFFFF;\n\n const groupTint = bgr2rgb(multiplyHexColors(groupTintBGR, globalTint));\n\n const roundPixels = (renderer._roundPixels | renderable._roundPixels) as 0 | 1;\n\n context.save();\n\n contextSystem.setContextTransform(baseTransform, roundPixels === 1);\n contextSystem.setBlendMode(renderable.groupBlendMode);\n\n const instructions = renderable.context.instructions;\n\n for (let i = 0; i < instructions.length; i++)\n {\n const instruction = instructions[i];\n\n if (instruction.action === 'texture')\n {\n const data = instruction.data;\n const texture = data.image;\n const source = texture ? canvasUtils.getCanvasSource(texture) : null;\n\n if (!source) continue;\n\n const alpha = data.alpha * groupAlpha;\n\n if (alpha <= 0) continue;\n\n const tint = multiplyHexColors(data.style, groupTint);\n\n context.globalAlpha = alpha;\n\n let drawSource: CanvasImageSource = source;\n\n if (tint !== 0xFFFFFF)\n {\n drawSource = canvasUtils.getTintedCanvas({ texture }, tint) as CanvasImageSource;\n }\n\n const frame = texture.frame;\n const resolution = texture.source._resolution ?? texture.source.resolution ?? 1;\n\n let sx = frame.x * resolution;\n let sy = frame.y * resolution;\n const sw = frame.width * resolution;\n const sh = frame.height * resolution;\n\n if (drawSource !== source)\n {\n sx = 0;\n sy = 0;\n }\n\n const transform = data.transform;\n const hasTransform = transform && !transform.isIdentity();\n const rotate = texture.rotate;\n\n if (hasTransform || rotate)\n {\n tempMatrix.copyFrom(baseTransform);\n\n if (hasTransform)\n {\n tempMatrix.append(transform);\n }\n\n if (rotate)\n {\n groupD8.matrixAppendRotationInv(tempMatrix, rotate, data.dx, data.dy, data.dw, data.dh);\n }\n\n contextSystem.setContextTransform(tempMatrix, roundPixels === 1);\n }\n else\n {\n contextSystem.setContextTransform(baseTransform, roundPixels === 1);\n }\n\n context.drawImage(\n drawSource,\n sx,\n sy,\n drawSource === source ? sw : (drawSource as any).width,\n drawSource === source ? sh : (drawSource as any).height,\n rotate ? 0 : data.dx,\n rotate ? 0 : data.dy,\n data.dw,\n data.dh\n );\n\n if (hasTransform || rotate)\n {\n contextSystem.setContextTransform(baseTransform, roundPixels === 1);\n }\n\n continue;\n }\n\n const data = instruction.data;\n const shapePath = data?.path?.shapePath;\n\n if (!shapePath?.shapePrimitives?.length) continue;\n\n const style = data.style as ConvertedFillStyle | ConvertedStrokeStyle;\n const tint = multiplyHexColors(style.color, groupTint);\n const alpha = style.alpha * groupAlpha;\n\n if (alpha <= 0) continue;\n\n const isStroke = instruction.action === 'stroke';\n\n context.globalAlpha = alpha;\n\n if (isStroke)\n {\n const strokeStyle = style as ConvertedStrokeStyle;\n\n context.lineWidth = strokeStyle.width;\n context.lineCap = strokeStyle.cap;\n context.lineJoin = strokeStyle.join;\n context.miterLimit = strokeStyle.miterLimit;\n }\n\n const shapePrimitives = shapePath.shapePrimitives;\n\n if (!isStroke && data.hole?.shapePath?.shapePrimitives?.length)\n {\n const lastShape = shapePrimitives[shapePrimitives.length - 1];\n\n lastShape.holes = data.hole.shapePath.shapePrimitives;\n }\n\n for (let j = 0; j < shapePrimitives.length; j++)\n {\n const primitive = shapePrimitives[j];\n\n if (!primitive?.shape) continue;\n\n const transform = primitive.transform;\n const hasTransform = transform && !transform.isIdentity();\n const hasTexture = style.texture && style.texture !== Texture.WHITE;\n const textureTransform = style.textureSpace === 'global' ? transform : null;\n const textureMatrix = hasTexture\n ? generateTextureFillMatrix(tempTextureMatrix, style, primitive.shape, textureTransform)\n : null;\n const currentTransform = hasTransform\n ? tempGradientMatrix.copyFrom(baseTransform).append(transform)\n : baseTransform;\n const canvasStyle = getCanvasStyle(\n style,\n tint,\n textureMatrix,\n currentTransform\n );\n\n if (hasTransform)\n {\n context.save();\n context.transform(transform.a, transform.b, transform.c, transform.d, transform.tx, transform.ty);\n }\n\n if (isStroke)\n {\n const strokeStyle = style as ConvertedStrokeStyle;\n const useStrokeGeometry = strokeStyle.alignment !== 0.5 && !strokeStyle.pixelLine;\n\n if (useStrokeGeometry)\n {\n const points: number[] = [];\n const vertices: number[] = [];\n const indices: number[] = [];\n const shapeBuilder = shapeBuilders[primitive.shape.type];\n\n if (shapeBuilder?.build(primitive.shape, points))\n {\n const close = (primitive.shape as { closePath?: boolean }).closePath ?? true;\n\n buildLine(points, strokeStyle, false, close, vertices, indices);\n context.fillStyle = canvasStyle as string | CanvasPattern | CanvasGradient;\n fillTriangles(context, vertices, indices);\n }\n else\n {\n context.strokeStyle = canvasStyle as string | CanvasPattern | CanvasGradient;\n context.beginPath();\n buildShapePath(context, primitive.shape);\n context.stroke();\n }\n }\n else\n {\n context.strokeStyle = canvasStyle as string | CanvasPattern | CanvasGradient;\n context.beginPath();\n buildShapePath(context, primitive.shape);\n context.stroke();\n }\n }\n else\n {\n context.fillStyle = canvasStyle as string | CanvasPattern | CanvasGradient;\n context.beginPath();\n buildShapePath(context, primitive.shape);\n\n const hasHoles = addHolePaths(context, primitive.holes);\n\n if (hasHoles)\n {\n context.fill('evenodd');\n }\n else\n {\n context.fill();\n }\n }\n\n if (hasTransform)\n {\n context.restore();\n }\n }\n }\n\n context.restore();\n }\n\n public destroy(): void\n {\n this.shader = null;\n }\n}\n","import { extensions, ExtensionType } from '../../../extensions/Extensions';\nimport { CustomRenderPipe } from '../../../scene/container/CustomRenderPipe';\nimport { RenderGroupPipe } from '../../../scene/container/RenderGroupPipe';\nimport { CanvasGraphicsAdaptor } from '../../../scene/graphics/canvas/CanvasGraphicsAdaptor';\nimport { SpritePipe } from '../../../scene/sprite/SpritePipe';\nimport { CanvasBatchAdaptor } from '../../batcher/canvas/CanvasBatchAdaptor';\nimport { BatcherPipe } from '../../batcher/shared/BatcherPipe';\nimport { AlphaMaskPipe } from '../../mask/alpha/AlphaMaskPipe';\nimport { CanvasColorMaskPipe } from '../../mask/color/CanvasColorMaskPipe';\nimport { CanvasStencilMaskPipe } from '../../mask/stencil/CanvasStencilMaskPipe';\nimport { BlendModePipe } from '../shared/blendModes/BlendModePipe';\nimport { AbstractRenderer } from '../shared/system/AbstractRenderer';\nimport { SharedSystems } from '../shared/system/SharedSystems';\nimport { RendererType } from '../types';\nimport { CanvasContextSystem } from './CanvasContextSystem';\nimport { CanvasLimitsSystem } from './CanvasLimitsSystem';\nimport { CanvasRenderTargetSystem } from './renderTarget/CanvasRenderTargetSystem';\nimport { CanvasTextureSystem } from './texture/CanvasTextureSystem';\n\nimport type { ICanvas } from '../../../environment/canvas/ICanvas';\nimport type { PipeConstructor } from '../shared/instructions/RenderPipe';\nimport type { RendererLoader } from '../shared/system/AbstractRenderer';\nimport type { SharedRendererOptions } from '../shared/system/SharedSystems';\nimport type { SystemConstructor } from '../shared/system/System';\nimport type { ExtractRendererOptions, ExtractSystemTypes } from '../shared/system/utils/typeUtils';\n\nconst DefaultCanvasSystems = [\n ...SharedSystems,\n CanvasContextSystem,\n CanvasLimitsSystem,\n CanvasTextureSystem,\n CanvasRenderTargetSystem,\n];\n\nconst DefaultCanvasPipes = [\n BlendModePipe,\n BatcherPipe,\n SpritePipe,\n RenderGroupPipe,\n AlphaMaskPipe,\n CanvasStencilMaskPipe,\n CanvasColorMaskPipe,\n CustomRenderPipe,\n];\nconst DefaultCanvasAdapters = [\n CanvasBatchAdaptor,\n CanvasGraphicsAdaptor,\n];\n\n// installed systems will be added to this array by the extensions manager.\nconst systems: { name: string; value: SystemConstructor }[] = [];\nconst renderPipes: { name: string; value: PipeConstructor }[] = [];\nconst renderPipeAdaptors: { name: string; value: any }[] = [];\nconst loaders: { name: string; value: RendererLoader }[] = [];\n\nextensions.handleByNamedList(ExtensionType.CanvasSystem, systems);\nextensions.handleByNamedList(ExtensionType.CanvasPipes, renderPipes);\nextensions.handleByNamedList(ExtensionType.CanvasPipesAdaptor, renderPipeAdaptors);\nextensions.handleByNamedList(ExtensionType.CanvasLoader, loaders);\n\n// add all the default systems as well as any user defined ones from the extensions\nextensions.add(...DefaultCanvasSystems, ...DefaultCanvasPipes, ...DefaultCanvasAdapters);\n\n/**\n * The default Canvas systems. These are the systems that are added by default to the CanvasRenderer.\n * @category rendering\n * @standard\n * @interface\n */\nexport type CanvasSystems = ExtractSystemTypes<typeof DefaultCanvasSystems>\n& PixiMixins.RendererSystems & PixiMixins.CanvasSystems;\n\n/**\n * The Canvas renderer pipes. These are used to render the scene.\n * @see {@link CanvasRenderer}\n * @internal\n */\nexport type CanvasPipes = ExtractSystemTypes<typeof DefaultCanvasPipes> & PixiMixins.RendererPipes & PixiMixins.CanvasPipes;\n\n/**\n * Options for CanvasRenderer.\n * @category rendering\n * @standard\n */\nexport interface CanvasOptions\n extends\n SharedRendererOptions,\n ExtractRendererOptions<typeof DefaultCanvasSystems>,\n PixiMixins.CanvasOptions {}\n\n// eslint-disable-next-line requireExport/require-export-jsdoc, requireMemberAPI/require-member-api-doc\nexport interface CanvasRenderer<T extends ICanvas = HTMLCanvasElement>\n extends AbstractRenderer<CanvasPipes, CanvasOptions, T>,\n CanvasSystems {}\n\n/**\n * The Canvas PixiJS Renderer. This renderer allows you to use the HTML Canvas 2D context.\n * @category rendering\n * @standard\n */\nexport class CanvasRenderer<T extends ICanvas = HTMLCanvasElement>\n extends AbstractRenderer<CanvasPipes, CanvasOptions, T>\n implements CanvasSystems\n{\n constructor()\n {\n const systemConfig = {\n name: 'canvas',\n type: RendererType.CANVAS,\n systems,\n renderPipes,\n renderPipeAdaptors,\n loaders,\n };\n\n super(systemConfig);\n }\n}\n"],"names":["data","alpha","tint","generateTextureFillMatrix"],"mappings":"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","ignoreList":[0,1,2,3,4,5,6,7,8,9,10]}