@evoscientist/webui 0.3.2 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (178) hide show
  1. package/README.md +4 -2
  2. package/bin/absolute-folders.mjs +34 -0
  3. package/bin/evoscientist-webui.mjs +2 -1
  4. package/dist/.next/BUILD_ID +1 -1
  5. package/dist/.next/app-path-routes-manifest.json +5 -0
  6. package/dist/.next/build-manifest.json +3 -3
  7. package/dist/.next/prerender-manifest.json +4 -4
  8. package/dist/.next/routes-manifest.json +30 -0
  9. package/dist/.next/server/app/_global-error/page.js +2 -2
  10. package/dist/.next/server/app/_global-error/page.js.nft.json +1 -1
  11. package/dist/.next/server/app/_global-error.html +1 -1
  12. package/dist/.next/server/app/_global-error.rsc +1 -1
  13. package/dist/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  14. package/dist/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  15. package/dist/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  16. package/dist/.next/server/app/_not-found/page.js +2 -2
  17. package/dist/.next/server/app/_not-found/page.js.nft.json +1 -1
  18. package/dist/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  19. package/dist/.next/server/app/_not-found.html +1 -1
  20. package/dist/.next/server/app/_not-found.rsc +12 -12
  21. package/dist/.next/server/app/_not-found.segments/_full.segment.rsc +12 -12
  22. package/dist/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +11 -11
  23. package/dist/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  24. package/dist/.next/server/app/api/evosci-config/route.js +2 -1
  25. package/dist/.next/server/app/api/evosci-config/route.js.nft.json +1 -1
  26. package/dist/.next/server/app/api/memory/executions/route.js +3 -2
  27. package/dist/.next/server/app/api/memory/executions/route.js.nft.json +1 -1
  28. package/dist/.next/server/app/api/memory/observations/route.js +3 -2
  29. package/dist/.next/server/app/api/memory/observations/route.js.nft.json +1 -1
  30. package/dist/.next/server/app/api/memory/route.js +3 -2
  31. package/dist/.next/server/app/api/memory/route.js.nft.json +1 -1
  32. package/dist/.next/server/app/api/settings/access/route/app-paths-manifest.json +3 -0
  33. package/dist/.next/server/app/api/settings/access/route/build-manifest.json +12 -0
  34. package/dist/.next/server/app/api/settings/access/route/server-reference-manifest.json +4 -0
  35. package/dist/.next/server/app/api/settings/access/route.js +8 -0
  36. package/dist/.next/server/app/api/settings/access/route.js.nft.json +1 -0
  37. package/dist/.next/server/app/api/settings/access/route_client-reference-manifest.js +3 -0
  38. package/dist/.next/server/app/api/settings/route/app-paths-manifest.json +3 -0
  39. package/dist/.next/server/app/api/settings/route/build-manifest.json +12 -0
  40. package/dist/.next/server/app/api/settings/route/server-reference-manifest.json +4 -0
  41. package/dist/.next/server/app/api/settings/route.js +8 -0
  42. package/dist/.next/server/app/api/settings/route.js.nft.json +1 -0
  43. package/dist/.next/server/app/api/settings/route_client-reference-manifest.js +3 -0
  44. package/dist/.next/server/app/api/settings/test-key/route/app-paths-manifest.json +3 -0
  45. package/dist/.next/server/app/api/settings/test-key/route/build-manifest.json +12 -0
  46. package/dist/.next/server/app/api/settings/test-key/route/server-reference-manifest.json +4 -0
  47. package/dist/.next/server/app/api/settings/test-key/route.js +8 -0
  48. package/dist/.next/server/app/api/settings/test-key/route.js.nft.json +1 -0
  49. package/dist/.next/server/app/api/settings/test-key/route_client-reference-manifest.js +3 -0
  50. package/dist/.next/server/app/api/skills/catalog/route.js +3 -1
  51. package/dist/.next/server/app/api/skills/catalog/route.js.nft.json +1 -1
  52. package/dist/.next/server/app/api/skills/detail/route.js +3 -1
  53. package/dist/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
  54. package/dist/.next/server/app/api/skills/install/route.js +4 -1
  55. package/dist/.next/server/app/api/skills/install/route.js.nft.json +1 -1
  56. package/dist/.next/server/app/api/skills/pinnable/route/app-paths-manifest.json +3 -0
  57. package/dist/.next/server/app/api/skills/pinnable/route/build-manifest.json +12 -0
  58. package/dist/.next/server/app/api/skills/pinnable/route/server-reference-manifest.json +4 -0
  59. package/dist/.next/server/app/api/skills/pinnable/route.js +9 -0
  60. package/dist/.next/server/app/api/skills/pinnable/route.js.nft.json +1 -0
  61. package/dist/.next/server/app/api/skills/pinnable/route_client-reference-manifest.js +3 -0
  62. package/dist/.next/server/app/api/skills/route.js +4 -2
  63. package/dist/.next/server/app/api/skills/route.js.nft.json +1 -1
  64. package/dist/.next/server/app/api/workspace/download/route.js +3 -2
  65. package/dist/.next/server/app/api/workspace/download/route.js.nft.json +1 -1
  66. package/dist/.next/server/app/api/workspace/file/route.js +4 -2
  67. package/dist/.next/server/app/api/workspace/file/route.js.nft.json +1 -1
  68. package/dist/.next/server/app/api/workspace/local/route/app-paths-manifest.json +3 -0
  69. package/dist/.next/server/app/api/workspace/local/route/build-manifest.json +12 -0
  70. package/dist/.next/server/app/api/workspace/local/route/server-reference-manifest.json +4 -0
  71. package/dist/.next/server/app/api/workspace/local/route.js +8 -0
  72. package/dist/.next/server/app/api/workspace/local/route.js.nft.json +1 -0
  73. package/dist/.next/server/app/api/workspace/local/route_client-reference-manifest.js +3 -0
  74. package/dist/.next/server/app/api/workspace/route.js +4 -2
  75. package/dist/.next/server/app/api/workspace/route.js.nft.json +1 -1
  76. package/dist/.next/server/app/api/workspace/upload/route.js +4 -2
  77. package/dist/.next/server/app/api/workspace/upload/route.js.nft.json +1 -1
  78. package/dist/.next/server/app/index.html +1 -1
  79. package/dist/.next/server/app/index.rsc +14 -14
  80. package/dist/.next/server/app/index.segments/__PAGE__.segment.rsc +13 -13
  81. package/dist/.next/server/app/index.segments/_full.segment.rsc +14 -14
  82. package/dist/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  83. package/dist/.next/server/app/page.js +2 -2
  84. package/dist/.next/server/app/page.js.nft.json +1 -1
  85. package/dist/.next/server/app/page_client-reference-manifest.js +1 -1
  86. package/dist/.next/server/app-paths-manifest.json +5 -0
  87. package/dist/.next/server/chunks/[root-of-the-server]__0-i5rus._.js +3 -0
  88. package/dist/.next/server/chunks/[root-of-the-server]__0dybnx0._.js +3 -0
  89. package/dist/.next/server/chunks/[root-of-the-server]__0fmduu-._.js +3 -0
  90. package/dist/.next/server/chunks/[root-of-the-server]__0kizcbt._.js +3 -0
  91. package/dist/.next/server/chunks/[root-of-the-server]__0lq194g._.js +3 -0
  92. package/dist/.next/server/chunks/[root-of-the-server]__0luo5d4._.js +3 -0
  93. package/dist/.next/server/chunks/[root-of-the-server]__0v0m1y-._.js +3 -0
  94. package/dist/.next/server/chunks/[root-of-the-server]__0virxvm._.js +3 -0
  95. package/dist/.next/server/chunks/[root-of-the-server]__0vwaawi._.js +3 -0
  96. package/dist/.next/server/chunks/[root-of-the-server]__1-2mhzd._.js +3 -0
  97. package/dist/.next/server/chunks/[root-of-the-server]__16636z3._.js +3 -0
  98. package/dist/.next/server/chunks/[root-of-the-server]__1afn3w3._.js +3 -0
  99. package/dist/.next/server/chunks/[root-of-the-server]__1fq9db_._.js +3 -0
  100. package/dist/.next/server/chunks/[root-of-the-server]__1fzfvz3._.js +3 -0
  101. package/dist/.next/server/chunks/[root-of-the-server]__1k00xvf._.js +3 -0
  102. package/dist/.next/server/chunks/[root-of-the-server]__1m3tlft._.js +3 -0
  103. package/dist/.next/server/chunks/[root-of-the-server]__1qoffdc._.js +3 -0
  104. package/dist/.next/server/chunks/_next-internal_server_app_api_settings_access_route_actions_0ilqg1m.js +3 -0
  105. package/dist/.next/server/chunks/_next-internal_server_app_api_settings_route_actions_1bpm9ac.js +3 -0
  106. package/dist/.next/server/chunks/_next-internal_server_app_api_settings_test-key_route_actions_0c8vety.js +3 -0
  107. package/dist/.next/server/chunks/_next-internal_server_app_api_skills_pinnable_route_actions_0qv6-9_.js +3 -0
  108. package/dist/.next/server/chunks/_next-internal_server_app_api_workspace_local_route_actions_068ww6d.js +3 -0
  109. package/dist/.next/server/chunks/src_lib_server_skills_ts_1tyunpj._.js +6 -0
  110. package/dist/.next/server/chunks/ssr/[root-of-the-server]__0iye2qj._.js +23 -0
  111. package/dist/.next/server/chunks/ssr/[root-of-the-server]__0vz7f19._.js +14 -0
  112. package/dist/.next/server/chunks/ssr/[root-of-the-server]__11z9spm._.js +3 -0
  113. package/dist/.next/server/chunks/ssr/_05yvop-._.js +1 -1
  114. package/dist/.next/server/chunks/ssr/{node_modules_1t21v31._.js → node_modules_01idvlv._.js} +1 -1
  115. package/dist/.next/server/chunks/ssr/{node_modules_05olfud._.js → node_modules_03olh2j._.js} +2 -2
  116. package/dist/.next/server/chunks/ssr/{node_modules_0l773dp._.js → node_modules_059dk_5._.js} +1 -1
  117. package/dist/.next/server/chunks/ssr/node_modules_0813zku._.js +3 -0
  118. package/dist/.next/server/chunks/ssr/{node_modules_0707c4h._.js → node_modules_081sw97._.js} +2 -2
  119. package/dist/.next/server/chunks/ssr/{node_modules_0i24s-o._.js → node_modules_0e78b2q._.js} +2 -2
  120. package/dist/.next/server/chunks/ssr/{node_modules_0jt-p_3._.js → node_modules_0eepgxn._.js} +2 -2
  121. package/dist/.next/server/chunks/ssr/{node_modules_0m8u9v1._.js → node_modules_0jkz2_j._.js} +1 -1
  122. package/dist/.next/server/chunks/ssr/{node_modules_0784dh-._.js → node_modules_0jwljh7._.js} +1 -1
  123. package/dist/.next/server/chunks/ssr/{node_modules_18bc60h._.js → node_modules_0kyd0pa._.js} +1 -1
  124. package/dist/.next/server/chunks/ssr/{node_modules_0ml23_q._.js → node_modules_0l2x56f._.js} +2 -2
  125. package/dist/.next/server/chunks/ssr/{node_modules_1z3x6_m._.js → node_modules_0ob6cdt._.js} +1 -1
  126. package/dist/.next/server/chunks/ssr/{node_modules_1aavgsp._.js → node_modules_0ocx94z._.js} +1 -1
  127. package/dist/.next/server/chunks/ssr/{node_modules_1u__5g0._.js → node_modules_0q0iblu._.js} +1 -1
  128. package/dist/.next/server/chunks/ssr/{node_modules_0afp9zt._.js → node_modules_0wxso-g._.js} +1 -1
  129. package/dist/.next/server/chunks/ssr/{node_modules_0bhc62w._.js → node_modules_0xzf75a._.js} +1 -1
  130. package/dist/.next/server/chunks/ssr/{node_modules_1mqkp65._.js → node_modules_136r-ih._.js} +1 -1
  131. package/dist/.next/server/chunks/ssr/{node_modules_09zrx7f._.js → node_modules_13kozhq._.js} +1 -1
  132. package/dist/.next/server/chunks/ssr/{node_modules_1ch0k2m._.js → node_modules_1860_64._.js} +1 -1
  133. package/dist/.next/server/chunks/ssr/{node_modules_0d3782d._.js → node_modules_187wzhl._.js} +1 -1
  134. package/dist/.next/server/chunks/ssr/{node_modules_1vsvm0k._.js → node_modules_19bz95d._.js} +2 -2
  135. package/dist/.next/server/chunks/ssr/{node_modules_168xluw._.js → node_modules_19dwu03._.js} +1 -1
  136. package/dist/.next/server/chunks/ssr/{node_modules_0jwjxy_._.js → node_modules_19u50ko._.js} +2 -2
  137. package/dist/.next/server/chunks/ssr/{node_modules_0tivl4k._.js → node_modules_1ame___._.js} +2 -2
  138. package/dist/.next/server/chunks/ssr/{node_modules_1zm22k3._.js → node_modules_1hs-kbn._.js} +1 -1
  139. package/dist/.next/server/chunks/ssr/{node_modules_1bo2k7k._.js → node_modules_1k0zo3_._.js} +1 -1
  140. package/dist/.next/server/chunks/ssr/{node_modules_0rlst0z._.js → node_modules_1mkc_0p._.js} +1 -1
  141. package/dist/.next/server/chunks/ssr/{node_modules_16ad5zu._.js → node_modules_1n7jjdx._.js} +2 -2
  142. package/dist/.next/server/chunks/ssr/{node_modules_1dc_thh._.js → node_modules_1nyzw3k._.js} +1 -1
  143. package/dist/.next/server/chunks/ssr/{node_modules_0gczflt._.js → node_modules_1owvnxt._.js} +1 -1
  144. package/dist/.next/server/chunks/ssr/{node_modules_katex_dist_katex_mjs_02vnq48._.js → node_modules_katex_dist_katex_mjs_0or4_jd._.js} +1 -1
  145. package/dist/.next/server/functions-config-manifest.json +2 -0
  146. package/dist/.next/server/middleware-build-manifest.js +3 -3
  147. package/dist/.next/server/pages/404.html +1 -1
  148. package/dist/.next/server/pages/500.html +1 -1
  149. package/dist/.next/server/server-reference-manifest.js +1 -1
  150. package/dist/.next/server/server-reference-manifest.json +1 -1
  151. package/dist/.next/static/chunks/011mrdtshdex6.js +21 -0
  152. package/dist/.next/static/chunks/{3rru41488bc4e.js → 0psvah76fntmi.js} +1 -1
  153. package/dist/.next/static/chunks/3-_ql9n6-2lkt.css +3 -0
  154. package/dist/.next/static/chunks/{45asonyfr0kfy.js → 3mgrcbo4w8qjc.js} +1 -1
  155. package/dist/package.json +8 -2
  156. package/dist/server.js +1 -0
  157. package/package.json +8 -2
  158. package/dist/.next/server/chunks/[root-of-the-server]__0239a1s._.js +0 -3
  159. package/dist/.next/server/chunks/[root-of-the-server]__0lmbd-x._.js +0 -3
  160. package/dist/.next/server/chunks/[root-of-the-server]__0o8rrlw._.js +0 -3
  161. package/dist/.next/server/chunks/[root-of-the-server]__0tsmn4o._.js +0 -3
  162. package/dist/.next/server/chunks/[root-of-the-server]__1301wm3._.js +0 -6
  163. package/dist/.next/server/chunks/[root-of-the-server]__13z7yld._.js +0 -3
  164. package/dist/.next/server/chunks/[root-of-the-server]__1csj9d7._.js +0 -6
  165. package/dist/.next/server/chunks/[root-of-the-server]__1lhglnn._.js +0 -6
  166. package/dist/.next/server/chunks/[root-of-the-server]__21ai51o._.js +0 -6
  167. package/dist/.next/server/chunks/_154zcbx._.js +0 -3
  168. package/dist/.next/server/chunks/_1_oz68h._.js +0 -3
  169. package/dist/.next/server/chunks/_1lqtgjk._.js +0 -3
  170. package/dist/.next/server/chunks/ssr/[root-of-the-server]__0gz0l81._.js +0 -14
  171. package/dist/.next/server/chunks/ssr/[root-of-the-server]__0ofckpb._.js +0 -3
  172. package/dist/.next/server/chunks/ssr/[root-of-the-server]__1q-wcrf._.js +0 -15
  173. package/dist/.next/server/chunks/ssr/node_modules_13v6kpn._.js +0 -3
  174. package/dist/.next/static/chunks/09nrlxui_thd6.css +0 -3
  175. package/dist/.next/static/chunks/3ckjr-0dkyr_7.js +0 -13
  176. /package/dist/.next/static/{6-cCzudznf5YJPljIySXU → xABt4zH1zYaqH9HneevHQ}/_buildManifest.js +0 -0
  177. /package/dist/.next/static/{6-cCzudznf5YJPljIySXU → xABt4zH1zYaqH9HneevHQ}/_clientMiddlewareManifest.js +0 -0
  178. /package/dist/.next/static/{6-cCzudznf5YJPljIySXU → xABt4zH1zYaqH9HneevHQ}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,337539,t=>{t.v(t=>Promise.resolve().then(()=>t(88906)))},695802,t=>{t.v(r=>Promise.all(["static/chunks/3t9huugh-5_ps.js","static/chunks/3s09ok8dc101_.js","static/chunks/2l1phv_g29xz7.js","static/chunks/397b67vbg5iof.js","static/chunks/0dcfqbly-089u.js","static/chunks/2re701zfx-nrj.js","static/chunks/31ttnjt6g35a0.js","static/chunks/1d9i8nlx-zy9a.js","static/chunks/1rowt7kr1tu9y.js","static/chunks/13ss71zqoc3if.js","static/chunks/0cnrxsj5iw5ld.js"].map(r=>t.l(r))).then(()=>r(876913)))},467034,(t,r,e)=>{var n={872:function(t,r){"use strict";r.byteLength=function(t){var r=s(t),e=r[0],n=r[1];return(e+n)*3/4-n},r.toByteArray=function(t){var r,e,i=s(t),f=i[0],u=i[1],h=new o((f+u)*3/4-u),a=0,c=u>0?f-4:f;for(e=0;e<c;e+=4)r=n[t.charCodeAt(e)]<<18|n[t.charCodeAt(e+1)]<<12|n[t.charCodeAt(e+2)]<<6|n[t.charCodeAt(e+3)],h[a++]=r>>16&255,h[a++]=r>>8&255,h[a++]=255&r;return 2===u&&(r=n[t.charCodeAt(e)]<<2|n[t.charCodeAt(e+1)]>>4,h[a++]=255&r),1===u&&(r=n[t.charCodeAt(e)]<<10|n[t.charCodeAt(e+1)]<<4|n[t.charCodeAt(e+2)]>>2,h[a++]=r>>8&255,h[a++]=255&r),h},r.fromByteArray=function(t){for(var r,n=t.length,o=n%3,i=[],f=0,u=n-o;f<u;f+=16383)i.push(function(t,r,n){for(var o,i=[],f=r;f<n;f+=3)o=(t[f]<<16&0xff0000)+(t[f+1]<<8&65280)+(255&t[f+2]),i.push(e[o>>18&63]+e[o>>12&63]+e[o>>6&63]+e[63&o]);return i.join("")}(t,f,f+16383>u?u:f+16383));return 1===o?i.push(e[(r=t[n-1])>>2]+e[r<<4&63]+"=="):2===o&&i.push(e[(r=(t[n-2]<<8)+t[n-1])>>10]+e[r>>4&63]+e[r<<2&63]+"="),i.join("")};for(var e=[],n=[],o="u">typeof Uint8Array?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",f=0,u=i.length;f<u;++f)e[f]=i[f],n[i.charCodeAt(f)]=f;function s(t){var r=t.length;if(r%4>0)throw Error("Invalid string. Length must be a multiple of 4");var e=t.indexOf("=");-1===e&&(e=r);var n=e===r?0:4-e%4;return[e,n]}n[45]=62,n[95]=63},230:function(t,r,e){"use strict";var n=e(872),o=e(321),i="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;function f(t){if(t>0x7fffffff)throw RangeError('The value "'+t+'" is invalid for option "size"');var r=new Uint8Array(t);return Object.setPrototypeOf(r,u.prototype),r}function u(t,r,e){if("number"==typeof t){if("string"==typeof r)throw TypeError('The "string" argument must be of type string. Received type number');return a(t)}return s(t,r,e)}function s(t,r,e){if("string"==typeof t){var n=t,o=r;if(("string"!=typeof o||""===o)&&(o="utf8"),!u.isEncoding(o))throw TypeError("Unknown encoding: "+o);var i=0|l(n,o),s=f(i),h=s.write(n,o);return h!==i&&(s=s.slice(0,h)),s}if(ArrayBuffer.isView(t))return c(t);if(null==t)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(O(t,ArrayBuffer)||t&&O(t.buffer,ArrayBuffer)||"u">typeof SharedArrayBuffer&&(O(t,SharedArrayBuffer)||t&&O(t.buffer,SharedArrayBuffer)))return function(t,r,e){var n;if(r<0||t.byteLength<r)throw RangeError('"offset" is outside of buffer bounds');if(t.byteLength<r+(e||0))throw RangeError('"length" is outside of buffer bounds');return Object.setPrototypeOf(n=void 0===r&&void 0===e?new Uint8Array(t):void 0===e?new Uint8Array(t,r):new Uint8Array(t,r,e),u.prototype),n}(t,r,e);if("number"==typeof t)throw TypeError('The "value" argument must not be of type number. Received type number');var a=t.valueOf&&t.valueOf();if(null!=a&&a!==t)return u.from(a,r,e);var y=function(t){if(u.isBuffer(t)){var r=0|p(t.length),e=f(r);return 0===e.length||t.copy(e,0,0,r),e}return void 0!==t.length?"number"!=typeof t.length||function(t){return t!=t}(t.length)?f(0):c(t):"Buffer"===t.type&&Array.isArray(t.data)?c(t.data):void 0}(t);if(y)return y;if("u">typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return u.from(t[Symbol.toPrimitive]("string"),r,e);throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}function h(t){if("number"!=typeof t)throw TypeError('"size" argument must be of type number');if(t<0)throw RangeError('The value "'+t+'" is invalid for option "size"')}function a(t){return h(t),f(t<0?0:0|p(t))}function c(t){for(var r=t.length<0?0:0|p(t.length),e=f(r),n=0;n<r;n+=1)e[n]=255&t[n];return e}r.Buffer=u,r.SlowBuffer=function(t){return+t!=t&&(t=0),u.alloc(+t)},r.INSPECT_MAX_BYTES=50,r.kMaxLength=0x7fffffff,u.TYPED_ARRAY_SUPPORT=function(){try{var t=new Uint8Array(1),r={foo:function(){return 42}};return Object.setPrototypeOf(r,Uint8Array.prototype),Object.setPrototypeOf(t,r),42===t.foo()}catch(t){return!1}}(),!u.TYPED_ARRAY_SUPPORT&&"u">typeof console&&"function"==typeof console.error&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(u.prototype,"parent",{enumerable:!0,get:function(){if(u.isBuffer(this))return this.buffer}}),Object.defineProperty(u.prototype,"offset",{enumerable:!0,get:function(){if(u.isBuffer(this))return this.byteOffset}}),u.poolSize=8192,u.from=function(t,r,e){return s(t,r,e)},Object.setPrototypeOf(u.prototype,Uint8Array.prototype),Object.setPrototypeOf(u,Uint8Array),u.alloc=function(t,r,e){return(h(t),t<=0)?f(t):void 0!==r?"string"==typeof e?f(t).fill(r,e):f(t).fill(r):f(t)},u.allocUnsafe=function(t){return a(t)},u.allocUnsafeSlow=function(t){return a(t)};function p(t){if(t>=0x7fffffff)throw RangeError("Attempt to allocate Buffer larger than maximum size: 0x7fffffff bytes");return 0|t}function l(t,r){if(u.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||O(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);var e=t.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===e)return 0;for(var o=!1;;)switch(r){case"ascii":case"latin1":case"binary":return e;case"utf8":case"utf-8":return x(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*e;case"hex":return e>>>1;case"base64":return I(t).length;default:if(o)return n?-1:x(t).length;r=(""+r).toLowerCase(),o=!0}}function y(t,r,e){var o,i,f,u=!1;if((void 0===r||r<0)&&(r=0),r>this.length||((void 0===e||e>this.length)&&(e=this.length),e<=0||(e>>>=0)<=(r>>>=0)))return"";for(t||(t="utf8");;)switch(t){case"hex":return function(t,r,e){var n=t.length;(!r||r<0)&&(r=0),(!e||e<0||e>n)&&(e=n);for(var o="",i=r;i<e;++i)o+=S[t[i]];return o}(this,r,e);case"utf8":case"utf-8":return b(this,r,e);case"ascii":return function(t,r,e){var n="";e=Math.min(t.length,e);for(var o=r;o<e;++o)n+=String.fromCharCode(127&t[o]);return n}(this,r,e);case"latin1":case"binary":return function(t,r,e){var n="";e=Math.min(t.length,e);for(var o=r;o<e;++o)n+=String.fromCharCode(t[o]);return n}(this,r,e);case"base64":return o=this,i=r,f=e,0===i&&f===o.length?n.fromByteArray(o):n.fromByteArray(o.slice(i,f));case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return function(t,r,e){for(var n=t.slice(r,e),o="",i=0;i<n.length;i+=2)o+=String.fromCharCode(n[i]+256*n[i+1]);return o}(this,r,e);default:if(u)throw TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),u=!0}}function g(t,r,e){var n=t[r];t[r]=t[e],t[e]=n}function d(t,r,e,n,o){var i;if(0===t.length)return -1;if("string"==typeof e?(n=e,e=0):e>0x7fffffff?e=0x7fffffff:e<-0x80000000&&(e=-0x80000000),(i=e*=1)!=i&&(e=o?0:t.length-1),e<0&&(e=t.length+e),e>=t.length)if(o)return -1;else e=t.length-1;else if(e<0)if(!o)return -1;else e=0;if("string"==typeof r&&(r=u.from(r,n)),u.isBuffer(r))return 0===r.length?-1:v(t,r,e,n,o);if("number"==typeof r){if(r&=255,"function"==typeof Uint8Array.prototype.indexOf)if(o)return Uint8Array.prototype.indexOf.call(t,r,e);else return Uint8Array.prototype.lastIndexOf.call(t,r,e);return v(t,[r],e,n,o)}throw TypeError("val must be string, number or Buffer")}function v(t,r,e,n,o){var i,f=1,u=t.length,s=r.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||r.length<2)return -1;f=2,u/=2,s/=2,e/=2}function h(t,r){return 1===f?t[r]:t.readUInt16BE(r*f)}if(o){var a=-1;for(i=e;i<u;i++)if(h(t,i)===h(r,-1===a?0:i-a)){if(-1===a&&(a=i),i-a+1===s)return a*f}else -1!==a&&(i-=i-a),a=-1}else for(e+s>u&&(e=u-s),i=e;i>=0;i--){for(var c=!0,p=0;p<s;p++)if(h(t,i+p)!==h(r,p)){c=!1;break}if(c)return i}return -1}u.isBuffer=function(t){return null!=t&&!0===t._isBuffer&&t!==u.prototype},u.compare=function(t,r){if(O(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),O(r,Uint8Array)&&(r=u.from(r,r.offset,r.byteLength)),!u.isBuffer(t)||!u.isBuffer(r))throw TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===r)return 0;for(var e=t.length,n=r.length,o=0,i=Math.min(e,n);o<i;++o)if(t[o]!==r[o]){e=t[o],n=r[o];break}return e<n?-1:+(n<e)},u.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},u.concat=function(t,r){if(!Array.isArray(t))throw TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return u.alloc(0);if(void 0===r)for(e=0,r=0;e<t.length;++e)r+=t[e].length;var e,n=u.allocUnsafe(r),o=0;for(e=0;e<t.length;++e){var i=t[e];if(O(i,Uint8Array)&&(i=u.from(i)),!u.isBuffer(i))throw TypeError('"list" argument must be an Array of Buffers');i.copy(n,o),o+=i.length}return n},u.byteLength=l,u.prototype._isBuffer=!0,u.prototype.swap16=function(){var t=this.length;if(t%2!=0)throw RangeError("Buffer size must be a multiple of 16-bits");for(var r=0;r<t;r+=2)g(this,r,r+1);return this},u.prototype.swap32=function(){var t=this.length;if(t%4!=0)throw RangeError("Buffer size must be a multiple of 32-bits");for(var r=0;r<t;r+=4)g(this,r,r+3),g(this,r+1,r+2);return this},u.prototype.swap64=function(){var t=this.length;if(t%8!=0)throw RangeError("Buffer size must be a multiple of 64-bits");for(var r=0;r<t;r+=8)g(this,r,r+7),g(this,r+1,r+6),g(this,r+2,r+5),g(this,r+3,r+4);return this},u.prototype.toString=function(){var t=this.length;return 0===t?"":0==arguments.length?b(this,0,t):y.apply(this,arguments)},u.prototype.toLocaleString=u.prototype.toString,u.prototype.equals=function(t){if(!u.isBuffer(t))throw TypeError("Argument must be a Buffer");return this===t||0===u.compare(this,t)},u.prototype.inspect=function(){var t="",e=r.INSPECT_MAX_BYTES;return t=this.toString("hex",0,e).replace(/(.{2})/g,"$1 ").trim(),this.length>e&&(t+=" ... "),"<Buffer "+t+">"},i&&(u.prototype[i]=u.prototype.inspect),u.prototype.compare=function(t,r,e,n,o){if(O(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),!u.isBuffer(t))throw TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===r&&(r=0),void 0===e&&(e=t?t.length:0),void 0===n&&(n=0),void 0===o&&(o=this.length),r<0||e>t.length||n<0||o>this.length)throw RangeError("out of range index");if(n>=o&&r>=e)return 0;if(n>=o)return -1;if(r>=e)return 1;if(r>>>=0,e>>>=0,n>>>=0,o>>>=0,this===t)return 0;for(var i=o-n,f=e-r,s=Math.min(i,f),h=this.slice(n,o),a=t.slice(r,e),c=0;c<s;++c)if(h[c]!==a[c]){i=h[c],f=a[c];break}return i<f?-1:+(f<i)},u.prototype.includes=function(t,r,e){return -1!==this.indexOf(t,r,e)},u.prototype.indexOf=function(t,r,e){return d(this,t,r,e,!0)},u.prototype.lastIndexOf=function(t,r,e){return d(this,t,r,e,!1)};function b(t,r,e){e=Math.min(t.length,e);for(var n=[],o=r;o<e;){var i,f,u,s,h=t[o],a=null,c=h>239?4:h>223?3:h>191?2:1;if(o+c<=e)switch(c){case 1:h<128&&(a=h);break;case 2:(192&(i=t[o+1]))==128&&(s=(31&h)<<6|63&i)>127&&(a=s);break;case 3:i=t[o+1],f=t[o+2],(192&i)==128&&(192&f)==128&&(s=(15&h)<<12|(63&i)<<6|63&f)>2047&&(s<55296||s>57343)&&(a=s);break;case 4:i=t[o+1],f=t[o+2],u=t[o+3],(192&i)==128&&(192&f)==128&&(192&u)==128&&(s=(15&h)<<18|(63&i)<<12|(63&f)<<6|63&u)>65535&&s<1114112&&(a=s)}null===a?(a=65533,c=1):a>65535&&(a-=65536,n.push(a>>>10&1023|55296),a=56320|1023&a),n.push(a),o+=c}var p=n,l=p.length;if(l<=4096)return String.fromCharCode.apply(String,p);for(var y="",g=0;g<l;)y+=String.fromCharCode.apply(String,p.slice(g,g+=4096));return y}function w(t,r,e){if(t%1!=0||t<0)throw RangeError("offset is not uint");if(t+r>e)throw RangeError("Trying to access beyond buffer length")}function m(t,r,e,n,o,i){if(!u.isBuffer(t))throw TypeError('"buffer" argument must be a Buffer instance');if(r>o||r<i)throw RangeError('"value" argument is out of bounds');if(e+n>t.length)throw RangeError("Index out of range")}function E(t,r,e,n,o,i){if(e+n>t.length||e<0)throw RangeError("Index out of range")}function A(t,r,e,n,i){return r*=1,e>>>=0,i||E(t,r,e,4,34028234663852886e22,-34028234663852886e22),o.write(t,r,e,n,23,4),e+4}function B(t,r,e,n,i){return r*=1,e>>>=0,i||E(t,r,e,8,17976931348623157e292,-17976931348623157e292),o.write(t,r,e,n,52,8),e+8}u.prototype.write=function(t,r,e,n){if(void 0===r)n="utf8",e=this.length,r=0;else if(void 0===e&&"string"==typeof r)n=r,e=this.length,r=0;else if(isFinite(r))r>>>=0,isFinite(e)?(e>>>=0,void 0===n&&(n="utf8")):(n=e,e=void 0);else throw Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var o,i,f,u,s,h,a,c,p=this.length-r;if((void 0===e||e>p)&&(e=p),t.length>0&&(e<0||r<0)||r>this.length)throw RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var l=!1;;)switch(n){case"hex":return function(t,r,e,n){e=Number(e)||0;var o=t.length-e;n?(n=Number(n))>o&&(n=o):n=o;var i=r.length;n>i/2&&(n=i/2);for(var f=0;f<n;++f){var u,s=parseInt(r.substr(2*f,2),16);if((u=s)!=u)break;t[e+f]=s}return f}(this,t,r,e);case"utf8":case"utf-8":return o=r,i=e,R(x(t,this.length-o),this,o,i);case"ascii":return f=r,u=e,R(T(t),this,f,u);case"latin1":case"binary":return function(t,r,e,n){return R(T(r),t,e,n)}(this,t,r,e);case"base64":return s=r,h=e,R(I(t),this,s,h);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return a=r,c=e,R(function(t,r){for(var e,n,o=[],i=0;i<t.length&&!((r-=2)<0);++i)n=(e=t.charCodeAt(i))>>8,o.push(e%256),o.push(n);return o}(t,this.length-a),this,a,c);default:if(l)throw TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),l=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},u.prototype.slice=function(t,r){var e=this.length;t=~~t,r=void 0===r?e:~~r,t<0?(t+=e)<0&&(t=0):t>e&&(t=e),r<0?(r+=e)<0&&(r=0):r>e&&(r=e),r<t&&(r=t);var n=this.subarray(t,r);return Object.setPrototypeOf(n,u.prototype),n},u.prototype.readUIntLE=function(t,r,e){t>>>=0,r>>>=0,e||w(t,r,this.length);for(var n=this[t],o=1,i=0;++i<r&&(o*=256);)n+=this[t+i]*o;return n},u.prototype.readUIntBE=function(t,r,e){t>>>=0,r>>>=0,e||w(t,r,this.length);for(var n=this[t+--r],o=1;r>0&&(o*=256);)n+=this[t+--r]*o;return n},u.prototype.readUInt8=function(t,r){return t>>>=0,r||w(t,1,this.length),this[t]},u.prototype.readUInt16LE=function(t,r){return t>>>=0,r||w(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUInt16BE=function(t,r){return t>>>=0,r||w(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUInt32LE=function(t,r){return t>>>=0,r||w(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+0x1000000*this[t+3]},u.prototype.readUInt32BE=function(t,r){return t>>>=0,r||w(t,4,this.length),0x1000000*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readIntLE=function(t,r,e){t>>>=0,r>>>=0,e||w(t,r,this.length);for(var n=this[t],o=1,i=0;++i<r&&(o*=256);)n+=this[t+i]*o;return n>=(o*=128)&&(n-=Math.pow(2,8*r)),n},u.prototype.readIntBE=function(t,r,e){t>>>=0,r>>>=0,e||w(t,r,this.length);for(var n=r,o=1,i=this[t+--n];n>0&&(o*=256);)i+=this[t+--n]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*r)),i},u.prototype.readInt8=function(t,r){return(t>>>=0,r||w(t,1,this.length),128&this[t])?-((255-this[t]+1)*1):this[t]},u.prototype.readInt16LE=function(t,r){t>>>=0,r||w(t,2,this.length);var e=this[t]|this[t+1]<<8;return 32768&e?0xffff0000|e:e},u.prototype.readInt16BE=function(t,r){t>>>=0,r||w(t,2,this.length);var e=this[t+1]|this[t]<<8;return 32768&e?0xffff0000|e:e},u.prototype.readInt32LE=function(t,r){return t>>>=0,r||w(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,r){return t>>>=0,r||w(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readFloatLE=function(t,r){return t>>>=0,r||w(t,4,this.length),o.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,r){return t>>>=0,r||w(t,4,this.length),o.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,r){return t>>>=0,r||w(t,8,this.length),o.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,r){return t>>>=0,r||w(t,8,this.length),o.read(this,t,!1,52,8)},u.prototype.writeUIntLE=function(t,r,e,n){if(t*=1,r>>>=0,e>>>=0,!n){var o=Math.pow(2,8*e)-1;m(this,t,r,e,o,0)}var i=1,f=0;for(this[r]=255&t;++f<e&&(i*=256);)this[r+f]=t/i&255;return r+e},u.prototype.writeUIntBE=function(t,r,e,n){if(t*=1,r>>>=0,e>>>=0,!n){var o=Math.pow(2,8*e)-1;m(this,t,r,e,o,0)}var i=e-1,f=1;for(this[r+i]=255&t;--i>=0&&(f*=256);)this[r+i]=t/f&255;return r+e},u.prototype.writeUInt8=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,1,255,0),this[r]=255&t,r+1},u.prototype.writeUInt16LE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,2,65535,0),this[r]=255&t,this[r+1]=t>>>8,r+2},u.prototype.writeUInt16BE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,2,65535,0),this[r]=t>>>8,this[r+1]=255&t,r+2},u.prototype.writeUInt32LE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,4,0xffffffff,0),this[r+3]=t>>>24,this[r+2]=t>>>16,this[r+1]=t>>>8,this[r]=255&t,r+4},u.prototype.writeUInt32BE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,4,0xffffffff,0),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=255&t,r+4},u.prototype.writeIntLE=function(t,r,e,n){if(t*=1,r>>>=0,!n){var o=Math.pow(2,8*e-1);m(this,t,r,e,o-1,-o)}var i=0,f=1,u=0;for(this[r]=255&t;++i<e&&(f*=256);)t<0&&0===u&&0!==this[r+i-1]&&(u=1),this[r+i]=(t/f|0)-u&255;return r+e},u.prototype.writeIntBE=function(t,r,e,n){if(t*=1,r>>>=0,!n){var o=Math.pow(2,8*e-1);m(this,t,r,e,o-1,-o)}var i=e-1,f=1,u=0;for(this[r+i]=255&t;--i>=0&&(f*=256);)t<0&&0===u&&0!==this[r+i+1]&&(u=1),this[r+i]=(t/f|0)-u&255;return r+e},u.prototype.writeInt8=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,1,127,-128),t<0&&(t=255+t+1),this[r]=255&t,r+1},u.prototype.writeInt16LE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,2,32767,-32768),this[r]=255&t,this[r+1]=t>>>8,r+2},u.prototype.writeInt16BE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,2,32767,-32768),this[r]=t>>>8,this[r+1]=255&t,r+2},u.prototype.writeInt32LE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,4,0x7fffffff,-0x80000000),this[r]=255&t,this[r+1]=t>>>8,this[r+2]=t>>>16,this[r+3]=t>>>24,r+4},u.prototype.writeInt32BE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,4,0x7fffffff,-0x80000000),t<0&&(t=0xffffffff+t+1),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=255&t,r+4},u.prototype.writeFloatLE=function(t,r,e){return A(this,t,r,!0,e)},u.prototype.writeFloatBE=function(t,r,e){return A(this,t,r,!1,e)},u.prototype.writeDoubleLE=function(t,r,e){return B(this,t,r,!0,e)},u.prototype.writeDoubleBE=function(t,r,e){return B(this,t,r,!1,e)},u.prototype.copy=function(t,r,e,n){if(!u.isBuffer(t))throw TypeError("argument should be a Buffer");if(e||(e=0),n||0===n||(n=this.length),r>=t.length&&(r=t.length),r||(r=0),n>0&&n<e&&(n=e),n===e||0===t.length||0===this.length)return 0;if(r<0)throw RangeError("targetStart out of bounds");if(e<0||e>=this.length)throw RangeError("Index out of range");if(n<0)throw RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-r<n-e&&(n=t.length-r+e);var o=n-e;if(this===t&&"function"==typeof Uint8Array.prototype.copyWithin)this.copyWithin(r,e,n);else if(this===t&&e<r&&r<n)for(var i=o-1;i>=0;--i)t[i+r]=this[i+e];else Uint8Array.prototype.set.call(t,this.subarray(e,n),r);return o},u.prototype.fill=function(t,r,e,n){if("string"==typeof t){if("string"==typeof r?(n=r,r=0,e=this.length):"string"==typeof e&&(n=e,e=this.length),void 0!==n&&"string"!=typeof n)throw TypeError("encoding must be a string");if("string"==typeof n&&!u.isEncoding(n))throw TypeError("Unknown encoding: "+n);if(1===t.length){var o,i=t.charCodeAt(0);("utf8"===n&&i<128||"latin1"===n)&&(t=i)}}else"number"==typeof t?t&=255:"boolean"==typeof t&&(t=Number(t));if(r<0||this.length<r||this.length<e)throw RangeError("Out of range index");if(e<=r)return this;if(r>>>=0,e=void 0===e?this.length:e>>>0,t||(t=0),"number"==typeof t)for(o=r;o<e;++o)this[o]=t;else{var f=u.isBuffer(t)?t:u.from(t,n),s=f.length;if(0===s)throw TypeError('The value "'+t+'" is invalid for argument "value"');for(o=0;o<e-r;++o)this[o+r]=f[o%s]}return this};var U=/[^+/0-9A-Za-z-_]/g;function x(t,r){r=r||1/0;for(var e,n=t.length,o=null,i=[],f=0;f<n;++f){if((e=t.charCodeAt(f))>55295&&e<57344){if(!o){if(e>56319||f+1===n){(r-=3)>-1&&i.push(239,191,189);continue}o=e;continue}if(e<56320){(r-=3)>-1&&i.push(239,191,189),o=e;continue}e=(o-55296<<10|e-56320)+65536}else o&&(r-=3)>-1&&i.push(239,191,189);if(o=null,e<128){if((r-=1)<0)break;i.push(e)}else if(e<2048){if((r-=2)<0)break;i.push(e>>6|192,63&e|128)}else if(e<65536){if((r-=3)<0)break;i.push(e>>12|224,e>>6&63|128,63&e|128)}else if(e<1114112){if((r-=4)<0)break;i.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}else throw Error("Invalid code point")}return i}function T(t){for(var r=[],e=0;e<t.length;++e)r.push(255&t.charCodeAt(e));return r}function I(t){return n.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(U,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function R(t,r,e,n){for(var o=0;o<n&&!(o+e>=r.length)&&!(o>=t.length);++o)r[o+e]=t[o];return o}function O(t,r){return t instanceof r||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===r.name}var S=function(){for(var t="0123456789abcdef",r=Array(256),e=0;e<16;++e)for(var n=16*e,o=0;o<16;++o)r[n+o]=t[e]+t[o];return r}()},321:function(t,r){r.read=function(t,r,e,n,o){var i,f,u=8*o-n-1,s=(1<<u)-1,h=s>>1,a=-7,c=e?o-1:0,p=e?-1:1,l=t[r+c];for(c+=p,i=l&(1<<-a)-1,l>>=-a,a+=u;a>0;i=256*i+t[r+c],c+=p,a-=8);for(f=i&(1<<-a)-1,i>>=-a,a+=n;a>0;f=256*f+t[r+c],c+=p,a-=8);if(0===i)i=1-h;else{if(i===s)return f?NaN:1/0*(l?-1:1);f+=Math.pow(2,n),i-=h}return(l?-1:1)*f*Math.pow(2,i-n)},r.write=function(t,r,e,n,o,i){var f,u,s,h=8*i-o-1,a=(1<<h)-1,c=a>>1,p=5960464477539062e-23*(23===o),l=n?0:i-1,y=n?1:-1,g=+(r<0||0===r&&1/r<0);for(isNaN(r=Math.abs(r))||r===1/0?(u=+!!isNaN(r),f=a):(f=Math.floor(Math.log(r)/Math.LN2),r*(s=Math.pow(2,-f))<1&&(f--,s*=2),f+c>=1?r+=p/s:r+=p*Math.pow(2,1-c),r*s>=2&&(f++,s/=2),f+c>=a?(u=0,f=a):f+c>=1?(u=(r*s-1)*Math.pow(2,o),f+=c):(u=r*Math.pow(2,c-1)*Math.pow(2,o),f=0));o>=8;t[e+l]=255&u,l+=y,u/=256,o-=8);for(f=f<<o|u,h+=o;h>0;t[e+l]=255&f,l+=y,f/=256,h-=8);t[e+l-y]|=128*g}}},o={};function i(t){var r=o[t];if(void 0!==r)return r.exports;var e=o[t]={exports:{}},f=!0;try{n[t](e,e.exports,i),f=!1}finally{f&&delete o[t]}return e.exports}i.ab="/ROOT/node_modules/next/dist/compiled/buffer/",r.exports=i(230)},614677,t=>{"use strict";let r=new Uint8Array(16),e=[];for(let t=0;t<256;++t)e.push((t+256).toString(16).slice(1));t.s(["v4",0,function(t,n,o){return n||t||!crypto.randomUUID?function(t,n,o){let i=(t=t||{}).random??t.rng?.()??crypto.getRandomValues(r);if(i.length<16)throw Error("Random bytes length must be >= 16");if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,n){if((o=o||0)<0||o+16>n.length)throw RangeError(`UUID byte range ${o}:${o+15} is out of buffer bounds`);for(let t=0;t<16;++t)n[o+t]=i[t];return n}return function(t,r=0){return(e[t[r+0]]+e[t[r+1]]+e[t[r+2]]+e[t[r+3]]+"-"+e[t[r+4]]+e[t[r+5]]+"-"+e[t[r+6]]+e[t[r+7]]+"-"+e[t[r+8]]+e[t[r+9]]+"-"+e[t[r+10]]+e[t[r+11]]+e[t[r+12]]+e[t[r+13]]+e[t[r+14]]+e[t[r+15]]).toLowerCase()}(i)}(t,n,o):crypto.randomUUID()}],614677)}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,337539,t=>{t.v(t=>Promise.resolve().then(()=>t(88906)))},695802,t=>{t.v(r=>Promise.all(["static/chunks/3t9huugh-5_ps.js","static/chunks/3s09ok8dc101_.js","static/chunks/2l1phv_g29xz7.js","static/chunks/397b67vbg5iof.js","static/chunks/0dcfqbly-089u.js","static/chunks/2re701zfx-nrj.js","static/chunks/31ttnjt6g35a0.js","static/chunks/1d9i8nlx-zy9a.js","static/chunks/1rowt7kr1tu9y.js","static/chunks/13ss71zqoc3if.js","static/chunks/0cnrxsj5iw5ld.js"].map(r=>t.l(r))).then(()=>r(876913)))},467034,(t,r,e)=>{var n={872:function(t,r){"use strict";r.byteLength=function(t){var r=s(t),e=r[0],n=r[1];return(e+n)*3/4-n},r.toByteArray=function(t){var r,e,i=s(t),f=i[0],u=i[1],a=new o((f+u)*3/4-u),h=0,c=u>0?f-4:f;for(e=0;e<c;e+=4)r=n[t.charCodeAt(e)]<<18|n[t.charCodeAt(e+1)]<<12|n[t.charCodeAt(e+2)]<<6|n[t.charCodeAt(e+3)],a[h++]=r>>16&255,a[h++]=r>>8&255,a[h++]=255&r;return 2===u&&(r=n[t.charCodeAt(e)]<<2|n[t.charCodeAt(e+1)]>>4,a[h++]=255&r),1===u&&(r=n[t.charCodeAt(e)]<<10|n[t.charCodeAt(e+1)]<<4|n[t.charCodeAt(e+2)]>>2,a[h++]=r>>8&255,a[h++]=255&r),a},r.fromByteArray=function(t){for(var r,n=t.length,o=n%3,i=[],f=0,u=n-o;f<u;f+=16383)i.push(function(t,r,n){for(var o,i=[],f=r;f<n;f+=3)o=(t[f]<<16&0xff0000)+(t[f+1]<<8&65280)+(255&t[f+2]),i.push(e[o>>18&63]+e[o>>12&63]+e[o>>6&63]+e[63&o]);return i.join("")}(t,f,f+16383>u?u:f+16383));return 1===o?i.push(e[(r=t[n-1])>>2]+e[r<<4&63]+"=="):2===o&&i.push(e[(r=(t[n-2]<<8)+t[n-1])>>10]+e[r>>4&63]+e[r<<2&63]+"="),i.join("")};for(var e=[],n=[],o="u">typeof Uint8Array?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",f=0,u=i.length;f<u;++f)e[f]=i[f],n[i.charCodeAt(f)]=f;function s(t){var r=t.length;if(r%4>0)throw Error("Invalid string. Length must be a multiple of 4");var e=t.indexOf("=");-1===e&&(e=r);var n=e===r?0:4-e%4;return[e,n]}n[45]=62,n[95]=63},230:function(t,r,e){"use strict";var n=e(872),o=e(321),i="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;function f(t){if(t>0x7fffffff)throw RangeError('The value "'+t+'" is invalid for option "size"');var r=new Uint8Array(t);return Object.setPrototypeOf(r,u.prototype),r}function u(t,r,e){if("number"==typeof t){if("string"==typeof r)throw TypeError('The "string" argument must be of type string. Received type number');return h(t)}return s(t,r,e)}function s(t,r,e){if("string"==typeof t){var n=t,o=r;if(("string"!=typeof o||""===o)&&(o="utf8"),!u.isEncoding(o))throw TypeError("Unknown encoding: "+o);var i=0|l(n,o),s=f(i),a=s.write(n,o);return a!==i&&(s=s.slice(0,a)),s}if(ArrayBuffer.isView(t))return c(t);if(null==t)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(R(t,ArrayBuffer)||t&&R(t.buffer,ArrayBuffer)||"u">typeof SharedArrayBuffer&&(R(t,SharedArrayBuffer)||t&&R(t.buffer,SharedArrayBuffer)))return function(t,r,e){var n;if(r<0||t.byteLength<r)throw RangeError('"offset" is outside of buffer bounds');if(t.byteLength<r+(e||0))throw RangeError('"length" is outside of buffer bounds');return Object.setPrototypeOf(n=void 0===r&&void 0===e?new Uint8Array(t):void 0===e?new Uint8Array(t,r):new Uint8Array(t,r,e),u.prototype),n}(t,r,e);if("number"==typeof t)throw TypeError('The "value" argument must not be of type number. Received type number');var h=t.valueOf&&t.valueOf();if(null!=h&&h!==t)return u.from(h,r,e);var y=function(t){if(u.isBuffer(t)){var r=0|p(t.length),e=f(r);return 0===e.length||t.copy(e,0,0,r),e}return void 0!==t.length?"number"!=typeof t.length||function(t){return t!=t}(t.length)?f(0):c(t):"Buffer"===t.type&&Array.isArray(t.data)?c(t.data):void 0}(t);if(y)return y;if("u">typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return u.from(t[Symbol.toPrimitive]("string"),r,e);throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}function a(t){if("number"!=typeof t)throw TypeError('"size" argument must be of type number');if(t<0)throw RangeError('The value "'+t+'" is invalid for option "size"')}function h(t){return a(t),f(t<0?0:0|p(t))}function c(t){for(var r=t.length<0?0:0|p(t.length),e=f(r),n=0;n<r;n+=1)e[n]=255&t[n];return e}r.Buffer=u,r.SlowBuffer=function(t){return+t!=t&&(t=0),u.alloc(+t)},r.INSPECT_MAX_BYTES=50,r.kMaxLength=0x7fffffff,u.TYPED_ARRAY_SUPPORT=function(){try{var t=new Uint8Array(1),r={foo:function(){return 42}};return Object.setPrototypeOf(r,Uint8Array.prototype),Object.setPrototypeOf(t,r),42===t.foo()}catch(t){return!1}}(),!u.TYPED_ARRAY_SUPPORT&&"u">typeof console&&"function"==typeof console.error&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(u.prototype,"parent",{enumerable:!0,get:function(){if(u.isBuffer(this))return this.buffer}}),Object.defineProperty(u.prototype,"offset",{enumerable:!0,get:function(){if(u.isBuffer(this))return this.byteOffset}}),u.poolSize=8192,u.from=function(t,r,e){return s(t,r,e)},Object.setPrototypeOf(u.prototype,Uint8Array.prototype),Object.setPrototypeOf(u,Uint8Array),u.alloc=function(t,r,e){return(a(t),t<=0)?f(t):void 0!==r?"string"==typeof e?f(t).fill(r,e):f(t).fill(r):f(t)},u.allocUnsafe=function(t){return h(t)},u.allocUnsafeSlow=function(t){return h(t)};function p(t){if(t>=0x7fffffff)throw RangeError("Attempt to allocate Buffer larger than maximum size: 0x7fffffff bytes");return 0|t}function l(t,r){if(u.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||R(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);var e=t.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===e)return 0;for(var o=!1;;)switch(r){case"ascii":case"latin1":case"binary":return e;case"utf8":case"utf-8":return x(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*e;case"hex":return e>>>1;case"base64":return I(t).length;default:if(o)return n?-1:x(t).length;r=(""+r).toLowerCase(),o=!0}}function y(t,r,e){var o,i,f,u=!1;if((void 0===r||r<0)&&(r=0),r>this.length||((void 0===e||e>this.length)&&(e=this.length),e<=0||(e>>>=0)<=(r>>>=0)))return"";for(t||(t="utf8");;)switch(t){case"hex":return function(t,r,e){var n=t.length;(!r||r<0)&&(r=0),(!e||e<0||e>n)&&(e=n);for(var o="",i=r;i<e;++i)o+=O[t[i]];return o}(this,r,e);case"utf8":case"utf-8":return b(this,r,e);case"ascii":return function(t,r,e){var n="";e=Math.min(t.length,e);for(var o=r;o<e;++o)n+=String.fromCharCode(127&t[o]);return n}(this,r,e);case"latin1":case"binary":return function(t,r,e){var n="";e=Math.min(t.length,e);for(var o=r;o<e;++o)n+=String.fromCharCode(t[o]);return n}(this,r,e);case"base64":return o=this,i=r,f=e,0===i&&f===o.length?n.fromByteArray(o):n.fromByteArray(o.slice(i,f));case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return function(t,r,e){for(var n=t.slice(r,e),o="",i=0;i<n.length;i+=2)o+=String.fromCharCode(n[i]+256*n[i+1]);return o}(this,r,e);default:if(u)throw TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),u=!0}}function g(t,r,e){var n=t[r];t[r]=t[e],t[e]=n}function d(t,r,e,n,o){var i;if(0===t.length)return -1;if("string"==typeof e?(n=e,e=0):e>0x7fffffff?e=0x7fffffff:e<-0x80000000&&(e=-0x80000000),(i=e*=1)!=i&&(e=o?0:t.length-1),e<0&&(e=t.length+e),e>=t.length)if(o)return -1;else e=t.length-1;else if(e<0)if(!o)return -1;else e=0;if("string"==typeof r&&(r=u.from(r,n)),u.isBuffer(r))return 0===r.length?-1:v(t,r,e,n,o);if("number"==typeof r){if(r&=255,"function"==typeof Uint8Array.prototype.indexOf)if(o)return Uint8Array.prototype.indexOf.call(t,r,e);else return Uint8Array.prototype.lastIndexOf.call(t,r,e);return v(t,[r],e,n,o)}throw TypeError("val must be string, number or Buffer")}function v(t,r,e,n,o){var i,f=1,u=t.length,s=r.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||r.length<2)return -1;f=2,u/=2,s/=2,e/=2}function a(t,r){return 1===f?t[r]:t.readUInt16BE(r*f)}if(o){var h=-1;for(i=e;i<u;i++)if(a(t,i)===a(r,-1===h?0:i-h)){if(-1===h&&(h=i),i-h+1===s)return h*f}else -1!==h&&(i-=i-h),h=-1}else for(e+s>u&&(e=u-s),i=e;i>=0;i--){for(var c=!0,p=0;p<s;p++)if(a(t,i+p)!==a(r,p)){c=!1;break}if(c)return i}return -1}u.isBuffer=function(t){return null!=t&&!0===t._isBuffer&&t!==u.prototype},u.compare=function(t,r){if(R(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),R(r,Uint8Array)&&(r=u.from(r,r.offset,r.byteLength)),!u.isBuffer(t)||!u.isBuffer(r))throw TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===r)return 0;for(var e=t.length,n=r.length,o=0,i=Math.min(e,n);o<i;++o)if(t[o]!==r[o]){e=t[o],n=r[o];break}return e<n?-1:+(n<e)},u.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},u.concat=function(t,r){if(!Array.isArray(t))throw TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return u.alloc(0);if(void 0===r)for(e=0,r=0;e<t.length;++e)r+=t[e].length;var e,n=u.allocUnsafe(r),o=0;for(e=0;e<t.length;++e){var i=t[e];if(R(i,Uint8Array)&&(i=u.from(i)),!u.isBuffer(i))throw TypeError('"list" argument must be an Array of Buffers');i.copy(n,o),o+=i.length}return n},u.byteLength=l,u.prototype._isBuffer=!0,u.prototype.swap16=function(){var t=this.length;if(t%2!=0)throw RangeError("Buffer size must be a multiple of 16-bits");for(var r=0;r<t;r+=2)g(this,r,r+1);return this},u.prototype.swap32=function(){var t=this.length;if(t%4!=0)throw RangeError("Buffer size must be a multiple of 32-bits");for(var r=0;r<t;r+=4)g(this,r,r+3),g(this,r+1,r+2);return this},u.prototype.swap64=function(){var t=this.length;if(t%8!=0)throw RangeError("Buffer size must be a multiple of 64-bits");for(var r=0;r<t;r+=8)g(this,r,r+7),g(this,r+1,r+6),g(this,r+2,r+5),g(this,r+3,r+4);return this},u.prototype.toString=function(){var t=this.length;return 0===t?"":0==arguments.length?b(this,0,t):y.apply(this,arguments)},u.prototype.toLocaleString=u.prototype.toString,u.prototype.equals=function(t){if(!u.isBuffer(t))throw TypeError("Argument must be a Buffer");return this===t||0===u.compare(this,t)},u.prototype.inspect=function(){var t="",e=r.INSPECT_MAX_BYTES;return t=this.toString("hex",0,e).replace(/(.{2})/g,"$1 ").trim(),this.length>e&&(t+=" ... "),"<Buffer "+t+">"},i&&(u.prototype[i]=u.prototype.inspect),u.prototype.compare=function(t,r,e,n,o){if(R(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),!u.isBuffer(t))throw TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===r&&(r=0),void 0===e&&(e=t?t.length:0),void 0===n&&(n=0),void 0===o&&(o=this.length),r<0||e>t.length||n<0||o>this.length)throw RangeError("out of range index");if(n>=o&&r>=e)return 0;if(n>=o)return -1;if(r>=e)return 1;if(r>>>=0,e>>>=0,n>>>=0,o>>>=0,this===t)return 0;for(var i=o-n,f=e-r,s=Math.min(i,f),a=this.slice(n,o),h=t.slice(r,e),c=0;c<s;++c)if(a[c]!==h[c]){i=a[c],f=h[c];break}return i<f?-1:+(f<i)},u.prototype.includes=function(t,r,e){return -1!==this.indexOf(t,r,e)},u.prototype.indexOf=function(t,r,e){return d(this,t,r,e,!0)},u.prototype.lastIndexOf=function(t,r,e){return d(this,t,r,e,!1)};function b(t,r,e){e=Math.min(t.length,e);for(var n=[],o=r;o<e;){var i,f,u,s,a=t[o],h=null,c=a>239?4:a>223?3:a>191?2:1;if(o+c<=e)switch(c){case 1:a<128&&(h=a);break;case 2:(192&(i=t[o+1]))==128&&(s=(31&a)<<6|63&i)>127&&(h=s);break;case 3:i=t[o+1],f=t[o+2],(192&i)==128&&(192&f)==128&&(s=(15&a)<<12|(63&i)<<6|63&f)>2047&&(s<55296||s>57343)&&(h=s);break;case 4:i=t[o+1],f=t[o+2],u=t[o+3],(192&i)==128&&(192&f)==128&&(192&u)==128&&(s=(15&a)<<18|(63&i)<<12|(63&f)<<6|63&u)>65535&&s<1114112&&(h=s)}null===h?(h=65533,c=1):h>65535&&(h-=65536,n.push(h>>>10&1023|55296),h=56320|1023&h),n.push(h),o+=c}var p=n,l=p.length;if(l<=4096)return String.fromCharCode.apply(String,p);for(var y="",g=0;g<l;)y+=String.fromCharCode.apply(String,p.slice(g,g+=4096));return y}function w(t,r,e){if(t%1!=0||t<0)throw RangeError("offset is not uint");if(t+r>e)throw RangeError("Trying to access beyond buffer length")}function m(t,r,e,n,o,i){if(!u.isBuffer(t))throw TypeError('"buffer" argument must be a Buffer instance');if(r>o||r<i)throw RangeError('"value" argument is out of bounds');if(e+n>t.length)throw RangeError("Index out of range")}function E(t,r,e,n,o,i){if(e+n>t.length||e<0)throw RangeError("Index out of range")}function A(t,r,e,n,i){return r*=1,e>>>=0,i||E(t,r,e,4,34028234663852886e22,-34028234663852886e22),o.write(t,r,e,n,23,4),e+4}function B(t,r,e,n,i){return r*=1,e>>>=0,i||E(t,r,e,8,17976931348623157e292,-17976931348623157e292),o.write(t,r,e,n,52,8),e+8}u.prototype.write=function(t,r,e,n){if(void 0===r)n="utf8",e=this.length,r=0;else if(void 0===e&&"string"==typeof r)n=r,e=this.length,r=0;else if(isFinite(r))r>>>=0,isFinite(e)?(e>>>=0,void 0===n&&(n="utf8")):(n=e,e=void 0);else throw Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var o,i,f,u,s,a,h,c,p=this.length-r;if((void 0===e||e>p)&&(e=p),t.length>0&&(e<0||r<0)||r>this.length)throw RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var l=!1;;)switch(n){case"hex":return function(t,r,e,n){e=Number(e)||0;var o=t.length-e;n?(n=Number(n))>o&&(n=o):n=o;var i=r.length;n>i/2&&(n=i/2);for(var f=0;f<n;++f){var u,s=parseInt(r.substr(2*f,2),16);if((u=s)!=u)break;t[e+f]=s}return f}(this,t,r,e);case"utf8":case"utf-8":return o=r,i=e,S(x(t,this.length-o),this,o,i);case"ascii":return f=r,u=e,S(T(t),this,f,u);case"latin1":case"binary":return function(t,r,e,n){return S(T(r),t,e,n)}(this,t,r,e);case"base64":return s=r,a=e,S(I(t),this,s,a);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return h=r,c=e,S(function(t,r){for(var e,n,o=[],i=0;i<t.length&&!((r-=2)<0);++i)n=(e=t.charCodeAt(i))>>8,o.push(e%256),o.push(n);return o}(t,this.length-h),this,h,c);default:if(l)throw TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),l=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},u.prototype.slice=function(t,r){var e=this.length;t=~~t,r=void 0===r?e:~~r,t<0?(t+=e)<0&&(t=0):t>e&&(t=e),r<0?(r+=e)<0&&(r=0):r>e&&(r=e),r<t&&(r=t);var n=this.subarray(t,r);return Object.setPrototypeOf(n,u.prototype),n},u.prototype.readUIntLE=function(t,r,e){t>>>=0,r>>>=0,e||w(t,r,this.length);for(var n=this[t],o=1,i=0;++i<r&&(o*=256);)n+=this[t+i]*o;return n},u.prototype.readUIntBE=function(t,r,e){t>>>=0,r>>>=0,e||w(t,r,this.length);for(var n=this[t+--r],o=1;r>0&&(o*=256);)n+=this[t+--r]*o;return n},u.prototype.readUInt8=function(t,r){return t>>>=0,r||w(t,1,this.length),this[t]},u.prototype.readUInt16LE=function(t,r){return t>>>=0,r||w(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUInt16BE=function(t,r){return t>>>=0,r||w(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUInt32LE=function(t,r){return t>>>=0,r||w(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+0x1000000*this[t+3]},u.prototype.readUInt32BE=function(t,r){return t>>>=0,r||w(t,4,this.length),0x1000000*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readIntLE=function(t,r,e){t>>>=0,r>>>=0,e||w(t,r,this.length);for(var n=this[t],o=1,i=0;++i<r&&(o*=256);)n+=this[t+i]*o;return n>=(o*=128)&&(n-=Math.pow(2,8*r)),n},u.prototype.readIntBE=function(t,r,e){t>>>=0,r>>>=0,e||w(t,r,this.length);for(var n=r,o=1,i=this[t+--n];n>0&&(o*=256);)i+=this[t+--n]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*r)),i},u.prototype.readInt8=function(t,r){return(t>>>=0,r||w(t,1,this.length),128&this[t])?-((255-this[t]+1)*1):this[t]},u.prototype.readInt16LE=function(t,r){t>>>=0,r||w(t,2,this.length);var e=this[t]|this[t+1]<<8;return 32768&e?0xffff0000|e:e},u.prototype.readInt16BE=function(t,r){t>>>=0,r||w(t,2,this.length);var e=this[t+1]|this[t]<<8;return 32768&e?0xffff0000|e:e},u.prototype.readInt32LE=function(t,r){return t>>>=0,r||w(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,r){return t>>>=0,r||w(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readFloatLE=function(t,r){return t>>>=0,r||w(t,4,this.length),o.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,r){return t>>>=0,r||w(t,4,this.length),o.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,r){return t>>>=0,r||w(t,8,this.length),o.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,r){return t>>>=0,r||w(t,8,this.length),o.read(this,t,!1,52,8)},u.prototype.writeUIntLE=function(t,r,e,n){if(t*=1,r>>>=0,e>>>=0,!n){var o=Math.pow(2,8*e)-1;m(this,t,r,e,o,0)}var i=1,f=0;for(this[r]=255&t;++f<e&&(i*=256);)this[r+f]=t/i&255;return r+e},u.prototype.writeUIntBE=function(t,r,e,n){if(t*=1,r>>>=0,e>>>=0,!n){var o=Math.pow(2,8*e)-1;m(this,t,r,e,o,0)}var i=e-1,f=1;for(this[r+i]=255&t;--i>=0&&(f*=256);)this[r+i]=t/f&255;return r+e},u.prototype.writeUInt8=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,1,255,0),this[r]=255&t,r+1},u.prototype.writeUInt16LE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,2,65535,0),this[r]=255&t,this[r+1]=t>>>8,r+2},u.prototype.writeUInt16BE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,2,65535,0),this[r]=t>>>8,this[r+1]=255&t,r+2},u.prototype.writeUInt32LE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,4,0xffffffff,0),this[r+3]=t>>>24,this[r+2]=t>>>16,this[r+1]=t>>>8,this[r]=255&t,r+4},u.prototype.writeUInt32BE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,4,0xffffffff,0),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=255&t,r+4},u.prototype.writeIntLE=function(t,r,e,n){if(t*=1,r>>>=0,!n){var o=Math.pow(2,8*e-1);m(this,t,r,e,o-1,-o)}var i=0,f=1,u=0;for(this[r]=255&t;++i<e&&(f*=256);)t<0&&0===u&&0!==this[r+i-1]&&(u=1),this[r+i]=(t/f|0)-u&255;return r+e},u.prototype.writeIntBE=function(t,r,e,n){if(t*=1,r>>>=0,!n){var o=Math.pow(2,8*e-1);m(this,t,r,e,o-1,-o)}var i=e-1,f=1,u=0;for(this[r+i]=255&t;--i>=0&&(f*=256);)t<0&&0===u&&0!==this[r+i+1]&&(u=1),this[r+i]=(t/f|0)-u&255;return r+e},u.prototype.writeInt8=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,1,127,-128),t<0&&(t=255+t+1),this[r]=255&t,r+1},u.prototype.writeInt16LE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,2,32767,-32768),this[r]=255&t,this[r+1]=t>>>8,r+2},u.prototype.writeInt16BE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,2,32767,-32768),this[r]=t>>>8,this[r+1]=255&t,r+2},u.prototype.writeInt32LE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,4,0x7fffffff,-0x80000000),this[r]=255&t,this[r+1]=t>>>8,this[r+2]=t>>>16,this[r+3]=t>>>24,r+4},u.prototype.writeInt32BE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,4,0x7fffffff,-0x80000000),t<0&&(t=0xffffffff+t+1),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=255&t,r+4},u.prototype.writeFloatLE=function(t,r,e){return A(this,t,r,!0,e)},u.prototype.writeFloatBE=function(t,r,e){return A(this,t,r,!1,e)},u.prototype.writeDoubleLE=function(t,r,e){return B(this,t,r,!0,e)},u.prototype.writeDoubleBE=function(t,r,e){return B(this,t,r,!1,e)},u.prototype.copy=function(t,r,e,n){if(!u.isBuffer(t))throw TypeError("argument should be a Buffer");if(e||(e=0),n||0===n||(n=this.length),r>=t.length&&(r=t.length),r||(r=0),n>0&&n<e&&(n=e),n===e||0===t.length||0===this.length)return 0;if(r<0)throw RangeError("targetStart out of bounds");if(e<0||e>=this.length)throw RangeError("Index out of range");if(n<0)throw RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-r<n-e&&(n=t.length-r+e);var o=n-e;if(this===t&&"function"==typeof Uint8Array.prototype.copyWithin)this.copyWithin(r,e,n);else if(this===t&&e<r&&r<n)for(var i=o-1;i>=0;--i)t[i+r]=this[i+e];else Uint8Array.prototype.set.call(t,this.subarray(e,n),r);return o},u.prototype.fill=function(t,r,e,n){if("string"==typeof t){if("string"==typeof r?(n=r,r=0,e=this.length):"string"==typeof e&&(n=e,e=this.length),void 0!==n&&"string"!=typeof n)throw TypeError("encoding must be a string");if("string"==typeof n&&!u.isEncoding(n))throw TypeError("Unknown encoding: "+n);if(1===t.length){var o,i=t.charCodeAt(0);("utf8"===n&&i<128||"latin1"===n)&&(t=i)}}else"number"==typeof t?t&=255:"boolean"==typeof t&&(t=Number(t));if(r<0||this.length<r||this.length<e)throw RangeError("Out of range index");if(e<=r)return this;if(r>>>=0,e=void 0===e?this.length:e>>>0,t||(t=0),"number"==typeof t)for(o=r;o<e;++o)this[o]=t;else{var f=u.isBuffer(t)?t:u.from(t,n),s=f.length;if(0===s)throw TypeError('The value "'+t+'" is invalid for argument "value"');for(o=0;o<e-r;++o)this[o+r]=f[o%s]}return this};var U=/[^+/0-9A-Za-z-_]/g;function x(t,r){r=r||1/0;for(var e,n=t.length,o=null,i=[],f=0;f<n;++f){if((e=t.charCodeAt(f))>55295&&e<57344){if(!o){if(e>56319||f+1===n){(r-=3)>-1&&i.push(239,191,189);continue}o=e;continue}if(e<56320){(r-=3)>-1&&i.push(239,191,189),o=e;continue}e=(o-55296<<10|e-56320)+65536}else o&&(r-=3)>-1&&i.push(239,191,189);if(o=null,e<128){if((r-=1)<0)break;i.push(e)}else if(e<2048){if((r-=2)<0)break;i.push(e>>6|192,63&e|128)}else if(e<65536){if((r-=3)<0)break;i.push(e>>12|224,e>>6&63|128,63&e|128)}else if(e<1114112){if((r-=4)<0)break;i.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}else throw Error("Invalid code point")}return i}function T(t){for(var r=[],e=0;e<t.length;++e)r.push(255&t.charCodeAt(e));return r}function I(t){return n.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(U,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function S(t,r,e,n){for(var o=0;o<n&&!(o+e>=r.length)&&!(o>=t.length);++o)r[o+e]=t[o];return o}function R(t,r){return t instanceof r||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===r.name}var O=function(){for(var t="0123456789abcdef",r=Array(256),e=0;e<16;++e)for(var n=16*e,o=0;o<16;++o)r[n+o]=t[e]+t[o];return r}()},321:function(t,r){r.read=function(t,r,e,n,o){var i,f,u=8*o-n-1,s=(1<<u)-1,a=s>>1,h=-7,c=e?o-1:0,p=e?-1:1,l=t[r+c];for(c+=p,i=l&(1<<-h)-1,l>>=-h,h+=u;h>0;i=256*i+t[r+c],c+=p,h-=8);for(f=i&(1<<-h)-1,i>>=-h,h+=n;h>0;f=256*f+t[r+c],c+=p,h-=8);if(0===i)i=1-a;else{if(i===s)return f?NaN:1/0*(l?-1:1);f+=Math.pow(2,n),i-=a}return(l?-1:1)*f*Math.pow(2,i-n)},r.write=function(t,r,e,n,o,i){var f,u,s,a=8*i-o-1,h=(1<<a)-1,c=h>>1,p=5960464477539062e-23*(23===o),l=n?0:i-1,y=n?1:-1,g=+(r<0||0===r&&1/r<0);for(isNaN(r=Math.abs(r))||r===1/0?(u=+!!isNaN(r),f=h):(f=Math.floor(Math.log(r)/Math.LN2),r*(s=Math.pow(2,-f))<1&&(f--,s*=2),f+c>=1?r+=p/s:r+=p*Math.pow(2,1-c),r*s>=2&&(f++,s/=2),f+c>=h?(u=0,f=h):f+c>=1?(u=(r*s-1)*Math.pow(2,o),f+=c):(u=r*Math.pow(2,c-1)*Math.pow(2,o),f=0));o>=8;t[e+l]=255&u,l+=y,u/=256,o-=8);for(f=f<<o|u,a+=o;a>0;t[e+l]=255&f,l+=y,f/=256,a-=8);t[e+l-y]|=128*g}}},o={};function i(t){var r=o[t];if(void 0!==r)return r.exports;var e=o[t]={exports:{}},f=!0;try{n[t](e,e.exports,i),f=!1}finally{f&&delete o[t]}return e.exports}i.ab="/ROOT/node_modules/next/dist/compiled/buffer/",r.exports=i(230)},163358,t=>{"use strict";let r=new Uint8Array(16);t.s(["default",0,function(){return crypto.getRandomValues(r)}])},572408,499506,t=>{"use strict";let r=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i;t.s(["default",0,function(t){return"string"==typeof t&&r.test(t)}],499506);let e=[];for(let t=0;t<256;++t)e.push((t+256).toString(16).slice(1));t.s(["unsafeStringify",0,function(t,r=0){return(e[t[r+0]]+e[t[r+1]]+e[t[r+2]]+e[t[r+3]]+"-"+e[t[r+4]]+e[t[r+5]]+"-"+e[t[r+6]]+e[t[r+7]]+"-"+e[t[r+8]]+e[t[r+9]]+"-"+e[t[r+10]]+e[t[r+11]]+e[t[r+12]]+e[t[r+13]]+e[t[r+14]]+e[t[r+15]]).toLowerCase()}],572408)},614677,t=>{"use strict";var r=t.i(163358),e=t.i(572408);t.s(["v4",0,function(t,n,o){return n||t||!crypto.randomUUID?function(t,n,o){let i=(t=t||{}).random??t.rng?.()??(0,r.default)();if(i.length<16)throw Error("Random bytes length must be >= 16");if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,n){if((o=o||0)<0||o+16>n.length)throw RangeError(`UUID byte range ${o}:${o+15} is out of buffer bounds`);for(let t=0;t<16;++t)n[o+t]=i[t];return n}return(0,e.unsafeStringify)(i)}(t,n,o):crypto.randomUUID()}],614677)}]);
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@evoscientist/webui",
3
- "version": "0.3.2",
3
+ "version": "0.4.0",
4
4
  "description": "Web UI for EvoScientist — a self-evolving AI scientist built on DeepAgents/LangGraph.",
5
5
  "author": "Xi Zhang <zacharyzhang2022@gmail.com>",
6
6
  "type": "module",
@@ -38,6 +38,7 @@
38
38
  },
39
39
  "scripts": {
40
40
  "dev": "next dev --turbopack --port 4716",
41
+ "dev:local": "node scripts/dev-local.mjs",
41
42
  "build": "next build && node scripts/assemble-standalone.mjs",
42
43
  "start": "next start --port 4716",
43
44
  "start:dist": "node dist/server.js",
@@ -63,6 +64,8 @@
63
64
  "@types/react-syntax-highlighter": "^15.5.13",
64
65
  "class-variance-authority": "^0.7.1",
65
66
  "clsx": "^1.2.1",
67
+ "diff": "^9.0.0",
68
+ "js-yaml": "^4.3.2",
66
69
  "katex": "^0.16.47",
67
70
  "lucide-react": "^0.539.0",
68
71
  "mermaid": "^11.15.0",
@@ -82,16 +85,19 @@
82
85
  "swr": "^2.4.1",
83
86
  "tailwind-merge": "^2.6",
84
87
  "use-stick-to-bottom": "^1.1.6",
85
- "uuid": "^14.0.2"
88
+ "uuid": "^14.0.2",
89
+ "yazl": "^3.3.1"
86
90
  },
87
91
  "devDependencies": {
88
92
  "@eslint/js": "^9",
89
93
  "@tailwindcss/forms": "^0.5.7",
90
94
  "@tailwindcss/typography": "^0.5.9",
91
95
  "@testing-library/react": "^16.3.2",
96
+ "@types/js-yaml": "^4.0.9",
92
97
  "@types/node": "^20",
93
98
  "@types/react": "^19",
94
99
  "@types/react-dom": "^19",
100
+ "@types/yazl": "^3.3.1",
95
101
  "@vitest/coverage-v8": "^4.1.9",
96
102
  "autoprefixer": "^10.4.24",
97
103
  "eslint": "^9",
package/dist/server.js CHANGED
@@ -1,3 +1,4 @@
1
+ process.env.EVOSCIENTIST_WEBUI_BINDS_HOSTNAME = "1"
1
2
  performance.mark('next-start');
2
3
  import path from 'node:path'
3
4
  import { fileURLToPath } from 'node:url'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@evoscientist/webui",
3
- "version": "0.3.2",
3
+ "version": "0.4.0",
4
4
  "description": "Web UI for EvoScientist — a self-evolving AI scientist built on DeepAgents/LangGraph.",
5
5
  "author": "Xi Zhang <zacharyzhang2022@gmail.com>",
6
6
  "type": "module",
@@ -38,6 +38,7 @@
38
38
  },
39
39
  "scripts": {
40
40
  "dev": "next dev --turbopack --port 4716",
41
+ "dev:local": "node scripts/dev-local.mjs",
41
42
  "build": "next build && node scripts/assemble-standalone.mjs",
42
43
  "start": "next start --port 4716",
43
44
  "start:dist": "node dist/server.js",
@@ -63,6 +64,8 @@
63
64
  "@types/react-syntax-highlighter": "^15.5.13",
64
65
  "class-variance-authority": "^0.7.1",
65
66
  "clsx": "^1.2.1",
67
+ "diff": "^9.0.0",
68
+ "js-yaml": "^4.3.2",
66
69
  "katex": "^0.16.47",
67
70
  "lucide-react": "^0.539.0",
68
71
  "mermaid": "^11.15.0",
@@ -82,16 +85,19 @@
82
85
  "swr": "^2.4.1",
83
86
  "tailwind-merge": "^2.6",
84
87
  "use-stick-to-bottom": "^1.1.6",
85
- "uuid": "^14.0.2"
88
+ "uuid": "^14.0.2",
89
+ "yazl": "^3.3.1"
86
90
  },
87
91
  "devDependencies": {
88
92
  "@eslint/js": "^9",
89
93
  "@tailwindcss/forms": "^0.5.7",
90
94
  "@tailwindcss/typography": "^0.5.9",
91
95
  "@testing-library/react": "^16.3.2",
96
+ "@types/js-yaml": "^4.0.9",
92
97
  "@types/node": "^20",
93
98
  "@types/react": "^19",
94
99
  "@types/react-dom": "^19",
100
+ "@types/yazl": "^3.3.1",
95
101
  "@vitest/coverage-v8": "^4.1.9",
96
102
  "autoprefixer": "^10.4.24",
97
103
  "eslint": "^9",
@@ -1,3 +0,0 @@
1
- module.exports=[233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},632771,e=>{"use strict";var t=e.i(522734),r=e.i(446786),a=e.i(814747),o=e.i(254799),n=e.i(233405),i=e.i(688947),s=e.i(89171),l=e.i(17883);async function d(e){let d=null;try{var c,u;if((0,l.isCrossOrigin)(e))return s.NextResponse.json({error:"Cross-origin workspace access is not allowed."},{status:403});let p=await (0,l.getWorkspaceDir)();d=(0,a.join)((0,r.tmpdir)(),`evoscientist-workspace-${(0,o.randomUUID)()}.zip`),await (c=d,u=e.signal,new Promise((e,t)=>{let r=(0,n.spawn)("zip",["-r","-q","-X","-y",c,".",...(0,l.zipExcludeArgs)()],{cwd:p}),a=()=>r.kill("SIGKILL");if(u){if(u.aborted){r.kill("SIGKILL"),t(Error("Request aborted."));return}u.addEventListener("abort",a,{once:!0})}let o="";r.stderr.on("data",e=>o+=e.toString()),r.on("error",e=>{u?.removeEventListener("abort",a),t("ENOENT"===e.code?Error("The `zip` command is not available on this system, so the workspace can't be downloaded as an archive."):e)}),r.on("close",r=>{u?.removeEventListener("abort",a),u?.aborted?t(Error("Request aborted.")):12===r?t(Error("The workspace is empty.")):0!==r?t(Error(o.trim()||`zip exited with code ${r}`)):e()})}));let h=await t.promises.stat(d),R=(0,t.createReadStream)(d),v=d;R.on("close",()=>void t.promises.rm(v,{force:!0}));let w=i.Readable.toWeb(R);return new s.NextResponse(w,{headers:{"Content-Type":"application/zip","Content-Length":String(h.size),"Content-Disposition":'attachment; filename="workspace.zip"',"Cache-Control":"no-store"}})}catch(e){return d&&await t.promises.rm(d,{force:!0}).catch(()=>{}),s.NextResponse.json({error:e instanceof Error?e.message:"Failed to package the workspace."},{status:400})}}e.s(["GET",0,d,"runtime",0,"nodejs"])},219789,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),o=e.i(759756),n=e.i(561916),i=e.i(174677),s=e.i(869741),l=e.i(316795),d=e.i(487718),c=e.i(995169),u=e.i(47587),p=e.i(666012),h=e.i(570101),R=e.i(626937),v=e.i(10372),w=e.i(193695),m=e.i(509580);e.i(52474);var E=e.i(600220);let g=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/workspace/download/route",pathname:"/api/workspace/download",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/workspace/download/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(632771),...{}}),{workAsyncStorage:f,workUnitAsyncStorage:C,serverHooks:x}=g;async function b(e,t,a){a.requestMeta&&(0,o.setRequestMeta)(e,a.requestMeta),g.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let f="/api/workspace/download/route";f=f.replace(/\/index$/,"")||"/";let C=await g.prepare(e,t,{srcPage:f,multiZoneDraftMode:!1});if(!C)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:x,deploymentId:b,params:T,nextConfig:y,parsedUrl:A,isDraftMode:S,prerenderManifest:N,routerServerContext:k,isOnDemandRevalidate:P,revalidateOnlyGenerated:O,resolvedPathname:_,clientReferenceManifest:q,serverActionsManifest:I}=C,H=(0,s.normalizeAppPath)(f),D=!!N.routes[_]&&(g.isDev||(0,m.isRouteCacheOwner)(_,g.cacheOwner,N.routes[_])),U=!!(N.dynamicRoutes[H]||D),M=async()=>((null==k?void 0:k.render404)?await k.render404(e,t,A,!1):t.end("This page could not be found"),null);if(U&&!S){let e=N.dynamicRoutes[H];if(e&&!1===e.fallback&&!D){if(y.adapterPath)return await M();throw new w.NoFallbackError}}let L=null;!U||g.isDev||S||(L="/index"===(L=_)?"/":L);let j=!0===g.isDev||!U,K=U&&!j;I&&q&&(0,i.setManifestsSingleton)({page:f,clientReferenceManifest:q,serverActionsManifest:I});let z=e.method||"GET",F=(0,n.getTracer)(),$=F.getActiveScopeSpan(),G=!!(null==k?void 0:k.isWrappedByNextServer),B=!!(0,o.getRequestMeta)(e,"minimalMode"),W=(0,o.getRequestMeta)(e,"incrementalCache")||await g.getIncrementalCache(e,y,N,B);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:T,previewProps:N.preview,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts,useCacheTimeout:y.experimental.useCacheTimeout},cacheComponents:!!y.cacheComponents,validationLevel:y.experimental.instantInsights.validationLevel,isDraftMode:S,supportsDynamicResponse:j,incrementalCache:W,hmrRefreshHash:(0,o.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:y.cacheLife,staticPageGenerationTimeout:y.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,o)=>g.onRequestError(e,t,a,o,k)},sharedContext:{buildId:x,deploymentId:b}},V=new l.NodeNextRequest(e),Z=new l.NodeNextResponse(t),J=d.NextRequestAdapter.fromNodeNextRequest(V,(0,d.signalFromNodeResponse)(t)),Q=async({previousCacheEntry:r})=>{try{if(!B&&P&&O&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await g.handle(J,X);e.fetchMetrics=X.renderOpts.fetchMetrics;let n=X.renderOpts.pendingWaitUntil;n&&a.waitUntil&&(a.waitUntil(n),n=void 0);let i=X.renderOpts.collectedTags;if(!U)return await (0,p.sendResponse)(V,Z,o,n),null;{let e=await o.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(o.headers);i&&(t[v.NEXT_CACHE_TAGS_HEADER]=i),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,a=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=v.INFINITE_CACHE?!1!==r&&r>0?y.expireTime:void 0:X.renderOpts.collectedExpire;return{value:{kind:E.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await g.onRequestError(e,t,{routerKind:"App Router",routePath:f,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:P})},!1,k),t}},Y=async(o,i)=>{try{var s,l;let o=await g.handleResponse({req:e,nextConfig:y,cacheKey:L,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:N,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:O,responseGenerator:Q,waitUntil:a.waitUntil,isMinimalMode:B});if(!U)return;if((null==o||null==(s=o.value)?void 0:s.kind)!==E.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==o||null==(l=o.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});B||t.setHeader("x-nextjs-cache",P?"REVALIDATED":o.isMiss?"MISS":o.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let n=(0,h.fromNodeOutgoingHttpHeaders)(o.value.headers);B&&U||n.delete(v.NEXT_CACHE_TAGS_HEADER),!o.cacheControl||t.getHeader("Cache-Control")||n.get("Cache-Control")||n.set("Cache-Control",(0,R.getCacheControlHeader)(o.cacheControl)),await (0,p.sendResponse)(V,Z,new Response(o.value.body,{headers:n,status:o.value.status||200}));return}catch(t){if(t instanceof w.NoFallbackError||await g.onRequestError(e,t,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:P})},!1,k),U)throw t;await (0,p.sendResponse)(V,Z,new Response(null,{status:500}));return}finally{(()=>{if(!o)return;let e=t.statusCode;o.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(o.setStatus({code:n.SpanStatusCode.ERROR}),o.setAttribute("error.type",e.toString()));let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||H,s=`${z} ${a}`;o.setAttributes({"next.route":a,"http.route":a,"next.span_name":s}),o.updateName(s),i&&i!==o&&(i.setAttribute("http.route",a),i.updateName(s))})()}};if(G&&$)await Y($,void 0);else{let t=F.getActiveScopeSpan();await F.withPropagatedContext(e.headers,()=>F.trace(c.BaseServerSpan.handleRequest,{spanName:`${z} ${f}`,kind:n.SpanKind.SERVER,attributes:{"http.method":z,"http.target":e.url}},e=>Y(e,t)),void 0,!G)}}e.s(["handler",0,b,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:f,workUnitAsyncStorage:C})},"routeModule",0,g,"serverHooks",0,x,"workAsyncStorage",0,f,"workUnitAsyncStorage",0,C])}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0239a1s._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[254799,(e,r,t)=>{r.exports=e.x("crypto",()=>require("crypto"))},522734,(e,r,t)=>{r.exports=e.x("fs",()=>require("fs"))},270406,(e,r,t)=>{r.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,r,t)=>{r.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,r,t)=>{r.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,r,t)=>{r.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,r,t)=>{r.exports=e.x("node:stream",()=>require("node:stream"))},446786,(e,r,t)=>{r.exports=e.x("os",()=>require("os"))},814747,(e,r,t)=>{r.exports=e.x("path",()=>require("path"))},688947,(e,r,t)=>{r.exports=e.x("stream",()=>require("stream"))},17883,e=>{"use strict";var r=e.i(522734),t=e.i(446786),s=e.i(814747),i=e.i(254799);let o=(0,s.join)((0,t.homedir)(),".config","evoscientist","langgraph_dev.workspace.json");function a(e){for(let r=0;r<e.length;r+=1){let t=e.charCodeAt(r);if(t<32||127===t||t>=128&&t<=159||8232===t||8233===t)return!0}return!1}let n=new Set(["large_tool_results","conversation_history","__pycache__","node_modules","__MACOSX"]),l=[".pyc",".pyo"];function c(e){return!!(e.startsWith(".")||n.has(e))||l.some(r=>e.endsWith(r))}async function p(){let e;try{let t=JSON.parse(await r.promises.readFile(o,"utf-8")),s=t.workspace,i=t.pid;"string"==typeof s&&s.trim()&&(!("number"==typeof i&&i>0)||function(e){try{return process.kill(e,0),!0}catch(e){return"EPERM"===e.code}}(i))&&(e=s)}catch{}if(!(e||=process.env.EVOSCIENTIST_WORKSPACE_DIR))throw Error("No active EvoScientist workspace found. Start the backend with `EvoSci deploy` first.");let t=(0,s.resolve)(e);if(!(await r.promises.stat(t)).isDirectory())throw Error("The active EvoScientist workspace is not a directory.");return r.promises.realpath(t)}function d(e,r){if(a(r))throw Error("Invalid path.");let t=r.replaceAll("\\","/").replace(/^\/+/,"");if(t.split("/").some(e=>""!==e&&c(e)))throw Error("Path is not accessible.");let i=(0,s.resolve)(e,t);if(i!==e&&!i.startsWith(e+s.sep))throw Error("Path is outside the workspace.");return i}async function h(e,t){let i,o=d(e,t);try{i=await r.promises.realpath(o)}catch{throw Error("Path is not accessible.")}if(i!==e&&!i.startsWith(e+s.sep))throw Error("Path is not accessible.");let a=(0,s.relative)(e,i);if(a&&a.split(s.sep).some(e=>""!==e&&c(e)))throw Error("Path is not accessible.");return i}let x=new Set(["txt","text","md","markdown","log","csv","tsv","json","jsonl","yaml","yml","toml","xml","ini","cfg","conf","env","py","js","jsx","ts","tsx","sh","bash","zsh","r","jl","cpp","cc","c","h","hpp","java","go","rs","rb","php","swift","kt","cs","sql","tex","bib","rst","css","scss","html"]);async function f(e,t){let i;try{i=await r.promises.realpath((0,s.dirname)(t))}catch{throw Error("Path is not accessible.")}if(i!==e&&!i.startsWith(e+s.sep))throw Error("Path is not accessible.")}function u(e){let r;return x.has((r=e.lastIndexOf("."))>=0?e.slice(r+1).toLowerCase():"")}async function m(e,t,o){let a;if("string"!=typeof o)throw Error("Content must be a string.");if(Buffer.byteLength(o,"utf-8")>5242880)throw Error("This file is too large to save.");if(!u(t.replaceAll("\\","/").split("/").pop()||t))throw Error("Only text/code files can be edited.");let n=d(e,t);try{a=await r.promises.lstat(n)}catch{throw Error("Only files can be edited.")}if(a.isSymbolicLink())throw Error("Editing symlinks is not allowed.");let l=await h(e,t);if(!u((0,s.basename)(l)))throw Error("Only text/code files can be edited.");let c=await r.promises.stat(l);if(!c.isFile())throw Error("Only files can be edited.");let p=`${l}.${(0,i.randomUUID)()}.tmp`;try{await f(e,l),await r.promises.writeFile(p,o,{encoding:"utf-8",mode:511&c.mode}),await f(e,l),await r.promises.rename(p,l)}catch(e){throw await r.promises.rm(p,{force:!0}).catch(()=>{}),e}let x=await r.promises.stat(l);return{path:t.replaceAll("\\","/").replace(/^\/+/,""),size:x.size,mtime:x.mtimeMs}}async function w(e,t){await h(e,t);let s=d(e,t);if((await r.promises.lstat(s)).isDirectory())throw Error("Only files can be deleted.");await f(e,s),await r.promises.rm(s,{force:!0})}e.s(["MAX_WORKSPACE_WRITE_BYTES",0,5242880,"deleteWorkspaceFile",0,w,"getWorkspaceDir",0,p,"hasControlChar",0,a,"isCrossOrigin",0,function(e){let r=e.headers.get("host");if(!r)return!0;let t=e.headers.get("sec-fetch-site");if(t)return"same-origin"!==t&&"same-site"!==t&&"none"!==t;let s=e.headers.get("origin");if(!s)return!1;try{return new URL(s).host!==r}catch{return!0}},"isHiddenEntry",0,c,"safeResolve",0,h,"writeWorkspaceFile",0,m,"zipExcludeArgs",0,function(){let e=[".*","*/.*"];for(let r of n)e.push(`${r}/*`,`*/${r}/*`,r,`*/${r}`);for(let r of l)e.push(`*${r}`);return e.flatMap(e=>["-x",e])}])}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0lmbd-x._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},85678,e=>{"use strict";var t=e.i(522734),r=e.i(446786),i=e.i(814747),s=e.i(254799),a=e.i(17883);function o(e){return e.startsWith("~")?(0,i.join)((0,r.homedir)(),e.slice(1)):(0,i.resolve)(e)}function n(){let e,t=process.env.EVOSCIENTIST_MEMORIES_DIR||process.env.EVOSCIENTIST_MEMORY_DIR;return t&&t.trim()?o(t):(0,i.join)((e=process.env.EVOSCIENTIST_DATA_DIR)&&e.trim()?o(e):(0,i.join)((0,r.homedir)(),".evoscientist"),"memories")}async function l(){try{let e=await t.promises.realpath(n());return(await t.promises.stat(e)).isDirectory()?e:null}catch{return null}}async function c(){let e=n();return await t.promises.mkdir(e,{recursive:!0}),t.promises.realpath(e)}let p=new Set(["__pycache__","node_modules","__MACOSX"]),m=[".pyc",".pyo"];function h(e){return!!(e.startsWith(".")||p.has(e))||m.some(t=>e.endsWith(t))}let f=new Set(["md","markdown","txt","text","json","yaml","yml","csv","tsv","log","tex","bib","rst"]);function u(e){let t;return f.has((t=e.lastIndexOf("."))>=0?e.slice(t+1).toLowerCase():"")}function d(e,t){if((0,a.hasControlChar)(t))throw Error("Invalid path.");let r=t.replaceAll("\\","/").replace(/^\/+/,"");if(!r)throw Error("A file path is required.");if(r.split("/").some(e=>""!==e&&h(e)))throw Error("Path is not accessible.");let s=(0,i.resolve)(e,r);if(s!==e&&!s.startsWith(e+i.sep))throw Error("Path is outside the memory directory.");return s}async function w(e,r){let s,a=d(e,r);try{s=await t.promises.realpath(a)}catch{throw Error("Path is not accessible.")}if(s!==e&&!s.startsWith(e+i.sep))throw Error("Path is not accessible.");let o=(0,i.relative)(e,s);if(o&&o.split(i.sep).some(e=>""!==e&&h(e)))throw Error("Path is not accessible.");return s}async function y(e,r){let s=d(e,r),a=(0,i.dirname)(s);for(;;)try{let r=await t.promises.realpath(a);if(r!==e&&!r.startsWith(e+i.sep))throw Error("Path is outside the memory directory.");break}catch(t){if(t instanceof Error&&t.message.includes("outside"))throw t;let e=(0,i.dirname)(a);if(e===a)break;a=e}return s}async function x(){let e=n(),r=await l();if(!r)return{dir:e,exists:!1,entries:[],truncated:!1};let s=[],a=!1;async function o(e,n){let l;if(n>8||s.length>=2e3){s.length>=2e3&&(a=!0);return}try{l=await t.promises.readdir(e,{withFileTypes:!0})}catch{return}for(let c of(l.sort((e,t)=>e.name.localeCompare(t.name)),l)){if(h(c.name))continue;if(s.length>=2e3){a=!0;return}let l=(0,i.join)(e,c.name);if(c.isDirectory())await o(l,n+1);else if(c.isFile()){let e=0,a=0;try{let r=await t.promises.stat(l);e=r.size,a=r.mtimeMs}catch{continue}s.push({path:(0,i.relative)(r,l).split(i.sep).join("/"),size:e,mtime:a,editable:u(c.name)&&e<=2097152})}}}return await o(r,0),{dir:e,exists:!0,entries:s,truncated:a}}async function g(e){let r=await l();if(!r)throw Error("No memory directory found.");if(!u(e))throw Error("This file type can't be edited.");let i=await w(r,e),s=await t.promises.stat(i);if(!s.isFile())throw Error("Not a file.");if(s.size>2097152)throw Error("This file is too large to open.");let a=await t.promises.readFile(i,"utf-8");return{path:e.replaceAll("\\","/").replace(/^\/+/,""),content:a,size:s.size,mtime:s.mtimeMs}}async function E(e,r){if("string"!=typeof r)throw Error("Content must be a string.");if(Buffer.byteLength(r,"utf-8")>1048576)throw Error("This file is too large to save.");if(!u(e))throw Error("Only text/markdown memory files can be saved.");let a=await c(),o=await y(a,e);await t.promises.mkdir((0,i.dirname)(o),{recursive:!0});let n=`${o}.${(0,s.randomUUID)()}.tmp`;try{await t.promises.writeFile(n,r,{encoding:"utf-8",mode:384}),await t.promises.rename(n,o)}catch(e){throw await t.promises.rm(n,{force:!0}).catch(()=>{}),e}let l=await t.promises.stat(o);return{path:e.replaceAll("\\","/").replace(/^\/+/,""),content:r,size:l.size,mtime:l.mtimeMs}}function v(e){let t=e.match(/^---\r?\n([\s\S]*?)\r?\n---/);return t?t[1]:""}function b(e,t){let r=RegExp(`^${t}:\\s*(.+)`,"m"),i=e.match(r);return i?i[1].trim().replace(/^'(.*)'$/,"$1").replace(/^"(.*)"$/,"$1"):""}function _(e,t){let r=RegExp(`\\b${t}:\\s*(.+)`,"m"),i=e.match(r);return i?i[1].trim().replace(/^'(.*)'$/,"$1").replace(/^"(.*)"$/,"$1"):""}async function j(){let e=await l();if(!e)return{nodes:[],edges:[]};let r=(0,i.join)(e,"observations");try{await t.promises.access(r)}catch{return{nodes:[],edges:[]}}let s=new Map,a=[];async function o(r){let n;try{n=await t.promises.readdir(r,{withFileTypes:!0})}catch{return}for(let l of(n.sort((e,t)=>e.name.localeCompare(t.name)),n)){if(h(l.name))continue;let n=(0,i.join)(r,l.name);if(l.isDirectory())await o(n);else if(l.isFile()&&l.name.endsWith(".md")){let r=await t.promises.readFile(n,"utf-8").catch(()=>null);if(!r)continue;let o=v(r),c=b(o,"id")||l.name.replace(/\.md$/,""),p=b(o,"summary")||c,m=b(o,"memory_type")||"semantic",h=b(o,"scope")||"global",f=b(o,"created_at")||"",u=function(e){let t,r=e.indexOf("related_observations:");if(-1===r)return[];let i=e.slice(r+21),s=[],a=/^- id:\s*(.+)$/gm;for(;null!==(t=a.exec(i));){let e=t.index,r=i.slice(e+1),a=r.match(/^(?:- |[a-z_])/m),o=i.slice(e,e+1+(a?.index??r.length)),n=t[1].trim().replace(/^['"]|['"]$/g,""),l=o.match(/^\s+relation:\s*(.+)$/m),c=l?.[1]?.trim()??"";n&&c&&s.push({id:n,relation:c})}return s}(o),d=(0,i.relative)(e,n).split(i.sep).join("/");for(let e of(s.set(c,{id:c,path:d,summary:p,memory_type:m,scope:h,created_at:f,degree:0}),u))a.push({source:c,target:e.id,relation:e.relation})}}}await o(r);let n=a.filter(e=>s.has(e.source)&&s.has(e.target));for(let e of n)s.get(e.source).degree++,s.get(e.target).degree++;return{nodes:Array.from(s.values()),edges:n}}async function S(){let e=await l();if(!e)return{entries:[],truncated:!1};let r=(0,i.join)(e,"executions");try{await t.promises.access(r)}catch{return{entries:[],truncated:!1}}let s=[],a=!1;async function o(r){let n;if(s.length>=2e3){a=!0;return}try{n=await t.promises.readdir(r,{withFileTypes:!0})}catch{return}for(let a of(n.sort((e,t)=>e.name.localeCompare(t.name)),n)){if(h(a.name))continue;let n=(0,i.join)(r,a.name);if(a.isDirectory())await o(n);else if(a.isFile()&&a.name.endsWith(".md")){let r=await t.promises.readFile(n,"utf-8").catch(()=>null);if(!r)continue;let o=v(r),l=b(o,"id")||a.name.replace(/\.md$/,""),c=b(o,"created_at")||"",p=b(o,"project_id")||"",m=_(o,"agent"),h=_(o,"session_id"),f=r.replace(/^---\r?\n[\s\S]*?\r?\n---\r?\n?/,"").trim(),u=f.match(/^##\s+Summary\s*\r?\n([\s\S]*?)(?=\n##\s|\s*$)/m),d=u?u[1].trim():f.slice(0,500),w=[...new Set(f.match(/\bO-[0-9a-f]{16}\b/g)??[])];s.push({id:l,created_at:c,agent:m,session_id:h,project_id:p,summary:d,obs_ids:w,path:(0,i.relative)(e,n).split(i.sep).join("/")})}}}return await o(r),s.sort((e,t)=>t.created_at.localeCompare(e.created_at)),{entries:s,truncated:a}}async function k(e){let r=await l();if(!r)throw Error("No memory directory found.");let i=await w(r,e);if(!(await t.promises.stat(i)).isFile())throw Error("Only files can be deleted.");await t.promises.rm(i,{force:!0})}e.s(["deleteMemory",0,k,"listExecutions",0,S,"listMemory",0,x,"listObservations",0,j,"readMemory",0,g,"writeMemory",0,E])},17883,e=>{"use strict";var t=e.i(522734),r=e.i(446786),i=e.i(814747),s=e.i(254799);let a=(0,i.join)((0,r.homedir)(),".config","evoscientist","langgraph_dev.workspace.json");function o(e){for(let t=0;t<e.length;t+=1){let r=e.charCodeAt(t);if(r<32||127===r||r>=128&&r<=159||8232===r||8233===r)return!0}return!1}let n=new Set(["large_tool_results","conversation_history","__pycache__","node_modules","__MACOSX"]),l=[".pyc",".pyo"];function c(e){return!!(e.startsWith(".")||n.has(e))||l.some(t=>e.endsWith(t))}async function p(){let e;try{let r=JSON.parse(await t.promises.readFile(a,"utf-8")),i=r.workspace,s=r.pid;"string"==typeof i&&i.trim()&&(!("number"==typeof s&&s>0)||function(e){try{return process.kill(e,0),!0}catch(e){return"EPERM"===e.code}}(s))&&(e=i)}catch{}if(!(e||=process.env.EVOSCIENTIST_WORKSPACE_DIR))throw Error("No active EvoScientist workspace found. Start the backend with `EvoSci deploy` first.");let r=(0,i.resolve)(e);if(!(await t.promises.stat(r)).isDirectory())throw Error("The active EvoScientist workspace is not a directory.");return t.promises.realpath(r)}function m(e,t){if(o(t))throw Error("Invalid path.");let r=t.replaceAll("\\","/").replace(/^\/+/,"");if(r.split("/").some(e=>""!==e&&c(e)))throw Error("Path is not accessible.");let s=(0,i.resolve)(e,r);if(s!==e&&!s.startsWith(e+i.sep))throw Error("Path is outside the workspace.");return s}async function h(e,r){let s,a=m(e,r);try{s=await t.promises.realpath(a)}catch{throw Error("Path is not accessible.")}if(s!==e&&!s.startsWith(e+i.sep))throw Error("Path is not accessible.");let o=(0,i.relative)(e,s);if(o&&o.split(i.sep).some(e=>""!==e&&c(e)))throw Error("Path is not accessible.");return s}let f=new Set(["txt","text","md","markdown","log","csv","tsv","json","jsonl","yaml","yml","toml","xml","ini","cfg","conf","env","py","js","jsx","ts","tsx","sh","bash","zsh","r","jl","cpp","cc","c","h","hpp","java","go","rs","rb","php","swift","kt","cs","sql","tex","bib","rst","css","scss","html"]);async function u(e,r){let s;try{s=await t.promises.realpath((0,i.dirname)(r))}catch{throw Error("Path is not accessible.")}if(s!==e&&!s.startsWith(e+i.sep))throw Error("Path is not accessible.")}function d(e){let t;return f.has((t=e.lastIndexOf("."))>=0?e.slice(t+1).toLowerCase():"")}async function w(e,r,a){let o;if("string"!=typeof a)throw Error("Content must be a string.");if(Buffer.byteLength(a,"utf-8")>5242880)throw Error("This file is too large to save.");if(!d(r.replaceAll("\\","/").split("/").pop()||r))throw Error("Only text/code files can be edited.");let n=m(e,r);try{o=await t.promises.lstat(n)}catch{throw Error("Only files can be edited.")}if(o.isSymbolicLink())throw Error("Editing symlinks is not allowed.");let l=await h(e,r);if(!d((0,i.basename)(l)))throw Error("Only text/code files can be edited.");let c=await t.promises.stat(l);if(!c.isFile())throw Error("Only files can be edited.");let p=`${l}.${(0,s.randomUUID)()}.tmp`;try{await u(e,l),await t.promises.writeFile(p,a,{encoding:"utf-8",mode:511&c.mode}),await u(e,l),await t.promises.rename(p,l)}catch(e){throw await t.promises.rm(p,{force:!0}).catch(()=>{}),e}let f=await t.promises.stat(l);return{path:r.replaceAll("\\","/").replace(/^\/+/,""),size:f.size,mtime:f.mtimeMs}}async function y(e,r){await h(e,r);let i=m(e,r);if((await t.promises.lstat(i)).isDirectory())throw Error("Only files can be deleted.");await u(e,i),await t.promises.rm(i,{force:!0})}e.s(["MAX_WORKSPACE_WRITE_BYTES",0,5242880,"deleteWorkspaceFile",0,y,"getWorkspaceDir",0,p,"hasControlChar",0,o,"isCrossOrigin",0,function(e){let t=e.headers.get("host");if(!t)return!0;let r=e.headers.get("sec-fetch-site");if(r)return"same-origin"!==r&&"same-site"!==r&&"none"!==r;let i=e.headers.get("origin");if(!i)return!1;try{return new URL(i).host!==t}catch{return!0}},"isHiddenEntry",0,c,"safeResolve",0,h,"writeWorkspaceFile",0,w,"zipExcludeArgs",0,function(){let e=[".*","*/.*"];for(let t of n)e.push(`${t}/*`,`*/${t}/*`,t,`*/${t}`);for(let t of l)e.push(`*${t}`);return e.flatMap(e=>["-x",e])}])}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0o8rrlw._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[254799,(e,r,t)=>{r.exports=e.x("crypto",()=>require("crypto"))},522734,(e,r,t)=>{r.exports=e.x("fs",()=>require("fs"))},270406,(e,r,t)=>{r.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,r,t)=>{r.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,r,t)=>{r.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,r,t)=>{r.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,r,t)=>{r.exports=e.x("node:stream",()=>require("node:stream"))},446786,(e,r,t)=>{r.exports=e.x("os",()=>require("os"))},814747,(e,r,t)=>{r.exports=e.x("path",()=>require("path"))},17883,e=>{"use strict";var r=e.i(522734),t=e.i(446786),s=e.i(814747),i=e.i(254799);let o=(0,s.join)((0,t.homedir)(),".config","evoscientist","langgraph_dev.workspace.json");function a(e){for(let r=0;r<e.length;r+=1){let t=e.charCodeAt(r);if(t<32||127===t||t>=128&&t<=159||8232===t||8233===t)return!0}return!1}let n=new Set(["large_tool_results","conversation_history","__pycache__","node_modules","__MACOSX"]),l=[".pyc",".pyo"];function c(e){return!!(e.startsWith(".")||n.has(e))||l.some(r=>e.endsWith(r))}async function p(){let e;try{let t=JSON.parse(await r.promises.readFile(o,"utf-8")),s=t.workspace,i=t.pid;"string"==typeof s&&s.trim()&&(!("number"==typeof i&&i>0)||function(e){try{return process.kill(e,0),!0}catch(e){return"EPERM"===e.code}}(i))&&(e=s)}catch{}if(!(e||=process.env.EVOSCIENTIST_WORKSPACE_DIR))throw Error("No active EvoScientist workspace found. Start the backend with `EvoSci deploy` first.");let t=(0,s.resolve)(e);if(!(await r.promises.stat(t)).isDirectory())throw Error("The active EvoScientist workspace is not a directory.");return r.promises.realpath(t)}function d(e,r){if(a(r))throw Error("Invalid path.");let t=r.replaceAll("\\","/").replace(/^\/+/,"");if(t.split("/").some(e=>""!==e&&c(e)))throw Error("Path is not accessible.");let i=(0,s.resolve)(e,t);if(i!==e&&!i.startsWith(e+s.sep))throw Error("Path is outside the workspace.");return i}async function h(e,t){let i,o=d(e,t);try{i=await r.promises.realpath(o)}catch{throw Error("Path is not accessible.")}if(i!==e&&!i.startsWith(e+s.sep))throw Error("Path is not accessible.");let a=(0,s.relative)(e,i);if(a&&a.split(s.sep).some(e=>""!==e&&c(e)))throw Error("Path is not accessible.");return i}let f=new Set(["txt","text","md","markdown","log","csv","tsv","json","jsonl","yaml","yml","toml","xml","ini","cfg","conf","env","py","js","jsx","ts","tsx","sh","bash","zsh","r","jl","cpp","cc","c","h","hpp","java","go","rs","rb","php","swift","kt","cs","sql","tex","bib","rst","css","scss","html"]);async function x(e,t){let i;try{i=await r.promises.realpath((0,s.dirname)(t))}catch{throw Error("Path is not accessible.")}if(i!==e&&!i.startsWith(e+s.sep))throw Error("Path is not accessible.")}function u(e){let r;return f.has((r=e.lastIndexOf("."))>=0?e.slice(r+1).toLowerCase():"")}async function m(e,t,o){let a;if("string"!=typeof o)throw Error("Content must be a string.");if(Buffer.byteLength(o,"utf-8")>5242880)throw Error("This file is too large to save.");if(!u(t.replaceAll("\\","/").split("/").pop()||t))throw Error("Only text/code files can be edited.");let n=d(e,t);try{a=await r.promises.lstat(n)}catch{throw Error("Only files can be edited.")}if(a.isSymbolicLink())throw Error("Editing symlinks is not allowed.");let l=await h(e,t);if(!u((0,s.basename)(l)))throw Error("Only text/code files can be edited.");let c=await r.promises.stat(l);if(!c.isFile())throw Error("Only files can be edited.");let p=`${l}.${(0,i.randomUUID)()}.tmp`;try{await x(e,l),await r.promises.writeFile(p,o,{encoding:"utf-8",mode:511&c.mode}),await x(e,l),await r.promises.rename(p,l)}catch(e){throw await r.promises.rm(p,{force:!0}).catch(()=>{}),e}let f=await r.promises.stat(l);return{path:t.replaceAll("\\","/").replace(/^\/+/,""),size:f.size,mtime:f.mtimeMs}}async function w(e,t){await h(e,t);let s=d(e,t);if((await r.promises.lstat(s)).isDirectory())throw Error("Only files can be deleted.");await x(e,s),await r.promises.rm(s,{force:!0})}e.s(["MAX_WORKSPACE_WRITE_BYTES",0,5242880,"deleteWorkspaceFile",0,w,"getWorkspaceDir",0,p,"hasControlChar",0,a,"isCrossOrigin",0,function(e){let r=e.headers.get("host");if(!r)return!0;let t=e.headers.get("sec-fetch-site");if(t)return"same-origin"!==t&&"same-site"!==t&&"none"!==t;let s=e.headers.get("origin");if(!s)return!1;try{return new URL(s).host!==r}catch{return!0}},"isHiddenEntry",0,c,"safeResolve",0,h,"writeWorkspaceFile",0,m,"zipExcludeArgs",0,function(){let e=[".*","*/.*"];for(let r of n)e.push(`${r}/*`,`*/${r}/*`,r,`*/${r}`);for(let r of l)e.push(`*${r}`);return e.flatMap(e=>["-x",e])}])}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0tsmn4o._.js.map
@@ -1,6 +0,0 @@
1
- module.exports=[254799,(t,e,r)=>{e.exports=t.x("crypto",()=>require("crypto"))},522734,(t,e,r)=>{e.exports=t.x("fs",()=>require("fs"))},270406,(t,e,r)=>{e.exports=t.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(t,e,r)=>{e.exports=t.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(t,e,r)=>{e.exports=t.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(t,e,r)=>{e.exports=t.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(t,e,r)=>{e.exports=t.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(t,e,r)=>{e.exports=t.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(t,e,r)=>{e.exports=t.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(t,e,r)=>{e.exports=t.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(t,e,r)=>{e.exports=t.x("node:stream",()=>require("node:stream"))},446786,(t,e,r)=>{e.exports=t.x("os",()=>require("os"))},814747,(t,e,r)=>{e.exports=t.x("path",()=>require("path"))},904937,t=>{"use strict";let e;var r=t.i(446786),i=t.i(814747),a=t.i(522734),s=t.i(254799);let n="EvoScientist/EvoSkills",o="main",l="skills/",c=(0,i.join)((e=process.env.EVOSCIENTIST_DATA_DIR)&&e.trim()?e.startsWith("~")?(0,i.join)((0,r.homedir)(),e.slice(1)):(0,i.resolve)(e):(0,i.join)((0,r.homedir)(),".evoscientist"),"skills"),u=[c,(0,i.join)((0,r.homedir)(),".config","evoscientist","skills")],p={Accept:"application/vnd.github+json","User-Agent":"evoscientist-webui"},m="EXPERT.md";async function f(t,e,r){try{let s=await a.promises.realpath((0,i.join)(t,e,r)),n=await a.promises.realpath(t);if(s!==n&&!s.startsWith(n+i.sep))return null;return await a.promises.readFile(s,"utf-8")}catch{return null}}function d(t){let e,{frontmatter:r}=x(t);if(!r)return!0;let i=r.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!i)return!0;let a=i[1],s=a.split("\n").find(t=>t.trim()),n=s?.match(/^[ \t]+/)?.[0]??" ",o=a.match(RegExp(`^${n}type\\s*:[ \\t]*(.*)$`,"m"));if(!o)return!0;let l=o[1].trim();if(""===l||"|"===l||">"===l)for(let t of(e=[],a.slice(a.indexOf(o[0])+o[0].length).split("\n"))){if(!t.trim())continue;let r=t.match(/^[ \t]+-[ \t]*(.+?)[ \t]*$/);if(!r||!t.startsWith(n))break;e.push(r[1])}else e=l.replace(/^\[|\]$/g,"").split(",");return e.map(t=>t.trim().replace(/^["']|["']$/g,"").toLowerCase()).filter(Boolean).includes("skill")}async function h(t){try{return(await a.promises.stat((0,i.join)(t,m))).isFile()}catch{return!1}}function w(t){return t.length<=128&&/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(t)&&!t.includes("..")}function x(t){let e=t.match(/^---[ \t]*\r?\n([\s\S]*?)\r?\n---[ \t]*(?:\r?\n|$)/);return e?{frontmatter:e[1],body:t.slice(e[0].length).trim()}:{frontmatter:null,body:t.trim()}}function y(t){let e=e=>{let r=t.match(RegExp(`^${e}\\s*:\\s*(.+?)\\s*$`,"m"));return r?r[1].replace(/^["']|["']$/g,"").trim():void 0};return{name:e("name"),description:e("description"),version:function(t){let e=t.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!e)return;let r=e[1].match(/^[ \t]+version\s*:\s*(.+?)\s*$/m);return r?r[1].replace(/^["']|["']$/g,"").trim():void 0}(t)}}function $(t){let{frontmatter:e}=x(t);return e?y(e):{}}async function g(t){for(let e of u)try{let r=await a.promises.readFile((0,i.join)(e,t,"SKILL.md"),"utf-8"),s=$(r).version;if(s)return s}catch{}}function v(t,e){return`https://raw.githubusercontent.com/${n}/${t}/${e}`}let k=/^[0-9a-f]{7,40}$/,b=null;async function j(){try{let t=await fetch(`https://api.github.com/repos/${n}/commits/${o}`,{headers:p});if(t.ok){let e=await t.json();if("string"==typeof e.sha&&k.test(e.sha))return e.sha}}catch{}return o}async function E(t=!1){if(!t&&b&&Date.now()-b.at<3e5)return{ref:b.ref,tree:b.tree};let e=await j(),r=await fetch(`https://api.github.com/repos/${n}/git/trees/${e}?recursive=1`,{headers:p});if(!r.ok)throw Error(403===r.status?"GitHub rate limit reached — try again in a minute.":`Couldn't reach the skills catalog (GitHub ${r.status}).`);let i=await r.json();if(!Array.isArray(i.tree))throw Error("Unexpected response from the skills catalog.");return b={at:Date.now(),ref:e,tree:i.tree},{ref:e,tree:i.tree}}function S(){return(0,i.join)(c,".installed.yaml")}async function I(){try{return function(t){let e={},r=null;for(let i of t.split("\n"))if(!(!i.trim()||i.trimStart().startsWith("#"))){if(/^\S/.test(i)){let t=i.match(/^(\S[^:]*?):\s*$/);(r=t?t[1].trim():null)&&(e[r]={source:""})}else if(r){let t=i.match(/^\s+([A-Za-z_]+)\s*:\s*(.+?)\s*$/);if(t){let i=t[2].replace(/^["']|["']$/g,"").trim();"source"===t[1]?e[r].source=i:"commit"===t[1]&&(e[r].commit=i)}}}for(let t of Object.keys(e))e[t].source||delete e[t];return e}(await a.promises.readFile(S(),"utf-8"))}catch{return{}}}async function q(t){let e=S(),r=`${e}.${(0,s.randomUUID)()}.tmp`;await a.promises.mkdir(c,{recursive:!0}),await a.promises.writeFile(r,function(t){let e=Object.keys(t).sort();if(0===e.length)return"{}\n";let r="";for(let i of e)r+=`${i}:
2
- `,t[i].commit&&(r+=` commit: ${t[i].commit}
3
- `),r+=` source: ${t[i].source}
4
- `;return r}(t),{mode:384}),await a.promises.rename(r,e)}async function L(t,e){let r=await I(),i=`${n}@${l}${t}`;r[t]=e?{source:i,commit:e}:{source:i},await q(r)}async function A(t){let e=await I();t in e&&(delete e[t],await q(e))}async function D(){let t=new Set;for(let e of u)try{for(let r of(await a.promises.readdir(e,{withFileTypes:!0})))r.isDirectory()&&!r.name.startsWith(".")&&t.add(r.name)}catch{}return t}async function F(t=!1){let[{ref:e,tree:r},i]=await Promise.all([E(t),D()]),a=function(t){let e=new Map;for(let r of t){if("blob"!==r.type||!r.path.startsWith(l))continue;let t=r.path.slice(l.length),i=t.indexOf("/");if(i<=0)continue;let a=t.slice(0,i);(e.get(a)??e.set(a,[]).get(a)).push(r)}return e}(r);return(await Promise.all([...a.entries()].map(async([t,r])=>{let a,s,n=t,o="",c=!0,u=r.find(e=>e.path===`${l}${t}/SKILL.md`);if(u)try{let r=await fetch(v(e,u.path),{headers:p}).then(t=>t.ok?t.text():""),i=$(r);n=i.name||t,o=i.description||"",s=i.version,c=d(r)}catch{}let f=i.has(t),h=f?await g(t):void 0,w=f&&!!s&&!!h&&function(t,e){let r=t.split(".").map(t=>parseInt(t,10)),i=e.split(".").map(t=>parseInt(t,10)),a=Math.max(r.length,i.length);for(let t=0;t<a;t+=1){let e=r[t]??0,a=i[t]??0;if(Number.isNaN(e)||Number.isNaN(a))break;if(e!==a)return e>a?1:-1}return 0}(s,h)>0;return{name:t,title:n,description:o,fileCount:r.length,installed:f,latestVersion:s,installedVersion:h,updateAvailable:w,isExpert:(a=`${l}${t}/${m}`,r.some(t=>t.path===a)),isSkill:c}}))).sort((t,e)=>t.title.localeCompare(e.title))}async function N(t){if(!w(t))throw Error("Invalid skill name.");let e=null,r=null,i=!1;for(let a of u){let s=await f(a,t,"SKILL.md");if(null!==s){e=s,i=!0,r=await f(a,t,m);break}}if(null===e){let{ref:i,tree:a}=await E(),s=async t=>{let e=await fetch(v(i,t),{headers:p});if(!e.ok)throw Error(`Failed to load skill (${e.status}).`);return e.text()},n=t=>a.some(e=>"blob"===e.type&&e.path===t),o=`${l}${t}/SKILL.md`;if(!n(o))throw Error(`Skill "${t}" was not found.`);e=await s(o);let c=`${l}${t}/${m}`;if(n(c))try{r=await s(c)}catch{}}let{frontmatter:a,body:s}=x(e),n=a?y(a):{},o=null!==a&&(null!=n.name||null!=n.description||null!=n.version);return{name:t,title:n.name||t,description:n.description||"",version:n.version,body:o?s:e.trim(),installed:i,expertBody:null===r?void 0:function(t){let{frontmatter:e,body:r}=x(t);return(null===e?t:r).trim()}(r)}}async function T(t){if(!w(t))throw Error("Invalid skill name.");let{ref:e,tree:r}=await E(),n=`${l}${t}/`,u=r.filter(t=>"blob"===t.type&&t.path.startsWith(n));if(0===u.length)throw Error(`Skill "${t}" was not found in the catalog.`);if(u.length>300)throw Error("This skill has too many files to install.");if(u.reduce((t,e)=>t+(e.size??0),0)>0x1900000)throw Error("This skill is too large to install.");let m=(0,i.resolve)(c),f=(0,i.resolve)(m,t);if(f!==(0,i.join)(m,t))throw Error("Invalid skill name.");let d=(0,i.join)(m,`.installing-${t}-${(0,s.randomUUID)()}`);try{for(let t of(await a.promises.mkdir(d,{recursive:!0}),u)){let r=t.path.slice(n.length),s=(0,i.resolve)(d,r);if(s!==d&&!s.startsWith(d+i.sep))throw Error("Invalid file path in skill.");let o=await fetch(v(e,t.path),{headers:p});if(!o.ok)throw Error(`Failed to download ${r} (${o.status}).`);let l=Buffer.from(await o.arrayBuffer());await a.promises.mkdir((0,i.dirname)(s),{recursive:!0}),await a.promises.writeFile(s,l)}await a.promises.rm(f,{recursive:!0,force:!0}),await a.promises.mkdir(m,{recursive:!0}),await a.promises.rename(d,f)}catch(t){throw await a.promises.rm(d,{recursive:!0,force:!0}).catch(()=>{}),t}try{await L(t,e!==o&&k.test(e)?e:null)}catch{}return{files:u.length}}t.s(["SKILL_DIRS",0,u,"declaresSkillType",0,d,"getCatalog",0,F,"getSkillDetail",0,N,"installSkill",0,T,"isInstalledExpert",0,h,"isValidSkillName",0,w,"recordUninstall",0,A])}];
5
-
6
- //# sourceMappingURL=%5Broot-of-the-server%5D__1301wm3._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},445564,e=>{"use strict";var t=e.i(89171),r=e.i(446786),a=e.i(814747),n=e.i(522734);let s=(0,a.join)((0,r.homedir)(),".config","evoscientist","config.yaml");async function i(){let e=process.env.EVOSCIENTIST_LANGGRAPH_DEV_PORT;if(e&&/^\d+$/.test(e.trim()))return parseInt(e.trim(),10);try{let e=(await n.promises.readFile(s,"utf-8")).match(/^\s*langgraph_dev_port:\s*(\d+)\s*$/m);if(e)return parseInt(e[1],10)}catch{}return 6174}async function o(){let e=await i();return t.NextResponse.json({port:e,deploymentUrl:`http://127.0.0.1:${e}`})}e.s(["GET",0,o])},89560,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),s=e.i(561916),i=e.i(174677),o=e.i(869741),l=e.i(316795),d=e.i(487718),u=e.i(995169),p=e.i(47587),c=e.i(666012),x=e.i(570101),h=e.i(626937),v=e.i(10372),R=e.i(193695),m=e.i(509580);e.i(52474);var g=e.i(600220);let f=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/evosci-config/route",pathname:"/api/evosci-config",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/evosci-config/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(445564),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:E,serverHooks:y}=f;async function C(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),f.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/evosci-config/route";w=w.replace(/\/index$/,"")||"/";let E=await f.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!E)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,deploymentId:C,params:A,nextConfig:T,parsedUrl:q,isDraftMode:b,prerenderManifest:P,routerServerContext:S,isOnDemandRevalidate:N,revalidateOnlyGenerated:_,resolvedPathname:O,clientReferenceManifest:j,serverActionsManifest:k}=E,I=(0,o.normalizeAppPath)(w),H=!!P.routes[O]&&(f.isDev||(0,m.isRouteCacheOwner)(O,f.cacheOwner,P.routes[O])),M=!!(P.dynamicRoutes[I]||H),U=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,q,!1):t.end("This page could not be found"),null);if(M&&!b){let e=P.dynamicRoutes[I];if(e&&!1===e.fallback&&!H){if(T.adapterPath)return await U();throw new R.NoFallbackError}}let D=null;!M||f.isDev||b||(D="/index"===(D=O)?"/":D);let $=!0===f.isDev||!M,F=M&&!$;k&&j&&(0,i.setManifestsSingleton)({page:w,clientReferenceManifest:j,serverActionsManifest:k});let G=e.method||"GET",K=(0,s.getTracer)(),L=K.getActiveScopeSpan(),B=!!(null==S?void 0:S.isWrappedByNextServer),V=!!(0,n.getRequestMeta)(e,"minimalMode"),X=(0,n.getRequestMeta)(e,"incrementalCache")||await f.getIncrementalCache(e,T,P,V);null==X||X.resetRequestCache(),globalThis.__incrementalCache=X;let W={params:A,previewProps:P.preview,renderOpts:{experimental:{authInterrupts:!!T.experimental.authInterrupts,useCacheTimeout:T.experimental.useCacheTimeout},cacheComponents:!!T.cacheComponents,validationLevel:T.experimental.instantInsights.validationLevel,isDraftMode:b,supportsDynamicResponse:$,incrementalCache:X,hmrRefreshHash:(0,n.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:T.cacheLife,staticPageGenerationTimeout:T.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>f.onRequestError(e,t,a,n,S)},sharedContext:{buildId:y,deploymentId:C}},z=new l.NodeNextRequest(e),Z=new l.NodeNextResponse(t),J=d.NextRequestAdapter.fromNodeNextRequest(z,(0,d.signalFromNodeResponse)(t)),Q=async({previousCacheEntry:r})=>{try{if(!V&&N&&_&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await f.handle(J,W);e.fetchMetrics=W.renderOpts.fetchMetrics;let s=W.renderOpts.pendingWaitUntil;s&&a.waitUntil&&(a.waitUntil(s),s=void 0);let i=W.renderOpts.collectedTags;if(!M)return await (0,c.sendResponse)(z,Z,n,s),null;{let e=await n.blob(),t=(0,x.toNodeOutgoingHttpHeaders)(n.headers);i&&(t[v.NEXT_CACHE_TAGS_HEADER]=i),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==W.renderOpts.collectedRevalidate&&!(W.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&W.renderOpts.collectedRevalidate,a=void 0===W.renderOpts.collectedExpire||W.renderOpts.collectedExpire>=v.INFINITE_CACHE?!1!==r&&r>0?T.expireTime:void 0:W.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await f.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:F,isOnDemandRevalidate:N})},!1,S),t}},Y=async(n,i)=>{try{var o,l;let n=await f.handleResponse({req:e,nextConfig:T,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:P,isRoutePPREnabled:!1,isOnDemandRevalidate:N,revalidateOnlyGenerated:_,responseGenerator:Q,waitUntil:a.waitUntil,isMinimalMode:V});if(!M)return;if((null==n||null==(o=n.value)?void 0:o.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==n||null==(l=n.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});V||t.setHeader("x-nextjs-cache",N?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let s=(0,x.fromNodeOutgoingHttpHeaders)(n.value.headers);V&&M||s.delete(v.NEXT_CACHE_TAGS_HEADER),!n.cacheControl||t.getHeader("Cache-Control")||s.get("Cache-Control")||s.set("Cache-Control",(0,h.getCacheControlHeader)(n.cacheControl)),await (0,c.sendResponse)(z,Z,new Response(n.value.body,{headers:s,status:n.value.status||200}));return}catch(t){if(t instanceof R.NoFallbackError||await f.onRequestError(e,t,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:F,isOnDemandRevalidate:N})},!1,S),M)throw t;await (0,c.sendResponse)(z,Z,new Response(null,{status:500}));return}finally{(()=>{if(!n)return;let e=t.statusCode;n.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(n.setStatus({code:s.SpanStatusCode.ERROR}),n.setAttribute("error.type",e.toString()));let r=K.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||I,o=`${G} ${a}`;n.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),n.updateName(o),i&&i!==n&&(i.setAttribute("http.route",a),i.updateName(o))})()}};if(B&&L)await Y(L,void 0);else{let t=K.getActiveScopeSpan();await K.withPropagatedContext(e.headers,()=>K.trace(u.BaseServerSpan.handleRequest,{spanName:`${G} ${w}`,kind:s.SpanKind.SERVER,attributes:{"http.method":G,"http.target":e.url}},e=>Y(e,t)),void 0,!B)}}e.s(["handler",0,C,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:E})},"routeModule",0,f,"serverHooks",0,y,"workAsyncStorage",0,w,"workUnitAsyncStorage",0,E])}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__13z7yld._.js.map
@@ -1,6 +0,0 @@
1
- module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},713149,e=>{"use strict";var t=e.i(89171),r=e.i(904937);async function a(e){try{let a=e.nextUrl.searchParams.get("name");if(!a)return t.NextResponse.json({error:"Missing skill name."},{status:400});let i=await (0,r.getSkillDetail)(a);return t.NextResponse.json(i)}catch(e){return t.NextResponse.json({error:e instanceof Error?e.message:"Failed to load skill detail."},{status:400})}}e.s(["GET",0,a,"runtime",0,"nodejs"])},562441,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),i=e.i(759756),n=e.i(561916),s=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),c=e.i(995169),d=e.i(47587),p=e.i(666012),h=e.i(570101),m=e.i(626937),f=e.i(10372),w=e.i(193695),x=e.i(509580);e.i(52474);var v=e.i(600220);let g=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/skills/detail/route",pathname:"/api/skills/detail",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/detail/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(713149),...{}}),{workAsyncStorage:y,workUnitAsyncStorage:R,serverHooks:E}=g;async function k(e,t,a){a.requestMeta&&(0,i.setRequestMeta)(e,a.requestMeta),g.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let y="/api/skills/detail/route";y=y.replace(/\/index$/,"")||"/";let R=await g.prepare(e,t,{srcPage:y,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,deploymentId:k,params:$,nextConfig:b,parsedUrl:S,isDraftMode:C,prerenderManifest:A,routerServerContext:j,isOnDemandRevalidate:T,revalidateOnlyGenerated:I,resolvedPathname:N,clientReferenceManifest:q,serverActionsManifest:P}=R,O=(0,o.normalizeAppPath)(y),_=!!A.routes[N]&&(g.isDev||(0,x.isRouteCacheOwner)(N,g.cacheOwner,A.routes[N])),D=!!(A.dynamicRoutes[O]||_),U=async()=>((null==j?void 0:j.render404)?await j.render404(e,t,S,!1):t.end("This page could not be found"),null);if(D&&!C){let e=A.dynamicRoutes[O];if(e&&!1===e.fallback&&!_){if(b.adapterPath)return await U();throw new w.NoFallbackError}}let H=null;!D||g.isDev||C||(H="/index"===(H=N)?"/":H);let M=!0===g.isDev||!D,F=D&&!M;P&&q&&(0,s.setManifestsSingleton)({page:y,clientReferenceManifest:q,serverActionsManifest:P});let L=e.method||"GET",K=(0,n.getTracer)(),B=K.getActiveScopeSpan(),W=!!(null==j?void 0:j.isWrappedByNextServer),G=!!(0,i.getRequestMeta)(e,"minimalMode"),z=(0,i.getRequestMeta)(e,"incrementalCache")||await g.getIncrementalCache(e,b,A,G);null==z||z.resetRequestCache(),globalThis.__incrementalCache=z;let V={params:$,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!b.experimental.authInterrupts,useCacheTimeout:b.experimental.useCacheTimeout},cacheComponents:!!b.cacheComponents,validationLevel:b.experimental.instantInsights.validationLevel,isDraftMode:C,supportsDynamicResponse:M,incrementalCache:z,hmrRefreshHash:(0,i.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:b.cacheLife,staticPageGenerationTimeout:b.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,i)=>g.onRequestError(e,t,a,i,j)},sharedContext:{buildId:E,deploymentId:k}},X=new l.NodeNextRequest(e),Z=new l.NodeNextResponse(t),J=u.NextRequestAdapter.fromNodeNextRequest(X,(0,u.signalFromNodeResponse)(t)),Q=async({previousCacheEntry:r})=>{try{if(!G&&T&&I&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await g.handle(J,V);e.fetchMetrics=V.renderOpts.fetchMetrics;let n=V.renderOpts.pendingWaitUntil;n&&a.waitUntil&&(a.waitUntil(n),n=void 0);let s=V.renderOpts.collectedTags;if(!D)return await (0,p.sendResponse)(X,Z,i,n),null;{let e=await i.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(i.headers);s&&(t[f.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,a=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=f.INFINITE_CACHE?!1!==r&&r>0?b.expireTime:void 0:V.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await g.onRequestError(e,t,{routerKind:"App Router",routePath:y,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:F,isOnDemandRevalidate:T})},!1,j),t}},Y=async(i,s)=>{try{var o,l;let i=await g.handleResponse({req:e,nextConfig:b,cacheKey:H,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:I,responseGenerator:Q,waitUntil:a.waitUntil,isMinimalMode:G});if(!D)return;if((null==i||null==(o=i.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==i||null==(l=i.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});G||t.setHeader("x-nextjs-cache",T?"REVALIDATED":i.isMiss?"MISS":i.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let n=(0,h.fromNodeOutgoingHttpHeaders)(i.value.headers);G&&D||n.delete(f.NEXT_CACHE_TAGS_HEADER),!i.cacheControl||t.getHeader("Cache-Control")||n.get("Cache-Control")||n.set("Cache-Control",(0,m.getCacheControlHeader)(i.cacheControl)),await (0,p.sendResponse)(X,Z,new Response(i.value.body,{headers:n,status:i.value.status||200}));return}catch(t){if(t instanceof w.NoFallbackError||await g.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:F,isOnDemandRevalidate:T})},!1,j),D)throw t;await (0,p.sendResponse)(X,Z,new Response(null,{status:500}));return}finally{(()=>{if(!i)return;let e=t.statusCode;i.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(i.setStatus({code:n.SpanStatusCode.ERROR}),i.setAttribute("error.type",e.toString()));let r=K.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||O,o=`${L} ${a}`;i.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),i.updateName(o),s&&s!==i&&(s.setAttribute("http.route",a),s.updateName(o))})()}};if(W&&B)await Y(B,void 0);else{let t=K.getActiveScopeSpan();await K.withPropagatedContext(e.headers,()=>K.trace(c.BaseServerSpan.handleRequest,{spanName:`${L} ${y}`,kind:n.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},e=>Y(e,t)),void 0,!W)}}e.s(["handler",0,k,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:y,workUnitAsyncStorage:R})},"routeModule",0,g,"serverHooks",0,E,"workAsyncStorage",0,y,"workUnitAsyncStorage",0,R])},904937,e=>{"use strict";let t;var r=e.i(446786),a=e.i(814747),i=e.i(522734),n=e.i(254799);let s="EvoScientist/EvoSkills",o="main",l="skills/",u=(0,a.join)((t=process.env.EVOSCIENTIST_DATA_DIR)&&t.trim()?t.startsWith("~")?(0,a.join)((0,r.homedir)(),t.slice(1)):(0,a.resolve)(t):(0,a.join)((0,r.homedir)(),".evoscientist"),"skills"),c=[u,(0,a.join)((0,r.homedir)(),".config","evoscientist","skills")],d={Accept:"application/vnd.github+json","User-Agent":"evoscientist-webui"},p="EXPERT.md";async function h(e,t,r){try{let n=await i.promises.realpath((0,a.join)(e,t,r)),s=await i.promises.realpath(e);if(n!==s&&!n.startsWith(s+a.sep))return null;return await i.promises.readFile(n,"utf-8")}catch{return null}}function m(e){let t,{frontmatter:r}=x(e);if(!r)return!0;let a=r.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!a)return!0;let i=a[1],n=i.split("\n").find(e=>e.trim()),s=n?.match(/^[ \t]+/)?.[0]??" ",o=i.match(RegExp(`^${s}type\\s*:[ \\t]*(.*)$`,"m"));if(!o)return!0;let l=o[1].trim();if(""===l||"|"===l||">"===l)for(let e of(t=[],i.slice(i.indexOf(o[0])+o[0].length).split("\n"))){if(!e.trim())continue;let r=e.match(/^[ \t]+-[ \t]*(.+?)[ \t]*$/);if(!r||!e.startsWith(s))break;t.push(r[1])}else t=l.replace(/^\[|\]$/g,"").split(",");return t.map(e=>e.trim().replace(/^["']|["']$/g,"").toLowerCase()).filter(Boolean).includes("skill")}async function f(e){try{return(await i.promises.stat((0,a.join)(e,p))).isFile()}catch{return!1}}function w(e){return e.length<=128&&/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(e)&&!e.includes("..")}function x(e){let t=e.match(/^---[ \t]*\r?\n([\s\S]*?)\r?\n---[ \t]*(?:\r?\n|$)/);return t?{frontmatter:t[1],body:e.slice(t[0].length).trim()}:{frontmatter:null,body:e.trim()}}function v(e){let t=t=>{let r=e.match(RegExp(`^${t}\\s*:\\s*(.+?)\\s*$`,"m"));return r?r[1].replace(/^["']|["']$/g,"").trim():void 0};return{name:t("name"),description:t("description"),version:function(e){let t=e.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!t)return;let r=t[1].match(/^[ \t]+version\s*:\s*(.+?)\s*$/m);return r?r[1].replace(/^["']|["']$/g,"").trim():void 0}(e)}}function g(e){let{frontmatter:t}=x(e);return t?v(t):{}}async function y(e){for(let t of c)try{let r=await i.promises.readFile((0,a.join)(t,e,"SKILL.md"),"utf-8"),n=g(r).version;if(n)return n}catch{}}function R(e,t){return`https://raw.githubusercontent.com/${s}/${e}/${t}`}let E=/^[0-9a-f]{7,40}$/,k=null;async function $(){try{let e=await fetch(`https://api.github.com/repos/${s}/commits/${o}`,{headers:d});if(e.ok){let t=await e.json();if("string"==typeof t.sha&&E.test(t.sha))return t.sha}}catch{}return o}async function b(e=!1){if(!e&&k&&Date.now()-k.at<3e5)return{ref:k.ref,tree:k.tree};let t=await $(),r=await fetch(`https://api.github.com/repos/${s}/git/trees/${t}?recursive=1`,{headers:d});if(!r.ok)throw Error(403===r.status?"GitHub rate limit reached — try again in a minute.":`Couldn't reach the skills catalog (GitHub ${r.status}).`);let a=await r.json();if(!Array.isArray(a.tree))throw Error("Unexpected response from the skills catalog.");return k={at:Date.now(),ref:t,tree:a.tree},{ref:t,tree:a.tree}}function S(){return(0,a.join)(u,".installed.yaml")}async function C(){try{return function(e){let t={},r=null;for(let a of e.split("\n"))if(!(!a.trim()||a.trimStart().startsWith("#"))){if(/^\S/.test(a)){let e=a.match(/^(\S[^:]*?):\s*$/);(r=e?e[1].trim():null)&&(t[r]={source:""})}else if(r){let e=a.match(/^\s+([A-Za-z_]+)\s*:\s*(.+?)\s*$/);if(e){let a=e[2].replace(/^["']|["']$/g,"").trim();"source"===e[1]?t[r].source=a:"commit"===e[1]&&(t[r].commit=a)}}}for(let e of Object.keys(t))t[e].source||delete t[e];return t}(await i.promises.readFile(S(),"utf-8"))}catch{return{}}}async function A(e){let t=S(),r=`${t}.${(0,n.randomUUID)()}.tmp`;await i.promises.mkdir(u,{recursive:!0}),await i.promises.writeFile(r,function(e){let t=Object.keys(e).sort();if(0===t.length)return"{}\n";let r="";for(let a of t)r+=`${a}:
2
- `,e[a].commit&&(r+=` commit: ${e[a].commit}
3
- `),r+=` source: ${e[a].source}
4
- `;return r}(e),{mode:384}),await i.promises.rename(r,t)}async function j(e,t){let r=await C(),a=`${s}@${l}${e}`;r[e]=t?{source:a,commit:t}:{source:a},await A(r)}async function T(e){let t=await C();e in t&&(delete t[e],await A(t))}async function I(){let e=new Set;for(let t of c)try{for(let r of(await i.promises.readdir(t,{withFileTypes:!0})))r.isDirectory()&&!r.name.startsWith(".")&&e.add(r.name)}catch{}return e}async function N(e=!1){let[{ref:t,tree:r},a]=await Promise.all([b(e),I()]),i=function(e){let t=new Map;for(let r of e){if("blob"!==r.type||!r.path.startsWith(l))continue;let e=r.path.slice(l.length),a=e.indexOf("/");if(a<=0)continue;let i=e.slice(0,a);(t.get(i)??t.set(i,[]).get(i)).push(r)}return t}(r);return(await Promise.all([...i.entries()].map(async([e,r])=>{let i,n,s=e,o="",u=!0,c=r.find(t=>t.path===`${l}${e}/SKILL.md`);if(c)try{let r=await fetch(R(t,c.path),{headers:d}).then(e=>e.ok?e.text():""),a=g(r);s=a.name||e,o=a.description||"",n=a.version,u=m(r)}catch{}let h=a.has(e),f=h?await y(e):void 0,w=h&&!!n&&!!f&&function(e,t){let r=e.split(".").map(e=>parseInt(e,10)),a=t.split(".").map(e=>parseInt(e,10)),i=Math.max(r.length,a.length);for(let e=0;e<i;e+=1){let t=r[e]??0,i=a[e]??0;if(Number.isNaN(t)||Number.isNaN(i))break;if(t!==i)return t>i?1:-1}return 0}(n,f)>0;return{name:e,title:s,description:o,fileCount:r.length,installed:h,latestVersion:n,installedVersion:f,updateAvailable:w,isExpert:(i=`${l}${e}/${p}`,r.some(e=>e.path===i)),isSkill:u}}))).sort((e,t)=>e.title.localeCompare(t.title))}async function q(e){if(!w(e))throw Error("Invalid skill name.");let t=null,r=null,a=!1;for(let i of c){let n=await h(i,e,"SKILL.md");if(null!==n){t=n,a=!0,r=await h(i,e,p);break}}if(null===t){let{ref:a,tree:i}=await b(),n=async e=>{let t=await fetch(R(a,e),{headers:d});if(!t.ok)throw Error(`Failed to load skill (${t.status}).`);return t.text()},s=e=>i.some(t=>"blob"===t.type&&t.path===e),o=`${l}${e}/SKILL.md`;if(!s(o))throw Error(`Skill "${e}" was not found.`);t=await n(o);let u=`${l}${e}/${p}`;if(s(u))try{r=await n(u)}catch{}}let{frontmatter:i,body:n}=x(t),s=i?v(i):{},o=null!==i&&(null!=s.name||null!=s.description||null!=s.version);return{name:e,title:s.name||e,description:s.description||"",version:s.version,body:o?n:t.trim(),installed:a,expertBody:null===r?void 0:function(e){let{frontmatter:t,body:r}=x(e);return(null===t?e:r).trim()}(r)}}async function P(e){if(!w(e))throw Error("Invalid skill name.");let{ref:t,tree:r}=await b(),s=`${l}${e}/`,c=r.filter(e=>"blob"===e.type&&e.path.startsWith(s));if(0===c.length)throw Error(`Skill "${e}" was not found in the catalog.`);if(c.length>300)throw Error("This skill has too many files to install.");if(c.reduce((e,t)=>e+(t.size??0),0)>0x1900000)throw Error("This skill is too large to install.");let p=(0,a.resolve)(u),h=(0,a.resolve)(p,e);if(h!==(0,a.join)(p,e))throw Error("Invalid skill name.");let m=(0,a.join)(p,`.installing-${e}-${(0,n.randomUUID)()}`);try{for(let e of(await i.promises.mkdir(m,{recursive:!0}),c)){let r=e.path.slice(s.length),n=(0,a.resolve)(m,r);if(n!==m&&!n.startsWith(m+a.sep))throw Error("Invalid file path in skill.");let o=await fetch(R(t,e.path),{headers:d});if(!o.ok)throw Error(`Failed to download ${r} (${o.status}).`);let l=Buffer.from(await o.arrayBuffer());await i.promises.mkdir((0,a.dirname)(n),{recursive:!0}),await i.promises.writeFile(n,l)}await i.promises.rm(h,{recursive:!0,force:!0}),await i.promises.mkdir(p,{recursive:!0}),await i.promises.rename(m,h)}catch(e){throw await i.promises.rm(m,{recursive:!0,force:!0}).catch(()=>{}),e}try{await j(e,t!==o&&E.test(t)?t:null)}catch{}return{files:c.length}}e.s(["SKILL_DIRS",0,c,"declaresSkillType",0,m,"getCatalog",0,N,"getSkillDetail",0,q,"installSkill",0,P,"isInstalledExpert",0,f,"isValidSkillName",0,w,"recordUninstall",0,T])}];
5
-
6
- //# sourceMappingURL=%5Broot-of-the-server%5D__1csj9d7._.js.map
@@ -1,6 +0,0 @@
1
- module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},854032,e=>{"use strict";var t=e.i(89171),r=e.i(904937);async function a(e){try{let a="1"===e.nextUrl.searchParams.get("refresh"),i=await (0,r.getCatalog)(a);return t.NextResponse.json({skills:i})}catch(e){return t.NextResponse.json({error:e instanceof Error?e.message:"Failed to load the skills catalog."},{status:502})}}e.s(["GET",0,a,"runtime",0,"nodejs"])},863384,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),i=e.i(759756),n=e.i(561916),s=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),c=e.i(995169),d=e.i(47587),p=e.i(666012),h=e.i(570101),m=e.i(626937),f=e.i(10372),w=e.i(193695),x=e.i(509580);e.i(52474);var v=e.i(600220);let g=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/skills/catalog/route",pathname:"/api/skills/catalog",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/catalog/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(854032),...{}}),{workAsyncStorage:y,workUnitAsyncStorage:R,serverHooks:E}=g;async function k(e,t,a){a.requestMeta&&(0,i.setRequestMeta)(e,a.requestMeta),g.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let y="/api/skills/catalog/route";y=y.replace(/\/index$/,"")||"/";let R=await g.prepare(e,t,{srcPage:y,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,deploymentId:k,params:$,nextConfig:b,parsedUrl:C,isDraftMode:S,prerenderManifest:A,routerServerContext:j,isOnDemandRevalidate:T,revalidateOnlyGenerated:I,resolvedPathname:N,clientReferenceManifest:q,serverActionsManifest:P}=R,O=(0,o.normalizeAppPath)(y),_=!!A.routes[N]&&(g.isDev||(0,x.isRouteCacheOwner)(N,g.cacheOwner,A.routes[N])),D=!!(A.dynamicRoutes[O]||_),U=async()=>((null==j?void 0:j.render404)?await j.render404(e,t,C,!1):t.end("This page could not be found"),null);if(D&&!S){let e=A.dynamicRoutes[O];if(e&&!1===e.fallback&&!_){if(b.adapterPath)return await U();throw new w.NoFallbackError}}let H=null;!D||g.isDev||S||(H="/index"===(H=N)?"/":H);let F=!0===g.isDev||!D,L=D&&!F;P&&q&&(0,s.setManifestsSingleton)({page:y,clientReferenceManifest:q,serverActionsManifest:P});let M=e.method||"GET",K=(0,n.getTracer)(),B=K.getActiveScopeSpan(),W=!!(null==j?void 0:j.isWrappedByNextServer),G=!!(0,i.getRequestMeta)(e,"minimalMode"),z=(0,i.getRequestMeta)(e,"incrementalCache")||await g.getIncrementalCache(e,b,A,G);null==z||z.resetRequestCache(),globalThis.__incrementalCache=z;let V={params:$,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!b.experimental.authInterrupts,useCacheTimeout:b.experimental.useCacheTimeout},cacheComponents:!!b.cacheComponents,validationLevel:b.experimental.instantInsights.validationLevel,isDraftMode:S,supportsDynamicResponse:F,incrementalCache:z,hmrRefreshHash:(0,i.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:b.cacheLife,staticPageGenerationTimeout:b.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,i)=>g.onRequestError(e,t,a,i,j)},sharedContext:{buildId:E,deploymentId:k}},X=new l.NodeNextRequest(e),Z=new l.NodeNextResponse(t),J=u.NextRequestAdapter.fromNodeNextRequest(X,(0,u.signalFromNodeResponse)(t)),Q=async({previousCacheEntry:r})=>{try{if(!G&&T&&I&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await g.handle(J,V);e.fetchMetrics=V.renderOpts.fetchMetrics;let n=V.renderOpts.pendingWaitUntil;n&&a.waitUntil&&(a.waitUntil(n),n=void 0);let s=V.renderOpts.collectedTags;if(!D)return await (0,p.sendResponse)(X,Z,i,n),null;{let e=await i.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(i.headers);s&&(t[f.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,a=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=f.INFINITE_CACHE?!1!==r&&r>0?b.expireTime:void 0:V.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await g.onRequestError(e,t,{routerKind:"App Router",routePath:y,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:T})},!1,j),t}},Y=async(i,s)=>{try{var o,l;let i=await g.handleResponse({req:e,nextConfig:b,cacheKey:H,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:I,responseGenerator:Q,waitUntil:a.waitUntil,isMinimalMode:G});if(!D)return;if((null==i||null==(o=i.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==i||null==(l=i.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});G||t.setHeader("x-nextjs-cache",T?"REVALIDATED":i.isMiss?"MISS":i.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let n=(0,h.fromNodeOutgoingHttpHeaders)(i.value.headers);G&&D||n.delete(f.NEXT_CACHE_TAGS_HEADER),!i.cacheControl||t.getHeader("Cache-Control")||n.get("Cache-Control")||n.set("Cache-Control",(0,m.getCacheControlHeader)(i.cacheControl)),await (0,p.sendResponse)(X,Z,new Response(i.value.body,{headers:n,status:i.value.status||200}));return}catch(t){if(t instanceof w.NoFallbackError||await g.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:T})},!1,j),D)throw t;await (0,p.sendResponse)(X,Z,new Response(null,{status:500}));return}finally{(()=>{if(!i)return;let e=t.statusCode;i.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(i.setStatus({code:n.SpanStatusCode.ERROR}),i.setAttribute("error.type",e.toString()));let r=K.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||O,o=`${M} ${a}`;i.setAttributes({"next.route":a,"http.route":a,"next.span_name":o}),i.updateName(o),s&&s!==i&&(s.setAttribute("http.route",a),s.updateName(o))})()}};if(W&&B)await Y(B,void 0);else{let t=K.getActiveScopeSpan();await K.withPropagatedContext(e.headers,()=>K.trace(c.BaseServerSpan.handleRequest,{spanName:`${M} ${y}`,kind:n.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},e=>Y(e,t)),void 0,!W)}}e.s(["handler",0,k,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:y,workUnitAsyncStorage:R})},"routeModule",0,g,"serverHooks",0,E,"workAsyncStorage",0,y,"workUnitAsyncStorage",0,R])},904937,e=>{"use strict";let t;var r=e.i(446786),a=e.i(814747),i=e.i(522734),n=e.i(254799);let s="EvoScientist/EvoSkills",o="main",l="skills/",u=(0,a.join)((t=process.env.EVOSCIENTIST_DATA_DIR)&&t.trim()?t.startsWith("~")?(0,a.join)((0,r.homedir)(),t.slice(1)):(0,a.resolve)(t):(0,a.join)((0,r.homedir)(),".evoscientist"),"skills"),c=[u,(0,a.join)((0,r.homedir)(),".config","evoscientist","skills")],d={Accept:"application/vnd.github+json","User-Agent":"evoscientist-webui"},p="EXPERT.md";async function h(e,t,r){try{let n=await i.promises.realpath((0,a.join)(e,t,r)),s=await i.promises.realpath(e);if(n!==s&&!n.startsWith(s+a.sep))return null;return await i.promises.readFile(n,"utf-8")}catch{return null}}function m(e){let t,{frontmatter:r}=x(e);if(!r)return!0;let a=r.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!a)return!0;let i=a[1],n=i.split("\n").find(e=>e.trim()),s=n?.match(/^[ \t]+/)?.[0]??" ",o=i.match(RegExp(`^${s}type\\s*:[ \\t]*(.*)$`,"m"));if(!o)return!0;let l=o[1].trim();if(""===l||"|"===l||">"===l)for(let e of(t=[],i.slice(i.indexOf(o[0])+o[0].length).split("\n"))){if(!e.trim())continue;let r=e.match(/^[ \t]+-[ \t]*(.+?)[ \t]*$/);if(!r||!e.startsWith(s))break;t.push(r[1])}else t=l.replace(/^\[|\]$/g,"").split(",");return t.map(e=>e.trim().replace(/^["']|["']$/g,"").toLowerCase()).filter(Boolean).includes("skill")}async function f(e){try{return(await i.promises.stat((0,a.join)(e,p))).isFile()}catch{return!1}}function w(e){return e.length<=128&&/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(e)&&!e.includes("..")}function x(e){let t=e.match(/^---[ \t]*\r?\n([\s\S]*?)\r?\n---[ \t]*(?:\r?\n|$)/);return t?{frontmatter:t[1],body:e.slice(t[0].length).trim()}:{frontmatter:null,body:e.trim()}}function v(e){let t=t=>{let r=e.match(RegExp(`^${t}\\s*:\\s*(.+?)\\s*$`,"m"));return r?r[1].replace(/^["']|["']$/g,"").trim():void 0};return{name:t("name"),description:t("description"),version:function(e){let t=e.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!t)return;let r=t[1].match(/^[ \t]+version\s*:\s*(.+?)\s*$/m);return r?r[1].replace(/^["']|["']$/g,"").trim():void 0}(e)}}function g(e){let{frontmatter:t}=x(e);return t?v(t):{}}async function y(e){for(let t of c)try{let r=await i.promises.readFile((0,a.join)(t,e,"SKILL.md"),"utf-8"),n=g(r).version;if(n)return n}catch{}}function R(e,t){return`https://raw.githubusercontent.com/${s}/${e}/${t}`}let E=/^[0-9a-f]{7,40}$/,k=null;async function $(){try{let e=await fetch(`https://api.github.com/repos/${s}/commits/${o}`,{headers:d});if(e.ok){let t=await e.json();if("string"==typeof t.sha&&E.test(t.sha))return t.sha}}catch{}return o}async function b(e=!1){if(!e&&k&&Date.now()-k.at<3e5)return{ref:k.ref,tree:k.tree};let t=await $(),r=await fetch(`https://api.github.com/repos/${s}/git/trees/${t}?recursive=1`,{headers:d});if(!r.ok)throw Error(403===r.status?"GitHub rate limit reached — try again in a minute.":`Couldn't reach the skills catalog (GitHub ${r.status}).`);let a=await r.json();if(!Array.isArray(a.tree))throw Error("Unexpected response from the skills catalog.");return k={at:Date.now(),ref:t,tree:a.tree},{ref:t,tree:a.tree}}function C(){return(0,a.join)(u,".installed.yaml")}async function S(){try{return function(e){let t={},r=null;for(let a of e.split("\n"))if(!(!a.trim()||a.trimStart().startsWith("#"))){if(/^\S/.test(a)){let e=a.match(/^(\S[^:]*?):\s*$/);(r=e?e[1].trim():null)&&(t[r]={source:""})}else if(r){let e=a.match(/^\s+([A-Za-z_]+)\s*:\s*(.+?)\s*$/);if(e){let a=e[2].replace(/^["']|["']$/g,"").trim();"source"===e[1]?t[r].source=a:"commit"===e[1]&&(t[r].commit=a)}}}for(let e of Object.keys(t))t[e].source||delete t[e];return t}(await i.promises.readFile(C(),"utf-8"))}catch{return{}}}async function A(e){let t=C(),r=`${t}.${(0,n.randomUUID)()}.tmp`;await i.promises.mkdir(u,{recursive:!0}),await i.promises.writeFile(r,function(e){let t=Object.keys(e).sort();if(0===t.length)return"{}\n";let r="";for(let a of t)r+=`${a}:
2
- `,e[a].commit&&(r+=` commit: ${e[a].commit}
3
- `),r+=` source: ${e[a].source}
4
- `;return r}(e),{mode:384}),await i.promises.rename(r,t)}async function j(e,t){let r=await S(),a=`${s}@${l}${e}`;r[e]=t?{source:a,commit:t}:{source:a},await A(r)}async function T(e){let t=await S();e in t&&(delete t[e],await A(t))}async function I(){let e=new Set;for(let t of c)try{for(let r of(await i.promises.readdir(t,{withFileTypes:!0})))r.isDirectory()&&!r.name.startsWith(".")&&e.add(r.name)}catch{}return e}async function N(e=!1){let[{ref:t,tree:r},a]=await Promise.all([b(e),I()]),i=function(e){let t=new Map;for(let r of e){if("blob"!==r.type||!r.path.startsWith(l))continue;let e=r.path.slice(l.length),a=e.indexOf("/");if(a<=0)continue;let i=e.slice(0,a);(t.get(i)??t.set(i,[]).get(i)).push(r)}return t}(r);return(await Promise.all([...i.entries()].map(async([e,r])=>{let i,n,s=e,o="",u=!0,c=r.find(t=>t.path===`${l}${e}/SKILL.md`);if(c)try{let r=await fetch(R(t,c.path),{headers:d}).then(e=>e.ok?e.text():""),a=g(r);s=a.name||e,o=a.description||"",n=a.version,u=m(r)}catch{}let h=a.has(e),f=h?await y(e):void 0,w=h&&!!n&&!!f&&function(e,t){let r=e.split(".").map(e=>parseInt(e,10)),a=t.split(".").map(e=>parseInt(e,10)),i=Math.max(r.length,a.length);for(let e=0;e<i;e+=1){let t=r[e]??0,i=a[e]??0;if(Number.isNaN(t)||Number.isNaN(i))break;if(t!==i)return t>i?1:-1}return 0}(n,f)>0;return{name:e,title:s,description:o,fileCount:r.length,installed:h,latestVersion:n,installedVersion:f,updateAvailable:w,isExpert:(i=`${l}${e}/${p}`,r.some(e=>e.path===i)),isSkill:u}}))).sort((e,t)=>e.title.localeCompare(t.title))}async function q(e){if(!w(e))throw Error("Invalid skill name.");let t=null,r=null,a=!1;for(let i of c){let n=await h(i,e,"SKILL.md");if(null!==n){t=n,a=!0,r=await h(i,e,p);break}}if(null===t){let{ref:a,tree:i}=await b(),n=async e=>{let t=await fetch(R(a,e),{headers:d});if(!t.ok)throw Error(`Failed to load skill (${t.status}).`);return t.text()},s=e=>i.some(t=>"blob"===t.type&&t.path===e),o=`${l}${e}/SKILL.md`;if(!s(o))throw Error(`Skill "${e}" was not found.`);t=await n(o);let u=`${l}${e}/${p}`;if(s(u))try{r=await n(u)}catch{}}let{frontmatter:i,body:n}=x(t),s=i?v(i):{},o=null!==i&&(null!=s.name||null!=s.description||null!=s.version);return{name:e,title:s.name||e,description:s.description||"",version:s.version,body:o?n:t.trim(),installed:a,expertBody:null===r?void 0:function(e){let{frontmatter:t,body:r}=x(e);return(null===t?e:r).trim()}(r)}}async function P(e){if(!w(e))throw Error("Invalid skill name.");let{ref:t,tree:r}=await b(),s=`${l}${e}/`,c=r.filter(e=>"blob"===e.type&&e.path.startsWith(s));if(0===c.length)throw Error(`Skill "${e}" was not found in the catalog.`);if(c.length>300)throw Error("This skill has too many files to install.");if(c.reduce((e,t)=>e+(t.size??0),0)>0x1900000)throw Error("This skill is too large to install.");let p=(0,a.resolve)(u),h=(0,a.resolve)(p,e);if(h!==(0,a.join)(p,e))throw Error("Invalid skill name.");let m=(0,a.join)(p,`.installing-${e}-${(0,n.randomUUID)()}`);try{for(let e of(await i.promises.mkdir(m,{recursive:!0}),c)){let r=e.path.slice(s.length),n=(0,a.resolve)(m,r);if(n!==m&&!n.startsWith(m+a.sep))throw Error("Invalid file path in skill.");let o=await fetch(R(t,e.path),{headers:d});if(!o.ok)throw Error(`Failed to download ${r} (${o.status}).`);let l=Buffer.from(await o.arrayBuffer());await i.promises.mkdir((0,a.dirname)(n),{recursive:!0}),await i.promises.writeFile(n,l)}await i.promises.rm(h,{recursive:!0,force:!0}),await i.promises.mkdir(p,{recursive:!0}),await i.promises.rename(m,h)}catch(e){throw await i.promises.rm(m,{recursive:!0,force:!0}).catch(()=>{}),e}try{await j(e,t!==o&&E.test(t)?t:null)}catch{}return{files:c.length}}e.s(["SKILL_DIRS",0,c,"declaresSkillType",0,m,"getCatalog",0,N,"getSkillDetail",0,q,"installSkill",0,P,"isInstalledExpert",0,f,"isValidSkillName",0,w,"recordUninstall",0,T])}];
5
-
6
- //# sourceMappingURL=%5Broot-of-the-server%5D__1lhglnn._.js.map
@@ -1,6 +0,0 @@
1
- module.exports=[254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},120635,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},559043,(e,t,r)=>{t.exports=e.x("next/dist/server/runtime-reacts.external.js",()=>require("next/dist/server/runtime-reacts.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},81111,(e,t,r)=>{t.exports=e.x("node:stream",()=>require("node:stream"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},915908,e=>{"use strict";var t=e.i(89171),r=e.i(904937),i=e.i(17883);async function a(e){try{if((0,i.isCrossOrigin)(e))return t.NextResponse.json({error:"Cross-origin installs are not allowed."},{status:403});let a=await e.json().catch(()=>null),s=a?.name;if("string"!=typeof s||!s)return t.NextResponse.json({error:"Missing skill name."},{status:400});let n=await (0,r.installSkill)(s);return t.NextResponse.json({ok:!0,...n})}catch(e){return t.NextResponse.json({error:e instanceof Error?e.message:"Failed to install skill."},{status:400})}}e.s(["POST",0,a,"runtime",0,"nodejs"])},810900,e=>{"use strict";var t=e.i(747909),r=e.i(174017),i=e.i(996250),a=e.i(759756),s=e.i(561916),n=e.i(174677),o=e.i(869741),l=e.i(316795),c=e.i(487718),u=e.i(995169),p=e.i(47587),d=e.i(666012),h=e.i(570101),f=e.i(626937),m=e.i(10372),w=e.i(193695),y=e.i(509580);e.i(52474);var v=e.i(600220);let g=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/skills/install/route",pathname:"/api/skills/install",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/skills/install/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(915908),...{}}),{workAsyncStorage:x,workUnitAsyncStorage:E,serverHooks:R}=g;async function k(e,t,i){i.requestMeta&&(0,a.setRequestMeta)(e,i.requestMeta),g.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/skills/install/route";x=x.replace(/\/index$/,"")||"/";let E=await g.prepare(e,t,{srcPage:x,multiZoneDraftMode:!1});if(!E)return t.statusCode=400,t.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve()),null;let{buildId:R,deploymentId:k,params:b,nextConfig:$,parsedUrl:S,isDraftMode:C,prerenderManifest:j,routerServerContext:A,isOnDemandRevalidate:T,revalidateOnlyGenerated:_,resolvedPathname:I,clientReferenceManifest:O,serverActionsManifest:P}=E,N=(0,o.normalizeAppPath)(x),q=!!j.routes[I]&&(g.isDev||(0,y.isRouteCacheOwner)(I,g.cacheOwner,j.routes[I])),D=!!(j.dynamicRoutes[N]||q),U=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,S,!1):t.end("This page could not be found"),null);if(D&&!C){let e=j.dynamicRoutes[N];if(e&&!1===e.fallback&&!q){if($.adapterPath)return await U();throw new w.NoFallbackError}}let M=null;!D||g.isDev||C||(M="/index"===(M=I)?"/":M);let F=!0===g.isDev||!D,H=D&&!F;P&&O&&(0,n.setManifestsSingleton)({page:x,clientReferenceManifest:O,serverActionsManifest:P});let L=e.method||"GET",W=(0,s.getTracer)(),K=W.getActiveScopeSpan(),B=!!(null==A?void 0:A.isWrappedByNextServer),z=!!(0,a.getRequestMeta)(e,"minimalMode"),G=(0,a.getRequestMeta)(e,"incrementalCache")||await g.getIncrementalCache(e,$,j,z);null==G||G.resetRequestCache(),globalThis.__incrementalCache=G;let V={params:b,previewProps:j.preview,renderOpts:{experimental:{authInterrupts:!!$.experimental.authInterrupts,useCacheTimeout:$.experimental.useCacheTimeout},cacheComponents:!!$.cacheComponents,validationLevel:$.experimental.instantInsights.validationLevel,isDraftMode:C,supportsDynamicResponse:F,incrementalCache:G,hmrRefreshHash:(0,a.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:$.cacheLife,staticPageGenerationTimeout:$.staticPageGenerationTimeout,waitUntil:i.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,i,a)=>g.onRequestError(e,t,i,a,A)},sharedContext:{buildId:R,deploymentId:k}},X=new l.NodeNextRequest(e),Z=new l.NodeNextResponse(t),J=c.NextRequestAdapter.fromNodeNextRequest(X,(0,c.signalFromNodeResponse)(t)),Y=async({previousCacheEntry:r})=>{try{if(!z&&T&&_&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await g.handle(J,V);e.fetchMetrics=V.renderOpts.fetchMetrics;let s=V.renderOpts.pendingWaitUntil;s&&i.waitUntil&&(i.waitUntil(s),s=void 0);let n=V.renderOpts.collectedTags;if(!D)return await (0,d.sendResponse)(X,Z,a,s),null;{let e=await a.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(a.headers);n&&(t[m.NEXT_CACHE_TAGS_HEADER]=n),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,i=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=m.INFINITE_CACHE?!1!==r&&r>0?$.expireTime:void 0:V.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:i}}}}catch(t){throw(null==r?void 0:r.isStale)&&await g.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:T})},!1,A),t}},Q=async(a,n)=>{try{var o,l;let a=await g.handleResponse({req:e,nextConfig:$,cacheKey:M,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:j,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:_,responseGenerator:Y,waitUntil:i.waitUntil,isMinimalMode:z});if(!D)return;if((null==a||null==(o=a.value)?void 0:o.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==a||null==(l=a.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});z||t.setHeader("x-nextjs-cache",T?"REVALIDATED":a.isMiss?"MISS":a.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let s=(0,h.fromNodeOutgoingHttpHeaders)(a.value.headers);z&&D||s.delete(m.NEXT_CACHE_TAGS_HEADER),!a.cacheControl||t.getHeader("Cache-Control")||s.get("Cache-Control")||s.set("Cache-Control",(0,f.getCacheControlHeader)(a.cacheControl)),await (0,d.sendResponse)(X,Z,new Response(a.value.body,{headers:s,status:a.value.status||200}));return}catch(t){if(t instanceof w.NoFallbackError||await g.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:T})},!1,A),D)throw t;await (0,d.sendResponse)(X,Z,new Response(null,{status:500}));return}finally{(()=>{if(!a)return;let e=t.statusCode;a.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(a.setStatus({code:s.SpanStatusCode.ERROR}),a.setAttribute("error.type",e.toString()));let r=W.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let i=r.get("next.route")||N,o=`${L} ${i}`;a.setAttributes({"next.route":i,"http.route":i,"next.span_name":o}),a.updateName(o),n&&n!==a&&(n.setAttribute("http.route",i),n.updateName(o))})()}};if(B&&K)await Q(K,void 0);else{let t=W.getActiveScopeSpan();await W.withPropagatedContext(e.headers,()=>W.trace(u.BaseServerSpan.handleRequest,{spanName:`${L} ${x}`,kind:s.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},e=>Q(e,t)),void 0,!B)}}e.s(["handler",0,k,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:x,workUnitAsyncStorage:E})},"routeModule",0,g,"serverHooks",0,R,"workAsyncStorage",0,x,"workUnitAsyncStorage",0,E])},904937,e=>{"use strict";let t;var r=e.i(446786),i=e.i(814747),a=e.i(522734),s=e.i(254799);let n="EvoScientist/EvoSkills",o="main",l="skills/",c=(0,i.join)((t=process.env.EVOSCIENTIST_DATA_DIR)&&t.trim()?t.startsWith("~")?(0,i.join)((0,r.homedir)(),t.slice(1)):(0,i.resolve)(t):(0,i.join)((0,r.homedir)(),".evoscientist"),"skills"),u=[c,(0,i.join)((0,r.homedir)(),".config","evoscientist","skills")],p={Accept:"application/vnd.github+json","User-Agent":"evoscientist-webui"},d="EXPERT.md";async function h(e,t,r){try{let s=await a.promises.realpath((0,i.join)(e,t,r)),n=await a.promises.realpath(e);if(s!==n&&!s.startsWith(n+i.sep))return null;return await a.promises.readFile(s,"utf-8")}catch{return null}}function f(e){let t,{frontmatter:r}=y(e);if(!r)return!0;let i=r.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!i)return!0;let a=i[1],s=a.split("\n").find(e=>e.trim()),n=s?.match(/^[ \t]+/)?.[0]??" ",o=a.match(RegExp(`^${n}type\\s*:[ \\t]*(.*)$`,"m"));if(!o)return!0;let l=o[1].trim();if(""===l||"|"===l||">"===l)for(let e of(t=[],a.slice(a.indexOf(o[0])+o[0].length).split("\n"))){if(!e.trim())continue;let r=e.match(/^[ \t]+-[ \t]*(.+?)[ \t]*$/);if(!r||!e.startsWith(n))break;t.push(r[1])}else t=l.replace(/^\[|\]$/g,"").split(",");return t.map(e=>e.trim().replace(/^["']|["']$/g,"").toLowerCase()).filter(Boolean).includes("skill")}async function m(e){try{return(await a.promises.stat((0,i.join)(e,d))).isFile()}catch{return!1}}function w(e){return e.length<=128&&/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(e)&&!e.includes("..")}function y(e){let t=e.match(/^---[ \t]*\r?\n([\s\S]*?)\r?\n---[ \t]*(?:\r?\n|$)/);return t?{frontmatter:t[1],body:e.slice(t[0].length).trim()}:{frontmatter:null,body:e.trim()}}function v(e){let t=t=>{let r=e.match(RegExp(`^${t}\\s*:\\s*(.+?)\\s*$`,"m"));return r?r[1].replace(/^["']|["']$/g,"").trim():void 0};return{name:t("name"),description:t("description"),version:function(e){let t=e.match(/^metadata\s*:[ \t]*\n((?:[ \t]+.*(?:\n|$))*)/m);if(!t)return;let r=t[1].match(/^[ \t]+version\s*:\s*(.+?)\s*$/m);return r?r[1].replace(/^["']|["']$/g,"").trim():void 0}(e)}}function g(e){let{frontmatter:t}=y(e);return t?v(t):{}}async function x(e){for(let t of u)try{let r=await a.promises.readFile((0,i.join)(t,e,"SKILL.md"),"utf-8"),s=g(r).version;if(s)return s}catch{}}function E(e,t){return`https://raw.githubusercontent.com/${n}/${e}/${t}`}let R=/^[0-9a-f]{7,40}$/,k=null;async function b(){try{let e=await fetch(`https://api.github.com/repos/${n}/commits/${o}`,{headers:p});if(e.ok){let t=await e.json();if("string"==typeof t.sha&&R.test(t.sha))return t.sha}}catch{}return o}async function $(e=!1){if(!e&&k&&Date.now()-k.at<3e5)return{ref:k.ref,tree:k.tree};let t=await b(),r=await fetch(`https://api.github.com/repos/${n}/git/trees/${t}?recursive=1`,{headers:p});if(!r.ok)throw Error(403===r.status?"GitHub rate limit reached — try again in a minute.":`Couldn't reach the skills catalog (GitHub ${r.status}).`);let i=await r.json();if(!Array.isArray(i.tree))throw Error("Unexpected response from the skills catalog.");return k={at:Date.now(),ref:t,tree:i.tree},{ref:t,tree:i.tree}}function S(){return(0,i.join)(c,".installed.yaml")}async function C(){try{return function(e){let t={},r=null;for(let i of e.split("\n"))if(!(!i.trim()||i.trimStart().startsWith("#"))){if(/^\S/.test(i)){let e=i.match(/^(\S[^:]*?):\s*$/);(r=e?e[1].trim():null)&&(t[r]={source:""})}else if(r){let e=i.match(/^\s+([A-Za-z_]+)\s*:\s*(.+?)\s*$/);if(e){let i=e[2].replace(/^["']|["']$/g,"").trim();"source"===e[1]?t[r].source=i:"commit"===e[1]&&(t[r].commit=i)}}}for(let e of Object.keys(t))t[e].source||delete t[e];return t}(await a.promises.readFile(S(),"utf-8"))}catch{return{}}}async function j(e){let t=S(),r=`${t}.${(0,s.randomUUID)()}.tmp`;await a.promises.mkdir(c,{recursive:!0}),await a.promises.writeFile(r,function(e){let t=Object.keys(e).sort();if(0===t.length)return"{}\n";let r="";for(let i of t)r+=`${i}:
2
- `,e[i].commit&&(r+=` commit: ${e[i].commit}
3
- `),r+=` source: ${e[i].source}
4
- `;return r}(e),{mode:384}),await a.promises.rename(r,t)}async function A(e,t){let r=await C(),i=`${n}@${l}${e}`;r[e]=t?{source:i,commit:t}:{source:i},await j(r)}async function T(e){let t=await C();e in t&&(delete t[e],await j(t))}async function _(){let e=new Set;for(let t of u)try{for(let r of(await a.promises.readdir(t,{withFileTypes:!0})))r.isDirectory()&&!r.name.startsWith(".")&&e.add(r.name)}catch{}return e}async function I(e=!1){let[{ref:t,tree:r},i]=await Promise.all([$(e),_()]),a=function(e){let t=new Map;for(let r of e){if("blob"!==r.type||!r.path.startsWith(l))continue;let e=r.path.slice(l.length),i=e.indexOf("/");if(i<=0)continue;let a=e.slice(0,i);(t.get(a)??t.set(a,[]).get(a)).push(r)}return t}(r);return(await Promise.all([...a.entries()].map(async([e,r])=>{let a,s,n=e,o="",c=!0,u=r.find(t=>t.path===`${l}${e}/SKILL.md`);if(u)try{let r=await fetch(E(t,u.path),{headers:p}).then(e=>e.ok?e.text():""),i=g(r);n=i.name||e,o=i.description||"",s=i.version,c=f(r)}catch{}let h=i.has(e),m=h?await x(e):void 0,w=h&&!!s&&!!m&&function(e,t){let r=e.split(".").map(e=>parseInt(e,10)),i=t.split(".").map(e=>parseInt(e,10)),a=Math.max(r.length,i.length);for(let e=0;e<a;e+=1){let t=r[e]??0,a=i[e]??0;if(Number.isNaN(t)||Number.isNaN(a))break;if(t!==a)return t>a?1:-1}return 0}(s,m)>0;return{name:e,title:n,description:o,fileCount:r.length,installed:h,latestVersion:s,installedVersion:m,updateAvailable:w,isExpert:(a=`${l}${e}/${d}`,r.some(e=>e.path===a)),isSkill:c}}))).sort((e,t)=>e.title.localeCompare(t.title))}async function O(e){if(!w(e))throw Error("Invalid skill name.");let t=null,r=null,i=!1;for(let a of u){let s=await h(a,e,"SKILL.md");if(null!==s){t=s,i=!0,r=await h(a,e,d);break}}if(null===t){let{ref:i,tree:a}=await $(),s=async e=>{let t=await fetch(E(i,e),{headers:p});if(!t.ok)throw Error(`Failed to load skill (${t.status}).`);return t.text()},n=e=>a.some(t=>"blob"===t.type&&t.path===e),o=`${l}${e}/SKILL.md`;if(!n(o))throw Error(`Skill "${e}" was not found.`);t=await s(o);let c=`${l}${e}/${d}`;if(n(c))try{r=await s(c)}catch{}}let{frontmatter:a,body:s}=y(t),n=a?v(a):{},o=null!==a&&(null!=n.name||null!=n.description||null!=n.version);return{name:e,title:n.name||e,description:n.description||"",version:n.version,body:o?s:t.trim(),installed:i,expertBody:null===r?void 0:function(e){let{frontmatter:t,body:r}=y(e);return(null===t?e:r).trim()}(r)}}async function P(e){if(!w(e))throw Error("Invalid skill name.");let{ref:t,tree:r}=await $(),n=`${l}${e}/`,u=r.filter(e=>"blob"===e.type&&e.path.startsWith(n));if(0===u.length)throw Error(`Skill "${e}" was not found in the catalog.`);if(u.length>300)throw Error("This skill has too many files to install.");if(u.reduce((e,t)=>e+(t.size??0),0)>0x1900000)throw Error("This skill is too large to install.");let d=(0,i.resolve)(c),h=(0,i.resolve)(d,e);if(h!==(0,i.join)(d,e))throw Error("Invalid skill name.");let f=(0,i.join)(d,`.installing-${e}-${(0,s.randomUUID)()}`);try{for(let e of(await a.promises.mkdir(f,{recursive:!0}),u)){let r=e.path.slice(n.length),s=(0,i.resolve)(f,r);if(s!==f&&!s.startsWith(f+i.sep))throw Error("Invalid file path in skill.");let o=await fetch(E(t,e.path),{headers:p});if(!o.ok)throw Error(`Failed to download ${r} (${o.status}).`);let l=Buffer.from(await o.arrayBuffer());await a.promises.mkdir((0,i.dirname)(s),{recursive:!0}),await a.promises.writeFile(s,l)}await a.promises.rm(h,{recursive:!0,force:!0}),await a.promises.mkdir(d,{recursive:!0}),await a.promises.rename(f,h)}catch(e){throw await a.promises.rm(f,{recursive:!0,force:!0}).catch(()=>{}),e}try{await A(e,t!==o&&R.test(t)?t:null)}catch{}return{files:u.length}}e.s(["SKILL_DIRS",0,u,"declaresSkillType",0,f,"getCatalog",0,I,"getSkillDetail",0,O,"installSkill",0,P,"isInstalledExpert",0,m,"isValidSkillName",0,w,"recordUninstall",0,T])},17883,e=>{"use strict";var t=e.i(522734),r=e.i(446786),i=e.i(814747),a=e.i(254799);let s=(0,i.join)((0,r.homedir)(),".config","evoscientist","langgraph_dev.workspace.json");function n(e){for(let t=0;t<e.length;t+=1){let r=e.charCodeAt(t);if(r<32||127===r||r>=128&&r<=159||8232===r||8233===r)return!0}return!1}let o=new Set(["large_tool_results","conversation_history","__pycache__","node_modules","__MACOSX"]),l=[".pyc",".pyo"];function c(e){return!!(e.startsWith(".")||o.has(e))||l.some(t=>e.endsWith(t))}async function u(){let e;try{let r=JSON.parse(await t.promises.readFile(s,"utf-8")),i=r.workspace,a=r.pid;"string"==typeof i&&i.trim()&&(!("number"==typeof a&&a>0)||function(e){try{return process.kill(e,0),!0}catch(e){return"EPERM"===e.code}}(a))&&(e=i)}catch{}if(!(e||=process.env.EVOSCIENTIST_WORKSPACE_DIR))throw Error("No active EvoScientist workspace found. Start the backend with `EvoSci deploy` first.");let r=(0,i.resolve)(e);if(!(await t.promises.stat(r)).isDirectory())throw Error("The active EvoScientist workspace is not a directory.");return t.promises.realpath(r)}function p(e,t){if(n(t))throw Error("Invalid path.");let r=t.replaceAll("\\","/").replace(/^\/+/,"");if(r.split("/").some(e=>""!==e&&c(e)))throw Error("Path is not accessible.");let a=(0,i.resolve)(e,r);if(a!==e&&!a.startsWith(e+i.sep))throw Error("Path is outside the workspace.");return a}async function d(e,r){let a,s=p(e,r);try{a=await t.promises.realpath(s)}catch{throw Error("Path is not accessible.")}if(a!==e&&!a.startsWith(e+i.sep))throw Error("Path is not accessible.");let n=(0,i.relative)(e,a);if(n&&n.split(i.sep).some(e=>""!==e&&c(e)))throw Error("Path is not accessible.");return a}let h=new Set(["txt","text","md","markdown","log","csv","tsv","json","jsonl","yaml","yml","toml","xml","ini","cfg","conf","env","py","js","jsx","ts","tsx","sh","bash","zsh","r","jl","cpp","cc","c","h","hpp","java","go","rs","rb","php","swift","kt","cs","sql","tex","bib","rst","css","scss","html"]);async function f(e,r){let a;try{a=await t.promises.realpath((0,i.dirname)(r))}catch{throw Error("Path is not accessible.")}if(a!==e&&!a.startsWith(e+i.sep))throw Error("Path is not accessible.")}function m(e){let t;return h.has((t=e.lastIndexOf("."))>=0?e.slice(t+1).toLowerCase():"")}async function w(e,r,s){let n;if("string"!=typeof s)throw Error("Content must be a string.");if(Buffer.byteLength(s,"utf-8")>5242880)throw Error("This file is too large to save.");if(!m(r.replaceAll("\\","/").split("/").pop()||r))throw Error("Only text/code files can be edited.");let o=p(e,r);try{n=await t.promises.lstat(o)}catch{throw Error("Only files can be edited.")}if(n.isSymbolicLink())throw Error("Editing symlinks is not allowed.");let l=await d(e,r);if(!m((0,i.basename)(l)))throw Error("Only text/code files can be edited.");let c=await t.promises.stat(l);if(!c.isFile())throw Error("Only files can be edited.");let u=`${l}.${(0,a.randomUUID)()}.tmp`;try{await f(e,l),await t.promises.writeFile(u,s,{encoding:"utf-8",mode:511&c.mode}),await f(e,l),await t.promises.rename(u,l)}catch(e){throw await t.promises.rm(u,{force:!0}).catch(()=>{}),e}let h=await t.promises.stat(l);return{path:r.replaceAll("\\","/").replace(/^\/+/,""),size:h.size,mtime:h.mtimeMs}}async function y(e,r){await d(e,r);let i=p(e,r);if((await t.promises.lstat(i)).isDirectory())throw Error("Only files can be deleted.");await f(e,i),await t.promises.rm(i,{force:!0})}e.s(["MAX_WORKSPACE_WRITE_BYTES",0,5242880,"deleteWorkspaceFile",0,y,"getWorkspaceDir",0,u,"hasControlChar",0,n,"isCrossOrigin",0,function(e){let t=e.headers.get("host");if(!t)return!0;let r=e.headers.get("sec-fetch-site");if(r)return"same-origin"!==r&&"same-site"!==r&&"none"!==r;let i=e.headers.get("origin");if(!i)return!1;try{return new URL(i).host!==t}catch{return!0}},"isHiddenEntry",0,c,"safeResolve",0,d,"writeWorkspaceFile",0,w,"zipExcludeArgs",0,function(){let e=[".*","*/.*"];for(let t of o)e.push(`${t}/*`,`*/${t}/*`,t,`*/${t}`);for(let t of l)e.push(`*${t}`);return e.flatMap(e=>["-x",e])}])}];
5
-
6
- //# sourceMappingURL=%5Broot-of-the-server%5D__21ai51o._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[898501,e=>{"use strict";var t=e.i(89171),r=e.i(85678),a=e.i(17883);let n={"Cache-Control":"no-store"};async function o(e){try{if((0,a.isCrossOrigin)(e))return t.NextResponse.json({error:"Cross-origin access not allowed."},{status:403,headers:n});return t.NextResponse.json(await (0,r.listObservations)(),{headers:n})}catch(e){return t.NextResponse.json({error:e instanceof Error?e.message:"Failed to load observations."},{status:400,headers:n})}}e.s(["GET",0,o,"dynamic",0,"force-dynamic","runtime",0,"nodejs"])},106423,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),o=e.i(561916),s=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),h=e.i(570101),R=e.i(626937),v=e.i(10372),m=e.i(193695),g=e.i(509580);e.i(52474);var f=e.i(600220);let C=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/memory/observations/route",pathname:"/api/memory/observations",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/memory/observations/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(898501),...{}}),{workAsyncStorage:E,workUnitAsyncStorage:w,serverHooks:x}=C;async function y(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),C.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let E="/api/memory/observations/route";E=E.replace(/\/index$/,"")||"/";let w=await C.prepare(e,t,{srcPage:E,multiZoneDraftMode:!1});if(!w)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:x,deploymentId:y,params:A,nextConfig:T,parsedUrl:b,isDraftMode:N,prerenderManifest:P,routerServerContext:S,isOnDemandRevalidate:O,revalidateOnlyGenerated:_,resolvedPathname:q,clientReferenceManifest:H,serverActionsManifest:I}=w,M=(0,i.normalizeAppPath)(E),U=!!P.routes[q]&&(C.isDev||(0,g.isRouteCacheOwner)(q,C.cacheOwner,P.routes[q])),D=!!(P.dynamicRoutes[M]||U),k=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,b,!1):t.end("This page could not be found"),null);if(D&&!N){let e=P.dynamicRoutes[M];if(e&&!1===e.fallback&&!U){if(T.adapterPath)return await k();throw new m.NoFallbackError}}let j=null;!D||C.isDev||N||(j="/index"===(j=q)?"/":j);let F=!0===C.isDev||!D,K=D&&!F;I&&H&&(0,s.setManifestsSingleton)({page:E,clientReferenceManifest:H,serverActionsManifest:I});let L=e.method||"GET",$=(0,o.getTracer)(),B=$.getActiveScopeSpan(),G=!!(null==S?void 0:S.isWrappedByNextServer),V=!!(0,n.getRequestMeta)(e,"minimalMode"),X=(0,n.getRequestMeta)(e,"incrementalCache")||await C.getIncrementalCache(e,T,P,V);null==X||X.resetRequestCache(),globalThis.__incrementalCache=X;let W={params:A,previewProps:P.preview,renderOpts:{experimental:{authInterrupts:!!T.experimental.authInterrupts,useCacheTimeout:T.experimental.useCacheTimeout},cacheComponents:!!T.cacheComponents,validationLevel:T.experimental.instantInsights.validationLevel,isDraftMode:N,supportsDynamicResponse:F,incrementalCache:X,hmrRefreshHash:(0,n.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:T.cacheLife,staticPageGenerationTimeout:T.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>C.onRequestError(e,t,a,n,S)},sharedContext:{buildId:x,deploymentId:y}},z=new l.NodeNextRequest(e),Z=new l.NodeNextResponse(t),J=u.NextRequestAdapter.fromNodeNextRequest(z,(0,u.signalFromNodeResponse)(t)),Q=async({previousCacheEntry:r})=>{try{if(!V&&O&&_&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await C.handle(J,W);e.fetchMetrics=W.renderOpts.fetchMetrics;let o=W.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let s=W.renderOpts.collectedTags;if(!D)return await (0,p.sendResponse)(z,Z,n,o),null;{let e=await n.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(n.headers);s&&(t[v.NEXT_CACHE_TAGS_HEADER]=s),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==W.renderOpts.collectedRevalidate&&!(W.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&W.renderOpts.collectedRevalidate,a=void 0===W.renderOpts.collectedExpire||W.renderOpts.collectedExpire>=v.INFINITE_CACHE?!1!==r&&r>0?T.expireTime:void 0:W.renderOpts.collectedExpire;return{value:{kind:f.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await C.onRequestError(e,t,{routerKind:"App Router",routePath:E,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:O})},!1,S),t}},Y=async(n,s)=>{try{var i,l;let n=await C.handleResponse({req:e,nextConfig:T,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:P,isRoutePPREnabled:!1,isOnDemandRevalidate:O,revalidateOnlyGenerated:_,responseGenerator:Q,waitUntil:a.waitUntil,isMinimalMode:V});if(!D)return;if((null==n||null==(i=n.value)?void 0:i.kind)!==f.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==n||null==(l=n.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});V||t.setHeader("x-nextjs-cache",O?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),N&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let o=(0,h.fromNodeOutgoingHttpHeaders)(n.value.headers);V&&D||o.delete(v.NEXT_CACHE_TAGS_HEADER),!n.cacheControl||t.getHeader("Cache-Control")||o.get("Cache-Control")||o.set("Cache-Control",(0,R.getCacheControlHeader)(n.cacheControl)),await (0,p.sendResponse)(z,Z,new Response(n.value.body,{headers:o,status:n.value.status||200}));return}catch(t){if(t instanceof m.NoFallbackError||await C.onRequestError(e,t,{routerKind:"App Router",routePath:M,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:O})},!1,S),D)throw t;await (0,p.sendResponse)(z,Z,new Response(null,{status:500}));return}finally{(()=>{if(!n)return;let e=t.statusCode;n.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(n.setStatus({code:o.SpanStatusCode.ERROR}),n.setAttribute("error.type",e.toString()));let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route")||M,i=`${L} ${a}`;n.setAttributes({"next.route":a,"http.route":a,"next.span_name":i}),n.updateName(i),s&&s!==n&&(s.setAttribute("http.route",a),s.updateName(i))})()}};if(G&&B)await Y(B,void 0);else{let t=$.getActiveScopeSpan();await $.withPropagatedContext(e.headers,()=>$.trace(d.BaseServerSpan.handleRequest,{spanName:`${L} ${E}`,kind:o.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},e=>Y(e,t)),void 0,!G)}}e.s(["handler",0,y,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:E,workUnitAsyncStorage:w})},"routeModule",0,C,"serverHooks",0,x,"workAsyncStorage",0,E,"workUnitAsyncStorage",0,w])}];
2
-
3
- //# sourceMappingURL=_154zcbx._.js.map