@castlekit/castle 0.3.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (571) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -0
  2. package/.next/standalone/.next/app-path-routes-manifest.json +29 -0
  3. package/.next/standalone/.next/build-manifest.json +20 -0
  4. package/.next/standalone/.next/package.json +1 -0
  5. package/.next/standalone/.next/prerender-manifest.json +186 -0
  6. package/.next/standalone/.next/required-server-files.json +322 -0
  7. package/.next/standalone/.next/routes-manifest.json +213 -0
  8. package/.next/standalone/.next/server/app/_global-error/page/app-paths-manifest.json +3 -0
  9. package/.next/standalone/.next/server/app/_global-error/page/build-manifest.json +17 -0
  10. package/.next/standalone/.next/server/app/_global-error/page/next-font-manifest.json +6 -0
  11. package/.next/standalone/.next/server/app/_global-error/page/react-loadable-manifest.json +1 -0
  12. package/.next/standalone/.next/server/app/_global-error/page/server-reference-manifest.json +4 -0
  13. package/.next/standalone/.next/server/app/_global-error/page.js +10 -0
  14. package/.next/standalone/.next/server/app/_global-error/page.js.map +5 -0
  15. package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -0
  16. package/.next/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +2 -0
  17. package/.next/standalone/.next/server/app/_global-error.html +2 -0
  18. package/.next/standalone/.next/server/app/_global-error.meta +15 -0
  19. package/.next/standalone/.next/server/app/_global-error.rsc +12 -0
  20. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +5 -0
  21. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +12 -0
  22. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
  23. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +4 -0
  24. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  25. package/.next/standalone/.next/server/app/_not-found/page/app-paths-manifest.json +3 -0
  26. package/.next/standalone/.next/server/app/_not-found/page/build-manifest.json +17 -0
  27. package/.next/standalone/.next/server/app/_not-found/page/next-font-manifest.json +11 -0
  28. package/.next/standalone/.next/server/app/_not-found/page/react-loadable-manifest.json +1 -0
  29. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +4 -0
  30. package/.next/standalone/.next/server/app/_not-found/page.js +15 -0
  31. package/.next/standalone/.next/server/app/_not-found/page.js.map +5 -0
  32. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -0
  33. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +2 -0
  34. package/.next/standalone/.next/server/app/_not-found.html +1 -0
  35. package/.next/standalone/.next/server/app/_not-found.meta +16 -0
  36. package/.next/standalone/.next/server/app/_not-found.rsc +17 -0
  37. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +17 -0
  38. package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +6 -0
  39. package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +8 -0
  40. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -0
  41. package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +4 -0
  42. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -0
  43. package/.next/standalone/.next/server/app/api/avatars/[id]/route/app-paths-manifest.json +3 -0
  44. package/.next/standalone/.next/server/app/api/avatars/[id]/route/build-manifest.json +11 -0
  45. package/.next/standalone/.next/server/app/api/avatars/[id]/route/server-reference-manifest.json +4 -0
  46. package/.next/standalone/.next/server/app/api/avatars/[id]/route.js +9 -0
  47. package/.next/standalone/.next/server/app/api/avatars/[id]/route.js.map +5 -0
  48. package/.next/standalone/.next/server/app/api/avatars/[id]/route.js.nft.json +1 -0
  49. package/.next/standalone/.next/server/app/api/avatars/[id]/route_client-reference-manifest.js +2 -0
  50. package/.next/standalone/.next/server/app/api/openclaw/agents/[id]/avatar/route/app-paths-manifest.json +3 -0
  51. package/.next/standalone/.next/server/app/api/openclaw/agents/[id]/avatar/route/build-manifest.json +11 -0
  52. package/.next/standalone/.next/server/app/api/openclaw/agents/[id]/avatar/route/server-reference-manifest.json +4 -0
  53. package/.next/standalone/.next/server/app/api/openclaw/agents/[id]/avatar/route.js +9 -0
  54. package/.next/standalone/.next/server/app/api/openclaw/agents/[id]/avatar/route.js.map +5 -0
  55. package/.next/standalone/.next/server/app/api/openclaw/agents/[id]/avatar/route.js.nft.json +1 -0
  56. package/.next/standalone/.next/server/app/api/openclaw/agents/[id]/avatar/route_client-reference-manifest.js +2 -0
  57. package/.next/standalone/.next/server/app/api/openclaw/agents/route/app-paths-manifest.json +3 -0
  58. package/.next/standalone/.next/server/app/api/openclaw/agents/route/build-manifest.json +11 -0
  59. package/.next/standalone/.next/server/app/api/openclaw/agents/route/server-reference-manifest.json +4 -0
  60. package/.next/standalone/.next/server/app/api/openclaw/agents/route.js +9 -0
  61. package/.next/standalone/.next/server/app/api/openclaw/agents/route.js.map +5 -0
  62. package/.next/standalone/.next/server/app/api/openclaw/agents/route.js.nft.json +1 -0
  63. package/.next/standalone/.next/server/app/api/openclaw/agents/route_client-reference-manifest.js +2 -0
  64. package/.next/standalone/.next/server/app/api/openclaw/agents/status/route/app-paths-manifest.json +3 -0
  65. package/.next/standalone/.next/server/app/api/openclaw/agents/status/route/build-manifest.json +11 -0
  66. package/.next/standalone/.next/server/app/api/openclaw/agents/status/route/server-reference-manifest.json +4 -0
  67. package/.next/standalone/.next/server/app/api/openclaw/agents/status/route.js +13 -0
  68. package/.next/standalone/.next/server/app/api/openclaw/agents/status/route.js.map +5 -0
  69. package/.next/standalone/.next/server/app/api/openclaw/agents/status/route.js.nft.json +1 -0
  70. package/.next/standalone/.next/server/app/api/openclaw/agents/status/route_client-reference-manifest.js +2 -0
  71. package/.next/standalone/.next/server/app/api/openclaw/chat/attachments/route/app-paths-manifest.json +3 -0
  72. package/.next/standalone/.next/server/app/api/openclaw/chat/attachments/route/build-manifest.json +11 -0
  73. package/.next/standalone/.next/server/app/api/openclaw/chat/attachments/route/server-reference-manifest.json +4 -0
  74. package/.next/standalone/.next/server/app/api/openclaw/chat/attachments/route.js +13 -0
  75. package/.next/standalone/.next/server/app/api/openclaw/chat/attachments/route.js.map +5 -0
  76. package/.next/standalone/.next/server/app/api/openclaw/chat/attachments/route.js.nft.json +1 -0
  77. package/.next/standalone/.next/server/app/api/openclaw/chat/attachments/route_client-reference-manifest.js +2 -0
  78. package/.next/standalone/.next/server/app/api/openclaw/chat/channels/route/app-paths-manifest.json +3 -0
  79. package/.next/standalone/.next/server/app/api/openclaw/chat/channels/route/build-manifest.json +11 -0
  80. package/.next/standalone/.next/server/app/api/openclaw/chat/channels/route/server-reference-manifest.json +4 -0
  81. package/.next/standalone/.next/server/app/api/openclaw/chat/channels/route.js +13 -0
  82. package/.next/standalone/.next/server/app/api/openclaw/chat/channels/route.js.map +5 -0
  83. package/.next/standalone/.next/server/app/api/openclaw/chat/channels/route.js.nft.json +1 -0
  84. package/.next/standalone/.next/server/app/api/openclaw/chat/channels/route_client-reference-manifest.js +2 -0
  85. package/.next/standalone/.next/server/app/api/openclaw/chat/route/app-paths-manifest.json +3 -0
  86. package/.next/standalone/.next/server/app/api/openclaw/chat/route/build-manifest.json +11 -0
  87. package/.next/standalone/.next/server/app/api/openclaw/chat/route/server-reference-manifest.json +4 -0
  88. package/.next/standalone/.next/server/app/api/openclaw/chat/route.js +14 -0
  89. package/.next/standalone/.next/server/app/api/openclaw/chat/route.js.map +5 -0
  90. package/.next/standalone/.next/server/app/api/openclaw/chat/route.js.nft.json +1 -0
  91. package/.next/standalone/.next/server/app/api/openclaw/chat/route_client-reference-manifest.js +2 -0
  92. package/.next/standalone/.next/server/app/api/openclaw/chat/search/route/app-paths-manifest.json +3 -0
  93. package/.next/standalone/.next/server/app/api/openclaw/chat/search/route/build-manifest.json +11 -0
  94. package/.next/standalone/.next/server/app/api/openclaw/chat/search/route/server-reference-manifest.json +4 -0
  95. package/.next/standalone/.next/server/app/api/openclaw/chat/search/route.js +13 -0
  96. package/.next/standalone/.next/server/app/api/openclaw/chat/search/route.js.map +5 -0
  97. package/.next/standalone/.next/server/app/api/openclaw/chat/search/route.js.nft.json +1 -0
  98. package/.next/standalone/.next/server/app/api/openclaw/chat/search/route_client-reference-manifest.js +2 -0
  99. package/.next/standalone/.next/server/app/api/openclaw/chat/storage/route/app-paths-manifest.json +3 -0
  100. package/.next/standalone/.next/server/app/api/openclaw/chat/storage/route/build-manifest.json +11 -0
  101. package/.next/standalone/.next/server/app/api/openclaw/chat/storage/route/server-reference-manifest.json +4 -0
  102. package/.next/standalone/.next/server/app/api/openclaw/chat/storage/route.js +13 -0
  103. package/.next/standalone/.next/server/app/api/openclaw/chat/storage/route.js.map +5 -0
  104. package/.next/standalone/.next/server/app/api/openclaw/chat/storage/route.js.nft.json +1 -0
  105. package/.next/standalone/.next/server/app/api/openclaw/chat/storage/route_client-reference-manifest.js +2 -0
  106. package/.next/standalone/.next/server/app/api/openclaw/config/route/app-paths-manifest.json +3 -0
  107. package/.next/standalone/.next/server/app/api/openclaw/config/route/build-manifest.json +11 -0
  108. package/.next/standalone/.next/server/app/api/openclaw/config/route/server-reference-manifest.json +4 -0
  109. package/.next/standalone/.next/server/app/api/openclaw/config/route.js +9 -0
  110. package/.next/standalone/.next/server/app/api/openclaw/config/route.js.map +5 -0
  111. package/.next/standalone/.next/server/app/api/openclaw/config/route.js.nft.json +1 -0
  112. package/.next/standalone/.next/server/app/api/openclaw/config/route_client-reference-manifest.js +2 -0
  113. package/.next/standalone/.next/server/app/api/openclaw/events/route/app-paths-manifest.json +3 -0
  114. package/.next/standalone/.next/server/app/api/openclaw/events/route/build-manifest.json +11 -0
  115. package/.next/standalone/.next/server/app/api/openclaw/events/route/server-reference-manifest.json +4 -0
  116. package/.next/standalone/.next/server/app/api/openclaw/events/route.js +8 -0
  117. package/.next/standalone/.next/server/app/api/openclaw/events/route.js.map +5 -0
  118. package/.next/standalone/.next/server/app/api/openclaw/events/route.js.nft.json +1 -0
  119. package/.next/standalone/.next/server/app/api/openclaw/events/route_client-reference-manifest.js +2 -0
  120. package/.next/standalone/.next/server/app/api/openclaw/logs/route/app-paths-manifest.json +3 -0
  121. package/.next/standalone/.next/server/app/api/openclaw/logs/route/build-manifest.json +11 -0
  122. package/.next/standalone/.next/server/app/api/openclaw/logs/route/server-reference-manifest.json +4 -0
  123. package/.next/standalone/.next/server/app/api/openclaw/logs/route.js +8 -0
  124. package/.next/standalone/.next/server/app/api/openclaw/logs/route.js.map +5 -0
  125. package/.next/standalone/.next/server/app/api/openclaw/logs/route.js.nft.json +1 -0
  126. package/.next/standalone/.next/server/app/api/openclaw/logs/route_client-reference-manifest.js +2 -0
  127. package/.next/standalone/.next/server/app/api/openclaw/ping/route/app-paths-manifest.json +3 -0
  128. package/.next/standalone/.next/server/app/api/openclaw/ping/route/build-manifest.json +11 -0
  129. package/.next/standalone/.next/server/app/api/openclaw/ping/route/server-reference-manifest.json +4 -0
  130. package/.next/standalone/.next/server/app/api/openclaw/ping/route.js +9 -0
  131. package/.next/standalone/.next/server/app/api/openclaw/ping/route.js.map +5 -0
  132. package/.next/standalone/.next/server/app/api/openclaw/ping/route.js.nft.json +1 -0
  133. package/.next/standalone/.next/server/app/api/openclaw/ping/route_client-reference-manifest.js +2 -0
  134. package/.next/standalone/.next/server/app/api/openclaw/restart/route/app-paths-manifest.json +3 -0
  135. package/.next/standalone/.next/server/app/api/openclaw/restart/route/build-manifest.json +11 -0
  136. package/.next/standalone/.next/server/app/api/openclaw/restart/route/server-reference-manifest.json +4 -0
  137. package/.next/standalone/.next/server/app/api/openclaw/restart/route.js +7 -0
  138. package/.next/standalone/.next/server/app/api/openclaw/restart/route.js.map +5 -0
  139. package/.next/standalone/.next/server/app/api/openclaw/restart/route.js.nft.json +1 -0
  140. package/.next/standalone/.next/server/app/api/openclaw/restart/route_client-reference-manifest.js +2 -0
  141. package/.next/standalone/.next/server/app/api/openclaw/session/context/route/app-paths-manifest.json +3 -0
  142. package/.next/standalone/.next/server/app/api/openclaw/session/context/route/build-manifest.json +11 -0
  143. package/.next/standalone/.next/server/app/api/openclaw/session/context/route/server-reference-manifest.json +4 -0
  144. package/.next/standalone/.next/server/app/api/openclaw/session/context/route.js +14 -0
  145. package/.next/standalone/.next/server/app/api/openclaw/session/context/route.js.map +5 -0
  146. package/.next/standalone/.next/server/app/api/openclaw/session/context/route.js.nft.json +1 -0
  147. package/.next/standalone/.next/server/app/api/openclaw/session/context/route_client-reference-manifest.js +2 -0
  148. package/.next/standalone/.next/server/app/api/openclaw/session/status/route/app-paths-manifest.json +3 -0
  149. package/.next/standalone/.next/server/app/api/openclaw/session/status/route/build-manifest.json +11 -0
  150. package/.next/standalone/.next/server/app/api/openclaw/session/status/route/server-reference-manifest.json +4 -0
  151. package/.next/standalone/.next/server/app/api/openclaw/session/status/route.js +8 -0
  152. package/.next/standalone/.next/server/app/api/openclaw/session/status/route.js.map +5 -0
  153. package/.next/standalone/.next/server/app/api/openclaw/session/status/route.js.nft.json +1 -0
  154. package/.next/standalone/.next/server/app/api/openclaw/session/status/route_client-reference-manifest.js +2 -0
  155. package/.next/standalone/.next/server/app/api/openclaw/sessions/route/app-paths-manifest.json +3 -0
  156. package/.next/standalone/.next/server/app/api/openclaw/sessions/route/build-manifest.json +11 -0
  157. package/.next/standalone/.next/server/app/api/openclaw/sessions/route/server-reference-manifest.json +4 -0
  158. package/.next/standalone/.next/server/app/api/openclaw/sessions/route.js +8 -0
  159. package/.next/standalone/.next/server/app/api/openclaw/sessions/route.js.map +5 -0
  160. package/.next/standalone/.next/server/app/api/openclaw/sessions/route.js.nft.json +1 -0
  161. package/.next/standalone/.next/server/app/api/openclaw/sessions/route_client-reference-manifest.js +2 -0
  162. package/.next/standalone/.next/server/app/api/settings/avatar/route/app-paths-manifest.json +3 -0
  163. package/.next/standalone/.next/server/app/api/settings/avatar/route/build-manifest.json +11 -0
  164. package/.next/standalone/.next/server/app/api/settings/avatar/route/server-reference-manifest.json +4 -0
  165. package/.next/standalone/.next/server/app/api/settings/avatar/route.js +13 -0
  166. package/.next/standalone/.next/server/app/api/settings/avatar/route.js.map +5 -0
  167. package/.next/standalone/.next/server/app/api/settings/avatar/route.js.nft.json +1 -0
  168. package/.next/standalone/.next/server/app/api/settings/avatar/route_client-reference-manifest.js +2 -0
  169. package/.next/standalone/.next/server/app/api/settings/route/app-paths-manifest.json +3 -0
  170. package/.next/standalone/.next/server/app/api/settings/route/build-manifest.json +11 -0
  171. package/.next/standalone/.next/server/app/api/settings/route/server-reference-manifest.json +4 -0
  172. package/.next/standalone/.next/server/app/api/settings/route.js +13 -0
  173. package/.next/standalone/.next/server/app/api/settings/route.js.map +5 -0
  174. package/.next/standalone/.next/server/app/api/settings/route.js.nft.json +1 -0
  175. package/.next/standalone/.next/server/app/api/settings/route_client-reference-manifest.js +2 -0
  176. package/.next/standalone/.next/server/app/chat/[channelId]/page/app-paths-manifest.json +3 -0
  177. package/.next/standalone/.next/server/app/chat/[channelId]/page/build-manifest.json +17 -0
  178. package/.next/standalone/.next/server/app/chat/[channelId]/page/next-font-manifest.json +11 -0
  179. package/.next/standalone/.next/server/app/chat/[channelId]/page/react-loadable-manifest.json +1 -0
  180. package/.next/standalone/.next/server/app/chat/[channelId]/page/server-reference-manifest.json +4 -0
  181. package/.next/standalone/.next/server/app/chat/[channelId]/page.js +18 -0
  182. package/.next/standalone/.next/server/app/chat/[channelId]/page.js.map +5 -0
  183. package/.next/standalone/.next/server/app/chat/[channelId]/page.js.nft.json +1 -0
  184. package/.next/standalone/.next/server/app/chat/[channelId]/page_client-reference-manifest.js +2 -0
  185. package/.next/standalone/.next/server/app/chat/page/app-paths-manifest.json +3 -0
  186. package/.next/standalone/.next/server/app/chat/page/build-manifest.json +17 -0
  187. package/.next/standalone/.next/server/app/chat/page/next-font-manifest.json +11 -0
  188. package/.next/standalone/.next/server/app/chat/page/react-loadable-manifest.json +1 -0
  189. package/.next/standalone/.next/server/app/chat/page/server-reference-manifest.json +4 -0
  190. package/.next/standalone/.next/server/app/chat/page.js +18 -0
  191. package/.next/standalone/.next/server/app/chat/page.js.map +5 -0
  192. package/.next/standalone/.next/server/app/chat/page.js.nft.json +1 -0
  193. package/.next/standalone/.next/server/app/chat/page_client-reference-manifest.js +2 -0
  194. package/.next/standalone/.next/server/app/chat.html +1 -0
  195. package/.next/standalone/.next/server/app/chat.meta +15 -0
  196. package/.next/standalone/.next/server/app/chat.rsc +26 -0
  197. package/.next/standalone/.next/server/app/chat.segments/_full.segment.rsc +26 -0
  198. package/.next/standalone/.next/server/app/chat.segments/_head.segment.rsc +6 -0
  199. package/.next/standalone/.next/server/app/chat.segments/_index.segment.rsc +8 -0
  200. package/.next/standalone/.next/server/app/chat.segments/_tree.segment.rsc +4 -0
  201. package/.next/standalone/.next/server/app/chat.segments/chat/__PAGE__.segment.rsc +9 -0
  202. package/.next/standalone/.next/server/app/chat.segments/chat.segment.rsc +7 -0
  203. package/.next/standalone/.next/server/app/icon.png/route/app-paths-manifest.json +3 -0
  204. package/.next/standalone/.next/server/app/icon.png/route/build-manifest.json +11 -0
  205. package/.next/standalone/.next/server/app/icon.png/route.js +8 -0
  206. package/.next/standalone/.next/server/app/icon.png/route.js.map +5 -0
  207. package/.next/standalone/.next/server/app/icon.png/route.js.nft.json +1 -0
  208. package/.next/standalone/.next/server/app/icon.png.body +0 -0
  209. package/.next/standalone/.next/server/app/icon.png.meta +1 -0
  210. package/.next/standalone/.next/server/app/index.html +1 -0
  211. package/.next/standalone/.next/server/app/index.meta +14 -0
  212. package/.next/standalone/.next/server/app/index.rsc +23 -0
  213. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +9 -0
  214. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +23 -0
  215. package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +6 -0
  216. package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +8 -0
  217. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +4 -0
  218. package/.next/standalone/.next/server/app/page/app-paths-manifest.json +3 -0
  219. package/.next/standalone/.next/server/app/page/build-manifest.json +17 -0
  220. package/.next/standalone/.next/server/app/page/next-font-manifest.json +11 -0
  221. package/.next/standalone/.next/server/app/page/react-loadable-manifest.json +1 -0
  222. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +4 -0
  223. package/.next/standalone/.next/server/app/page.js +17 -0
  224. package/.next/standalone/.next/server/app/page.js.map +5 -0
  225. package/.next/standalone/.next/server/app/page.js.nft.json +1 -0
  226. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +2 -0
  227. package/.next/standalone/.next/server/app/settings/page/app-paths-manifest.json +3 -0
  228. package/.next/standalone/.next/server/app/settings/page/build-manifest.json +17 -0
  229. package/.next/standalone/.next/server/app/settings/page/next-font-manifest.json +11 -0
  230. package/.next/standalone/.next/server/app/settings/page/react-loadable-manifest.json +1 -0
  231. package/.next/standalone/.next/server/app/settings/page/server-reference-manifest.json +4 -0
  232. package/.next/standalone/.next/server/app/settings/page.js +17 -0
  233. package/.next/standalone/.next/server/app/settings/page.js.map +5 -0
  234. package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -0
  235. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +2 -0
  236. package/.next/standalone/.next/server/app/settings.html +1 -0
  237. package/.next/standalone/.next/server/app/settings.meta +15 -0
  238. package/.next/standalone/.next/server/app/settings.rsc +23 -0
  239. package/.next/standalone/.next/server/app/settings.segments/_full.segment.rsc +23 -0
  240. package/.next/standalone/.next/server/app/settings.segments/_head.segment.rsc +6 -0
  241. package/.next/standalone/.next/server/app/settings.segments/_index.segment.rsc +8 -0
  242. package/.next/standalone/.next/server/app/settings.segments/_tree.segment.rsc +4 -0
  243. package/.next/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +9 -0
  244. package/.next/standalone/.next/server/app/settings.segments/settings.segment.rsc +4 -0
  245. package/.next/standalone/.next/server/app/ui-kit/page/app-paths-manifest.json +3 -0
  246. package/.next/standalone/.next/server/app/ui-kit/page/build-manifest.json +17 -0
  247. package/.next/standalone/.next/server/app/ui-kit/page/next-font-manifest.json +11 -0
  248. package/.next/standalone/.next/server/app/ui-kit/page/react-loadable-manifest.json +1 -0
  249. package/.next/standalone/.next/server/app/ui-kit/page/server-reference-manifest.json +4 -0
  250. package/.next/standalone/.next/server/app/ui-kit/page.js +17 -0
  251. package/.next/standalone/.next/server/app/ui-kit/page.js.map +5 -0
  252. package/.next/standalone/.next/server/app/ui-kit/page.js.nft.json +1 -0
  253. package/.next/standalone/.next/server/app/ui-kit/page_client-reference-manifest.js +2 -0
  254. package/.next/standalone/.next/server/app/ui-kit.html +1 -0
  255. package/.next/standalone/.next/server/app/ui-kit.meta +15 -0
  256. package/.next/standalone/.next/server/app/ui-kit.rsc +23 -0
  257. package/.next/standalone/.next/server/app/ui-kit.segments/_full.segment.rsc +23 -0
  258. package/.next/standalone/.next/server/app/ui-kit.segments/_head.segment.rsc +6 -0
  259. package/.next/standalone/.next/server/app/ui-kit.segments/_index.segment.rsc +8 -0
  260. package/.next/standalone/.next/server/app/ui-kit.segments/_tree.segment.rsc +4 -0
  261. package/.next/standalone/.next/server/app/ui-kit.segments/ui-kit/__PAGE__.segment.rsc +9 -0
  262. package/.next/standalone/.next/server/app/ui-kit.segments/ui-kit.segment.rsc +4 -0
  263. package/.next/standalone/.next/server/app-paths-manifest.json +29 -0
  264. package/.next/standalone/.next/server/chunks/[externals]_next_dist_a6d89067._.js +3 -0
  265. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2824c41d._.js +3 -0
  266. package/.next/standalone/.next/server/chunks/[root-of-the-server]__28c35c7d._.js +11 -0
  267. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2aa60cfc._.js +3 -0
  268. package/.next/standalone/.next/server/chunks/[root-of-the-server]__2e91224f._.js +3 -0
  269. package/.next/standalone/.next/server/chunks/[root-of-the-server]__361bce14._.js +3 -0
  270. package/.next/standalone/.next/server/chunks/[root-of-the-server]__36b434e7._.js +3 -0
  271. package/.next/standalone/.next/server/chunks/[root-of-the-server]__47efedcd._.js +3 -0
  272. package/.next/standalone/.next/server/chunks/[root-of-the-server]__4b157e5a._.js +3 -0
  273. package/.next/standalone/.next/server/chunks/[root-of-the-server]__56815e49._.js +3 -0
  274. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5ef29d48._.js +3 -0
  275. package/.next/standalone/.next/server/chunks/[root-of-the-server]__5f6aa90c._.js +3 -0
  276. package/.next/standalone/.next/server/chunks/[root-of-the-server]__7114163c._.js +3 -0
  277. package/.next/standalone/.next/server/chunks/[root-of-the-server]__8f5ebbc3._.js +7 -0
  278. package/.next/standalone/.next/server/chunks/[root-of-the-server]__93758a40._.js +3 -0
  279. package/.next/standalone/.next/server/chunks/[root-of-the-server]__a80a1099._.js +31 -0
  280. package/.next/standalone/.next/server/chunks/[root-of-the-server]__af3cebf7._.js +138 -0
  281. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b3182da1._.js +4 -0
  282. package/.next/standalone/.next/server/chunks/[root-of-the-server]__b39f673e._.js +3 -0
  283. package/.next/standalone/.next/server/chunks/[root-of-the-server]__bbd3b47c._.js +3 -0
  284. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c223b7d3._.js +3 -0
  285. package/.next/standalone/.next/server/chunks/[root-of-the-server]__c7ce1c43._.js +4 -0
  286. package/.next/standalone/.next/server/chunks/[root-of-the-server]__e50da949._.js +3 -0
  287. package/.next/standalone/.next/server/chunks/[root-of-the-server]__f41df55c._.js +3 -0
  288. package/.next/standalone/.next/server/chunks/[root-of-the-server]__faf9ad2e._.js +3 -0
  289. package/.next/standalone/.next/server/chunks/[root-of-the-server]__fe76fb40._.js +3 -0
  290. package/.next/standalone/.next/server/chunks/[turbopack]_runtime.js +795 -0
  291. package/.next/standalone/.next/server/chunks/_b137597c._.js +3 -0
  292. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_avatars_[id]_route_actions_21e11acd.js +3 -0
  293. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_agents_[id]_avatar_route_actions_1cb9863b.js +3 -0
  294. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_agents_route_actions_82d135b1.js +3 -0
  295. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_agents_status_route_actions_0b88c8a6.js +3 -0
  296. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_chat_attachments_route_actions_07ce0270.js +3 -0
  297. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_chat_channels_route_actions_945f54a8.js +3 -0
  298. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_chat_route_actions_cd398c8d.js +3 -0
  299. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_chat_search_route_actions_d1599780.js +3 -0
  300. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_chat_storage_route_actions_fd3e7369.js +3 -0
  301. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_config_route_actions_3c2a30de.js +3 -0
  302. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_events_route_actions_24b1acfe.js +3 -0
  303. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_logs_route_actions_151f8335.js +3 -0
  304. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_ping_route_actions_3079a70c.js +3 -0
  305. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_restart_route_actions_25b671bb.js +3 -0
  306. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_session_context_route_actions_14ebc427.js +3 -0
  307. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_session_status_route_actions_060ba4f4.js +3 -0
  308. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_openclaw_sessions_route_actions_0c00f4a9.js +3 -0
  309. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_settings_avatar_route_actions_e222d284.js +3 -0
  310. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_settings_route_actions_a476013b.js +3 -0
  311. package/.next/standalone/.next/server/chunks/_next-internal_server_app_icon_png_route_actions_fa3562e2.js +3 -0
  312. package/.next/standalone/.next/server/chunks/node_modules_drizzle-orm_a549359e._.js +3 -0
  313. package/.next/standalone/.next/server/chunks/node_modules_drizzle-orm_f8415f57._.js +4 -0
  314. package/.next/standalone/.next/server/chunks/node_modules_drizzle-orm_index_d5f6a514.js +3 -0
  315. package/.next/standalone/.next/server/chunks/node_modules_next_1402a1da._.js +17 -0
  316. package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_97dac613.js +3 -0
  317. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__03219135._.js +3 -0
  318. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0f7b131d._.js +3 -0
  319. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1690ee0d._.js +10 -0
  320. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__31de57f6._.js +3 -0
  321. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__4e637dc9._.js +3 -0
  322. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__55ece10e._.js +3 -0
  323. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__69f5a83d._.js +3 -0
  324. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__a457c799._.js +3 -0
  325. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__a5ce2f72._.js +3 -0
  326. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__aecdcbb6._.js +3 -0
  327. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__b4ed2322._.js +3 -0
  328. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__ca05f4a0._.js +4 -0
  329. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__e2f86be8._.js +3 -0
  330. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__e375a3a7._.js +3 -0
  331. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__ea12eca9._.js +3 -0
  332. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__ed06de41._.js +3 -0
  333. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__f907a2ce._.js +3 -0
  334. package/.next/standalone/.next/server/chunks/ssr/[turbopack]_runtime.js +795 -0
  335. package/.next/standalone/.next/server/chunks/ssr/_0bb5ce6a._.js +3 -0
  336. package/.next/standalone/.next/server/chunks/ssr/_30d6fdaa._.js +3 -0
  337. package/.next/standalone/.next/server/chunks/ssr/_3b2b917b._.js +4 -0
  338. package/.next/standalone/.next/server/chunks/ssr/_3bf0a72b._.js +4 -0
  339. package/.next/standalone/.next/server/chunks/ssr/_539da066._.js +4 -0
  340. package/.next/standalone/.next/server/chunks/ssr/_6caa74c9._.js +3 -0
  341. package/.next/standalone/.next/server/chunks/ssr/_7a67de23._.js +3 -0
  342. package/.next/standalone/.next/server/chunks/ssr/_7b52fbee._.js +3 -0
  343. package/.next/standalone/.next/server/chunks/ssr/_84fe35ec._.js +3 -0
  344. package/.next/standalone/.next/server/chunks/ssr/_ac1c4494._.js +3 -0
  345. package/.next/standalone/.next/server/chunks/ssr/_ca23d3b0._.js +4 -0
  346. package/.next/standalone/.next/server/chunks/ssr/_d04daf62._.js +3 -0
  347. package/.next/standalone/.next/server/chunks/ssr/_e6db8164._.js +4 -0
  348. package/.next/standalone/.next/server/chunks/ssr/_ef4d503b._.js +3 -0
  349. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_75761787.js +3 -0
  350. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_554ec2bf.js +3 -0
  351. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_chat_[channelId]_page_actions_6220414d.js +3 -0
  352. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_chat_page_actions_c92d15a6.js +3 -0
  353. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_page_actions_39d4fc33.js +3 -0
  354. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_settings_page_actions_840229cd.js +3 -0
  355. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_ui-kit_page_actions_8486bfbd.js +3 -0
  356. package/.next/standalone/.next/server/chunks/ssr/node_modules_45598cbe._.js +6 -0
  357. package/.next/standalone/.next/server/chunks/ssr/node_modules_d3586d0c._.js +3 -0
  358. package/.next/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_95f27697._.js +3 -0
  359. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_08570d7f._.js +4 -0
  360. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_65e60196._.js +3 -0
  361. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_681edc0a._.js +6 -0
  362. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_9774470f._.js +3 -0
  363. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_45780354.js +3 -0
  364. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_ece394eb.js +3 -0
  365. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_15817684.js +3 -0
  366. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_esm_build_templates_app-page_02f39477.js +4 -0
  367. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_f9713a08._.js +3 -0
  368. package/.next/standalone/.next/server/chunks/ssr/src_app_0c8a77b8._.js +3 -0
  369. package/.next/standalone/.next/server/chunks/ssr/src_app_chat_layout_tsx_31cd0231._.js +3 -0
  370. package/.next/standalone/.next/server/chunks/ssr/src_app_chat_layout_tsx_be09920b._.js +3 -0
  371. package/.next/standalone/.next/server/chunks/ssr/src_app_chat_page_tsx_2a0793ad._.js +3 -0
  372. package/.next/standalone/.next/server/edge/chunks/[root-of-the-server]__25fe7590._.js +15 -0
  373. package/.next/standalone/.next/server/edge/chunks/node_modules_next_dist_esm_build_templates_edge-wrapper_78fa9d6a.js +3 -0
  374. package/.next/standalone/.next/server/edge/chunks/turbopack-node_modules_next_dist_esm_build_templates_edge-wrapper_99e3e1b8.js +6 -0
  375. package/.next/standalone/.next/server/functions-config-manifest.json +6 -0
  376. package/.next/standalone/.next/server/middleware-build-manifest.js +21 -0
  377. package/.next/standalone/.next/server/middleware-manifest.json +33 -0
  378. package/.next/standalone/.next/server/next-font-manifest.js +1 -0
  379. package/.next/standalone/.next/server/next-font-manifest.json +31 -0
  380. package/.next/standalone/.next/server/pages/404.html +1 -0
  381. package/.next/standalone/.next/server/pages/500.html +2 -0
  382. package/.next/standalone/.next/server/pages-manifest.json +4 -0
  383. package/.next/standalone/.next/server/server-reference-manifest.js +1 -0
  384. package/.next/standalone/.next/server/server-reference-manifest.json +5 -0
  385. package/.next/standalone/.next/static/R01Vc6rRTS_XwAg0Y8ERm/_buildManifest.js +11 -0
  386. package/.next/standalone/.next/static/R01Vc6rRTS_XwAg0Y8ERm/_clientMiddlewareManifest.json +6 -0
  387. package/.next/standalone/.next/static/R01Vc6rRTS_XwAg0Y8ERm/_ssgManifest.js +1 -0
  388. package/.next/standalone/.next/static/chunks/1c362778d42e76b0.js +1 -0
  389. package/.next/standalone/.next/static/chunks/2b48886a383c2e37.js +1 -0
  390. package/.next/standalone/.next/static/chunks/3c2b51fd3ab2ac34.css +3 -0
  391. package/.next/standalone/.next/static/chunks/3fef23e63934711e.js +1 -0
  392. package/.next/standalone/.next/static/chunks/5781c606560d6f13.js +1 -0
  393. package/.next/standalone/.next/static/chunks/5a1105a61e9390f8.js +1 -0
  394. package/.next/standalone/.next/static/chunks/6468938847443ae8.js +1 -0
  395. package/.next/standalone/.next/static/chunks/76c064224d953678.js +4 -0
  396. package/.next/standalone/.next/static/chunks/77868ed664ba62d2.js +1 -0
  397. package/.next/standalone/.next/static/chunks/7de9141b1af425c3.js +1 -0
  398. package/.next/standalone/.next/static/chunks/868f09ea8b0a7649.js +1 -0
  399. package/.next/standalone/.next/static/chunks/97d384ea34b6283a.js +1 -0
  400. package/.next/standalone/.next/static/chunks/a6dad97d9634a72d.js +1 -0
  401. package/.next/standalone/.next/static/chunks/a6dad97d9634a72d.js.map +1 -0
  402. package/.next/standalone/.next/static/chunks/afd967a636289a73.js +1 -0
  403. package/.next/standalone/.next/static/chunks/bffbc071b1075ac3.js +1 -0
  404. package/.next/standalone/.next/static/chunks/d11263c7e8894d27.js +1 -0
  405. package/.next/standalone/.next/static/chunks/f1f489dad7e35d90.js +2 -0
  406. package/.next/standalone/.next/static/chunks/turbopack-1da073e19f58dee0.js +4 -0
  407. package/.next/standalone/.next/static/media/4fa387ec64143e14-s.c1fdd6c2.woff2 +0 -0
  408. package/.next/standalone/.next/static/media/7178b3e590c64307-s.b97b3418.woff2 +0 -0
  409. package/.next/standalone/.next/static/media/797e433ab948586e-s.p.dbea232f.woff2 +0 -0
  410. package/.next/standalone/.next/static/media/8a480f0b521d4e75-s.8e0177b5.woff2 +0 -0
  411. package/.next/standalone/.next/static/media/bbc41e54d2fcbd21-s.799d8ef8.woff2 +0 -0
  412. package/.next/standalone/.next/static/media/caa3a2e1cccd8315-s.p.853070df.woff2 +0 -0
  413. package/.next/standalone/.next/static/media/icon.4cc5e0bd.png +0 -0
  414. package/.next/standalone/CHANGELOG.md +182 -0
  415. package/.next/standalone/CONTRIBUTING.md +46 -0
  416. package/.next/standalone/LICENSE +21 -0
  417. package/.next/standalone/README.md +54 -0
  418. package/.next/standalone/SECURITY.md +80 -0
  419. package/.next/standalone/bin/castle.js +193 -0
  420. package/.next/standalone/castle_secrets.py +29 -0
  421. package/.next/standalone/drizzle.config.ts +7 -0
  422. package/.next/standalone/index.js +1 -0
  423. package/.next/standalone/install.sh +776 -0
  424. package/.next/standalone/next.config.ts +9 -0
  425. package/.next/standalone/package-lock.json +8115 -0
  426. package/.next/standalone/package.json +105 -0
  427. package/.next/standalone/postcss.config.mjs +7 -0
  428. package/.next/standalone/server.js +44 -0
  429. package/.next/standalone/src/app/api/avatars/[id]/route.ts +172 -0
  430. package/.next/standalone/src/app/api/openclaw/agents/[id]/avatar/route.ts +216 -0
  431. package/.next/standalone/src/app/api/openclaw/agents/route.ts +149 -0
  432. package/.next/standalone/src/app/api/openclaw/agents/status/route.ts +55 -0
  433. package/.next/standalone/src/app/api/openclaw/chat/attachments/route.ts +230 -0
  434. package/.next/standalone/src/app/api/openclaw/chat/channels/route.ts +217 -0
  435. package/.next/standalone/src/app/api/openclaw/chat/route.ts +283 -0
  436. package/.next/standalone/src/app/api/openclaw/chat/search/route.ts +150 -0
  437. package/.next/standalone/src/app/api/openclaw/chat/storage/route.ts +75 -0
  438. package/.next/standalone/src/app/api/openclaw/config/route.ts +137 -0
  439. package/.next/standalone/src/app/api/openclaw/events/route.ts +140 -0
  440. package/.next/standalone/src/app/api/openclaw/logs/route.ts +74 -0
  441. package/.next/standalone/src/app/api/openclaw/ping/route.ts +73 -0
  442. package/.next/standalone/src/app/api/openclaw/restart/route.ts +73 -0
  443. package/.next/standalone/src/app/api/openclaw/session/context/route.ts +163 -0
  444. package/.next/standalone/src/app/api/openclaw/session/status/route.ts +210 -0
  445. package/.next/standalone/src/app/api/openclaw/sessions/route.ts +64 -0
  446. package/.next/standalone/src/app/api/settings/avatar/route.ts +190 -0
  447. package/.next/standalone/src/app/api/settings/route.ts +88 -0
  448. package/.next/standalone/src/app/chat/[channelId]/error-boundary.tsx +64 -0
  449. package/.next/standalone/src/app/chat/[channelId]/page.tsx +385 -0
  450. package/.next/standalone/src/app/chat/layout.tsx +96 -0
  451. package/.next/standalone/src/app/chat/page.tsx +52 -0
  452. package/.next/standalone/src/app/globals.css +383 -0
  453. package/.next/standalone/src/app/icon.png +0 -0
  454. package/.next/standalone/src/app/layout.tsx +48 -0
  455. package/.next/standalone/src/app/page.tsx +390 -0
  456. package/.next/standalone/src/app/settings/page.tsx +300 -0
  457. package/.next/standalone/src/app/ui-kit/page.tsx +684 -0
  458. package/.next/standalone/src/cli/onboarding.ts +810 -0
  459. package/.next/standalone/src/components/chat/agent-mention-popup.tsx +89 -0
  460. package/.next/standalone/src/components/chat/archived-channels.tsx +190 -0
  461. package/.next/standalone/src/components/chat/channel-list.tsx +140 -0
  462. package/.next/standalone/src/components/chat/chat-input.tsx +328 -0
  463. package/.next/standalone/src/components/chat/create-channel-dialog.tsx +171 -0
  464. package/.next/standalone/src/components/chat/markdown-content.tsx +205 -0
  465. package/.next/standalone/src/components/chat/message-bubble.tsx +168 -0
  466. package/.next/standalone/src/components/chat/message-list.tsx +666 -0
  467. package/.next/standalone/src/components/chat/message-queue.tsx +68 -0
  468. package/.next/standalone/src/components/chat/session-divider.tsx +61 -0
  469. package/.next/standalone/src/components/chat/session-stats-panel.tsx +444 -0
  470. package/.next/standalone/src/components/chat/storage-indicator.tsx +76 -0
  471. package/.next/standalone/src/components/dashboard/agent-status.tsx +107 -0
  472. package/.next/standalone/src/components/dashboard/glass-card.tsx +28 -0
  473. package/.next/standalone/src/components/dashboard/goal-widget.tsx +174 -0
  474. package/.next/standalone/src/components/dashboard/greeting-widget.tsx +78 -0
  475. package/.next/standalone/src/components/dashboard/index.ts +7 -0
  476. package/.next/standalone/src/components/dashboard/stat-widget.tsx +61 -0
  477. package/.next/standalone/src/components/dashboard/stock-widget.tsx +164 -0
  478. package/.next/standalone/src/components/dashboard/weather-widget.tsx +68 -0
  479. package/.next/standalone/src/components/icons/castle-icon.tsx +21 -0
  480. package/.next/standalone/src/components/kanban/index.ts +3 -0
  481. package/.next/standalone/src/components/kanban/kanban-board.tsx +391 -0
  482. package/.next/standalone/src/components/kanban/kanban-card.tsx +137 -0
  483. package/.next/standalone/src/components/kanban/kanban-column.tsx +98 -0
  484. package/.next/standalone/src/components/layout/index.ts +4 -0
  485. package/.next/standalone/src/components/layout/page-header.tsx +20 -0
  486. package/.next/standalone/src/components/layout/sidebar.tsx +209 -0
  487. package/.next/standalone/src/components/layout/theme-toggle.tsx +59 -0
  488. package/.next/standalone/src/components/layout/user-menu.tsx +97 -0
  489. package/.next/standalone/src/components/providers/presence-provider.tsx +8 -0
  490. package/.next/standalone/src/components/providers/search-provider.tsx +110 -0
  491. package/.next/standalone/src/components/search/search-dialog.tsx +269 -0
  492. package/.next/standalone/src/components/ui/alert.tsx +72 -0
  493. package/.next/standalone/src/components/ui/avatar.tsx +89 -0
  494. package/.next/standalone/src/components/ui/badge.tsx +39 -0
  495. package/.next/standalone/src/components/ui/button.tsx +43 -0
  496. package/.next/standalone/src/components/ui/card.tsx +107 -0
  497. package/.next/standalone/src/components/ui/checkbox.tsx +56 -0
  498. package/.next/standalone/src/components/ui/clock.tsx +171 -0
  499. package/.next/standalone/src/components/ui/dialog.tsx +111 -0
  500. package/.next/standalone/src/components/ui/index.ts +34 -0
  501. package/.next/standalone/src/components/ui/input.tsx +112 -0
  502. package/.next/standalone/src/components/ui/option-card.tsx +151 -0
  503. package/.next/standalone/src/components/ui/progress.tsx +103 -0
  504. package/.next/standalone/src/components/ui/radio.tsx +109 -0
  505. package/.next/standalone/src/components/ui/select.tsx +46 -0
  506. package/.next/standalone/src/components/ui/slider.tsx +62 -0
  507. package/.next/standalone/src/components/ui/tabs.tsx +132 -0
  508. package/.next/standalone/src/components/ui/toggle-group.tsx +85 -0
  509. package/.next/standalone/src/components/ui/toggle.tsx +78 -0
  510. package/.next/standalone/src/components/ui/tooltip.tsx +162 -0
  511. package/.next/standalone/src/components/ui/twemoji-text.tsx +37 -0
  512. package/.next/standalone/src/components/ui/uptime.tsx +106 -0
  513. package/.next/standalone/src/lib/api-security.ts +188 -0
  514. package/.next/standalone/src/lib/config.ts +227 -0
  515. package/.next/standalone/src/lib/date-utils.ts +79 -0
  516. package/.next/standalone/src/lib/db/index.ts +652 -0
  517. package/.next/standalone/src/lib/db/queries.ts +1144 -0
  518. package/.next/standalone/src/lib/db/schema.ts +164 -0
  519. package/.next/standalone/src/lib/device-identity.ts +303 -0
  520. package/.next/standalone/src/lib/gateway-connection.ts +649 -0
  521. package/.next/standalone/src/lib/hooks/use-agent-status.ts +251 -0
  522. package/.next/standalone/src/lib/hooks/use-chat.ts +753 -0
  523. package/.next/standalone/src/lib/hooks/use-compaction-events.ts +132 -0
  524. package/.next/standalone/src/lib/hooks/use-context-boundary.ts +82 -0
  525. package/.next/standalone/src/lib/hooks/use-openclaw.ts +185 -0
  526. package/.next/standalone/src/lib/hooks/use-search.ts +114 -0
  527. package/.next/standalone/src/lib/hooks/use-session-stats.ts +60 -0
  528. package/.next/standalone/src/lib/hooks/use-user-settings.ts +46 -0
  529. package/.next/standalone/src/lib/sse-singleton.ts +184 -0
  530. package/.next/standalone/src/lib/types/chat.ts +202 -0
  531. package/.next/standalone/src/lib/types/search.ts +60 -0
  532. package/.next/standalone/src/lib/utils.ts +6 -0
  533. package/.next/standalone/src/middleware.ts +52 -0
  534. package/.next/standalone/tsconfig.json +34 -0
  535. package/.next/standalone/vitest.config.ts +14 -0
  536. package/.next/standalone/vitest.stress.config.ts +14 -0
  537. package/.next/standalone/zizmor.yml +17 -0
  538. package/.next/static/R01Vc6rRTS_XwAg0Y8ERm/_buildManifest.js +11 -0
  539. package/.next/static/R01Vc6rRTS_XwAg0Y8ERm/_clientMiddlewareManifest.json +6 -0
  540. package/.next/static/R01Vc6rRTS_XwAg0Y8ERm/_ssgManifest.js +1 -0
  541. package/.next/static/chunks/1c362778d42e76b0.js +1 -0
  542. package/.next/static/chunks/2b48886a383c2e37.js +1 -0
  543. package/.next/static/chunks/3c2b51fd3ab2ac34.css +3 -0
  544. package/.next/static/chunks/3fef23e63934711e.js +1 -0
  545. package/.next/static/chunks/5781c606560d6f13.js +1 -0
  546. package/.next/static/chunks/5a1105a61e9390f8.js +1 -0
  547. package/.next/static/chunks/6468938847443ae8.js +1 -0
  548. package/.next/static/chunks/76c064224d953678.js +4 -0
  549. package/.next/static/chunks/77868ed664ba62d2.js +1 -0
  550. package/.next/static/chunks/7de9141b1af425c3.js +1 -0
  551. package/.next/static/chunks/868f09ea8b0a7649.js +1 -0
  552. package/.next/static/chunks/97d384ea34b6283a.js +1 -0
  553. package/.next/static/chunks/a6dad97d9634a72d.js +1 -0
  554. package/.next/static/chunks/a6dad97d9634a72d.js.map +1 -0
  555. package/.next/static/chunks/afd967a636289a73.js +1 -0
  556. package/.next/static/chunks/bffbc071b1075ac3.js +1 -0
  557. package/.next/static/chunks/d11263c7e8894d27.js +1 -0
  558. package/.next/static/chunks/f1f489dad7e35d90.js +2 -0
  559. package/.next/static/chunks/turbopack-1da073e19f58dee0.js +4 -0
  560. package/.next/static/media/4fa387ec64143e14-s.c1fdd6c2.woff2 +0 -0
  561. package/.next/static/media/7178b3e590c64307-s.b97b3418.woff2 +0 -0
  562. package/.next/static/media/797e433ab948586e-s.p.dbea232f.woff2 +0 -0
  563. package/.next/static/media/8a480f0b521d4e75-s.8e0177b5.woff2 +0 -0
  564. package/.next/static/media/bbc41e54d2fcbd21-s.799d8ef8.woff2 +0 -0
  565. package/.next/static/media/caa3a2e1cccd8315-s.p.853070df.woff2 +0 -0
  566. package/.next/static/media/icon.4cc5e0bd.png +0 -0
  567. package/LICENSE +1 -1
  568. package/bin/castle.js +17 -0
  569. package/next.config.ts +1 -0
  570. package/package.json +6 -1
  571. package/src/cli/onboarding.ts +102 -28
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,18566,(e,t,r)=>{t.exports=e.r(76562)},75254,e=>{"use strict";var t=e.i(71645);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),s=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var n={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let a=(0,t.forwardRef)(({color:e="currentColor",size:s=24,strokeWidth:a=2,absoluteStrokeWidth:o,className:l="",children:c,iconNode:i,...d},u)=>(0,t.createElement)("svg",{ref:u,...n,width:s,height:s,stroke:e,strokeWidth:o?24*Number(a)/Number(s):a,className:r("lucide",l),...!c&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(d)&&{"aria-hidden":"true"},...d},[...i.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(c)?c:[c]])),o=(e,n)=>{let o=(0,t.forwardRef)(({className:o,...l},c)=>(0,t.createElement)(a,{ref:c,iconNode:n,className:r(`lucide-${s(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,o),...l}));return o.displayName=s(e),o};e.s(["default",()=>o],75254)},63178,e=>{"use strict";var t=e.i(71645),r=(e,t,r,s,n,a,o,l)=>{let c=document.documentElement,i=["light","dark"];function d(t){var r;(Array.isArray(e)?e:[e]).forEach(e=>{let r="class"===e,s=r&&a?n.map(e=>a[e]||e):n;r?(c.classList.remove(...s),c.classList.add(a&&a[t]?a[t]:t)):c.setAttribute(e,t)}),r=t,l&&i.includes(r)&&(c.style.colorScheme=r)}if(s)d(s);else try{let e=localStorage.getItem(t)||r,s=o&&"system"===e?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":e;d(s)}catch(e){}},s=["light","dark"],n="(prefers-color-scheme: dark)",a="u"<typeof window,o=t.createContext(void 0),l={setTheme:e=>{},themes:[]},c=()=>{var e;return null!=(e=t.useContext(o))?e:l},i=e=>t.useContext(o)?t.createElement(t.Fragment,null,e.children):t.createElement(u,{...e}),d=["light","dark"],u=({forcedTheme:e,disableTransitionOnChange:r=!1,enableSystem:a=!0,enableColorScheme:l=!0,storageKey:c="theme",themes:i=d,defaultTheme:u=a?"system":"light",attribute:p="data-theme",value:g,children:b,nonce:y,scriptProps:v})=>{let[j,w]=t.useState(()=>h(c,u)),[k,N]=t.useState(()=>"system"===j?x():j),C=g?Object.values(g):i,S=t.useCallback(e=>{let t=e;if(!t)return;"system"===e&&a&&(t=x());let n=g?g[t]:t,o=r?f(y):null,c=document.documentElement,i=e=>{"class"===e?(c.classList.remove(...C),n&&c.classList.add(n)):e.startsWith("data-")&&(n?c.setAttribute(e,n):c.removeAttribute(e))};if(Array.isArray(p)?p.forEach(i):i(p),l){let e=s.includes(u)?u:null,r=s.includes(t)?t:e;c.style.colorScheme=r}null==o||o()},[y]),E=t.useCallback(e=>{let t="function"==typeof e?e(j):e;w(t);try{localStorage.setItem(c,t)}catch(e){}},[j]),T=t.useCallback(t=>{N(x(t)),"system"===j&&a&&!e&&S("system")},[j,e]);t.useEffect(()=>{let e=window.matchMedia(n);return e.addListener(T),T(e),()=>e.removeListener(T)},[T]),t.useEffect(()=>{let e=e=>{e.key===c&&(e.newValue?w(e.newValue):E(u))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)},[E]),t.useEffect(()=>{S(null!=e?e:j)},[e,j]);let A=t.useMemo(()=>({theme:j,setTheme:E,forcedTheme:e,resolvedTheme:"system"===j?k:j,themes:a?[...i,"system"]:i,systemTheme:a?k:void 0}),[j,E,e,k,a,i]);return t.createElement(o.Provider,{value:A},t.createElement(m,{forcedTheme:e,storageKey:c,attribute:p,enableSystem:a,enableColorScheme:l,defaultTheme:u,value:g,themes:i,nonce:y,scriptProps:v}),b)},m=t.memo(({forcedTheme:e,storageKey:s,attribute:n,enableSystem:a,enableColorScheme:o,defaultTheme:l,value:c,themes:i,nonce:d,scriptProps:u})=>{let m=JSON.stringify([n,s,l,e,i,c,a,o]).slice(1,-1);return t.createElement("script",{...u,suppressHydrationWarning:!0,nonce:"u"<typeof window?d:"",dangerouslySetInnerHTML:{__html:`(${r.toString()})(${m})`}})}),h=(e,t)=>{let r;if(!a){try{r=localStorage.getItem(e)||void 0}catch(e){}return r||t}},f=e=>{let t=document.createElement("style");return e&&t.setAttribute("nonce",e),t.appendChild(document.createTextNode("*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(t),()=>{window.getComputedStyle(document.body),setTimeout(()=>{document.head.removeChild(t)},1)}},x=e=>(e||(e=window.matchMedia(n)),e.matches?"dark":"light");e.s(["ThemeProvider",()=>i,"useTheme",()=>c])},3116,e=>{"use strict";let t=(0,e.i(75254).default)("clock",[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);e.s(["Clock",()=>t],3116)},97764,e=>{"use strict";function t(e){return new Date(e).toLocaleDateString("en-GB",{day:"numeric",month:"long",year:"numeric"})}function r(e){let t=new Date(e),r=t.toLocaleDateString("en-GB",{day:"numeric",month:"long",year:"numeric"}),s=t.toLocaleTimeString("en-GB",{hour:"numeric",minute:"2-digit",hour12:!0});return`${r} at ${s}`}function s(e){return new Date(e).toLocaleTimeString("en-GB",{hour:"numeric",minute:"2-digit",hour12:!0})}function n(e){let t=Math.floor((Date.now()-e)/1e3);if(t<60)return"just now";let r=Math.floor(t/60);if(r<60)return`${r}m ago`;let s=Math.floor(r/60);if(s<24)return`${s}h ago`;let n=Math.floor(s/24);if(n<7)return`${n}d ago`;let a=Math.floor(n/7);if(a<5)return`${a}w ago`;let o=Math.floor(n/30);if(o<12)return`${o}mo ago`;let l=Math.floor(n/365);return`${l}y ago`}e.s(["formatDate",()=>t,"formatDateTime",()=>r,"formatTime",()=>s,"formatTimeAgo",()=>n])},40871,e=>{"use strict";var t=e.i(18050),r=e.i(71645),s=e.i(18566);let n=(0,e.i(75254).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);var a=e.i(3116),o=e.i(75157),l=e.i(97764);function c({result:e}){let r=(0,l.formatDateTime)(e.timestamp);return(0,t.jsx)("div",{className:"flex items-start gap-3 min-w-0",children:(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 text-xs text-foreground-secondary mb-0.5",children:[(0,t.jsx)("span",{className:"px-1.5 py-0.5 rounded bg-accent/10 text-accent font-medium text-[11px]",children:e.title}),e.archived&&(0,t.jsx)("span",{className:"text-[11px] text-foreground-secondary/50 italic",children:"archived"}),(0,t.jsx)("span",{className:"font-medium",children:e.subtitle}),(0,t.jsx)("span",{className:"text-foreground-secondary/60",children:r})]}),(0,t.jsx)("p",{className:"text-sm text-foreground truncate",children:e.snippet})]})})}let i={message:e=>(0,t.jsx)(c,{result:e}),task:null,note:null,project:null};function d({open:e,onClose:l}){let c=(0,s.useRouter)(),d=(0,r.useRef)(null),u=(0,r.useRef)(null),{query:m,setQuery:h,results:f,isSearching:x,recentSearches:p,clearRecentSearches:g}=function(){let[e,t]=(0,r.useState)(""),[s,n]=(0,r.useState)([]),[a,o]=(0,r.useState)(!1),[l,c]=(0,r.useState)([]),i=(0,r.useRef)(null),d=(0,r.useRef)(null),u=(0,r.useRef)(!1);(0,r.useEffect)(()=>{u.current||(u.current=!0,fetch("/api/openclaw/chat/search?recent=1").then(e=>e.ok?e.json():{recent:[]}).then(e=>c(e.recent??[])).catch(()=>{}))},[]);let m=(0,r.useCallback)(e=>{if(t(e),i.current&&clearTimeout(i.current),d.current&&d.current.abort(),!e.trim()){n([]),o(!1);return}o(!0),i.current=setTimeout(async()=>{let t=new AbortController;d.current=t;try{let r=await fetch(`/api/openclaw/chat/search?q=${encodeURIComponent(e.trim())}`,{signal:t.signal});if(r.ok){let t=(await r.json()).results??[];if(n(t),t.length>0){let t=e.trim();fetch("/api/openclaw/chat/search",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({query:t})}).then(()=>{c(e=>{let r=e.filter(e=>e!==t);return[t,...r].slice(0,15)})}).catch(()=>{})}}}catch(e){"AbortError"!==e.name&&(console.error("[useSearch] Search failed:",e.message),n([]))}finally{o(!1)}},300)},[]),h=(0,r.useCallback)(()=>{c([]),fetch("/api/openclaw/chat/search",{method:"DELETE"}).catch(()=>{})},[]);return(0,r.useEffect)(()=>()=>{i.current&&clearTimeout(i.current),d.current&&d.current.abort()},[]),{query:e,setQuery:m,results:s,isSearching:a,recentSearches:l,clearRecentSearches:h}}(),[b,y]=(0,r.useState)(-1);(0,r.useEffect)(()=>{e&&(requestAnimationFrame(()=>d.current?.focus()),y(-1))},[e]),(0,r.useEffect)(()=>{y(-1)},[f]);let v=!m.trim()&&p.length>0,j=v?p.length:f.length;(0,r.useEffect)(()=>{if(b<0||!u.current)return;let e=u.current.querySelectorAll("[data-search-item]");e[b]?.scrollIntoView({block:"nearest"})},[b]);let w=e=>{c.push(e.href),setTimeout(l,0)};return e?(0,t.jsxs)("div",{className:"fixed inset-0 z-50 flex items-start justify-center pt-[15vh]",onClick:l,children:[(0,t.jsx)("div",{className:"absolute inset-0 bg-black/50 backdrop-blur-sm"}),(0,t.jsxs)("div",{className:"relative w-full max-w-[560px] rounded-[var(--radius-md)] bg-surface border border-border shadow-2xl overflow-hidden",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"flex items-center gap-3 px-4 py-3 border-b border-border",children:[(0,t.jsx)(n,{className:"h-5 w-5 text-foreground-secondary shrink-0"}),(0,t.jsx)("input",{ref:d,type:"text",value:m,onChange:e=>h(e.target.value),onKeyDown:e=>{if("Escape"===e.key){e.preventDefault(),l();return}if("ArrowDown"===e.key){e.preventDefault(),y(e=>e<j-1?e+1:0);return}if("ArrowUp"===e.key){e.preventDefault(),y(e=>e>0?e-1:j-1);return}if("Enter"===e.key&&b>=0){e.preventDefault(),v?h(p[b]):f[b]&&w(f[b]);return}},placeholder:"Search across all channels...",className:"flex-1 bg-transparent text-[15px] focus:outline-none placeholder:text-foreground-secondary/50"}),(0,t.jsx)("kbd",{className:"hidden sm:inline-flex items-center gap-0.5 px-1.5 py-0.5 text-[11px] font-medium text-foreground-secondary/60 bg-surface-hover rounded border border-border/50",children:"ESC"})]}),(0,t.jsxs)("div",{ref:u,className:"max-h-[400px] overflow-y-auto",children:[v&&(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 pt-3 pb-1.5",children:[(0,t.jsx)("span",{className:"text-xs font-medium text-foreground-secondary/60 uppercase tracking-wider",children:"Recent searches"}),(0,t.jsx)("button",{onClick:g,className:"text-xs text-foreground-secondary/60 hover:text-foreground-secondary transition-colors cursor-pointer",children:"Clear"})]}),p.map((e,r)=>(0,t.jsxs)("button",{"data-search-item":!0,onClick:()=>h(e),className:(0,o.cn)("flex items-center gap-3 w-full px-4 py-2.5 text-sm text-left transition-colors cursor-pointer",b===r?"bg-accent/10 text-accent":"text-foreground hover:bg-surface-hover"),children:[(0,t.jsx)(a.Clock,{className:"h-4 w-4 text-foreground-secondary/60 shrink-0"}),(0,t.jsx)("span",{className:"truncate",children:e})]},e))]}),!m.trim()&&0===p.length&&(0,t.jsx)("div",{className:"px-4 py-8 text-center text-sm text-foreground-secondary/60",children:"Search across all channels"}),m.trim()&&x&&0===f.length&&(0,t.jsx)("div",{className:"px-2",children:[1,2,3,4,5].map(e=>(0,t.jsxs)("div",{className:"px-2 py-3 border-b border-border/20 last:border-b-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-2 mb-1.5",children:[(0,t.jsx)("div",{className:"skeleton h-4 w-16 rounded"}),(0,t.jsx)("div",{className:"skeleton h-3 w-12 rounded"}),(0,t.jsx)("div",{className:"skeleton h-3 w-10 rounded"})]}),(0,t.jsx)("div",{className:"skeleton h-3.5 rounded",style:{width:`${55+8*e}%`}})]},e))}),m.trim()&&!x&&0===f.length&&(0,t.jsx)("div",{className:"px-4 py-8 text-center text-sm text-foreground-secondary",children:"No results found"}),m.trim()&&f.map((e,r)=>{let s=i[e.type];return s?(0,t.jsx)("button",{"data-search-item":!0,onClick:()=>w(e),className:(0,o.cn)("w-full px-4 py-3 text-left transition-colors cursor-pointer border-b border-border/20 last:border-b-0",b===r?"bg-accent/10":"hover:bg-surface-hover"),children:s(e)},e.id):null})]}),m.trim()&&f.length>0&&(0,t.jsxs)("div",{className:"px-4 py-2 border-t border-border/50 text-[11px] text-foreground-secondary/50 flex items-center gap-3",children:[(0,t.jsxs)("span",{children:[(0,t.jsx)("kbd",{className:"px-1 py-0.5 rounded bg-surface-hover border border-border/50 text-[10px]",children:"↑↓"})," Navigate"]}),(0,t.jsxs)("span",{children:[(0,t.jsx)("kbd",{className:"px-1 py-0.5 rounded bg-surface-hover border border-border/50 text-[10px]",children:"↵"})," Open"]}),(0,t.jsxs)("span",{children:[(0,t.jsx)("kbd",{className:"px-1 py-0.5 rounded bg-surface-hover border border-border/50 text-[10px]",children:"esc"})," Close"]})]})]})]}):null}let u=(0,r.createContext)({isSearchOpen:!1,openSearch:()=>{},closeSearch:()=>{}});function m(){return(0,r.useContext)(u)}function h({className:e}){let{openSearch:s}=m(),[a,o]=(0,r.useState)(!0);return(0,r.useEffect)(()=>{o(navigator.platform?.toUpperCase().includes("MAC")??!0)},[]),(0,t.jsxs)("button",{onClick:s,className:e??"flex items-center gap-3 pl-3 pr-2.5 h-[38px] w-[320px] rounded-[var(--radius-sm)] bg-surface border border-border hover:border-border-hover text-foreground-secondary hover:text-foreground transition-colors cursor-pointer shadow-sm",children:[(0,t.jsx)(n,{className:"h-4 w-4 shrink-0",strokeWidth:2.5}),(0,t.jsx)("span",{className:"text-sm text-foreground-secondary/50 flex-1 text-left",children:"Search Castle..."}),(0,t.jsxs)("kbd",{className:"flex items-center justify-center h-[22px] px-1.5 gap-1 rounded-[4px] bg-surface-hover border border-border font-medium text-foreground-secondary",children:[a?(0,t.jsx)("span",{className:"text-[15px]",children:"⌘"}):(0,t.jsx)("span",{className:"text-[11px]",children:"Ctrl"}),(0,t.jsx)("span",{className:"text-[11px]",children:"K"})]})]})}function f({children:e}){let[a,o]=(0,r.useState)(!1),[l,c]=(0,r.useState)(!0),i=(0,s.usePathname)();(0,r.useEffect)(()=>{c(navigator.platform?.toUpperCase().includes("MAC")??!0)},[]);let m=!["/settings","/ui-kit","/"].includes(i)&&!i.startsWith("/chat"),h=(0,r.useCallback)(()=>o(!0),[]),f=(0,r.useCallback)(()=>o(!1),[]);return(0,r.useEffect)(()=>{let e=e=>{(e.metaKey||e.ctrlKey)&&"k"===e.key&&(e.preventDefault(),o(e=>!e))};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[]),(0,t.jsxs)(u.Provider,{value:{isSearchOpen:a,openSearch:h,closeSearch:f},children:[e,m&&(0,t.jsxs)("button",{onClick:h,className:"fixed top-[28px] right-[28px] z-40 flex items-center gap-3 pl-3 pr-2.5 h-[38px] w-[320px] rounded-[var(--radius-sm)] bg-surface border border-border hover:border-border-hover text-foreground-secondary hover:text-foreground transition-colors cursor-pointer shadow-sm",children:[(0,t.jsx)(n,{className:"h-4 w-4 shrink-0",strokeWidth:2.5}),(0,t.jsx)("span",{className:"text-sm text-foreground-secondary/50 flex-1 text-left",children:"Search Castle..."}),(0,t.jsxs)("kbd",{className:"flex items-center justify-center h-[22px] px-1.5 gap-1 rounded-[4px] bg-surface-hover border border-border font-medium text-foreground-secondary",children:[l?(0,t.jsx)("span",{className:"text-[15px]",children:"⌘"}):(0,t.jsx)("span",{className:"text-[11px]",children:"Ctrl"}),(0,t.jsx)("span",{className:"text-[11px]",children:"K"})]})]}),(0,t.jsx)(d,{open:a,onClose:f})]})}e.s(["SearchProvider",()=>f,"SearchTrigger",()=>h,"useSearchContext",()=>m],40871)},49410,e=>{"use strict";var t=e.i(18050),r=e.i(57401);function s({children:e}){return(0,r.useUserPresence)(),(0,t.jsx)(t.Fragment,{children:e})}e.s(["PresenceProvider",()=>s])}]);
@@ -0,0 +1,2 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,64893,(e,t,r)=>{"use strict";var n=e.r(74080),a={stream:!0},l=Object.prototype.hasOwnProperty;function u(t){var r=e.r(t);return"function"!=typeof r.then||"fulfilled"===r.status?null:(r.then(function(e){r.status="fulfilled",r.value=e},function(e){r.status="rejected",r.reason=e}),r)}var o=new WeakSet,i=new WeakSet;function s(){}function c(t){for(var r=t[1],n=[],a=0;a<r.length;a++){var l=e.L(r[a]);if(i.has(l)||n.push(l),!o.has(l)){var c=i.add.bind(i,l);l.then(c,s),o.add(l)}}return 4===t.length?0===n.length?u(t[0]):Promise.all(n).then(function(){return u(t[0])}):0<n.length?Promise.all(n):null}function f(t){var r=e.r(t[0]);if(4===t.length&&"function"==typeof r.then)if("fulfilled"===r.status)r=r.value;else throw r.reason;return"*"===t[2]?r:""===t[2]?r.__esModule?r.default:r:l.call(r,t[2])?r[t[2]]:void 0}var d=n.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,h=Symbol.for("react.transitional.element"),p=Symbol.for("react.lazy"),y=Symbol.iterator,g=Symbol.asyncIterator,v=Array.isArray,_=Object.getPrototypeOf,b=Object.prototype,R=new WeakMap;function m(e,t,r){R.has(e)||R.set(e,{id:t,originalBind:e.bind,bound:r})}function P(e,t,r){this.status=e,this.value=t,this.reason=r}function E(e){switch(e.status){case"resolved_model":F(e);break;case"resolved_module":I(e)}switch(e.status){case"fulfilled":return e.value;case"pending":case"blocked":case"halted":throw e;default:throw e.reason}}function S(e,t,r,n){for(var a=0;a<t.length;a++){var l=t[a];"function"==typeof l?l(r):x(e,l,r,n)}}function O(e,t,r){for(var n=0;n<t.length;n++){var a=t[n];"function"==typeof a?a(r):H(e,a.handler,r)}}function T(e,t){var r=t.handler.chunk;if(null===r)return null;if(r===e)return t.handler;if(null!==(t=r.value))for(r=0;r<t.length;r++){var n=t[r];if("function"!=typeof n&&null!==(n=T(e,n)))return n}return null}function j(e,t,r,n){switch(t.status){case"fulfilled":S(e,r,t.value,t);break;case"blocked":for(var a=0;a<r.length;a++){var l=r[a];if("function"!=typeof l){var u=T(t,l);if(null!==u)switch(x(e,l,u.value,t),r.splice(a,1),a--,null!==n&&-1!==(l=n.indexOf(l))&&n.splice(l,1),t.status){case"fulfilled":S(e,r,t.value,t);return;case"rejected":null!==n&&O(e,n,t.reason);return}}}case"pending":if(t.value)for(e=0;e<r.length;e++)t.value.push(r[e]);else t.value=r;if(t.reason){if(n)for(r=0;r<n.length;r++)t.reason.push(n[r])}else t.reason=n;break;case"rejected":n&&O(e,n,t.reason)}}function w(e,t,r){if("pending"!==t.status&&"blocked"!==t.status)t.reason.error(r);else{var n=t.reason;t.status="rejected",t.reason=r,null!==n&&O(e,n,r)}}function M(e,t,r){return new P("resolved_model",(r?'{"done":true,"value":':'{"done":false,"value":')+t+"}",e)}function A(e,t,r,n){N(e,t,(n?'{"done":true,"value":':'{"done":false,"value":')+r+"}")}function N(e,t,r){if("pending"!==t.status)t.reason.enqueueModel(r);else{var n=t.value,a=t.reason;t.status="resolved_model",t.value=r,t.reason=e,null!==n&&(F(t),j(e,t,n,a))}}function U(e,t,r){if("pending"===t.status||"blocked"===t.status){var n=t.value,a=t.reason;t.status="resolved_module",t.value=r,t.reason=null,null!==n&&(I(t),j(e,t,n,a))}}P.prototype=Object.create(Promise.prototype),P.prototype.then=function(e,t){switch(this.status){case"resolved_model":F(this);break;case"resolved_module":I(this)}switch(this.status){case"fulfilled":"function"==typeof e&&e(this.value);break;case"pending":case"blocked":"function"==typeof e&&(null===this.value&&(this.value=[]),this.value.push(e)),"function"==typeof t&&(null===this.reason&&(this.reason=[]),this.reason.push(t));break;case"halted":break;default:"function"==typeof t&&t(this.reason)}};var C=null;function F(e){var t=C;C=null;var r=e.value,n=e.reason;e.status="blocked",e.value=null,e.reason=null;try{var a=JSON.parse(r,n._fromJSON),l=e.value;if(null!==l)for(e.value=null,e.reason=null,r=0;r<l.length;r++){var u=l[r];"function"==typeof u?u(a):x(n,u,a,e)}if(null!==C){if(C.errored)throw C.reason;if(0<C.deps){C.value=a,C.chunk=e;return}}e.status="fulfilled",e.value=a}catch(t){e.status="rejected",e.reason=t}finally{C=t}}function I(e){try{var t=f(e.value);e.status="fulfilled",e.value=t}catch(t){e.status="rejected",e.reason=t}}function k(e,t){e._closed=!0,e._closedReason=t,e._chunks.forEach(function(r){"pending"===r.status?w(e,r,t):"fulfilled"===r.status&&null!==r.reason&&r.reason.error(t)})}function D(e){return{$$typeof:p,_payload:e,_init:E}}function L(e,t){var r=e._chunks,n=r.get(t);return n||(n=e._closed?new P("rejected",null,e._closedReason):new P("pending",null,null),r.set(t,n)),n}function x(e,t,r){var n=t.handler,a=t.parentObject,u=t.key,o=t.map,i=t.path;try{for(var s=1;s<i.length;s++){for(;"object"==typeof r&&null!==r&&r.$$typeof===p;){var c=r._payload;if(c===n.chunk)r=n.value;else{switch(c.status){case"resolved_model":F(c);break;case"resolved_module":I(c)}switch(c.status){case"fulfilled":r=c.value;continue;case"blocked":var f=T(c,t);if(null!==f){r=f.value;continue}case"pending":i.splice(0,s-1),null===c.value?c.value=[t]:c.value.push(t),null===c.reason?c.reason=[t]:c.reason.push(t);return;case"halted":return;default:H(e,t.handler,c.reason);return}}}var d=i[s];if("object"==typeof r&&null!==r&&l.call(r,d))r=r[d];else throw Error("Invalid reference.")}for(;"object"==typeof r&&null!==r&&r.$$typeof===p;){var y=r._payload;if(y===n.chunk)r=n.value;else{switch(y.status){case"resolved_model":F(y);break;case"resolved_module":I(y)}if("fulfilled"===y.status){r=y.value;continue}break}}var g=o(e,r,a,u);if("__proto__"!==u&&(a[u]=g),""===u&&null===n.value&&(n.value=g),a[0]===h&&"object"==typeof n.value&&null!==n.value&&n.value.$$typeof===h){var v=n.value;"3"===u&&(v.props=g)}}catch(r){H(e,t.handler,r);return}n.deps--,0===n.deps&&null!==(t=n.chunk)&&"blocked"===t.status&&(r=t.value,t.status="fulfilled",t.value=n.value,t.reason=n.reason,null!==r&&S(e,r,n.value,t))}function H(e,t,r){t.errored||(t.errored=!0,t.value=null,t.reason=r,null!==(t=t.chunk)&&"blocked"===t.status&&w(e,t,r))}function B(e,t,r,n,a,l){return C?(n=C,n.deps++):n=C={parent:null,chunk:null,value:null,reason:null,deps:1,errored:!1},t={handler:n,parentObject:t,key:r,map:a,path:l},null===e.value?e.value=[t]:e.value.push(t),null===e.reason?e.reason=[t]:e.reason.push(t),null}function $(e,t,r,n){if(!e._serverReferenceConfig)return function(e,t){function r(){var e=Array.prototype.slice.call(arguments);return a?"fulfilled"===a.status?t(n,a.value.concat(e)):Promise.resolve(a).then(function(r){return t(n,r.concat(e))}):t(n,e)}var n=e.id,a=e.bound;return m(r,n,a),r}(t,e._callServer);var a=function(e,t){var r="",n=e[t];if(n)r=n.name;else{var a=t.lastIndexOf("#");if(-1!==a&&(r=t.slice(a+1),n=e[t.slice(0,a)]),!n)throw Error('Could not find the module "'+t+'" in the React Server Manifest. This is probably a bug in the React Server Components bundler.')}return n.async?[n.id,n.chunks,r,1]:[n.id,n.chunks,r]}(e._serverReferenceConfig,t.id),l=c(a);if(l)t.bound&&(l=Promise.all([l,t.bound]));else{if(!t.bound)return m(l=f(a),t.id,t.bound),l;l=Promise.resolve(t.bound)}if(C){var u=C;u.deps++}else u=C={parent:null,chunk:null,value:null,reason:null,deps:1,errored:!1};return l.then(function(){var l=f(a);if(t.bound){var o=t.bound.value.slice(0);o.unshift(null),l=l.bind.apply(l,o)}m(l,t.id,t.bound),"__proto__"!==n&&(r[n]=l),""===n&&null===u.value&&(u.value=l),r[0]===h&&"object"==typeof u.value&&null!==u.value&&u.value.$$typeof===h&&(o=u.value,"3"===n)&&(o.props=l),u.deps--,0===u.deps&&null!==(l=u.chunk)&&"blocked"===l.status&&(o=l.value,l.status="fulfilled",l.value=u.value,l.reason=null,null!==o&&S(e,o,u.value,l))},function(t){if(!u.errored){u.errored=!0,u.value=null,u.reason=t;var r=u.chunk;null!==r&&"blocked"===r.status&&w(e,r,t)}}),null}function V(e,t,r,n,a){var l=parseInt((t=t.split(":"))[0],16);switch((l=L(e,l)).status){case"resolved_model":F(l);break;case"resolved_module":I(l)}switch(l.status){case"fulfilled":l=l.value;for(var u=1;u<t.length;u++){for(;"object"==typeof l&&null!==l&&l.$$typeof===p;){switch((l=l._payload).status){case"resolved_model":F(l);break;case"resolved_module":I(l)}switch(l.status){case"fulfilled":l=l.value;break;case"blocked":case"pending":return B(l,r,n,e,a,t.slice(u-1));case"halted":return C?(e=C,e.deps++):C={parent:null,chunk:null,value:null,reason:null,deps:1,errored:!1},null;default:return C?(C.errored=!0,C.value=null,C.reason=l.reason):C={parent:null,chunk:null,value:null,reason:l.reason,deps:0,errored:!0},null}}l=l[t[u]]}for(;"object"==typeof l&&null!==l&&l.$$typeof===p;){switch((t=l._payload).status){case"resolved_model":F(t);break;case"resolved_module":I(t)}if("fulfilled"===t.status){l=t.value;continue}break}return a(e,l,r,n);case"pending":case"blocked":return B(l,r,n,e,a,t);case"halted":return C?(e=C,e.deps++):C={parent:null,chunk:null,value:null,reason:null,deps:1,errored:!1},null;default:return C?(C.errored=!0,C.value=null,C.reason=l.reason):C={parent:null,chunk:null,value:null,reason:l.reason,deps:0,errored:!0},null}}function K(e,t){return new Map(t)}function q(e,t){return new Set(t)}function G(e,t){return new Blob(t.slice(1),{type:t[0]})}function W(e,t){e=new FormData;for(var r=0;r<t.length;r++)e.append(t[r][0],t[r][1]);return e}function z(e,t){return t[Symbol.iterator]()}function X(e,t){return t}function Y(){throw Error('Trying to call a function from "use server" but the callServer option was not implemented in your router runtime.')}function Q(e,t,r,n,a,l,u){var o,i=new Map;this._bundlerConfig=e,this._serverReferenceConfig=t,this._moduleLoading=r,this._callServer=void 0!==n?n:Y,this._encodeFormAction=a,this._nonce=l,this._chunks=i,this._stringDecoder=new TextDecoder,this._fromJSON=null,this._closed=!1,this._closedReason=null,this._tempRefs=u,this._fromJSON=(o=this,function(e,t){if("__proto__"!==e){if("string"==typeof t){var r=o,n=this,a=e,l=t;if("$"===l[0]){if("$"===l)return null!==C&&"0"===a&&(C={parent:C,chunk:null,value:null,reason:null,deps:0,errored:!1}),h;switch(l[1]){case"$":return l.slice(1);case"L":return D(r=L(r,n=parseInt(l.slice(2),16)));case"@":return L(r,n=parseInt(l.slice(2),16));case"S":return Symbol.for(l.slice(2));case"h":return V(r,l=l.slice(2),n,a,$);case"T":if(n="$"+l.slice(2),null==(r=r._tempRefs))throw Error("Missing a temporary reference set but the RSC response returned a temporary reference. Pass a temporaryReference option with the set that was used with the reply.");return r.get(n);case"Q":return V(r,l=l.slice(2),n,a,K);case"W":return V(r,l=l.slice(2),n,a,q);case"B":return V(r,l=l.slice(2),n,a,G);case"K":return V(r,l=l.slice(2),n,a,W);case"Z":return en();case"i":return V(r,l=l.slice(2),n,a,z);case"I":return 1/0;case"-":return"$-0"===l?-0:-1/0;case"N":return NaN;case"u":return;case"D":return new Date(Date.parse(l.slice(2)));case"n":return BigInt(l.slice(2));default:return V(r,l=l.slice(1),n,a,X)}}return l}if("object"==typeof t&&null!==t){if(t[0]===h){if(e={$$typeof:h,type:t[1],key:t[2],ref:null,props:t[3]},null!==C){if(C=(t=C).parent,t.errored)e=D(e=new P("rejected",null,t.reason));else if(0<t.deps){var u=new P("blocked",null,null);t.value=e,t.chunk=u,e=D(u)}}}else e=t;return e}return t}})}function J(e,t,r){var n=(e=e._chunks).get(t);n&&"pending"!==n.status?n.reason.enqueueValue(r):(r=new P("fulfilled",r,null),e.set(t,r))}function Z(e,t,r,n){var a=e._chunks,l=a.get(t);l?"pending"===l.status&&(t=l.value,l.status="fulfilled",l.value=r,l.reason=n,null!==t&&S(e,t,l.value,l)):(e=new P("fulfilled",r,n),a.set(t,e))}function ee(e,t,r){var n=null,a=!1;r=new ReadableStream({type:r,start:function(e){n=e}});var l=null;Z(e,t,r,{enqueueValue:function(e){null===l?n.enqueue(e):l.then(function(){n.enqueue(e)})},enqueueModel:function(t){if(null===l){var r=new P("resolved_model",t,e);F(r),"fulfilled"===r.status?n.enqueue(r.value):(r.then(function(e){return n.enqueue(e)},function(e){return n.error(e)}),l=r)}else{r=l;var a=new P("pending",null,null);a.then(function(e){return n.enqueue(e)},function(e){return n.error(e)}),l=a,r.then(function(){l===a&&(l=null),N(e,a,t)})}},close:function(){if(!a)if(a=!0,null===l)n.close();else{var e=l;l=null,e.then(function(){return n.close()})}},error:function(e){if(!a)if(a=!0,null===l)n.error(e);else{var t=l;l=null,t.then(function(){return n.error(e)})}}})}function et(){return this}function er(e,t,r){var n=[],a=!1,l=0,u={};u[g]=function(){var e,t=0;return(e={next:e=function(e){if(void 0!==e)throw Error("Values cannot be passed to next() of AsyncIterables passed to Client Components.");if(t===n.length){if(a)return new P("fulfilled",{done:!0,value:void 0},null);n[t]=new P("pending",null,null)}return n[t++]}})[g]=et,e},Z(e,t,r?u[g]():u,{enqueueValue:function(t){if(l===n.length)n[l]=new P("fulfilled",{done:!1,value:t},null);else{var r=n[l],a=r.value,u=r.reason;r.status="fulfilled",r.value={done:!1,value:t},r.reason=null,null!==a&&j(e,r,a,u)}l++},enqueueModel:function(t){l===n.length?n[l]=M(e,t,!1):A(e,n[l],t,!1),l++},close:function(t){if(!a)for(a=!0,l===n.length?n[l]=M(e,t,!0):A(e,n[l],t,!0),l++;l<n.length;)A(e,n[l++],'"$undefined"',!0)},error:function(t){if(!a)for(a=!0,l===n.length&&(n[l]=new P("pending",null,null));l<n.length;)w(e,n[l++],t)}})}function en(){var e=Error("An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error.");return e.stack="Error: "+e.message,e}function ea(e,t){for(var r=e.length,n=t.length,a=0;a<r;a++)n+=e[a].byteLength;n=new Uint8Array(n);for(var l=a=0;l<r;l++){var u=e[l];n.set(u,a),a+=u.byteLength}return n.set(t,a),n}function el(e,t,r,n,a,l){J(e,t,a=new a((r=0===r.length&&0==n.byteOffset%l?n:ea(r,n)).buffer,r.byteOffset,r.byteLength/l))}function eu(e){k(e,Error("Connection closed."))}function eo(e){return new Q(null,null,null,e&&e.callServer?e.callServer:void 0,void 0,void 0,e&&e.temporaryReferences?e.temporaryReferences:void 0)}function ei(e,t,r){function n(t){k(e,t)}var l={_rowState:0,_rowID:0,_rowTag:0,_rowLength:0,_buffer:[]},u=t.getReader();u.read().then(function t(o){var i=o.value;if(o.done)return r();var s=0,f=l._rowState;o=l._rowID;for(var h=l._rowTag,p=l._rowLength,y=l._buffer,g=i.length;s<g;){var v=-1;switch(f){case 0:58===(v=i[s++])?f=1:o=o<<4|(96<v?v-87:v-48);continue;case 1:84===(f=i[s])||65===f||79===f||111===f||98===f||85===f||83===f||115===f||76===f||108===f||71===f||103===f||77===f||109===f||86===f?(h=f,f=2,s++):64<f&&91>f||35===f||114===f||120===f?(h=f,f=3,s++):(h=0,f=3);continue;case 2:44===(v=i[s++])?f=4:p=p<<4|(96<v?v-87:v-48);continue;case 3:v=i.indexOf(10,s);break;case 4:(v=s+p)>i.length&&(v=-1)}var _=i.byteOffset+s;if(-1<v)p=new Uint8Array(i.buffer,_,v-s),98===h?J(e,o,v===g?p:p.slice()):function(e,t,r,n,l,u){switch(n){case 65:J(e,r,ea(l,u).buffer);return;case 79:el(e,r,l,u,Int8Array,1);return;case 111:J(e,r,0===l.length?u:ea(l,u));return;case 85:el(e,r,l,u,Uint8ClampedArray,1);return;case 83:el(e,r,l,u,Int16Array,2);return;case 115:el(e,r,l,u,Uint16Array,2);return;case 76:el(e,r,l,u,Int32Array,4);return;case 108:el(e,r,l,u,Uint32Array,4);return;case 71:el(e,r,l,u,Float32Array,4);return;case 103:el(e,r,l,u,Float64Array,8);return;case 77:el(e,r,l,u,BigInt64Array,8);return;case 109:el(e,r,l,u,BigUint64Array,8);return;case 86:el(e,r,l,u,DataView,1);return}t=e._stringDecoder;for(var o="",i=0;i<l.length;i++)o+=t.decode(l[i],a);switch(l=o+=t.decode(u),n){case 73:var s=e,f=r,h=l,p=s._chunks,y=p.get(f);h=JSON.parse(h,s._fromJSON);var g=function(e,t){if(e){var r=e[t[0]];if(e=r&&r[t[2]])r=e.name;else{if(!(e=r&&r["*"]))throw Error('Could not find the module "'+t[0]+'" in the React Server Consumer Manifest. This is probably a bug in the React Server Components bundler.');r=t[2]}return 4===t.length?[e.id,e.chunks,r,1]:[e.id,e.chunks,r]}return t}(s._bundlerConfig,h);if(h=c(g)){if(y){var v=y;v.status="blocked"}else v=new P("blocked",null,null),p.set(f,v);h.then(function(){return U(s,v,g)},function(e){return w(s,v,e)})}else y?U(s,y,g):(y=new P("resolved_module",g,null),p.set(f,y));break;case 72:switch(r=l[0],e=JSON.parse(l=l.slice(1),e._fromJSON),l=d.d,r){case"D":l.D(e);break;case"C":"string"==typeof e?l.C(e):l.C(e[0],e[1]);break;case"L":r=e[0],n=e[1],3===e.length?l.L(r,n,e[2]):l.L(r,n);break;case"m":"string"==typeof e?l.m(e):l.m(e[0],e[1]);break;case"X":"string"==typeof e?l.X(e):l.X(e[0],e[1]);break;case"S":"string"==typeof e?l.S(e):l.S(e[0],0===e[1]?void 0:e[1],3===e.length?e[2]:void 0);break;case"M":"string"==typeof e?l.M(e):l.M(e[0],e[1])}break;case 69:u=(n=e._chunks).get(r),l=JSON.parse(l),(t=en()).digest=l.digest,u?w(e,u,t):(e=new P("rejected",null,t),n.set(r,e));break;case 84:(n=(e=e._chunks).get(r))&&"pending"!==n.status?n.reason.enqueueValue(l):(l=new P("fulfilled",l,null),e.set(r,l));break;case 78:case 68:case 74:case 87:throw Error("Failed to read a RSC payload created by a development version of React on the server while using a production version on the client. Always use matching versions on the server and the client.");case 82:ee(e,r,void 0);break;case 114:ee(e,r,"bytes");break;case 88:er(e,r,!1);break;case 120:er(e,r,!0);break;case 67:(r=e._chunks.get(r))&&"fulfilled"===r.status&&r.reason.close(""===l?'"$undefined"':l);break;default:(u=(n=e._chunks).get(r))?N(e,u,l):(e=new P("resolved_model",l,e),n.set(r,e))}}(e,l,o,h,y,p),s=v,3===f&&s++,p=o=h=f=0,y.length=0;else{i=new Uint8Array(i.buffer,_,i.byteLength-s),98===h?(p-=i.byteLength,J(e,o,i)):(y.push(i),p-=i.byteLength);break}}return l._rowState=f,l._rowID=o,l._rowTag=h,l._rowLength=p,u.read().then(t).catch(n)}).catch(n)}r.createFromFetch=function(e,t){var r=eo(t);return e.then(function(e){ei(r,e.body,eu.bind(null,r))},function(e){k(r,e)}),L(r,0)},r.createFromReadableStream=function(e,t){return ei(t=eo(t),e,eu.bind(null,t)),L(t,0)},r.createServerReference=function(e,t){function r(){var r=Array.prototype.slice.call(arguments);return t(e,r)}return m(r,e,null),r},r.createTemporaryReferenceSet=function(){return new Map},r.encodeReply=function(e,t){return new Promise(function(r,n){var a=function(e,t,r,n,a){function l(e,t){t=new Blob([new Uint8Array(t.buffer,t.byteOffset,t.byteLength)]);var r=i++;return null===c&&(c=new FormData),c.append(""+r,t),"$"+e+r.toString(16)}function u(e,t){if(null===t)return null;if("object"==typeof t){switch(t.$$typeof){case h:if(void 0!==r&&-1===e.indexOf(":")){var m,P,E,S,O,T=f.get(this);if(void 0!==T)return r.set(T+":"+e,t),"$T"}throw Error("React Element cannot be passed to Server Functions from the Client without a temporary reference set. Pass a TemporaryReferenceSet to the options.");case p:T=t._payload;var j=t._init;null===c&&(c=new FormData),s++;try{var w=j(T),M=i++,A=o(w,M);return c.append(""+M,A),"$"+M.toString(16)}catch(e){if("object"==typeof e&&null!==e&&"function"==typeof e.then){s++;var N=i++;return T=function(){try{var e=o(t,N),r=c;r.append(""+N,e),s--,0===s&&n(r)}catch(e){a(e)}},e.then(T,T),"$"+N.toString(16)}return a(e),null}finally{s--}}if(T=f.get(t),"function"==typeof t.then){if(void 0!==T)if(d!==t)return T;else d=null;null===c&&(c=new FormData),s++;var U=i++;return e="$@"+U.toString(16),f.set(t,e),t.then(function(e){try{var t=f.get(e),r=void 0!==t?JSON.stringify(t):o(e,U);(e=c).append(""+U,r),s--,0===s&&n(e)}catch(e){a(e)}},a),e}if(void 0!==T)if(d!==t)return T;else d=null;else -1===e.indexOf(":")&&void 0!==(T=f.get(this))&&(e=T+":"+e,f.set(t,e),void 0!==r&&r.set(e,t));if(v(t))return t;if(t instanceof FormData){null===c&&(c=new FormData);var C=c,F=""+(e=i++)+"_";return t.forEach(function(e,t){C.append(F+t,e)}),"$K"+e.toString(16)}if(t instanceof Map)return e=i++,T=o(Array.from(t),e),null===c&&(c=new FormData),c.append(""+e,T),"$Q"+e.toString(16);if(t instanceof Set)return e=i++,T=o(Array.from(t),e),null===c&&(c=new FormData),c.append(""+e,T),"$W"+e.toString(16);if(t instanceof ArrayBuffer)return e=new Blob([t]),T=i++,null===c&&(c=new FormData),c.append(""+T,e),"$A"+T.toString(16);if(t instanceof Int8Array)return l("O",t);if(t instanceof Uint8Array)return l("o",t);if(t instanceof Uint8ClampedArray)return l("U",t);if(t instanceof Int16Array)return l("S",t);if(t instanceof Uint16Array)return l("s",t);if(t instanceof Int32Array)return l("L",t);if(t instanceof Uint32Array)return l("l",t);if(t instanceof Float32Array)return l("G",t);if(t instanceof Float64Array)return l("g",t);if(t instanceof BigInt64Array)return l("M",t);if(t instanceof BigUint64Array)return l("m",t);if(t instanceof DataView)return l("V",t);if("function"==typeof Blob&&t instanceof Blob)return null===c&&(c=new FormData),e=i++,c.append(""+e,t),"$B"+e.toString(16);if(e=null===(m=t)||"object"!=typeof m?null:"function"==typeof(m=y&&m[y]||m["@@iterator"])?m:null)return(T=e.call(t))===t?(e=i++,T=o(Array.from(T),e),null===c&&(c=new FormData),c.append(""+e,T),"$i"+e.toString(16)):Array.from(T);if("function"==typeof ReadableStream&&t instanceof ReadableStream)return function(e){try{var t,r,l,o,f,d,h,p=e.getReader({mode:"byob"})}catch(o){return t=e.getReader(),null===c&&(c=new FormData),r=c,s++,l=i++,t.read().then(function e(o){if(o.done)r.append(""+l,"C"),0==--s&&n(r);else try{var i=JSON.stringify(o.value,u);r.append(""+l,i),t.read().then(e,a)}catch(e){a(e)}},a),"$R"+l.toString(16)}return o=p,null===c&&(c=new FormData),f=c,s++,d=i++,h=[],o.read(new Uint8Array(1024)).then(function e(t){t.done?(t=i++,f.append(""+t,new Blob(h)),f.append(""+d,'"$o'+t.toString(16)+'"'),f.append(""+d,"C"),0==--s&&n(f)):(h.push(t.value),o.read(new Uint8Array(1024)).then(e,a))},a),"$r"+d.toString(16)}(t);if("function"==typeof(e=t[g]))return P=t,E=e.call(t),null===c&&(c=new FormData),S=c,s++,O=i++,P=P===E,E.next().then(function e(t){if(t.done){if(void 0===t.value)S.append(""+O,"C");else try{var r=JSON.stringify(t.value,u);S.append(""+O,"C"+r)}catch(e){a(e);return}0==--s&&n(S)}else try{var l=JSON.stringify(t.value,u);S.append(""+O,l),E.next().then(e,a)}catch(e){a(e)}},a),"$"+(P?"x":"X")+O.toString(16);if((e=_(t))!==b&&(null===e||null!==_(e))){if(void 0===r)throw Error("Only plain objects, and a few built-ins, can be passed to Server Functions. Classes or null prototypes are not supported.");return"$T"}return t}if("string"==typeof t)return"Z"===t[t.length-1]&&this[e]instanceof Date?"$D"+t:e="$"===t[0]?"$"+t:t;if("boolean"==typeof t)return t;if("number"==typeof t)return Number.isFinite(t)?0===t&&-1/0==1/t?"$-0":t:1/0===t?"$Infinity":-1/0===t?"$-Infinity":"$NaN";if(void 0===t)return"$undefined";if("function"==typeof t){if(void 0!==(T=R.get(t)))return void 0!==(e=f.get(t))||(e=JSON.stringify({id:T.id,bound:T.bound},u),null===c&&(c=new FormData),T=i++,c.set(""+T,e),e="$h"+T.toString(16),f.set(t,e)),e;if(void 0!==r&&-1===e.indexOf(":")&&void 0!==(T=f.get(this)))return r.set(T+":"+e,t),"$T";throw Error("Client Functions cannot be passed directly to Server Functions. Only Functions passed from the Server can be passed back again.")}if("symbol"==typeof t){if(void 0!==r&&-1===e.indexOf(":")&&void 0!==(T=f.get(this)))return r.set(T+":"+e,t),"$T";throw Error("Symbols cannot be passed to a Server Function without a temporary reference set. Pass a TemporaryReferenceSet to the options.")}if("bigint"==typeof t)return"$n"+t.toString(10);throw Error("Type "+typeof t+" is not supported as an argument to a Server Function.")}function o(e,t){return"object"==typeof e&&null!==e&&(t="$"+t.toString(16),f.set(e,t),void 0!==r&&r.set(t,e)),d=e,JSON.stringify(e,u)}var i=1,s=0,c=null,f=new WeakMap,d=e,m=o(e,0);return null===c?n(m):(c.set("0",m),0===s&&n(c)),function(){0<s&&(s=0,null===c?n(m):n(c))}}(e,0,t&&t.temporaryReferences?t.temporaryReferences:void 0,r,n);if(t&&t.signal){var l=t.signal;if(l.aborted)a(l.reason);else{var u=function(){a(l.reason),l.removeEventListener("abort",u)};l.addEventListener("abort",u)}}})},r.registerServerReference=function(e,t){return m(e,t,null),e}},21413,(e,t,r)=>{"use strict";t.exports=e.r(64893)},35326,(e,t,r)=>{"use strict";t.exports=e.r(21413)},90373,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useUntrackedPathname",{enumerable:!0,get:function(){return l}});let n=e.r(71645),a=e.r(61994);function l(){return!function(){if("u"<typeof window){let{workUnitAsyncStorage:t}=e.r(62141),r=t.getStore();if(!r)return!1;switch(r.type){case"prerender":case"prerender-client":case"prerender-ppr":let n=r.fallbackRouteParams;return!!n&&n.size>0}}return!1}()?(0,n.useContext)(a.PathnameContext):null}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},51191,(e,t,r)=>{"use strict";function n(e,t=!0){return e.pathname+e.search+(t?e.hash:"")}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createHrefFromUrl",{enumerable:!0,get:function(){return n}}),("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},78377,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={handleHardNavError:function(){return u},useNavFailureHandler:function(){return o}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});e.r(71645);let l=e.r(51191);function u(e){return!!(e&&"u">typeof window)&&!!window.next.__pendingUrl&&(0,l.createHrefFromUrl)(new URL(window.location.href))!==(0,l.createHrefFromUrl)(window.next.__pendingUrl)&&(console.error("Error occurred during navigation, falling back to hard navigation",e),window.location.href=window.next.__pendingUrl.toString(),!0)}function o(){}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},26935,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"HTML_LIMITED_BOT_UA_RE",{enumerable:!0,get:function(){return n}});let n=/[\w-]+-Google|Google-[\w-]+|Chrome-Lighthouse|Slurp|DuckDuckBot|baiduspider|yandex|sogou|bitlybot|tumblr|vkShare|quora link preview|redditbot|ia_archiver|Bingbot|BingPreview|applebot|facebookexternalhit|facebookcatalog|Twitterbot|LinkedInBot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|Yeti|googleweblight/i},82604,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={HTML_LIMITED_BOT_UA_RE:function(){return l.HTML_LIMITED_BOT_UA_RE},HTML_LIMITED_BOT_UA_RE_STRING:function(){return o},getBotType:function(){return c},isBot:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(26935),u=/Googlebot(?!-)|Googlebot$/i,o=l.HTML_LIMITED_BOT_UA_RE.source;function i(e){return l.HTML_LIMITED_BOT_UA_RE.test(e)}function s(e){return u.test(e)||i(e)}function c(e){return u.test(e)?"dom":i(e)?"html":void 0}},72383,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ErrorBoundary:function(){return p},ErrorBoundaryHandler:function(){return h}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(55682),u=e.r(18050),o=l._(e.r(71645)),i=e.r(90373),s=e.r(65713);e.r(78377);let c=e.r(12354),f=e.r(82604),d="u">typeof window&&(0,f.isBot)(window.navigator.userAgent);class h extends o.default.Component{constructor(e){super(e),this.reset=()=>{this.setState({error:null})},this.state={error:null,previousPathname:this.props.pathname}}static getDerivedStateFromError(e){if((0,s.isNextRouterError)(e))throw e;return{error:e}}static getDerivedStateFromProps(e,t){let{error:r}=t;return e.pathname!==t.previousPathname&&t.error?{error:null,previousPathname:e.pathname}:{error:t.error,previousPathname:e.pathname}}render(){return this.state.error&&!d?(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(c.HandleISRError,{error:this.state.error}),this.props.errorStyles,this.props.errorScripts,(0,u.jsx)(this.props.errorComponent,{error:this.state.error,reset:this.reset})]}):this.props.children}}function p({errorComponent:e,errorStyles:t,errorScripts:r,children:n}){let a=(0,i.useUntrackedPathname)();return e?(0,u.jsx)(h,{pathname:a,errorComponent:e,errorStyles:t,errorScripts:r,children:n}):(0,u.jsx)(u.Fragment,{children:n})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},88540,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n,a={ACTION_HMR_REFRESH:function(){return c},ACTION_NAVIGATE:function(){return o},ACTION_REFRESH:function(){return u},ACTION_RESTORE:function(){return i},ACTION_SERVER_ACTION:function(){return f},ACTION_SERVER_PATCH:function(){return s},PrefetchKind:function(){return d}};for(var l in a)Object.defineProperty(r,l,{enumerable:!0,get:a[l]});let u="refresh",o="navigate",i="restore",s="server-patch",c="hmr-refresh",f="server-action";var d=((n={}).AUTO="auto",n.FULL="full",n);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},64245,(e,t,r)=>{"use strict";function n(e){return null!==e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isThenable",{enumerable:!0,get:function(){return n}})},41538,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={dispatchAppRouterAction:function(){return i},useActionQueue:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(90809)._(e.r(71645)),u=e.r(64245),o=null;function i(e){if(null===o)throw Object.defineProperty(Error("Internal Next.js error: Router action dispatched before initialization."),"__NEXT_ERROR_CODE",{value:"E668",enumerable:!1,configurable:!0});o(e)}function s(e){let[t,r]=l.default.useState(e.state);o=t=>e.dispatch(t,r);let n=(0,l.useMemo)(()=>t,[t]);return(0,u.isThenable)(n)?(0,l.use)(n):n}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},32120,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"callServer",{enumerable:!0,get:function(){return u}});let n=e.r(71645),a=e.r(88540),l=e.r(41538);async function u(e,t){return new Promise((r,u)=>{(0,n.startTransition)(()=>{(0,l.dispatchAppRouterAction)({type:a.ACTION_SERVER_ACTION,actionId:e,actionArgs:t,resolve:r,reject:u})})})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},92245,(e,t,r)=>{"use strict";let n;Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"findSourceMapURL",{enumerable:!0,get:function(){return n}});("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},3372,(e,t,r)=>{"use strict";function n(e){return e.startsWith("/")?e:`/${e}`}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ensureLeadingSlash",{enumerable:!0,get:function(){return n}})},74180,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={normalizeAppPath:function(){return o},normalizeRscURL:function(){return i}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(3372),u=e.r(13258);function o(e){return(0,l.ensureLeadingSlash)(e.split("/").reduce((e,t,r,n)=>!t||(0,u.isGroupSegment)(t)||"@"===t[0]||("page"===t||"route"===t)&&r===n.length-1?e:`${e}/${t}`,""))}function i(e){return e.replace(/\.rsc($|\?)/,"$1")}},91463,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={INTERCEPTION_ROUTE_MARKERS:function(){return u},extractInterceptionRouteInformation:function(){return i},isInterceptionRouteAppPath:function(){return o}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(74180),u=["(..)(..)","(.)","(..)","(...)"];function o(e){return void 0!==e.split("/").find(e=>u.find(t=>e.startsWith(t)))}function i(e){let t,r,n;for(let a of e.split("/"))if(r=u.find(e=>a.startsWith(e))){[t,n]=e.split(r,2);break}if(!t||!r||!n)throw Object.defineProperty(Error(`Invalid interception route: ${e}. Must be in the format /<intercepting route>/(..|...|..)(..)/<intercepted route>`),"__NEXT_ERROR_CODE",{value:"E269",enumerable:!1,configurable:!0});switch(t=(0,l.normalizeAppPath)(t),r){case"(.)":n="/"===t?`/${n}`:t+"/"+n;break;case"(..)":if("/"===t)throw Object.defineProperty(Error(`Invalid interception route: ${e}. Cannot use (..) marker at the root level, use (.) instead.`),"__NEXT_ERROR_CODE",{value:"E207",enumerable:!1,configurable:!0});n=t.split("/").slice(0,-1).concat(n).join("/");break;case"(...)":n="/"+n;break;case"(..)(..)":let a=t.split("/");if(a.length<=2)throw Object.defineProperty(Error(`Invalid interception route: ${e}. Cannot use (..)(..) marker at the root level or one level up.`),"__NEXT_ERROR_CODE",{value:"E486",enumerable:!1,configurable:!0});n=a.slice(0,-2).concat(n).join("/");break;default:throw Object.defineProperty(Error("Invariant: unexpected marker"),"__NEXT_ERROR_CODE",{value:"E112",enumerable:!1,configurable:!0})}return{interceptingRoute:t,interceptedRoute:n}}},56019,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"matchSegment",{enumerable:!0,get:function(){return n}});let n=(e,t)=>"string"==typeof e?"string"==typeof t&&e===t:"string"!=typeof t&&e[0]===t[0]&&e[1]===t[1];("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},34727,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={computeChangedPath:function(){return f},extractPathFromFlightRouterState:function(){return c},getSelectedParams:function(){return function e(t,r={}){for(let n of Object.values(t[1])){let t=n[0],a=Array.isArray(t),l=a?t[1]:t;!l||l.startsWith(u.PAGE_SEGMENT_KEY)||(a&&("c"===t[2]||"oc"===t[2])?r[t[0]]=t[1].split("/"):a&&(r[t[0]]=t[1]),r=e(n,r))}return r}}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(91463),u=e.r(13258),o=e.r(56019),i=e=>"string"==typeof e?"children"===e?"":e:e[1];function s(e){return e.reduce((e,t)=>{let r;return""===(t="/"===(r=t)[0]?r.slice(1):r)||(0,u.isGroupSegment)(t)?e:`${e}/${t}`},"")||"/"}function c(e){let t=Array.isArray(e[0])?e[0][1]:e[0];if(t===u.DEFAULT_SEGMENT_KEY||l.INTERCEPTION_ROUTE_MARKERS.some(e=>t.startsWith(e)))return;if(t.startsWith(u.PAGE_SEGMENT_KEY))return"";let r=[i(t)],n=e[1]??{},a=n.children?c(n.children):void 0;if(void 0!==a)r.push(a);else for(let[e,t]of Object.entries(n)){if("children"===e)continue;let n=c(t);void 0!==n&&r.push(n)}return s(r)}function f(e,t){let r=function e(t,r){let[n,a]=t,[u,s]=r,f=i(n),d=i(u);if(l.INTERCEPTION_ROUTE_MARKERS.some(e=>f.startsWith(e)||d.startsWith(e)))return"";if(!(0,o.matchSegment)(n,u))return c(r)??"";for(let t in a)if(s[t]){let r=e(a[t],s[t]);if(null!==r)return`${i(u)}/${r}`}return null}(e,t);return null==r||"/"===r?r:s(r.split("/"))}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},47442,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"handleMutable",{enumerable:!0,get:function(){return l}});let n=e.r(34727);function a(e){return void 0!==e}function l(e,t){let r=t.shouldScroll??!0,l=e.previousNextUrl,u=e.nextUrl;if(a(t.patchedTree)){let r=(0,n.computeChangedPath)(e.tree,t.patchedTree);r?(l=u,u=r):u||(u=e.canonicalUrl)}return{canonicalUrl:t.canonicalUrl??e.canonicalUrl,renderedSearch:t.renderedSearch??e.renderedSearch,pushRef:{pendingPush:a(t.pendingPush)?t.pendingPush:e.pushRef.pendingPush,mpaNavigation:a(t.mpaNavigation)?t.mpaNavigation:e.pushRef.mpaNavigation,preserveCustomHistoryState:a(t.preserveCustomHistoryState)?t.preserveCustomHistoryState:e.pushRef.preserveCustomHistoryState},focusAndScrollRef:{apply:!!r&&(!!a(t?.scrollableSegments)||e.focusAndScrollRef.apply),onlyHashChange:t.onlyHashChange||!1,hashFragment:r?t.hashFragment&&""!==t.hashFragment?decodeURIComponent(t.hashFragment.slice(1)):e.focusAndScrollRef.hashFragment:null,segmentPaths:r?t?.scrollableSegments??e.focusAndScrollRef.segmentPaths:[]},cache:t.cache?t.cache:e.cache,tree:a(t.patchedTree)?t.patchedTree:e.tree,nextUrl:u,previousNextUrl:l,debugInfo:t.collectedDebugInfo??null}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},67764,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={HEAD_REQUEST_KEY:function(){return o},ROOT_SEGMENT_REQUEST_KEY:function(){return u},appendSegmentRequestKeyPart:function(){return s},convertSegmentPathToStaticExportFilename:function(){return d},createSegmentRequestKeyPart:function(){return i}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(13258),u="",o="/_head";function i(e){if("string"==typeof e)return e.startsWith(l.PAGE_SEGMENT_KEY)?l.PAGE_SEGMENT_KEY:"/_not-found"===e?"_not-found":f(e);let t=e[0];return"$"+e[2]+"$"+f(t)}function s(e,t,r){return e+"/"+("children"===t?r:`@${f(t)}/${r}`)}let c=/^[a-zA-Z0-9\-_@]+$/;function f(e){return c.test(e)?e:"!"+btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function d(e){return`__next${e.replace(/\//g,".")}.txt`}},33906,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={doesStaticSegmentAppearInURL:function(){return f},getCacheKeyForDynamicParam:function(){return d},getParamValueFromCacheKey:function(){return p},getRenderedPathname:function(){return s},getRenderedSearch:function(){return i},parseDynamicParamFromURLPart:function(){return c},urlSearchParamsToParsedUrlQuery:function(){return y},urlToUrlWithoutFlightMarker:function(){return h}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(13258),u=e.r(67764),o=e.r(21768);function i(e){let t=e.headers.get(o.NEXT_REWRITTEN_QUERY_HEADER);return null!==t?""===t?"":"?"+t:h(new URL(e.url)).search}function s(e){return e.headers.get(o.NEXT_REWRITTEN_PATH_HEADER)??h(new URL(e.url)).pathname}function c(e,t,r){switch(e){case"c":return r<t.length?t.slice(r).map(e=>encodeURIComponent(e)):[];case"ci(..)(..)":case"ci(.)":case"ci(..)":case"ci(...)":{let n=e.length-2;return r<t.length?t.slice(r).map((e,t)=>0===t?encodeURIComponent(e.slice(n)):encodeURIComponent(e)):[]}case"oc":return r<t.length?t.slice(r).map(e=>encodeURIComponent(e)):null;case"d":if(r>=t.length)return"";return encodeURIComponent(t[r]);case"di(..)(..)":case"di(.)":case"di(..)":case"di(...)":{let n=e.length-2;if(r>=t.length)return"";return encodeURIComponent(t[r].slice(n))}default:return""}}function f(e){return!(e===u.ROOT_SEGMENT_REQUEST_KEY||e.startsWith(l.PAGE_SEGMENT_KEY)||"("===e[0]&&e.endsWith(")"))&&e!==l.DEFAULT_SEGMENT_KEY&&"/_not-found"!==e}function d(e,t){return"string"==typeof e?(0,l.addSearchParamsIfPageSegment)(e,Object.fromEntries(new URLSearchParams(t))):null===e?"":e.join("/")}function h(e){let t=new URL(e);return t.searchParams.delete(o.NEXT_RSC_UNION_QUERY),t}function p(e,t){return"c"===t||"oc"===t?e.split("/"):e}function y(e){let t={};for(let[r,n]of e.entries())void 0===t[r]?t[r]=n:Array.isArray(t[r])?t[r].push(n):t[r]=[t[r],n];return t}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},50590,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={createInitialRSCPayloadFromFallbackPrerender:function(){return s},getFlightDataPartsFromPath:function(){return i},getNextFlightSegmentPath:function(){return c},normalizeFlightData:function(){return f},prepareFlightRouterStateForRequest:function(){return d}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(13258),u=e.r(33906),o=e.r(51191);function i(e){let[t,r,n,a]=e.slice(-4),l=e.slice(0,-4);return{pathToSegment:l.slice(0,-1),segmentPath:l,segment:l[l.length-1]??"",tree:t,seedData:r,head:n,isHeadPartial:a,isRootRender:4===e.length}}function s(e,t){let r=(0,u.getRenderedPathname)(e),n=(0,u.getRenderedSearch)(e),a=(0,o.createHrefFromUrl)(new URL(location.href)),l=t.f[0],i=l[0];return{b:t.b,c:a.split("/"),q:n,i:t.i,f:[[function e(t,r,n,a){let l,o,i=t[0];if("string"==typeof i)l=i,o=(0,u.doesStaticSegmentAppearInURL)(i);else{let e=i[0],t=i[2],s=(0,u.parseDynamicParamFromURLPart)(t,n,a);l=[e,(0,u.getCacheKeyForDynamicParam)(s,r),t],o=!0}let s=o?a+1:a,c=t[1],f={};for(let t in c){let a=c[t];f[t]=e(a,r,n,s)}return[l,f,null,t[3],t[4]]}(i,n,r.split("/").filter(e=>""!==e),0),l[1],l[2],l[2]]],m:t.m,G:t.G,S:t.S}}function c(e){return e.slice(2)}function f(e){return"string"==typeof e?e:e.map(e=>i(e))}function d(e,t){return t?encodeURIComponent(JSON.stringify(e)):encodeURIComponent(JSON.stringify(function e(t){var r,n;let[a,u,o,i,s,c]=t,f="string"==typeof(r=a)&&r.startsWith(l.PAGE_SEGMENT_KEY+"?")?l.PAGE_SEGMENT_KEY:r,d={};for(let[t,r]of Object.entries(u))d[t]=e(r);let h=[f,d,null,(n=i)&&"refresh"!==n?i:null];return void 0!==s&&(h[4]=s),void 0!==c&&(h[5]=c),h}(e)))}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},14297,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={getAppBuildId:function(){return o},setAppBuildId:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l="";function u(e){l=e}function o(){return l}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},19921,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={djb2Hash:function(){return l},hexHash:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});function l(e){let t=5381;for(let r=0;r<e.length;r++)t=(t<<5)+t+e.charCodeAt(r)|0;return t>>>0}function u(e){return l(e).toString(36).slice(0,5)}},86051,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"computeCacheBustingSearchParam",{enumerable:!0,get:function(){return a}});let n=e.r(19921);function a(e,t,r,a){return(void 0===e||"0"===e)&&void 0===t&&void 0===r&&void 0===a?"":(0,n.hexHash)([e||"0",t||"0",r||"0",a||"0"].join(","))}},71482,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={setCacheBustingSearchParam:function(){return o},setCacheBustingSearchParamWithHash:function(){return i}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(86051),u=e.r(21768),o=(e,t)=>{i(e,(0,l.computeCacheBustingSearchParam)(t[u.NEXT_ROUTER_PREFETCH_HEADER],t[u.NEXT_ROUTER_SEGMENT_PREFETCH_HEADER],t[u.NEXT_ROUTER_STATE_TREE_HEADER],t[u.NEXT_URL]))},i=(e,t)=>{let r=e.search,n=(r.startsWith("?")?r.slice(1):r).split("&").filter(e=>e&&!e.startsWith(`${u.NEXT_RSC_UNION_QUERY}=`));t.length>0?n.push(`${u.NEXT_RSC_UNION_QUERY}=${t}`):n.push(`${u.NEXT_RSC_UNION_QUERY}`),e.search=n.length?`?${n.join("&")}`:""};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},43369,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={getDeploymentId:function(){return l},getDeploymentIdQueryOrEmptyString:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});function l(){return!1}function u(){return""}},87288,(e,t,r)=>{"use strict";let n;Object.defineProperty(r,"__esModule",{value:!0});var a={createFetch:function(){return R},createFromNextReadableStream:function(){return m},fetchServerResponse:function(){return b}};for(var l in a)Object.defineProperty(r,l,{enumerable:!0,get:a[l]});let u=e.r(35326),o=e.r(21768),i=e.r(32120),s=e.r(92245),c=e.r(50590),f=e.r(14297),d=e.r(71482),h=e.r(33906),p=e.r(43369),y=u.createFromReadableStream,g=u.createFromFetch;function v(e){return(0,h.urlToUrlWithoutFlightMarker)(new URL(e,location.origin)).toString()}let _=!1;async function b(e,t){let{flightRouterState:r,nextUrl:n}=t,a={[o.RSC_HEADER]:"1",[o.NEXT_ROUTER_STATE_TREE_HEADER]:(0,c.prepareFlightRouterStateForRequest)(r,t.isHmrRefresh)};n&&(a[o.NEXT_URL]=n);try{let t=await R(e,a,"auto",!0),r=(0,h.urlToUrlWithoutFlightMarker)(new URL(t.url)),n=t.redirected?r:e,l=t.headers.get("content-type")||"",u=!!t.headers.get("vary")?.includes(o.NEXT_URL),i=!!t.headers.get(o.NEXT_DID_POSTPONE_HEADER),s=t.headers.get(o.NEXT_ROUTER_STALE_TIME_HEADER),d=null!==s?1e3*parseInt(s,10):-1;if(!l.startsWith(o.RSC_CONTENT_TYPE_HEADER)||!t.ok||!t.body)return e.hash&&(r.hash=e.hash),v(r.toString());let p=t.flightResponse;if(null===p){let e,r=i?(e=t.body.getReader(),new ReadableStream({async pull(t){for(;;){let{done:r,value:n}=await e.read();if(!r){t.enqueue(n);continue}return}}})):t.body;p=m(r,a)}let y=await p;if((0,f.getAppBuildId)()!==y.b)return v(t.url);let g=(0,c.normalizeFlightData)(y.f);if("string"==typeof g)return v(g);return{flightData:g,canonicalUrl:n,renderedSearch:(0,h.getRenderedSearch)(t),couldBeIntercepted:u,prerendered:y.S,postponed:i,staleTime:d,debugInfo:p._debugInfo??null}}catch(t){return _||console.error(`Failed to fetch RSC payload for ${e}. Falling back to browser navigation.`,t),e.toString()}}async function R(e,t,r,a,l){var u,c;let f=(0,p.getDeploymentId)();f&&(t["x-deployment-id"]=f);let h=new URL(e);(0,d.setCacheBustingSearchParam)(h,t);let y=fetch(h,{credentials:"same-origin",headers:t,priority:r||void 0,signal:l}),v=a?(u=y,c=t,g(u,{callServer:i.callServer,findSourceMapURL:s.findSourceMapURL,debugChannel:n&&n(c)})):null,_=await y,b=_.redirected,R=new URL(_.url,h);return R.searchParams.delete(o.NEXT_RSC_UNION_QUERY),{url:R.href,redirected:b,ok:_.ok,headers:_.headers,body:_.body,status:_.status,flightResponse:v}}function m(e,t){return y(e,{callServer:i.callServer,findSourceMapURL:s.findSourceMapURL,debugChannel:n&&n(t)})}"u">typeof window&&(window.addEventListener("pagehide",()=>{_=!0}),window.addEventListener("pageshow",()=>{_=!1})),("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},70725,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createRouterCacheKey",{enumerable:!0,get:function(){return a}});let n=e.r(13258);function a(e,t=!1){return Array.isArray(e)?`${e[0]}|${e[1]}|${e[2]}`:t&&e.startsWith(n.PAGE_SEGMENT_KEY)?n.PAGE_SEGMENT_KEY:e}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},48919,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isNavigatingToNewRootLayout",{enumerable:!0,get:function(){return function e(t,r){let n=t[0],a=r[0];if(Array.isArray(n)&&Array.isArray(a)){if(n[0]!==a[0]||n[2]!==a[2])return!0}else if(n!==a)return!0;if(t[4])return!r[4];if(r[4])return!0;let l=Object.values(t[1])[0],u=Object.values(r[1])[0];return!l||!u||e(l,u)}}}),("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},95871,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n,a={FreshnessPolicy:function(){return g},createInitialCacheNodeForHydration:function(){return _},isDeferredRsc:function(){return U},spawnDynamicRequests:function(){return j},startPPRNavigation:function(){return b}};for(var l in a)Object.defineProperty(r,l,{enumerable:!0,get:a[l]});let u=e.r(13258),o=e.r(56019),i=e.r(51191),s=e.r(70725),c=e.r(87288),f=e.r(41538),d=e.r(88540),h=e.r(48919),p=e.r(54069),y=e.r(60355);var g=((n={})[n.Default=0]="Default",n[n.Hydration=1]="Hydration",n[n.HistoryTraversal=2]="HistoryTraversal",n[n.RefreshAll=3]="RefreshAll",n[n.HMRRefresh=4]="HMRRefresh",n);let v=()=>{};function _(e,t,r,n){return R(e,t,void 0,1,r,n,null,null,!1,null,null,!1,{scrollableSegments:null,separateRefreshUrls:null}).node}function b(e,t,r,n,a,l,c,f,d,p,y,g,v){return function e(t,r,n,a,l,c,f,d,p,y,g,v,_,b,T,j,w,M){var A,N;let U,C,F,I=a[0],k=l[0];if(!(0,o.matchSegment)(k,I))return!f&&(0,h.isNavigatingToNewRootLayout)(a,l)||k===u.NOT_FOUND_SEGMENT_KEY||null===b||null===T?null:R(t,l,n,c,d,p,y,g,v,b,T,j,M);let D=null!==T&&null!==b?b.concat([T,k]):[],L=l[1],x=a[1],H=null!==d?d[1]:null,B=null!==y?y[1]:null,$=!0===l[4],V=f||$,K=void 0!==n?n.parallelRoutes:void 0,q=!1,G=!1;switch(c){case 0:case 2:case 1:q=!1,G=!1;break;case 3:case 4:q=!0,G=!0}let W=new Map(q?void 0:K),z=0===Object.keys(L).length;if(void 0===n||G||z&&_)if(null!==d&&null!==d[0]){let e=d[0],r=d[2],n=null===p;C=S(e,r,!1,p,n,z,W,t),F=z&&n}else if(null!==y){let e=y[0],r=y[2],n=y[3];C=S(e,r,n,g,v,z,W,t),F=n||z&&v}else C=O(W,z,t,c),F=!0;else C=E(!1,n,W),F=!1;let X=l[2],Y="string"==typeof X&&"refresh"===l[3]?X:w;F&&null!==Y&&(A=M,N=Y,null===(U=A.separateRefreshUrls)?A.separateRefreshUrls=new Set([N]):U.add(N));let Q={},J=null,Z=!1,ee={};for(let n in L){let a=L[n],l=x[n];if(void 0===l)return null;let o=void 0!==K?K.get(n):void 0,f=null!==H?H[n]:null,d=null!==B?B[n]:null,h=a[0],y=p,b=g,R=v;2!==c&&h===u.DEFAULT_SEGMENT_KEY&&(h=(a=function(e,t){let r;return"refresh"===t[3]?r=t:((r=m(t,t[1]))[2]=(0,i.createHrefFromUrl)(e),r[3]="refresh"),r}(r,l))[0],f=null,y=null,d=null,b=null,R=!1);let P=(0,s.createRouterCacheKey)(h),E=e(t,r,void 0!==o?o.get(P):void 0,l,a,c,V,f??null,y,d??null,b,R,_,D,n,j||F,Y,M);if(null===E)return null;null===J&&(J=new Map),J.set(n,E);let S=E.node;if(null!==S){let e=new Map(q?void 0:o);e.set(P,S),W.set(n,e)}let O=E.route;Q[n]=O;let T=E.dynamicRequestTree;null!==T?(Z=!0,ee[n]=T):ee[n]=O}return{status:+!F,route:m(l,Q),node:C,dynamicRequestTree:P(l,ee,F,Z,j),refreshUrl:Y,children:J}}(e,t,null!==r?r:void 0,n,a,l,!1,c,f,d,p,y,g,null,null,!1,null,v)}function R(e,t,r,n,a,l,u,o,i,c,f,d,h){let y,g,v=t[0],_=null!==f&&null!==c?c.concat([f,v]):[],b=t[1],T=null!==u?u[1]:null,j=null!==a?a[1]:null,w=void 0!==r?r.parallelRoutes:void 0,M=!1,A=!1,N=!1;switch(n){case 0:M=!1,A=void 0===r||e-r.navigatedAt>=p.DYNAMIC_STALETIME_MS,N=!1;break;case 1:A=!1,M=!1,N=!1;break;case 2:if(A=!1,A=!1,void 0!==r){let e=r.rsc;N=!U(e)||"pending"!==e.status}else N=!1;break;case 3:case 4:A=!0,M=!0,N=!1}let C=new Map(M?void 0:w),F=0===Object.keys(b).length;if(F&&(null===h.scrollableSegments&&(h.scrollableSegments=[]),h.scrollableSegments.push(_)),A||void 0===r)if(null!==a&&null!==a[0]){let t=a[0],r=a[2],u=null===l&&1!==n;y=S(t,r,!1,l,u,F,C,e),g=F&&u}else if(1===n&&F&&null!==l)y=S(null,null,!1,l,!1,F,C,e),g=!1;else if(1!==n&&null!==u){let t=u[0],r=u[2],n=u[3];y=S(t,r,n,o,i,F,C,e),g=n||F&&i}else y=O(C,F,e,n),g=!0;else y=E(N,r,C),g=!1;let I={},k=null,D=!1,L={};for(let t in b){let r=b[t],a=void 0!==w?w.get(t):void 0,u=null!==j?j[t]:null,c=null!==T?T[t]:null,f=r[0],p=(0,s.createRouterCacheKey)(f),y=R(e,r,void 0!==a?a.get(p):void 0,n,u??null,l,c??null,o,i,_,t,d||g,h);null===k&&(k=new Map),k.set(t,y);let v=y.node;if(null!==v){let e=new Map(M?void 0:a);e.set(p,v),C.set(t,e)}let m=y.route;I[t]=m;let P=y.dynamicRequestTree;null!==P?(D=!0,L[t]=P):L[t]=m}return{status:+!g,route:m(t,I),node:y,dynamicRequestTree:P(t,L,g,D,d),refreshUrl:null,children:k}}function m(e,t){let r=[e[0],t];return 2 in e&&(r[2]=e[2]),3 in e&&(r[3]=e[3]),4 in e&&(r[4]=e[4]),r}function P(e,t,r,n,a){let l=null;return r?(l=m(e,t),a||(l[3]="refetch")):l=n?m(e,t):null,l}function E(e,t,r){return{rsc:t.rsc,prefetchRsc:e?null:t.prefetchRsc,head:t.head,prefetchHead:e?null:t.prefetchHead,loading:t.loading,parallelRoutes:r,navigatedAt:t.navigatedAt}}function S(e,t,r,n,a,l,u,o){let i,s,c,f;return r?(s=e,i=C()):(s=null,i=e),l?a?(c=n,f=C()):(c=null,f=n):(c=null,f=null),{rsc:i,prefetchRsc:s,head:f,prefetchHead:c,loading:t,parallelRoutes:u,navigatedAt:o}}function O(e,t,r,n){let a=1===n;return{rsc:a?null:C(),prefetchRsc:null,head:!a&&t?C():null,prefetchHead:null,loading:a?null:C(),parallelRoutes:e,navigatedAt:r}}let T=!1;function j(e,t,r,n,a){let l=e.dynamicRequestTree;if(null===l){T=!1;return}let u=A(e,l,t,r,n),o=a.separateRefreshUrls,s=null;if(null!==o){s=[];let a=(0,i.createHrefFromUrl)(t);for(let t of o)t!==a&&null!==l&&s.push(A(e,l,new URL(t,location.origin),r,n))}w(e,r,u,s).then(v,v)}async function w(e,t,r,n){var a,l;let u=await (a=r,l=n,new Promise(e=>{let t=t=>{0===t.exitStatus?0==--n&&e(0):e(t.exitStatus)},r=()=>e(2),n=1;a.then(t,r),null!==l&&(n+=l.length,l.forEach(e=>e.then(t,r)))}));switch(0===u&&(u=function e(t,r,n){var a,l,u;let o,i,s,c;0===t.status?(t.status=2,a=t.node,l=r,u=n,U(i=a.rsc)&&(null===l?i.resolve(null,u):i.reject(l,u)),U(s=a.loading)&&s.resolve(null,u),U(c=a.head)&&c.resolve(null,u),o=null===t.refreshUrl?1:2):o=0;let f=t.children;if(null!==f)for(let[,t]of f){let a=e(t,r,n);a>o&&(o=a)}return o}(e,null,null)),u){case 0:T=!1;return;case 1:{let n=await r;M(!1,n.url,t,n.seed,e.route);return}case 2:{let n=await r;M(!0,n.url,t,n.seed,e.route);return}default:return u}}function M(e,t,r,n,a){e=e||T,T=!0;let l={type:d.ACTION_SERVER_PATCH,previousTree:a,url:t,nextUrl:r,seed:n,mpa:e};(0,f.dispatchAppRouterAction)(l)}async function A(e,t,r,n,a){try{let l=await (0,c.fetchServerResponse)(r,{flightRouterState:t,nextUrl:n,isHmrRefresh:4===a});if("string"==typeof l)return{exitStatus:2,url:new URL(l,location.origin),seed:null};let u=(0,y.convertServerPatchToFullTree)(e.route,l.flightData,l.renderedSearch);return{exitStatus:+!!function e(t,r,n,a,l){0===t.status&&null!==n&&(t.status=1,function(e,t,r,n){let a=e.rsc,l=t[0];if(null===l)return;null===a?e.rsc=l:U(a)&&a.resolve(l,n);let u=e.loading;if(U(u)){let e=t[2];u.resolve(e,n)}let o=e.head;U(o)&&o.resolve(r,n)}(t.node,n,a,l));let u=t.children,i=r[1],s=null!==n?n[1]:null,c=!1;if(null!==u)for(let t in i){let r=i[t],n=null!==s?s[t]:null,f=u.get(t);if(void 0===f)c=!0;else{let t=f.route[0];(0,o.matchSegment)(r[0],t)&&null!=n&&e(f,r,n,a,l)&&(c=!0)}}return c}(e,u.tree,u.data,u.head,l.debugInfo),url:new URL(l.canonicalUrl,location.origin),seed:u}}catch{return{exitStatus:2,url:r,seed:null}}}let N=Symbol();function U(e){return e&&"object"==typeof e&&e.tag===N}function C(){let e,t,r=[],n=new Promise((r,n)=>{e=r,t=n});return n.status="pending",n.resolve=(t,a)=>{"pending"===n.status&&(n.status="fulfilled",n.value=t,null!==a&&r.push.apply(r,a),e(t))},n.reject=(e,a)=>{"pending"===n.status&&(n.status="rejected",n.reason=e,null!==a&&r.push.apply(r,a),t(e))},n.tag=N,n._debugInfo=r,n}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},22744,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"HasLoadingBoundary",{enumerable:!0,get:function(){return a}});var n,a=((n={})[n.SegmentHasLoadingBoundary=1]="SegmentHasLoadingBoundary",n[n.SubtreeHasLoadingBoundary=2]="SubtreeHasLoadingBoundary",n[n.SubtreeHasNoLoadingBoundary=3]="SubtreeHasNoLoadingBoundary",n)},9396,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n,a,l,u={FetchStrategy:function(){return c},NavigationResultTag:function(){return i},PrefetchPriority:function(){return s}};for(var o in u)Object.defineProperty(r,o,{enumerable:!0,get:u[o]});var i=((n={})[n.MPA=0]="MPA",n[n.Success=1]="Success",n[n.NoOp=2]="NoOp",n[n.Async=3]="Async",n),s=((a={})[a.Intent=2]="Intent",a[a.Default=1]="Default",a[a.Background=0]="Background",a),c=((l={})[l.LoadingBoundary=0]="LoadingBoundary",l[l.PPR=1]="PPR",l[l.PPRRuntime=2]="PPRRuntime",l[l.Full=3]="Full",l);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},73861,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={deleteFromLru:function(){return f},lruPut:function(){return s},updateLruSize:function(){return c}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(511),u=null,o=!1,i=0;function s(e){if(u===e)return;let t=e.prev,r=e.next;if(null===r||null===t?(i+=e.size,d()):(t.next=r,r.prev=t),null===u)e.prev=e,e.next=e;else{let t=u.prev;e.prev=t,null!==t&&(t.next=e),e.next=u,u.prev=e}u=e}function c(e,t){let r=e.size;e.size=t,null!==e.next&&(i=i-r+t,d())}function f(e){let t=e.next,r=e.prev;null!==t&&null!==r&&(i-=e.size,e.next=null,e.prev=null,u===e?t===u?u=null:(u=t,r.next=t,t.prev=r):(r.next=t,t.prev=r))}function d(){o||i<=0x3200000||(o=!0,p(h))}function h(){o=!1;for(;i>0x2d00000&&null!==u;){let e=u.prev;null!==e&&(0,l.deleteMapEntry)(e)}}let p="function"==typeof requestIdleCallback?requestIdleCallback:e=>setTimeout(e,0);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},511,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={Fallback:function(){return u},createCacheMap:function(){return i},deleteFromCacheMap:function(){return h},deleteMapEntry:function(){return p},getFromCacheMap:function(){return s},isValueExpired:function(){return c},setInCacheMap:function(){return f},setSizeInCacheMap:function(){return y}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(73861),u={},o={};function i(){return{parent:null,key:null,value:null,map:null,prev:null,next:null,size:0}}function s(e,t,r,n,a){let i=function e(t,r,n,a,l,i){let s,f;if(null!==a)s=a.value,f=a.parent;else if(l&&i!==o)s=o,f=null;else return null===n.value?n:c(t,r,n.value)?(p(n),null):n;let d=n.map;if(null!==d){let n=d.get(s);if(void 0!==n){let a=e(t,r,n,f,l,s);if(null!==a)return a}let a=d.get(u);if(void 0!==a)return e(t,r,a,f,l,s)}return null}(e,t,r,n,a,0);return null===i||null===i.value?null:((0,l.lruPut)(i),i.value)}function c(e,t,r){return r.staleAt<=e||r.version<t}function f(e,t,r,n){let a=function(e,t,r){let n=e,a=t,l=null;for(;;){let e=l;if(null!==a)l=a.value,a=a.parent;else if(r&&e!==o){if(null===n.value)return n;l=o}else break;let t=n.map;if(null!==t){let e=t.get(l);if(void 0!==e){n=e;continue}}else t=new Map,n.map=t;let u={parent:n,key:l,value:null,map:null,prev:null,next:null,size:0};t.set(l,u),n=u}return n}(e,t,n);d(a,r),(0,l.lruPut)(a),(0,l.updateLruSize)(a,r.size)}function d(e,t){null!==e.value&&(e.value.ref=null,e.value=null);let r=t.ref;e.value=t,t.ref=e,(0,l.updateLruSize)(e,t.size),null!==r&&r!==e&&r.value===t&&p(r)}function h(e){let t=e.ref;null!==t&&(e.ref=null,p(t))}function p(e){e.value=null,(0,l.deleteFromLru)(e);let t=e.map;if(null===t){let t=e.parent,r=e.key;for(;null!==t;){let e=t.map;if(null!==e&&(e.delete(r),0===e.size)&&(t.map=null,null===t.value)){r=t.key,t=t.parent;continue}break}}else{let r=t.get(o);void 0!==r&&null!==r.value&&d(e,r.value)}}function y(e,t){let r=e.ref;null!==r&&(e.size=t,(0,l.updateLruSize)(r,t))}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},56655,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={appendLayoutVaryPath:function(){return c},clonePageVaryPathWithNewSearchParams:function(){return y},finalizeLayoutVaryPath:function(){return f},finalizeMetadataVaryPath:function(){return h},finalizePageVaryPath:function(){return d},getFulfilledRouteVaryPath:function(){return s},getRouteVaryPath:function(){return i},getSegmentVaryPathForRequest:function(){return p}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(9396),u=e.r(511),o=e.r(67764);function i(e,t,r){return{value:e,parent:{value:t,parent:{value:r,parent:null}}}}function s(e,t,r,n){return{value:e,parent:{value:t,parent:{value:n?r:u.Fallback,parent:null}}}}function c(e,t){return{value:t,parent:e}}function f(e,t){return{value:e,parent:t}}function d(e,t,r){return{value:e,parent:{value:t,parent:r}}}function h(e,t,r){return{value:e+o.HEAD_REQUEST_KEY,parent:{value:t,parent:r}}}function p(e,t){let r=t.varyPath;if(t.isPage&&e!==l.FetchStrategy.Full&&e!==l.FetchStrategy.PPRRuntime){let e=r.parent.parent;return{value:r.value,parent:{value:u.Fallback,parent:e}}}return r}function y(e,t){let r=e.parent;return{value:e.value,parent:{value:t,parent:r.parent}}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},77048,(e,t,r)=>{"use strict";function n(e,t){let r=new URL(e);return{pathname:r.pathname,search:r.search,nextUrl:t}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createCacheKey",{enumerable:!0,get:function(){return n}}),("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},77709,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={cancelPrefetchTask:function(){return m},isPrefetchTaskDirty:function(){return E},pingPrefetchTask:function(){return M},reschedulePrefetchTask:function(){return P},schedulePrefetchTask:function(){return R},startRevalidationCooldown:function(){return b}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(22744),u=e.r(56019),o=e.r(20896),i=e.r(56655),s=e.r(77048),c=e.r(9396),f=e.r(13258),d="function"==typeof queueMicrotask?queueMicrotask:e=>Promise.resolve().then(e).catch(e=>setTimeout(()=>{throw e})),h=[],p=0,y=0,g=!1,v=null,_=null;function b(){null!==_&&clearTimeout(_),_=setTimeout(()=>{_=null,O()},300)}function R(e,t,r,n,a){let l={key:e,treeAtTimeOfPrefetch:t,cacheVersion:(0,o.getCurrentCacheVersion)(),priority:n,phase:1,hasBackgroundWork:!1,spawnedRuntimePrefetches:null,fetchStrategy:r,sortId:y++,isCanceled:!1,onInvalidate:a,_heapIndex:-1};return S(l),B(h,l),O(),l}function m(e){e.isCanceled=!0,function(e,t){let r=t._heapIndex;if(-1!==r&&(t._heapIndex=-1,0!==e.length)){let n=e.pop();n!==t&&(e[r]=n,n._heapIndex=r,G(e,n,r))}}(h,e)}function P(e,t,r,n){e.isCanceled=!1,e.phase=1,e.sortId=y++,e.priority=e===v?c.PrefetchPriority.Intent:n,e.treeAtTimeOfPrefetch=t,e.fetchStrategy=r,S(e),-1!==e._heapIndex?K(h,e):B(h,e),O()}function E(e,t,r){let n=(0,o.getCurrentCacheVersion)();return e.cacheVersion!==n||e.treeAtTimeOfPrefetch!==r||e.key.nextUrl!==t}function S(e){e.priority===c.PrefetchPriority.Intent&&e!==v&&(null!==v&&v.priority!==c.PrefetchPriority.Background&&(v.priority=c.PrefetchPriority.Default,K(h,v)),v=e)}function O(){g||(g=!0,d(A))}function T(e){return null===_&&(e.priority===c.PrefetchPriority.Intent?p<12:p<4)}function j(e){return p++,e.then(e=>null===e?(w(),null):(e.closed.then(w),e.value))}function w(){p--,O()}function M(e){e.isCanceled||-1!==e._heapIndex||(B(h,e),O())}function A(){g=!1;let e=Date.now(),t=$(h);for(;null!==t&&T(t);){t.cacheVersion=(0,o.getCurrentCacheVersion)();let r=function(e,t){let r=t.key,n=(0,o.readOrCreateRouteCacheEntry)(e,t,r),a=function(e,t,r){switch(r.status){case o.EntryStatus.Empty:j((0,o.fetchRouteOnCacheMiss)(r,t,t.key)),r.staleAt=e+6e4,r.status=o.EntryStatus.Pending;case o.EntryStatus.Pending:{let e=r.blockedTasks;return null===e?r.blockedTasks=new Set([t]):e.add(t),1}case o.EntryStatus.Rejected:break;case o.EntryStatus.Fulfilled:{if(0!==t.phase)return 2;if(!T(t))return 0;let i=r.tree,s=t.fetchStrategy===c.FetchStrategy.PPR?r.isPPREnabled?c.FetchStrategy.PPR:c.FetchStrategy.LoadingBoundary:t.fetchStrategy;switch(s){case c.FetchStrategy.PPR:{var n,a,u;if(F(n=e,a=t,u=r,(0,o.readOrCreateSegmentCacheEntry)(n,c.FetchStrategy.PPR,u,u.metadata),a.key,u.metadata),0===function e(t,r,n,a,l){let u=(0,o.readOrCreateSegmentCacheEntry)(t,r.fetchStrategy,n,l);F(t,r,n,u,r.key,l);let i=a[1],s=l.slots;if(null!==s)for(let a in s){if(!T(r))return 0;let l=s[a],u=l.segment,c=i[a],f=c?.[0];if(0===(void 0!==f&&x(n,u,f)?e(t,r,n,c,l):function e(t,r,n,a){if(a.hasRuntimePrefetch)return null===r.spawnedRuntimePrefetches?r.spawnedRuntimePrefetches=new Set([a.requestKey]):r.spawnedRuntimePrefetches.add(a.requestKey),2;let l=(0,o.readOrCreateSegmentCacheEntry)(t,r.fetchStrategy,n,a);if(F(t,r,n,l,r.key,a),null!==a.slots){if(!T(r))return 0;for(let l in a.slots)if(0===e(t,r,n,a.slots[l]))return 0}return 2}(t,r,n,l)))return 0}return 2}(e,t,r,t.treeAtTimeOfPrefetch,i))return 0;let l=t.spawnedRuntimePrefetches;if(null!==l){let n=new Map;U(e,t,r,n,c.FetchStrategy.PPRRuntime);let a=function e(t,r,n,a,l,u){if(l.has(a.requestKey))return C(t,r,n,a,!1,u,c.FetchStrategy.PPRRuntime);let o={},i=a.slots;if(null!==i)for(let a in i){let s=i[a];o[a]=e(t,r,n,s,l,u)}return[a.segment,o,null,null]}(e,t,r,i,l,n);n.size>0&&j((0,o.fetchSegmentPrefetchesUsingDynamicRequest)(t,r,c.FetchStrategy.PPRRuntime,a,n))}return 2}case c.FetchStrategy.Full:case c.FetchStrategy.PPRRuntime:case c.FetchStrategy.LoadingBoundary:{let n=new Map;U(e,t,r,n,s);let a=function e(t,r,n,a,u,i,s){let f=a[1],d=u.slots,h={};if(null!==d)for(let a in d){let u=d[a],p=u.segment,y=f[a],g=y?.[0];if(void 0!==g&&x(n,p,g)){let l=e(t,r,n,y,u,i,s);h[a]=l}else switch(s){case c.FetchStrategy.LoadingBoundary:{let e=u.hasLoadingBoundary!==l.HasLoadingBoundary.SubtreeHasNoLoadingBoundary?function e(t,r,n,a,u,i){let s=null===u?"inside-shared-layout":null,f=(0,o.readOrCreateSegmentCacheEntry)(t,r.fetchStrategy,n,a);switch(f.status){case o.EntryStatus.Empty:i.set(a.requestKey,(0,o.upgradeToPendingSegment)(f,c.FetchStrategy.LoadingBoundary)),"refetch"!==u&&(s=u="refetch");break;case o.EntryStatus.Fulfilled:if(a.hasLoadingBoundary===l.HasLoadingBoundary.SegmentHasLoadingBoundary)return(0,o.convertRouteTreeToFlightRouterState)(a);case o.EntryStatus.Pending:case o.EntryStatus.Rejected:}let d={};if(null!==a.slots)for(let l in a.slots){let o=a.slots[l];d[l]=e(t,r,n,o,u,i)}return[a.segment,d,null,s,a.isRootLayout]}(t,r,n,u,null,i):(0,o.convertRouteTreeToFlightRouterState)(u);h[a]=e;break}case c.FetchStrategy.PPRRuntime:{let e=C(t,r,n,u,!1,i,s);h[a]=e;break}case c.FetchStrategy.Full:{let e=C(t,r,n,u,!1,i,s);h[a]=e}}}return[u.segment,h,null,null,u.isRootLayout]}(e,t,r,t.treeAtTimeOfPrefetch,i,n,s);return n.size>0&&j((0,o.fetchSegmentPrefetchesUsingDynamicRequest)(t,r,s,a,n)),2}}}}return 2}(e,t,n);if(0!==a&&""!==r.search){let n=new URL(r.pathname,location.origin),a=(0,s.createCacheKey)(n.href,r.nextUrl),l=(0,o.readOrCreateRouteCacheEntry)(e,t,a);switch(l.status){case o.EntryStatus.Empty:N(t)&&(l.status=o.EntryStatus.Pending,j((0,o.fetchRouteOnCacheMiss)(l,t,a)));case o.EntryStatus.Pending:case o.EntryStatus.Fulfilled:case o.EntryStatus.Rejected:}}return a}(e,t),n=t.hasBackgroundWork;switch(t.hasBackgroundWork=!1,t.spawnedRuntimePrefetches=null,r){case 0:return;case 1:V(h),t=$(h);continue;case 2:1===t.phase?(t.phase=0,K(h,t)):n?(t.priority=c.PrefetchPriority.Background,K(h,t)):V(h),t=$(h);continue}}}function N(e){return e.priority===c.PrefetchPriority.Background||(e.hasBackgroundWork=!0,!1)}function U(e,t,r,n,a){C(e,t,r,r.metadata,!1,n,a===c.FetchStrategy.LoadingBoundary?c.FetchStrategy.Full:a)}function C(e,t,r,n,a,l,u){let i=(0,o.readOrCreateSegmentCacheEntry)(e,u,r,n),s=null;switch(i.status){case o.EntryStatus.Empty:s=(0,o.upgradeToPendingSegment)(i,u);break;case o.EntryStatus.Fulfilled:i.isPartial&&(0,o.canNewFetchStrategyProvideMoreContent)(i.fetchStrategy,u)&&(s=k(e,r,n,u));break;case o.EntryStatus.Pending:case o.EntryStatus.Rejected:(0,o.canNewFetchStrategyProvideMoreContent)(i.fetchStrategy,u)&&(s=k(e,r,n,u))}let c={};if(null!==n.slots)for(let o in n.slots){let i=n.slots[o];c[o]=C(e,t,r,i,a||null!==s,l,u)}null!==s&&l.set(n.requestKey,s);let f=a||null===s?null:"refetch";return[n.segment,c,null,f,n.isRootLayout]}function F(e,t,r,n,a,l){switch(n.status){case o.EntryStatus.Empty:j((0,o.fetchSegmentOnCacheMiss)(r,(0,o.upgradeToPendingSegment)(n,c.FetchStrategy.PPR),a,l));break;case o.EntryStatus.Pending:switch(n.fetchStrategy){case c.FetchStrategy.PPR:case c.FetchStrategy.PPRRuntime:case c.FetchStrategy.Full:break;case c.FetchStrategy.LoadingBoundary:N(t)&&I(e,r,a,l);break;default:n.fetchStrategy}break;case o.EntryStatus.Rejected:switch(n.fetchStrategy){case c.FetchStrategy.PPR:case c.FetchStrategy.PPRRuntime:case c.FetchStrategy.Full:break;case c.FetchStrategy.LoadingBoundary:I(e,r,a,l);break;default:n.fetchStrategy}case o.EntryStatus.Fulfilled:}}function I(e,t,r,n){let a=(0,o.readOrCreateRevalidatingSegmentEntry)(e,c.FetchStrategy.PPR,t,n);switch(a.status){case o.EntryStatus.Empty:L(j((0,o.fetchSegmentOnCacheMiss)(t,(0,o.upgradeToPendingSegment)(a,c.FetchStrategy.PPR),r,n)),(0,i.getSegmentVaryPathForRequest)(c.FetchStrategy.PPR,n));case o.EntryStatus.Pending:case o.EntryStatus.Fulfilled:case o.EntryStatus.Rejected:}}function k(e,t,r,n){let a=(0,o.readOrCreateRevalidatingSegmentEntry)(e,n,t,r);if(a.status===o.EntryStatus.Empty){let e=(0,o.upgradeToPendingSegment)(a,n);return L((0,o.waitForSegmentCacheEntry)(e),(0,i.getSegmentVaryPathForRequest)(n,r)),e}if((0,o.canNewFetchStrategyProvideMoreContent)(a.fetchStrategy,n)){let e=(0,o.overwriteRevalidatingSegmentCacheEntry)(n,t,r),a=(0,o.upgradeToPendingSegment)(e,n);return L((0,o.waitForSegmentCacheEntry)(a),(0,i.getSegmentVaryPathForRequest)(n,r)),a}switch(a.status){case o.EntryStatus.Pending:case o.EntryStatus.Fulfilled:case o.EntryStatus.Rejected:default:return null}}let D=()=>{};function L(e,t){e.then(e=>{null!==e&&(0,o.upsertSegmentEntry)(Date.now(),t,e)},D)}function x(e,t,r){return r===f.PAGE_SEGMENT_KEY?t===(0,f.addSearchParamsIfPageSegment)(f.PAGE_SEGMENT_KEY,Object.fromEntries(new URLSearchParams(e.renderedSearch))):(0,u.matchSegment)(r,t)}function H(e,t){let r=t.priority-e.priority;if(0!==r)return r;let n=t.phase-e.phase;return 0!==n?n:t.sortId-e.sortId}function B(e,t){let r=e.length;e.push(t),t._heapIndex=r,q(e,t,r)}function $(e){return 0===e.length?null:e[0]}function V(e){if(0===e.length)return null;let t=e[0];t._heapIndex=-1;let r=e.pop();return r!==t&&(e[0]=r,r._heapIndex=0,G(e,r,0)),t}function K(e,t){let r=t._heapIndex;-1!==r&&(0===r?G(e,t,0):H(e[r-1>>>1],t)>0?q(e,t,r):G(e,t,r))}function q(e,t,r){let n=r;for(;n>0;){let r=n-1>>>1,a=e[r];if(!(H(a,t)>0))return;e[r]=t,t._heapIndex=r,e[n]=a,a._heapIndex=n,n=r}}function G(e,t,r){let n=r,a=e.length,l=a>>>1;for(;n<l;){let r=(n+1)*2-1,l=e[r],u=r+1,o=e[u];if(0>H(l,t))u<a&&0>H(o,l)?(e[n]=o,o._heapIndex=n,e[u]=t,t._heapIndex=u,n=u):(e[n]=l,l._heapIndex=n,e[r]=t,t._heapIndex=r,n=r);else{if(!(u<a&&0>H(o,t)))return;e[n]=o,o._heapIndex=n,e[u]=t,t._heapIndex=u,n=u}}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},72463,(e,t,r)=>{"use strict";function n(e){let t=e.indexOf("#"),r=e.indexOf("?"),n=r>-1&&(t<0||r<t);return n||t>-1?{pathname:e.substring(0,n?r:t),query:n?e.substring(r,t>-1?t:void 0):"",hash:t>-1?e.slice(t):""}:{pathname:e,query:"",hash:""}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"parsePath",{enumerable:!0,get:function(){return n}})},41858,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"addPathPrefix",{enumerable:!0,get:function(){return a}});let n=e.r(72463);function a(e,t){if(!e.startsWith("/")||!t)return e;let{pathname:r,query:a,hash:l}=(0,n.parsePath)(e);return`${t}${r}${a}${l}`}},38281,(e,t,r)=>{"use strict";function n(e){return e.replace(/\/$/,"")||"/"}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"removeTrailingSlash",{enumerable:!0,get:function(){return n}})},82823,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"normalizePathTrailingSlash",{enumerable:!0,get:function(){return l}});let n=e.r(38281),a=e.r(72463),l=e=>{if(!e.startsWith("/"))return e;let{pathname:t,query:r,hash:l}=(0,a.parsePath)(e);return`${(0,n.removeTrailingSlash)(t)}${r}${l}`};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},5550,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"addBasePath",{enumerable:!0,get:function(){return l}});let n=e.r(41858),a=e.r(82823);function l(e,t){return(0,a.normalizePathTrailingSlash)((0,n.addPathPrefix)(e,""))}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},57630,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={createPrefetchURL:function(){return i},isExternalURL:function(){return o}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(82604),u=e.r(5550);function o(e){return e.origin!==window.location.origin}function i(e){let t;if((0,l.isBot)(window.navigator.userAgent))return null;try{t=new URL((0,u.addBasePath)(e),window.location.href)}catch(t){throw Object.defineProperty(Error(`Cannot prefetch '${e}' because it cannot be converted to a URL.`),"__NEXT_ERROR_CODE",{value:"E234",enumerable:!1,configurable:!0})}return o(t)?null:t}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},91949,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={IDLE_LINK_STATUS:function(){return f},PENDING_LINK_STATUS:function(){return c},mountFormInstance:function(){return R},mountLinkInstance:function(){return b},onLinkVisibilityChanged:function(){return P},onNavigationIntent:function(){return E},pingVisibleLinks:function(){return O},setLinkForCurrentNavigation:function(){return d},unmountLinkForCurrentNavigation:function(){return h},unmountPrefetchableInstance:function(){return m}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(9396),u=e.r(77048),o=e.r(77709),i=e.r(71645),s=null,c={pending:!0},f={pending:!1};function d(e){(0,i.startTransition)(()=>{s?.setOptimisticLinkStatus(f),e?.setOptimisticLinkStatus(c),s=e})}function h(e){s===e&&(s=null)}let p="function"==typeof WeakMap?new WeakMap:new Map,y=new Set,g="function"==typeof IntersectionObserver?new IntersectionObserver(function(e){for(let t of e){let e=t.intersectionRatio>0;P(t.target,e)}},{rootMargin:"200px"}):null;function v(e,t){void 0!==p.get(e)&&m(e),p.set(e,t),null!==g&&g.observe(e)}function _(t){if(!("u">typeof window))return null;{let{createPrefetchURL:r}=e.r(57630);try{return r(t)}catch{return("function"==typeof reportError?reportError:console.error)(`Cannot prefetch '${t}' because it cannot be converted to a URL.`),null}}}function b(e,t,r,n,a,l){if(a){let a=_(t);if(null!==a){let t={router:r,fetchStrategy:n,isVisible:!1,prefetchTask:null,prefetchHref:a.href,setOptimisticLinkStatus:l};return v(e,t),t}}return{router:r,fetchStrategy:n,isVisible:!1,prefetchTask:null,prefetchHref:null,setOptimisticLinkStatus:l}}function R(e,t,r,n){let a=_(t);null===a||v(e,{router:r,fetchStrategy:n,isVisible:!1,prefetchTask:null,prefetchHref:a.href,setOptimisticLinkStatus:null})}function m(e){let t=p.get(e);if(void 0!==t){p.delete(e),y.delete(t);let r=t.prefetchTask;null!==r&&(0,o.cancelPrefetchTask)(r)}null!==g&&g.unobserve(e)}function P(e,t){let r=p.get(e);void 0!==r&&(r.isVisible=t,t?y.add(r):y.delete(r),S(r,l.PrefetchPriority.Default))}function E(e,t){let r=p.get(e);void 0!==r&&void 0!==r&&S(r,l.PrefetchPriority.Intent)}function S(t,r){if("u">typeof window){let n=t.prefetchTask;if(!t.isVisible){null!==n&&(0,o.cancelPrefetchTask)(n);return}let{getCurrentAppRouterState:a}=e.r(99781),l=a();if(null!==l){let e=l.tree;if(null===n){let n=l.nextUrl,a=(0,u.createCacheKey)(t.prefetchHref,n);t.prefetchTask=(0,o.schedulePrefetchTask)(a,e,t.fetchStrategy,r,null)}else(0,o.reschedulePrefetchTask)(n,e,t.fetchStrategy,r)}}}function O(e,t){for(let r of y){let n=r.prefetchTask;if(null!==n&&!(0,o.isPrefetchTaskDirty)(n,e,t))continue;null!==n&&(0,o.cancelPrefetchTask)(n);let a=(0,u.createCacheKey)(r.prefetchHref,e);r.prefetchTask=(0,o.schedulePrefetchTask)(a,t,r.fetchStrategy,l.PrefetchPriority.Default,null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},39470,(e,t,r)=>{"use strict";function n(){let e,t,r=new Promise((r,n)=>{e=r,t=n});return{resolve:e,reject:t,promise:r}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createPromiseWithResolvers",{enumerable:!0,get:function(){return n}})},20896,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n,a={EntryStatus:function(){return S},canNewFetchStrategyProvideMoreContent:function(){return ea},convertRouteTreeToFlightRouterState:function(){return function e(t){let r={};if(null!==t.slots)for(let n in t.slots)r[n]=e(t.slots[n]);return[t.segment,r,null,null,t.isRootLayout]}},createDetachedSegmentCacheEntry:function(){return V},fetchRouteOnCacheMiss:function(){return Y},fetchSegmentOnCacheMiss:function(){return Q},fetchSegmentPrefetchesUsingDynamicRequest:function(){return J},getCurrentCacheVersion:function(){return A},getStaleTimeMs:function(){return E},overwriteRevalidatingSegmentCacheEntry:function(){return B},pingInvalidationListeners:function(){return U},readOrCreateRevalidatingSegmentEntry:function(){return H},readOrCreateRouteCacheEntry:function(){return k},readOrCreateSegmentCacheEntry:function(){return x},readRouteCacheEntry:function(){return C},readSegmentCacheEntry:function(){return F},requestOptimisticRouteCacheEntry:function(){return D},revalidateEntireCache:function(){return N},upgradeToPendingSegment:function(){return K},upsertSegmentEntry:function(){return $},waitForSegmentCacheEntry:function(){return I}};for(var l in a)Object.defineProperty(r,l,{enumerable:!0,get:a[l]});let u=e.r(22744),o=e.r(21768),i=e.r(87288),s=e.r(77709),c=e.r(56655),f=e.r(14297),d=e.r(51191),h=e.r(77048),p=e.r(33906),y=e.r(511),g=e.r(67764),v=e.r(50590),_=e.r(54069),b=e.r(91949),R=e.r(13258),m=e.r(9396),P=e.r(39470);function E(e){return 1e3*Math.max(e,30)}var S=((n={})[n.Empty=0]="Empty",n[n.Pending=1]="Pending",n[n.Fulfilled=2]="Fulfilled",n[n.Rejected=3]="Rejected",n);let O=["",{},null,"metadata-only"],T=(0,y.createCacheMap)(),j=(0,y.createCacheMap)(),w=null,M=0;function A(){return M}function N(e,t){M++,(0,s.startRevalidationCooldown)(),(0,b.pingVisibleLinks)(e,t),U(e,t)}function U(e,t){if(null!==w){let r=w;for(let n of(w=null,r))(0,s.isPrefetchTaskDirty)(n,e,t)&&function(e){let t=e.onInvalidate;if(null!==t){e.onInvalidate=null;try{t()}catch(e){"function"==typeof reportError?reportError(e):console.error(e)}}}(n)}}function C(e,t){let r=(0,c.getRouteVaryPath)(t.pathname,t.search,t.nextUrl);return(0,y.getFromCacheMap)(e,M,T,r,!1)}function F(e,t){return(0,y.getFromCacheMap)(e,M,j,t,!1)}function I(e){let t=e.promise;return null===t&&(t=e.promise=(0,P.createPromiseWithResolvers)()),t.promise}function k(e,t,r){null!==t.onInvalidate&&(null===w?w=new Set([t]):w.add(t));let n=C(e,r);if(null!==n)return n;let a={canonicalUrl:null,status:0,blockedTasks:null,tree:null,metadata:null,couldBeIntercepted:!0,isPPREnabled:!1,renderedSearch:null,ref:null,size:0,staleAt:1/0,version:M},l=(0,c.getRouteVaryPath)(r.pathname,r.search,r.nextUrl);return(0,y.setInCacheMap)(T,l,a,!1),a}function D(e,t,r){let n=t.search;if(""===n)return null;let a=new URL(t);a.search="";let l=C(e,(0,h.createCacheKey)(a.href,r));if(null===l||2!==l.status)return null;let u=new URL(l.canonicalUrl,t.origin),o=""!==u.search?u.search:n,i=""!==l.renderedSearch?l.renderedSearch:n,s=new URL(l.canonicalUrl,location.origin);return s.search=o,{canonicalUrl:(0,d.createHrefFromUrl)(s),status:2,blockedTasks:null,tree:L(l.tree,i),metadata:L(l.metadata,i),couldBeIntercepted:l.couldBeIntercepted,isPPREnabled:l.isPPREnabled,renderedSearch:i,ref:null,size:0,staleAt:l.staleAt,version:l.version}}function L(e,t){let r=null,n=e.slots;if(null!==n)for(let e in r={},n){let a=n[e];r[e]=L(a,t)}return e.isPage?{requestKey:e.requestKey,segment:e.segment,varyPath:(0,c.clonePageVaryPathWithNewSearchParams)(e.varyPath,t),isPage:!0,slots:r,isRootLayout:e.isRootLayout,hasLoadingBoundary:e.hasLoadingBoundary,hasRuntimePrefetch:e.hasRuntimePrefetch}:{requestKey:e.requestKey,segment:e.segment,varyPath:e.varyPath,isPage:!1,slots:r,isRootLayout:e.isRootLayout,hasLoadingBoundary:e.hasLoadingBoundary,hasRuntimePrefetch:e.hasRuntimePrefetch}}function x(e,t,r,n){let a=F(e,n.varyPath);if(null!==a)return a;let l=(0,c.getSegmentVaryPathForRequest)(t,n),u=V(r.staleAt);return(0,y.setInCacheMap)(j,l,u,!1),u}function H(e,t,r,n){var a;let l=(a=n.varyPath,(0,y.getFromCacheMap)(e,M,j,a,!0));if(null!==l)return l;let u=(0,c.getSegmentVaryPathForRequest)(t,n),o=V(r.staleAt);return(0,y.setInCacheMap)(j,u,o,!0),o}function B(e,t,r){let n=(0,c.getSegmentVaryPathForRequest)(e,r),a=V(t.staleAt);return(0,y.setInCacheMap)(j,n,a,!0),a}function $(e,t,r){if((0,y.isValueExpired)(e,M,r))return null;let n=F(e,t);if(null!==n){var a;if(r.fetchStrategy!==n.fetchStrategy&&(a=n.fetchStrategy,!(a<r.fetchStrategy))||!n.isPartial&&r.isPartial)return r.status=3,r.loading=null,r.rsc=null,null;(0,y.deleteFromCacheMap)(n)}return(0,y.setInCacheMap)(j,t,r,!1),r}function V(e){return{status:0,fetchStrategy:m.FetchStrategy.PPR,rsc:null,loading:null,isPartial:!0,promise:null,ref:null,size:0,staleAt:e,version:0}}function K(e,t){return e.status=1,e.fetchStrategy=t,t===m.FetchStrategy.Full&&(e.isPartial=!1),e.version=M,e}function q(e){let t=e.blockedTasks;if(null!==t){for(let e of t)(0,s.pingPrefetchTask)(e);e.blockedTasks=null}}function G(e,t,r,n,a,l,o,i){let s={requestKey:g.HEAD_REQUEST_KEY,segment:g.HEAD_REQUEST_KEY,varyPath:r,isPage:!0,slots:null,isRootLayout:!1,hasLoadingBoundary:u.HasLoadingBoundary.SubtreeHasNoLoadingBoundary,hasRuntimePrefetch:!1};return e.status=2,e.tree=t,e.metadata=s,e.staleAt=n,e.couldBeIntercepted=a,e.canonicalUrl=l,e.renderedSearch=o,e.isPPREnabled=i,q(e),e}function W(e,t,r,n,a){return e.status=2,e.rsc=t,e.loading=r,e.staleAt=n,e.isPartial=a,null!==e.promise&&(e.promise.resolve(e),e.promise=null),e}function z(e,t){e.status=3,e.staleAt=t,q(e)}function X(e,t){e.status=3,e.staleAt=t,null!==e.promise&&(e.promise.resolve(null),e.promise=null)}async function Y(e,t,r){let n=r.pathname,a=r.search,l=r.nextUrl,s={[o.RSC_HEADER]:"1",[o.NEXT_ROUTER_PREFETCH_HEADER]:"1",[o.NEXT_ROUTER_SEGMENT_PREFETCH_HEADER]:"/_tree"};null!==l&&(s[o.NEXT_URL]=l);try{let r,h,b=new URL(n+a,location.origin);if(r=await er(b,s),h=null!==r&&r.redirected?new URL(r.url):b,!r||!r.ok||204===r.status||!r.body)return z(e,Date.now()+1e4),null;let S=(0,d.createHrefFromUrl)(h),O=r.headers.get("vary"),j=null!==O&&O.includes(o.NEXT_URL),w=(0,P.createPromiseWithResolvers)(),M="2"===r.headers.get(o.NEXT_DID_POSTPONE_HEADER);if(M){let t,n,a=en(r.body,w.resolve,function(t){(0,y.setSizeInCacheMap)(e,t)}),l=await (0,i.createFromNextReadableStream)(a,s);if(l.buildId!==(0,f.getAppBuildId)())return z(e,Date.now()+1e4),null;let o=(0,p.getRenderedPathname)(r),d=(0,p.getRenderedSearch)(r),h={metadataVaryPath:null},v=(t=o.split("/").filter(e=>""!==e),n=g.ROOT_SEGMENT_REQUEST_KEY,function e(t,r,n,a,l,o,i,s){let f,d,h=null,y=t.slots;if(null!==y)for(let t in f=!1,d=(0,c.finalizeLayoutVaryPath)(a,n),h={},y){let r,u,f,d=y[t],v=d.name,_=d.paramType,b=d.paramKey;if(null!==_){let e=(0,p.parseDynamicParamFromURLPart)(_,l,o),t=null!==b?b:(0,p.getCacheKeyForDynamicParam)(e,"");f=(0,c.appendLayoutVaryPath)(n,t),u=[v,t,_],r=!0}else f=n,u=v,r=(0,p.doesStaticSegmentAppearInURL)(v);let R=r?o+1:o,m=(0,g.createSegmentRequestKeyPart)(u),P=(0,g.appendSegmentRequestKeyPart)(a,t,m);h[t]=e(d,u,f,P,l,R,i,s)}else a.endsWith(R.PAGE_SEGMENT_KEY)?(f=!0,d=(0,c.finalizePageVaryPath)(a,i,n),null===s.metadataVaryPath&&(s.metadataVaryPath=(0,c.finalizeMetadataVaryPath)(a,i,n))):(f=!1,d=(0,c.finalizeLayoutVaryPath)(a,n));return{requestKey:a,segment:r,varyPath:d,isPage:f,slots:h,isRootLayout:t.isRootLayout,hasLoadingBoundary:u.HasLoadingBoundary.SegmentHasLoadingBoundary,hasRuntimePrefetch:t.hasRuntimePrefetch}}(l.tree,n,null,g.ROOT_SEGMENT_REQUEST_KEY,t,0,d,h)),_=h.metadataVaryPath;if(null===_)return z(e,Date.now()+1e4),null;let b=E(l.staleTime);G(e,v,_,Date.now()+b,j,S,d,M)}else{let n=en(r.body,w.resolve,function(t){(0,y.setSizeInCacheMap)(e,t)}),a=await (0,i.createFromNextReadableStream)(n,s);if(a.b!==(0,f.getAppBuildId)())return z(e,Date.now()+1e4),null;!function(e,t,r,n,a,l,i,s,f){let d=(0,p.getRenderedSearch)(n),h=(0,v.normalizeFlightData)(a.f);if("string"==typeof h||1!==h.length)return z(l,e+1e4);let y=h[0];if(!y.isRootRender)return z(l,e+1e4);let b=y.tree,m="number"==typeof a.rp?.[1]?a.rp[1]:parseInt(n.headers.get(o.NEXT_ROUTER_STALE_TIME_HEADER)??"",10),P=isNaN(m)?_.STATIC_STALETIME_MS:E(m),S="1"===n.headers.get(o.NEXT_DID_POSTPONE_HEADER),O={metadataVaryPath:null},T=function e(t,r,n,a,l){let o,i,s,f,d=t[0];if(Array.isArray(d)){s=!1;let e=d[1];i=(0,c.appendLayoutVaryPath)(n,e),f=(0,c.finalizeLayoutVaryPath)(r,i),o=d}else i=n,r.endsWith(R.PAGE_SEGMENT_KEY)?(s=!0,o=R.PAGE_SEGMENT_KEY,f=(0,c.finalizePageVaryPath)(r,a,i),null===l.metadataVaryPath&&(l.metadataVaryPath=(0,c.finalizeMetadataVaryPath)(r,a,i))):(s=!1,o=d,f=(0,c.finalizeLayoutVaryPath)(r,i));let h=null,p=t[1];for(let t in p){let n=p[t],u=n[0],o=(0,g.createSegmentRequestKeyPart)(u),s=e(n,(0,g.appendSegmentRequestKeyPart)(r,t,o),i,a,l);null===h?h={[t]:s}:h[t]=s}return{requestKey:r,segment:o,varyPath:f,isPage:s,slots:h,isRootLayout:!0===t[4],hasLoadingBoundary:void 0!==t[5]?t[5]:u.HasLoadingBoundary.SubtreeHasNoLoadingBoundary,hasRuntimePrefetch:!1}}(b,g.ROOT_SEGMENT_REQUEST_KEY,null,d,O),j=O.metadataVaryPath;if(null===j)return z(l,e+1e4);let w=G(l,T,j,e+P,i,s,d,f);ee(e,t,r,n,a,S,w,null)}(Date.now(),t,m.FetchStrategy.LoadingBoundary,r,a,e,j,S,M)}if(!j){let t=(0,c.getFulfilledRouteVaryPath)(n,a,l,j);(0,y.setInCacheMap)(T,t,e,!1)}return{value:null,closed:w.promise}}catch(t){return z(e,Date.now()+1e4),null}}async function Q(e,t,r,n){let a=new URL(e.canonicalUrl,location.origin),l=r.nextUrl,u=n.requestKey,s=u===g.ROOT_SEGMENT_REQUEST_KEY?"/_index":u,c={[o.RSC_HEADER]:"1",[o.NEXT_ROUTER_PREFETCH_HEADER]:"1",[o.NEXT_ROUTER_SEGMENT_PREFETCH_HEADER]:s};null!==l&&(c[o.NEXT_URL]=l);try{let r=await er(a,c);if(!r||!r.ok||204===r.status||"2"!==r.headers.get(o.NEXT_DID_POSTPONE_HEADER)||!r.body)return X(t,Date.now()+1e4),null;let n=(0,P.createPromiseWithResolvers)(),l=en(r.body,n.resolve,function(e){(0,y.setSizeInCacheMap)(t,e)}),u=await (0,i.createFromNextReadableStream)(l,c);if(u.buildId!==(0,f.getAppBuildId)())return X(t,Date.now()+1e4),null;return{value:W(t,u.rsc,u.loading,e.staleAt,u.isPartial),closed:n.promise}}catch(e){return X(t,Date.now()+1e4),null}}async function J(e,t,r,n,a){let l=e.key,u=new URL(t.canonicalUrl,location.origin),s=l.nextUrl;1===a.size&&a.has(t.metadata.requestKey)&&(n=O);let c={[o.RSC_HEADER]:"1",[o.NEXT_ROUTER_STATE_TREE_HEADER]:(0,v.prepareFlightRouterStateForRequest)(n)};switch(null!==s&&(c[o.NEXT_URL]=s),r){case m.FetchStrategy.Full:break;case m.FetchStrategy.PPRRuntime:c[o.NEXT_ROUTER_PREFETCH_HEADER]="2";break;case m.FetchStrategy.LoadingBoundary:c[o.NEXT_ROUTER_PREFETCH_HEADER]="1"}try{let n=await er(u,c);if(!n||!n.ok||!n.body||(0,p.getRenderedSearch)(n)!==t.renderedSearch)return Z(a,Date.now()+1e4),null;let l=(0,P.createPromiseWithResolvers)(),o=null,s=en(n.body,l.resolve,function(e){if(null===o)return;let t=e/o.length;for(let e of o)(0,y.setSizeInCacheMap)(e,t)}),f=await (0,i.createFromNextReadableStream)(s,c),d=r===m.FetchStrategy.PPRRuntime&&f.rp?.[0]===!0;return o=ee(Date.now(),e,r,n,f,d,t,a),{value:null,closed:l.promise}}catch(e){return Z(a,Date.now()+1e4),null}}function Z(e,t){let r=[];for(let n of e.values())1===n.status?X(n,t):2===n.status&&r.push(n);return r}function ee(e,t,r,n,a,l,u,i){if(a.b!==(0,f.getAppBuildId)())return null!==i&&Z(i,e+1e4),null;let s=(0,v.normalizeFlightData)(a.f);if("string"==typeof s)return null;let c="number"==typeof a.rp?.[1]?a.rp[1]:parseInt(n.headers.get(o.NEXT_ROUTER_STALE_TIME_HEADER)??"",10),d=e+(isNaN(c)?_.STATIC_STALETIME_MS:E(c));for(let n of s){let a=n.seedData;if(null!==a){let o=n.segmentPath,s=u.tree;for(let t=0;t<o.length;t+=2){let r=o[t];if(s?.slots?.[r]===void 0)return null!==i&&Z(i,e+1e4),null;s=s.slots[r]}!function e(t,r,n,a,l,u,o,i,s){let c=o[0];et(t,n,a,c,o[2],null===c||i,u,l,s);let f=l.slots;if(null!==f){let l=o[1];for(let o in f){let c=f[o],d=l[o];null!=d&&e(t,r,n,a,c,u,d,i,s)}}}(e,t,r,u,s,d,a,l,i)}let o=n.head;null!==o&&et(e,r,u,o,null,n.isHeadPartial,d,u.metadata,i)}return null!==i?Z(i,e+1e4):null}function et(e,t,r,n,a,l,u,o,i){let s=null!==i?i.get(o.requestKey):void 0;if(void 0!==s)W(s,n,a,u,l);else{let i=x(e,t,r,o);if(0===i.status)W(K(i,t),n,a,u,l);else{let r=W(K(V(u),t),n,a,u,l);$(e,(0,c.getSegmentVaryPathForRequest)(t,o),r)}}}async function er(e,t){let r=await (0,i.createFetch)(e,t,"low",!1);if(!r.ok)return null;{let e=r.headers.get("content-type");if(!(e&&e.startsWith(o.RSC_CONTENT_TYPE_HEADER)))return null}return r}function en(e,t,r){let n=0,a=e.getReader();return new ReadableStream({async pull(e){for(;;){let{done:l,value:u}=await a.read();if(!l){e.enqueue(u),r(n+=u.byteLength);continue}t();return}}})}function ea(e,t){return e<t}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},60355,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={convertServerPatchToFullTree:function(){return R},navigate:function(){return d},navigateToSeededRoute:function(){return h}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(87288),u=e.r(95871),o=e.r(51191),i=e.r(20896),s=e.r(77048),c=e.r(13258),f=e.r(9396);function d(e,t,r,n,a,l,u,o){let c=Date.now(),d=e.href,h=d===t.href,y=(0,s.createCacheKey)(d,a),_=(0,i.readRouteCacheEntry)(c,y);if(null!==_&&_.status===i.EntryStatus.Fulfilled){let o=g(c,_,_.tree),i=o.flightRouterState,s=o.seedData,f=v(c,_),d=f.rsc,y=f.isPartial,b=_.canonicalUrl+e.hash;return p(c,e,t,a,h,r,n,i,s,d,y,b,_.renderedSearch,l,u)}if(null===_||_.status!==i.EntryStatus.Rejected){let o=(0,i.requestOptimisticRouteCacheEntry)(c,e,a);if(null!==o){let i=g(c,o,o.tree),s=i.flightRouterState,f=i.seedData,d=v(c,o),y=d.rsc,_=d.isPartial,b=o.canonicalUrl+e.hash;return p(c,e,t,a,h,r,n,s,f,y,_,b,o.renderedSearch,l,u)}}let R=o.collectedDebugInfo??[];return void 0===o.collectedDebugInfo&&(R=o.collectedDebugInfo=[]),{tag:f.NavigationResultTag.Async,data:b(c,e,t,a,r,n,l,u,R)}}function h(e,t,r,n,a,l,o,i,s,c){let d={scrollableSegments:null,separateRefreshUrls:null},h=t.href===a.href,p=(0,u.startPPRNavigation)(e,a,l,o,n.tree,i,n.data,n.head,null,null,!1,h,d);return null!==p?((0,u.spawnDynamicRequests)(p,t,s,i,d),y(p,r,n.renderedSearch,d.scrollableSegments,c,t.hash)):{tag:f.NavigationResultTag.MPA,data:r}}function p(e,t,r,n,a,l,o,i,s,c,d,h,p,g,v){let _={scrollableSegments:null,separateRefreshUrls:null},b=(0,u.startPPRNavigation)(e,r,l,o,i,g,null,null,s,c,d,a,_);return null!==b?((0,u.spawnDynamicRequests)(b,t,n,g,_),y(b,h,p,_.scrollableSegments,v,t.hash)):{tag:f.NavigationResultTag.MPA,data:h}}function y(e,t,r,n,a,l){return{tag:f.NavigationResultTag.Success,data:{flightRouterState:e.route,cacheNode:e.node,canonicalUrl:t,renderedSearch:r,scrollableSegments:n,shouldScroll:a,hash:l}}}function g(e,t,r){let n={},a={},l=r.slots;if(null!==l)for(let r in l){let u=g(e,t,l[r]);n[r]=u.flightRouterState,a[r]=u.seedData}let u=null,o=null,s=!0,f=(0,i.readSegmentCacheEntry)(e,r.varyPath);if(null!==f)switch(f.status){case i.EntryStatus.Fulfilled:u=f.rsc,o=f.loading,s=f.isPartial;break;case i.EntryStatus.Pending:{let e=(0,i.waitForSegmentCacheEntry)(f);u=e.then(e=>null!==e?e.rsc:null),o=e.then(e=>null!==e?e.loading:null),s=f.isPartial}case i.EntryStatus.Empty:case i.EntryStatus.Rejected:}return{flightRouterState:[(0,c.addSearchParamsIfPageSegment)(r.segment,Object.fromEntries(new URLSearchParams(t.renderedSearch))),n,null,null,r.isRootLayout],seedData:[u,a,o,s,!1]}}function v(e,t){let r=null,n=!0,a=(0,i.readSegmentCacheEntry)(e,t.metadata.varyPath);if(null!==a)switch(a.status){case i.EntryStatus.Fulfilled:r=a.rsc,n=a.isPartial;break;case i.EntryStatus.Pending:r=(0,i.waitForSegmentCacheEntry)(a).then(e=>null!==e?e.rsc:null),n=a.isPartial;case i.EntryStatus.Empty:case i.EntryStatus.Rejected:}return{rsc:r,isPartial:n}}let _=["",{},null,"refetch"];async function b(e,t,r,n,a,i,s,c,d){let p;switch(s){case u.FreshnessPolicy.Default:case u.FreshnessPolicy.HistoryTraversal:p=i;break;case u.FreshnessPolicy.Hydration:case u.FreshnessPolicy.RefreshAll:case u.FreshnessPolicy.HMRRefresh:p=_;break;default:p=i}let y=(0,l.fetchServerResponse)(t,{flightRouterState:p,nextUrl:n}),g=await y;if("string"==typeof g)return{tag:f.NavigationResultTag.MPA,data:g};let{flightData:v,canonicalUrl:b,renderedSearch:m,debugInfo:P}=g;null!==P&&d.push(...P);let E=R(i,v,m);return h(e,t,(0,o.createHrefFromUrl)(b),E,r,a,i,s,n,c)}function R(e,t,r){let n=e,a=null,l=null;for(let{segmentPath:e,tree:r,seedData:u,head:o}of t){let t=function e(t,r,n,a,l,u){let o;if(u===l.length)return{tree:n,data:a};let i=l[u],s=t[1],c=null!==r?r[1]:null,f={},d={};for(let t in s){let r=s[t],o=null!==c?c[t]??null:null;if(t===i){let i=e(r,o,n,a,l,u+2);f[t]=i.tree,d[t]=i.data}else f[t]=r,d[t]=o}return o=[t[0],f],2 in t&&(o[2]=t[2]),3 in t&&(o[3]=t[3]),4 in t&&(o[4]=t[4]),{tree:o,data:[null,d,null,!0,!1]}}(n,a,r,u,e,0);n=t.tree,a=t.data,l=o}return{tree:n,data:a,renderedSearch:r,head:l}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},54069,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DYNAMIC_STALETIME_MS:function(){return f},STATIC_STALETIME_MS:function(){return d},generateSegmentsFromPatch:function(){return function e(t){let r=[],[n,a]=t;if(0===Object.keys(a).length)return[[n]];for(let[t,l]of Object.entries(a))for(let a of e(l))""===n?r.push([t,...a]):r.push([n,t,...a]);return r}},handleExternalUrl:function(){return h},handleNavigationResult:function(){return p},navigateReducer:function(){return y}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(51191),u=e.r(47442),o=e.r(60355),i=e.r(9396),s=e.r(20896),c=e.r(95871),f=1e3*Number("0"),d=(0,s.getStaleTimeMs)(Number("300"));function h(e,t,r,n){return t.mpaNavigation=!0,t.canonicalUrl=r,t.pendingPush=n,t.scrollableSegments=void 0,(0,u.handleMutable)(e,t)}function p(e,t,r,n,a){switch(a.tag){case i.NavigationResultTag.MPA:return h(t,r,a.data,n);case i.NavigationResultTag.Success:{r.cache=a.data.cacheNode,r.patchedTree=a.data.flightRouterState,r.renderedSearch=a.data.renderedSearch,r.canonicalUrl=a.data.canonicalUrl,r.scrollableSegments=a.data.scrollableSegments??void 0,r.shouldScroll=a.data.shouldScroll,r.hashFragment=a.data.hash;let n=new URL(t.canonicalUrl,e);return e.pathname===n.pathname&&e.search===n.search&&e.hash!==n.hash&&(r.onlyHashChange=!0,r.shouldScroll=a.data.shouldScroll,r.hashFragment=e.hash,r.scrollableSegments=[]),(0,u.handleMutable)(t,r)}case i.NavigationResultTag.Async:return a.data.then(a=>p(e,t,r,n,a),()=>t);default:return t}}function y(e,t){let{url:r,isExternalUrl:n,navigateType:a,shouldScroll:u}=t,i={},s=(0,l.createHrefFromUrl)(r),f="push"===a;if(i.preserveCustomHistoryState=!1,i.pendingPush=f,n)return h(e,i,r.toString(),f);if(document.getElementById("__next-page-redirect"))return h(e,i,s,f);let d=new URL(e.canonicalUrl,location.origin),y=(0,o.navigate)(r,d,e.cache,e.tree,e.nextUrl,c.FreshnessPolicy.Default,u,i);return p(r,e,i,f,y)}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},84356,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"hasInterceptionRouteInCurrentTree",{enumerable:!0,get:function(){return function e([t,r]){if(Array.isArray(t)&&("di(..)(..)"===t[2]||"ci(..)(..)"===t[2]||"di(.)"===t[2]||"ci(.)"===t[2]||"di(..)"===t[2]||"ci(..)"===t[2]||"di(...)"===t[2]||"ci(...)"===t[2])||"string"==typeof t&&(0,n.isInterceptionRouteAppPath)(t))return!0;if(r){for(let t in r)if(e(r[t]))return!0}return!1}}});let n=e.r(91463);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},69845,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={refreshDynamicData:function(){return f},refreshReducer:function(){return c}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(54069),u=e.r(60355),o=e.r(20896),i=e.r(84356),s=e.r(95871);function c(e){let t=e.nextUrl,r=e.tree;return(0,o.revalidateEntireCache)(t,r),f(e,s.FreshnessPolicy.RefreshAll)}function f(e,t){let r=e.nextUrl,n=(0,i.hasInterceptionRouteInCurrentTree)(e.tree)?e.previousNextUrl||r:null,a=e.canonicalUrl,o=new URL(a,location.origin),s=e.tree,c={tree:e.tree,renderedSearch:e.renderedSearch,data:null,head:null},f=Date.now(),d=(0,u.navigateToSeededRoute)(f,o,a,c,o,e.cache,s,t,n,!0),h={};return h.preserveCustomHistoryState=!1,(0,l.handleNavigationResult)(o,e,h,!1,d)}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},91668,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"serverPatchReducer",{enumerable:!0,get:function(){return i}});let n=e.r(51191),a=e.r(54069),l=e.r(60355),u=e.r(69845),o=e.r(95871);function i(e,t){let r={};r.preserveCustomHistoryState=!1;let i=t.mpa,s=new URL(t.url,location.origin),c=t.seed;if(i||null===c)return(0,a.handleExternalUrl)(e,r,s.href,!1);let f=new URL(e.canonicalUrl,location.origin);if(t.previousTree!==e.tree)return(0,u.refreshReducer)(e);let d=(0,n.createHrefFromUrl)(s),h=t.nextUrl,p=Date.now(),y=(0,l.navigateToSeededRoute)(p,s,d,c,f,e.cache,e.tree,o.FreshnessPolicy.RefreshAll,h,!0);return(0,a.handleNavigationResult)(s,e,r,!1,y)}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},73790,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"restoreReducer",{enumerable:!0,get:function(){return o}});let n=e.r(51191),a=e.r(34727),l=e.r(95871),u=e.r(54069);function o(e,t){let r,o,i=t.historyState;i?(r=i.tree,o=i.renderedSearch):(r=e.tree,o=e.renderedSearch);let s=new URL(e.canonicalUrl,location.origin),c=t.url,f=(0,n.createHrefFromUrl)(c),d=(0,a.extractPathFromFlightRouterState)(r)??c.pathname,h=Date.now(),p={scrollableSegments:null,separateRefreshUrls:null},y=(0,l.startPPRNavigation)(h,s,e.cache,e.tree,r,l.FreshnessPolicy.HistoryTraversal,null,null,null,null,!1,!1,p);return null===y?(0,u.handleExternalUrl)(e,{preserveCustomHistoryState:!0},f,!1):((0,l.spawnDynamicRequests)(y,c,d,l.FreshnessPolicy.HistoryTraversal,p),{canonicalUrl:f,renderedSearch:o,pushRef:{pendingPush:!1,mpaNavigation:!1,preserveCustomHistoryState:!0},focusAndScrollRef:e.focusAndScrollRef,cache:y.node,tree:r,nextUrl:d,previousNextUrl:null,debugInfo:null})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},86720,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"hmrRefreshReducer",{enumerable:!0,get:function(){return l}});let n=e.r(69845),a=e.r(95871);function l(e){return(0,n.refreshDynamicData)(e,a.FreshnessPolicy.HMRRefresh)}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},27801,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"assignLocation",{enumerable:!0,get:function(){return a}});let n=e.r(5550);function a(e,t){if(e.startsWith(".")){let r=t.origin+t.pathname;return new URL((r.endsWith("/")?r:r+"/")+e)}return new URL((0,n.addBasePath)(e),t.href)}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},39584,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"pathHasPrefix",{enumerable:!0,get:function(){return a}});let n=e.r(72463);function a(e,t){if("string"!=typeof e)return!1;let{pathname:r}=(0,n.parsePath)(e);return r===t||r.startsWith(t+"/")}},52817,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"hasBasePath",{enumerable:!0,get:function(){return a}});let n=e.r(39584);function a(e){return(0,n.pathHasPrefix)(e,"")}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},87250,(e,t,r)=>{"use strict";function n(e){return e}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"removeBasePath",{enumerable:!0,get:function(){return n}}),e.r(52817),("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},39747,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={extractInfoFromServerReferenceId:function(){return l},omitUnusedArgs:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});function l(e){let t=parseInt(e.slice(0,2),16),r=t>>1&63,n=Array(6);for(let e=0;e<6;e++){let t=r>>5-e&1;n[e]=1===t}return{type:1==(t>>7&1)?"use-cache":"server-action",usedArgs:n,hasRestArgs:1==(1&t)}}function u(e,t){let r=Array(e.length);for(let n=0;n<e.length;n++)(n<6&&t.usedArgs[n]||n>=6&&t.hasRestArgs)&&(r[n]=e[n]);return r}},39146,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ActionDidNotRevalidate:function(){return l},ActionDidRevalidateDynamicOnly:function(){return o},ActionDidRevalidateStaticAndDynamic:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=0,u=1,o=2},45794,(e,t,r)=>{"use strict";let n;Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"serverActionReducer",{enumerable:!0,get:function(){return j}});let a=e.r(32120),l=e.r(92245),u=e.r(21768),o=e.r(92838),i=e.r(35326),s=e.r(27801),c=e.r(51191),f=e.r(54069),d=e.r(84356),h=e.r(50590),p=e.r(24063),y=e.r(68391),g=e.r(87250),v=e.r(52817),_=e.r(39747),b=e.r(20896),R=e.r(43369),m=e.r(60355),P=e.r(39146),E=e.r(57630),S=e.r(95871),O=i.createFromFetch;async function T(e,t,{actionId:r,actionArgs:c}){let f,d,p,g,v,b=(0,i.createTemporaryReferenceSet)(),m=(0,_.extractInfoFromServerReferenceId)(r),E="use-cache"===m.type?(0,_.omitUnusedArgs)(c,m):c,S=await (0,i.encodeReply)(E,{temporaryReferences:b}),T={Accept:u.RSC_CONTENT_TYPE_HEADER,[u.ACTION_HEADER]:r,[u.NEXT_ROUTER_STATE_TREE_HEADER]:(0,h.prepareFlightRouterStateForRequest)(e.tree)},j=(0,R.getDeploymentId)();j&&(T["x-deployment-id"]=j),t&&(T[u.NEXT_URL]=t);let w=await fetch(e.canonicalUrl,{method:"POST",headers:T,body:S});if("1"===w.headers.get(u.NEXT_ACTION_NOT_FOUND_HEADER))throw Object.defineProperty(new o.UnrecognizedActionError(`Server Action "${r}" was not found on the server.
2
+ Read more: https://nextjs.org/docs/messages/failed-to-find-server-action`),"__NEXT_ERROR_CODE",{value:"E715",enumerable:!1,configurable:!0});let M=w.headers.get("x-action-redirect"),[A,N]=M?.split(";")||[];switch(N){case"push":f=y.RedirectType.push;break;case"replace":f=y.RedirectType.replace;break;default:f=void 0}let U=!!w.headers.get(u.NEXT_IS_PRERENDER_HEADER),C=P.ActionDidNotRevalidate;try{let e=w.headers.get("x-action-revalidated");if(e){let t=JSON.parse(e);(t===P.ActionDidRevalidateStaticAndDynamic||t===P.ActionDidRevalidateDynamicOnly)&&(C=t)}}catch{}let F=A?(0,s.assignLocation)(A,new URL(e.canonicalUrl,window.location.href)):void 0,I=w.headers.get("content-type"),k=!!(I&&I.startsWith(u.RSC_CONTENT_TYPE_HEADER));if(!k&&!F)throw Object.defineProperty(Error(w.status>=400&&"text/plain"===I?await w.text():"An unexpected response was received from the server."),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});if(k){let e=await O(Promise.resolve(w),{callServer:a.callServer,findSourceMapURL:l.findSourceMapURL,temporaryReferences:b,debugChannel:n&&n(T)});d=F?void 0:e.a;let t=(0,h.normalizeFlightData)(e.f);""!==t&&(p=t,g=e.q,v=e.i)}else d=void 0,p=void 0,g=void 0,v=void 0;return{actionResult:d,actionFlightData:p,actionFlightDataRenderedSearch:g,actionFlightDataCouldBeIntercepted:v,redirectLocation:F,redirectType:f,revalidationKind:C,isPrerender:U}}function j(e,t){let{resolve:r,reject:n}=t,a={};a.preserveCustomHistoryState=!1;let l=(e.previousNextUrl||e.nextUrl)&&(0,d.hasInterceptionRouteInCurrentTree)(e.tree)?e.previousNextUrl||e.nextUrl:null;return T(e,l,t).then(async({revalidationKind:u,actionResult:o,actionFlightData:i,actionFlightDataRenderedSearch:s,actionFlightDataCouldBeIntercepted:d,redirectLocation:h,redirectType:p})=>{u!==P.ActionDidNotRevalidate&&(t.didRevalidate=!0,u===P.ActionDidRevalidateStaticAndDynamic&&(0,b.revalidateEntireCache)(l,e.tree));let _=p!==y.RedirectType.replace;if(e.pushRef.pendingPush=_,a.pendingPush=_,void 0!==h){let t=p||y.RedirectType.push;if((0,E.isExternalURL)(h)){let r=h.href;return n(w(r,t)),(0,f.handleExternalUrl)(e,a,r,_)}{let e=(0,c.createHrefFromUrl)(h,!1);n(w((0,v.hasBasePath)(e)?(0,g.removeBasePath)(e):e,t))}}else r(o);if(void 0===h&&u===P.ActionDidNotRevalidate&&void 0===i)return e;if(void 0===i&&void 0!==h)return(0,f.handleExternalUrl)(e,a,h.href,_);if("string"==typeof i)return(0,f.handleExternalUrl)(e,a,i,_);let R=new URL(e.canonicalUrl,location.origin),O=void 0!==h?h:R,T=e.tree,j=u===P.ActionDidNotRevalidate?S.FreshnessPolicy.Default:S.FreshnessPolicy.RefreshAll;if(void 0!==i){let t=i[0];if(void 0!==t&&t.isRootRender&&void 0!==s&&void 0!==d){let r=(0,c.createHrefFromUrl)(O),n={tree:t.tree,renderedSearch:s,data:t.seedData,head:t.head},u=Date.now(),o=(0,m.navigateToSeededRoute)(u,O,r,n,R,e.cache,T,j,l,!0);return(0,f.handleNavigationResult)(O,e,a,_,o)}}let M=(0,m.navigate)(O,R,e.cache,T,l,j,!0,a);return(0,f.handleNavigationResult)(O,e,a,_,M)},t=>(n(t),e))}function w(e,t){let r=(0,p.getRedirectError)(e,t);return r.handled=!0,r}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},4924,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"reducer",{enumerable:!0,get:function(){return c}});let n=e.r(88540),a=e.r(54069),l=e.r(91668),u=e.r(73790),o=e.r(69845),i=e.r(86720),s=e.r(45794),c="u"<typeof window?function(e,t){return e}:function(e,t){switch(t.type){case n.ACTION_NAVIGATE:return(0,a.navigateReducer)(e,t);case n.ACTION_SERVER_PATCH:return(0,l.serverPatchReducer)(e,t);case n.ACTION_RESTORE:return(0,u.restoreReducer)(e,t);case n.ACTION_REFRESH:return(0,o.refreshReducer)(e);case n.ACTION_HMR_REFRESH:return(0,i.hmrRefreshReducer)(e);case n.ACTION_SERVER_ACTION:return(0,s.serverActionReducer)(e,t);default:throw Object.defineProperty(Error("Unknown action"),"__NEXT_ERROR_CODE",{value:"E295",enumerable:!1,configurable:!0})}};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},1411,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"prefetch",{enumerable:!0,get:function(){return o}});let n=e.r(57630),a=e.r(77048),l=e.r(77709),u=e.r(9396);function o(e,t,r,o,i){let s=(0,n.createPrefetchURL)(e);if(null===s)return;let c=(0,a.createCacheKey)(s.href,t);(0,l.schedulePrefetchTask)(c,r,o,u.PrefetchPriority.Default,i)}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},99781,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={createMutableActionQueue:function(){return _},dispatchNavigateAction:function(){return m},dispatchTraverseAction:function(){return P},getCurrentAppRouterState:function(){return b},publicAppRouterInstance:function(){return E}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(88540),u=e.r(4924),o=e.r(71645),i=e.r(64245),s=e.r(9396),c=e.r(1411),f=e.r(41538),d=e.r(5550),h=e.r(57630),p=e.r(91949);function y(e,t){null!==e.pending?(e.pending=e.pending.next,null!==e.pending&&g({actionQueue:e,action:e.pending,setState:t})):e.needsRefresh&&(e.needsRefresh=!1,e.dispatch({type:l.ACTION_REFRESH},t))}async function g({actionQueue:e,action:t,setState:r}){let n=e.state;e.pending=t;let a=t.payload,u=e.action(n,a);function o(n){if(t.discarded){t.payload.type===l.ACTION_SERVER_ACTION&&t.payload.didRevalidate&&(e.needsRefresh=!0),y(e,r);return}e.state=n,y(e,r),t.resolve(n)}(0,i.isThenable)(u)?u.then(o,n=>{y(e,r),t.reject(n)}):o(u)}let v=null;function _(e,t){let r={state:e,dispatch:(e,t)=>(function(e,t,r){let n={resolve:r,reject:()=>{}};if(t.type!==l.ACTION_RESTORE){let e=new Promise((e,t)=>{n={resolve:e,reject:t}});(0,o.startTransition)(()=>{r(e)})}let a={payload:t,next:null,resolve:n.resolve,reject:n.reject};null===e.pending?(e.last=a,g({actionQueue:e,action:a,setState:r})):t.type===l.ACTION_NAVIGATE||t.type===l.ACTION_RESTORE?(e.pending.discarded=!0,a.next=e.pending.next,g({actionQueue:e,action:a,setState:r})):(null!==e.last&&(e.last.next=a),e.last=a)})(r,e,t),action:async(e,t)=>(0,u.reducer)(e,t),pending:null,last:null,onRouterTransitionStart:null!==t&&"function"==typeof t.onRouterTransitionStart?t.onRouterTransitionStart:null};if("u">typeof window){if(null!==v)throw Object.defineProperty(Error("Internal Next.js Error: createMutableActionQueue was called more than once"),"__NEXT_ERROR_CODE",{value:"E624",enumerable:!1,configurable:!0});v=r}return r}function b(){return null!==v?v.state:null}function R(){return null!==v?v.onRouterTransitionStart:null}function m(e,t,r,n){let a=new URL((0,d.addBasePath)(e),location.href);(0,p.setLinkForCurrentNavigation)(n);let u=R();null!==u&&u(e,t),(0,f.dispatchAppRouterAction)({type:l.ACTION_NAVIGATE,url:a,isExternalUrl:(0,h.isExternalURL)(a),locationSearch:location.search,shouldScroll:r,navigateType:t})}function P(e,t){let r=R();null!==r&&r(e,"traverse"),(0,f.dispatchAppRouterAction)({type:l.ACTION_RESTORE,url:new URL(e),historyState:t})}let E={back:()=>window.history.back(),forward:()=>window.history.forward(),prefetch:(e,t)=>{let r,n=function(){if(null===v)throw Object.defineProperty(Error("Internal Next.js error: Router action dispatched before initialization."),"__NEXT_ERROR_CODE",{value:"E668",enumerable:!1,configurable:!0});return v}();switch(t?.kind??l.PrefetchKind.AUTO){case l.PrefetchKind.AUTO:r=s.FetchStrategy.PPR;break;case l.PrefetchKind.FULL:r=s.FetchStrategy.Full;break;default:r=s.FetchStrategy.PPR}(0,c.prefetch)(e,n.state.nextUrl,n.state.tree,r,t?.onInvalidate??null)},replace:(e,t)=>{(0,o.startTransition)(()=>{m(e,"replace",t?.scroll??!0,null)})},push:(e,t)=>{(0,o.startTransition)(()=>{m(e,"push",t?.scroll??!0,null)})},refresh:()=>{(0,o.startTransition)(()=>{(0,f.dispatchAppRouterAction)({type:l.ACTION_REFRESH})})},hmrRefresh:()=>{throw Object.defineProperty(Error("hmrRefresh can only be used in development mode. Please use refresh instead."),"__NEXT_ERROR_CODE",{value:"E485",enumerable:!1,configurable:!0})}};"u">typeof window&&window.next&&(window.next.router=E),("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},58442,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={RedirectBoundary:function(){return h},RedirectErrorBoundary:function(){return d}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(90809),u=e.r(18050),o=l._(e.r(71645)),i=e.r(76562),s=e.r(24063),c=e.r(68391);function f({redirect:e,reset:t,redirectType:r}){let n=(0,i.useRouter)();return(0,o.useEffect)(()=>{o.default.startTransition(()=>{r===c.RedirectType.push?n.push(e,{}):n.replace(e,{}),t()})},[e,r,t,n]),null}class d extends o.default.Component{constructor(e){super(e),this.state={redirect:null,redirectType:null}}static getDerivedStateFromError(e){if((0,c.isRedirectError)(e)){let t=(0,s.getURLFromRedirectError)(e),r=(0,s.getRedirectTypeFromError)(e);return"handled"in e?{redirect:null,redirectType:null}:{redirect:t,redirectType:r}}throw e}render(){let{redirect:e,redirectType:t}=this.state;return null!==e&&null!==t?(0,u.jsx)(f,{redirect:e,redirectType:t,reset:()=>this.setState({redirect:null})}):this.props.children}}function h({children:e}){let t=(0,i.useRouter)();return(0,u.jsx)(d,{router:t,children:e})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},1244,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unresolvedThenable",{enumerable:!0,get:function(){return n}});let n={then:()=>{}};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},97367,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={MetadataBoundary:function(){return o},OutletBoundary:function(){return s},RootLayoutBoundary:function(){return c},ViewportBoundary:function(){return i}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let l=e.r(54839),u={[l.METADATA_BOUNDARY_NAME]:function({children:e}){return e},[l.VIEWPORT_BOUNDARY_NAME]:function({children:e}){return e},[l.OUTLET_BOUNDARY_NAME]:function({children:e}){return e},[l.ROOT_LAYOUT_BOUNDARY_NAME]:function({children:e}){return e}},o=u[l.METADATA_BOUNDARY_NAME.slice(0)],i=u[l.VIEWPORT_BOUNDARY_NAME.slice(0)],s=u[l.OUTLET_BOUNDARY_NAME.slice(0)],c=u[l.ROOT_LAYOUT_BOUNDARY_NAME.slice(0)]}]);
@@ -0,0 +1,4 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,{otherChunks:["static/chunks/97d384ea34b6283a.js","static/chunks/76c064224d953678.js","static/chunks/f1f489dad7e35d90.js","static/chunks/7de9141b1af425c3.js"],runtimeModuleIds:[94553]}]),(()=>{let e;if(!Array.isArray(globalThis.TURBOPACK))return;let t="/_next/",r=(self.TURBOPACK_CHUNK_SUFFIX??document?.currentScript?.getAttribute?.("src")?.replace(/^(.*(?=\?)|^.*$)/,""))||"",n=new WeakMap;function o(e,t){this.m=e,this.e=t}let l=o.prototype,i=Object.prototype.hasOwnProperty,s="u">typeof Symbol&&Symbol.toStringTag;function u(e,t,r){i.call(e,t)||Object.defineProperty(e,t,r)}function a(e,t){let r=e[t];return r||(r=c(t),e[t]=r),r}function c(e){return{exports:{},error:void 0,id:e,namespaceObject:void 0}}function f(e,t){u(e,"__esModule",{value:!0}),s&&u(e,s,{value:"Module"});let r=0;for(;r<t.length;){let n=t[r++],o=t[r++];if("number"==typeof o)if(0===o)u(e,n,{value:t[r++],enumerable:!0,writable:!1});else throw Error(`unexpected tag: ${o}`);else"function"==typeof t[r]?u(e,n,{get:o,set:t[r++],enumerable:!0}):u(e,n,{get:o,enumerable:!0})}Object.seal(e)}l.s=function(e,t){let r,n;null!=t?n=(r=a(this.c,t)).exports:(r=this.m,n=this.e),r.namespaceObject=n,f(n,e)},l.j=function(e,t){var r,o;let l,s,u;null!=t?s=(l=a(this.c,t)).exports:(l=this.m,s=this.e);let c=(r=l,o=s,(u=n.get(r))||(n.set(r,u=[]),r.exports=r.namespaceObject=new Proxy(o,{get(e,t){if(i.call(e,t)||"default"===t||"__esModule"===t)return Reflect.get(e,t);for(let e of u){let r=Reflect.get(e,t);if(void 0!==r)return r}},ownKeys(e){let t=Reflect.ownKeys(e);for(let e of u)for(let r of Reflect.ownKeys(e))"default"===r||t.includes(r)||t.push(r);return t}})),u);"object"==typeof e&&null!==e&&c.push(e)},l.v=function(e,t){(null!=t?a(this.c,t):this.m).exports=e},l.n=function(e,t){let r;(r=null!=t?a(this.c,t):this.m).exports=r.namespaceObject=e};let p=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,h=[null,p({}),p([]),p(p)];function d(e,t,r){let n=[],o=-1;for(let t=e;("object"==typeof t||"function"==typeof t)&&!h.includes(t);t=p(t))for(let r of Object.getOwnPropertyNames(t))n.push(r,function(e,t){return()=>e[t]}(e,r)),-1===o&&"default"===r&&(o=n.length-1);return r&&o>=0||(o>=0?n.splice(o,1,0,e):n.push("default",0,e)),f(t,n),t}function m(e){let t=B(e,this.m);if(t.namespaceObject)return t.namespaceObject;let r=t.exports;return t.namespaceObject=d(r,"function"==typeof r?function(...e){return r.apply(this,e)}:Object.create(null),r&&r.__esModule)}function b(e){let t=e.indexOf("#");-1!==t&&(e=e.substring(0,t));let r=e.indexOf("?");return -1!==r&&(e=e.substring(0,r)),e}function y(){let e,t;return{promise:new Promise((r,n)=>{t=n,e=r}),resolve:e,reject:t}}l.i=m,l.A=function(e){return this.r(e)(m.bind(this))},l.t="function"==typeof require?require:function(){throw Error("Unexpected use of runtime require")},l.r=function(e){return B(e,this.m).exports},l.f=function(e){function t(t){if(t=b(t),i.call(e,t))return e[t].module();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r}return t.keys=()=>Object.keys(e),t.resolve=t=>{if(t=b(t),i.call(e,t))return e[t].id();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r},t.import=async e=>await t(e),t};let O=Symbol("turbopack queues"),g=Symbol("turbopack exports"),w=Symbol("turbopack error");function C(e){e&&1!==e.status&&(e.status=1,e.forEach(e=>e.queueCount--),e.forEach(e=>e.queueCount--?e.queueCount++:e()))}l.a=function(e,t){let r=this.m,n=t?Object.assign([],{status:-1}):void 0,o=new Set,{resolve:l,reject:i,promise:s}=y(),u=Object.assign(s,{[g]:r.exports,[O]:e=>{n&&e(n),o.forEach(e),u.catch(()=>{})}}),a={get:()=>u,set(e){e!==u&&(u[g]=e)}};Object.defineProperty(r,"exports",a),Object.defineProperty(r,"namespaceObject",a),e(function(e){let t=e.map(e=>{if(null!==e&&"object"==typeof e){if(O in e)return e;if(null!=e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then){let t=Object.assign([],{status:0}),r={[g]:{},[O]:e=>e(t)};return e.then(e=>{r[g]=e,C(t)},e=>{r[w]=e,C(t)}),r}}return{[g]:e,[O]:()=>{}}}),r=()=>t.map(e=>{if(e[w])throw e[w];return e[g]}),{promise:l,resolve:i}=y(),s=Object.assign(()=>i(r),{queueCount:0});function u(e){e!==n&&!o.has(e)&&(o.add(e),e&&0===e.status&&(s.queueCount++,e.push(s)))}return t.map(e=>e[O](u)),s.queueCount?l:r()},function(e){e?i(u[w]=e):l(u[g]),C(n)}),n&&-1===n.status&&(n.status=0)};let U=function(e){let t=new URL(e,"x:/"),r={};for(let e in t)r[e]=t[e];for(let t in r.href=e,r.pathname=e.replace(/[?#].*/,""),r.origin=r.protocol="",r.toString=r.toJSON=(...t)=>e,r)Object.defineProperty(this,t,{enumerable:!0,configurable:!0,value:r[t]})};function R(e,t){throw Error(`Invariant: ${t(e)}`)}U.prototype=URL.prototype,l.U=U,l.z=function(e){throw Error("dynamic usage of require is not supported")},l.g=globalThis;let j=o.prototype;var k,_=((k=_||{})[k.Runtime=0]="Runtime",k[k.Parent=1]="Parent",k[k.Update=2]="Update",k);let v=new Map;l.M=v;let $=new Map,P=new Map;async function S(e,t,r){let n;if("string"==typeof r)return E(e,t,K(r));let o=r.included||[],l=o.map(e=>!!v.has(e)||$.get(e));if(l.length>0&&l.every(e=>e))return void await Promise.all(l);let i=r.moduleChunks||[],s=i.map(e=>P.get(e)).filter(e=>e);if(s.length>0){if(s.length===i.length)return void await Promise.all(s);let r=new Set;for(let e of i)P.has(e)||r.add(e);for(let n of r){let r=E(e,t,K(n));P.set(n,r),s.push(r)}n=Promise.all(s)}else{for(let o of(n=E(e,t,K(r.path)),i))P.has(o)||P.set(o,n)}for(let e of o)$.has(e)||$.set(e,n);await n}j.l=function(e){return S(1,this.m.id,e)};let T=Promise.resolve(void 0),A=new WeakMap;function E(t,r,n){let o=e.loadChunkCached(t,n),l=A.get(o);if(void 0===l){let e=A.set.bind(A,o,T);l=o.then(e).catch(e=>{let o;switch(t){case 0:o=`as a runtime dependency of chunk ${r}`;break;case 1:o=`from module ${r}`;break;case 2:o="from an HMR update";break;default:R(t,e=>`Unknown source type: ${e}`)}let l=Error(`Failed to load chunk ${n} ${o}${e?`: ${e}`:""}`,e?{cause:e}:void 0);throw l.name="ChunkLoadError",l}),A.set(o,l)}return l}function K(e){return`${t}${e.split("/").map(e=>encodeURIComponent(e)).join("/")}${r}`}j.L=function(e){return E(1,this.m.id,e)},j.R=function(e){let t=this.r(e);return t?.default??t},j.P=function(e){return`/ROOT/${e??""}`},j.b=function(e){let t=new Blob([`self.TURBOPACK_WORKER_LOCATION = ${JSON.stringify(location.origin)};
2
+ self.TURBOPACK_CHUNK_SUFFIX = ${JSON.stringify(r)};
3
+ self.TURBOPACK_NEXT_CHUNK_URLS = ${JSON.stringify(e.reverse().map(K),null,2)};
4
+ importScripts(...self.TURBOPACK_NEXT_CHUNK_URLS.map(c => self.TURBOPACK_WORKER_LOCATION + c).reverse());`],{type:"text/javascript"});return URL.createObjectURL(t)};let x=/\.js(?:\?[^#]*)?(?:#.*)?$/,N=/\.css(?:\?[^#]*)?(?:#.*)?$/;function M(e){return N.test(e)}l.w=function(t,r,n){return e.loadWebAssembly(1,this.m.id,t,r,n)},l.u=function(t,r){return e.loadWebAssemblyModule(1,this.m.id,t,r)};let L={};l.c=L;let B=(e,t)=>{let r=L[e];if(r){if(r.error)throw r.error;return r}return q(e,_.Parent,t.id)};function q(e,t,r){let n=v.get(e);if("function"!=typeof n)throw Error(function(e,t,r){let n;switch(t){case 0:n=`as a runtime entry of chunk ${r}`;break;case 1:n=`because it was required from module ${r}`;break;case 2:n="because of an HMR update";break;default:R(t,e=>`Unknown source type: ${e}`)}return`Module ${e} was instantiated ${n}, but the module factory is not available.`}(e,t,r));let l=c(e),i=l.exports;L[e]=l;let s=new o(l,i);try{n(s,l,i)}catch(e){throw l.error=e,e}return l.namespaceObject&&l.exports!==l.namespaceObject&&d(l.exports,l.namespaceObject),l}function I(r){let n,o=function(e){if("string"==typeof e)return e;let r=decodeURIComponent(("u">typeof TURBOPACK_NEXT_CHUNK_URLS?TURBOPACK_NEXT_CHUNK_URLS.pop():e.getAttribute("src")).replace(/[?#].*$/,""));return r.startsWith(t)?r.slice(t.length):r}(r[0]);return 2===r.length?n=r[1]:(n=void 0,!function(e,t,r,n){let o=1;for(;o<e.length;){let t=e[o],n=o+1;for(;n<e.length&&"function"!=typeof e[n];)n++;if(n===e.length)throw Error("malformed chunk format, expected a factory function");if(!r.has(t)){let l=e[n];for(Object.defineProperty(l,"name",{value:"module evaluation"});o<n;o++)t=e[o],r.set(t,l)}o=n+1}}(r,0,v)),e.registerChunk(o,n)}let W=new Map;function H(e){let t=W.get(e);if(!t){let r,n;t={resolved:!1,loadingStarted:!1,promise:new Promise((e,t)=>{r=e,n=t}),resolve:()=>{t.resolved=!0,r()},reject:n},W.set(e,t)}return t}e={async registerChunk(e,t){if(H(K(e)).resolve(),null!=t){for(let e of t.otherChunks)H(K("string"==typeof e?e:e.path));if(await Promise.all(t.otherChunks.map(t=>S(0,e,t))),t.runtimeModuleIds.length>0)for(let r of t.runtimeModuleIds)!function(e,t){let r=L[t];if(r){if(r.error)throw r.error;return}q(t,_.Runtime,e)}(e,r)}},loadChunkCached:(e,t)=>(function(e,t){let r=H(t);if(r.loadingStarted)return r.promise;if(e===_.Runtime)return r.loadingStarted=!0,M(t)&&r.resolve(),r.promise;if("function"==typeof importScripts)if(M(t));else if(x.test(t))self.TURBOPACK_NEXT_CHUNK_URLS.push(t),importScripts(TURBOPACK_WORKER_LOCATION+t);else throw Error(`can't infer type of chunk from URL ${t} in worker`);else{let e=decodeURI(t);if(M(t))if(document.querySelectorAll(`link[rel=stylesheet][href="${t}"],link[rel=stylesheet][href^="${t}?"],link[rel=stylesheet][href="${e}"],link[rel=stylesheet][href^="${e}?"]`).length>0)r.resolve();else{let e=document.createElement("link");e.rel="stylesheet",e.href=t,e.onerror=()=>{r.reject()},e.onload=()=>{r.resolve()},document.head.appendChild(e)}else if(x.test(t)){let n=document.querySelectorAll(`script[src="${t}"],script[src^="${t}?"],script[src="${e}"],script[src^="${e}?"]`);if(n.length>0)for(let e of Array.from(n))e.addEventListener("error",()=>{r.reject()});else{let e=document.createElement("script");e.src=t,e.onerror=()=>{r.reject()},document.head.appendChild(e)}}else throw Error(`can't infer type of chunk from URL ${t}`)}return r.loadingStarted=!0,r.promise})(e,t),async loadWebAssembly(e,t,r,n,o){let l=fetch(K(r)),{instance:i}=await WebAssembly.instantiateStreaming(l,o);return i.exports},async loadWebAssemblyModule(e,t,r,n){let o=fetch(K(r));return await WebAssembly.compileStreaming(o)}};let F=globalThis.TURBOPACK;globalThis.TURBOPACK={push:I},F.forEach(I)})();
@@ -0,0 +1,182 @@
1
+ # Changelog
2
+
3
+ All notable changes to Castle are documented here.
4
+
5
+ ## 0.4.0 (2026-02-09)
6
+
7
+ ### Changed
8
+
9
+ - **Pre-build for global installs** — `npm publish` now ships pre-built `.next/standalone/` and `.next/static/` artifacts via a `prepack` script, eliminating the "Build failed" error users hit when installing globally with `npm install -g`
10
+ - Next.js `output: "standalone"` mode enabled — produces a self-contained `server.js` with all dependencies bundled, no `node_modules` needed at runtime
11
+ - Service templates (launchd plist and systemd unit) now use standalone `server.js` directly instead of `next start` when pre-built output is detected
12
+ - Updated `files` array in `package.json` to include `.next/standalone/` and `.next/static/`
13
+
14
+ ### Added
15
+
16
+ - Node.js 22+ version check at the start of `castle setup` — exits early with a clear message and install instructions if the user's Node version is too old
17
+ - Build error logging — when a dev/git-clone build fails, full output is written to `~/.castle/logs/build.log` and the last 20 lines are shown in the terminal
18
+ - Node.js compile cache (`module.enableCompileCache()`) in `bin/castle.js` for faster CLI startup (follows OpenClaw pattern)
19
+ - Build output check in `castle open` — warns if `.next/` doesn't exist and guides the user to run `castle setup`
20
+
21
+ ### Fixed
22
+
23
+ - **"Build failed" during global install** — root cause was `npm run build` executing inside the read-only global `node_modules` directory without `devDependencies`. Now skipped entirely for pre-built packages.
24
+ - **Cross-platform native module crash** — standalone bundle no longer ships `node_modules/` (which contained platform-specific binaries like `better-sqlite3` from the build machine). Instead, `NODE_PATH` resolves packages from the npm-installed `node_modules/` with correct platform binaries.
25
+ - **Server bound to all interfaces** — standalone server now binds to `127.0.0.1` (localhost only) instead of `0.0.0.0`, ensuring Castle is not accessible from other machines on the network
26
+
27
+ ## 0.3.2 (2026-02-09)
28
+
29
+ ### Added
30
+
31
+ - Stress test suite (`npm run stress`) — 19 tests covering database under load, API route concurrency, and connection resilience
32
+ - DB: concurrent inserts, FTS5 search/corruption/repair, 5000-message pagination, cascade deletes, WAL pressure
33
+ - API: rate limiter accuracy, message size boundaries, concurrent search/channel ops, PUT idempotency
34
+ - Connections: SSE subscriber storms, event deduplication, WebSocket reconnection, pending request cleanup
35
+
36
+ ## 0.3.1 (2026-02-09)
37
+
38
+ ### Added
39
+
40
+ - Full test suite — 201 tests across 20 files covering DB queries, API routes, hooks, gateway connection, SSE, and config
41
+ - Integration tests for chat lifecycle, gateway WebSocket, and failure recovery (real DB + real WS server, no mocks)
42
+ - CI pipeline with GitHub Actions: test, build, secret scanning, sensitive file detection, large file checks, version bump enforcement
43
+ - Open-source community files: LICENSE (MIT), SECURITY.md, CONTRIBUTING.md, issue templates, PR template
44
+ - npm Trusted Publishing via OIDC with provenance attestation
45
+ - Auto-tagging on merge to main
46
+ - Version bump check skips CI/docs-only PRs
47
+
48
+ ### Fixed
49
+
50
+ - FTS5 desync causing SQLITE_CONSTRAINT_PRIMARYKEY on message send (orphaned FTS entries after channel deletion)
51
+ - FTS auto-repair in updateMessage/deleteMessage paths
52
+ - Typing indicator pixel shift — reuses MessageBubble directly via `isTypingIndicator` prop for zero layout shift
53
+ - Avatar status dot missing during typing indicator display
54
+ - Session context not resolving in chat
55
+
56
+ ### Changed
57
+
58
+ - Structured dev logging across full stack (Gateway RPC, SSE lifecycle, API routes, DB operations, hooks)
59
+ - npm publish switched from token-based auth to OIDC Trusted Publishing (no tokens to manage)
60
+ - Upgraded npm in release job for Trusted Publishing compatibility (requires npm >= 11.5.1)
61
+
62
+ ## 0.3.0 (2026-02-09)
63
+
64
+ ### Added
65
+
66
+ - Universal Search v1 with Cmd+K shortcut and platform-aware hint
67
+ - Full-text search across all messages with SQLite FTS5
68
+ - Search result navigation with persistent message highlighting
69
+ - Recent searches persisted in SQLite (moved from localStorage)
70
+ - Anchor-based message loading for search result deep-linking
71
+ - Skeleton loading states across chat, agents, and channel list
72
+ - Timestamp tooltips with always-dark styling
73
+ - Shared date-utils for standardized date formatting
74
+
75
+ ### Fixed
76
+
77
+ - Channel deletion not syncing FTS5 index
78
+ - Scroll jump on load-more
79
+ - Keyboard navigation in search dialog
80
+ - Search highlight not updating for same-channel results
81
+ - Channel page not rendering with search params
82
+ - FOUC on chat message layout
83
+ - Security, scalability, and robustness issues from PR review
84
+
85
+ ## 0.2.2 (2026-02-08)
86
+
87
+ ### Fixed
88
+
89
+ - Replace all Link components with button + router.push to fix client-side navigation issues
90
+
91
+ ## 0.2.1 (2026-02-08)
92
+
93
+ ### Fixed
94
+
95
+ - Thinking indicator persistence across channel navigation
96
+
97
+ ## 0.2.0 (2026-02-08)
98
+
99
+ ### Added
100
+
101
+ - Chat V1: local chat with SQLite persistence, real-time streaming, and full UI
102
+ - Live agent status and user presence tracking
103
+ - Channel archive/restore with two-step permanent delete
104
+ - User avatar upload with settings page and display name
105
+ - Channel origin markers and date separators
106
+ - Tooltip toggle setting
107
+ - Twemoji and GFM markdown support in messages
108
+ - Settings page with display name used in chat headers
109
+
110
+ ### Fixed
111
+
112
+ - SSRF in avatar proxy, path traversal hardening, FTS5 query sanitization
113
+ - API security: CSRF protection, rate limiting, path traversal guards, localhost enforcement
114
+ - Infinite scroll yanking to bottom when older messages load
115
+ - Scroll jump on message send caused by container resize
116
+ - Input disabled after agent response
117
+ - Scroll-to-bottom on load and first-message jump
118
+ - Typing indicator flow
119
+ - FOUC and chat loader centering
120
+ - Dialog warning in chat UI
121
+
122
+ ### Changed
123
+
124
+ - Redesigned chat messages: removed bubbles, left-aligned all, grouped by sender
125
+ - Moved user menu to sidebar
126
+ - DB safety hardening with last-channel persistence
127
+
128
+ ## 0.1.6 (2026-02-08)
129
+
130
+ ### Added
131
+
132
+ - Device authentication and identity management
133
+ - Avatar management system
134
+
135
+ ### Changed
136
+
137
+ - Security hardening across the codebase
138
+
139
+ ## 0.1.5 (2026-02-07)
140
+
141
+ ### Fixed
142
+
143
+ - tsx resolution — resolve from package dir, not cwd
144
+
145
+ ### Changed
146
+
147
+ - Document release process in README
148
+
149
+ ## 0.1.4 (2026-02-07)
150
+
151
+ ### Added
152
+
153
+ - `castle update` command
154
+
155
+ ### Fixed
156
+
157
+ - Version skip check — use grep instead of node pipe
158
+ - Skip install and setup when already up to date
159
+
160
+ ## 0.1.2 (2026-02-07)
161
+
162
+ ### Added
163
+
164
+ - Full Castle scaffold with design system, CLI, installer, and UI kit
165
+ - OpenClaw Gateway integration
166
+ - CLI onboarding with Castle blue theme and auto server start
167
+ - Production server with persistent service and auto-start
168
+ - ASCII castle banner with gradient installer
169
+ - App icon
170
+
171
+ ### Fixed
172
+
173
+ - Onboarding server startup hanging and spinner visibility
174
+ - CLI shebang and install banner escape issue
175
+ - Install script fallback to run castle directly instead of npx
176
+ - Hardcoded values, dead code, and service reliability in onboarding
177
+
178
+ ### Changed
179
+
180
+ - Security, reliability, and input validation hardening across codebase
181
+ - Show agents as offline/unreachable when Gateway disconnects
182
+ - Move @types/ws to dependencies
@@ -0,0 +1,46 @@
1
+ # Contributing to Castle
2
+
3
+ Thanks for your interest in contributing.
4
+
5
+ ## Development Setup
6
+
7
+ ```bash
8
+ git clone https://github.com/castlekit/castle.git
9
+ cd castle
10
+ npm install
11
+ npm run dev
12
+ ```
13
+
14
+ Requires **Node.js >= 22**.
15
+
16
+ ## Workflow
17
+
18
+ 1. Fork the repo and create a branch from `main`
19
+ 2. Make your changes
20
+ 3. Bump the version in `package.json` (CI enforces this)
21
+ 4. Run `npm run lint && npm test && npm run build` locally
22
+ 5. Open a PR against `main`
23
+
24
+ ## Tests
25
+
26
+ ```bash
27
+ npm test # run once
28
+ npm run test:watch # watch mode
29
+ ```
30
+
31
+ Tests use in-memory SQLite databases and don't touch any live services.
32
+
33
+ ## Pre-commit hooks
34
+
35
+ We use [pre-commit](https://pre-commit.com) for local checks (secret scanning, file hygiene, GitHub Actions linting):
36
+
37
+ ```bash
38
+ pip install pre-commit
39
+ pre-commit install
40
+ ```
41
+
42
+ Hooks run automatically on every commit. See `.pre-commit-config.yaml` for the full list.
43
+
44
+ ## License
45
+
46
+ By contributing, you agree that your contributions will be licensed under the [MIT License](LICENSE).