onvif-dashboard 0.1.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 (1416) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -0
  2. package/.next/standalone/.next/app-path-routes-manifest.json +18 -0
  3. package/.next/standalone/.next/build-manifest.json +25 -0
  4. package/.next/standalone/.next/package.json +1 -0
  5. package/.next/standalone/.next/prerender-manifest.json +72 -0
  6. package/.next/standalone/.next/required-server-files.json +364 -0
  7. package/.next/standalone/.next/routes-manifest.json +154 -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 +21 -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 +9 -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 +3 -0
  17. package/.next/standalone/.next/server/app/_global-error.html +1 -0
  18. package/.next/standalone/.next/server/app/_global-error.meta +22 -0
  19. package/.next/standalone/.next/server/app/_global-error.rsc +15 -0
  20. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +20 -0
  21. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +15 -0
  22. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  23. package/.next/standalone/.next/server/app/_not-found/page/app-paths-manifest.json +3 -0
  24. package/.next/standalone/.next/server/app/_not-found/page/build-manifest.json +21 -0
  25. package/.next/standalone/.next/server/app/_not-found/page/next-font-manifest.json +11 -0
  26. package/.next/standalone/.next/server/app/_not-found/page/react-loadable-manifest.json +1 -0
  27. package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +49 -0
  28. package/.next/standalone/.next/server/app/_not-found/page.js +13 -0
  29. package/.next/standalone/.next/server/app/_not-found/page.js.map +5 -0
  30. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -0
  31. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +3 -0
  32. package/.next/standalone/.next/server/app/api/cameras/[id]/credentials/route/app-paths-manifest.json +3 -0
  33. package/.next/standalone/.next/server/app/api/cameras/[id]/credentials/route/build-manifest.json +12 -0
  34. package/.next/standalone/.next/server/app/api/cameras/[id]/credentials/route/server-reference-manifest.json +4 -0
  35. package/.next/standalone/.next/server/app/api/cameras/[id]/credentials/route.js +8 -0
  36. package/.next/standalone/.next/server/app/api/cameras/[id]/credentials/route.js.map +5 -0
  37. package/.next/standalone/.next/server/app/api/cameras/[id]/credentials/route.js.nft.json +1 -0
  38. package/.next/standalone/.next/server/app/api/cameras/[id]/credentials/route_client-reference-manifest.js +3 -0
  39. package/.next/standalone/.next/server/app/api/cameras/[id]/info/route/app-paths-manifest.json +3 -0
  40. package/.next/standalone/.next/server/app/api/cameras/[id]/info/route/build-manifest.json +12 -0
  41. package/.next/standalone/.next/server/app/api/cameras/[id]/info/route/server-reference-manifest.json +4 -0
  42. package/.next/standalone/.next/server/app/api/cameras/[id]/info/route.js +8 -0
  43. package/.next/standalone/.next/server/app/api/cameras/[id]/info/route.js.map +5 -0
  44. package/.next/standalone/.next/server/app/api/cameras/[id]/info/route.js.nft.json +1 -0
  45. package/.next/standalone/.next/server/app/api/cameras/[id]/info/route_client-reference-manifest.js +3 -0
  46. package/.next/standalone/.next/server/app/api/cameras/[id]/live/whep/route/app-paths-manifest.json +3 -0
  47. package/.next/standalone/.next/server/app/api/cameras/[id]/live/whep/route/build-manifest.json +12 -0
  48. package/.next/standalone/.next/server/app/api/cameras/[id]/live/whep/route/server-reference-manifest.json +4 -0
  49. package/.next/standalone/.next/server/app/api/cameras/[id]/live/whep/route.js +9 -0
  50. package/.next/standalone/.next/server/app/api/cameras/[id]/live/whep/route.js.map +5 -0
  51. package/.next/standalone/.next/server/app/api/cameras/[id]/live/whep/route.js.nft.json +1 -0
  52. package/.next/standalone/.next/server/app/api/cameras/[id]/live/whep/route_client-reference-manifest.js +3 -0
  53. package/.next/standalone/.next/server/app/api/cameras/[id]/snapshot/route/app-paths-manifest.json +3 -0
  54. package/.next/standalone/.next/server/app/api/cameras/[id]/snapshot/route/build-manifest.json +12 -0
  55. package/.next/standalone/.next/server/app/api/cameras/[id]/snapshot/route/server-reference-manifest.json +4 -0
  56. package/.next/standalone/.next/server/app/api/cameras/[id]/snapshot/route.js +8 -0
  57. package/.next/standalone/.next/server/app/api/cameras/[id]/snapshot/route.js.map +5 -0
  58. package/.next/standalone/.next/server/app/api/cameras/[id]/snapshot/route.js.nft.json +1 -0
  59. package/.next/standalone/.next/server/app/api/cameras/[id]/snapshot/route_client-reference-manifest.js +3 -0
  60. package/.next/standalone/.next/server/app/api/discover/route/app-paths-manifest.json +3 -0
  61. package/.next/standalone/.next/server/app/api/discover/route/build-manifest.json +12 -0
  62. package/.next/standalone/.next/server/app/api/discover/route/server-reference-manifest.json +4 -0
  63. package/.next/standalone/.next/server/app/api/discover/route.js +9 -0
  64. package/.next/standalone/.next/server/app/api/discover/route.js.map +5 -0
  65. package/.next/standalone/.next/server/app/api/discover/route.js.nft.json +1 -0
  66. package/.next/standalone/.next/server/app/api/discover/route_client-reference-manifest.js +3 -0
  67. package/.next/standalone/.next/server/app/api/recordings/clip/route/app-paths-manifest.json +3 -0
  68. package/.next/standalone/.next/server/app/api/recordings/clip/route/build-manifest.json +12 -0
  69. package/.next/standalone/.next/server/app/api/recordings/clip/route/server-reference-manifest.json +4 -0
  70. package/.next/standalone/.next/server/app/api/recordings/clip/route.js +7 -0
  71. package/.next/standalone/.next/server/app/api/recordings/clip/route.js.map +5 -0
  72. package/.next/standalone/.next/server/app/api/recordings/clip/route.js.nft.json +1 -0
  73. package/.next/standalone/.next/server/app/api/recordings/clip/route_client-reference-manifest.js +3 -0
  74. package/.next/standalone/.next/server/app/api/recordings/route/app-paths-manifest.json +3 -0
  75. package/.next/standalone/.next/server/app/api/recordings/route/build-manifest.json +12 -0
  76. package/.next/standalone/.next/server/app/api/recordings/route/server-reference-manifest.json +4 -0
  77. package/.next/standalone/.next/server/app/api/recordings/route.js +8 -0
  78. package/.next/standalone/.next/server/app/api/recordings/route.js.map +5 -0
  79. package/.next/standalone/.next/server/app/api/recordings/route.js.nft.json +1 -0
  80. package/.next/standalone/.next/server/app/api/recordings/route_client-reference-manifest.js +3 -0
  81. package/.next/standalone/.next/server/app/cameras/[id]/live/page/app-paths-manifest.json +3 -0
  82. package/.next/standalone/.next/server/app/cameras/[id]/live/page/build-manifest.json +21 -0
  83. package/.next/standalone/.next/server/app/cameras/[id]/live/page/next-font-manifest.json +11 -0
  84. package/.next/standalone/.next/server/app/cameras/[id]/live/page/react-loadable-manifest.json +1 -0
  85. package/.next/standalone/.next/server/app/cameras/[id]/live/page/server-reference-manifest.json +49 -0
  86. package/.next/standalone/.next/server/app/cameras/[id]/live/page.js +15 -0
  87. package/.next/standalone/.next/server/app/cameras/[id]/live/page.js.map +5 -0
  88. package/.next/standalone/.next/server/app/cameras/[id]/live/page.js.nft.json +1 -0
  89. package/.next/standalone/.next/server/app/cameras/[id]/live/page_client-reference-manifest.js +3 -0
  90. package/.next/standalone/.next/server/app/cameras/[id]/page/app-paths-manifest.json +3 -0
  91. package/.next/standalone/.next/server/app/cameras/[id]/page/build-manifest.json +21 -0
  92. package/.next/standalone/.next/server/app/cameras/[id]/page/next-font-manifest.json +11 -0
  93. package/.next/standalone/.next/server/app/cameras/[id]/page/react-loadable-manifest.json +1 -0
  94. package/.next/standalone/.next/server/app/cameras/[id]/page/server-reference-manifest.json +71 -0
  95. package/.next/standalone/.next/server/app/cameras/[id]/page.js +16 -0
  96. package/.next/standalone/.next/server/app/cameras/[id]/page.js.map +5 -0
  97. package/.next/standalone/.next/server/app/cameras/[id]/page.js.nft.json +1 -0
  98. package/.next/standalone/.next/server/app/cameras/[id]/page_client-reference-manifest.js +3 -0
  99. package/.next/standalone/.next/server/app/favicon.ico/route/app-paths-manifest.json +3 -0
  100. package/.next/standalone/.next/server/app/favicon.ico/route/build-manifest.json +12 -0
  101. package/.next/standalone/.next/server/app/favicon.ico/route.js +8 -0
  102. package/.next/standalone/.next/server/app/favicon.ico/route.js.map +5 -0
  103. package/.next/standalone/.next/server/app/favicon.ico/route.js.nft.json +1 -0
  104. package/.next/standalone/.next/server/app/favicon.ico.body +0 -0
  105. package/.next/standalone/.next/server/app/favicon.ico.meta +1 -0
  106. package/.next/standalone/.next/server/app/login/page/app-paths-manifest.json +3 -0
  107. package/.next/standalone/.next/server/app/login/page/build-manifest.json +21 -0
  108. package/.next/standalone/.next/server/app/login/page/next-font-manifest.json +11 -0
  109. package/.next/standalone/.next/server/app/login/page/react-loadable-manifest.json +1 -0
  110. package/.next/standalone/.next/server/app/login/page/server-reference-manifest.json +49 -0
  111. package/.next/standalone/.next/server/app/login/page.js +14 -0
  112. package/.next/standalone/.next/server/app/login/page.js.map +5 -0
  113. package/.next/standalone/.next/server/app/login/page.js.nft.json +1 -0
  114. package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +3 -0
  115. package/.next/standalone/.next/server/app/page/app-paths-manifest.json +3 -0
  116. package/.next/standalone/.next/server/app/page/build-manifest.json +21 -0
  117. package/.next/standalone/.next/server/app/page/next-font-manifest.json +11 -0
  118. package/.next/standalone/.next/server/app/page/react-loadable-manifest.json +1 -0
  119. package/.next/standalone/.next/server/app/page/server-reference-manifest.json +49 -0
  120. package/.next/standalone/.next/server/app/page.js +15 -0
  121. package/.next/standalone/.next/server/app/page.js.map +5 -0
  122. package/.next/standalone/.next/server/app/page.js.nft.json +1 -0
  123. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +3 -0
  124. package/.next/standalone/.next/server/app/recordings/page/app-paths-manifest.json +3 -0
  125. package/.next/standalone/.next/server/app/recordings/page/build-manifest.json +21 -0
  126. package/.next/standalone/.next/server/app/recordings/page/next-font-manifest.json +11 -0
  127. package/.next/standalone/.next/server/app/recordings/page/react-loadable-manifest.json +1 -0
  128. package/.next/standalone/.next/server/app/recordings/page/server-reference-manifest.json +49 -0
  129. package/.next/standalone/.next/server/app/recordings/page.js +15 -0
  130. package/.next/standalone/.next/server/app/recordings/page.js.map +5 -0
  131. package/.next/standalone/.next/server/app/recordings/page.js.nft.json +1 -0
  132. package/.next/standalone/.next/server/app/recordings/page_client-reference-manifest.js +3 -0
  133. package/.next/standalone/.next/server/app/setup/page/app-paths-manifest.json +3 -0
  134. package/.next/standalone/.next/server/app/setup/page/build-manifest.json +21 -0
  135. package/.next/standalone/.next/server/app/setup/page/next-font-manifest.json +11 -0
  136. package/.next/standalone/.next/server/app/setup/page/react-loadable-manifest.json +1 -0
  137. package/.next/standalone/.next/server/app/setup/page/server-reference-manifest.json +49 -0
  138. package/.next/standalone/.next/server/app/setup/page.js +14 -0
  139. package/.next/standalone/.next/server/app/setup/page.js.map +5 -0
  140. package/.next/standalone/.next/server/app/setup/page.js.nft.json +1 -0
  141. package/.next/standalone/.next/server/app/setup/page_client-reference-manifest.js +3 -0
  142. package/.next/standalone/.next/server/app-paths-manifest.json +18 -0
  143. package/.next/standalone/.next/server/chunks/[externals]__0sn8rhy._.js +3 -0
  144. package/.next/standalone/.next/server/chunks/[externals]__0t5_i3-._.js +3 -0
  145. package/.next/standalone/.next/server/chunks/[externals]__12pp_39._.js +3 -0
  146. package/.next/standalone/.next/server/chunks/[externals]__14kfdpf._.js +3 -0
  147. package/.next/standalone/.next/server/chunks/[root-of-the-server]__00_hq9v._.js +153 -0
  148. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0jcu5v1._.js +3 -0
  149. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qic8yw._.js +3 -0
  150. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qs8j09._.js +3 -0
  151. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0quekr0._.js +222 -0
  152. package/.next/standalone/.next/server/chunks/[root-of-the-server]__111vu-s._.js +3 -0
  153. package/.next/standalone/.next/server/chunks/[root-of-the-server]__195bljr._.js +3 -0
  154. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1b132sh._.js +3 -0
  155. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1ft0_3p._.js +3 -0
  156. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1gj_0zm._.js +3 -0
  157. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1jyn0_o._.js +3 -0
  158. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1t624x_._.js +3 -0
  159. package/.next/standalone/.next/server/chunks/[turbopack]_runtime.js +807 -0
  160. package/.next/standalone/.next/server/chunks/_032x87y._.js +158 -0
  161. package/.next/standalone/.next/server/chunks/_0efb75o._.js +60 -0
  162. package/.next/standalone/.next/server/chunks/_0uxp3uh._.js +3 -0
  163. package/.next/standalone/.next/server/chunks/_1dqff-1._.js +3 -0
  164. package/.next/standalone/.next/server/chunks/_1p694qt._.js +60 -0
  165. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_cameras_[id]_credentials_route_actions_061ggqe.js +3 -0
  166. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_cameras_[id]_info_route_actions_14bukfi.js +3 -0
  167. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_cameras_[id]_live_whep_route_actions_0hir1y8.js +3 -0
  168. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_cameras_[id]_snapshot_route_actions_0pb4azs.js +3 -0
  169. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_discover_route_actions_0iz9n0w.js +3 -0
  170. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_recordings_clip_route_actions_10e75xy.js +3 -0
  171. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_recordings_route_actions_1vq6te4.js +3 -0
  172. package/.next/standalone/.next/server/chunks/_next-internal_server_app_favicon_ico_route_actions_0g2jjls.js +3 -0
  173. package/.next/standalone/.next/server/chunks/node_modules_next_1zdbrne._.js +10 -0
  174. package/.next/standalone/.next/server/chunks/node_modules_zod_v4_classic_external_1f6yk33.js +60 -0
  175. package/.next/standalone/.next/server/chunks/src_0_8v7nl._.js +3 -0
  176. package/.next/standalone/.next/server/chunks/src_lib_video_ts_0y7vxk-._.js +43 -0
  177. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__00j0r--._.js +3 -0
  178. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0aleo31._.js +3 -0
  179. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0f6s48x._.js +14 -0
  180. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0jv6c_f._.js +4 -0
  181. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0wzsauh._.js +3 -0
  182. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0xjk1v0._.js +3 -0
  183. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0y_e9do._.js +3 -0
  184. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__105e8zw._.js +33 -0
  185. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1b88d-h._.js +3 -0
  186. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1f2jx51._.js +33 -0
  187. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1iduzaf._.js +3 -0
  188. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1utodff._.js +3 -0
  189. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1wzocf7._.js +3 -0
  190. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__1x73b0k._.js +3 -0
  191. package/.next/standalone/.next/server/chunks/ssr/[turbopack]_runtime.js +807 -0
  192. package/.next/standalone/.next/server/chunks/ssr/_0tfm89e._.js +209 -0
  193. package/.next/standalone/.next/server/chunks/ssr/_0x3aj2a._.js +3 -0
  194. package/.next/standalone/.next/server/chunks/ssr/_0z2nro_._.js +3 -0
  195. package/.next/standalone/.next/server/chunks/ssr/_140jbbg._.js +3 -0
  196. package/.next/standalone/.next/server/chunks/ssr/_172_a6w._.js +10 -0
  197. package/.next/standalone/.next/server/chunks/ssr/_1ayvbe1._.js +3 -0
  198. package/.next/standalone/.next/server/chunks/ssr/_1kud4aq._.js +3 -0
  199. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app__global-error_page_actions_0zi5s8-.js +3 -0
  200. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app__not-found_page_actions_1k0e21d.js +3 -0
  201. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_cameras_[id]_live_page_actions_1x6y7lz.js +3 -0
  202. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_login_page_actions_1dmmi5g.js +3 -0
  203. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_page_actions_0ucar5e.js +3 -0
  204. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_recordings_page_actions_1ezb9xc.js +3 -0
  205. package/.next/standalone/.next/server/chunks/ssr/_next-internal_server_app_setup_page_actions_0-keti_.js +3 -0
  206. package/.next/standalone/.next/server/chunks/ssr/node_modules_05issat._.js +3 -0
  207. package/.next/standalone/.next/server/chunks/ssr/node_modules_15lq9aw._.js +23 -0
  208. package/.next/standalone/.next/server/chunks/ssr/node_modules_1wax83z._.js +33 -0
  209. package/.next/standalone/.next/server/chunks/ssr/node_modules_@tanstack_0udur9-._.js +3 -0
  210. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_0x3i8za._.js +131 -0
  211. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_0ufhxsd._.js +3 -0
  212. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_1bunoni._.js +3 -0
  213. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_1n3w9lb._.js +6 -0
  214. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_0wpq8j3._.js +3 -0
  215. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_forbidden_0symwr9.js +3 -0
  216. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_global-error_0q-w892.js +3 -0
  217. package/.next/standalone/.next/server/chunks/ssr/node_modules_next_dist_client_components_builtin_unauthorized_0l_sp0x.js +3 -0
  218. package/.next/standalone/.next/server/chunks/ssr/src_app_08xvpjs._.js +3 -0
  219. package/.next/standalone/.next/server/chunks/ssr/src_app_0efwjni._.js +60 -0
  220. package/.next/standalone/.next/server/chunks/ssr/src_app_cameras_[id]_0-bkk65._.js +3 -0
  221. package/.next/standalone/.next/server/chunks/ssr/src_app_cameras_[id]_0wpablc._.js +3 -0
  222. package/.next/standalone/.next/server/chunks/ssr/src_app_providers_tsx_0c_dde7._.js +3 -0
  223. package/.next/standalone/.next/server/functions-config-manifest.json +14 -0
  224. package/.next/standalone/.next/server/instrumentation.js +4 -0
  225. package/.next/standalone/.next/server/middleware-build-manifest.js +25 -0
  226. package/.next/standalone/.next/server/middleware-manifest.json +6 -0
  227. package/.next/standalone/.next/server/middleware.js +5 -0
  228. package/.next/standalone/.next/server/next-font-manifest.js +1 -0
  229. package/.next/standalone/.next/server/next-font-manifest.json +35 -0
  230. package/.next/standalone/.next/server/pages/500.html +1 -0
  231. package/.next/standalone/.next/server/pages-manifest.json +3 -0
  232. package/.next/standalone/.next/server/prefetch-hints.json +11 -0
  233. package/.next/standalone/.next/server/server-reference-manifest.js +1 -0
  234. package/.next/standalone/.next/server/server-reference-manifest.json +192 -0
  235. package/.next/standalone/.next/static/chunks/0-4hhghprzhtw.js +1 -0
  236. package/.next/standalone/.next/static/chunks/04l2v6p7fakl9.js +22 -0
  237. package/.next/standalone/.next/static/chunks/0cz1d0mv5g_q7.js +1 -0
  238. package/.next/standalone/.next/static/chunks/11be91k_gj8bl.js +1 -0
  239. package/.next/standalone/.next/static/chunks/1ng-ttmhg6s6h.css +3 -0
  240. package/.next/standalone/.next/static/chunks/21qqwm68cop21.js +1 -0
  241. package/.next/standalone/.next/static/chunks/24ug1160gwrkx.js +1 -0
  242. package/.next/standalone/.next/static/chunks/27t_qfc-3_lzs.js +1 -0
  243. package/.next/standalone/.next/static/chunks/2a1pvrfk7fzss.js +1 -0
  244. package/.next/standalone/.next/static/chunks/2e7rb5bft-ekp.js +1 -0
  245. package/.next/standalone/.next/static/chunks/2in4angy4ta5n.js +1 -0
  246. package/.next/standalone/.next/static/chunks/2mmpezlrfmbu5.js +1 -0
  247. package/.next/standalone/.next/static/chunks/2o10tcz0x86zp.js +1 -0
  248. package/.next/standalone/.next/static/chunks/310vm2bl3xxpt.js +31 -0
  249. package/.next/standalone/.next/static/chunks/32zls3n3ypa-e.js +1 -0
  250. package/.next/standalone/.next/static/chunks/3fntmmi971322.js +1 -0
  251. package/.next/standalone/.next/static/chunks/3jl0ivt7_0tuf.js +58 -0
  252. package/.next/standalone/.next/static/chunks/turbopack-1gvya9vclt5yj.js +1 -0
  253. package/.next/standalone/.next/static/media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2 +0 -0
  254. package/.next/standalone/.next/static/media/53b9e256198e5412-s.390ncx5urfkfu.woff2 +0 -0
  255. package/.next/standalone/.next/static/media/5ce348bf30bf5439-s.31988l_ccedte.woff2 +0 -0
  256. package/.next/standalone/.next/static/media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2 +0 -0
  257. package/.next/standalone/.next/static/media/7178b3e590c64307-s.21jp631_3pja2.woff2 +0 -0
  258. package/.next/standalone/.next/static/media/797e433ab948586e-s.p.0r6juujl39pe6.woff2 +0 -0
  259. package/.next/standalone/.next/static/media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2 +0 -0
  260. package/.next/standalone/.next/static/media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2 +0 -0
  261. package/.next/standalone/.next/static/media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2 +0 -0
  262. package/.next/standalone/.next/static/media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2 +0 -0
  263. package/.next/standalone/.next/static/media/favicon.2vob68tjqpejf.ico +0 -0
  264. package/.next/standalone/.next/static/media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2 +0 -0
  265. package/.next/standalone/.next/static/whCVdskjCUfluHW0q3o9p/_buildManifest.js +11 -0
  266. package/.next/standalone/.next/static/whCVdskjCUfluHW0q3o9p/_clientMiddlewareManifest.js +6 -0
  267. package/.next/standalone/.next/static/whCVdskjCUfluHW0q3o9p/_ssgManifest.js +1 -0
  268. package/.next/standalone/node_modules/@emnapi/runtime/dist/emnapi.cjs.js +1398 -0
  269. package/.next/standalone/node_modules/@emnapi/runtime/dist/emnapi.cjs.min.js +1 -0
  270. package/.next/standalone/node_modules/@emnapi/runtime/index.js +5 -0
  271. package/.next/standalone/node_modules/@emnapi/runtime/package.json +48 -0
  272. package/.next/standalone/node_modules/@next/env/dist/index.js +1 -0
  273. package/.next/standalone/node_modules/@next/env/package.json +36 -0
  274. package/.next/standalone/node_modules/@swc/helpers/cjs/_interop_require_default.cjs +6 -0
  275. package/.next/standalone/node_modules/@swc/helpers/cjs/_interop_require_wildcard.cjs +38 -0
  276. package/.next/standalone/node_modules/@swc/helpers/esm/_interop_require_default.js +4 -0
  277. package/.next/standalone/node_modules/@swc/helpers/esm/_interop_require_wildcard.js +36 -0
  278. package/.next/standalone/node_modules/@swc/helpers/package.json +705 -0
  279. package/.next/standalone/node_modules/client-only/index.js +0 -0
  280. package/.next/standalone/node_modules/client-only/package.json +19 -0
  281. package/.next/standalone/node_modules/detect-libc/lib/detect-libc.js +313 -0
  282. package/.next/standalone/node_modules/detect-libc/lib/elf.js +39 -0
  283. package/.next/standalone/node_modules/detect-libc/lib/filesystem.js +51 -0
  284. package/.next/standalone/node_modules/detect-libc/lib/process.js +24 -0
  285. package/.next/standalone/node_modules/detect-libc/package.json +44 -0
  286. package/.next/standalone/node_modules/next/dist/build/adapter/setup-node-env.external.js +15 -0
  287. package/.next/standalone/node_modules/next/dist/build/define-env.js +263 -0
  288. package/.next/standalone/node_modules/next/dist/build/duration-to-string.js +98 -0
  289. package/.next/standalone/node_modules/next/dist/build/get-supported-browsers.js +38 -0
  290. package/.next/standalone/node_modules/next/dist/build/next-config-ts/require-hook.js +85 -0
  291. package/.next/standalone/node_modules/next/dist/build/next-config-ts/transpile-config.js +140 -0
  292. package/.next/standalone/node_modules/next/dist/build/output/format.js +84 -0
  293. package/.next/standalone/node_modules/next/dist/build/output/log.js +135 -0
  294. package/.next/standalone/node_modules/next/dist/build/segment-config/app/app-segment-config.js +178 -0
  295. package/.next/standalone/node_modules/next/dist/build/segment-config/app/app-segments.js +147 -0
  296. package/.next/standalone/node_modules/next/dist/build/segment-config/app/collect-root-param-keys.js +52 -0
  297. package/.next/standalone/node_modules/next/dist/build/static-paths/app/extract-pathname-route-param-segments-from-loader-tree.js +137 -0
  298. package/.next/standalone/node_modules/next/dist/build/static-paths/app.js +783 -0
  299. package/.next/standalone/node_modules/next/dist/build/static-paths/pages.js +169 -0
  300. package/.next/standalone/node_modules/next/dist/build/static-paths/utils.js +119 -0
  301. package/.next/standalone/node_modules/next/dist/build/swc/helpers.js +15 -0
  302. package/.next/standalone/node_modules/next/dist/build/swc/index.js +1409 -0
  303. package/.next/standalone/node_modules/next/dist/build/swc/install-bindings.js +30 -0
  304. package/.next/standalone/node_modules/next/dist/build/swc/jest-transformer.js +77 -0
  305. package/.next/standalone/node_modules/next/dist/build/swc/loaderWorkerPool.js +40 -0
  306. package/.next/standalone/node_modules/next/dist/build/swc/options.js +411 -0
  307. package/.next/standalone/node_modules/next/dist/build/swc/types.js +6 -0
  308. package/.next/standalone/node_modules/next/dist/build/utils.js +1258 -0
  309. package/.next/standalone/node_modules/next/dist/cli/next-test.js +171 -0
  310. package/.next/standalone/node_modules/next/dist/client/add-base-path.js +24 -0
  311. package/.next/standalone/node_modules/next/dist/client/app-call-server.js +34 -0
  312. package/.next/standalone/node_modules/next/dist/client/app-find-source-map-url.js +39 -0
  313. package/.next/standalone/node_modules/next/dist/client/assign-location.js +29 -0
  314. package/.next/standalone/node_modules/next/dist/client/components/app-router-announcer.js +78 -0
  315. package/.next/standalone/node_modules/next/dist/client/components/app-router-headers.js +128 -0
  316. package/.next/standalone/node_modules/next/dist/client/components/app-router-instance.js +407 -0
  317. package/.next/standalone/node_modules/next/dist/client/components/app-router-utils.js +62 -0
  318. package/.next/standalone/node_modules/next/dist/client/components/app-router.js +522 -0
  319. package/.next/standalone/node_modules/next/dist/client/components/builtin/default.js +35 -0
  320. package/.next/standalone/node_modules/next/dist/client/components/builtin/error-styles.js +165 -0
  321. package/.next/standalone/node_modules/next/dist/client/components/builtin/global-error.js +100 -0
  322. package/.next/standalone/node_modules/next/dist/client/components/dev-root-http-access-fallback-boundary.js +52 -0
  323. package/.next/standalone/node_modules/next/dist/client/components/error-boundary.js +148 -0
  324. package/.next/standalone/node_modules/next/dist/client/components/errors/graceful-degrade-boundary.js +86 -0
  325. package/.next/standalone/node_modules/next/dist/client/components/errors/root-error-boundary.js +41 -0
  326. package/.next/standalone/node_modules/next/dist/client/components/forbidden.js +48 -0
  327. package/.next/standalone/node_modules/next/dist/client/components/handle-isr-error.js +30 -0
  328. package/.next/standalone/node_modules/next/dist/client/components/hooks-server-context.js +42 -0
  329. package/.next/standalone/node_modules/next/dist/client/components/http-access-fallback/error-boundary.js +125 -0
  330. package/.next/standalone/node_modules/next/dist/client/components/http-access-fallback/http-access-fallback.js +72 -0
  331. package/.next/standalone/node_modules/next/dist/client/components/instant-samples.js +134 -0
  332. package/.next/standalone/node_modules/next/dist/client/components/is-next-router-error.js +23 -0
  333. package/.next/standalone/node_modules/next/dist/client/components/links.js +316 -0
  334. package/.next/standalone/node_modules/next/dist/client/components/match-segments.js +32 -0
  335. package/.next/standalone/node_modules/next/dist/client/components/nav-failure-handler.js +61 -0
  336. package/.next/standalone/node_modules/next/dist/client/components/navigation-devtools.js +126 -0
  337. package/.next/standalone/node_modules/next/dist/client/components/navigation-dynamic-rendering.js +38 -0
  338. package/.next/standalone/node_modules/next/dist/client/components/navigation-untracked.js +69 -0
  339. package/.next/standalone/node_modules/next/dist/client/components/navigation.js +246 -0
  340. package/.next/standalone/node_modules/next/dist/client/components/navigation.react-server.js +75 -0
  341. package/.next/standalone/node_modules/next/dist/client/components/not-found.js +42 -0
  342. package/.next/standalone/node_modules/next/dist/client/components/offline.js +172 -0
  343. package/.next/standalone/node_modules/next/dist/client/components/readonly-url-search-params.js +46 -0
  344. package/.next/standalone/node_modules/next/dist/client/components/redirect-boundary.js +107 -0
  345. package/.next/standalone/node_modules/next/dist/client/components/redirect-error.js +43 -0
  346. package/.next/standalone/node_modules/next/dist/client/components/redirect-status-code.js +24 -0
  347. package/.next/standalone/node_modules/next/dist/client/components/redirect.js +91 -0
  348. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/compute-changed-path.js +205 -0
  349. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/create-href-from-url.js +21 -0
  350. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/create-initial-router-state.js +161 -0
  351. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/create-router-cache-key.js +32 -0
  352. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/fetch-server-response.js +603 -0
  353. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/is-navigating-to-new-root-layout.js +70 -0
  354. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/ppr-navigations.js +1474 -0
  355. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/committed-state.js +49 -0
  356. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/find-head-in-cache.js +63 -0
  357. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/has-interception-route-in-current-tree.js +38 -0
  358. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/hmr-refresh-reducer.js +29 -0
  359. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/navigate-reducer.js +56 -0
  360. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/refresh-reducer.js +90 -0
  361. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/restore-reducer.js +75 -0
  362. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/server-action-reducer.js +349 -0
  363. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/reducers/server-patch-reducer.js +67 -0
  364. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/router-reducer-types.js +70 -0
  365. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/router-reducer.js +74 -0
  366. package/.next/standalone/node_modules/next/dist/client/components/router-reducer/set-cache-busting-search-param.js +66 -0
  367. package/.next/standalone/node_modules/next/dist/client/components/router-transition.js +135 -0
  368. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/bfcache.js +130 -0
  369. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/cache-key.js +56 -0
  370. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/cache-map.js +326 -0
  371. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/cache.js +2684 -0
  372. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/fetch.js +37 -0
  373. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/lru.js +152 -0
  374. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/navigation-testing-lock.js +415 -0
  375. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/navigation.js +773 -0
  376. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/optimistic-routes.js +648 -0
  377. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/prefetch.js +32 -0
  378. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/scheduler.js +1770 -0
  379. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/types.js +84 -0
  380. package/.next/standalone/node_modules/next/dist/client/components/segment-cache/vary-path.js +326 -0
  381. package/.next/standalone/node_modules/next/dist/client/components/server-async-storage.js +43 -0
  382. package/.next/standalone/node_modules/next/dist/client/components/static-generation-bailout.js +42 -0
  383. package/.next/standalone/node_modules/next/dist/client/components/unauthorized.js +49 -0
  384. package/.next/standalone/node_modules/next/dist/client/components/unrecognized-action-error.js +39 -0
  385. package/.next/standalone/node_modules/next/dist/client/components/unresolved-thenable.js +23 -0
  386. package/.next/standalone/node_modules/next/dist/client/components/unstable-rethrow.js +32 -0
  387. package/.next/standalone/node_modules/next/dist/client/components/use-action-queue.js +148 -0
  388. package/.next/standalone/node_modules/next/dist/client/components/use-offline.js +68 -0
  389. package/.next/standalone/node_modules/next/dist/client/dev/debug-channel.js +428 -0
  390. package/.next/standalone/node_modules/next/dist/client/flight-data-helpers.js +235 -0
  391. package/.next/standalone/node_modules/next/dist/client/has-base-path.js +23 -0
  392. package/.next/standalone/node_modules/next/dist/client/lib/console.js +177 -0
  393. package/.next/standalone/node_modules/next/dist/client/lib/javascript-url.js +32 -0
  394. package/.next/standalone/node_modules/next/dist/client/navigation-build-id.js +53 -0
  395. package/.next/standalone/node_modules/next/dist/client/normalize-trailing-slash.js +37 -0
  396. package/.next/standalone/node_modules/next/dist/client/remove-base-path.js +32 -0
  397. package/.next/standalone/node_modules/next/dist/client/route-params.js +249 -0
  398. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/cookies/index.js +339 -0
  399. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/cookies/package.json +1 -0
  400. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/ponyfill/index.js +46 -0
  401. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/ponyfill/package.json +1 -0
  402. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/abort-controller.js.text.js +1 -0
  403. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/console.js.text.js +1 -0
  404. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/events.js.text.js +1 -0
  405. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/index.js +5 -0
  406. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/load.js +18713 -0
  407. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/package.json +1 -0
  408. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/stream.js +44 -0
  409. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/timers.js.text.js +1 -0
  410. package/.next/standalone/node_modules/next/dist/compiled/@edge-runtime/primitives/url.js.text.js +1 -0
  411. package/.next/standalone/node_modules/next/dist/compiled/@hapi/accept/index.js +1 -0
  412. package/.next/standalone/node_modules/next/dist/compiled/@hapi/accept/package.json +1 -0
  413. package/.next/standalone/node_modules/next/dist/compiled/@mswjs/interceptors/ClientRequest/index.js +1 -0
  414. package/.next/standalone/node_modules/next/dist/compiled/@mswjs/interceptors/ClientRequest/package.json +1 -0
  415. package/.next/standalone/node_modules/next/dist/compiled/@napi-rs/triples/index.js +1 -0
  416. package/.next/standalone/node_modules/next/dist/compiled/@napi-rs/triples/package.json +1 -0
  417. package/.next/standalone/node_modules/next/dist/compiled/@opentelemetry/api/index.js +1 -0
  418. package/.next/standalone/node_modules/next/dist/compiled/@opentelemetry/api/package.json +1 -0
  419. package/.next/standalone/node_modules/next/dist/compiled/@vercel/detect-agent/index.js +1 -0
  420. package/.next/standalone/node_modules/next/dist/compiled/@vercel/detect-agent/package.json +1 -0
  421. package/.next/standalone/node_modules/next/dist/compiled/async-retry/index.js +1 -0
  422. package/.next/standalone/node_modules/next/dist/compiled/async-retry/package.json +1 -0
  423. package/.next/standalone/node_modules/next/dist/compiled/async-sema/index.js +1 -0
  424. package/.next/standalone/node_modules/next/dist/compiled/async-sema/package.json +1 -0
  425. package/.next/standalone/node_modules/next/dist/compiled/busboy/index.js +1 -0
  426. package/.next/standalone/node_modules/next/dist/compiled/busboy/package.json +1 -0
  427. package/.next/standalone/node_modules/next/dist/compiled/bytes/index.js +8 -0
  428. package/.next/standalone/node_modules/next/dist/compiled/bytes/package.json +1 -0
  429. package/.next/standalone/node_modules/next/dist/compiled/ci-info/index.js +1 -0
  430. package/.next/standalone/node_modules/next/dist/compiled/ci-info/package.json +1 -0
  431. package/.next/standalone/node_modules/next/dist/compiled/commander/index.js +1 -0
  432. package/.next/standalone/node_modules/next/dist/compiled/commander/package.json +1 -0
  433. package/.next/standalone/node_modules/next/dist/compiled/comment-json/index.js +7 -0
  434. package/.next/standalone/node_modules/next/dist/compiled/comment-json/package.json +1 -0
  435. package/.next/standalone/node_modules/next/dist/compiled/compression/index.js +58 -0
  436. package/.next/standalone/node_modules/next/dist/compiled/compression/package.json +1 -0
  437. package/.next/standalone/node_modules/next/dist/compiled/conf/index.js +3 -0
  438. package/.next/standalone/node_modules/next/dist/compiled/conf/package.json +1 -0
  439. package/.next/standalone/node_modules/next/dist/compiled/content-disposition/index.js +6 -0
  440. package/.next/standalone/node_modules/next/dist/compiled/content-disposition/package.json +1 -0
  441. package/.next/standalone/node_modules/next/dist/compiled/cookie/index.js +7 -0
  442. package/.next/standalone/node_modules/next/dist/compiled/cookie/package.json +1 -0
  443. package/.next/standalone/node_modules/next/dist/compiled/cross-spawn/index.js +1 -0
  444. package/.next/standalone/node_modules/next/dist/compiled/cross-spawn/package.json +1 -0
  445. package/.next/standalone/node_modules/next/dist/compiled/debug/index.js +1 -0
  446. package/.next/standalone/node_modules/next/dist/compiled/debug/package.json +1 -0
  447. package/.next/standalone/node_modules/next/dist/compiled/edge-runtime/index.js +1 -0
  448. package/.next/standalone/node_modules/next/dist/compiled/edge-runtime/package.json +1 -0
  449. package/.next/standalone/node_modules/next/dist/compiled/find-up/index.js +1 -0
  450. package/.next/standalone/node_modules/next/dist/compiled/find-up/package.json +1 -0
  451. package/.next/standalone/node_modules/next/dist/compiled/fresh/index.js +8 -0
  452. package/.next/standalone/node_modules/next/dist/compiled/fresh/package.json +1 -0
  453. package/.next/standalone/node_modules/next/dist/compiled/httpxy/index.js +1 -0
  454. package/.next/standalone/node_modules/next/dist/compiled/httpxy/package.json +1 -0
  455. package/.next/standalone/node_modules/next/dist/compiled/image-detector/detector.js +1 -0
  456. package/.next/standalone/node_modules/next/dist/compiled/image-size/index.js +1 -0
  457. package/.next/standalone/node_modules/next/dist/compiled/image-size/package.json +1 -0
  458. package/.next/standalone/node_modules/next/dist/compiled/ipaddr.js/ipaddr.js +1 -0
  459. package/.next/standalone/node_modules/next/dist/compiled/ipaddr.js/package.json +1 -0
  460. package/.next/standalone/node_modules/next/dist/compiled/is-animated/index.js +1 -0
  461. package/.next/standalone/node_modules/next/dist/compiled/is-animated/package.json +1 -0
  462. package/.next/standalone/node_modules/next/dist/compiled/is-docker/index.js +1 -0
  463. package/.next/standalone/node_modules/next/dist/compiled/is-docker/package.json +1 -0
  464. package/.next/standalone/node_modules/next/dist/compiled/is-wsl/index.js +1 -0
  465. package/.next/standalone/node_modules/next/dist/compiled/is-wsl/package.json +1 -0
  466. package/.next/standalone/node_modules/next/dist/compiled/jsonwebtoken/index.js +11 -0
  467. package/.next/standalone/node_modules/next/dist/compiled/jsonwebtoken/package.json +1 -0
  468. package/.next/standalone/node_modules/next/dist/compiled/nanoid/index.cjs +1 -0
  469. package/.next/standalone/node_modules/next/dist/compiled/nanoid/package.json +1 -0
  470. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo-experimental.runtime.prod.js +183 -0
  471. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-page-turbo.runtime.prod.js +183 -0
  472. package/.next/standalone/node_modules/next/dist/compiled/next-server/app-route-turbo.runtime.prod.js +6 -0
  473. package/.next/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +20 -0
  474. package/.next/standalone/node_modules/next/dist/compiled/p-limit/index.js +1 -0
  475. package/.next/standalone/node_modules/next/dist/compiled/p-limit/package.json +1 -0
  476. package/.next/standalone/node_modules/next/dist/compiled/p-queue/index.js +1 -0
  477. package/.next/standalone/node_modules/next/dist/compiled/p-queue/package.json +1 -0
  478. package/.next/standalone/node_modules/next/dist/compiled/path-browserify/index.js +1 -0
  479. package/.next/standalone/node_modules/next/dist/compiled/path-browserify/package.json +1 -0
  480. package/.next/standalone/node_modules/next/dist/compiled/path-to-regexp/index.js +1 -0
  481. package/.next/standalone/node_modules/next/dist/compiled/path-to-regexp/package.json +1 -0
  482. package/.next/standalone/node_modules/next/dist/compiled/picomatch/index.js +1 -0
  483. package/.next/standalone/node_modules/next/dist/compiled/picomatch/package.json +1 -0
  484. package/.next/standalone/node_modules/next/dist/compiled/react-is/cjs/react-is.development.js +133 -0
  485. package/.next/standalone/node_modules/next/dist/compiled/react-is/cjs/react-is.production.js +130 -0
  486. package/.next/standalone/node_modules/next/dist/compiled/react-is/index.js +7 -0
  487. package/.next/standalone/node_modules/next/dist/compiled/react-is/package.json +26 -0
  488. package/.next/standalone/node_modules/next/dist/compiled/regenerator-runtime/package.json +19 -0
  489. package/.next/standalone/node_modules/next/dist/compiled/regenerator-runtime/runtime.js +729 -0
  490. package/.next/standalone/node_modules/next/dist/compiled/semver/index.js +1 -0
  491. package/.next/standalone/node_modules/next/dist/compiled/semver/package.json +1 -0
  492. package/.next/standalone/node_modules/next/dist/compiled/send/index.js +70 -0
  493. package/.next/standalone/node_modules/next/dist/compiled/send/package.json +1 -0
  494. package/.next/standalone/node_modules/next/dist/compiled/source-map/package.json +1 -0
  495. package/.next/standalone/node_modules/next/dist/compiled/source-map/source-map.js +1 -0
  496. package/.next/standalone/node_modules/next/dist/compiled/stacktrace-parser/package.json +1 -0
  497. package/.next/standalone/node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js +1 -0
  498. package/.next/standalone/node_modules/next/dist/compiled/string-hash/index.js +1 -0
  499. package/.next/standalone/node_modules/next/dist/compiled/string-hash/package.json +1 -0
  500. package/.next/standalone/node_modules/next/dist/compiled/strip-ansi/index.js +1 -0
  501. package/.next/standalone/node_modules/next/dist/compiled/strip-ansi/package.json +1 -0
  502. package/.next/standalone/node_modules/next/dist/compiled/superstruct/index.cjs +1 -0
  503. package/.next/standalone/node_modules/next/dist/compiled/superstruct/package.json +1 -0
  504. package/.next/standalone/node_modules/next/dist/compiled/tar/index.min.js +1 -0
  505. package/.next/standalone/node_modules/next/dist/compiled/tar/package.json +1 -0
  506. package/.next/standalone/node_modules/next/dist/compiled/text-table/index.js +1 -0
  507. package/.next/standalone/node_modules/next/dist/compiled/text-table/package.json +1 -0
  508. package/.next/standalone/node_modules/next/dist/compiled/watchpack/package.json +1 -0
  509. package/.next/standalone/node_modules/next/dist/compiled/watchpack/watchpack.js +1 -0
  510. package/.next/standalone/node_modules/next/dist/compiled/write-file-atomic/index.js +1 -0
  511. package/.next/standalone/node_modules/next/dist/compiled/write-file-atomic/package.json +1 -0
  512. package/.next/standalone/node_modules/next/dist/compiled/ws/index.js +1 -0
  513. package/.next/standalone/node_modules/next/dist/compiled/ws/package.json +1 -0
  514. package/.next/standalone/node_modules/next/dist/compiled/zod/index.cjs +1 -0
  515. package/.next/standalone/node_modules/next/dist/compiled/zod/package.json +1 -0
  516. package/.next/standalone/node_modules/next/dist/compiled/zod-validation-error/index.js +1 -0
  517. package/.next/standalone/node_modules/next/dist/compiled/zod-validation-error/package.json +1 -0
  518. package/.next/standalone/node_modules/next/dist/experimental/testmode/context.js +57 -0
  519. package/.next/standalone/node_modules/next/dist/experimental/testmode/fetch.js +158 -0
  520. package/.next/standalone/node_modules/next/dist/experimental/testmode/httpget.js +33 -0
  521. package/.next/standalone/node_modules/next/dist/experimental/testmode/server-edge.js +32 -0
  522. package/.next/standalone/node_modules/next/dist/experimental/testmode/server.js +73 -0
  523. package/.next/standalone/node_modules/next/dist/export/helpers/create-incremental-cache.js +61 -0
  524. package/.next/standalone/node_modules/next/dist/lib/batcher.js +65 -0
  525. package/.next/standalone/node_modules/next/dist/lib/build-custom-route.js +46 -0
  526. package/.next/standalone/node_modules/next/dist/lib/bundler.js +168 -0
  527. package/.next/standalone/node_modules/next/dist/lib/client-and-server-references.js +54 -0
  528. package/.next/standalone/node_modules/next/dist/lib/coalesced-function.js +39 -0
  529. package/.next/standalone/node_modules/next/dist/lib/compile-error.js +14 -0
  530. package/.next/standalone/node_modules/next/dist/lib/constants.js +420 -0
  531. package/.next/standalone/node_modules/next/dist/lib/create-client-router-filter.js +83 -0
  532. package/.next/standalone/node_modules/next/dist/lib/default-transpiled-packages.json +1 -0
  533. package/.next/standalone/node_modules/next/dist/lib/detached-promise.js +32 -0
  534. package/.next/standalone/node_modules/next/dist/lib/detect-typo.js +51 -0
  535. package/.next/standalone/node_modules/next/dist/lib/download-swc.js +183 -0
  536. package/.next/standalone/node_modules/next/dist/lib/error-telemetry-utils.js +42 -0
  537. package/.next/standalone/node_modules/next/dist/lib/fallback.js +100 -0
  538. package/.next/standalone/node_modules/next/dist/lib/file-exists.js +53 -0
  539. package/.next/standalone/node_modules/next/dist/lib/find-config.js +102 -0
  540. package/.next/standalone/node_modules/next/dist/lib/find-pages-dir.js +65 -0
  541. package/.next/standalone/node_modules/next/dist/lib/find-root.js +280 -0
  542. package/.next/standalone/node_modules/next/dist/lib/format-cli-help-output.js +84 -0
  543. package/.next/standalone/node_modules/next/dist/lib/format-dynamic-import-path.js +43 -0
  544. package/.next/standalone/node_modules/next/dist/lib/format-server-error.js +75 -0
  545. package/.next/standalone/node_modules/next/dist/lib/framework/boundary-components.js +62 -0
  546. package/.next/standalone/node_modules/next/dist/lib/framework/boundary-constants.js +36 -0
  547. package/.next/standalone/node_modules/next/dist/lib/fs/rename.js +87 -0
  548. package/.next/standalone/node_modules/next/dist/lib/fs/write-atomic.js +28 -0
  549. package/.next/standalone/node_modules/next/dist/lib/generate-interception-routes-rewrites.js +52 -0
  550. package/.next/standalone/node_modules/next/dist/lib/get-files-in-dir.js +33 -0
  551. package/.next/standalone/node_modules/next/dist/lib/get-network-host.js +44 -0
  552. package/.next/standalone/node_modules/next/dist/lib/get-package-version.js +118 -0
  553. package/.next/standalone/node_modules/next/dist/lib/get-project-dir.js +51 -0
  554. package/.next/standalone/node_modules/next/dist/lib/git-worktree.js +74 -0
  555. package/.next/standalone/node_modules/next/dist/lib/has-necessary-dependencies.js +49 -0
  556. package/.next/standalone/node_modules/next/dist/lib/helpers/get-cache-directory.js +66 -0
  557. package/.next/standalone/node_modules/next/dist/lib/helpers/get-npx-command.js +29 -0
  558. package/.next/standalone/node_modules/next/dist/lib/helpers/get-online.js +50 -0
  559. package/.next/standalone/node_modules/next/dist/lib/helpers/get-pkg-manager.js +65 -0
  560. package/.next/standalone/node_modules/next/dist/lib/helpers/get-registry.js +45 -0
  561. package/.next/standalone/node_modules/next/dist/lib/helpers/get-reserved-port.js +116 -0
  562. package/.next/standalone/node_modules/next/dist/lib/helpers/git.js +59 -0
  563. package/.next/standalone/node_modules/next/dist/lib/helpers/install.js +83 -0
  564. package/.next/standalone/node_modules/next/dist/lib/import-next-warning.js +50 -0
  565. package/.next/standalone/node_modules/next/dist/lib/inline-static-env.js +112 -0
  566. package/.next/standalone/node_modules/next/dist/lib/install-dependencies.js +40 -0
  567. package/.next/standalone/node_modules/next/dist/lib/interop-default.js +16 -0
  568. package/.next/standalone/node_modules/next/dist/lib/is-api-route.js +15 -0
  569. package/.next/standalone/node_modules/next/dist/lib/is-app-page-route.js +15 -0
  570. package/.next/standalone/node_modules/next/dist/lib/is-app-route-route.js +15 -0
  571. package/.next/standalone/node_modules/next/dist/lib/is-edge-runtime.js +16 -0
  572. package/.next/standalone/node_modules/next/dist/lib/is-error.js +78 -0
  573. package/.next/standalone/node_modules/next/dist/lib/is-interception-route-rewrite.js +18 -0
  574. package/.next/standalone/node_modules/next/dist/lib/is-internal-component.js +36 -0
  575. package/.next/standalone/node_modules/next/dist/lib/is-serializable-props.js +111 -0
  576. package/.next/standalone/node_modules/next/dist/lib/known-edge-safe-packages.json +1 -0
  577. package/.next/standalone/node_modules/next/dist/lib/load-custom-routes.js +594 -0
  578. package/.next/standalone/node_modules/next/dist/lib/memory/gc-observer.js +53 -0
  579. package/.next/standalone/node_modules/next/dist/lib/memory/shutdown.js +29 -0
  580. package/.next/standalone/node_modules/next/dist/lib/memory/startup.js +47 -0
  581. package/.next/standalone/node_modules/next/dist/lib/memory/trace.js +109 -0
  582. package/.next/standalone/node_modules/next/dist/lib/metadata/constants.js +40 -0
  583. package/.next/standalone/node_modules/next/dist/lib/metadata/default-metadata.js +82 -0
  584. package/.next/standalone/node_modules/next/dist/lib/metadata/generate/icon-mark.js +22 -0
  585. package/.next/standalone/node_modules/next/dist/lib/metadata/generate/utils.js +52 -0
  586. package/.next/standalone/node_modules/next/dist/lib/metadata/get-metadata-route.js +162 -0
  587. package/.next/standalone/node_modules/next/dist/lib/metadata/is-metadata-route.js +221 -0
  588. package/.next/standalone/node_modules/next/dist/lib/metadata/metadata-context.js +18 -0
  589. package/.next/standalone/node_modules/next/dist/lib/metadata/metadata.js +1660 -0
  590. package/.next/standalone/node_modules/next/dist/lib/metadata/resolve-metadata.js +884 -0
  591. package/.next/standalone/node_modules/next/dist/lib/metadata/resolvers/resolve-basics.js +232 -0
  592. package/.next/standalone/node_modules/next/dist/lib/metadata/resolvers/resolve-icons.js +56 -0
  593. package/.next/standalone/node_modules/next/dist/lib/metadata/resolvers/resolve-opengraph.js +199 -0
  594. package/.next/standalone/node_modules/next/dist/lib/metadata/resolvers/resolve-title.js +40 -0
  595. package/.next/standalone/node_modules/next/dist/lib/metadata/resolvers/resolve-url.js +135 -0
  596. package/.next/standalone/node_modules/next/dist/lib/metadata/types/alternative-urls-types.js +7 -0
  597. package/.next/standalone/node_modules/next/dist/lib/metadata/types/extra-types.js +9 -0
  598. package/.next/standalone/node_modules/next/dist/lib/metadata/types/icons.js +6 -0
  599. package/.next/standalone/node_modules/next/dist/lib/metadata/types/manifest-types.js +6 -0
  600. package/.next/standalone/node_modules/next/dist/lib/metadata/types/metadata-interface.js +18 -0
  601. package/.next/standalone/node_modules/next/dist/lib/metadata/types/metadata-types.js +10 -0
  602. package/.next/standalone/node_modules/next/dist/lib/metadata/types/opengraph-types.js +6 -0
  603. package/.next/standalone/node_modules/next/dist/lib/metadata/types/resolvers.js +6 -0
  604. package/.next/standalone/node_modules/next/dist/lib/metadata/types/twitter-types.js +7 -0
  605. package/.next/standalone/node_modules/next/dist/lib/mime-type.js +20 -0
  606. package/.next/standalone/node_modules/next/dist/lib/mkcert.js +204 -0
  607. package/.next/standalone/node_modules/next/dist/lib/multi-file-writer.js +75 -0
  608. package/.next/standalone/node_modules/next/dist/lib/needs-experimental-react.js +16 -0
  609. package/.next/standalone/node_modules/next/dist/lib/non-nullable.js +15 -0
  610. package/.next/standalone/node_modules/next/dist/lib/normalize-path.js +21 -0
  611. package/.next/standalone/node_modules/next/dist/lib/oxford-comma-list.js +15 -0
  612. package/.next/standalone/node_modules/next/dist/lib/page-types.js +18 -0
  613. package/.next/standalone/node_modules/next/dist/lib/patch-incorrect-lockfile.js +185 -0
  614. package/.next/standalone/node_modules/next/dist/lib/pick.js +19 -0
  615. package/.next/standalone/node_modules/next/dist/lib/picocolors.js +177 -0
  616. package/.next/standalone/node_modules/next/dist/lib/pretty-bytes.js +74 -0
  617. package/.next/standalone/node_modules/next/dist/lib/profiles-dir.js +45 -0
  618. package/.next/standalone/node_modules/next/dist/lib/realpath.js +20 -0
  619. package/.next/standalone/node_modules/next/dist/lib/recursive-copy.js +76 -0
  620. package/.next/standalone/node_modules/next/dist/lib/recursive-delete.js +137 -0
  621. package/.next/standalone/node_modules/next/dist/lib/recursive-readdir.js +124 -0
  622. package/.next/standalone/node_modules/next/dist/lib/redirect-status.js +46 -0
  623. package/.next/standalone/node_modules/next/dist/lib/require-instrumentation-client.js +32 -0
  624. package/.next/standalone/node_modules/next/dist/lib/resolve-build-paths.js +182 -0
  625. package/.next/standalone/node_modules/next/dist/lib/resolve-from.js +65 -0
  626. package/.next/standalone/node_modules/next/dist/lib/route-pattern-normalizer.js +107 -0
  627. package/.next/standalone/node_modules/next/dist/lib/scheduler.js +64 -0
  628. package/.next/standalone/node_modules/next/dist/lib/semver-noop.js +18 -0
  629. package/.next/standalone/node_modules/next/dist/lib/server-external-packages.jsonc +103 -0
  630. package/.next/standalone/node_modules/next/dist/lib/setup-exception-listeners.js +11 -0
  631. package/.next/standalone/node_modules/next/dist/lib/static-env.js +92 -0
  632. package/.next/standalone/node_modules/next/dist/lib/try-to-parse-path.js +67 -0
  633. package/.next/standalone/node_modules/next/dist/lib/turbopack-cache-seed.js +171 -0
  634. package/.next/standalone/node_modules/next/dist/lib/turbopack-warning.js +185 -0
  635. package/.next/standalone/node_modules/next/dist/lib/typescript/diagnosticFormatter.js +243 -0
  636. package/.next/standalone/node_modules/next/dist/lib/typescript/getTypeScriptConfiguration.js +73 -0
  637. package/.next/standalone/node_modules/next/dist/lib/typescript/getTypeScriptIntent.js +52 -0
  638. package/.next/standalone/node_modules/next/dist/lib/typescript/loadTsConfig.js +181 -0
  639. package/.next/standalone/node_modules/next/dist/lib/typescript/missingDependencyError.js +26 -0
  640. package/.next/standalone/node_modules/next/dist/lib/typescript/runTypeCheck.js +149 -0
  641. package/.next/standalone/node_modules/next/dist/lib/typescript/runTypeCheckCli.js +53 -0
  642. package/.next/standalone/node_modules/next/dist/lib/typescript/runTypeScriptCli.js +256 -0
  643. package/.next/standalone/node_modules/next/dist/lib/typescript/type-paths.js +51 -0
  644. package/.next/standalone/node_modules/next/dist/lib/typescript/writeAppTypeDeclarations.js +77 -0
  645. package/.next/standalone/node_modules/next/dist/lib/typescript/writeConfigurationDefaults.js +395 -0
  646. package/.next/standalone/node_modules/next/dist/lib/url.js +75 -0
  647. package/.next/standalone/node_modules/next/dist/lib/verify-partytown-setup.js +104 -0
  648. package/.next/standalone/node_modules/next/dist/lib/verify-root-layout.js +165 -0
  649. package/.next/standalone/node_modules/next/dist/lib/verify-typescript-setup.js +271 -0
  650. package/.next/standalone/node_modules/next/dist/lib/wait.js +19 -0
  651. package/.next/standalone/node_modules/next/dist/lib/with-promise-cache.js +24 -0
  652. package/.next/standalone/node_modules/next/dist/lib/worker.js +234 -0
  653. package/.next/standalone/node_modules/next/dist/server/ReactDOMServerPages.js +16 -0
  654. package/.next/standalone/node_modules/next/dist/server/accept-header.js +132 -0
  655. package/.next/standalone/node_modules/next/dist/server/after/after-context.js +178 -0
  656. package/.next/standalone/node_modules/next/dist/server/after/after.js +28 -0
  657. package/.next/standalone/node_modules/next/dist/server/after/awaiter.js +74 -0
  658. package/.next/standalone/node_modules/next/dist/server/after/builtin-request-context.js +38 -0
  659. package/.next/standalone/node_modules/next/dist/server/after/index.js +21 -0
  660. package/.next/standalone/node_modules/next/dist/server/after/run-with-after.js +35 -0
  661. package/.next/standalone/node_modules/next/dist/server/api-utils/get-cookie-parser.js +22 -0
  662. package/.next/standalone/node_modules/next/dist/server/api-utils/index.js +217 -0
  663. package/.next/standalone/node_modules/next/dist/server/api-utils/node/api-resolver.js +395 -0
  664. package/.next/standalone/node_modules/next/dist/server/api-utils/node/parse-body.js +79 -0
  665. package/.next/standalone/node_modules/next/dist/server/api-utils/node/try-get-preview-data.js +89 -0
  666. package/.next/standalone/node_modules/next/dist/server/api-utils/web.js +17 -0
  667. package/.next/standalone/node_modules/next/dist/server/app-render/action-async-storage-instance.js +14 -0
  668. package/.next/standalone/node_modules/next/dist/server/app-render/action-async-storage.external.js +13 -0
  669. package/.next/standalone/node_modules/next/dist/server/app-render/action-handler.js +1125 -0
  670. package/.next/standalone/node_modules/next/dist/server/app-render/after-task-async-storage-instance.js +14 -0
  671. package/.next/standalone/node_modules/next/dist/server/app-render/after-task-async-storage.external.js +13 -0
  672. package/.next/standalone/node_modules/next/dist/server/app-render/app-render-prerender-utils.js +332 -0
  673. package/.next/standalone/node_modules/next/dist/server/app-render/app-render-render-utils.js +76 -0
  674. package/.next/standalone/node_modules/next/dist/server/app-render/app-render-scheduling.js +188 -0
  675. package/.next/standalone/node_modules/next/dist/server/app-render/app-render.js +6496 -0
  676. package/.next/standalone/node_modules/next/dist/server/app-render/async-local-storage.js +76 -0
  677. package/.next/standalone/node_modules/next/dist/server/app-render/blocking-route-messages.js +181 -0
  678. package/.next/standalone/node_modules/next/dist/server/app-render/cache-signal.js +181 -0
  679. package/.next/standalone/node_modules/next/dist/server/app-render/collect-segment-data.js +937 -0
  680. package/.next/standalone/node_modules/next/dist/server/app-render/console-async-storage-instance.js +14 -0
  681. package/.next/standalone/node_modules/next/dist/server/app-render/console-async-storage.external.js +13 -0
  682. package/.next/standalone/node_modules/next/dist/server/app-render/create-component-styles-and-scripts.js +39 -0
  683. package/.next/standalone/node_modules/next/dist/server/app-render/create-component-tree.js +806 -0
  684. package/.next/standalone/node_modules/next/dist/server/app-render/create-error-handler.js +190 -0
  685. package/.next/standalone/node_modules/next/dist/server/app-render/create-flight-router-state-from-loader-tree.js +154 -0
  686. package/.next/standalone/node_modules/next/dist/server/app-render/csrf-protection.js +86 -0
  687. package/.next/standalone/node_modules/next/dist/server/app-render/debug-channel-server.js +47 -0
  688. package/.next/standalone/node_modules/next/dist/server/app-render/debug-channel-server.node.js +60 -0
  689. package/.next/standalone/node_modules/next/dist/server/app-render/debug-channel-server.web.js +60 -0
  690. package/.next/standalone/node_modules/next/dist/server/app-render/dev-validation-error-delivery.js +37 -0
  691. package/.next/standalone/node_modules/next/dist/server/app-render/dev-validation-events.js +26 -0
  692. package/.next/standalone/node_modules/next/dist/server/app-render/dev-validation-scheduler.js +87 -0
  693. package/.next/standalone/node_modules/next/dist/server/app-render/dev-validation-worker-globals.js +41 -0
  694. package/.next/standalone/node_modules/next/dist/server/app-render/dev-validation-worker-snapshot.js +79 -0
  695. package/.next/standalone/node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js +14 -0
  696. package/.next/standalone/node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js +13 -0
  697. package/.next/standalone/node_modules/next/dist/server/app-render/dynamic-rendering.js +1201 -0
  698. package/.next/standalone/node_modules/next/dist/server/app-render/encryption-utils-server.js +114 -0
  699. package/.next/standalone/node_modules/next/dist/server/app-render/encryption-utils.js +93 -0
  700. package/.next/standalone/node_modules/next/dist/server/app-render/encryption.js +261 -0
  701. package/.next/standalone/node_modules/next/dist/server/app-render/entry-base.js +265 -0
  702. package/.next/standalone/node_modules/next/dist/server/app-render/flight-render-result.js +28 -0
  703. package/.next/standalone/node_modules/next/dist/server/app-render/get-asset-query-string.js +29 -0
  704. package/.next/standalone/node_modules/next/dist/server/app-render/get-css-inlined-link-tags.js +45 -0
  705. package/.next/standalone/node_modules/next/dist/server/app-render/get-layer-assets.js +69 -0
  706. package/.next/standalone/node_modules/next/dist/server/app-render/get-preloadable-fonts.js +39 -0
  707. package/.next/standalone/node_modules/next/dist/server/app-render/get-script-nonce-from-header.js +32 -0
  708. package/.next/standalone/node_modules/next/dist/server/app-render/get-short-dynamic-param-type.js +25 -0
  709. package/.next/standalone/node_modules/next/dist/server/app-render/has-loading-component-in-tree.js +19 -0
  710. package/.next/standalone/node_modules/next/dist/server/app-render/instant-test-bootstrap.js +20 -0
  711. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js +31 -0
  712. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/boundary-impl.js +127 -0
  713. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/boundary-tracking.js +38 -0
  714. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/instant-config.js +241 -0
  715. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/instant-samples.js +432 -0
  716. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/instant-validation-error.js +33 -0
  717. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/instant-validation.js +934 -0
  718. package/.next/standalone/node_modules/next/dist/server/app-render/instant-validation/stream-utils.js +96 -0
  719. package/.next/standalone/node_modules/next/dist/server/app-render/interop-default.js +17 -0
  720. package/.next/standalone/node_modules/next/dist/server/app-render/make-get-server-inserted-html.js +91 -0
  721. package/.next/standalone/node_modules/next/dist/server/app-render/manifests-singleton.js +327 -0
  722. package/.next/standalone/node_modules/next/dist/server/app-render/metadata-insertion/create-server-inserted-metadata.js +29 -0
  723. package/.next/standalone/node_modules/next/dist/server/app-render/module-loading/instrument-module-getter.js +32 -0
  724. package/.next/standalone/node_modules/next/dist/server/app-render/module-loading/track-dynamic-import.js +57 -0
  725. package/.next/standalone/node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js +32 -0
  726. package/.next/standalone/node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js +62 -0
  727. package/.next/standalone/node_modules/next/dist/server/app-render/parse-and-validate-flight-router-state.js +49 -0
  728. package/.next/standalone/node_modules/next/dist/server/app-render/postponed-state.js +230 -0
  729. package/.next/standalone/node_modules/next/dist/server/app-render/prospective-render-utils.js +74 -0
  730. package/.next/standalone/node_modules/next/dist/server/app-render/react-large-shell-error.js +17 -0
  731. package/.next/standalone/node_modules/next/dist/server/app-render/react-server.node.js +39 -0
  732. package/.next/standalone/node_modules/next/dist/server/app-render/render-css-resource.js +57 -0
  733. package/.next/standalone/node_modules/next/dist/server/app-render/required-scripts.js +76 -0
  734. package/.next/standalone/node_modules/next/dist/server/app-render/rsc/postpone.js +18 -0
  735. package/.next/standalone/node_modules/next/dist/server/app-render/rsc/preloads.js +74 -0
  736. package/.next/standalone/node_modules/next/dist/server/app-render/rsc/taint.js +79 -0
  737. package/.next/standalone/node_modules/next/dist/server/app-render/segment-explorer-path.js +128 -0
  738. package/.next/standalone/node_modules/next/dist/server/app-render/server-inserted-html.js +77 -0
  739. package/.next/standalone/node_modules/next/dist/server/app-render/staged-rendering.js +324 -0
  740. package/.next/standalone/node_modules/next/dist/server/app-render/stale-time.js +101 -0
  741. package/.next/standalone/node_modules/next/dist/server/app-render/stream-ops.js +155 -0
  742. package/.next/standalone/node_modules/next/dist/server/app-render/stream-ops.node.js +842 -0
  743. package/.next/standalone/node_modules/next/dist/server/app-render/stream-ops.web.js +249 -0
  744. package/.next/standalone/node_modules/next/dist/server/app-render/strip-flight-headers.js +18 -0
  745. package/.next/standalone/node_modules/next/dist/server/app-render/sync-io-messages.js +67 -0
  746. package/.next/standalone/node_modules/next/dist/server/app-render/types.js +65 -0
  747. package/.next/standalone/node_modules/next/dist/server/app-render/use-flight-response.js +217 -0
  748. package/.next/standalone/node_modules/next/dist/server/app-render/vary-params.js +261 -0
  749. package/.next/standalone/node_modules/next/dist/server/app-render/wait-for-response.js +36 -0
  750. package/.next/standalone/node_modules/next/dist/server/app-render/walk-tree-with-flight-router-state.js +237 -0
  751. package/.next/standalone/node_modules/next/dist/server/app-render/work-async-storage-instance.js +14 -0
  752. package/.next/standalone/node_modules/next/dist/server/app-render/work-async-storage.external.js +13 -0
  753. package/.next/standalone/node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js +14 -0
  754. package/.next/standalone/node_modules/next/dist/server/app-render/work-unit-async-storage.external.js +250 -0
  755. package/.next/standalone/node_modules/next/dist/server/async-storage/draft-mode-provider.js +62 -0
  756. package/.next/standalone/node_modules/next/dist/server/async-storage/request-store.js +201 -0
  757. package/.next/standalone/node_modules/next/dist/server/async-storage/with-store.js +6 -0
  758. package/.next/standalone/node_modules/next/dist/server/async-storage/work-store.js +98 -0
  759. package/.next/standalone/node_modules/next/dist/server/base-http/helpers.js +36 -0
  760. package/.next/standalone/node_modules/next/dist/server/base-http/index.js +54 -0
  761. package/.next/standalone/node_modules/next/dist/server/base-http/node.js +147 -0
  762. package/.next/standalone/node_modules/next/dist/server/base-http/web.js +124 -0
  763. package/.next/standalone/node_modules/next/dist/server/base-server.js +1957 -0
  764. package/.next/standalone/node_modules/next/dist/server/body-streams.js +122 -0
  765. package/.next/standalone/node_modules/next/dist/server/cache-dir.js +26 -0
  766. package/.next/standalone/node_modules/next/dist/server/capsize-font-metrics.json +181516 -0
  767. package/.next/standalone/node_modules/next/dist/server/ci-info.js +41 -0
  768. package/.next/standalone/node_modules/next/dist/server/client-component-renderer-logger.js +70 -0
  769. package/.next/standalone/node_modules/next/dist/server/config-schema.js +800 -0
  770. package/.next/standalone/node_modules/next/dist/server/config-shared.js +395 -0
  771. package/.next/standalone/node_modules/next/dist/server/config-utils.js +185 -0
  772. package/.next/standalone/node_modules/next/dist/server/config.js +1836 -0
  773. package/.next/standalone/node_modules/next/dist/server/create-deduped-by-callsite-server-error-logger.js +96 -0
  774. package/.next/standalone/node_modules/next/dist/server/crypto-utils.js +70 -0
  775. package/.next/standalone/node_modules/next/dist/server/dev/browser-logs/file-logger.js +186 -0
  776. package/.next/standalone/node_modules/next/dist/server/dev/browser-logs/receive-logs.js +610 -0
  777. package/.next/standalone/node_modules/next/dist/server/dev/browser-logs/source-map.js +222 -0
  778. package/.next/standalone/node_modules/next/dist/server/dev/debug-channel.js +112 -0
  779. package/.next/standalone/node_modules/next/dist/server/dev/dev-indicator-server-state.js +15 -0
  780. package/.next/standalone/node_modules/next/dist/server/dev/dev-validation-worker-pool.js +232 -0
  781. package/.next/standalone/node_modules/next/dist/server/dev/dev-validation-worker.js +308 -0
  782. package/.next/standalone/node_modules/next/dist/server/dev/get-source-map-from-file.js +100 -0
  783. package/.next/standalone/node_modules/next/dist/server/dev/hot-middleware.js +276 -0
  784. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-rspack.js +171 -0
  785. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-shared-utils.js +56 -0
  786. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +1756 -0
  787. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-types.js +60 -0
  788. package/.next/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1380 -0
  789. package/.next/standalone/node_modules/next/dist/server/dev/log-requests.js +152 -0
  790. package/.next/standalone/node_modules/next/dist/server/dev/messages.js +74 -0
  791. package/.next/standalone/node_modules/next/dist/server/dev/middleware-turbopack.js +422 -0
  792. package/.next/standalone/node_modules/next/dist/server/dev/middleware-webpack.js +495 -0
  793. package/.next/standalone/node_modules/next/dist/server/dev/node-stack-frames.js +81 -0
  794. package/.next/standalone/node_modules/next/dist/server/dev/on-demand-entry-handler.js +773 -0
  795. package/.next/standalone/node_modules/next/dist/server/dev/parse-version-info.js +108 -0
  796. package/.next/standalone/node_modules/next/dist/server/dev/require-cache.js +109 -0
  797. package/.next/standalone/node_modules/next/dist/server/dev/serialized-errors.js +67 -0
  798. package/.next/standalone/node_modules/next/dist/server/dev/server-action-logger.js +37 -0
  799. package/.next/standalone/node_modules/next/dist/server/dev/static-paths-worker.js +106 -0
  800. package/.next/standalone/node_modules/next/dist/server/dev/turbopack-utils.js +727 -0
  801. package/.next/standalone/node_modules/next/dist/server/dev/use-cache-probe-pool.js +177 -0
  802. package/.next/standalone/node_modules/next/dist/server/dev/use-cache-probe-worker.js +180 -0
  803. package/.next/standalone/node_modules/next/dist/server/dynamic-rendering-utils.js +285 -0
  804. package/.next/standalone/node_modules/next/dist/server/font-utils.js +43 -0
  805. package/.next/standalone/node_modules/next/dist/server/get-app-route-from-entrypoint.js +30 -0
  806. package/.next/standalone/node_modules/next/dist/server/get-page-files.js +40 -0
  807. package/.next/standalone/node_modules/next/dist/server/get-route-from-entrypoint.js +35 -0
  808. package/.next/standalone/node_modules/next/dist/server/image-optimizer.js +1262 -0
  809. package/.next/standalone/node_modules/next/dist/server/instrumentation/types.js +6 -0
  810. package/.next/standalone/node_modules/next/dist/server/instrumentation/utils.js +21 -0
  811. package/.next/standalone/node_modules/next/dist/server/internal-utils.js +39 -0
  812. package/.next/standalone/node_modules/next/dist/server/is-private-ip.js +36 -0
  813. package/.next/standalone/node_modules/next/dist/server/lib/app-dir-module.js +59 -0
  814. package/.next/standalone/node_modules/next/dist/server/lib/app-info-log.js +135 -0
  815. package/.next/standalone/node_modules/next/dist/server/lib/async-callback-set.js +29 -0
  816. package/.next/standalone/node_modules/next/dist/server/lib/cache-control.js +22 -0
  817. package/.next/standalone/node_modules/next/dist/server/lib/cache-handlers/default.external.js +18 -0
  818. package/.next/standalone/node_modules/next/dist/server/lib/cache-handlers/default.js +196 -0
  819. package/.next/standalone/node_modules/next/dist/server/lib/cache-handlers/types.js +8 -0
  820. package/.next/standalone/node_modules/next/dist/server/lib/chrome-devtools-workspace.js +116 -0
  821. package/.next/standalone/node_modules/next/dist/server/lib/clone-response.js +77 -0
  822. package/.next/standalone/node_modules/next/dist/server/lib/cpu-profile.js +56 -0
  823. package/.next/standalone/node_modules/next/dist/server/lib/decode-query-path-parameter.js +26 -0
  824. package/.next/standalone/node_modules/next/dist/server/lib/dedupe-fetch.js +163 -0
  825. package/.next/standalone/node_modules/next/dist/server/lib/dev-bundler-service.js +110 -0
  826. package/.next/standalone/node_modules/next/dist/server/lib/disk-lru-cache.external.js +63 -0
  827. package/.next/standalone/node_modules/next/dist/server/lib/encode-header-safe.js +44 -0
  828. package/.next/standalone/node_modules/next/dist/server/lib/etag.js +56 -0
  829. package/.next/standalone/node_modules/next/dist/server/lib/experimental/create-env-definitions.js +48 -0
  830. package/.next/standalone/node_modules/next/dist/server/lib/experimental/ppr.js +47 -0
  831. package/.next/standalone/node_modules/next/dist/server/lib/find-page-file.js +147 -0
  832. package/.next/standalone/node_modules/next/dist/server/lib/fix-mojibake.js +25 -0
  833. package/.next/standalone/node_modules/next/dist/server/lib/format-hostname.js +16 -0
  834. package/.next/standalone/node_modules/next/dist/server/lib/generate-agent-files.js +180 -0
  835. package/.next/standalone/node_modules/next/dist/server/lib/i18n-provider.js +129 -0
  836. package/.next/standalone/node_modules/next/dist/server/lib/implicit-tags.js +87 -0
  837. package/.next/standalone/node_modules/next/dist/server/lib/incremental-cache/file-system-cache.js +348 -0
  838. package/.next/standalone/node_modules/next/dist/server/lib/incremental-cache/index.js +547 -0
  839. package/.next/standalone/node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js +59 -0
  840. package/.next/standalone/node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js +73 -0
  841. package/.next/standalone/node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js +55 -0
  842. package/.next/standalone/node_modules/next/dist/server/lib/install-code-frame.js +22 -0
  843. package/.next/standalone/node_modules/next/dist/server/lib/is-ipv6.js +41 -0
  844. package/.next/standalone/node_modules/next/dist/server/lib/is-non-html-sec-fetch-dest.js +38 -0
  845. package/.next/standalone/node_modules/next/dist/server/lib/is-rsc-request.js +18 -0
  846. package/.next/standalone/node_modules/next/dist/server/lib/lazy-module.js +80 -0
  847. package/.next/standalone/node_modules/next/dist/server/lib/lazy-result.js +46 -0
  848. package/.next/standalone/node_modules/next/dist/server/lib/lru-cache.js +191 -0
  849. package/.next/standalone/node_modules/next/dist/server/lib/match-next-data-pathname.js +18 -0
  850. package/.next/standalone/node_modules/next/dist/server/lib/mock-request.js +441 -0
  851. package/.next/standalone/node_modules/next/dist/server/lib/module-loader/module-loader.js +8 -0
  852. package/.next/standalone/node_modules/next/dist/server/lib/module-loader/node-module-loader.js +25 -0
  853. package/.next/standalone/node_modules/next/dist/server/lib/module-loader/route-module-loader.js +26 -0
  854. package/.next/standalone/node_modules/next/dist/server/lib/node-fs-methods.js +28 -0
  855. package/.next/standalone/node_modules/next/dist/server/lib/params-utils.js +70 -0
  856. package/.next/standalone/node_modules/next/dist/server/lib/parse-stack.js +46 -0
  857. package/.next/standalone/node_modules/next/dist/server/lib/patch-fetch.js +1027 -0
  858. package/.next/standalone/node_modules/next/dist/server/lib/patch-set-header.js +45 -0
  859. package/.next/standalone/node_modules/next/dist/server/lib/postponed-request-body.js +64 -0
  860. package/.next/standalone/node_modules/next/dist/server/lib/release-compression-stream.js +24 -0
  861. package/.next/standalone/node_modules/next/dist/server/lib/render-server.js +157 -0
  862. package/.next/standalone/node_modules/next/dist/server/lib/router-server.js +756 -0
  863. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/block-cross-site-dev.js +110 -0
  864. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/build-data-route.js +48 -0
  865. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/build-prefetch-segment-data-route.js +50 -0
  866. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/cache-life-type-utils.js +212 -0
  867. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/decode-path-params.js +42 -0
  868. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/filesystem.js +612 -0
  869. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js +89 -0
  870. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js +114 -0
  871. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/is-postpone.js +16 -0
  872. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/proxy-request.js +128 -0
  873. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/resolve-routes.js +646 -0
  874. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/root-params-type-utils.js +61 -0
  875. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/route-types-utils.js +326 -0
  876. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/router-server-context.js +26 -0
  877. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/typegen.js +892 -0
  878. package/.next/standalone/node_modules/next/dist/server/lib/router-utils/types.js +6 -0
  879. package/.next/standalone/node_modules/next/dist/server/lib/server-action-request-meta.js +53 -0
  880. package/.next/standalone/node_modules/next/dist/server/lib/server-ipc/utils.js +83 -0
  881. package/.next/standalone/node_modules/next/dist/server/lib/source-maps.js +241 -0
  882. package/.next/standalone/node_modules/next/dist/server/lib/start-server.js +540 -0
  883. package/.next/standalone/node_modules/next/dist/server/lib/streaming-metadata.js +27 -0
  884. package/.next/standalone/node_modules/next/dist/server/lib/to-route.js +37 -0
  885. package/.next/standalone/node_modules/next/dist/server/lib/trace/constants.js +208 -0
  886. package/.next/standalone/node_modules/next/dist/server/lib/trace/local-span-recorder.js +385 -0
  887. package/.next/standalone/node_modules/next/dist/server/lib/trace/request-insights-identity.js +39 -0
  888. package/.next/standalone/node_modules/next/dist/server/lib/trace/request-insights.js +308 -0
  889. package/.next/standalone/node_modules/next/dist/server/lib/trace/span-store.js +69 -0
  890. package/.next/standalone/node_modules/next/dist/server/lib/trace/tracer.js +392 -0
  891. package/.next/standalone/node_modules/next/dist/server/lib/trace/utils.js +16 -0
  892. package/.next/standalone/node_modules/next/dist/server/lib/types.js +6 -0
  893. package/.next/standalone/node_modules/next/dist/server/lib/utils.js +292 -0
  894. package/.next/standalone/node_modules/next/dist/server/lib/worker-utils.js +36 -0
  895. package/.next/standalone/node_modules/next/dist/server/load-components.js +185 -0
  896. package/.next/standalone/node_modules/next/dist/server/load-default-error-components.js +41 -0
  897. package/.next/standalone/node_modules/next/dist/server/load-manifest.external.js +117 -0
  898. package/.next/standalone/node_modules/next/dist/server/match-bundle.js +25 -0
  899. package/.next/standalone/node_modules/next/dist/server/mcp/get-mcp-middleware.js +49 -0
  900. package/.next/standalone/node_modules/next/dist/server/mcp/get-or-create-mcp-server.js +51 -0
  901. package/.next/standalone/node_modules/next/dist/server/mcp/mcp-telemetry-tracker.js +82 -0
  902. package/.next/standalone/node_modules/next/dist/server/mcp/tools/compile-route.js +86 -0
  903. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-compilation-issues.js +68 -0
  904. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-errors.js +114 -0
  905. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-logs.js +67 -0
  906. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-page-metadata.js +188 -0
  907. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-project-metadata.js +59 -0
  908. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-request-insights.js +57 -0
  909. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-routes.js +136 -0
  910. package/.next/standalone/node_modules/next/dist/server/mcp/tools/get-server-action-by-id.js +121 -0
  911. package/.next/standalone/node_modules/next/dist/server/mcp/tools/next-instance-error-state.js +31 -0
  912. package/.next/standalone/node_modules/next/dist/server/mcp/tools/utils/browser-communication.js +90 -0
  913. package/.next/standalone/node_modules/next/dist/server/mcp/tools/utils/format-compilation-issues.js +72 -0
  914. package/.next/standalone/node_modules/next/dist/server/mcp/tools/utils/format-errors.js +137 -0
  915. package/.next/standalone/node_modules/next/dist/server/mcp/tools/utils/resolve-path-to-route.js +49 -0
  916. package/.next/standalone/node_modules/next/dist/server/next-server.js +1443 -0
  917. package/.next/standalone/node_modules/next/dist/server/next-typescript.js +13 -0
  918. package/.next/standalone/node_modules/next/dist/server/next.js +485 -0
  919. package/.next/standalone/node_modules/next/dist/server/node-environment-baseline.js +25 -0
  920. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/console-dim.external.js +301 -0
  921. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/console-exit.js +49 -0
  922. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/console-file.js +56 -0
  923. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/date.js +52 -0
  924. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/error-inspect.js +8 -0
  925. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js +577 -0
  926. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/global-behaviors.js +33 -0
  927. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/io-utils.js +102 -0
  928. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/node-crypto.js +103 -0
  929. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/process-error-handlers.js +170 -0
  930. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/random.js +28 -0
  931. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js +518 -0
  932. package/.next/standalone/node_modules/next/dist/server/node-environment-extensions/web-crypto.js +45 -0
  933. package/.next/standalone/node_modules/next/dist/server/node-environment.js +19 -0
  934. package/.next/standalone/node_modules/next/dist/server/node-polyfill-crypto.js +21 -0
  935. package/.next/standalone/node_modules/next/dist/server/normalizers/absolute-filename-normalizer.js +33 -0
  936. package/.next/standalone/node_modules/next/dist/server/normalizers/built/app/app-bundle-path-normalizer.js +54 -0
  937. package/.next/standalone/node_modules/next/dist/server/normalizers/built/app/app-filename-normalizer.js +22 -0
  938. package/.next/standalone/node_modules/next/dist/server/normalizers/built/app/app-page-normalizer.js +40 -0
  939. package/.next/standalone/node_modules/next/dist/server/normalizers/built/app/app-pathname-normalizer.js +55 -0
  940. package/.next/standalone/node_modules/next/dist/server/normalizers/built/app/index.js +42 -0
  941. package/.next/standalone/node_modules/next/dist/server/normalizers/built/pages/index.js +44 -0
  942. package/.next/standalone/node_modules/next/dist/server/normalizers/built/pages/pages-bundle-path-normalizer.js +55 -0
  943. package/.next/standalone/node_modules/next/dist/server/normalizers/built/pages/pages-filename-normalizer.js +22 -0
  944. package/.next/standalone/node_modules/next/dist/server/normalizers/built/pages/pages-page-normalizer.js +19 -0
  945. package/.next/standalone/node_modules/next/dist/server/normalizers/built/pages/pages-pathname-normalizer.js +19 -0
  946. package/.next/standalone/node_modules/next/dist/server/normalizers/locale-route-normalizer.js +26 -0
  947. package/.next/standalone/node_modules/next/dist/server/normalizers/normalizer.js +6 -0
  948. package/.next/standalone/node_modules/next/dist/server/normalizers/normalizers.js +23 -0
  949. package/.next/standalone/node_modules/next/dist/server/normalizers/prefixing-normalizer.js +26 -0
  950. package/.next/standalone/node_modules/next/dist/server/normalizers/request/base-path.js +25 -0
  951. package/.next/standalone/node_modules/next/dist/server/normalizers/request/next-data.js +38 -0
  952. package/.next/standalone/node_modules/next/dist/server/normalizers/request/pathname-normalizer.js +6 -0
  953. package/.next/standalone/node_modules/next/dist/server/normalizers/request/prefix.js +39 -0
  954. package/.next/standalone/node_modules/next/dist/server/normalizers/request/rsc.js +19 -0
  955. package/.next/standalone/node_modules/next/dist/server/normalizers/request/segment-prefix-rsc.js +33 -0
  956. package/.next/standalone/node_modules/next/dist/server/normalizers/request/suffix.js +27 -0
  957. package/.next/standalone/node_modules/next/dist/server/normalizers/underscore-normalizer.js +17 -0
  958. package/.next/standalone/node_modules/next/dist/server/normalizers/wrap-normalizer-fn.js +17 -0
  959. package/.next/standalone/node_modules/next/dist/server/og/cache-image-response.js +341 -0
  960. package/.next/standalone/node_modules/next/dist/server/og/image-response.js +72 -0
  961. package/.next/standalone/node_modules/next/dist/server/patch-error-inspect.js +507 -0
  962. package/.next/standalone/node_modules/next/dist/server/pipe-readable.js +212 -0
  963. package/.next/standalone/node_modules/next/dist/server/post-process.js +39 -0
  964. package/.next/standalone/node_modules/next/dist/server/render-result.js +246 -0
  965. package/.next/standalone/node_modules/next/dist/server/render.js +1150 -0
  966. package/.next/standalone/node_modules/next/dist/server/request/connection.js +135 -0
  967. package/.next/standalone/node_modules/next/dist/server/request/cookies.js +239 -0
  968. package/.next/standalone/node_modules/next/dist/server/request/draft-mode.js +238 -0
  969. package/.next/standalone/node_modules/next/dist/server/request/fallback-params.js +95 -0
  970. package/.next/standalone/node_modules/next/dist/server/request/headers.js +235 -0
  971. package/.next/standalone/node_modules/next/dist/server/request/io.js +96 -0
  972. package/.next/standalone/node_modules/next/dist/server/request/params.js +634 -0
  973. package/.next/standalone/node_modules/next/dist/server/request/pathname.js +141 -0
  974. package/.next/standalone/node_modules/next/dist/server/request/root-params.js +202 -0
  975. package/.next/standalone/node_modules/next/dist/server/request/search-params.js +582 -0
  976. package/.next/standalone/node_modules/next/dist/server/request/utils.js +84 -0
  977. package/.next/standalone/node_modules/next/dist/server/request-meta.js +55 -0
  978. package/.next/standalone/node_modules/next/dist/server/require-hook.js +82 -0
  979. package/.next/standalone/node_modules/next/dist/server/require.js +109 -0
  980. package/.next/standalone/node_modules/next/dist/server/response-cache/index.js +323 -0
  981. package/.next/standalone/node_modules/next/dist/server/response-cache/types.js +41 -0
  982. package/.next/standalone/node_modules/next/dist/server/response-cache/utils.js +104 -0
  983. package/.next/standalone/node_modules/next/dist/server/response-cache/web.js +101 -0
  984. package/.next/standalone/node_modules/next/dist/server/resume-data-cache/cache-store.js +101 -0
  985. package/.next/standalone/node_modules/next/dist/server/resume-data-cache/resume-data-cache.js +142 -0
  986. package/.next/standalone/node_modules/next/dist/server/revalidation-utils.js +156 -0
  987. package/.next/standalone/node_modules/next/dist/server/route-definitions/app-page-route-definition.js +16 -0
  988. package/.next/standalone/node_modules/next/dist/server/route-definitions/app-route-route-definition.js +6 -0
  989. package/.next/standalone/node_modules/next/dist/server/route-definitions/locale-route-definition.js +6 -0
  990. package/.next/standalone/node_modules/next/dist/server/route-definitions/pages-api-route-definition.js +6 -0
  991. package/.next/standalone/node_modules/next/dist/server/route-definitions/pages-route-definition.js +6 -0
  992. package/.next/standalone/node_modules/next/dist/server/route-definitions/route-definition.js +6 -0
  993. package/.next/standalone/node_modules/next/dist/server/route-kind.js +32 -0
  994. package/.next/standalone/node_modules/next/dist/server/route-matcher-managers/default-route-matcher-manager.js +239 -0
  995. package/.next/standalone/node_modules/next/dist/server/route-matcher-managers/dev-route-matcher-manager.js +120 -0
  996. package/.next/standalone/node_modules/next/dist/server/route-matcher-managers/route-matcher-manager.js +6 -0
  997. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/app-page-route-matcher-provider.js +55 -0
  998. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/app-route-route-matcher-provider.js +43 -0
  999. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/dev-app-page-route-matcher-provider.js +91 -0
  1000. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/dev-app-route-route-matcher-provider.js +112 -0
  1001. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/dev-pages-api-route-matcher-provider.js +77 -0
  1002. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/dev-pages-route-matcher-provider.js +77 -0
  1003. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/file-cache-route-matcher-provider.js +28 -0
  1004. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/helpers/file-reader/batched-file-reader.js +106 -0
  1005. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/helpers/file-reader/default-file-reader.js +42 -0
  1006. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/dev/helpers/file-reader/file-reader.js +6 -0
  1007. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/helpers/cached-route-matcher-provider.js +30 -0
  1008. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/helpers/manifest-loaders/manifest-loader.js +6 -0
  1009. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/helpers/manifest-loaders/node-manifest-loader.js +34 -0
  1010. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/helpers/manifest-loaders/server-manifest-loader.js +20 -0
  1011. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/manifest-route-matcher-provider.js +21 -0
  1012. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/pages-api-route-matcher-provider.js +55 -0
  1013. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/pages-route-matcher-provider.js +64 -0
  1014. package/.next/standalone/node_modules/next/dist/server/route-matcher-providers/route-matcher-provider.js +6 -0
  1015. package/.next/standalone/node_modules/next/dist/server/route-matchers/app-page-route-matcher.js +18 -0
  1016. package/.next/standalone/node_modules/next/dist/server/route-matchers/app-route-route-matcher.js +15 -0
  1017. package/.next/standalone/node_modules/next/dist/server/route-matchers/locale-route-matcher.js +68 -0
  1018. package/.next/standalone/node_modules/next/dist/server/route-matchers/pages-api-route-matcher.js +30 -0
  1019. package/.next/standalone/node_modules/next/dist/server/route-matchers/pages-route-matcher.js +30 -0
  1020. package/.next/standalone/node_modules/next/dist/server/route-matchers/route-matcher.js +54 -0
  1021. package/.next/standalone/node_modules/next/dist/server/route-matches/app-page-route-match.js +6 -0
  1022. package/.next/standalone/node_modules/next/dist/server/route-matches/app-route-route-match.js +6 -0
  1023. package/.next/standalone/node_modules/next/dist/server/route-matches/locale-route-match.js +6 -0
  1024. package/.next/standalone/node_modules/next/dist/server/route-matches/pages-api-route-match.js +16 -0
  1025. package/.next/standalone/node_modules/next/dist/server/route-matches/pages-route-match.js +6 -0
  1026. package/.next/standalone/node_modules/next/dist/server/route-matches/route-match.js +6 -0
  1027. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/helpers/prerender-manifest-matcher.js +51 -0
  1028. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/module.compiled.js +36 -0
  1029. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/module.js +176 -0
  1030. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/module.render.js +24 -0
  1031. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/normalize-request-url.js +62 -0
  1032. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/app-router-context.js +4 -0
  1033. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/entrypoints.js +87 -0
  1034. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/head-manager-context.js +4 -0
  1035. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/hooks-client-context.js +4 -0
  1036. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/image-config-context.js +4 -0
  1037. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/router-context.js +4 -0
  1038. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/contexts/server-inserted-html.js +4 -0
  1039. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/entrypoints.js +140 -0
  1040. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-compiler-runtime.js +4 -0
  1041. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-dom.js +4 -0
  1042. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-dev-runtime.js +4 -0
  1043. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-jsx-runtime.js +4 -0
  1044. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-server-dom-turbopack-server.js +4 -0
  1045. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-server-dom-turbopack-static.js +4 -0
  1046. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-server-dom-webpack-server.js +4 -0
  1047. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react-server-dom-webpack-static.js +4 -0
  1048. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/rsc/react.js +4 -0
  1049. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/entrypoints.js +125 -0
  1050. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-compiler-runtime.js +4 -0
  1051. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-dom-server.js +4 -0
  1052. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-dom.js +4 -0
  1053. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-jsx-dev-runtime.js +4 -0
  1054. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-jsx-runtime.js +4 -0
  1055. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-server-dom-turbopack-client.js +4 -0
  1056. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react-server-dom-webpack-client.js +4 -0
  1057. package/.next/standalone/node_modules/next/dist/server/route-modules/app-page/vendored/ssr/react.js +4 -0
  1058. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/helpers/auto-implement-methods.js +85 -0
  1059. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/helpers/clean-url.js +24 -0
  1060. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/helpers/get-pathname-from-absolute-path.js +29 -0
  1061. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/helpers/is-static-gen-enabled.js +15 -0
  1062. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/helpers/parsed-url-query-to-params.js +20 -0
  1063. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/module.compiled.js +36 -0
  1064. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/module.js +948 -0
  1065. package/.next/standalone/node_modules/next/dist/server/route-modules/app-route/shared-modules.js +56 -0
  1066. package/.next/standalone/node_modules/next/dist/server/route-modules/checks.js +45 -0
  1067. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/builtin/_error.js +100 -0
  1068. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/module.compiled.js +20 -0
  1069. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/module.js +92 -0
  1070. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/module.render.js +24 -0
  1071. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/pages-handler.js +567 -0
  1072. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/app-router-context.js +4 -0
  1073. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/entrypoints.js +102 -0
  1074. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/head-manager-context.js +4 -0
  1075. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/hooks-client-context.js +4 -0
  1076. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/html-context.js +4 -0
  1077. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/image-config-context.js +4 -0
  1078. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/loadable-context.js +4 -0
  1079. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/loadable.js +4 -0
  1080. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/router-context.js +4 -0
  1081. package/.next/standalone/node_modules/next/dist/server/route-modules/pages/vendored/contexts/server-inserted-html.js +4 -0
  1082. package/.next/standalone/node_modules/next/dist/server/route-modules/pages-api/module.compiled.js +20 -0
  1083. package/.next/standalone/node_modules/next/dist/server/route-modules/pages-api/module.js +58 -0
  1084. package/.next/standalone/node_modules/next/dist/server/route-modules/route-module.js +697 -0
  1085. package/.next/standalone/node_modules/next/dist/server/runtime-reacts.external.js +46 -0
  1086. package/.next/standalone/node_modules/next/dist/server/send-payload.js +88 -0
  1087. package/.next/standalone/node_modules/next/dist/server/send-response.js +70 -0
  1088. package/.next/standalone/node_modules/next/dist/server/serve-static.js +66 -0
  1089. package/.next/standalone/node_modules/next/dist/server/server-route-utils.js +30 -0
  1090. package/.next/standalone/node_modules/next/dist/server/server-utils.js +340 -0
  1091. package/.next/standalone/node_modules/next/dist/server/setup-http-agent-env.js +31 -0
  1092. package/.next/standalone/node_modules/next/dist/server/stream-utils/encoded-tags.js +122 -0
  1093. package/.next/standalone/node_modules/next/dist/server/stream-utils/node-buffered-transform-stream.js +51 -0
  1094. package/.next/standalone/node_modules/next/dist/server/stream-utils/node-web-streams-helper.js +939 -0
  1095. package/.next/standalone/node_modules/next/dist/server/stream-utils/uint8array-helpers.js +74 -0
  1096. package/.next/standalone/node_modules/next/dist/server/typescript/constant.js +98 -0
  1097. package/.next/standalone/node_modules/next/dist/server/typescript/index.js +199 -0
  1098. package/.next/standalone/node_modules/next/dist/server/typescript/rules/client-boundary.js +100 -0
  1099. package/.next/standalone/node_modules/next/dist/server/typescript/rules/config.js +534 -0
  1100. package/.next/standalone/node_modules/next/dist/server/typescript/rules/entry.js +149 -0
  1101. package/.next/standalone/node_modules/next/dist/server/typescript/rules/error.js +38 -0
  1102. package/.next/standalone/node_modules/next/dist/server/typescript/rules/metadata.js +234 -0
  1103. package/.next/standalone/node_modules/next/dist/server/typescript/rules/server-boundary.js +115 -0
  1104. package/.next/standalone/node_modules/next/dist/server/typescript/rules/server.js +79 -0
  1105. package/.next/standalone/node_modules/next/dist/server/typescript/utils.js +212 -0
  1106. package/.next/standalone/node_modules/next/dist/server/use-cache/cache-life-profile.js +84 -0
  1107. package/.next/standalone/node_modules/next/dist/server/use-cache/cache-life.js +102 -0
  1108. package/.next/standalone/node_modules/next/dist/server/use-cache/cache-tag.js +52 -0
  1109. package/.next/standalone/node_modules/next/dist/server/use-cache/clone-cache-entry.js +28 -0
  1110. package/.next/standalone/node_modules/next/dist/server/use-cache/constants.js +44 -0
  1111. package/.next/standalone/node_modules/next/dist/server/use-cache/handlers.js +274 -0
  1112. package/.next/standalone/node_modules/next/dist/server/use-cache/tiered-cache-handler.js +145 -0
  1113. package/.next/standalone/node_modules/next/dist/server/use-cache/use-cache-errors.js +59 -0
  1114. package/.next/standalone/node_modules/next/dist/server/use-cache/use-cache-probe-globals.js +39 -0
  1115. package/.next/standalone/node_modules/next/dist/server/use-cache/use-cache-probe-scheduler.js +117 -0
  1116. package/.next/standalone/node_modules/next/dist/server/use-cache/use-cache-wrapper.js +2610 -0
  1117. package/.next/standalone/node_modules/next/dist/server/utils.js +73 -0
  1118. package/.next/standalone/node_modules/next/dist/server/web/adapter.js +428 -0
  1119. package/.next/standalone/node_modules/next/dist/server/web/edge-route-module-wrapper.js +136 -0
  1120. package/.next/standalone/node_modules/next/dist/server/web/error.js +69 -0
  1121. package/.next/standalone/node_modules/next/dist/server/web/exports/index.js +56 -0
  1122. package/.next/standalone/node_modules/next/dist/server/web/get-edge-preview-props.js +23 -0
  1123. package/.next/standalone/node_modules/next/dist/server/web/globals.js +128 -0
  1124. package/.next/standalone/node_modules/next/dist/server/web/http.js +39 -0
  1125. package/.next/standalone/node_modules/next/dist/server/web/internal-edge-wait-until.js +64 -0
  1126. package/.next/standalone/node_modules/next/dist/server/web/next-url.js +199 -0
  1127. package/.next/standalone/node_modules/next/dist/server/web/sandbox/context.js +468 -0
  1128. package/.next/standalone/node_modules/next/dist/server/web/sandbox/fetch-inline-assets.js +35 -0
  1129. package/.next/standalone/node_modules/next/dist/server/web/sandbox/index.js +28 -0
  1130. package/.next/standalone/node_modules/next/dist/server/web/sandbox/resource-managers.js +123 -0
  1131. package/.next/standalone/node_modules/next/dist/server/web/sandbox/sandbox.js +137 -0
  1132. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/adapters/headers.js +293 -0
  1133. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/adapters/next-request.js +142 -0
  1134. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/adapters/reflect.js +30 -0
  1135. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/adapters/request-cookies.js +226 -0
  1136. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/cookies.js +29 -0
  1137. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/fetch-event.js +98 -0
  1138. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/image-response.js +22 -0
  1139. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/request.js +99 -0
  1140. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/response.js +136 -0
  1141. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/revalidate.js +226 -0
  1142. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/unstable-cache.js +307 -0
  1143. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/unstable-no-store.js +51 -0
  1144. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/url-pattern.js +13 -0
  1145. package/.next/standalone/node_modules/next/dist/server/web/spec-extension/user-agent.js +46 -0
  1146. package/.next/standalone/node_modules/next/dist/server/web/types.js +6 -0
  1147. package/.next/standalone/node_modules/next/dist/server/web/utils.js +151 -0
  1148. package/.next/standalone/node_modules/next/dist/server/web/web-on-close.js +87 -0
  1149. package/.next/standalone/node_modules/next/dist/shared/lib/action-revalidation-kind.js +31 -0
  1150. package/.next/standalone/node_modules/next/dist/shared/lib/app-router-context.shared-runtime.js +50 -0
  1151. package/.next/standalone/node_modules/next/dist/shared/lib/app-router-types.js +159 -0
  1152. package/.next/standalone/node_modules/next/dist/shared/lib/constants.js +453 -0
  1153. package/.next/standalone/node_modules/next/dist/shared/lib/deep-freeze.js +30 -0
  1154. package/.next/standalone/node_modules/next/dist/shared/lib/deployment-id.js +63 -0
  1155. package/.next/standalone/node_modules/next/dist/shared/lib/dset.js +34 -0
  1156. package/.next/standalone/node_modules/next/dist/shared/lib/encode-uri-path.js +15 -0
  1157. package/.next/standalone/node_modules/next/dist/shared/lib/entry-constants.js +36 -0
  1158. package/.next/standalone/node_modules/next/dist/shared/lib/error-source.js +36 -0
  1159. package/.next/standalone/node_modules/next/dist/shared/lib/errors/code-frame.js +20 -0
  1160. package/.next/standalone/node_modules/next/dist/shared/lib/errors/constants.js +19 -0
  1161. package/.next/standalone/node_modules/next/dist/shared/lib/errors/empty-generate-static-params-error.js +31 -0
  1162. package/.next/standalone/node_modules/next/dist/shared/lib/errors/hard-deprecated-config-error.js +25 -0
  1163. package/.next/standalone/node_modules/next/dist/shared/lib/escape-regexp.js +22 -0
  1164. package/.next/standalone/node_modules/next/dist/shared/lib/get-hostname.js +23 -0
  1165. package/.next/standalone/node_modules/next/dist/shared/lib/hash.js +42 -0
  1166. package/.next/standalone/node_modules/next/dist/shared/lib/head-manager-context.shared-runtime.js +18 -0
  1167. package/.next/standalone/node_modules/next/dist/shared/lib/head.js +164 -0
  1168. package/.next/standalone/node_modules/next/dist/shared/lib/hooks-client-context.shared-runtime.js +60 -0
  1169. package/.next/standalone/node_modules/next/dist/shared/lib/html-context.shared-runtime.js +40 -0
  1170. package/.next/standalone/node_modules/next/dist/shared/lib/htmlescape.js +52 -0
  1171. package/.next/standalone/node_modules/next/dist/shared/lib/i18n/detect-domain-locale.js +25 -0
  1172. package/.next/standalone/node_modules/next/dist/shared/lib/i18n/get-locale-redirect.js +59 -0
  1173. package/.next/standalone/node_modules/next/dist/shared/lib/i18n/normalize-locale-path.js +54 -0
  1174. package/.next/standalone/node_modules/next/dist/shared/lib/image-blur-svg.js +22 -0
  1175. package/.next/standalone/node_modules/next/dist/shared/lib/image-config-context.shared-runtime.js +19 -0
  1176. package/.next/standalone/node_modules/next/dist/shared/lib/image-config.js +77 -0
  1177. package/.next/standalone/node_modules/next/dist/shared/lib/instant-messages.js +43 -0
  1178. package/.next/standalone/node_modules/next/dist/shared/lib/invariant-error.js +23 -0
  1179. package/.next/standalone/node_modules/next/dist/shared/lib/is-plain-object.js +42 -0
  1180. package/.next/standalone/node_modules/next/dist/shared/lib/is-thenable.js +20 -0
  1181. package/.next/standalone/node_modules/next/dist/shared/lib/isomorphic/path.js +14 -0
  1182. package/.next/standalone/node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js +37 -0
  1183. package/.next/standalone/node_modules/next/dist/shared/lib/loadable-context.shared-runtime.js +19 -0
  1184. package/.next/standalone/node_modules/next/dist/shared/lib/loadable.shared-runtime.js +246 -0
  1185. package/.next/standalone/node_modules/next/dist/shared/lib/match-local-pattern.js +46 -0
  1186. package/.next/standalone/node_modules/next/dist/shared/lib/match-remote-pattern.js +63 -0
  1187. package/.next/standalone/node_modules/next/dist/shared/lib/modern-browserslist-target.js +15 -0
  1188. package/.next/standalone/node_modules/next/dist/shared/lib/no-fallback-error.external.js +18 -0
  1189. package/.next/standalone/node_modules/next/dist/shared/lib/normalized-asset-prefix.js +28 -0
  1190. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/absolute-path-to-page.js +26 -0
  1191. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/denormalize-page-path.js +18 -0
  1192. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js +18 -0
  1193. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/get-page-paths.js +40 -0
  1194. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/normalize-data-path.js +23 -0
  1195. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/normalize-page-path.js +26 -0
  1196. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/normalize-path-sep.js +19 -0
  1197. package/.next/standalone/node_modules/next/dist/shared/lib/page-path/remove-page-path-tail.js +20 -0
  1198. package/.next/standalone/node_modules/next/dist/shared/lib/promise-with-resolvers.js +26 -0
  1199. package/.next/standalone/node_modules/next/dist/shared/lib/request-insights.js +30 -0
  1200. package/.next/standalone/node_modules/next/dist/shared/lib/router/adapters.js +139 -0
  1201. package/.next/standalone/node_modules/next/dist/shared/lib/router/routes/app.js +158 -0
  1202. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/add-locale.js +28 -0
  1203. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/add-path-prefix.js +20 -0
  1204. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/add-path-suffix.js +20 -0
  1205. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/app-paths.js +62 -0
  1206. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/as-path-to-search-params.js +17 -0
  1207. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/cache-busting-search-param.js +70 -0
  1208. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/escape-path-delimiters.js +16 -0
  1209. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/format-next-pathname-info.js +27 -0
  1210. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/format-url.js +111 -0
  1211. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/get-dynamic-param.js +174 -0
  1212. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/get-next-pathname-info.js +52 -0
  1213. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/get-route-from-asset-path.js +25 -0
  1214. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/get-segment-param.js +90 -0
  1215. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/html-bots.js +17 -0
  1216. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/index.js +30 -0
  1217. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/interception-prefix-from-param-type.js +33 -0
  1218. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/interception-routes.js +108 -0
  1219. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/is-bot.js +57 -0
  1220. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/is-dynamic.js +26 -0
  1221. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/middleware-route-matcher.js +31 -0
  1222. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/parse-loader-tree.js +30 -0
  1223. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/parse-path.js +33 -0
  1224. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/parse-relative-url.js +43 -0
  1225. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/parse-url.js +38 -0
  1226. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/path-has-prefix.js +20 -0
  1227. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/path-match.js +49 -0
  1228. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/prepare-destination.js +293 -0
  1229. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/querystring.js +79 -0
  1230. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/relativize-url.js +40 -0
  1231. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/remove-path-prefix.js +39 -0
  1232. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/remove-trailing-slash.js +22 -0
  1233. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/resolve-param-value.js +116 -0
  1234. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/route-match-utils.js +113 -0
  1235. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/route-matcher.js +45 -0
  1236. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/route-regex.js +256 -0
  1237. package/.next/standalone/node_modules/next/dist/shared/lib/router/utils/sorted-routes.js +244 -0
  1238. package/.next/standalone/node_modules/next/dist/shared/lib/router-context.shared-runtime.js +18 -0
  1239. package/.next/standalone/node_modules/next/dist/shared/lib/segment-cache/segment-value-encoding.js +99 -0
  1240. package/.next/standalone/node_modules/next/dist/shared/lib/segment-cache/vary-params-decoding.js +66 -0
  1241. package/.next/standalone/node_modules/next/dist/shared/lib/segment.js +102 -0
  1242. package/.next/standalone/node_modules/next/dist/shared/lib/server-inserted-html.shared-runtime.js +35 -0
  1243. package/.next/standalone/node_modules/next/dist/shared/lib/server-reference-info.js +68 -0
  1244. package/.next/standalone/node_modules/next/dist/shared/lib/side-effect.js +63 -0
  1245. package/.next/standalone/node_modules/next/dist/shared/lib/size-limit.js +40 -0
  1246. package/.next/standalone/node_modules/next/dist/shared/lib/turbopack/internal-error.js +53 -0
  1247. package/.next/standalone/node_modules/next/dist/shared/lib/utils/reflect-utils.js +69 -0
  1248. package/.next/standalone/node_modules/next/dist/shared/lib/utils/warn-once.js +22 -0
  1249. package/.next/standalone/node_modules/next/dist/shared/lib/utils.js +216 -0
  1250. package/.next/standalone/node_modules/next/dist/shared/lib/zod.js +101 -0
  1251. package/.next/standalone/node_modules/next/dist/telemetry/agent-name.js +20 -0
  1252. package/.next/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +91 -0
  1253. package/.next/standalone/node_modules/next/dist/telemetry/detached-flush.js +56 -0
  1254. package/.next/standalone/node_modules/next/dist/telemetry/events/build.js +187 -0
  1255. package/.next/standalone/node_modules/next/dist/telemetry/events/index.js +41 -0
  1256. package/.next/standalone/node_modules/next/dist/telemetry/events/plugins.js +51 -0
  1257. package/.next/standalone/node_modules/next/dist/telemetry/events/swc-load-failure.js +55 -0
  1258. package/.next/standalone/node_modules/next/dist/telemetry/events/version.js +68 -0
  1259. package/.next/standalone/node_modules/next/dist/telemetry/flush-telemetry.js +19 -0
  1260. package/.next/standalone/node_modules/next/dist/telemetry/post-telemetry-payload.js +48 -0
  1261. package/.next/standalone/node_modules/next/dist/telemetry/project-id.js +48 -0
  1262. package/.next/standalone/node_modules/next/dist/telemetry/storage.js +305 -0
  1263. package/.next/standalone/node_modules/next/dist/trace/index.js +58 -0
  1264. package/.next/standalone/node_modules/next/dist/trace/report/index.js +37 -0
  1265. package/.next/standalone/node_modules/next/dist/trace/report/to-json-build.js +40 -0
  1266. package/.next/standalone/node_modules/next/dist/trace/report/to-json.js +171 -0
  1267. package/.next/standalone/node_modules/next/dist/trace/report/to-telemetry.js +36 -0
  1268. package/.next/standalone/node_modules/next/dist/trace/shared.js +39 -0
  1269. package/.next/standalone/node_modules/next/dist/trace/trace.js +211 -0
  1270. package/.next/standalone/node_modules/next/package.json +139 -0
  1271. package/.next/standalone/node_modules/onvif/lib/cam.js +1301 -0
  1272. package/.next/standalone/node_modules/onvif/lib/device.js +704 -0
  1273. package/.next/standalone/node_modules/onvif/lib/discovery.js +212 -0
  1274. package/.next/standalone/node_modules/onvif/lib/events.js +457 -0
  1275. package/.next/standalone/node_modules/onvif/lib/imaging.js +717 -0
  1276. package/.next/standalone/node_modules/onvif/lib/media.js +1552 -0
  1277. package/.next/standalone/node_modules/onvif/lib/onvif.js +10 -0
  1278. package/.next/standalone/node_modules/onvif/lib/ptz.js +612 -0
  1279. package/.next/standalone/node_modules/onvif/lib/recording.js +330 -0
  1280. package/.next/standalone/node_modules/onvif/lib/replay.js +45 -0
  1281. package/.next/standalone/node_modules/onvif/lib/utils.js +171 -0
  1282. package/.next/standalone/node_modules/onvif/package.json +74 -0
  1283. package/.next/standalone/node_modules/react/cjs/react-compiler-runtime.production.js +16 -0
  1284. package/.next/standalone/node_modules/react/cjs/react-jsx-dev-runtime.production.js +14 -0
  1285. package/.next/standalone/node_modules/react/cjs/react-jsx-runtime.production.js +34 -0
  1286. package/.next/standalone/node_modules/react/cjs/react.development.js +1284 -0
  1287. package/.next/standalone/node_modules/react/cjs/react.production.js +542 -0
  1288. package/.next/standalone/node_modules/react/compiler-runtime.js +14 -0
  1289. package/.next/standalone/node_modules/react/index.js +7 -0
  1290. package/.next/standalone/node_modules/react/jsx-dev-runtime.js +7 -0
  1291. package/.next/standalone/node_modules/react/jsx-runtime.js +7 -0
  1292. package/.next/standalone/node_modules/react/package.json +51 -0
  1293. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js +6603 -0
  1294. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.node.production.js +6692 -0
  1295. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.browser.production.js +7410 -0
  1296. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.edge.production.js +7512 -0
  1297. package/.next/standalone/node_modules/react-dom/cjs/react-dom-server.node.production.js +7707 -0
  1298. package/.next/standalone/node_modules/react-dom/cjs/react-dom.production.js +210 -0
  1299. package/.next/standalone/node_modules/react-dom/index.js +38 -0
  1300. package/.next/standalone/node_modules/react-dom/package.json +117 -0
  1301. package/.next/standalone/node_modules/react-dom/server.browser.js +16 -0
  1302. package/.next/standalone/node_modules/react-dom/server.edge.js +17 -0
  1303. package/.next/standalone/node_modules/react-dom/server.node.js +18 -0
  1304. package/.next/standalone/node_modules/react-dom/static.node.js +14 -0
  1305. package/.next/standalone/node_modules/sax/lib/sax.js +1866 -0
  1306. package/.next/standalone/node_modules/sax/package.json +34 -0
  1307. package/.next/standalone/node_modules/semver/package.json +38 -0
  1308. package/.next/standalone/node_modules/styled-jsx/dist/index/index.js +499 -0
  1309. package/.next/standalone/node_modules/styled-jsx/index.js +1 -0
  1310. package/.next/standalone/node_modules/styled-jsx/package.json +132 -0
  1311. package/.next/standalone/node_modules/styled-jsx/style.js +1 -0
  1312. package/.next/standalone/node_modules/xml2js/lib/bom.js +12 -0
  1313. package/.next/standalone/node_modules/xml2js/lib/builder.js +127 -0
  1314. package/.next/standalone/node_modules/xml2js/lib/defaults.js +72 -0
  1315. package/.next/standalone/node_modules/xml2js/lib/parser.js +395 -0
  1316. package/.next/standalone/node_modules/xml2js/lib/processors.js +34 -0
  1317. package/.next/standalone/node_modules/xml2js/lib/xml2js.js +39 -0
  1318. package/.next/standalone/node_modules/xml2js/package.json +93 -0
  1319. package/.next/standalone/node_modules/xmlbuilder/lib/DocumentPosition.js +12 -0
  1320. package/.next/standalone/node_modules/xmlbuilder/lib/NodeType.js +23 -0
  1321. package/.next/standalone/node_modules/xmlbuilder/lib/Utility.js +83 -0
  1322. package/.next/standalone/node_modules/xmlbuilder/lib/WriterState.js +10 -0
  1323. package/.next/standalone/node_modules/xmlbuilder/lib/XMLAttribute.js +108 -0
  1324. package/.next/standalone/node_modules/xmlbuilder/lib/XMLCData.js +36 -0
  1325. package/.next/standalone/node_modules/xmlbuilder/lib/XMLCharacterData.js +79 -0
  1326. package/.next/standalone/node_modules/xmlbuilder/lib/XMLComment.js +36 -0
  1327. package/.next/standalone/node_modules/xmlbuilder/lib/XMLDOMConfiguration.js +64 -0
  1328. package/.next/standalone/node_modules/xmlbuilder/lib/XMLDOMErrorHandler.js +16 -0
  1329. package/.next/standalone/node_modules/xmlbuilder/lib/XMLDOMImplementation.js +32 -0
  1330. package/.next/standalone/node_modules/xmlbuilder/lib/XMLDOMStringList.js +28 -0
  1331. package/.next/standalone/node_modules/xmlbuilder/lib/XMLDTDAttList.js +55 -0
  1332. package/.next/standalone/node_modules/xmlbuilder/lib/XMLDTDElement.js +38 -0
  1333. package/.next/standalone/node_modules/xmlbuilder/lib/XMLDTDEntity.js +97 -0
  1334. package/.next/standalone/node_modules/xmlbuilder/lib/XMLDTDNotation.js +52 -0
  1335. package/.next/standalone/node_modules/xmlbuilder/lib/XMLDeclaration.js +43 -0
  1336. package/.next/standalone/node_modules/xmlbuilder/lib/XMLDocType.js +186 -0
  1337. package/.next/standalone/node_modules/xmlbuilder/lib/XMLDocument.js +242 -0
  1338. package/.next/standalone/node_modules/xmlbuilder/lib/XMLDocumentCB.js +528 -0
  1339. package/.next/standalone/node_modules/xmlbuilder/lib/XMLDummy.js +31 -0
  1340. package/.next/standalone/node_modules/xmlbuilder/lib/XMLElement.js +298 -0
  1341. package/.next/standalone/node_modules/xmlbuilder/lib/XMLNamedNodeMap.js +58 -0
  1342. package/.next/standalone/node_modules/xmlbuilder/lib/XMLNode.js +785 -0
  1343. package/.next/standalone/node_modules/xmlbuilder/lib/XMLNodeList.js +28 -0
  1344. package/.next/standalone/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js +49 -0
  1345. package/.next/standalone/node_modules/xmlbuilder/lib/XMLRaw.js +35 -0
  1346. package/.next/standalone/node_modules/xmlbuilder/lib/XMLStreamWriter.js +176 -0
  1347. package/.next/standalone/node_modules/xmlbuilder/lib/XMLStringWriter.js +35 -0
  1348. package/.next/standalone/node_modules/xmlbuilder/lib/XMLStringifier.js +240 -0
  1349. package/.next/standalone/node_modules/xmlbuilder/lib/XMLText.js +69 -0
  1350. package/.next/standalone/node_modules/xmlbuilder/lib/XMLWriterBase.js +428 -0
  1351. package/.next/standalone/node_modules/xmlbuilder/lib/index.js +65 -0
  1352. package/.next/standalone/node_modules/xmlbuilder/package.json +39 -0
  1353. package/.next/standalone/package.json +79 -0
  1354. package/.next/standalone/public/file.svg +1 -0
  1355. package/.next/standalone/public/globe.svg +1 -0
  1356. package/.next/standalone/public/next.svg +1 -0
  1357. package/.next/standalone/public/vercel.svg +1 -0
  1358. package/.next/standalone/public/window.svg +1 -0
  1359. package/.next/standalone/server.js +38 -0
  1360. package/.next/standalone/src/app/api/recordings/clip/route.test.ts +83 -0
  1361. package/.next/standalone/src/app/api/recordings/clip/route.ts +64 -0
  1362. package/.next/standalone/src/app/api/recordings/route.test.ts +34 -0
  1363. package/.next/standalone/src/app/api/recordings/route.ts +12 -0
  1364. package/.next/standalone/src/app/recordings/clip-list.test.tsx +101 -0
  1365. package/.next/standalone/src/app/recordings/clip-list.tsx +111 -0
  1366. package/.next/standalone/src/app/recordings/page.test.tsx +68 -0
  1367. package/.next/standalone/src/app/recordings/page.tsx +45 -0
  1368. package/.next/static/chunks/0-4hhghprzhtw.js +1 -0
  1369. package/.next/static/chunks/04l2v6p7fakl9.js +22 -0
  1370. package/.next/static/chunks/0cz1d0mv5g_q7.js +1 -0
  1371. package/.next/static/chunks/11be91k_gj8bl.js +1 -0
  1372. package/.next/static/chunks/1ng-ttmhg6s6h.css +3 -0
  1373. package/.next/static/chunks/21qqwm68cop21.js +1 -0
  1374. package/.next/static/chunks/24ug1160gwrkx.js +1 -0
  1375. package/.next/static/chunks/27t_qfc-3_lzs.js +1 -0
  1376. package/.next/static/chunks/2a1pvrfk7fzss.js +1 -0
  1377. package/.next/static/chunks/2e7rb5bft-ekp.js +1 -0
  1378. package/.next/static/chunks/2in4angy4ta5n.js +1 -0
  1379. package/.next/static/chunks/2mmpezlrfmbu5.js +1 -0
  1380. package/.next/static/chunks/2o10tcz0x86zp.js +1 -0
  1381. package/.next/static/chunks/310vm2bl3xxpt.js +31 -0
  1382. package/.next/static/chunks/32zls3n3ypa-e.js +1 -0
  1383. package/.next/static/chunks/3fntmmi971322.js +1 -0
  1384. package/.next/static/chunks/3jl0ivt7_0tuf.js +58 -0
  1385. package/.next/static/chunks/turbopack-1gvya9vclt5yj.js +1 -0
  1386. package/.next/static/media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2 +0 -0
  1387. package/.next/static/media/53b9e256198e5412-s.390ncx5urfkfu.woff2 +0 -0
  1388. package/.next/static/media/5ce348bf30bf5439-s.31988l_ccedte.woff2 +0 -0
  1389. package/.next/static/media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2 +0 -0
  1390. package/.next/static/media/7178b3e590c64307-s.21jp631_3pja2.woff2 +0 -0
  1391. package/.next/static/media/797e433ab948586e-s.p.0r6juujl39pe6.woff2 +0 -0
  1392. package/.next/static/media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2 +0 -0
  1393. package/.next/static/media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2 +0 -0
  1394. package/.next/static/media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2 +0 -0
  1395. package/.next/static/media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2 +0 -0
  1396. package/.next/static/media/favicon.2vob68tjqpejf.ico +0 -0
  1397. package/.next/static/media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2 +0 -0
  1398. package/.next/static/whCVdskjCUfluHW0q3o9p/_buildManifest.js +11 -0
  1399. package/.next/static/whCVdskjCUfluHW0q3o9p/_clientMiddlewareManifest.js +6 -0
  1400. package/.next/static/whCVdskjCUfluHW0q3o9p/_ssgManifest.js +1 -0
  1401. package/LICENSE +21 -0
  1402. package/README.md +173 -0
  1403. package/cli/onvif-dashboard.mjs +128 -0
  1404. package/cli/onvif-dashboard.test.ts +73 -0
  1405. package/package.json +79 -0
  1406. package/public/file.svg +1 -0
  1407. package/public/globe.svg +1 -0
  1408. package/public/next.svg +1 -0
  1409. package/public/vercel.svg +1 -0
  1410. package/public/window.svg +1 -0
  1411. package/scripts/create-admin.mts +96 -0
  1412. package/scripts/install-mediamtx.mts +18 -0
  1413. package/src/lib/admin-file.ts +152 -0
  1414. package/src/lib/first-run.ts +153 -0
  1415. package/src/lib/mediamtx-install.ts +157 -0
  1416. package/src/lib/paths.ts +54 -0
@@ -0,0 +1,1301 @@
1
+ /**
2
+ * @namespace cam
3
+ * @description Common camera module
4
+ * @author Andrew D.Laptev <a.d.laptev@gmail.com>
5
+ * @licence MIT
6
+ */
7
+
8
+ const http = require('http'),
9
+ https = require('https'),
10
+ crypto = require('crypto'),
11
+ events = require('events'),
12
+ url = require('url'),
13
+ util = require('util'),
14
+ linerase = require('./utils').linerase,
15
+ parseSOAPString = require('./utils').parseSOAPString,
16
+ splitArgs = require('./utils').splitArgs,
17
+ parseString = require('xml2js').parseString,
18
+ stripPrefix = require('xml2js').processors.stripPrefix,
19
+ emptyFn = function() {};
20
+ const { getDigestHeaders } = require('./utils');
21
+
22
+ /**
23
+ * @callback Cam~MessageCallback
24
+ * @property {?Error} error
25
+ * @property {?string} message
26
+ */
27
+
28
+ /**
29
+ * @callback Cam~ConnectionCallback
30
+ * @property {?Error} error
31
+ */
32
+
33
+ /**
34
+ * @typedef Cam~Options
35
+ * @property {boolean} [useSecure] Set true if `https:`, defaults to false
36
+ * @property {object} [secureOpts] Set options for https like ca, cert, ciphers, rejectUnauthorized, secureOptions, secureProtocol, etc.
37
+ * @property {boolean} [useWSSecurity] Use WS-Security SOAP headers (set to false if you want to force use Digest authentication)
38
+ * @property {string} hostname
39
+ * @property {string} [username]
40
+ * @property {string} [password]
41
+ * @property {number} [port=80]
42
+ * @property {string} [path=/onvif/device_service]
43
+ * @property {number} [timeout=120000]
44
+ * @property {boolean} [autoconnect=true] Set false if the camera should not connect automatically. The callback will not be executed.
45
+ * @property {boolean} [preserveAddress=false] Force using hostname and port from constructor for the services
46
+ */
47
+
48
+ /**
49
+ * Camera class
50
+ * @param {Cam~Options} options
51
+ * @param {Cam~ConnectionCallback} [callback]
52
+ * @fires Cam#rawRequest
53
+ * @fires Cam#rawResponse
54
+ * @fires Cam#connect
55
+ * @fires Cam#event
56
+ * @fires Cam#warning
57
+ * @property presets
58
+ * @class
59
+ * @constructor
60
+ * @extends events.EventEmitter
61
+ * @example
62
+ * var
63
+ * http = require('http'),
64
+ * Cam = require('onvif').Cam;
65
+ *
66
+ * new Cam({
67
+ * useSecure: <IS_SECURE>,
68
+ * secureOpts: {...<SECURE_OPTIONS>}
69
+ * hostname: <CAMERA_HOST>,
70
+ * username: <USERNAME>,
71
+ * password: <PASSWORD>
72
+ * }, function(err) {
73
+ * this.absoluteMove({x: 1, y: 1, zoom: 1});
74
+ * this.getStreamUri({protocol:'RTSP'}, function(err, stream) {
75
+ * http.createServer(function (req, res) {
76
+ * res.writeHead(200, {'Content-Type': 'text/html'});
77
+ * res.end('<html><body>' +
78
+ * '<embed type="application/x-vlc-plugin" target="' + stream.uri + '"></embed>' +
79
+ * '</body></html>');
80
+ * }).listen(3030);
81
+ * });
82
+ * });
83
+ */
84
+ var Cam = function(options, callback) {
85
+ events.EventEmitter.call(this);
86
+ callback = callback || emptyFn;
87
+ this.useSecure = options.useSecure || false;
88
+ this.secureOpts = options.secureOpts || {};
89
+ this.hostname = options.hostname;
90
+ this.username = options.username;
91
+ this.password = options.password;
92
+ this.port = options.port || (options.useSecure ? 443 : 80);
93
+ this.path = options.path || '/onvif/device_service';
94
+ this.timeout = options.timeout || 120000;
95
+ this.agent = options.agent || false;
96
+ /**
97
+ * Use WS-Security SOAP header
98
+ * @type {boolean}
99
+ */
100
+ this.useWSSecurity = typeof options.useWSSecurity === 'boolean' ? options.useWSSecurity : true;
101
+ this._nc = 0;
102
+ /**
103
+ * Force using hostname and port from constructor for the services
104
+ * @type {boolean}
105
+ */
106
+ this.preserveAddress = options.preserveAddress || false;
107
+
108
+ this.events = {};
109
+ /**
110
+ * Bind event handling to the `event` event
111
+ */
112
+ this.on('newListener', function(name) {
113
+ // if this is the first listener, start pulling subscription
114
+ if (name === 'event' && this.listeners(name).length === 0) {
115
+ setImmediate(function() {
116
+ this._eventRequest();
117
+ }.bind(this));
118
+ }
119
+ }.bind(this));
120
+
121
+ if (options.autoconnect !== false) {
122
+ setImmediate(function() {
123
+ this.connect(callback);
124
+ }.bind(this));
125
+ }
126
+ };
127
+
128
+ // events.EventEmitter inheritance
129
+ util.inherits(Cam, events.EventEmitter);
130
+
131
+ /**
132
+ * Connect to the camera and fill device information properties
133
+ * @param {Cam~ConnectionCallback} callback
134
+ */
135
+ Cam.prototype.connect = function(callback) {
136
+
137
+ // Must execute getSystemDataAndTime (and wait for callback)
138
+ // before any other ONVIF commands so that the time of the ONVIF device
139
+ // is known
140
+
141
+ this.getSystemDateAndTime(function(err, date, xml) {
142
+ if (err) {
143
+ return callback.call(this, err, null, xml);
144
+ }
145
+ // Next Step - Execute GetServices
146
+ this.getServices(true, function(err) {
147
+ if (err) {
148
+ // Fall back to GetCapabilities. The original ONVIF spec did not include GetServices
149
+ return this.getCapabilities(function(err, data, xml) {
150
+ if (err) {
151
+ return callback.call(this, err, null, xml);
152
+ }
153
+ return callUpstartFunctions.call(this);
154
+ }.bind(this));
155
+ }
156
+ if (this.media2Support) {
157
+ // Check Media2 works (workaround a buggy D-Link DCS-8635LH camera). Disable Media2 if there is an error.
158
+ // This is inefficient as we also call GetProfiles in the upstart function
159
+ this.getProfiles(function(err) {
160
+ if (err) {
161
+ this.media2Support = false; // don't use media2
162
+ }
163
+ return callUpstartFunctions.call(this);
164
+ }.bind(this));
165
+ } else {
166
+ return callUpstartFunctions.call(this);
167
+ }
168
+ }.bind(this));
169
+
170
+ function callUpstartFunctions() {
171
+ var upstartFunctions = [];
172
+
173
+ // Profile S / Media1, or Media2-only (Profile T) devices
174
+ if (this.uri && (this.uri.media || (this.media2Support && this.uri.media2))) {
175
+ upstartFunctions.push(this.getProfiles);
176
+ upstartFunctions.push(this.getVideoSources);
177
+ }
178
+ var count = upstartFunctions.length;
179
+ var mediaErrors = [];
180
+
181
+ if (count > 0) {
182
+ upstartFunctions.forEach(function(fun) {
183
+ fun.call(this, function(err) {
184
+ if (err) {
185
+ mediaErrors.push(err);
186
+ }
187
+ if (!--count) {
188
+ // Axis A1601 / doorcontrol: Media may be advertised but GetProfiles /
189
+ // GetVideoSources return "Optional action not implemented".
190
+ // Both calls are needed for active sources; if either fails, drop media state.
191
+ if (mediaErrors.length) {
192
+ this.profiles = [];
193
+ this.videoSources = [];
194
+ this.emit('warning', mediaErrors[0].message || String(mediaErrors[0]));
195
+ }
196
+ this.getActiveSources();
197
+ /**
198
+ * Indicates that device is connected.
199
+ * @event Cam#connect
200
+ */
201
+ this.emit('connect');
202
+ if (callback) {
203
+ return callback.call(this, null);
204
+ }
205
+ }
206
+ }.bind(this));
207
+ }.bind(this));
208
+ } else {
209
+ this.emit('connect');
210
+ if (callback) {
211
+ return callback.call(this, false);
212
+ }
213
+ }
214
+ }
215
+ }.bind(this));
216
+ };
217
+
218
+ /**
219
+ * @callback Cam~RequestCallback
220
+ * @param {Error} err
221
+ * @param {object} [response] message
222
+ * @param {string} [xml] response
223
+ */
224
+
225
+ /**
226
+ * Common camera request
227
+ * @param {object} options
228
+ * @param {string} [options.service] Name of service (ptz, media, etc)
229
+ * @param {string} [options.action] Name of the action. Not required, but desired
230
+ * @param {string} options.body SOAP body
231
+ * @param {string} [options.url] Defines another url to request instead of using the URLs from GetCapabilities/GetServices
232
+ * @param {number} options.replyTimeout timeout in milliseconds for the reply (after the socket has connected)
233
+ * @param {Cam~RequestCallback} callback response callback
234
+ * @private
235
+ */
236
+ Cam.prototype._request = function(options, callback) {
237
+ if (typeof callback !== 'function') {
238
+ throw new Error('\'callback\' must be a function');
239
+ }
240
+ if (options.body === undefined) {
241
+ throw new Error('\'options.body\' must be a defined');
242
+ }
243
+
244
+ // Generate the HTTP Content-Type 'action' string by parsing our outgoing ONVIF XML message with xml2js
245
+ // xml2js returns a callback, so call _requestPart2 from the callback
246
+ if (options.action === undefined || options.action === null) {
247
+ let xml2jsOptions = {
248
+ 'xmlns': true, // Creates the $ns object that contains the full namepace and local name of each XML Tag
249
+ tagNameProcessors: [stripPrefix] // Removes the namespace from each tag so we can parse Key:Value pairs of Tags
250
+ };
251
+ parseString(options.body, xml2jsOptions, (err, result) => {
252
+ // Check for parsing errors
253
+ if (err) {
254
+ return callback(err);
255
+ }
256
+ // look for first Key:Value pairs that do not start with $ or $ns
257
+ // for (const [key, value] of Object.entries(result['Envelope']['Body'][0])) { // Node 7 or higher
258
+ for (const key of Object.keys(result.Envelope.Body[0])) {
259
+ const value = result.Envelope.Body[0][key];
260
+ if (key.startsWith('$') === false) {
261
+ options.action = value[0]['$ns'].uri + '/' + value[0]['$ns'].local;
262
+ break;
263
+ }
264
+ }
265
+ this._requestPart2.call(this, options, callback);
266
+ });
267
+ } else {
268
+ this._requestPart2.call(this, options, callback);
269
+ }
270
+ };
271
+
272
+ /**
273
+ * Common camera request part 2
274
+ * @param {Object} options
275
+ * @param {Object} options.headers If some of the headers must present (Digest auth)
276
+ * @param {string} options.action Name of the action
277
+ * @param {string} [options.service] Name of service (ptz, media, etc)
278
+ * @param {string} options.body SOAP body
279
+ * @param {string} [options.url] Defines another url to request instead of using the URLs from GetCapabilities/GetServices
280
+ * @param {number} options.replyTimeout timeout in milliseconds for the reply (after the socket has connected)
281
+ * @param {Cam~RequestCallback} callback response callback
282
+ * @private
283
+ */
284
+ Cam.prototype._requestPart2 = function(options, callback) {
285
+ const _this = this;
286
+ let callbackExecuted = false;
287
+ options.headers = options.headers || {};
288
+ let reqOptions = options.url || {
289
+ hostname: this.hostname,
290
+ port: this.port,
291
+ agent: this.agent //Supports things like https://www.npmjs.com/package/proxy-agent which provide SOCKS5 and other connections
292
+ ,
293
+ path: options.service ?
294
+ (this.uri && this.uri[options.service] ? this.uri[options.service].path : options.service) : this.path,
295
+ timeout: this.timeout
296
+ };
297
+ reqOptions.headers = options.headers;
298
+ Object.assign(reqOptions.headers, {
299
+ 'Content-Type': `application/soap+xml;charset=utf-8;action="${options.action}"`,
300
+ 'Content-Length': Buffer.byteLength(options.body, 'utf8') //options.body.length chinese will be wrong here
301
+ ,
302
+ charset: 'utf-8'
303
+ });
304
+
305
+ reqOptions.method = 'POST';
306
+ const httpLib = this.useSecure ? https : http;
307
+ reqOptions = this.useSecure ? Object.assign({}, this.secureOpts, reqOptions) : reqOptions;
308
+ const req = httpLib.request(reqOptions, function(res) {
309
+ const wwwAuthenticate = res.headers['www-authenticate'];
310
+ const statusCode = res.statusCode;
311
+ // From the Core Spec, Section 5.9.1
312
+ // In Digest mode, the camera will return 401 to ask for Digest Authentication, or to report that the www-authenticate header was not accepted
313
+ // If WS-Security is used, the camera will return a 400 error to report that the ws-security header was not accepted with a SOAP fault of ter:NotAuthorized
314
+ if (statusCode === 401 && reqOptions.headers['Authorization'] !== undefined) {
315
+ // We sent a request with the Digest Authorization Header but it was rejected with 401. Our username or password are incorrect.
316
+ callbackExecuted = true;
317
+ callback(new Error(`Digest authentication failed ${statusCode}`));
318
+ return;
319
+ }
320
+ if (statusCode === 401 && wwwAuthenticate !== undefined) {
321
+ // The ONVIF Spec allows for multiple WWW-Authenticate headers, one with MD5 and one with SHA256
322
+ // The res.headers[] contains the multiple values combine with a Comma between them
323
+ // The res.rawHeaders[] contains the actual data as Key/Value items in an array
324
+ // Example from HikVision and rawHeaders
325
+ // [
326
+ // 'Digest qop="auth", realm="IP Camera", nonce="396539323a38326531323232323a2974d610e80a9fd6cab88e14e7592747", stale="FALSE"' <-- note NO ALGORITHM (default is MD5)
327
+ // 'Digest qop="auth", realm="IP Camera", nonce="353066323a38326531323232323a2974d610e80a9fd6cab88e14e7592747", algorithm="SHA-256", stale="FALSE"'
328
+ //]
329
+ const wwwAuthenticateArray = getDigestHeaders(res.rawHeaders);
330
+ if (wwwAuthenticateArray.length === 0) {
331
+ // Avoid racing with req 'error' from response.destroy() below
332
+ callbackExecuted = true;
333
+ res.destroy();
334
+ callback(new Error(`Digest authentication headers not found ${statusCode}`));
335
+ return;
336
+ }
337
+ try {
338
+ options.headers.Authorization = _this.digestAuth(wwwAuthenticateArray, reqOptions);
339
+ // Mark done before destroy so a concurrent ECONNRESET does not fire callback
340
+ callbackExecuted = true;
341
+ res.destroy();
342
+ return _this._requestPart2(options, callback);
343
+ } catch (e) {
344
+ callbackExecuted = true;
345
+ res.destroy();
346
+ callback(e);
347
+ }
348
+ }
349
+ const bufs = [];
350
+ let length = 0;
351
+ res.on('data', function(chunk) {
352
+ bufs.push(chunk);
353
+ length += chunk.length;
354
+ });
355
+ res.on('end', function() {
356
+ if (callbackExecuted === true) {
357
+ return;
358
+ }
359
+ callbackExecuted = true;
360
+ var xml = Buffer.concat(bufs, length).toString('utf8');
361
+ /**
362
+ * Indicates raw xml response from device.
363
+ * @event Cam#rawResponse
364
+ * @type {string} xml received from device
365
+ * @type {number} HTTP statusCode received from device
366
+ */
367
+ _this.emit('rawResponse', xml, statusCode);
368
+ parseSOAPString(xml, callback, statusCode); // xml and statusCode are passed in. Callback is the function called after the XML is parsed
369
+ });
370
+ });
371
+
372
+ // Set the timeout for the reply (for data being received on the socket).
373
+ // This timeout is used _after_ the socket has connected.
374
+ // When pulling ONVIF Events, this will need to be set to a time larger than the Pull Request timeout
375
+ // to ensure the socket does not get closed too early.
376
+ // eg replyTimeout must be set to 75 seconds when the Pull Events timeout is 60 seconds
377
+ req.setTimeout((options.replyTimeout ? options.replyTimeout : this.timeout), function() {
378
+ if (callbackExecuted === true) {
379
+ return;
380
+ } else {
381
+ callbackExecuted = true;
382
+ }
383
+ callback(new Error('Network timeout'));
384
+ req.destroy();
385
+ });
386
+
387
+ req.on('error', function(err) {
388
+ if (callbackExecuted === true) {
389
+ return;
390
+ }
391
+ callbackExecuted = true;
392
+ /* address, port number or IPCam error */
393
+ if (err.code === 'ECONNREFUSED' && err.errno === 'ECONNREFUSED' && err.syscall === 'connect') {
394
+ callback(err);
395
+ /* network error */
396
+ } else if (err.code === 'ECONNRESET' && err.errno === 'ECONNRESET' && err.syscall === 'read') {
397
+ callback(err);
398
+ } else {
399
+ callback(err);
400
+ }
401
+ });
402
+ /**
403
+ * Indicates raw xml request to device.
404
+ * @event Cam#rawRequest
405
+ * @type {Object}
406
+ */
407
+ this.emit('rawRequest', options.body);
408
+ req.write(options.body);
409
+ req.end();
410
+ };
411
+
412
+ Cam.prototype._parseChallenge = function(digest) {
413
+ const prefix = 'Digest ';
414
+ const challenge = digest.substring(digest.indexOf(prefix) + prefix.length);
415
+ // use splitArgs to handle things like qop="auth,auth-int"
416
+ // Digest algorithm=MD5,realm="happytimesoft",qop="auth,auth-int",nonce="36160F746AFA5913"
417
+ let parts = splitArgs(challenge);
418
+ // split into Key-Value pairs. We can split on '=' as this cannot appear in the Key name, replacing String with an Array in 'parts'
419
+ parts = parts.map(part => part.match(/^\s*?([a-zA-Z0-9]+)="?([^"]*)"?\s*?$/).slice(1));
420
+ return Object.fromEntries(parts);
421
+ };
422
+
423
+ Cam.prototype.updateNC = function() {
424
+ this._nc += 1;
425
+ if (this._nc > 99999999) {
426
+ this._nc = 1;
427
+ }
428
+ return String(this._nc).padStart(8, '0');
429
+ };
430
+
431
+ /**
432
+ * Generate Digest Authorization header
433
+ * @param {string[]} wwwAuthenticateArray
434
+ * @param {object} reqOptions
435
+ * @returns {string}
436
+ */
437
+ Cam.prototype.digestAuth = function(wwwAuthenticateArray, reqOptions) {
438
+ // Process each item in the wwwAuthenticateArray
439
+ // Most cameras have only 1 item.
440
+ // HikVision implementing the new MD5-then-SHA256 have two items
441
+ let bestResult = null;
442
+ let bestAlgorithm = null;
443
+
444
+ for (let arrayItem of wwwAuthenticateArray) {
445
+ let challenge = this._parseChallenge(arrayItem);
446
+
447
+ // if 'algorithm' is undefined, the Digest RFC says we default to MD5
448
+ const algorithm = (challenge.algorithm === undefined ? 'MD5' : challenge.algorithm.replace(/-/g, ''));
449
+
450
+ const ha1 = crypto.createHash(algorithm);
451
+ ha1.update([this.username, challenge.realm, this.password].join(':'));
452
+
453
+ // Sony SRG-XP1 sends qop="auth,auth-int" it means the Server will accept either "auth" or "auth-int". We select "auth"
454
+ if (typeof challenge.qop === 'string' && challenge.qop === 'auth,auth-int') {
455
+ challenge.qop = 'auth';
456
+ }
457
+
458
+ const ha2 = crypto.createHash(algorithm);
459
+ ha2.update([reqOptions.method, reqOptions.path].join(':'));
460
+
461
+ let cnonce = null;
462
+ let nc = null;
463
+ if (typeof challenge.qop === 'string' && challenge.qop === 'auth') {
464
+ cnonce = crypto.randomBytes(4).toString('hex');
465
+ nc = this.updateNC();
466
+ }
467
+
468
+ // HASH_ALG is usually MD5 but can also be SHA256
469
+ // No qop -> Response = HASH_ALG(HA1:nonce:HA2);
470
+ // With qop -> Response = HASH_ALG(HA1:nonce:nonceCount:cnonce:qop:HA2)
471
+ const response = crypto.createHash(algorithm);
472
+ const responseParams = [ha1.digest('hex'), challenge.nonce];
473
+ if (cnonce != null) {
474
+ responseParams.push(nc);
475
+ responseParams.push(cnonce);
476
+ responseParams.push(challenge.qop);
477
+ }
478
+ responseParams.push(ha2.digest('hex'));
479
+ response.update(responseParams.join(':'));
480
+
481
+ const authParams = {
482
+ username: `"${this.username}"`,
483
+ realm: `"${challenge.realm}"`,
484
+ nonce: `"${challenge.nonce}"`,
485
+ uri: `"${reqOptions.path}"`
486
+ };
487
+
488
+ // Send back the original algorithm value, if we received one.
489
+ if ('algorithm' in challenge) {
490
+ authParams.algorithm = challenge.algorithm;
491
+ }
492
+
493
+ // RFC says only send qop, nc and cnonce if there was a QOP in the Header
494
+ // 'qop' and 'nc' do not have quotes around the Values
495
+ if ('qop' in challenge) {
496
+ authParams.qop = challenge.qop; // no quotes
497
+ authParams.nc = nc; // no quotes
498
+ authParams.cnonce = `"${cnonce}"`;
499
+ }
500
+
501
+ authParams.response = `"${response.digest('hex')}"`;
502
+
503
+ if (challenge.opaque) {
504
+ authParams.opaque = `"${challenge.opaque}"`;
505
+ }
506
+
507
+ const result = 'Digest ' + Object.entries(authParams).map(([key, value]) => `${key}=${value}`).join(',');
508
+
509
+ if (bestResult == null || (algorithm === 'SHA256' && bestAlgorithm === 'MD5')) {
510
+ // set bestResult or upgrade the bestResult to the stronger algorithm
511
+ bestResult = result;
512
+ bestAlgorithm = algorithm;
513
+ }
514
+ }
515
+ return bestResult;
516
+ };
517
+
518
+ /**
519
+ * @callback Cam~DateTimeCallback
520
+ * @property {?Error} error
521
+ * @property {Date} dateTime Date object of current device's dateTime
522
+ * @property {string} xml Raw SOAP response
523
+ */
524
+
525
+ /**
526
+ * Receive date and time from cam
527
+ * @param {Cam~DateTimeCallback} callback
528
+ */
529
+ Cam.prototype.getSystemDateAndTime = function(callback) {
530
+ // The ONVIF spec says this should work without a Password as we need to know any difference in the
531
+ // remote NVT's time relative to our own time clock (called the timeShift) before we can calculate the
532
+ // correct timestamp in nonce SOAP Authentication header.
533
+ // But.. Panasonic and Digital Barriers both have devices that implement ONVIF that only work with
534
+ // authenticated getSystemDateAndTime. So for these devices we need to do an authenticated getSystemDateAndTime.
535
+ // As 'timeShift' is not set, the local clock MUST be set to the correct time AND the NVT/Camera MUST be set to the correct time
536
+ // if the camera implements Replay Attack Protection (eg Axis)
537
+ this._request({
538
+ // Try the Unauthenticated Request first. Do not use this._envelopeHeader() as we don't have timeShift yet.
539
+ body: '<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope">' +
540
+ '<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">' +
541
+ '<GetSystemDateAndTime xmlns="http://www.onvif.org/ver10/device/wsdl"/>' +
542
+ '</s:Body>' +
543
+ '</s:Envelope>'
544
+ }, function(err, data, xml, statusCode) {
545
+ if (!err) {
546
+ try {
547
+ let systemDateAndTime = data[0]['getSystemDateAndTimeResponse'][0]['systemDateAndTime'][0];
548
+ let dateTime = systemDateAndTime['UTCDateTime'] || systemDateAndTime['localDateTime'];
549
+ let time;
550
+ if (dateTime === undefined) {
551
+ // Seen on a cheap Chinese camera from GWellTimes-IPC. Use the current time.
552
+ time = new Date();
553
+ } else {
554
+ let dt = linerase(dateTime[0]);
555
+ time = new Date(Date.UTC(dt.date.year, dt.date.month - 1, dt.date.day, dt.time.hour, dt.time.minute, dt.time.second));
556
+ }
557
+ if (!this.timeShift) {
558
+ this.timeShift = time - (process.uptime() * 1000);
559
+ }
560
+ callback.call(this, err, time, xml);
561
+ } catch (err) {
562
+ callback.call(this, err, null, xml);
563
+ }
564
+ }
565
+ if (err) {
566
+ // some cameras return XML with 'sender not authorized'
567
+ // One HikVision camera returned a 401 error code and the following HTML...
568
+ // <!DOCTYPE html><html><head><title>Document Error: Unauthorized</title></head><body><h2>Access Error: 401 -- Unauthorized</h2>
569
+ // <p>Authentication Error: Access Denied! Authorization required.</p></body></html>
570
+ let xmlLowerCase = '';
571
+ if (xml) {
572
+ xmlLowerCase = xml.toLowerCase();
573
+ }
574
+ if (
575
+ (statusCode && statusCode === 401)
576
+ || (xml && (xmlLowerCase.includes('sender not authorized') || xmlLowerCase.includes('unauthorized') || xmlLowerCase.includes('notauthorized')))
577
+ ) {
578
+ // Try again with a Username and Password
579
+ this._request({
580
+ body: this._envelopeHeader() +
581
+ '<GetSystemDateAndTime xmlns="http://www.onvif.org/ver10/device/wsdl"/>' +
582
+ this._envelopeFooter()
583
+ }, function(err, data, xml) {
584
+ try {
585
+ let systemDateAndTime = data[0]['getSystemDateAndTimeResponse'][0]['systemDateAndTime'][0];
586
+ let dateTime = systemDateAndTime['UTCDateTime'] || systemDateAndTime['localDateTime'];
587
+ let time;
588
+ if (dateTime === undefined) {
589
+ // Seen on a cheap Chinese camera from GWellTimes-IPC. Use the current time.
590
+ time = new Date();
591
+ } else {
592
+ let dt = linerase(dateTime[0]);
593
+ time = new Date(Date.UTC(dt.date.year, dt.date.month - 1, dt.date.day, dt.time.hour, dt.time.minute, dt.time.second));
594
+ }
595
+ if (!this.timeShift) {
596
+ this.timeShift = time - (process.uptime() * 1000);
597
+ }
598
+ callback.call(this, err, time, xml);
599
+ } catch (err) {
600
+ callback.call(this, err, null, xml);
601
+ }
602
+ }.bind(this));
603
+ } else {
604
+ callback.call(this, err, null, xml);
605
+ }
606
+ }
607
+ }.bind(this));
608
+ };
609
+
610
+
611
+ /**
612
+ * @typedef {object} Cam~SystemDateAndTime
613
+ * @property {string} dayTimeType (Manual | NTP)
614
+ * @property {boolean} daylightSavings
615
+ * @property {string} timezone in POSIX 1003.1 format
616
+ * @property {number} hour
617
+ * @property {number} minute
618
+ * @property {number} second
619
+ * @property {number} year
620
+ * @property {number} month
621
+ * @property {number} day
622
+ */
623
+
624
+ /**
625
+ * Set the device system date and time
626
+ * @param {object} options
627
+ * @param {Date} [options.dateTime]
628
+ * @param {string} options.dateTimeType (Manual | NTP)
629
+ * @param {boolean} [options.daylightSavings=false]
630
+ * @patam {string} [options.timezone]
631
+ * @param {Cam~DateTimeCallback} callback
632
+ */
633
+ Cam.prototype.setSystemDateAndTime = function(options, callback) {
634
+ if (['Manual', 'NTP'].indexOf(options.dateTimeType) === -1) {
635
+ return callback(new Error('DateTimeType should be `Manual` or `NTP`'));
636
+ }
637
+ this._request({
638
+ body: this._envelopeHeader() +
639
+ '<SetSystemDateAndTime xmlns="http://www.onvif.org/ver10/device/wsdl">' +
640
+ '<DateTimeType>' +
641
+ options.dateTimeType +
642
+ '</DateTimeType>' +
643
+ '<DaylightSavings>' +
644
+ (!!options.daylightSavings) +
645
+ '</DaylightSavings>' +
646
+ (options.timezone !== undefined ? '<TimeZone>' +
647
+ '<TZ xmlns="http://www.onvif.org/ver10/schema">' +
648
+ options.timezone +
649
+ '</TZ>' +
650
+ '</TimeZone>' : '') +
651
+ // ( options.dateTime !== undefined && options.dateTime.getDate instanceof Date ?
652
+ (options.dateTime !== undefined && options.dateTime instanceof Date ? '<UTCDateTime>' +
653
+ '<Time xmlns="http://www.onvif.org/ver10/schema">' +
654
+ '<Hour>' + options.dateTime.getUTCHours() + '</Hour>' +
655
+ '<Minute>' + options.dateTime.getUTCMinutes() + '</Minute>' +
656
+ '<Second>' + options.dateTime.getUTCSeconds() + '</Second>' +
657
+ '</Time>' +
658
+ '<Date xmlns="http://www.onvif.org/ver10/schema">' +
659
+ '<Year>' + options.dateTime.getUTCFullYear() + '</Year>' +
660
+ '<Month>' + (options.dateTime.getUTCMonth() + 1) + '</Month>' +
661
+ '<Day>' + options.dateTime.getUTCDate() + '</Day>' +
662
+ '</Date>' +
663
+ '</UTCDateTime>' : '') +
664
+ '</SetSystemDateAndTime>' +
665
+ this._envelopeFooter()
666
+ }, function(err, data, xml) {
667
+ if (err || linerase(data).setSystemDateAndTimeResponse !== '') {
668
+ return callback.call(this, linerase(data).setSystemDateAndTimeResponse !== '' ?
669
+ new Error('Wrong `SetSystemDateAndTime` response') :
670
+ err, data, xml);
671
+ }
672
+ //get new system time from device
673
+ this.getSystemDateAndTime(callback);
674
+ }.bind(this));
675
+ };
676
+
677
+ /**
678
+ * Capability list
679
+ * @typedef {object} Cam~Capabilities
680
+ * @property {object} device Device capabilities
681
+ * @property {string} device.XAddr Device service URI
682
+ * @property {object} [device.network] Network capabilities
683
+ * @property {boolean} device.network.IPFilter Indicates support for IP filtering
684
+ * @property {boolean} device.network.zeroConfiguration Indicates support for zeroconf
685
+ * @property {boolean} device.network.IPVersion6 Indicates support for IPv6
686
+ * @property {boolean} device.network.dynDNS Indicates support for dynamic DNS configuration
687
+ * @property {object} [device.system] System capabilities
688
+ * @property {boolean} device.system.discoveryResolve Indicates support for WS Discovery resolve requests
689
+ * @property {boolean} device.system.discoveryBye Indicates support for WS-Discovery Bye
690
+ * @property {boolean} device.system.remoteDiscovery Indicates support for remote discovery
691
+ * @property {boolean} device.system.systemBackup Indicates support for system backup through MTOM
692
+ * @property {boolean} device.system.systemLogging Indicates support for retrieval of system logging through MTOM
693
+ * @property {boolean} device.system.firmwareUpgrade Indicates support for firmware upgrade through MTOM
694
+ * @property {boolean} device.system.httpFirmwareUpgrade Indicates support for firmware upgrade through HTTP
695
+ * @property {boolean} device.system.httpSystemBackup Indicates support for system backup through HTTP
696
+ * @property {boolean} device.system.httpSystemLogging Indicates support for retrieval of system logging through HTTP
697
+ * @property {object} [device.IO] I/O capabilities
698
+ * @property {number} device.IO.inputConnectors Number of input connectors
699
+ * @property {number} device.IO.relayOutputs Number of relay outputs
700
+ * @property {object} [device.IO.extension]
701
+ * @property {boolean} device.IO.extension.auxiliary
702
+ * @property {object} device.IO.extension.auxiliaryCommands
703
+ * @property {object} [device.security] Security capabilities
704
+ * @property {boolean} device.security.'TLS1.1' Indicates support for TLS 1.1
705
+ * @property {boolean} device.security.'TLS1.2' Indicates support for TLS 1.2
706
+ * @property {boolean} device.security.onboardKeyGeneration Indicates support for onboard key generation
707
+ * @property {boolean} device.security.accessPolicyConfig Indicates support for access policy configuration
708
+ * @property {boolean} device.security.'X.509Token' Indicates support for WS-Security X.509 token
709
+ * @property {boolean} device.security.SAMLToken Indicates support for WS-Security SAML token
710
+ * @property {boolean} device.security.kerberosToken Indicates support for WS-Security Kerberos token
711
+ * @property {boolean} device.security.RELToken Indicates support for WS-Security REL token
712
+ * @property {object} events Event capabilities
713
+ * @property {string} events.XAddr Event service URI
714
+ * @property {boolean} events.WSSubscriptionPolicySupport Indicates whether or not WS Subscription policy is supported
715
+ * @property {boolean} events.WSPullPointSupport Indicates whether or not WS Pull Point is supported
716
+ * @property {boolean} events.WSPausableSubscriptionManagerInterfaceSupport Indicates whether or not WS Pausable Subscription Manager Interface is supported
717
+ * @property {object} imaging Imaging capabilities
718
+ * @property {string} imaging.XAddr Imaging service URI
719
+ * @property {object} media Media capabilities
720
+ * @property {string} media.XAddr Media service URI
721
+ * @property {object} media.streamingCapabilities Streaming capabilities
722
+ * @property {boolean} media.streamingCapabilities.RTPMulticast Indicates whether or not RTP multicast is supported
723
+ * @property {boolean} media.streamingCapabilities.RTP_TCP Indicates whether or not RTP over TCP is supported
724
+ * @property {boolean} media.streamingCapabilities.RTP_RTSP_TCP Indicates whether or not RTP/RTSP/TCP is supported
725
+ * @property {object} media.streamingCapabilities.extension
726
+ * @property {object} PTZ PTZ capabilities
727
+ * @property {string} PTZ.XAddr PTZ service URI
728
+ * @property {object} [extension]
729
+ * @property {object} extension.deviceIO DeviceIO capabilities
730
+ * @property {string} extension.deviceIO.XAddr DeviceIO service URI
731
+ * @property {number} extension.deviceIO.videoSources
732
+ * @property {number} extension.deviceIO.videoOutputs
733
+ * @property {number} extension.deviceIO.audioSources
734
+ * @property {number} extension.deviceIO.audioOutputs
735
+ * @property {number} extension.deviceIO.relayOutputs
736
+ * @property {object} [extension.extensions]
737
+ * @property {object} [extension.extensions.telexCapabilities]
738
+ * @property {object} [extension.extensions.scdlCapabilities]
739
+ */
740
+
741
+ /**
742
+ * @callback Cam~GetCapabilitiesCallback
743
+ * @property {?Error} error
744
+ * @property {Cam~Capabilities} capabilities
745
+ * @property {string} xml Raw SOAP response
746
+ */
747
+
748
+ /**
749
+ * This method has been replaced by the more generic GetServices method. For capabilities of individual services refer to the GetServiceCapabilities methods.
750
+ * @param {Cam~GetCapabilitiesCallback} [callback]
751
+ */
752
+ Cam.prototype.getCapabilities = function(callback) {
753
+ this._request({
754
+ body: this._envelopeHeader() +
755
+ '<GetCapabilities xmlns="http://www.onvif.org/ver10/device/wsdl">' +
756
+ '<Category>All</Category>' +
757
+ '</GetCapabilities>' +
758
+ this._envelopeFooter()
759
+ }, function(err, data, xml) {
760
+ if (!err) {
761
+ /**
762
+ * Device capabilities
763
+ * @name Cam#capabilities
764
+ * @type {Cam~Capabilities}
765
+ */
766
+ this.capabilities = linerase(data[0]['getCapabilitiesResponse'][0]['capabilities'][0]);
767
+ // fill Cam#uri property
768
+ if (!this.uri) {
769
+ /**
770
+ * Device service URIs
771
+ * @name Cam#uri
772
+ * @property {url} [PTZ]
773
+ * @property {url} [media]
774
+ * @property {url} [imaging]
775
+ * @property {url} [events]
776
+ * @property {url} [device]
777
+ */
778
+ this.uri = {};
779
+ }
780
+ ['PTZ', 'media', 'imaging', 'events', 'device'].forEach(function(name) {
781
+ if (this.capabilities[name] && this.capabilities[name].XAddr) {
782
+ this.uri[name.toLowerCase()] = this._parseUrl(this.capabilities[name].XAddr);
783
+ }
784
+ }.bind(this));
785
+ // extensions, eg. deviceIO
786
+ if (this.capabilities.extension) {
787
+ Object.keys(this.capabilities.extension).forEach(function(ext) {
788
+ // TODO think about complex extensions like `telexCapabilities` and `scdlCapabilities`
789
+ if (this.capabilities.extension[ext].XAddr) {
790
+ this.uri[ext] = url.parse(this.capabilities.extension[ext].XAddr);
791
+ }
792
+ }.bind(this));
793
+ }
794
+ // HACK for a Profile G NVR that has 'replay' but did not have 'recording' in GetCapabilities
795
+ if ((this.uri['replay']) && !this.uri['recording']) {
796
+ var tempRecorderXaddr = this.uri['replay'].href.replace('replay', 'recording');
797
+ console.warn("WARNING: Adding " + tempRecorderXaddr + " for bad Profile G device");
798
+ this.uri['recording'] = url.parse(tempRecorderXaddr);
799
+ }
800
+ }
801
+ if (callback) {
802
+ callback.call(this, err, this.capabilities, xml);
803
+ }
804
+ }.bind(this));
805
+ };
806
+
807
+ /**
808
+ * Returns the capabilities of the device service
809
+ * @param [callback]
810
+ */
811
+ Cam.prototype.getServiceCapabilities = function(callback) {
812
+ this._request({
813
+ body: this._envelopeHeader() +
814
+ '<GetServiceCapabilities xmlns="http://www.onvif.org/ver10/device/wsdl" />' +
815
+ this._envelopeFooter()
816
+ }, function(err, data, xml) {
817
+ if (!err) {
818
+ data = linerase(data);
819
+ this.serviceCapabilities = {
820
+ network: data.getServiceCapabilitiesResponse.capabilities.network.$,
821
+ security: data.getServiceCapabilitiesResponse.capabilities.security.$,
822
+ system: data.getServiceCapabilitiesResponse.capabilities.system.$
823
+ };
824
+ if (data.getServiceCapabilitiesResponse.capabilities.misc) {
825
+ this.serviceCapabilities.auxiliaryCommands = data.getServiceCapabilitiesResponse.capabilities.misc.$.AuxiliaryCommands.split(' ');
826
+ }
827
+ }
828
+ if (callback) {
829
+ callback.call(this, err, this.serviceCapabilities, xml);
830
+ }
831
+ }.bind(this));
832
+ };
833
+
834
+ /**
835
+ * Active source
836
+ * @typedef {object} Cam~ActiveSource
837
+ * @property {string} sourceToken video source token
838
+ * @property {string} profileToken profile token
839
+ * @property {string} videoSourceConfigurationToken video source configuration token
840
+ * @property {object} [ptz] PTZ-object
841
+ * @property {string} ptz.name PTZ configuration name
842
+ * @property {string} ptz.token PTZ token
843
+ */
844
+
845
+ /**
846
+ * Get active sources
847
+ * @private
848
+ */
849
+ Cam.prototype.getActiveSources = function() {
850
+ // Profile C / doorcontrol / failed media discovery — nothing to resolve
851
+ if (!this.videoSources || (Array.isArray(this.videoSources) && this.videoSources.length === 0)) {
852
+ return;
853
+ }
854
+ if (!this.profiles) {
855
+ this.profiles = [];
856
+ }
857
+
858
+ //NVT is a camera with one video source
859
+ if (this.videoSources.$) {
860
+ this.videoSources = [this.videoSources];
861
+ }
862
+
863
+ //The following code block supports a camera with a single video source
864
+ //as well as encoders with multiple sources. By default, the first source is set to the activeSource.
865
+ /**
866
+ * Default profiles for the device
867
+ * @name Cam#defaultProfiles
868
+ * @type {Array.<Cam~Profile>}
869
+ */
870
+ this.defaultProfiles = [];
871
+ /**
872
+ * Active video sources
873
+ * @name Cam#activeSources
874
+ * @type {Array.<Cam~ActiveSource>}
875
+ */
876
+ this.activeSources = [];
877
+
878
+ this.videoSources.forEach(function(videoSource, idx) {
879
+ // let's choose first appropriate profile for our video source and make it default
880
+ var videoSrcToken = videoSource.$.token,
881
+ appropriateProfiles = this.profiles.filter(function(profile) {
882
+ if (profile.videoSourceConfiguration && profile.videoEncoderConfiguration) {
883
+ if (profile.videoSourceConfiguration.sourceToken === videoSrcToken || profile.videoSourceConfiguration.sourceToken === profile.videoSourceConfiguration.name) {
884
+ return true;
885
+ }
886
+ }
887
+ });
888
+ if (appropriateProfiles.length === 0) {
889
+ if (idx === 0) {
890
+ throw new Error('Unrecognized configuration');
891
+ } else {
892
+ return;
893
+ }
894
+ }
895
+
896
+ if (idx === 0) {
897
+ /**
898
+ * Default selected profile for the device
899
+ * @name Cam#defaultProfile
900
+ * @type {Cam~Profile}
901
+ */
902
+ this.defaultProfile = appropriateProfiles[0];
903
+ }
904
+
905
+ this.defaultProfiles[idx] = appropriateProfiles[0];
906
+
907
+ this.activeSources[idx] = {
908
+ sourceToken: videoSource.$.token,
909
+ profileToken: this.defaultProfiles[idx].$.token,
910
+ videoSourceConfigurationToken: this.defaultProfiles[idx].videoSourceConfiguration.$.token
911
+ };
912
+ if (this.defaultProfiles[idx].videoEncoderConfiguration) {
913
+ var configuration = this.defaultProfiles[idx].videoEncoderConfiguration;
914
+ this.activeSources[idx].encoding = configuration.encoding;
915
+ this.activeSources[idx].width = configuration.resolution ? configuration.resolution.width : '';
916
+ this.activeSources[idx].height = configuration.resolution ? configuration.resolution.height : '';
917
+ this.activeSources[idx].fps = configuration.rateControl ? configuration.rateControl.frameRateLimit : '';
918
+ this.activeSources[idx].bitrate = configuration.rateControl ? configuration.rateControl.bitrateLimit : '';
919
+ }
920
+
921
+ if (idx === 0) {
922
+ /**
923
+ * Current active video source
924
+ * @name Cam#activeSource
925
+ * @type {Cam~ActiveSource}
926
+ */
927
+ this.activeSource = this.activeSources[idx];
928
+ }
929
+
930
+ if (this.defaultProfiles[idx].PTZConfiguration) {
931
+ this.activeSources[idx].ptz = {
932
+ name: this.defaultProfiles[idx].PTZConfiguration.name,
933
+ token: this.defaultProfiles[idx].PTZConfiguration.$.token
934
+ };
935
+ /* TODO Think about it
936
+ if (idx === 0) {
937
+ this.defaultProfile.PTZConfiguration = this.activeSources[idx].PTZConfiguration;
938
+ }
939
+ */
940
+ }
941
+ }.bind(this));
942
+
943
+ // If we haven't got any active source, send a warning
944
+ if (this.activeSources.length === 0) {
945
+ /**
946
+ * Indicates any warning.
947
+ * @event Cam#warning
948
+ * @type {string}
949
+ */
950
+ this.emit('warning', 'There are no active sources at this device');
951
+ }
952
+ };
953
+
954
+ /**
955
+ * @typedef {object} Cam~Service
956
+ * @property {string} namespace Namespace uri
957
+ * @property {string} XAddr Uri for requests
958
+ * @property {number} version.minor Minor version
959
+ * @property {number} version.major Major version
960
+ */
961
+
962
+ /**
963
+ * @callback Cam~GetServicesCallback
964
+ * @property {?Error} error
965
+ * @property {Array.<Cam~Service>} services
966
+ * @property {string} xml Raw SOAP response
967
+ */
968
+
969
+ /**
970
+ * Returns information about services on the device.
971
+ * @param {boolean} [includeCapability=true] Indicates if the service capabilities (untyped) should be included in the response.
972
+ * @param {Cam~GetServicesCallback} [callback]
973
+ */
974
+ Cam.prototype.getServices = function(includeCapability, callback) {
975
+ if (typeof includeCapability == 'function') {
976
+ callback = includeCapability;
977
+ includeCapability = true;
978
+ }
979
+ this._request({
980
+ body: this._envelopeHeader() +
981
+ '<GetServices xmlns="http://www.onvif.org/ver10/device/wsdl">' +
982
+ '<IncludeCapability>' + includeCapability + '</IncludeCapability>' +
983
+ '</GetServices>' +
984
+ this._envelopeFooter(),
985
+ }, function(err, data, xml) {
986
+ if (!err) {
987
+ /**
988
+ * Device services
989
+ * @name Cam#services
990
+ * @type {Array<Cam~Service>}
991
+ */
992
+ this.services = linerase(data).getServicesResponse.service;
993
+
994
+ // ONVIF Profile T introduced Media2 (ver20) so cameras from around 2020/2021 will have
995
+ // two media entries in the ServicesResponse, one for Media (ver10/media) and one for Media2 (ver20/media)
996
+ // This is so that existing VMS software can still access the video via the orignal ONVIF Media API
997
+ // fill Cam#uri property
998
+ if (!this.uri) {
999
+ /**
1000
+ * Device service URIs
1001
+ * @name Cam#uri
1002
+ * @property {url} [PTZ]
1003
+ * @property {url} [media]
1004
+ * @property {url} [media2]
1005
+ * @property {url} [imaging]
1006
+ * @property {url} [events]
1007
+ * @property {url} [device]
1008
+ */
1009
+ this.uri = {};
1010
+ }
1011
+ this.media2Support = false;
1012
+ this.services.forEach((service) => {
1013
+ // Look for services with namespaces and XAddr values
1014
+ if (Object.prototype.hasOwnProperty.call(service, 'namespace') && Object.prototype.hasOwnProperty.call(service, 'XAddr')) {
1015
+ // Only parse ONVIF namespaces. Axis cameras return Axis namespaces in GetServices
1016
+ let parsedNamespace = url.parse(service.namespace);
1017
+ if (parsedNamespace.hostname === 'www.onvif.org') {
1018
+ let namespaceSplitted = parsedNamespace.path.substring(1).split('/'); // remove leading Slash, then split
1019
+ // special case for Media and Media2 where cameras supporting Profile S and Profile T (2020/2021 models) have two media services
1020
+ if (namespaceSplitted[1] === 'media' && namespaceSplitted[0] === 'ver20') {
1021
+ this.media2Support = true;
1022
+ namespaceSplitted[1] = 'media2';
1023
+ }
1024
+ this.uri[namespaceSplitted[1]] = this._parseUrl(service.XAddr);
1025
+ }
1026
+ }
1027
+ });
1028
+ }
1029
+ if (callback) {
1030
+ callback.call(this, err, this.services, xml);
1031
+ }
1032
+ }.bind(this));
1033
+ };
1034
+
1035
+ /**
1036
+ * @typedef {object} Cam~DeviceInformation
1037
+ * @property {string} manufacturer The manufactor of the device
1038
+ * @property {string} model The device model
1039
+ * @property {string} firmwareVersion The firmware version in the device
1040
+ * @property {string} serialNumber The serial number of the device
1041
+ * @property {string} hardwareId The hardware ID of the device
1042
+ */
1043
+
1044
+ /**
1045
+ * @callback Cam~GetDeviceInformationCallback
1046
+ * @property {?Error} error
1047
+ * @property {Cam~DeviceInformation} deviceInformation Device information
1048
+ * @property {string} xml Raw SOAP response
1049
+ */
1050
+
1051
+ /**
1052
+ * Receive device information
1053
+ * @param {Cam~GetDeviceInformationCallback} [callback]
1054
+ */
1055
+ Cam.prototype.getDeviceInformation = function(callback) {
1056
+ this._request({
1057
+ body: this._envelopeHeader() +
1058
+ '<GetDeviceInformation xmlns="http://www.onvif.org/ver10/device/wsdl"/>' +
1059
+ this._envelopeFooter()
1060
+ }, function(err, data, xml) {
1061
+ if (!err) {
1062
+ this.deviceInformation = linerase(data).getDeviceInformationResponse;
1063
+ }
1064
+ if (callback) {
1065
+ callback.call(this, err, this.deviceInformation, xml);
1066
+ }
1067
+ }.bind(this));
1068
+ };
1069
+
1070
+ /**
1071
+ * @typedef {object} Cam~HostnameInformation
1072
+ * @property {boolean} fromDHCP Indicates whether the hostname is obtained from DHCP or not
1073
+ * @property {string} [name] Indicates the hostname
1074
+ */
1075
+
1076
+ /**
1077
+ * @callback Cam~GetHostnameCallback
1078
+ * @property {?Error} error
1079
+ * @property {Cam~HostnameInformation} hostnameInformation Hostname information
1080
+ * @property {string} xml Raw SOAP response
1081
+ */
1082
+
1083
+ /**
1084
+ * Receive hostname information
1085
+ * @param {Cam~GetHostnameCallback} [callback]
1086
+ */
1087
+ Cam.prototype.getHostname = function(callback) {
1088
+ this._request({
1089
+ body: this._envelopeHeader() +
1090
+ '<GetHostname xmlns="http://www.onvif.org/ver10/device/wsdl"/>' +
1091
+ this._envelopeFooter()
1092
+ }, function(err, data, xml) {
1093
+ if (callback) {
1094
+ callback.call(this, err, err ? null : linerase(data).getHostnameResponse.hostnameInformation, xml);
1095
+ }
1096
+ }.bind(this));
1097
+ };
1098
+
1099
+ /**
1100
+ * @typedef {object} Cam~Scope
1101
+ * @property {string} scopeDef Indicates if the scope is fixed or configurable
1102
+ * @property {string} scopeItem Scope item URI
1103
+ */
1104
+
1105
+ /**
1106
+ * @callback Cam~getScopesCallback
1107
+ * @property {?Error} error
1108
+ * @property {Array<Cam~Scope>} scopes Scopes
1109
+ * @property {string} xml Raw SOAP response
1110
+ */
1111
+
1112
+ /**
1113
+ * Receive the scope parameters of a device
1114
+ * @param {Cam~getScopesCallback} callback
1115
+ */
1116
+ Cam.prototype.getScopes = function(callback) {
1117
+ this._request({
1118
+ body: this._envelopeHeader() +
1119
+ '<GetScopes xmlns="http://www.onvif.org/ver10/device/wsdl"/>' +
1120
+ this._envelopeFooter()
1121
+ }, function(err, data, xml) {
1122
+ if (!err) {
1123
+ /**
1124
+ * Device scopes
1125
+ * @type {undefined|Array<Cam~Scope>}
1126
+ */
1127
+ this.scopes = linerase(data).getScopesResponse.scopes;
1128
+ if (this.scopes === undefined) {
1129
+ this.scopes = [];
1130
+ } else if (!Array.isArray(this.scopes)) {
1131
+ this.scopes = [this.scopes];
1132
+ }
1133
+ }
1134
+ if (callback) {
1135
+ callback.call(this, err, this.scopes, xml);
1136
+ }
1137
+ }.bind(this));
1138
+ };
1139
+
1140
+ /**
1141
+ * Set the scope parameters of a device
1142
+ * @param {Array<string>} scopes array of scope's uris
1143
+ * @param {Cam~getScopesCallback} callback
1144
+ */
1145
+ Cam.prototype.setScopes = function(scopes, callback) {
1146
+ this._request({
1147
+ body: this._envelopeHeader() +
1148
+ '<SetScopes xmlns="http://www.onvif.org/ver10/device/wsdl">' +
1149
+ scopes.map(function(uri) { return '<Scopes>' + uri + '</Scopes>'; }).join('') +
1150
+ '</SetScopes>' +
1151
+ this._envelopeFooter()
1152
+ }, function(err, data, xml) {
1153
+ if (err || linerase(data).setScopesResponse !== '') {
1154
+ return callback(linerase(data).setScopesResponse !== '' ? new Error('Wrong `SetScopes` response') : err, data, xml);
1155
+ }
1156
+ // get new scopes from device
1157
+ this.getScopes(callback);
1158
+ }.bind(this));
1159
+ };
1160
+
1161
+ /**
1162
+ * /Device/ Reboot the device
1163
+ * @param {Cam~MessageCallback} callback
1164
+ */
1165
+ Cam.prototype.systemReboot = function(callback) {
1166
+ this._request({
1167
+ service: 'deviceIO',
1168
+ body: this._envelopeHeader() +
1169
+ '<SystemReboot xmlns="http://www.onvif.org/ver10/device/wsdl"/>' +
1170
+ this._envelopeFooter()
1171
+ }, function(err, res, xml) {
1172
+ if (!err) {
1173
+ res = res[0].systemRebootResponse[0].message[0];
1174
+ }
1175
+ callback.call(this, err, res, xml);
1176
+ });
1177
+ };
1178
+
1179
+ /**
1180
+ * @callback Cam~SetSystemFactoryDefaultCallback
1181
+ * @property {?Error} error
1182
+ * @property {null}
1183
+ * @property {string} xml Raw SOAP response
1184
+ */
1185
+
1186
+ /**
1187
+ * Reset camera to factory default
1188
+ * @param {boolean} [hard=false] Reset network settings
1189
+ * @param {Cam~SetSystemFactoryDefaultCallback} callback
1190
+ */
1191
+ Cam.prototype.setSystemFactoryDefault = function(hard, callback) {
1192
+ if (callback === undefined) {
1193
+ callback = hard;
1194
+ hard = false;
1195
+ }
1196
+ let body = this._envelopeHeader() +
1197
+ '<SetSystemFactoryDefault xmlns="http://www.onvif.org/ver10/device/wsdl">' +
1198
+ '<FactoryDefault>' + (hard ? 'Hard' : 'Soft') + '</FactoryDefault>' +
1199
+ '</SetSystemFactoryDefault>' +
1200
+ this._envelopeFooter();
1201
+ this._request({
1202
+ service: 'device',
1203
+ body: body,
1204
+ }, function(err, res, xml) {
1205
+ if (callback) {
1206
+ callback.call(this, err, null, xml);
1207
+ }
1208
+ });
1209
+ };
1210
+
1211
+ /**
1212
+ * Generate arguments for digest auth
1213
+ * @return {{passdigest: *, nonce: (*|String), timestamp: string}}
1214
+ * @private
1215
+ */
1216
+ Cam.prototype._passwordDigest = function() {
1217
+ let timestamp = (new Date((process.uptime() * 1000) + (this.timeShift || 0))).toISOString();
1218
+ let nonce = Buffer.allocUnsafe(16);
1219
+ nonce.writeUIntLE(Math.ceil(Math.random() * 0x100000000), 0, 4);
1220
+ nonce.writeUIntLE(Math.ceil(Math.random() * 0x100000000), 4, 4);
1221
+ nonce.writeUIntLE(Math.ceil(Math.random() * 0x100000000), 8, 4);
1222
+ nonce.writeUIntLE(Math.ceil(Math.random() * 0x100000000), 12, 4);
1223
+ let cryptoDigest = crypto.createHash('sha1');
1224
+ cryptoDigest.update(Buffer.concat([nonce, Buffer.from(timestamp, 'ascii'), Buffer.from(this.password, 'ascii')]));
1225
+ let passdigest = cryptoDigest.digest('base64');
1226
+ return {
1227
+ passdigest: passdigest,
1228
+ nonce: nonce.toString('base64'),
1229
+ timestamp: timestamp
1230
+ };
1231
+ };
1232
+
1233
+ /**
1234
+ * Envelope header for all SOAP messages
1235
+ * @property {boolean} [openHeader=false]
1236
+ * @returns {string}
1237
+ * @private
1238
+ */
1239
+ Cam.prototype._envelopeHeader = function(openHeader) {
1240
+ let header = '<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing">' +
1241
+ '<s:Header>';
1242
+ // Only insert Security if there is a username and password
1243
+ if (this.useWSSecurity && this.username && this.password) {
1244
+ const req = this._passwordDigest();
1245
+ header += '<Security s:mustUnderstand="1" xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">' +
1246
+ '<UsernameToken>' +
1247
+ '<Username>' + this.username + '</Username>' +
1248
+ '<Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">' + req.passdigest + '</Password>' +
1249
+ '<Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">' + req.nonce + '</Nonce>' +
1250
+ '<Created xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">' + req.timestamp + '</Created>' +
1251
+ '</UsernameToken>' +
1252
+ '</Security>';
1253
+ }
1254
+ if (!(openHeader !== undefined && openHeader)) {
1255
+ header += '</s:Header>' +
1256
+ '<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">';
1257
+ }
1258
+ return header;
1259
+ };
1260
+
1261
+ /**
1262
+ * Envelope footer for all SOAP messages
1263
+ * @returns {string}
1264
+ * @private
1265
+ */
1266
+ Cam.prototype._envelopeFooter = function() {
1267
+ return '</s:Body>' +
1268
+ '</s:Envelope>';
1269
+ };
1270
+
1271
+ /**
1272
+ * Parse url with an eye on `preserveAddress` property
1273
+ * @param {string} address
1274
+ * @returns {URL}
1275
+ * @private
1276
+ */
1277
+ Cam.prototype._parseUrl = function(address) {
1278
+ const parsedAddress = url.parse(address);
1279
+ // If host for service and default host differs, also if preserve address property set
1280
+ // we substitute host, hostname and port from settings then rebuild the href using .format
1281
+ if (this.preserveAddress && (this.hostname !== parsedAddress.hostname || this.port !== parsedAddress.port)) {
1282
+ parsedAddress.hostname = this.hostname;
1283
+ parsedAddress.host = this.hostname + ':' + this.port;
1284
+ parsedAddress.port = this.port;
1285
+ parsedAddress.href = url.format(parsedAddress);
1286
+ }
1287
+ return parsedAddress;
1288
+ };
1289
+
1290
+ module.exports = {
1291
+ Cam: Cam
1292
+ };
1293
+
1294
+ // extending Camera prototype
1295
+ require('./device')(Cam);
1296
+ require('./events')(Cam);
1297
+ require('./media')(Cam);
1298
+ require('./ptz')(Cam);
1299
+ require('./imaging')(Cam);
1300
+ require('./recording')(Cam);
1301
+ require('./replay')(Cam);