vercel 59.14.0 → 59.15.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 (459) hide show
  1. package/dist/chunks/add-7XFD2OHW.js +8 -0
  2. package/dist/chunks/add-HZC7AUBY.js +8 -0
  3. package/dist/chunks/add-PYUNJZ6K.js +8 -0
  4. package/dist/chunks/build-EFKQ6BND.js +7 -0
  5. package/dist/chunks/chunk-2B2MN3U5.js +8 -0
  6. package/dist/chunks/chunk-2H77IRPI.js +9 -0
  7. package/dist/chunks/chunk-2I64AYHG.js +7 -0
  8. package/dist/chunks/chunk-2PPXY24N.js +20 -0
  9. package/dist/chunks/chunk-2S6PE6GB.js +7 -0
  10. package/dist/chunks/{chunk-PIMIVJYK.js → chunk-3FMJYJUR.js} +7 -32
  11. package/dist/chunks/chunk-3IAQUNQH.js +7 -0
  12. package/dist/chunks/chunk-3QHJYVCY.js +7 -0
  13. package/dist/chunks/chunk-3QT7VOE3.js +7 -0
  14. package/dist/chunks/chunk-3TXEXPUW.js +7 -0
  15. package/dist/chunks/chunk-4MZK6JT6.js +7 -0
  16. package/dist/chunks/chunk-4NE5IQ25.js +7 -0
  17. package/dist/chunks/chunk-4PNSSS3L.js +7 -0
  18. package/dist/chunks/chunk-4QX77CP7.js +7 -0
  19. package/dist/chunks/chunk-57GHYR4Y.js +25 -0
  20. package/dist/chunks/chunk-5QQNYN4N.js +7 -0
  21. package/dist/chunks/chunk-5XJNPXQK.js +7 -0
  22. package/dist/chunks/chunk-6L236MNA.js +7 -0
  23. package/dist/chunks/chunk-6PFC3KWQ.js +7 -0
  24. package/dist/chunks/chunk-6QKS6QK7.js +7 -0
  25. package/dist/chunks/chunk-6RIQPTJA.js +8 -0
  26. package/dist/chunks/chunk-6TAQ6OWD.js +13 -0
  27. package/dist/chunks/chunk-6YAADRQB.js +9 -0
  28. package/dist/chunks/chunk-75CPY75D.js +15 -0
  29. package/dist/chunks/chunk-7HL2RPUO.js +7 -0
  30. package/dist/chunks/chunk-7PNYOSDU.js +9 -0
  31. package/dist/chunks/chunk-7R5FEXZ5.js +7 -0
  32. package/dist/chunks/chunk-7RMCBXBB.js +62 -0
  33. package/dist/chunks/chunk-7RR7MIMT.js +7 -0
  34. package/dist/chunks/chunk-7T6TL3GQ.js +7 -0
  35. package/dist/chunks/chunk-ADUYPK2G.js +13 -0
  36. package/dist/chunks/chunk-AFPOIDM5.js +7 -0
  37. package/dist/chunks/chunk-AM46JVVN.js +7 -0
  38. package/dist/chunks/chunk-AVSPFBLM.js +7 -0
  39. package/dist/chunks/chunk-B4ATVYZW.js +7 -0
  40. package/dist/chunks/chunk-BATE73HA.js +9 -0
  41. package/dist/chunks/{chunk-64IF634X.js → chunk-BRK4OB4B.js} +1 -12
  42. package/dist/chunks/chunk-BVH2AEFE.js +7 -0
  43. package/dist/chunks/chunk-CN2QZO4U.js +7 -0
  44. package/dist/chunks/chunk-COQGD2EI.js +8 -0
  45. package/dist/chunks/chunk-CUAIEGNE.js +7 -0
  46. package/dist/chunks/chunk-CVKB54WW.js +7 -0
  47. package/dist/chunks/{chunk-A3NYPUKZ.js → chunk-CZSOZKHX.js} +1 -11
  48. package/dist/chunks/chunk-D4MW3RDW.js +7 -0
  49. package/dist/chunks/chunk-DFVNL5ML.js +7 -0
  50. package/dist/chunks/chunk-EE3FVJLV.js +16 -0
  51. package/dist/chunks/chunk-EGMJRU5P.js +28 -0
  52. package/dist/chunks/chunk-ENBTTYJR.js +7 -0
  53. package/dist/chunks/chunk-ENS6KX2F.js +7 -0
  54. package/dist/chunks/chunk-EOBD4ZEG.js +8 -0
  55. package/dist/chunks/chunk-EOCTK4EA.js +7 -0
  56. package/dist/chunks/chunk-EQ52F4LH.js +7 -0
  57. package/dist/chunks/chunk-ETV3C2CV.js +7 -0
  58. package/dist/chunks/chunk-EVZRQGNK.js +7 -0
  59. package/dist/chunks/chunk-F2ZWW2IO.js +8 -0
  60. package/dist/chunks/chunk-FAW6NBLQ.js +7 -0
  61. package/dist/chunks/chunk-FI772UVH.js +7 -0
  62. package/dist/chunks/chunk-FKCOBJFH.js +7 -0
  63. package/dist/chunks/chunk-FVGESGJI.js +45 -0
  64. package/dist/chunks/chunk-G5FC5ZCO.js +9 -0
  65. package/dist/chunks/chunk-G6CTAHKY.js +39 -0
  66. package/dist/chunks/chunk-G7Y77DFH.js +7 -0
  67. package/dist/chunks/chunk-GHAY4PSD.js +7 -0
  68. package/dist/chunks/chunk-GHM7V3GG.js +7 -0
  69. package/dist/chunks/chunk-GRNTLNC7.js +7 -0
  70. package/dist/chunks/chunk-GTRGQIY2.js +10 -0
  71. package/dist/chunks/chunk-GU6VIFR5.js +7 -0
  72. package/dist/chunks/{constants-YMCRE6IG.js → chunk-GZNDA6SV.js} +2 -9
  73. package/dist/chunks/chunk-HBFPLBTX.js +10 -0
  74. package/dist/chunks/chunk-HEGJZJO7.js +7 -0
  75. package/dist/chunks/chunk-HSJ6AHWG.js +12 -0
  76. package/dist/chunks/chunk-HTC6KO2B.js +7 -0
  77. package/dist/chunks/chunk-HVUHCRZB.js +18 -0
  78. package/dist/chunks/chunk-HZZ5L472.js +7 -0
  79. package/dist/chunks/chunk-IVSSTHB6.js +7 -0
  80. package/dist/chunks/chunk-IVWPQYIH.js +7 -0
  81. package/dist/chunks/chunk-J3U3L45Y.js +7 -0
  82. package/dist/chunks/chunk-JAJW3P42.js +7 -0
  83. package/dist/chunks/chunk-JEIMW3CO.js +7 -0
  84. package/dist/chunks/chunk-JIYY3B4C.js +7 -0
  85. package/dist/chunks/chunk-JKTQV2QJ.js +7 -0
  86. package/dist/chunks/chunk-JTVVBRW7.js +7 -0
  87. package/dist/chunks/chunk-JYAUUIR4.js +7 -0
  88. package/dist/chunks/chunk-JZRMH5UA.js +7 -0
  89. package/dist/chunks/chunk-K2RAW5DI.js +10 -0
  90. package/dist/chunks/chunk-K3KJZLBD.js +7 -0
  91. package/dist/chunks/chunk-KK4AJES5.js +36 -0
  92. package/dist/chunks/chunk-KKS7XWEX.js +7 -0
  93. package/dist/chunks/chunk-KNEWCUWF.js +14 -0
  94. package/dist/chunks/chunk-KO733OJG.js +9 -0
  95. package/dist/chunks/chunk-L243RUIR.js +19 -0
  96. package/dist/chunks/chunk-L3JDEHCQ.js +7 -0
  97. package/dist/chunks/chunk-LDM3SQAU.js +13 -0
  98. package/dist/chunks/chunk-LNPMDXBJ.js +7 -0
  99. package/dist/chunks/chunk-M2W3HKV3.js +23 -0
  100. package/dist/chunks/chunk-M2XARQBF.js +9 -0
  101. package/dist/chunks/chunk-M5AV545M.js +7 -0
  102. package/dist/chunks/chunk-MAVRGZQP.js +7 -0
  103. package/dist/chunks/chunk-MBL6TXEJ.js +7 -0
  104. package/dist/chunks/chunk-MEAY2K5Z.js +11 -0
  105. package/dist/chunks/chunk-MY4MONOH.js +7 -0
  106. package/dist/chunks/chunk-N3N5UHIL.js +7 -0
  107. package/dist/chunks/chunk-N3ZZ7FHQ.js +7 -0
  108. package/dist/chunks/chunk-N6CNMMSZ.js +7 -0
  109. package/dist/chunks/chunk-NBVY237X.js +7 -0
  110. package/dist/chunks/chunk-NGNOUPWS.js +25 -0
  111. package/dist/chunks/chunk-NHTF332K.js +7 -0
  112. package/dist/chunks/chunk-NNP5NITU.js +15 -0
  113. package/dist/chunks/chunk-NS4FH2TY.js +11 -0
  114. package/dist/chunks/chunk-NUGLE4QY.js +11 -0
  115. package/dist/chunks/chunk-NWFHHUKZ.js +7 -0
  116. package/dist/chunks/chunk-O7G3CZ42.js +7 -0
  117. package/dist/chunks/chunk-OD6RZ3XZ.js +8 -0
  118. package/dist/chunks/chunk-OHDEHZLX.js +7 -0
  119. package/dist/chunks/chunk-OK3S6KFX.js +16 -0
  120. package/dist/chunks/chunk-OKZDOANA.js +23 -0
  121. package/dist/chunks/chunk-OSCCYU74.js +7 -0
  122. package/dist/chunks/chunk-OUHPDA7Q.js +7 -0
  123. package/dist/chunks/chunk-P2O5DOYE.js +7 -0
  124. package/dist/chunks/chunk-PHW54NU5.js +13 -0
  125. package/dist/chunks/chunk-PPCFQQSU.js +7 -0
  126. package/dist/chunks/chunk-QGIGNMII.js +8 -0
  127. package/dist/chunks/chunk-QGIQK47P.js +7 -0
  128. package/dist/chunks/chunk-QHJLRTVY.js +7 -0
  129. package/dist/chunks/{chunk-2473DUBR.js → chunk-QR7QPUFN.js} +1 -9
  130. package/dist/chunks/chunk-QTKJC2O5.js +7 -0
  131. package/dist/chunks/chunk-R2TGGVCT.js +19 -0
  132. package/dist/chunks/chunk-RAIBQIKB.js +7 -0
  133. package/dist/chunks/chunk-RCTYVKM5.js +16 -0
  134. package/dist/chunks/chunk-RKAUVPOQ.js +86 -0
  135. package/dist/chunks/chunk-S5CEIACD.js +7 -0
  136. package/dist/chunks/chunk-SGWVKRSR.js +8 -0
  137. package/dist/chunks/chunk-SOJCELXH.js +7 -0
  138. package/dist/chunks/chunk-SXUEGVWB.js +7 -0
  139. package/dist/chunks/{chunk-GGPE5377.js → chunk-T3GQAMBJ.js} +1 -9
  140. package/dist/chunks/chunk-T52FMXWC.js +7 -0
  141. package/dist/chunks/chunk-TG2RCYTH.js +7 -0
  142. package/dist/chunks/chunk-TJCIHDPZ.js +9 -0
  143. package/dist/chunks/chunk-TKBXN4H3.js +9 -0
  144. package/dist/chunks/chunk-TRTEXGVN.js +7 -0
  145. package/dist/chunks/chunk-TXELFFNK.js +15 -0
  146. package/dist/chunks/chunk-U56NHYAH.js +7 -0
  147. package/dist/chunks/chunk-U7KCDTCH.js +12 -0
  148. package/dist/chunks/chunk-UETTIYUQ.js +8 -0
  149. package/dist/chunks/chunk-UGMZQZJE.js +24 -0
  150. package/dist/chunks/chunk-ULLWCOYC.js +7 -0
  151. package/dist/chunks/chunk-UXTHEQVJ.js +21 -0
  152. package/dist/chunks/chunk-VLZ47RWM.js +44 -0
  153. package/dist/chunks/chunk-WKZ6JSGZ.js +7 -0
  154. package/dist/chunks/chunk-WPS6JZF6.js +7 -0
  155. package/dist/chunks/chunk-WRILLB46.js +7 -0
  156. package/dist/chunks/chunk-WUZD4KBL.js +7 -0
  157. package/dist/chunks/chunk-XCJDGQO7.js +7 -0
  158. package/dist/chunks/{pkg-56KRLZ5K.js → chunk-XD2LZRBS.js} +1 -7
  159. package/dist/chunks/chunk-XFVGX5HG.js +7 -0
  160. package/dist/chunks/chunk-XHOGOH6N.js +7 -0
  161. package/dist/chunks/{update-route-version-E3V47KNI.js → chunk-XPXOV5UO.js} +1 -7
  162. package/dist/chunks/chunk-XQ73QIQ3.js +7 -0
  163. package/dist/chunks/chunk-XSVBYDYI.js +8 -0
  164. package/dist/chunks/chunk-YKZLKOOD.js +12 -0
  165. package/dist/chunks/chunk-YMVDWVMO.js +7 -0
  166. package/dist/chunks/chunk-YPTLSODC.js +7 -0
  167. package/dist/chunks/chunk-YV6CTDHR.js +7 -0
  168. package/dist/chunks/chunk-Z6Y55QJW.js +23 -0
  169. package/dist/chunks/chunk-ZDX75YNZ.js +7 -0
  170. package/dist/chunks/chunk-ZIPVX7LD.js +7 -0
  171. package/dist/chunks/chunk-ZKYS7EAB.js +7 -0
  172. package/dist/chunks/chunk-ZT6KDLLY.js +20 -0
  173. package/dist/chunks/chunk-ZXE4XYIV.js +7 -0
  174. package/dist/chunks/chunk-ZZQRMRWD.js +20 -0
  175. package/dist/chunks/cjs-GOQHXIHX.js +54 -0
  176. package/dist/chunks/clear-5NQAVWIF.js +8 -0
  177. package/dist/chunks/compile-vercel-config-6J2XUFRK.js +7 -0
  178. package/dist/chunks/config-CKYRXZXL.js +7 -0
  179. package/dist/chunks/config-VNUY4RJ4.js +8 -0
  180. package/dist/chunks/connect-git-provider-GIU5WZ52.js +7 -0
  181. package/dist/chunks/constants-G4UYVLOF.js +7 -0
  182. package/dist/chunks/create-project-SRQGD4JY.js +7 -0
  183. package/dist/chunks/delete-GTXXCSKQ.js +10 -0
  184. package/dist/chunks/delete-HRJEO4MI.js +9 -0
  185. package/dist/chunks/detect-projects-2GNCZ4CS.js +7 -0
  186. package/dist/chunks/detect-services-GHILEGNU.js +7 -0
  187. package/dist/chunks/disable-RWCRVG5O.js +7 -0
  188. package/dist/chunks/discard-SHFIYCJU.js +14 -0
  189. package/dist/chunks/edit-DMO3NSO2.js +9 -0
  190. package/dist/chunks/edit-EVQI2RSS.js +8 -0
  191. package/dist/chunks/enable-AWDU6STD.js +7 -0
  192. package/dist/chunks/esm-7HVUFWMN.js +7 -0
  193. package/dist/chunks/esm-BZBEM7YA.js +7 -0
  194. package/dist/chunks/esm-CXICLFA3.js +9 -0
  195. package/dist/chunks/esm-HDEHVK7I.js +9 -0
  196. package/dist/chunks/esm-NQRLKALI.js +20 -0
  197. package/dist/chunks/esm-SZZI53W7.js +7 -0
  198. package/dist/chunks/esm-WGJFGCLK.js +7 -0
  199. package/dist/chunks/exec-4AISDHUV.js +16372 -0
  200. package/dist/chunks/export-IQKTA4RS.js +19 -0
  201. package/dist/chunks/fetch-proxy-AEAWC6MD.js +7 -0
  202. package/dist/chunks/future-E2FHKPJN.js +7 -0
  203. package/dist/chunks/generate-cert-for-deploy-VKOWC4PZ.js +7 -0
  204. package/dist/chunks/image-LDFYNOCA.js +7 -0
  205. package/dist/chunks/import-builders-P7CXSX2D.js +7 -0
  206. package/dist/chunks/inspect-3N47ODIH.js +15 -0
  207. package/dist/chunks/inspect-53SGDDAH.js +20 -0
  208. package/dist/chunks/inspect-5INZDUQS.js +19 -0
  209. package/dist/chunks/inspect-WMT2M335.js +9 -0
  210. package/dist/chunks/inspect-Y6BUCOUV.js +13 -0
  211. package/dist/chunks/list-BIAPHKFM.js +11 -0
  212. package/dist/chunks/list-DMOCRRSE.js +16 -0
  213. package/dist/chunks/list-K5J7OULR.js +10 -0
  214. package/dist/chunks/login-DEAEVUHM.js +7 -0
  215. package/dist/chunks/login-SRVNHI4Y.js +9 -0
  216. package/dist/chunks/logs-GK7CJBYY.js +7 -0
  217. package/dist/chunks/ls-7ZX6DCJW.js +12 -0
  218. package/dist/chunks/ls-AJWN5ZR4.js +12 -0
  219. package/dist/chunks/ls-BFJWCRLZ.js +12 -0
  220. package/dist/chunks/ls-KGIE6HCO.js +12 -0
  221. package/dist/chunks/ls-UVKTHBTE.js +8 -0
  222. package/dist/chunks/ls-WEG45IOC.js +8 -0
  223. package/dist/chunks/native-self-update-KOJVRMHR.js +7 -0
  224. package/dist/chunks/open-OEWPI5G6.js +7 -0
  225. package/dist/chunks/openapi-MO5HYMHR.js +7 -0
  226. package/dist/chunks/permissions-EPQBQFE3.js +7 -0
  227. package/dist/chunks/pkg-YFU67U7I.js +7 -0
  228. package/dist/chunks/prompt-missing-credentials-IUHLYSQU.js +7 -0
  229. package/dist/chunks/publish-JG7MEPWT.js +15 -0
  230. package/dist/chunks/pull-MRKXG6TO.js +7 -0
  231. package/dist/chunks/purchase-domain-if-available-O5ARXEZ5.js +7 -0
  232. package/dist/chunks/push-XOXJDFYO.js +7 -0
  233. package/dist/chunks/query-AL7C6WV2.js +12 -0
  234. package/dist/chunks/reauthenticate-SH4XR7NH.js +7 -0
  235. package/dist/chunks/reorder-5DMRFDBY.js +10 -0
  236. package/dist/chunks/reply-WSRNZWFD.js +9 -0
  237. package/dist/chunks/repo-info-to-url-SK3VX6UL.js +7 -0
  238. package/dist/chunks/resolve-YJUXQVOZ.js +12 -0
  239. package/dist/chunks/resolve-deployment-framework-preset-XF3NJIDS.js +7 -0
  240. package/dist/chunks/restore-QT3DBGKU.js +16 -0
  241. package/dist/chunks/rm-MHPIUEZ5.js +8 -0
  242. package/dist/chunks/rm-MVZFU6RG.js +8 -0
  243. package/dist/chunks/rm-PXR4J2US.js +8 -0
  244. package/dist/chunks/rm-WB2AIP3N.js +8 -0
  245. package/dist/chunks/rm-XRP6MRUT.js +8 -0
  246. package/dist/chunks/routes-5DERZV5M.js +7 -0
  247. package/dist/chunks/rule-inspect-TT3DRGCS.js +8 -0
  248. package/dist/chunks/rules-B5GW4KJH.js +7 -0
  249. package/dist/chunks/schema-JY5QTZOG.js +14 -0
  250. package/dist/chunks/schema-KCNKVFT3.js +44 -0
  251. package/dist/chunks/select-org-KSCYSESV.js +7 -0
  252. package/dist/chunks/set-7BANEWEL.js +7 -0
  253. package/dist/chunks/setup-and-link-ZAV3EFGC.js +7 -0
  254. package/dist/chunks/slugify-O5DBATYT.js +7 -0
  255. package/dist/chunks/stamp-OX4YO3KY.js +7 -0
  256. package/dist/chunks/tags-VZR66NUC.js +7 -0
  257. package/dist/chunks/types-LRXQEDYI.js +14 -0
  258. package/dist/chunks/update-RBFNNSWE.js +8 -0
  259. package/dist/chunks/update-route-version-XZAFPQJC.js +7 -0
  260. package/dist/chunks/utils-B5ZTMQKY.js +58 -0
  261. package/dist/chunks/vlt-builder-importer-YVCYYRVV.js +11 -0
  262. package/dist/commands/build/index.js +24 -4925
  263. package/dist/commands/deploy/index.js +43 -2875
  264. package/dist/commands/dev/index.js +56 -23857
  265. package/dist/commands/env/index.js +26 -3411
  266. package/dist/commands/link/index.js +4 -284
  267. package/dist/commands/list/index.js +6 -566
  268. package/dist/commands-bulk.js +1187 -87691
  269. package/dist/help.js +1 -8
  270. package/dist/index.js +19 -2591
  271. package/dist/version.mjs +1 -1
  272. package/package.json +50 -51
  273. package/dist/chunks/add-EQZRT4XL.js +0 -221
  274. package/dist/chunks/add-KMDROZC3.js +0 -196
  275. package/dist/chunks/add-QPJ3XMBV.js +0 -145
  276. package/dist/chunks/build-W4HPTAOB.js +0 -251
  277. package/dist/chunks/chunk-26CU4Q3C.js +0 -598
  278. package/dist/chunks/chunk-2HSQ7YUK.js +0 -93
  279. package/dist/chunks/chunk-2JIX6UMI.js +0 -4626
  280. package/dist/chunks/chunk-2LCFOK66.js +0 -1536
  281. package/dist/chunks/chunk-332LMJLZ.js +0 -16014
  282. package/dist/chunks/chunk-3HZLXCVL.js +0 -137
  283. package/dist/chunks/chunk-3VM7HWF6.js +0 -104
  284. package/dist/chunks/chunk-3ZE5CFVM.js +0 -346
  285. package/dist/chunks/chunk-4IALDGB7.js +0 -22
  286. package/dist/chunks/chunk-4KD5BYHB.js +0 -127
  287. package/dist/chunks/chunk-4TUMNBEE.js +0 -231
  288. package/dist/chunks/chunk-4WG2MYCI.js +0 -163
  289. package/dist/chunks/chunk-57RHXXXG.js +0 -150
  290. package/dist/chunks/chunk-5AJPMLDV.js +0 -28
  291. package/dist/chunks/chunk-5EIV6LPQ.js +0 -305
  292. package/dist/chunks/chunk-5NF5HOBJ.js +0 -1854
  293. package/dist/chunks/chunk-653QRQAD.js +0 -417
  294. package/dist/chunks/chunk-67CRVWDF.js +0 -81
  295. package/dist/chunks/chunk-6E6KPBXY.js +0 -43
  296. package/dist/chunks/chunk-75VENWDN.js +0 -1892
  297. package/dist/chunks/chunk-7MRDIPJY.js +0 -107
  298. package/dist/chunks/chunk-7NRNFV77.js +0 -875
  299. package/dist/chunks/chunk-7Q45OKWR.js +0 -149
  300. package/dist/chunks/chunk-AHU7WNL2.js +0 -24
  301. package/dist/chunks/chunk-AINIBIP4.js +0 -39
  302. package/dist/chunks/chunk-AJ5HUOWB.js +0 -14059
  303. package/dist/chunks/chunk-AKLTIZCU.js +0 -46
  304. package/dist/chunks/chunk-AQ6P3IGG.js +0 -49
  305. package/dist/chunks/chunk-B5NH7SLK.js +0 -324
  306. package/dist/chunks/chunk-B5XLQKHI.js +0 -849
  307. package/dist/chunks/chunk-BEQV3X2L.js +0 -86
  308. package/dist/chunks/chunk-CAHP7UGE.js +0 -79
  309. package/dist/chunks/chunk-CFDDM4TX.js +0 -13618
  310. package/dist/chunks/chunk-CJV7J7B5.js +0 -314
  311. package/dist/chunks/chunk-CV5YC2EN.js +0 -867
  312. package/dist/chunks/chunk-CXFY6A6W.js +0 -255
  313. package/dist/chunks/chunk-D5SMZXVO.js +0 -233
  314. package/dist/chunks/chunk-E336ZXPP.js +0 -43
  315. package/dist/chunks/chunk-EDMW7SBH.js +0 -246
  316. package/dist/chunks/chunk-EFYMIIER.js +0 -40
  317. package/dist/chunks/chunk-EKPSCRJZ.js +0 -26
  318. package/dist/chunks/chunk-EOZFDJSY.js +0 -18
  319. package/dist/chunks/chunk-EWBCSDTM.js +0 -1708
  320. package/dist/chunks/chunk-EZKW5YJ2.js +0 -177
  321. package/dist/chunks/chunk-F2QLCXCF.js +0 -2399
  322. package/dist/chunks/chunk-FGDKMNEN.js +0 -21
  323. package/dist/chunks/chunk-FRVG4OW3.js +0 -7438
  324. package/dist/chunks/chunk-FVF4UHDM.js +0 -1288
  325. package/dist/chunks/chunk-G5FBSUL4.js +0 -822
  326. package/dist/chunks/chunk-GDOUDU6O.js +0 -74
  327. package/dist/chunks/chunk-GGP5R3FU.js +0 -129
  328. package/dist/chunks/chunk-GVNCVKCI.js +0 -68
  329. package/dist/chunks/chunk-GY5I4AYD.js +0 -122
  330. package/dist/chunks/chunk-GZLPFESR.js +0 -48
  331. package/dist/chunks/chunk-HB4UKFDO.js +0 -1295
  332. package/dist/chunks/chunk-HD4DR3DA.js +0 -818
  333. package/dist/chunks/chunk-HKHXKSXQ.js +0 -152
  334. package/dist/chunks/chunk-HM24ZWQL.js +0 -174
  335. package/dist/chunks/chunk-HRXRELD3.js +0 -338
  336. package/dist/chunks/chunk-IB5L4LKZ.js +0 -1082
  337. package/dist/chunks/chunk-IIMSID24.js +0 -104
  338. package/dist/chunks/chunk-J7JKZM4T.js +0 -58
  339. package/dist/chunks/chunk-JC2O346E.js +0 -137
  340. package/dist/chunks/chunk-JSD4EZL3.js +0 -34
  341. package/dist/chunks/chunk-JZXJZX7O.js +0 -257
  342. package/dist/chunks/chunk-K3RED3VO.js +0 -566
  343. package/dist/chunks/chunk-KFWQ3EFH.js +0 -151
  344. package/dist/chunks/chunk-KW7BS25T.js +0 -466
  345. package/dist/chunks/chunk-KXDWXXJH.js +0 -70
  346. package/dist/chunks/chunk-LERVNZTD.js +0 -90
  347. package/dist/chunks/chunk-LYAAQDNS.js +0 -242
  348. package/dist/chunks/chunk-M5I6INNF.js +0 -61
  349. package/dist/chunks/chunk-N6HP5BLI.js +0 -18190
  350. package/dist/chunks/chunk-ND5CF2H3.js +0 -53
  351. package/dist/chunks/chunk-NFU4XJIR.js +0 -120
  352. package/dist/chunks/chunk-NW34PW6V.js +0 -1772
  353. package/dist/chunks/chunk-OAMU5QO6.js +0 -18
  354. package/dist/chunks/chunk-OCIZ6ZYA.js +0 -253
  355. package/dist/chunks/chunk-ORQZKIIB.js +0 -2914
  356. package/dist/chunks/chunk-P3SKP5WM.js +0 -27
  357. package/dist/chunks/chunk-P4QNYOFB.js +0 -96
  358. package/dist/chunks/chunk-P7VSBDR4.js +0 -827
  359. package/dist/chunks/chunk-PEC3CQSK.js +0 -90
  360. package/dist/chunks/chunk-PMSMUMUO.js +0 -30
  361. package/dist/chunks/chunk-PNGVSHR3.js +0 -40
  362. package/dist/chunks/chunk-POOO7W47.js +0 -916
  363. package/dist/chunks/chunk-PRWJUY5U.js +0 -848
  364. package/dist/chunks/chunk-Q2DGFCO7.js +0 -579
  365. package/dist/chunks/chunk-RBF2NPUP.js +0 -577
  366. package/dist/chunks/chunk-RBIFXFZX.js +0 -52
  367. package/dist/chunks/chunk-RDTRWLWB.js +0 -11441
  368. package/dist/chunks/chunk-RN6V5ODW.js +0 -114
  369. package/dist/chunks/chunk-RNSMTWA6.js +0 -122
  370. package/dist/chunks/chunk-RTJASENB.js +0 -59
  371. package/dist/chunks/chunk-RVBZ64EQ.js +0 -52
  372. package/dist/chunks/chunk-S7KYDPEM.js +0 -1564
  373. package/dist/chunks/chunk-SLPSPYVR.js +0 -334
  374. package/dist/chunks/chunk-SM3F3PYJ.js +0 -522
  375. package/dist/chunks/chunk-TO7QZGYK.js +0 -105
  376. package/dist/chunks/chunk-TSBUHSN7.js +0 -3495
  377. package/dist/chunks/chunk-TSFWMUCY.js +0 -506
  378. package/dist/chunks/chunk-TZ2YI2VH.js +0 -87
  379. package/dist/chunks/chunk-UG2WOB5L.js +0 -150
  380. package/dist/chunks/chunk-UNKHOYMF.js +0 -559
  381. package/dist/chunks/chunk-UOVWUSLG.js +0 -2099
  382. package/dist/chunks/chunk-V4RMJKQP.js +0 -36
  383. package/dist/chunks/chunk-VGIMO3ZK.js +0 -17
  384. package/dist/chunks/chunk-VGKSIKCC.js +0 -92
  385. package/dist/chunks/chunk-VP5Y3SZG.js +0 -106
  386. package/dist/chunks/chunk-VXYGCOKL.js +0 -28
  387. package/dist/chunks/chunk-W7FGI2GZ.js +0 -233
  388. package/dist/chunks/chunk-WGGABYO5.js +0 -31
  389. package/dist/chunks/chunk-XDGOOW3K.js +0 -60
  390. package/dist/chunks/chunk-XFF5TGRA.js +0 -303
  391. package/dist/chunks/chunk-XNIZGCN5.js +0 -58
  392. package/dist/chunks/chunk-XPJLPUKO.js +0 -117
  393. package/dist/chunks/chunk-XUAWTW4W.js +0 -467
  394. package/dist/chunks/chunk-YPQSDAEW.js +0 -29
  395. package/dist/chunks/chunk-YS76T533.js +0 -270
  396. package/dist/chunks/chunk-ZDU2NODC.js +0 -104
  397. package/dist/chunks/chunk-ZW6HETRE.js +0 -97
  398. package/dist/chunks/cjs-DV4RM7XU.js +0 -20743
  399. package/dist/chunks/clear-4IACMLFU.js +0 -141
  400. package/dist/chunks/compile-vercel-config-PQQ3OCLV.js +0 -33
  401. package/dist/chunks/config-BQQKMQBP.js +0 -168
  402. package/dist/chunks/config-OCPNHXQL.js +0 -127
  403. package/dist/chunks/delete-HRKIYPCO.js +0 -159
  404. package/dist/chunks/delete-P2UL3KTU.js +0 -226
  405. package/dist/chunks/detect-projects-ODNU4PK2.js +0 -18
  406. package/dist/chunks/detect-services-U7QGT7VO.js +0 -40
  407. package/dist/chunks/disable-3NYMICQ3.js +0 -198
  408. package/dist/chunks/discard-RNVEJUK3.js +0 -145
  409. package/dist/chunks/edit-63S2RQHR.js +0 -162
  410. package/dist/chunks/edit-CTENFZ7H.js +0 -647
  411. package/dist/chunks/enable-WILWXAHV.js +0 -204
  412. package/dist/chunks/exec-4IPHZ55G.js +0 -1291
  413. package/dist/chunks/export-YHGV3EPK.js +0 -177
  414. package/dist/chunks/fetch-proxy-R3JZNXBZ.js +0 -99
  415. package/dist/chunks/image-MWKS2YMB.js +0 -75
  416. package/dist/chunks/import-builders-H55X5VYD.js +0 -39
  417. package/dist/chunks/inspect-JTJMK6TO.js +0 -596
  418. package/dist/chunks/inspect-KBIPLMGR.js +0 -216
  419. package/dist/chunks/inspect-OP26FDBY.js +0 -171
  420. package/dist/chunks/inspect-SW4UMWTB.js +0 -175
  421. package/dist/chunks/inspect-WPLZPVBO.js +0 -145
  422. package/dist/chunks/list-HE7DWAWH.js +0 -387
  423. package/dist/chunks/list-OUG7WCT7.js +0 -404
  424. package/dist/chunks/list-QUSEURJZ.js +0 -426
  425. package/dist/chunks/login-MIIQJVF3.js +0 -233
  426. package/dist/chunks/ls-24N3DUK4.js +0 -183
  427. package/dist/chunks/ls-3Y7KEFKT.js +0 -175
  428. package/dist/chunks/ls-75F5HIJ5.js +0 -188
  429. package/dist/chunks/ls-REN6X2X5.js +0 -204
  430. package/dist/chunks/ls-W4STUDXK.js +0 -223
  431. package/dist/chunks/ls-Z4CTSD6C.js +0 -210
  432. package/dist/chunks/open-ARMCLPBK.js +0 -116
  433. package/dist/chunks/permissions-JKI67F62.js +0 -99
  434. package/dist/chunks/publish-SMSQ7OX2.js +0 -155
  435. package/dist/chunks/pull-4QZJZELD.js +0 -45
  436. package/dist/chunks/push-T6IYQY2J.js +0 -191
  437. package/dist/chunks/query-CP3JK5LW.js +0 -725
  438. package/dist/chunks/reorder-RAWKFGLV.js +0 -412
  439. package/dist/chunks/reply-235UHUD4.js +0 -176
  440. package/dist/chunks/resolve-5KCLN7QV.js +0 -237
  441. package/dist/chunks/resolve-deployment-framework-preset-NPE6RLV3.js +0 -36
  442. package/dist/chunks/restore-D24WAUAN.js +0 -252
  443. package/dist/chunks/rm-DBQDXSOC.js +0 -162
  444. package/dist/chunks/rm-G5INO77R.js +0 -148
  445. package/dist/chunks/rm-NLKSEKZ5.js +0 -195
  446. package/dist/chunks/rm-QV76CJA4.js +0 -322
  447. package/dist/chunks/rm-TZ4PDDUK.js +0 -147
  448. package/dist/chunks/routes-QVMBXOSX.js +0 -24
  449. package/dist/chunks/rule-inspect-76MC7I2D.js +0 -123
  450. package/dist/chunks/rules-IDUXVTPG.js +0 -89
  451. package/dist/chunks/schema-AV6BHGKY.js +0 -237
  452. package/dist/chunks/schema-QJVQTNB4.js +0 -381
  453. package/dist/chunks/set-L5NFQSCF.js +0 -250
  454. package/dist/chunks/setup-and-link-USSVDKCM.js +0 -65
  455. package/dist/chunks/stamp-AA7R3MZS.js +0 -16
  456. package/dist/chunks/tags-2NLUU4EC.js +0 -69
  457. package/dist/chunks/types-4GAJ7XQQ.js +0 -116
  458. package/dist/chunks/update-WGLBB65M.js +0 -224
  459. package/dist/chunks/vlt-builder-importer-USCFHWPL.js +0 -322
@@ -0,0 +1,36 @@
1
+ import { createRequire as __createRequire } from 'node:module';
2
+ import { fileURLToPath as __fileURLToPath } from 'node:url';
3
+ import { dirname as __dirname_ } from 'node:path';
4
+ const require = __createRequire(import.meta.url);
5
+ const __filename = __fileURLToPath(import.meta.url);
6
+ const __dirname = __dirname_(__filename);
7
+ import{require_dist}from"./chunk-QGIQK47P.js";import{__commonJS,__require}from"./chunk-6L236MNA.js";var require_common=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/common.js"(exports,module){"use strict";function isNothing(subject){return typeof subject>"u"||subject===null}function isObject(subject){return typeof subject=="object"&&subject!==null}function toArray(sequence){return Array.isArray(sequence)?sequence:isNothing(sequence)?[]:[sequence]}function extend(target,source){var index,length,key,sourceKeys;if(source)for(sourceKeys=Object.keys(source),index=0,length=sourceKeys.length;index<length;index+=1)key=sourceKeys[index],target[key]=source[key];return target}function repeat(string,count){var result="",cycle;for(cycle=0;cycle<count;cycle+=1)result+=string;return result}function isNegativeZero(number){return number===0&&Number.NEGATIVE_INFINITY===1/number}module.exports.isNothing=isNothing;module.exports.isObject=isObject;module.exports.toArray=toArray;module.exports.repeat=repeat;module.exports.isNegativeZero=isNegativeZero;module.exports.extend=extend}});var require_exception=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/exception.js"(exports,module){"use strict";function YAMLException(reason,mark){Error.call(this),this.name="YAMLException",this.reason=reason,this.mark=mark,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}YAMLException.prototype=Object.create(Error.prototype);YAMLException.prototype.constructor=YAMLException;YAMLException.prototype.toString=function(compact){var result=this.name+": ";return result+=this.reason||"(unknown reason)",!compact&&this.mark&&(result+=" "+this.mark.toString()),result};module.exports=YAMLException}});var require_mark=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/mark.js"(exports,module){"use strict";var common=require_common();function Mark(name,buffer,position,line,column){this.name=name,this.buffer=buffer,this.position=position,this.line=line,this.column=column}Mark.prototype.getSnippet=function(indent,maxLength){var head,start,tail,end,snippet;if(!this.buffer)return null;for(indent=indent||4,maxLength=maxLength||75,head="",start=this.position;start>0&&`\0\r
8
+ \x85\u2028\u2029`.indexOf(this.buffer.charAt(start-1))===-1;)if(start-=1,this.position-start>maxLength/2-1){head=" ... ",start+=5;break}for(tail="",end=this.position;end<this.buffer.length&&`\0\r
9
+ \x85\u2028\u2029`.indexOf(this.buffer.charAt(end))===-1;)if(end+=1,end-this.position>maxLength/2-1){tail=" ... ",end-=5;break}return snippet=this.buffer.slice(start,end),common.repeat(" ",indent)+head+snippet+tail+`
10
+ `+common.repeat(" ",indent+this.position-start+head.length)+"^"};Mark.prototype.toString=function(compact){var snippet,where="";return this.name&&(where+='in "'+this.name+'" '),where+="at line "+(this.line+1)+", column "+(this.column+1),compact||(snippet=this.getSnippet(),snippet&&(where+=`:
11
+ `+snippet)),where};module.exports=Mark}});var require_type=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type.js"(exports,module){"use strict";var YAMLException=require_exception(),TYPE_CONSTRUCTOR_OPTIONS=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],YAML_NODE_KINDS=["scalar","sequence","mapping"];function compileStyleAliases(map){var result={};return map!==null&&Object.keys(map).forEach(function(style){map[style].forEach(function(alias){result[String(alias)]=style})}),result}function Type(tag,options){if(options=options||{},Object.keys(options).forEach(function(name){if(TYPE_CONSTRUCTOR_OPTIONS.indexOf(name)===-1)throw new YAMLException('Unknown option "'+name+'" is met in definition of "'+tag+'" YAML type.')}),this.tag=tag,this.kind=options.kind||null,this.resolve=options.resolve||function(){return!0},this.construct=options.construct||function(data){return data},this.instanceOf=options.instanceOf||null,this.predicate=options.predicate||null,this.represent=options.represent||null,this.defaultStyle=options.defaultStyle||null,this.styleAliases=compileStyleAliases(options.styleAliases||null),YAML_NODE_KINDS.indexOf(this.kind)===-1)throw new YAMLException('Unknown kind "'+this.kind+'" is specified for "'+tag+'" YAML type.')}module.exports=Type}});var require_schema=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/schema.js"(exports,module){"use strict";var common=require_common(),YAMLException=require_exception(),Type=require_type();function compileList(schema,name,result){var exclude=[];return schema.include.forEach(function(includedSchema){result=compileList(includedSchema,name,result)}),schema[name].forEach(function(currentType){result.forEach(function(previousType,previousIndex){previousType.tag===currentType.tag&&previousType.kind===currentType.kind&&exclude.push(previousIndex)}),result.push(currentType)}),result.filter(function(type,index){return exclude.indexOf(index)===-1})}function compileMap(){var result={scalar:{},sequence:{},mapping:{},fallback:{}},index,length;function collectType(type){result[type.kind][type.tag]=result.fallback[type.tag]=type}for(index=0,length=arguments.length;index<length;index+=1)arguments[index].forEach(collectType);return result}function Schema(definition){this.include=definition.include||[],this.implicit=definition.implicit||[],this.explicit=definition.explicit||[],this.implicit.forEach(function(type){if(type.loadKind&&type.loadKind!=="scalar")throw new YAMLException("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.")}),this.compiledImplicit=compileList(this,"implicit",[]),this.compiledExplicit=compileList(this,"explicit",[]),this.compiledTypeMap=compileMap(this.compiledImplicit,this.compiledExplicit)}Schema.DEFAULT=null;Schema.create=function(){var schemas,types;switch(arguments.length){case 1:schemas=Schema.DEFAULT,types=arguments[0];break;case 2:schemas=arguments[0],types=arguments[1];break;default:throw new YAMLException("Wrong number of arguments for Schema.create function")}if(schemas=common.toArray(schemas),types=common.toArray(types),!schemas.every(function(schema){return schema instanceof Schema}))throw new YAMLException("Specified list of super schemas (or a single Schema object) contains a non-Schema object.");if(!types.every(function(type){return type instanceof Type}))throw new YAMLException("Specified list of YAML types (or a single Type object) contains a non-Type object.");return new Schema({include:schemas,explicit:types})};module.exports=Schema}});var require_str=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/str.js"(exports,module){"use strict";var Type=require_type();module.exports=new Type("tag:yaml.org,2002:str",{kind:"scalar",construct:function(data){return data!==null?data:""}})}});var require_seq=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/seq.js"(exports,module){"use strict";var Type=require_type();module.exports=new Type("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(data){return data!==null?data:[]}})}});var require_map=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/map.js"(exports,module){"use strict";var Type=require_type();module.exports=new Type("tag:yaml.org,2002:map",{kind:"mapping",construct:function(data){return data!==null?data:{}}})}});var require_failsafe=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js"(exports,module){"use strict";var Schema=require_schema();module.exports=new Schema({explicit:[require_str(),require_seq(),require_map()]})}});var require_null=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/null.js"(exports,module){"use strict";var Type=require_type();function resolveYamlNull(data){if(data===null)return!0;var max=data.length;return max===1&&data==="~"||max===4&&(data==="null"||data==="Null"||data==="NULL")}function constructYamlNull(){return null}function isNull(object){return object===null}module.exports=new Type("tag:yaml.org,2002:null",{kind:"scalar",resolve:resolveYamlNull,construct:constructYamlNull,predicate:isNull,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})}});var require_bool=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/bool.js"(exports,module){"use strict";var Type=require_type();function resolveYamlBoolean(data){if(data===null)return!1;var max=data.length;return max===4&&(data==="true"||data==="True"||data==="TRUE")||max===5&&(data==="false"||data==="False"||data==="FALSE")}function constructYamlBoolean(data){return data==="true"||data==="True"||data==="TRUE"}function isBoolean(object){return Object.prototype.toString.call(object)==="[object Boolean]"}module.exports=new Type("tag:yaml.org,2002:bool",{kind:"scalar",resolve:resolveYamlBoolean,construct:constructYamlBoolean,predicate:isBoolean,represent:{lowercase:function(object){return object?"true":"false"},uppercase:function(object){return object?"TRUE":"FALSE"},camelcase:function(object){return object?"True":"False"}},defaultStyle:"lowercase"})}});var require_int=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/int.js"(exports,module){"use strict";var common=require_common(),Type=require_type();function isHexCode(c){return 48<=c&&c<=57||65<=c&&c<=70||97<=c&&c<=102}function isOctCode(c){return 48<=c&&c<=55}function isDecCode(c){return 48<=c&&c<=57}function resolveYamlInteger(data){if(data===null)return!1;var max=data.length,index=0,hasDigits=!1,ch;if(!max)return!1;if(ch=data[index],(ch==="-"||ch==="+")&&(ch=data[++index]),ch==="0"){if(index+1===max)return!0;if(ch=data[++index],ch==="b"){for(index++;index<max;index++)if(ch=data[index],ch!=="_"){if(ch!=="0"&&ch!=="1")return!1;hasDigits=!0}return hasDigits&&ch!=="_"}if(ch==="x"){for(index++;index<max;index++)if(ch=data[index],ch!=="_"){if(!isHexCode(data.charCodeAt(index)))return!1;hasDigits=!0}return hasDigits&&ch!=="_"}for(;index<max;index++)if(ch=data[index],ch!=="_"){if(!isOctCode(data.charCodeAt(index)))return!1;hasDigits=!0}return hasDigits&&ch!=="_"}if(ch==="_")return!1;for(;index<max;index++)if(ch=data[index],ch!=="_"){if(ch===":")break;if(!isDecCode(data.charCodeAt(index)))return!1;hasDigits=!0}return!hasDigits||ch==="_"?!1:ch!==":"?!0:/^(:[0-5]?[0-9])+$/.test(data.slice(index))}function constructYamlInteger(data){var value=data,sign=1,ch,base,digits=[];return value.indexOf("_")!==-1&&(value=value.replace(/_/g,"")),ch=value[0],(ch==="-"||ch==="+")&&(ch==="-"&&(sign=-1),value=value.slice(1),ch=value[0]),value==="0"?0:ch==="0"?value[1]==="b"?sign*parseInt(value.slice(2),2):value[1]==="x"?sign*parseInt(value,16):sign*parseInt(value,8):value.indexOf(":")!==-1?(value.split(":").forEach(function(v){digits.unshift(parseInt(v,10))}),value=0,base=1,digits.forEach(function(d){value+=d*base,base*=60}),sign*value):sign*parseInt(value,10)}function isInteger(object){return Object.prototype.toString.call(object)==="[object Number]"&&object%1===0&&!common.isNegativeZero(object)}module.exports=new Type("tag:yaml.org,2002:int",{kind:"scalar",resolve:resolveYamlInteger,construct:constructYamlInteger,predicate:isInteger,represent:{binary:function(obj){return obj>=0?"0b"+obj.toString(2):"-0b"+obj.toString(2).slice(1)},octal:function(obj){return obj>=0?"0"+obj.toString(8):"-0"+obj.toString(8).slice(1)},decimal:function(obj){return obj.toString(10)},hexadecimal:function(obj){return obj>=0?"0x"+obj.toString(16).toUpperCase():"-0x"+obj.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})}});var require_float=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/float.js"(exports,module){"use strict";var common=require_common(),Type=require_type(),YAML_FLOAT_PATTERN=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function resolveYamlFloat(data){return!(data===null||!YAML_FLOAT_PATTERN.test(data)||data[data.length-1]==="_")}function constructYamlFloat(data){var value,sign,base,digits;return value=data.replace(/_/g,"").toLowerCase(),sign=value[0]==="-"?-1:1,digits=[],"+-".indexOf(value[0])>=0&&(value=value.slice(1)),value===".inf"?sign===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:value===".nan"?NaN:value.indexOf(":")>=0?(value.split(":").forEach(function(v){digits.unshift(parseFloat(v,10))}),value=0,base=1,digits.forEach(function(d){value+=d*base,base*=60}),sign*value):sign*parseFloat(value,10)}var SCIENTIFIC_WITHOUT_DOT=/^[-+]?[0-9]+e/;function representYamlFloat(object,style){var res;if(isNaN(object))switch(style){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===object)switch(style){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===object)switch(style){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(common.isNegativeZero(object))return"-0.0";return res=object.toString(10),SCIENTIFIC_WITHOUT_DOT.test(res)?res.replace("e",".e"):res}function isFloat(object){return Object.prototype.toString.call(object)==="[object Number]"&&(object%1!==0||common.isNegativeZero(object))}module.exports=new Type("tag:yaml.org,2002:float",{kind:"scalar",resolve:resolveYamlFloat,construct:constructYamlFloat,predicate:isFloat,represent:representYamlFloat,defaultStyle:"lowercase"})}});var require_json=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/schema/json.js"(exports,module){"use strict";var Schema=require_schema();module.exports=new Schema({include:[require_failsafe()],implicit:[require_null(),require_bool(),require_int(),require_float()]})}});var require_core=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/schema/core.js"(exports,module){"use strict";var Schema=require_schema();module.exports=new Schema({include:[require_json()]})}});var require_timestamp=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/timestamp.js"(exports,module){"use strict";var Type=require_type(),YAML_DATE_REGEXP=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),YAML_TIMESTAMP_REGEXP=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function resolveYamlTimestamp(data){return data===null?!1:YAML_DATE_REGEXP.exec(data)!==null||YAML_TIMESTAMP_REGEXP.exec(data)!==null}function constructYamlTimestamp(data){var match,year,month,day,hour,minute,second,fraction=0,delta=null,tz_hour,tz_minute,date;if(match=YAML_DATE_REGEXP.exec(data),match===null&&(match=YAML_TIMESTAMP_REGEXP.exec(data)),match===null)throw new Error("Date resolve error");if(year=+match[1],month=+match[2]-1,day=+match[3],!match[4])return new Date(Date.UTC(year,month,day));if(hour=+match[4],minute=+match[5],second=+match[6],match[7]){for(fraction=match[7].slice(0,3);fraction.length<3;)fraction+="0";fraction=+fraction}return match[9]&&(tz_hour=+match[10],tz_minute=+(match[11]||0),delta=(tz_hour*60+tz_minute)*6e4,match[9]==="-"&&(delta=-delta)),date=new Date(Date.UTC(year,month,day,hour,minute,second,fraction)),delta&&date.setTime(date.getTime()-delta),date}function representYamlTimestamp(object){return object.toISOString()}module.exports=new Type("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:resolveYamlTimestamp,construct:constructYamlTimestamp,instanceOf:Date,represent:representYamlTimestamp})}});var require_merge=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/merge.js"(exports,module){"use strict";var Type=require_type();function resolveYamlMerge(data){return data==="<<"||data===null}module.exports=new Type("tag:yaml.org,2002:merge",{kind:"scalar",resolve:resolveYamlMerge})}});var require_binary=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/binary.js"(exports,module){"use strict";var NodeBuffer;try{_require=__require,NodeBuffer=_require("buffer").Buffer}catch{}var _require,Type=require_type(),BASE64_MAP=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
12
+ \r`;function resolveYamlBinary(data){if(data===null)return!1;var code,idx,bitlen=0,max=data.length,map=BASE64_MAP;for(idx=0;idx<max;idx++)if(code=map.indexOf(data.charAt(idx)),!(code>64)){if(code<0)return!1;bitlen+=6}return bitlen%8===0}function constructYamlBinary(data){var idx,tailbits,input=data.replace(/[\r\n=]/g,""),max=input.length,map=BASE64_MAP,bits=0,result=[];for(idx=0;idx<max;idx++)idx%4===0&&idx&&(result.push(bits>>16&255),result.push(bits>>8&255),result.push(bits&255)),bits=bits<<6|map.indexOf(input.charAt(idx));return tailbits=max%4*6,tailbits===0?(result.push(bits>>16&255),result.push(bits>>8&255),result.push(bits&255)):tailbits===18?(result.push(bits>>10&255),result.push(bits>>2&255)):tailbits===12&&result.push(bits>>4&255),NodeBuffer?NodeBuffer.from?NodeBuffer.from(result):new NodeBuffer(result):result}function representYamlBinary(object){var result="",bits=0,idx,tail,max=object.length,map=BASE64_MAP;for(idx=0;idx<max;idx++)idx%3===0&&idx&&(result+=map[bits>>18&63],result+=map[bits>>12&63],result+=map[bits>>6&63],result+=map[bits&63]),bits=(bits<<8)+object[idx];return tail=max%3,tail===0?(result+=map[bits>>18&63],result+=map[bits>>12&63],result+=map[bits>>6&63],result+=map[bits&63]):tail===2?(result+=map[bits>>10&63],result+=map[bits>>4&63],result+=map[bits<<2&63],result+=map[64]):tail===1&&(result+=map[bits>>2&63],result+=map[bits<<4&63],result+=map[64],result+=map[64]),result}function isBinary(object){return NodeBuffer&&NodeBuffer.isBuffer(object)}module.exports=new Type("tag:yaml.org,2002:binary",{kind:"scalar",resolve:resolveYamlBinary,construct:constructYamlBinary,predicate:isBinary,represent:representYamlBinary})}});var require_omap=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/omap.js"(exports,module){"use strict";var Type=require_type(),_hasOwnProperty=Object.prototype.hasOwnProperty,_toString=Object.prototype.toString;function resolveYamlOmap(data){if(data===null)return!0;var objectKeys=[],index,length,pair,pairKey,pairHasKey,object=data;for(index=0,length=object.length;index<length;index+=1){if(pair=object[index],pairHasKey=!1,_toString.call(pair)!=="[object Object]")return!1;for(pairKey in pair)if(_hasOwnProperty.call(pair,pairKey))if(!pairHasKey)pairHasKey=!0;else return!1;if(!pairHasKey)return!1;if(objectKeys.indexOf(pairKey)===-1)objectKeys.push(pairKey);else return!1}return!0}function constructYamlOmap(data){return data!==null?data:[]}module.exports=new Type("tag:yaml.org,2002:omap",{kind:"sequence",resolve:resolveYamlOmap,construct:constructYamlOmap})}});var require_pairs=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/pairs.js"(exports,module){"use strict";var Type=require_type(),_toString=Object.prototype.toString;function resolveYamlPairs(data){if(data===null)return!0;var index,length,pair,keys,result,object=data;for(result=new Array(object.length),index=0,length=object.length;index<length;index+=1){if(pair=object[index],_toString.call(pair)!=="[object Object]"||(keys=Object.keys(pair),keys.length!==1))return!1;result[index]=[keys[0],pair[keys[0]]]}return!0}function constructYamlPairs(data){if(data===null)return[];var index,length,pair,keys,result,object=data;for(result=new Array(object.length),index=0,length=object.length;index<length;index+=1)pair=object[index],keys=Object.keys(pair),result[index]=[keys[0],pair[keys[0]]];return result}module.exports=new Type("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:resolveYamlPairs,construct:constructYamlPairs})}});var require_set=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/set.js"(exports,module){"use strict";var Type=require_type(),_hasOwnProperty=Object.prototype.hasOwnProperty;function resolveYamlSet(data){if(data===null)return!0;var key,object=data;for(key in object)if(_hasOwnProperty.call(object,key)&&object[key]!==null)return!1;return!0}function constructYamlSet(data){return data!==null?data:{}}module.exports=new Type("tag:yaml.org,2002:set",{kind:"mapping",resolve:resolveYamlSet,construct:constructYamlSet})}});var require_default_safe=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js"(exports,module){"use strict";var Schema=require_schema();module.exports=new Schema({include:[require_core()],implicit:[require_timestamp(),require_merge()],explicit:[require_binary(),require_omap(),require_pairs(),require_set()]})}});var require_undefined=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js"(exports,module){"use strict";var Type=require_type();function resolveJavascriptUndefined(){return!0}function constructJavascriptUndefined(){}function representJavascriptUndefined(){return""}function isUndefined(object){return typeof object>"u"}module.exports=new Type("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:resolveJavascriptUndefined,construct:constructJavascriptUndefined,predicate:isUndefined,represent:representJavascriptUndefined})}});var require_regexp=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js"(exports,module){"use strict";var Type=require_type();function resolveJavascriptRegExp(data){if(data===null||data.length===0)return!1;var regexp=data,tail=/\/([gim]*)$/.exec(data),modifiers="";return!(regexp[0]==="/"&&(tail&&(modifiers=tail[1]),modifiers.length>3||regexp[regexp.length-modifiers.length-1]!=="/"))}function constructJavascriptRegExp(data){var regexp=data,tail=/\/([gim]*)$/.exec(data),modifiers="";return regexp[0]==="/"&&(tail&&(modifiers=tail[1]),regexp=regexp.slice(1,regexp.length-modifiers.length-1)),new RegExp(regexp,modifiers)}function representJavascriptRegExp(object){var result="/"+object.source+"/";return object.global&&(result+="g"),object.multiline&&(result+="m"),object.ignoreCase&&(result+="i"),result}function isRegExp(object){return Object.prototype.toString.call(object)==="[object RegExp]"}module.exports=new Type("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:resolveJavascriptRegExp,construct:constructJavascriptRegExp,predicate:isRegExp,represent:representJavascriptRegExp})}});var require_function=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/type/js/function.js"(exports,module){"use strict";var esprima;try{_require=__require,esprima=_require("esprima")}catch{typeof window<"u"&&(esprima=window.esprima)}var _require,Type=require_type();function resolveJavascriptFunction(data){if(data===null)return!1;try{var source="("+data+")",ast=esprima.parse(source,{range:!0});return!(ast.type!=="Program"||ast.body.length!==1||ast.body[0].type!=="ExpressionStatement"||ast.body[0].expression.type!=="ArrowFunctionExpression"&&ast.body[0].expression.type!=="FunctionExpression")}catch{return!1}}function constructJavascriptFunction(data){var source="("+data+")",ast=esprima.parse(source,{range:!0}),params=[],body;if(ast.type!=="Program"||ast.body.length!==1||ast.body[0].type!=="ExpressionStatement"||ast.body[0].expression.type!=="ArrowFunctionExpression"&&ast.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return ast.body[0].expression.params.forEach(function(param){params.push(param.name)}),body=ast.body[0].expression.body.range,ast.body[0].expression.body.type==="BlockStatement"?new Function(params,source.slice(body[0]+1,body[1]-1)):new Function(params,"return "+source.slice(body[0],body[1]))}function representJavascriptFunction(object){return object.toString()}function isFunction(object){return Object.prototype.toString.call(object)==="[object Function]"}module.exports=new Type("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:resolveJavascriptFunction,construct:constructJavascriptFunction,predicate:isFunction,represent:representJavascriptFunction})}});var require_default_full=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/schema/default_full.js"(exports,module){"use strict";var Schema=require_schema();module.exports=Schema.DEFAULT=new Schema({include:[require_default_safe()],explicit:[require_undefined(),require_regexp(),require_function()]})}});var require_loader=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/loader.js"(exports,module){"use strict";var common=require_common(),YAMLException=require_exception(),Mark=require_mark(),DEFAULT_SAFE_SCHEMA=require_default_safe(),DEFAULT_FULL_SCHEMA=require_default_full(),_hasOwnProperty=Object.prototype.hasOwnProperty,CONTEXT_FLOW_IN=1,CONTEXT_FLOW_OUT=2,CONTEXT_BLOCK_IN=3,CONTEXT_BLOCK_OUT=4,CHOMPING_CLIP=1,CHOMPING_STRIP=2,CHOMPING_KEEP=3,PATTERN_NON_PRINTABLE=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,PATTERN_NON_ASCII_LINE_BREAKS=/[\x85\u2028\u2029]/,PATTERN_FLOW_INDICATORS=/[,\[\]\{\}]/,PATTERN_TAG_HANDLE=/^(?:!|!!|![a-z\-]+!)$/i,PATTERN_TAG_URI=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function _class(obj){return Object.prototype.toString.call(obj)}function is_EOL(c){return c===10||c===13}function is_WHITE_SPACE(c){return c===9||c===32}function is_WS_OR_EOL(c){return c===9||c===32||c===10||c===13}function is_FLOW_INDICATOR(c){return c===44||c===91||c===93||c===123||c===125}function fromHexCode(c){var lc;return 48<=c&&c<=57?c-48:(lc=c|32,97<=lc&&lc<=102?lc-97+10:-1)}function escapedHexLen(c){return c===120?2:c===117?4:c===85?8:0}function fromDecimalCode(c){return 48<=c&&c<=57?c-48:-1}function simpleEscapeSequence(c){return c===48?"\0":c===97?"\x07":c===98?"\b":c===116||c===9?" ":c===110?`
13
+ `:c===118?"\v":c===102?"\f":c===114?"\r":c===101?"\x1B":c===32?" ":c===34?'"':c===47?"/":c===92?"\\":c===78?"\x85":c===95?"\xA0":c===76?"\u2028":c===80?"\u2029":""}function charFromCodepoint(c){return c<=65535?String.fromCharCode(c):String.fromCharCode((c-65536>>10)+55296,(c-65536&1023)+56320)}var simpleEscapeCheck=new Array(256),simpleEscapeMap=new Array(256);for(i=0;i<256;i++)simpleEscapeCheck[i]=simpleEscapeSequence(i)?1:0,simpleEscapeMap[i]=simpleEscapeSequence(i);var i;function State(input,options){this.input=input,this.filename=options.filename||null,this.schema=options.schema||DEFAULT_FULL_SCHEMA,this.onWarning=options.onWarning||null,this.legacy=options.legacy||!1,this.json=options.json||!1,this.listener=options.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=input.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function generateError(state,message){return new YAMLException(message,new Mark(state.filename,state.input,state.position,state.line,state.position-state.lineStart))}function throwError(state,message){throw generateError(state,message)}function throwWarning(state,message){state.onWarning&&state.onWarning.call(null,generateError(state,message))}var directiveHandlers={YAML:function(state,name,args){var match,major,minor;state.version!==null&&throwError(state,"duplication of %YAML directive"),args.length!==1&&throwError(state,"YAML directive accepts exactly one argument"),match=/^([0-9]+)\.([0-9]+)$/.exec(args[0]),match===null&&throwError(state,"ill-formed argument of the YAML directive"),major=parseInt(match[1],10),minor=parseInt(match[2],10),major!==1&&throwError(state,"unacceptable YAML version of the document"),state.version=args[0],state.checkLineBreaks=minor<2,minor!==1&&minor!==2&&throwWarning(state,"unsupported YAML version of the document")},TAG:function(state,name,args){var handle,prefix;args.length!==2&&throwError(state,"TAG directive accepts exactly two arguments"),handle=args[0],prefix=args[1],PATTERN_TAG_HANDLE.test(handle)||throwError(state,"ill-formed tag handle (first argument) of the TAG directive"),_hasOwnProperty.call(state.tagMap,handle)&&throwError(state,'there is a previously declared suffix for "'+handle+'" tag handle'),PATTERN_TAG_URI.test(prefix)||throwError(state,"ill-formed tag prefix (second argument) of the TAG directive"),state.tagMap[handle]=prefix}};function captureSegment(state,start,end,checkJson){var _position,_length,_character,_result;if(start<end){if(_result=state.input.slice(start,end),checkJson)for(_position=0,_length=_result.length;_position<_length;_position+=1)_character=_result.charCodeAt(_position),_character===9||32<=_character&&_character<=1114111||throwError(state,"expected valid JSON character");else PATTERN_NON_PRINTABLE.test(_result)&&throwError(state,"the stream contains non-printable characters");state.result+=_result}}function mergeMappings(state,destination,source,overridableKeys){var sourceKeys,key,index,quantity;for(common.isObject(source)||throwError(state,"cannot merge mappings; the provided source object is unacceptable"),sourceKeys=Object.keys(source),index=0,quantity=sourceKeys.length;index<quantity;index+=1)key=sourceKeys[index],_hasOwnProperty.call(destination,key)||(destination[key]=source[key],overridableKeys[key]=!0)}function storeMappingPair(state,_result,overridableKeys,keyTag,keyNode,valueNode,startLine,startPos){var index,quantity;if(Array.isArray(keyNode))for(keyNode=Array.prototype.slice.call(keyNode),index=0,quantity=keyNode.length;index<quantity;index+=1)Array.isArray(keyNode[index])&&throwError(state,"nested arrays are not supported inside keys"),typeof keyNode=="object"&&_class(keyNode[index])==="[object Object]"&&(keyNode[index]="[object Object]");if(typeof keyNode=="object"&&_class(keyNode)==="[object Object]"&&(keyNode="[object Object]"),keyNode=String(keyNode),_result===null&&(_result={}),keyTag==="tag:yaml.org,2002:merge")if(Array.isArray(valueNode))for(index=0,quantity=valueNode.length;index<quantity;index+=1)mergeMappings(state,_result,valueNode[index],overridableKeys);else mergeMappings(state,_result,valueNode,overridableKeys);else!state.json&&!_hasOwnProperty.call(overridableKeys,keyNode)&&_hasOwnProperty.call(_result,keyNode)&&(state.line=startLine||state.line,state.position=startPos||state.position,throwError(state,"duplicated mapping key")),_result[keyNode]=valueNode,delete overridableKeys[keyNode];return _result}function readLineBreak(state){var ch;ch=state.input.charCodeAt(state.position),ch===10?state.position++:ch===13?(state.position++,state.input.charCodeAt(state.position)===10&&state.position++):throwError(state,"a line break is expected"),state.line+=1,state.lineStart=state.position}function skipSeparationSpace(state,allowComments,checkIndent){for(var lineBreaks=0,ch=state.input.charCodeAt(state.position);ch!==0;){for(;is_WHITE_SPACE(ch);)ch=state.input.charCodeAt(++state.position);if(allowComments&&ch===35)do ch=state.input.charCodeAt(++state.position);while(ch!==10&&ch!==13&&ch!==0);if(is_EOL(ch))for(readLineBreak(state),ch=state.input.charCodeAt(state.position),lineBreaks++,state.lineIndent=0;ch===32;)state.lineIndent++,ch=state.input.charCodeAt(++state.position);else break}return checkIndent!==-1&&lineBreaks!==0&&state.lineIndent<checkIndent&&throwWarning(state,"deficient indentation"),lineBreaks}function testDocumentSeparator(state){var _position=state.position,ch;return ch=state.input.charCodeAt(_position),!!((ch===45||ch===46)&&ch===state.input.charCodeAt(_position+1)&&ch===state.input.charCodeAt(_position+2)&&(_position+=3,ch=state.input.charCodeAt(_position),ch===0||is_WS_OR_EOL(ch)))}function writeFoldedLines(state,count){count===1?state.result+=" ":count>1&&(state.result+=common.repeat(`
14
+ `,count-1))}function readPlainScalar(state,nodeIndent,withinFlowCollection){var preceding,following,captureStart,captureEnd,hasPendingContent,_line,_lineStart,_lineIndent,_kind=state.kind,_result=state.result,ch;if(ch=state.input.charCodeAt(state.position),is_WS_OR_EOL(ch)||is_FLOW_INDICATOR(ch)||ch===35||ch===38||ch===42||ch===33||ch===124||ch===62||ch===39||ch===34||ch===37||ch===64||ch===96||(ch===63||ch===45)&&(following=state.input.charCodeAt(state.position+1),is_WS_OR_EOL(following)||withinFlowCollection&&is_FLOW_INDICATOR(following)))return!1;for(state.kind="scalar",state.result="",captureStart=captureEnd=state.position,hasPendingContent=!1;ch!==0;){if(ch===58){if(following=state.input.charCodeAt(state.position+1),is_WS_OR_EOL(following)||withinFlowCollection&&is_FLOW_INDICATOR(following))break}else if(ch===35){if(preceding=state.input.charCodeAt(state.position-1),is_WS_OR_EOL(preceding))break}else{if(state.position===state.lineStart&&testDocumentSeparator(state)||withinFlowCollection&&is_FLOW_INDICATOR(ch))break;if(is_EOL(ch))if(_line=state.line,_lineStart=state.lineStart,_lineIndent=state.lineIndent,skipSeparationSpace(state,!1,-1),state.lineIndent>=nodeIndent){hasPendingContent=!0,ch=state.input.charCodeAt(state.position);continue}else{state.position=captureEnd,state.line=_line,state.lineStart=_lineStart,state.lineIndent=_lineIndent;break}}hasPendingContent&&(captureSegment(state,captureStart,captureEnd,!1),writeFoldedLines(state,state.line-_line),captureStart=captureEnd=state.position,hasPendingContent=!1),is_WHITE_SPACE(ch)||(captureEnd=state.position+1),ch=state.input.charCodeAt(++state.position)}return captureSegment(state,captureStart,captureEnd,!1),state.result?!0:(state.kind=_kind,state.result=_result,!1)}function readSingleQuotedScalar(state,nodeIndent){var ch,captureStart,captureEnd;if(ch=state.input.charCodeAt(state.position),ch!==39)return!1;for(state.kind="scalar",state.result="",state.position++,captureStart=captureEnd=state.position;(ch=state.input.charCodeAt(state.position))!==0;)if(ch===39)if(captureSegment(state,captureStart,state.position,!0),ch=state.input.charCodeAt(++state.position),ch===39)captureStart=state.position,state.position++,captureEnd=state.position;else return!0;else is_EOL(ch)?(captureSegment(state,captureStart,captureEnd,!0),writeFoldedLines(state,skipSeparationSpace(state,!1,nodeIndent)),captureStart=captureEnd=state.position):state.position===state.lineStart&&testDocumentSeparator(state)?throwError(state,"unexpected end of the document within a single quoted scalar"):(state.position++,captureEnd=state.position);throwError(state,"unexpected end of the stream within a single quoted scalar")}function readDoubleQuotedScalar(state,nodeIndent){var captureStart,captureEnd,hexLength,hexResult,tmp,ch;if(ch=state.input.charCodeAt(state.position),ch!==34)return!1;for(state.kind="scalar",state.result="",state.position++,captureStart=captureEnd=state.position;(ch=state.input.charCodeAt(state.position))!==0;){if(ch===34)return captureSegment(state,captureStart,state.position,!0),state.position++,!0;if(ch===92){if(captureSegment(state,captureStart,state.position,!0),ch=state.input.charCodeAt(++state.position),is_EOL(ch))skipSeparationSpace(state,!1,nodeIndent);else if(ch<256&&simpleEscapeCheck[ch])state.result+=simpleEscapeMap[ch],state.position++;else if((tmp=escapedHexLen(ch))>0){for(hexLength=tmp,hexResult=0;hexLength>0;hexLength--)ch=state.input.charCodeAt(++state.position),(tmp=fromHexCode(ch))>=0?hexResult=(hexResult<<4)+tmp:throwError(state,"expected hexadecimal character");state.result+=charFromCodepoint(hexResult),state.position++}else throwError(state,"unknown escape sequence");captureStart=captureEnd=state.position}else is_EOL(ch)?(captureSegment(state,captureStart,captureEnd,!0),writeFoldedLines(state,skipSeparationSpace(state,!1,nodeIndent)),captureStart=captureEnd=state.position):state.position===state.lineStart&&testDocumentSeparator(state)?throwError(state,"unexpected end of the document within a double quoted scalar"):(state.position++,captureEnd=state.position)}throwError(state,"unexpected end of the stream within a double quoted scalar")}function readFlowCollection(state,nodeIndent){var readNext=!0,_line,_tag=state.tag,_result,_anchor=state.anchor,following,terminator,isPair,isExplicitPair,isMapping,overridableKeys={},keyNode,keyTag,valueNode,ch;if(ch=state.input.charCodeAt(state.position),ch===91)terminator=93,isMapping=!1,_result=[];else if(ch===123)terminator=125,isMapping=!0,_result={};else return!1;for(state.anchor!==null&&(state.anchorMap[state.anchor]=_result),ch=state.input.charCodeAt(++state.position);ch!==0;){if(skipSeparationSpace(state,!0,nodeIndent),ch=state.input.charCodeAt(state.position),ch===terminator)return state.position++,state.tag=_tag,state.anchor=_anchor,state.kind=isMapping?"mapping":"sequence",state.result=_result,!0;readNext||throwError(state,"missed comma between flow collection entries"),keyTag=keyNode=valueNode=null,isPair=isExplicitPair=!1,ch===63&&(following=state.input.charCodeAt(state.position+1),is_WS_OR_EOL(following)&&(isPair=isExplicitPair=!0,state.position++,skipSeparationSpace(state,!0,nodeIndent))),_line=state.line,composeNode(state,nodeIndent,CONTEXT_FLOW_IN,!1,!0),keyTag=state.tag,keyNode=state.result,skipSeparationSpace(state,!0,nodeIndent),ch=state.input.charCodeAt(state.position),(isExplicitPair||state.line===_line)&&ch===58&&(isPair=!0,ch=state.input.charCodeAt(++state.position),skipSeparationSpace(state,!0,nodeIndent),composeNode(state,nodeIndent,CONTEXT_FLOW_IN,!1,!0),valueNode=state.result),isMapping?storeMappingPair(state,_result,overridableKeys,keyTag,keyNode,valueNode):isPair?_result.push(storeMappingPair(state,null,overridableKeys,keyTag,keyNode,valueNode)):_result.push(keyNode),skipSeparationSpace(state,!0,nodeIndent),ch=state.input.charCodeAt(state.position),ch===44?(readNext=!0,ch=state.input.charCodeAt(++state.position)):readNext=!1}throwError(state,"unexpected end of the stream within a flow collection")}function readBlockScalar(state,nodeIndent){var captureStart,folding,chomping=CHOMPING_CLIP,didReadContent=!1,detectedIndent=!1,textIndent=nodeIndent,emptyLines=0,atMoreIndented=!1,tmp,ch;if(ch=state.input.charCodeAt(state.position),ch===124)folding=!1;else if(ch===62)folding=!0;else return!1;for(state.kind="scalar",state.result="";ch!==0;)if(ch=state.input.charCodeAt(++state.position),ch===43||ch===45)CHOMPING_CLIP===chomping?chomping=ch===43?CHOMPING_KEEP:CHOMPING_STRIP:throwError(state,"repeat of a chomping mode identifier");else if((tmp=fromDecimalCode(ch))>=0)tmp===0?throwError(state,"bad explicit indentation width of a block scalar; it cannot be less than one"):detectedIndent?throwError(state,"repeat of an indentation width identifier"):(textIndent=nodeIndent+tmp-1,detectedIndent=!0);else break;if(is_WHITE_SPACE(ch)){do ch=state.input.charCodeAt(++state.position);while(is_WHITE_SPACE(ch));if(ch===35)do ch=state.input.charCodeAt(++state.position);while(!is_EOL(ch)&&ch!==0)}for(;ch!==0;){for(readLineBreak(state),state.lineIndent=0,ch=state.input.charCodeAt(state.position);(!detectedIndent||state.lineIndent<textIndent)&&ch===32;)state.lineIndent++,ch=state.input.charCodeAt(++state.position);if(!detectedIndent&&state.lineIndent>textIndent&&(textIndent=state.lineIndent),is_EOL(ch)){emptyLines++;continue}if(state.lineIndent<textIndent){chomping===CHOMPING_KEEP?state.result+=common.repeat(`
15
+ `,didReadContent?1+emptyLines:emptyLines):chomping===CHOMPING_CLIP&&didReadContent&&(state.result+=`
16
+ `);break}for(folding?is_WHITE_SPACE(ch)?(atMoreIndented=!0,state.result+=common.repeat(`
17
+ `,didReadContent?1+emptyLines:emptyLines)):atMoreIndented?(atMoreIndented=!1,state.result+=common.repeat(`
18
+ `,emptyLines+1)):emptyLines===0?didReadContent&&(state.result+=" "):state.result+=common.repeat(`
19
+ `,emptyLines):state.result+=common.repeat(`
20
+ `,didReadContent?1+emptyLines:emptyLines),didReadContent=!0,detectedIndent=!0,emptyLines=0,captureStart=state.position;!is_EOL(ch)&&ch!==0;)ch=state.input.charCodeAt(++state.position);captureSegment(state,captureStart,state.position,!1)}return!0}function readBlockSequence(state,nodeIndent){var _line,_tag=state.tag,_anchor=state.anchor,_result=[],following,detected=!1,ch;for(state.anchor!==null&&(state.anchorMap[state.anchor]=_result),ch=state.input.charCodeAt(state.position);ch!==0&&!(ch!==45||(following=state.input.charCodeAt(state.position+1),!is_WS_OR_EOL(following)));){if(detected=!0,state.position++,skipSeparationSpace(state,!0,-1)&&state.lineIndent<=nodeIndent){_result.push(null),ch=state.input.charCodeAt(state.position);continue}if(_line=state.line,composeNode(state,nodeIndent,CONTEXT_BLOCK_IN,!1,!0),_result.push(state.result),skipSeparationSpace(state,!0,-1),ch=state.input.charCodeAt(state.position),(state.line===_line||state.lineIndent>nodeIndent)&&ch!==0)throwError(state,"bad indentation of a sequence entry");else if(state.lineIndent<nodeIndent)break}return detected?(state.tag=_tag,state.anchor=_anchor,state.kind="sequence",state.result=_result,!0):!1}function readBlockMapping(state,nodeIndent,flowIndent){var following,allowCompact,_line,_pos,_tag=state.tag,_anchor=state.anchor,_result={},overridableKeys={},keyTag=null,keyNode=null,valueNode=null,atExplicitKey=!1,detected=!1,ch;for(state.anchor!==null&&(state.anchorMap[state.anchor]=_result),ch=state.input.charCodeAt(state.position);ch!==0;){if(following=state.input.charCodeAt(state.position+1),_line=state.line,_pos=state.position,(ch===63||ch===58)&&is_WS_OR_EOL(following))ch===63?(atExplicitKey&&(storeMappingPair(state,_result,overridableKeys,keyTag,keyNode,null),keyTag=keyNode=valueNode=null),detected=!0,atExplicitKey=!0,allowCompact=!0):atExplicitKey?(atExplicitKey=!1,allowCompact=!0):throwError(state,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),state.position+=1,ch=following;else if(composeNode(state,flowIndent,CONTEXT_FLOW_OUT,!1,!0))if(state.line===_line){for(ch=state.input.charCodeAt(state.position);is_WHITE_SPACE(ch);)ch=state.input.charCodeAt(++state.position);if(ch===58)ch=state.input.charCodeAt(++state.position),is_WS_OR_EOL(ch)||throwError(state,"a whitespace character is expected after the key-value separator within a block mapping"),atExplicitKey&&(storeMappingPair(state,_result,overridableKeys,keyTag,keyNode,null),keyTag=keyNode=valueNode=null),detected=!0,atExplicitKey=!1,allowCompact=!1,keyTag=state.tag,keyNode=state.result;else if(detected)throwError(state,"can not read an implicit mapping pair; a colon is missed");else return state.tag=_tag,state.anchor=_anchor,!0}else if(detected)throwError(state,"can not read a block mapping entry; a multiline key may not be an implicit key");else return state.tag=_tag,state.anchor=_anchor,!0;else break;if((state.line===_line||state.lineIndent>nodeIndent)&&(composeNode(state,nodeIndent,CONTEXT_BLOCK_OUT,!0,allowCompact)&&(atExplicitKey?keyNode=state.result:valueNode=state.result),atExplicitKey||(storeMappingPair(state,_result,overridableKeys,keyTag,keyNode,valueNode,_line,_pos),keyTag=keyNode=valueNode=null),skipSeparationSpace(state,!0,-1),ch=state.input.charCodeAt(state.position)),state.lineIndent>nodeIndent&&ch!==0)throwError(state,"bad indentation of a mapping entry");else if(state.lineIndent<nodeIndent)break}return atExplicitKey&&storeMappingPair(state,_result,overridableKeys,keyTag,keyNode,null),detected&&(state.tag=_tag,state.anchor=_anchor,state.kind="mapping",state.result=_result),detected}function readTagProperty(state){var _position,isVerbatim=!1,isNamed=!1,tagHandle,tagName,ch;if(ch=state.input.charCodeAt(state.position),ch!==33)return!1;if(state.tag!==null&&throwError(state,"duplication of a tag property"),ch=state.input.charCodeAt(++state.position),ch===60?(isVerbatim=!0,ch=state.input.charCodeAt(++state.position)):ch===33?(isNamed=!0,tagHandle="!!",ch=state.input.charCodeAt(++state.position)):tagHandle="!",_position=state.position,isVerbatim){do ch=state.input.charCodeAt(++state.position);while(ch!==0&&ch!==62);state.position<state.length?(tagName=state.input.slice(_position,state.position),ch=state.input.charCodeAt(++state.position)):throwError(state,"unexpected end of the stream within a verbatim tag")}else{for(;ch!==0&&!is_WS_OR_EOL(ch);)ch===33&&(isNamed?throwError(state,"tag suffix cannot contain exclamation marks"):(tagHandle=state.input.slice(_position-1,state.position+1),PATTERN_TAG_HANDLE.test(tagHandle)||throwError(state,"named tag handle cannot contain such characters"),isNamed=!0,_position=state.position+1)),ch=state.input.charCodeAt(++state.position);tagName=state.input.slice(_position,state.position),PATTERN_FLOW_INDICATORS.test(tagName)&&throwError(state,"tag suffix cannot contain flow indicator characters")}return tagName&&!PATTERN_TAG_URI.test(tagName)&&throwError(state,"tag name cannot contain such characters: "+tagName),isVerbatim?state.tag=tagName:_hasOwnProperty.call(state.tagMap,tagHandle)?state.tag=state.tagMap[tagHandle]+tagName:tagHandle==="!"?state.tag="!"+tagName:tagHandle==="!!"?state.tag="tag:yaml.org,2002:"+tagName:throwError(state,'undeclared tag handle "'+tagHandle+'"'),!0}function readAnchorProperty(state){var _position,ch;if(ch=state.input.charCodeAt(state.position),ch!==38)return!1;for(state.anchor!==null&&throwError(state,"duplication of an anchor property"),ch=state.input.charCodeAt(++state.position),_position=state.position;ch!==0&&!is_WS_OR_EOL(ch)&&!is_FLOW_INDICATOR(ch);)ch=state.input.charCodeAt(++state.position);return state.position===_position&&throwError(state,"name of an anchor node must contain at least one character"),state.anchor=state.input.slice(_position,state.position),!0}function readAlias(state){var _position,alias,ch;if(ch=state.input.charCodeAt(state.position),ch!==42)return!1;for(ch=state.input.charCodeAt(++state.position),_position=state.position;ch!==0&&!is_WS_OR_EOL(ch)&&!is_FLOW_INDICATOR(ch);)ch=state.input.charCodeAt(++state.position);return state.position===_position&&throwError(state,"name of an alias node must contain at least one character"),alias=state.input.slice(_position,state.position),state.anchorMap.hasOwnProperty(alias)||throwError(state,'unidentified alias "'+alias+'"'),state.result=state.anchorMap[alias],skipSeparationSpace(state,!0,-1),!0}function composeNode(state,parentIndent,nodeContext,allowToSeek,allowCompact){var allowBlockStyles,allowBlockScalars,allowBlockCollections,indentStatus=1,atNewLine=!1,hasContent=!1,typeIndex,typeQuantity,type,flowIndent,blockIndent;if(state.listener!==null&&state.listener("open",state),state.tag=null,state.anchor=null,state.kind=null,state.result=null,allowBlockStyles=allowBlockScalars=allowBlockCollections=CONTEXT_BLOCK_OUT===nodeContext||CONTEXT_BLOCK_IN===nodeContext,allowToSeek&&skipSeparationSpace(state,!0,-1)&&(atNewLine=!0,state.lineIndent>parentIndent?indentStatus=1:state.lineIndent===parentIndent?indentStatus=0:state.lineIndent<parentIndent&&(indentStatus=-1)),indentStatus===1)for(;readTagProperty(state)||readAnchorProperty(state);)skipSeparationSpace(state,!0,-1)?(atNewLine=!0,allowBlockCollections=allowBlockStyles,state.lineIndent>parentIndent?indentStatus=1:state.lineIndent===parentIndent?indentStatus=0:state.lineIndent<parentIndent&&(indentStatus=-1)):allowBlockCollections=!1;if(allowBlockCollections&&(allowBlockCollections=atNewLine||allowCompact),(indentStatus===1||CONTEXT_BLOCK_OUT===nodeContext)&&(CONTEXT_FLOW_IN===nodeContext||CONTEXT_FLOW_OUT===nodeContext?flowIndent=parentIndent:flowIndent=parentIndent+1,blockIndent=state.position-state.lineStart,indentStatus===1?allowBlockCollections&&(readBlockSequence(state,blockIndent)||readBlockMapping(state,blockIndent,flowIndent))||readFlowCollection(state,flowIndent)?hasContent=!0:(allowBlockScalars&&readBlockScalar(state,flowIndent)||readSingleQuotedScalar(state,flowIndent)||readDoubleQuotedScalar(state,flowIndent)?hasContent=!0:readAlias(state)?(hasContent=!0,(state.tag!==null||state.anchor!==null)&&throwError(state,"alias node should not have any properties")):readPlainScalar(state,flowIndent,CONTEXT_FLOW_IN===nodeContext)&&(hasContent=!0,state.tag===null&&(state.tag="?")),state.anchor!==null&&(state.anchorMap[state.anchor]=state.result)):indentStatus===0&&(hasContent=allowBlockCollections&&readBlockSequence(state,blockIndent))),state.tag!==null&&state.tag!=="!")if(state.tag==="?"){for(typeIndex=0,typeQuantity=state.implicitTypes.length;typeIndex<typeQuantity;typeIndex+=1)if(type=state.implicitTypes[typeIndex],type.resolve(state.result)){state.result=type.construct(state.result),state.tag=type.tag,state.anchor!==null&&(state.anchorMap[state.anchor]=state.result);break}}else _hasOwnProperty.call(state.typeMap[state.kind||"fallback"],state.tag)?(type=state.typeMap[state.kind||"fallback"][state.tag],state.result!==null&&type.kind!==state.kind&&throwError(state,"unacceptable node kind for !<"+state.tag+'> tag; it should be "'+type.kind+'", not "'+state.kind+'"'),type.resolve(state.result)?(state.result=type.construct(state.result),state.anchor!==null&&(state.anchorMap[state.anchor]=state.result)):throwError(state,"cannot resolve a node with !<"+state.tag+"> explicit tag")):throwError(state,"unknown tag !<"+state.tag+">");return state.listener!==null&&state.listener("close",state),state.tag!==null||state.anchor!==null||hasContent}function readDocument(state){var documentStart=state.position,_position,directiveName,directiveArgs,hasDirectives=!1,ch;for(state.version=null,state.checkLineBreaks=state.legacy,state.tagMap={},state.anchorMap={};(ch=state.input.charCodeAt(state.position))!==0&&(skipSeparationSpace(state,!0,-1),ch=state.input.charCodeAt(state.position),!(state.lineIndent>0||ch!==37));){for(hasDirectives=!0,ch=state.input.charCodeAt(++state.position),_position=state.position;ch!==0&&!is_WS_OR_EOL(ch);)ch=state.input.charCodeAt(++state.position);for(directiveName=state.input.slice(_position,state.position),directiveArgs=[],directiveName.length<1&&throwError(state,"directive name must not be less than one character in length");ch!==0;){for(;is_WHITE_SPACE(ch);)ch=state.input.charCodeAt(++state.position);if(ch===35){do ch=state.input.charCodeAt(++state.position);while(ch!==0&&!is_EOL(ch));break}if(is_EOL(ch))break;for(_position=state.position;ch!==0&&!is_WS_OR_EOL(ch);)ch=state.input.charCodeAt(++state.position);directiveArgs.push(state.input.slice(_position,state.position))}ch!==0&&readLineBreak(state),_hasOwnProperty.call(directiveHandlers,directiveName)?directiveHandlers[directiveName](state,directiveName,directiveArgs):throwWarning(state,'unknown document directive "'+directiveName+'"')}if(skipSeparationSpace(state,!0,-1),state.lineIndent===0&&state.input.charCodeAt(state.position)===45&&state.input.charCodeAt(state.position+1)===45&&state.input.charCodeAt(state.position+2)===45?(state.position+=3,skipSeparationSpace(state,!0,-1)):hasDirectives&&throwError(state,"directives end mark is expected"),composeNode(state,state.lineIndent-1,CONTEXT_BLOCK_OUT,!1,!0),skipSeparationSpace(state,!0,-1),state.checkLineBreaks&&PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart,state.position))&&throwWarning(state,"non-ASCII line breaks are interpreted as content"),state.documents.push(state.result),state.position===state.lineStart&&testDocumentSeparator(state)){state.input.charCodeAt(state.position)===46&&(state.position+=3,skipSeparationSpace(state,!0,-1));return}if(state.position<state.length-1)throwError(state,"end of the stream or a document separator is expected");else return}function loadDocuments(input,options){input=String(input),options=options||{},input.length!==0&&(input.charCodeAt(input.length-1)!==10&&input.charCodeAt(input.length-1)!==13&&(input+=`
21
+ `),input.charCodeAt(0)===65279&&(input=input.slice(1)));var state=new State(input,options);for(state.input+="\0";state.input.charCodeAt(state.position)===32;)state.lineIndent+=1,state.position+=1;for(;state.position<state.length-1;)readDocument(state);return state.documents}function loadAll(input,iterator,options){var documents=loadDocuments(input,options),index,length;if(typeof iterator!="function")return documents;for(index=0,length=documents.length;index<length;index+=1)iterator(documents[index])}function load(input,options){var documents=loadDocuments(input,options);if(documents.length!==0){if(documents.length===1)return documents[0];throw new YAMLException("expected a single document in the stream, but found more")}}function safeLoadAll(input,output,options){if(typeof output=="function")loadAll(input,output,common.extend({schema:DEFAULT_SAFE_SCHEMA},options));else return loadAll(input,common.extend({schema:DEFAULT_SAFE_SCHEMA},options))}function safeLoad(input,options){return load(input,common.extend({schema:DEFAULT_SAFE_SCHEMA},options))}module.exports.loadAll=loadAll;module.exports.load=load;module.exports.safeLoadAll=safeLoadAll;module.exports.safeLoad=safeLoad}});var require_dumper=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml/dumper.js"(exports,module){"use strict";var common=require_common(),YAMLException=require_exception(),DEFAULT_FULL_SCHEMA=require_default_full(),DEFAULT_SAFE_SCHEMA=require_default_safe(),_toString=Object.prototype.toString,_hasOwnProperty=Object.prototype.hasOwnProperty,CHAR_TAB=9,CHAR_LINE_FEED=10,CHAR_SPACE=32,CHAR_EXCLAMATION=33,CHAR_DOUBLE_QUOTE=34,CHAR_SHARP=35,CHAR_PERCENT=37,CHAR_AMPERSAND=38,CHAR_SINGLE_QUOTE=39,CHAR_ASTERISK=42,CHAR_COMMA=44,CHAR_MINUS=45,CHAR_COLON=58,CHAR_GREATER_THAN=62,CHAR_QUESTION=63,CHAR_COMMERCIAL_AT=64,CHAR_LEFT_SQUARE_BRACKET=91,CHAR_RIGHT_SQUARE_BRACKET=93,CHAR_GRAVE_ACCENT=96,CHAR_LEFT_CURLY_BRACKET=123,CHAR_VERTICAL_LINE=124,CHAR_RIGHT_CURLY_BRACKET=125,ESCAPE_SEQUENCES={};ESCAPE_SEQUENCES[0]="\\0";ESCAPE_SEQUENCES[7]="\\a";ESCAPE_SEQUENCES[8]="\\b";ESCAPE_SEQUENCES[9]="\\t";ESCAPE_SEQUENCES[10]="\\n";ESCAPE_SEQUENCES[11]="\\v";ESCAPE_SEQUENCES[12]="\\f";ESCAPE_SEQUENCES[13]="\\r";ESCAPE_SEQUENCES[27]="\\e";ESCAPE_SEQUENCES[34]='\\"';ESCAPE_SEQUENCES[92]="\\\\";ESCAPE_SEQUENCES[133]="\\N";ESCAPE_SEQUENCES[160]="\\_";ESCAPE_SEQUENCES[8232]="\\L";ESCAPE_SEQUENCES[8233]="\\P";var DEPRECATED_BOOLEANS_SYNTAX=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function compileStyleMap(schema,map){var result,keys,index,length,tag,style,type;if(map===null)return{};for(result={},keys=Object.keys(map),index=0,length=keys.length;index<length;index+=1)tag=keys[index],style=String(map[tag]),tag.slice(0,2)==="!!"&&(tag="tag:yaml.org,2002:"+tag.slice(2)),type=schema.compiledTypeMap.fallback[tag],type&&_hasOwnProperty.call(type.styleAliases,style)&&(style=type.styleAliases[style]),result[tag]=style;return result}function encodeHex(character){var string,handle,length;if(string=character.toString(16).toUpperCase(),character<=255)handle="x",length=2;else if(character<=65535)handle="u",length=4;else if(character<=4294967295)handle="U",length=8;else throw new YAMLException("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+handle+common.repeat("0",length-string.length)+string}function State(options){this.schema=options.schema||DEFAULT_FULL_SCHEMA,this.indent=Math.max(1,options.indent||2),this.noArrayIndent=options.noArrayIndent||!1,this.skipInvalid=options.skipInvalid||!1,this.flowLevel=common.isNothing(options.flowLevel)?-1:options.flowLevel,this.styleMap=compileStyleMap(this.schema,options.styles||null),this.sortKeys=options.sortKeys||!1,this.lineWidth=options.lineWidth||80,this.noRefs=options.noRefs||!1,this.noCompatMode=options.noCompatMode||!1,this.condenseFlow=options.condenseFlow||!1,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function indentString(string,spaces){for(var ind=common.repeat(" ",spaces),position=0,next=-1,result="",line,length=string.length;position<length;)next=string.indexOf(`
22
+ `,position),next===-1?(line=string.slice(position),position=length):(line=string.slice(position,next+1),position=next+1),line.length&&line!==`
23
+ `&&(result+=ind),result+=line;return result}function generateNextLine(state,level){return`
24
+ `+common.repeat(" ",state.indent*level)}function testImplicitResolving(state,str){var index,length,type;for(index=0,length=state.implicitTypes.length;index<length;index+=1)if(type=state.implicitTypes[index],type.resolve(str))return!0;return!1}function isWhitespace(c){return c===CHAR_SPACE||c===CHAR_TAB}function isPrintable(c){return 32<=c&&c<=126||161<=c&&c<=55295&&c!==8232&&c!==8233||57344<=c&&c<=65533&&c!==65279||65536<=c&&c<=1114111}function isPlainSafe(c){return isPrintable(c)&&c!==65279&&c!==CHAR_COMMA&&c!==CHAR_LEFT_SQUARE_BRACKET&&c!==CHAR_RIGHT_SQUARE_BRACKET&&c!==CHAR_LEFT_CURLY_BRACKET&&c!==CHAR_RIGHT_CURLY_BRACKET&&c!==CHAR_COLON&&c!==CHAR_SHARP}function isPlainSafeFirst(c){return isPrintable(c)&&c!==65279&&!isWhitespace(c)&&c!==CHAR_MINUS&&c!==CHAR_QUESTION&&c!==CHAR_COLON&&c!==CHAR_COMMA&&c!==CHAR_LEFT_SQUARE_BRACKET&&c!==CHAR_RIGHT_SQUARE_BRACKET&&c!==CHAR_LEFT_CURLY_BRACKET&&c!==CHAR_RIGHT_CURLY_BRACKET&&c!==CHAR_SHARP&&c!==CHAR_AMPERSAND&&c!==CHAR_ASTERISK&&c!==CHAR_EXCLAMATION&&c!==CHAR_VERTICAL_LINE&&c!==CHAR_GREATER_THAN&&c!==CHAR_SINGLE_QUOTE&&c!==CHAR_DOUBLE_QUOTE&&c!==CHAR_PERCENT&&c!==CHAR_COMMERCIAL_AT&&c!==CHAR_GRAVE_ACCENT}function needIndentIndicator(string){var leadingSpaceRe=/^\n* /;return leadingSpaceRe.test(string)}var STYLE_PLAIN=1,STYLE_SINGLE=2,STYLE_LITERAL=3,STYLE_FOLDED=4,STYLE_DOUBLE=5;function chooseScalarStyle(string,singleLineOnly,indentPerLevel,lineWidth,testAmbiguousType){var i,char,hasLineBreak=!1,hasFoldableLine=!1,shouldTrackWidth=lineWidth!==-1,previousLineBreak=-1,plain=isPlainSafeFirst(string.charCodeAt(0))&&!isWhitespace(string.charCodeAt(string.length-1));if(singleLineOnly)for(i=0;i<string.length;i++){if(char=string.charCodeAt(i),!isPrintable(char))return STYLE_DOUBLE;plain=plain&&isPlainSafe(char)}else{for(i=0;i<string.length;i++){if(char=string.charCodeAt(i),char===CHAR_LINE_FEED)hasLineBreak=!0,shouldTrackWidth&&(hasFoldableLine=hasFoldableLine||i-previousLineBreak-1>lineWidth&&string[previousLineBreak+1]!==" ",previousLineBreak=i);else if(!isPrintable(char))return STYLE_DOUBLE;plain=plain&&isPlainSafe(char)}hasFoldableLine=hasFoldableLine||shouldTrackWidth&&i-previousLineBreak-1>lineWidth&&string[previousLineBreak+1]!==" "}return!hasLineBreak&&!hasFoldableLine?plain&&!testAmbiguousType(string)?STYLE_PLAIN:STYLE_SINGLE:indentPerLevel>9&&needIndentIndicator(string)?STYLE_DOUBLE:hasFoldableLine?STYLE_FOLDED:STYLE_LITERAL}function writeScalar(state,string,level,iskey){state.dump=function(){if(string.length===0)return"''";if(!state.noCompatMode&&DEPRECATED_BOOLEANS_SYNTAX.indexOf(string)!==-1)return"'"+string+"'";var indent=state.indent*Math.max(1,level),lineWidth=state.lineWidth===-1?-1:Math.max(Math.min(state.lineWidth,40),state.lineWidth-indent),singleLineOnly=iskey||state.flowLevel>-1&&level>=state.flowLevel;function testAmbiguity(string2){return testImplicitResolving(state,string2)}switch(chooseScalarStyle(string,singleLineOnly,state.indent,lineWidth,testAmbiguity)){case STYLE_PLAIN:return string;case STYLE_SINGLE:return"'"+string.replace(/'/g,"''")+"'";case STYLE_LITERAL:return"|"+blockHeader(string,state.indent)+dropEndingNewline(indentString(string,indent));case STYLE_FOLDED:return">"+blockHeader(string,state.indent)+dropEndingNewline(indentString(foldString(string,lineWidth),indent));case STYLE_DOUBLE:return'"'+escapeString(string,lineWidth)+'"';default:throw new YAMLException("impossible error: invalid scalar style")}}()}function blockHeader(string,indentPerLevel){var indentIndicator=needIndentIndicator(string)?String(indentPerLevel):"",clip=string[string.length-1]===`
25
+ `,keep=clip&&(string[string.length-2]===`
26
+ `||string===`
27
+ `),chomp=keep?"+":clip?"":"-";return indentIndicator+chomp+`
28
+ `}function dropEndingNewline(string){return string[string.length-1]===`
29
+ `?string.slice(0,-1):string}function foldString(string,width){for(var lineRe=/(\n+)([^\n]*)/g,result=function(){var nextLF=string.indexOf(`
30
+ `);return nextLF=nextLF!==-1?nextLF:string.length,lineRe.lastIndex=nextLF,foldLine(string.slice(0,nextLF),width)}(),prevMoreIndented=string[0]===`
31
+ `||string[0]===" ",moreIndented,match;match=lineRe.exec(string);){var prefix=match[1],line=match[2];moreIndented=line[0]===" ",result+=prefix+(!prevMoreIndented&&!moreIndented&&line!==""?`
32
+ `:"")+foldLine(line,width),prevMoreIndented=moreIndented}return result}function foldLine(line,width){if(line===""||line[0]===" ")return line;for(var breakRe=/ [^ ]/g,match,start=0,end,curr=0,next=0,result="";match=breakRe.exec(line);)next=match.index,next-start>width&&(end=curr>start?curr:next,result+=`
33
+ `+line.slice(start,end),start=end+1),curr=next;return result+=`
34
+ `,line.length-start>width&&curr>start?result+=line.slice(start,curr)+`
35
+ `+line.slice(curr+1):result+=line.slice(start),result.slice(1)}function escapeString(string){for(var result="",char,nextChar,escapeSeq,i=0;i<string.length;i++){if(char=string.charCodeAt(i),char>=55296&&char<=56319&&(nextChar=string.charCodeAt(i+1),nextChar>=56320&&nextChar<=57343)){result+=encodeHex((char-55296)*1024+nextChar-56320+65536),i++;continue}escapeSeq=ESCAPE_SEQUENCES[char],result+=!escapeSeq&&isPrintable(char)?string[i]:escapeSeq||encodeHex(char)}return result}function writeFlowSequence(state,level,object){var _result="",_tag=state.tag,index,length;for(index=0,length=object.length;index<length;index+=1)writeNode(state,level,object[index],!1,!1)&&(index!==0&&(_result+=","+(state.condenseFlow?"":" ")),_result+=state.dump);state.tag=_tag,state.dump="["+_result+"]"}function writeBlockSequence(state,level,object,compact){var _result="",_tag=state.tag,index,length;for(index=0,length=object.length;index<length;index+=1)writeNode(state,level+1,object[index],!0,!0)&&((!compact||index!==0)&&(_result+=generateNextLine(state,level)),state.dump&&CHAR_LINE_FEED===state.dump.charCodeAt(0)?_result+="-":_result+="- ",_result+=state.dump);state.tag=_tag,state.dump=_result||"[]"}function writeFlowMapping(state,level,object){var _result="",_tag=state.tag,objectKeyList=Object.keys(object),index,length,objectKey,objectValue,pairBuffer;for(index=0,length=objectKeyList.length;index<length;index+=1)pairBuffer=state.condenseFlow?'"':"",index!==0&&(pairBuffer+=", "),objectKey=objectKeyList[index],objectValue=object[objectKey],writeNode(state,level,objectKey,!1,!1)&&(state.dump.length>1024&&(pairBuffer+="? "),pairBuffer+=state.dump+(state.condenseFlow?'"':"")+":"+(state.condenseFlow?"":" "),writeNode(state,level,objectValue,!1,!1)&&(pairBuffer+=state.dump,_result+=pairBuffer));state.tag=_tag,state.dump="{"+_result+"}"}function writeBlockMapping(state,level,object,compact){var _result="",_tag=state.tag,objectKeyList=Object.keys(object),index,length,objectKey,objectValue,explicitPair,pairBuffer;if(state.sortKeys===!0)objectKeyList.sort();else if(typeof state.sortKeys=="function")objectKeyList.sort(state.sortKeys);else if(state.sortKeys)throw new YAMLException("sortKeys must be a boolean or a function");for(index=0,length=objectKeyList.length;index<length;index+=1)pairBuffer="",(!compact||index!==0)&&(pairBuffer+=generateNextLine(state,level)),objectKey=objectKeyList[index],objectValue=object[objectKey],writeNode(state,level+1,objectKey,!0,!0,!0)&&(explicitPair=state.tag!==null&&state.tag!=="?"||state.dump&&state.dump.length>1024,explicitPair&&(state.dump&&CHAR_LINE_FEED===state.dump.charCodeAt(0)?pairBuffer+="?":pairBuffer+="? "),pairBuffer+=state.dump,explicitPair&&(pairBuffer+=generateNextLine(state,level)),writeNode(state,level+1,objectValue,!0,explicitPair)&&(state.dump&&CHAR_LINE_FEED===state.dump.charCodeAt(0)?pairBuffer+=":":pairBuffer+=": ",pairBuffer+=state.dump,_result+=pairBuffer));state.tag=_tag,state.dump=_result||"{}"}function detectType(state,object,explicit){var _result,typeList,index,length,type,style;for(typeList=explicit?state.explicitTypes:state.implicitTypes,index=0,length=typeList.length;index<length;index+=1)if(type=typeList[index],(type.instanceOf||type.predicate)&&(!type.instanceOf||typeof object=="object"&&object instanceof type.instanceOf)&&(!type.predicate||type.predicate(object))){if(state.tag=explicit?type.tag:"?",type.represent){if(style=state.styleMap[type.tag]||type.defaultStyle,_toString.call(type.represent)==="[object Function]")_result=type.represent(object,style);else if(_hasOwnProperty.call(type.represent,style))_result=type.represent[style](object,style);else throw new YAMLException("!<"+type.tag+'> tag resolver accepts not "'+style+'" style');state.dump=_result}return!0}return!1}function writeNode(state,level,object,block,compact,iskey){state.tag=null,state.dump=object,detectType(state,object,!1)||detectType(state,object,!0);var type=_toString.call(state.dump);block&&(block=state.flowLevel<0||state.flowLevel>level);var objectOrArray=type==="[object Object]"||type==="[object Array]",duplicateIndex,duplicate;if(objectOrArray&&(duplicateIndex=state.duplicates.indexOf(object),duplicate=duplicateIndex!==-1),(state.tag!==null&&state.tag!=="?"||duplicate||state.indent!==2&&level>0)&&(compact=!1),duplicate&&state.usedDuplicates[duplicateIndex])state.dump="*ref_"+duplicateIndex;else{if(objectOrArray&&duplicate&&!state.usedDuplicates[duplicateIndex]&&(state.usedDuplicates[duplicateIndex]=!0),type==="[object Object]")block&&Object.keys(state.dump).length!==0?(writeBlockMapping(state,level,state.dump,compact),duplicate&&(state.dump="&ref_"+duplicateIndex+state.dump)):(writeFlowMapping(state,level,state.dump),duplicate&&(state.dump="&ref_"+duplicateIndex+" "+state.dump));else if(type==="[object Array]"){var arrayLevel=state.noArrayIndent&&level>0?level-1:level;block&&state.dump.length!==0?(writeBlockSequence(state,arrayLevel,state.dump,compact),duplicate&&(state.dump="&ref_"+duplicateIndex+state.dump)):(writeFlowSequence(state,arrayLevel,state.dump),duplicate&&(state.dump="&ref_"+duplicateIndex+" "+state.dump))}else if(type==="[object String]")state.tag!=="?"&&writeScalar(state,state.dump,level,iskey);else{if(state.skipInvalid)return!1;throw new YAMLException("unacceptable kind of an object to dump "+type)}state.tag!==null&&state.tag!=="?"&&(state.dump="!<"+state.tag+"> "+state.dump)}return!0}function getDuplicateReferences(object,state){var objects=[],duplicatesIndexes=[],index,length;for(inspectNode(object,objects,duplicatesIndexes),index=0,length=duplicatesIndexes.length;index<length;index+=1)state.duplicates.push(objects[duplicatesIndexes[index]]);state.usedDuplicates=new Array(length)}function inspectNode(object,objects,duplicatesIndexes){var objectKeyList,index,length;if(object!==null&&typeof object=="object")if(index=objects.indexOf(object),index!==-1)duplicatesIndexes.indexOf(index)===-1&&duplicatesIndexes.push(index);else if(objects.push(object),Array.isArray(object))for(index=0,length=object.length;index<length;index+=1)inspectNode(object[index],objects,duplicatesIndexes);else for(objectKeyList=Object.keys(object),index=0,length=objectKeyList.length;index<length;index+=1)inspectNode(object[objectKeyList[index]],objects,duplicatesIndexes)}function dump(input,options){options=options||{};var state=new State(options);return state.noRefs||getDuplicateReferences(input,state),writeNode(state,0,input,!0,!0)?state.dump+`
36
+ `:""}function safeDump(input,options){return dump(input,common.extend({schema:DEFAULT_SAFE_SCHEMA},options))}module.exports.dump=dump;module.exports.safeDump=safeDump}});var require_js_yaml=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/lib/js-yaml.js"(exports,module){"use strict";var loader=require_loader(),dumper=require_dumper();function deprecated(name){return function(){throw new Error("Function "+name+" is deprecated and cannot be used.")}}module.exports.Type=require_type();module.exports.Schema=require_schema();module.exports.FAILSAFE_SCHEMA=require_failsafe();module.exports.JSON_SCHEMA=require_json();module.exports.CORE_SCHEMA=require_core();module.exports.DEFAULT_SAFE_SCHEMA=require_default_safe();module.exports.DEFAULT_FULL_SCHEMA=require_default_full();module.exports.load=loader.load;module.exports.loadAll=loader.loadAll;module.exports.safeLoad=loader.safeLoad;module.exports.safeLoadAll=loader.safeLoadAll;module.exports.dump=dumper.dump;module.exports.safeDump=dumper.safeDump;module.exports.YAMLException=require_exception();module.exports.MINIMAL_SCHEMA=require_failsafe();module.exports.SAFE_SCHEMA=require_default_safe();module.exports.DEFAULT_SCHEMA=require_default_full();module.exports.scan=deprecated("scan");module.exports.parse=deprecated("parse");module.exports.compose=deprecated("compose");module.exports.addConstructor=deprecated("addConstructor")}});var require_js_yaml2=__commonJS({"../../node_modules/.pnpm/js-yaml@3.13.1/node_modules/js-yaml/index.js"(exports,module){"use strict";var yaml=require_js_yaml();module.exports=yaml}});var require_read_config_file=__commonJS({"../frameworks/dist/read-config-file.js"(exports,module){"use strict";var __create=Object.create,__defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),read_config_file_exports={};__export(read_config_file_exports,{readConfigFile:()=>readConfigFile});module.exports=__toCommonJS(read_config_file_exports);var import_js_yaml=__toESM(require_js_yaml2()),import_smol_toml=__require("smol-toml"),import_fs=__require("fs"),import_error_utils=require_dist(),{readFile}=import_fs.promises;async function readFileOrNull(file){try{return await readFile(file)}catch(error){if(!(0,import_error_utils.isErrnoException)(error)||error.code!=="ENOENT")throw error}return null}async function readConfigFile(files){files=Array.isArray(files)?files:[files];for(let name of files){let data=await readFileOrNull(name);if(data){let str=data.toString("utf8");if(name.endsWith(".json"))return JSON.parse(str);if(name.endsWith(".toml"))return(0,import_smol_toml.parse)(str);if(name.endsWith(".yaml")||name.endsWith(".yml"))return import_js_yaml.default.safeLoad(str,{filename:name})}}return null}}});var require_types=__commonJS({"../frameworks/dist/types.js"(exports,module){"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),types_exports={};module.exports=__toCommonJS(types_exports)}});var require_frameworks=__commonJS({"../frameworks/dist/frameworks.js"(exports,module){"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__reExport=(target,mod,secondTarget)=>(__copyProps(target,mod,"default"),secondTarget&&__copyProps(secondTarget,mod,"default")),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),frameworks_exports={};__export(frameworks_exports,{default:()=>frameworks_default,frameworkList:()=>frameworkList,frameworks:()=>frameworks});module.exports=__toCommonJS(frameworks_exports);var import_path=__require("path"),import_fs=__require("fs"),import_read_config_file=require_read_config_file();__reExport(frameworks_exports,require_types(),module.exports);var{readdir,readFile,unlink}=import_fs.promises,frameworks=[{name:"Container",slug:"container",runtimeFramework:!0,logo:"https://api-frameworks.vercel.sh/framework-logos/container.svg",tagline:"Deploy any project as a container image built from a Dockerfile.",description:"A project deployed as a container image, built from a Dockerfile.vercel or Containerfile.vercel.",website:"https://docs.docker.com/reference/dockerfile/",useRuntime:{src:"<detect>",use:"@vercel/container"},detectors:{some:[{path:"Dockerfile.vercel"},{path:"Containerfile.vercel"}]},settings:{installCommand:{placeholder:"None",value:null},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{placeholder:"None"}},getOutputDirName:async()=>"public"},{name:"Blitz.js (Legacy)",slug:"blitzjs",demo:"https://blitz-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/blitz.svg",tagline:"Blitz.js: The Fullstack React Framework",description:"A brand new Blitz.js app - the result of running `npx blitz@0.45.4 new`.",website:"https://blitzjs.com",envPrefix:"NEXT_PUBLIC_",useRuntime:{src:"package.json",use:"@vercel/next"},detectors:{some:[{path:"blitz.config.js"},{path:"blitz.config.ts"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `blitz build`",value:"blitz build"},devCommand:{value:"blitz start"},outputDirectory:{placeholder:"Next.js default"}},getOutputDirName:async()=>"public"},{name:"Next.js",slug:"nextjs",demo:"https://nextjs-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/next.svg",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/next-dark.svg",screenshot:"https://py8fhxnkzwtsqdo9.public.blob.vercel-storage.com/front/import/nextjs.png",tagline:"Next.js makes you productive with React instantly \u2014 whether you want to build static or dynamic sites.",description:"A Next.js app and a Serverless Function API.",website:"https://nextjs.org",sort:1,envPrefix:"NEXT_PUBLIC_",useRuntime:{src:"package.json",use:"@vercel/next"},detectors:{every:[{matchPackage:"next"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `next build`",value:"next build"},devCommand:{value:"next dev --port $PORT",placeholder:"next"},outputDirectory:{placeholder:"Next.js default"}},recommendedIntegrations:[{id:"oac_5lUsiANun1DEzgLg0NZx5Es3",dependencies:["next-plugin-sentry","next-sentry-source-maps"]}],getOutputDirName:async()=>"public",cachePattern:".next/cache/**"},{name:"Gatsby.js",slug:"gatsby",demo:"https://gatsby.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/gatsby.svg",tagline:"Gatsby helps developers build blazing fast websites and apps with React.",description:"A Gatsby starter app with an API Route.",website:"https://gatsbyjs.org",sort:5,envPrefix:"GATSBY_",detectors:{every:[{matchPackage:"gatsby"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `gatsby build`",value:"gatsby build"},devCommand:{value:"gatsby develop --port $PORT",placeholder:"gatsby develop"},outputDirectory:{value:"public"}},dependency:"gatsby",getOutputDirName:async()=>"public",defaultRoutes:async dirPrefix=>{try{let nowRoutesPath=(0,import_path.join)(dirPrefix,"public","__now_routes_g4t5bY.json"),content=await readFile(nowRoutesPath,"utf8"),nowRoutes=JSON.parse(content);try{await unlink(nowRoutesPath)}catch{}return nowRoutes}catch{return[{src:"^/static/(.*)$",headers:{"cache-control":"public,max-age=31536000,immutable"},continue:!0},{src:"^/.*\\.(js|css)$",headers:{"cache-control":"public,max-age=31536000,immutable"},continue:!0},{src:"^/(sw\\.js|app-data\\.json|.*\\.html|page-data/.*)$",headers:{"cache-control":"public,max-age=0,must-revalidate"},continue:!0},{handle:"filesystem"},{src:".*",status:404,dest:"404.html"}]}},cachePattern:"{.cache,public}/**"},{name:"Remix",slug:"remix",demo:"https://remix-run-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/remix-no-shadow.svg",tagline:"Build Better Websites",description:"A new Remix app \u2014 the result of running `npx create-remix`.",website:"https://remix.run",sort:6,supersedes:["hydrogen","vite","node"],useRuntime:{src:"package.json",use:"@vercel/remix-builder"},ignoreRuntimes:["@vercel/node"],detectors:{some:[{matchPackage:"@remix-run/dev"},{path:"remix.config.js"},{path:"remix.config.mjs"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{value:"remix build",placeholder:"`npm run build` or `remix build`"},devCommand:{value:"remix dev",placeholder:"remix dev"},outputDirectory:{value:"public"}},dependency:"remix",getOutputDirName:async()=>"public"},{name:"React Router",slug:"react-router",demo:"https://react-router-v7-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/react-router.svg",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/react-router-dark.svg",tagline:"Declarative routing for React",description:"A user-obsessed, standards-focused, multi-strategy router you can deploy anywhere.",website:"https://reactrouter.com",sort:7,supersedes:["hydrogen","vite","node"],useRuntime:{src:"package.json",use:"@vercel/remix-builder"},ignoreRuntimes:["@vercel/node"],detectors:{some:[{path:"vite.config.js",matchContent:"@react-router/dev/vite"},{path:"vite.config.ts",matchContent:"@react-router/dev/vite"},{path:"react-router.config.js"},{path:"react-router.config.ts"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{value:"react-router build",placeholder:"`npm run build` or `react-router build`"},devCommand:{value:"react-router dev",placeholder:"react-router dev"},outputDirectory:{value:"build"}},dependency:"react-router",getOutputDirName:async()=>"build"},{name:"Astro",slug:"astro",demo:"https://astro-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/astro.svg",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/astro-dark.svg",tagline:"Astro is a new kind of static site builder for the modern web. Powerful developer experience meets lightweight output.",description:"An Astro site, using the basics starter kit.",website:"https://astro.build",envPrefix:"PUBLIC_",detectors:{every:[{matchPackage:"astro"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{value:"astro build",placeholder:"`npm run build` or `astro build`"},devCommand:{value:"astro dev --port $PORT",placeholder:"astro dev"},outputDirectory:{value:"dist"}},dependency:"astro",getOutputDirName:async()=>"dist",defaultRoutes:[{src:"^/assets/(.*)$",headers:{"cache-control":"public, max-age=31536000, immutable"},continue:!0},{src:"^/_astro/(.*)$",headers:{"cache-control":"public, max-age=31536000, immutable"},continue:!0}]},{name:"Hexo",slug:"hexo",demo:"https://hexo-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/hexo.svg",tagline:"Hexo is a fast, simple & powerful blog framework powered by Node.js.",description:"A Hexo site, created with the Hexo CLI.",website:"https://hexo.io",detectors:{every:[{matchPackage:"hexo"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `hexo generate`",value:"hexo generate"},devCommand:{value:"hexo server --port $PORT",placeholder:"hexo server"},outputDirectory:{value:"public"}},dependency:"hexo",getOutputDirName:async()=>"public"},{name:"Eleventy",slug:"eleventy",demo:"https://eleventy-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/eleventy.svg",tagline:"11ty is a simpler static site generator written in JavaScript, created to be an alternative to Jekyll.",description:"An Eleventy site, created with npm init.",website:"https://www.11ty.dev",detectors:{every:[{matchPackage:"@11ty/eleventy"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `npx @11ty/eleventy`",value:"npx @11ty/eleventy"},devCommand:{value:"npx @11ty/eleventy --serve --watch --port $PORT",placeholder:"npx @11ty/eleventy --serve"},outputDirectory:{value:"_site"}},dependency:"@11ty/eleventy",getOutputDirName:async()=>"_site",cachePattern:".cache/**"},{name:"Docusaurus (v2+)",slug:"docusaurus-2",demo:"https://docusaurus-2-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/docusaurus.svg",tagline:"Docusaurus makes it easy to maintain Open Source documentation websites.",description:"A static Docusaurus site that makes it easy to maintain OSS documentation.",website:"https://v2.docusaurus.io",detectors:{some:[{matchPackage:"@docusaurus/core"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `docusaurus build`",value:"docusaurus build"},devCommand:{value:"docusaurus start --port $PORT",placeholder:"docusaurus start"},outputDirectory:{value:"build"}},dependency:"@docusaurus/core",getOutputDirName:async dirPrefix=>{let base="build";try{let location=(0,import_path.join)(dirPrefix,base),content=await readdir(location,{withFileTypes:!0});if(content.length===1&&content[0].isDirectory())return(0,import_path.join)(base,content[0].name)}catch(error){console.error("Error detecting output directory: ",error)}return base},defaultRoutes:[{src:"^/[^./]+\\.[0-9a-f]{8}\\.(css|js)$",headers:{"cache-control":"max-age=31536000, immutable"},continue:!0},{src:"^/assets/images/[^/]+-[0-9a-f]{32}\\.(ico|svg|jpg|jpeg|png|gif|webp)$",headers:{"cache-control":"max-age=31536000, immutable"},continue:!0},{src:"^/assets/medias/[^/]+-[0-9a-f]{32}\\.(ogv|wav|mp3|m4a|aac|oga|flac)$",headers:{"cache-control":"max-age=31536000, immutable"},continue:!0},{src:"^/assets/files/[^/]+-[0-9a-f]{32}\\.(pdf|doc|docx|xls|xlsx|zip|rar)$",headers:{"cache-control":"max-age=31536000, immutable"},continue:!0},{src:"^/ideal-img/[^/]+\\.[0-9a-f]{7}\\.\\d+\\.(png|jpe?g|gif)$",headers:{"cache-control":"max-age=31536000, immutable"},continue:!0},{handle:"filesystem"},{src:".*",status:404,dest:"404.html"}]},{name:"Docusaurus (v1)",slug:"docusaurus",demo:"https://docusaurus-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/docusaurus.svg",tagline:"Docusaurus makes it easy to maintain Open Source documentation websites.",description:"A static Docusaurus site that makes it easy to maintain OSS documentation.",website:"https://docusaurus.io/",detectors:{some:[{matchPackage:"docusaurus"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `docusaurus-build`",value:"docusaurus-build"},devCommand:{value:"docusaurus-start --port $PORT",placeholder:"docusaurus-start"},outputDirectory:{value:"build"}},dependency:"docusaurus",getOutputDirName:async dirPrefix=>{let base="build";try{let location=(0,import_path.join)(dirPrefix,base),content=await readdir(location,{withFileTypes:!0});if(content.length===1&&content[0].isDirectory())return(0,import_path.join)(base,content[0].name)}catch(error){console.error("Error detecting output directory: ",error)}return base}},{name:"Preact",slug:"preact",demo:"https://preact-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/preact.svg",tagline:"Preact is a fast 3kB alternative to React with the same modern API.",description:"A Preact app, created with the Preact CLI.",website:"https://preactjs.com",detectors:{every:[{matchPackage:"preact-cli"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `preact build`",value:"preact build"},devCommand:{value:"preact watch --port $PORT",placeholder:"preact watch"},outputDirectory:{value:"build"}},dependency:"preact-cli",getOutputDirName:async()=>"build",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/index.html"}]},{name:"SolidStart (v1)",slug:"solidstart-1",demo:"https://solid-start-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/solid.svg",tagline:"Simple and performant reactivity for building user interfaces.",description:"A Solid app, created with SolidStart.",website:"https://start.solidjs.com",envPrefix:"VITE_",detectors:{every:[{matchPackage:"solid-js"},{matchPackage:"@solidjs/start"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `vinxi build`",value:"vinxi build"},devCommand:{value:"vinxi dev"},outputDirectory:{value:".output"}},getOutputDirName:async()=>".output"},{name:"SolidStart (v0)",slug:"solidstart",demo:"https://solid-start-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/solid.svg",tagline:"Simple and performant reactivity for building user interfaces.",description:"A Solid app, created with SolidStart.",website:"https://solidjs.com",envPrefix:"VITE_",sort:98,detectors:{every:[{matchPackage:"solid-js"},{matchPackage:"solid-start"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `solid-start build`",value:"solid-start build"},devCommand:{value:"solid-start dev"},outputDirectory:{value:".output"}},getOutputDirName:async()=>".output"},{name:"Dojo",slug:"dojo",demo:"https://dojo-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/dojo.svg",tagline:"Dojo is a modern progressive, TypeScript first framework.",description:"A Dojo app, created with the Dojo CLI's cli-create-app command.",website:"https://dojo.io",detectors:{some:[{matchPackage:"@dojo/framework"},{path:".dojorc"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `dojo build`",value:"dojo build"},devCommand:{value:"dojo build -m dev -w -s -p $PORT",placeholder:"dojo build -m dev -w -s"},outputDirectory:{value:"output/dist"}},dependency:"@dojo/cli",getOutputDirName:async()=>(0,import_path.join)("output","dist"),defaultRoutes:[{handle:"filesystem"},{src:"/service-worker.js",headers:{"cache-control":"s-maxage=0"},continue:!0},{src:"/(.*)",dest:"/index.html"}],defaulHeaders:[{source:"/service-worker.js",regex:"/service-worker.js",headers:{"cache-control":"s-maxage=0"},continue:!0}]},{name:"Ember.js",slug:"ember",demo:"https://ember-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/ember.svg",tagline:"Ember.js helps webapp developers be more productive out of the box.",description:"An Ember app, created with the Ember CLI.",website:"https://emberjs.com/",detectors:{some:[{matchPackage:"ember-source"},{matchPackage:"ember-cli"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `ember build`",value:"ember build"},devCommand:{value:"ember serve --port $PORT",placeholder:"ember serve"},outputDirectory:{value:"dist"}},dependency:"ember-cli",getOutputDirName:async()=>"dist",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/index.html"}]},{name:"Vue.js",slug:"vue",demo:"https://vue-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/vue.svg",tagline:"Vue.js is a versatile JavaScript framework that is as approachable as it is performant.",description:"A Vue.js app, created with the Vue CLI.",website:"https://vuejs.org",envPrefix:"VUE_APP_",detectors:{every:[{matchPackage:"@vue/cli-service"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `vue-cli-service build`",value:"vue-cli-service build"},devCommand:{value:"vue-cli-service serve --port $PORT",placeholder:"vue-cli-service serve"},outputDirectory:{value:"dist"}},dependency:"@vue/cli-service",getOutputDirName:async()=>"dist",defaultRoutes:[{src:"^/[^/]*\\.(js|txt|ico|json)",headers:{"cache-control":"max-age=300"},continue:!0},{src:"^/(img|js|css|fonts|media)/[^/]+\\.[0-9a-f]{8}\\.*",headers:{"cache-control":"max-age=31536000, immutable"},continue:!0},{handle:"filesystem"},{src:"^.*",dest:"/index.html"}]},{name:"Scully",slug:"scully",demo:"https://scully-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/scullyio-logo.svg",tagline:"Scully is a static site generator for Angular.",description:"The Static Site Generator for Angular apps.",website:"https://github.com/scullyio/scully",detectors:{every:[{matchPackage:"@scullyio/init"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `ng build && scully`",value:"ng build && scully"},devCommand:{value:"ng serve --port $PORT",placeholder:"ng serve"},outputDirectory:{value:"dist"}},dependency:"@scullyio/init",getOutputDirName:async()=>"dist/static"},{name:"Ionic Angular",slug:"ionic-angular",demo:"https://ionic-angular-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/ionic.svg",tagline:"Ionic Angular allows you to build mobile PWAs with Angular and the Ionic Framework.",description:"An Ionic Angular site, created with the Ionic CLI.",website:"https://ionicframework.com",detectors:{every:[{matchPackage:"@ionic/angular"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `ng build`",value:"ng build"},devCommand:{value:"ng serve --port $PORT"},outputDirectory:{value:"www"}},dependency:"@ionic/angular",getOutputDirName:async()=>"www",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/index.html"}]},{name:"Angular",slug:"angular",demo:"https://angular-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/angular.svg",tagline:"Angular is a TypeScript-based cross-platform framework from Google.",description:"An Angular app, created with the Angular CLI.",website:"https://angular.io",detectors:{every:[{matchPackage:"@angular/cli"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `ng build`",value:"ng build"},devCommand:{value:"ng serve --port $PORT",placeholder:"ng serve"},outputDirectory:{value:"dist"}},dependency:"@angular/cli",getOutputDirName:async dirPrefix=>{let base="dist";try{let location=(0,import_path.join)(dirPrefix,base),content=await readdir(location,{withFileTypes:!0});if(content.length===1&&content[0].isDirectory()){let potentialOutDir=(0,import_path.join)(base,content[0].name),potentialOutDirWithBrowser=(0,import_path.join)(potentialOutDir,"browser");return(0,import_fs.existsSync)(potentialOutDirWithBrowser)?potentialOutDirWithBrowser:potentialOutDir}}catch(error){console.error("Error detecting output directory: ",error)}return base},defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/index.html"}]},{name:"Polymer",slug:"polymer",demo:"https://polymer-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/polymer.svg",tagline:"Polymer is an open-source webapps library from Google, for building using Web Components.",description:"A Polymer app, created with the Polymer CLI.",website:"https://www.polymer-project.org/",detectors:{every:[{matchPackage:"polymer-cli"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `polymer build`",value:"polymer build"},devCommand:{value:"polymer serve --port $PORT",placeholder:"polymer serve"},outputDirectory:{value:"build"}},dependency:"polymer-cli",getOutputDirName:async dirPrefix=>{let base="build";try{let location=(0,import_path.join)(dirPrefix,base),paths=(await readdir(location)).filter(item=>!item.includes("."));return(0,import_path.join)(base,paths[0])}catch(error){console.error("Error detecting output directory: ",error)}return base},defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/index.html"}]},{name:"Svelte",slug:"svelte",demo:"https://svelte.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/svelte.svg",tagline:"Svelte lets you write high performance reactive apps with significantly less boilerplate.",description:"A basic Svelte app using the default template.",website:"https://svelte.dev",sort:3,detectors:{every:[{matchPackage:"svelte"},{matchPackage:"sirv-cli"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `rollup -c`",value:"rollup -c"},devCommand:{value:"rollup -c -w"},outputDirectory:{value:"public"}},dependency:"sirv-cli",getOutputDirName:async()=>"public",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/index.html"}]},{name:"SvelteKit (v0)",slug:"sveltekit",demo:"https://sveltekit-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/svelte.svg",screenshot:"https://py8fhxnkzwtsqdo9.public.blob.vercel-storage.com/front/import/sveltekit.png",tagline:"SvelteKit is a framework for building web applications of all sizes.",description:"A SvelteKit legacy app optimized Edge-first.",website:"https://kit.svelte.dev",supersedes:["vite"],sort:99,envPrefix:"VITE_",detectors:{every:[{path:"package.json",matchContent:'"(dev)?(d|D)ependencies":\\s*{[^}]*"@sveltejs\\/kit":\\s*"1\\.0\\.0-next\\.(\\d+)"[^}]*}'}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `svelte-kit build`",value:"svelte-kit build"},devCommand:{value:"svelte-kit dev --port $PORT",placeholder:"svelte-kit dev"},outputDirectory:{value:"public"}},getOutputDirName:async()=>"public"},{name:"SvelteKit",slug:"sveltekit-1",demo:"https://sveltekit-1-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/svelte.svg",screenshot:"https://py8fhxnkzwtsqdo9.public.blob.vercel-storage.com/front/import/sveltekit.png",tagline:"SvelteKit is a framework for building web applications of all sizes.",description:"A SvelteKit app optimized Edge-first.",website:"https://kit.svelte.dev",supersedes:["vite"],detectors:{every:[{path:"package.json",matchContent:'"(dev)?(d|D)ependencies":\\s*{[^}]*"@sveltejs\\/kit":\\s*".+?"[^}]*}'}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"vite build",value:"vite build"},devCommand:{placeholder:"vite dev",value:"vite dev --port $PORT"},outputDirectory:{value:"public"}},getOutputDirName:async()=>"public"},{name:"Ionic React",slug:"ionic-react",demo:"https://ionic-react-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/ionic.svg",tagline:"Ionic React allows you to build mobile PWAs with React and the Ionic Framework.",description:"An Ionic React site, created with the Ionic CLI.",website:"https://ionicframework.com",detectors:{every:[{matchPackage:"@ionic/react"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `react-scripts build`",value:"react-scripts build"},devCommand:{value:"react-scripts start"},outputDirectory:{value:"build"}},dependency:"@ionic/react",getOutputDirName:async()=>"build",defaultRoutes:[{src:"/static/(.*)",headers:{"cache-control":"s-maxage=31536000, immutable"},continue:!0},{src:"/service-worker.js",headers:{"cache-control":"s-maxage=0"},continue:!0},{src:"/sockjs-node/(.*)",dest:"/sockjs-node/$1"},{handle:"filesystem"},{src:"/static/(.*)",status:404,dest:"/404.html"},{src:"/(.*)",headers:{"cache-control":"s-maxage=0"},dest:"/index.html"}]},{name:"Create React App",slug:"create-react-app",demo:"https://create-react-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/react.svg",tagline:"Create React App allows you to get going with React in no time.",description:"A client-side React app created with create-react-app.",website:"https://create-react-app.dev",sort:4,envPrefix:"REACT_APP_",detectors:{some:[{matchPackage:"react-scripts"},{matchPackage:"react-dev-utils"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `react-scripts build`",value:"react-scripts build"},devCommand:{value:"react-scripts start"},outputDirectory:{value:"build"}},dependency:"react-scripts",getOutputDirName:async()=>"build",defaultRoutes:[{src:"/static/(.*)",headers:{"cache-control":"s-maxage=31536000, immutable"},continue:!0},{src:"/service-worker.js",headers:{"cache-control":"s-maxage=0"},continue:!0},{src:"/sockjs-node/(.*)",dest:"/sockjs-node/$1"},{handle:"filesystem"},{src:"/static/(.*)",status:404,dest:"/404.html"},{src:"/(.*)",headers:{"cache-control":"s-maxage=0"},dest:"/index.html"}]},{name:"Gridsome",slug:"gridsome",demo:"https://gridsome-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/gridsome.svg",tagline:"Gridsome is a Vue.js-powered framework for building websites & apps that are fast by default.",description:"A Gridsome app, created with the Gridsome CLI.",website:"https://gridsome.org/",detectors:{every:[{matchPackage:"gridsome"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `gridsome build`",value:"gridsome build"},devCommand:{value:"gridsome develop -p $PORT",placeholder:"gridsome develop"},outputDirectory:{value:"dist"}},dependency:"gridsome",getOutputDirName:async()=>"dist"},{name:"UmiJS",slug:"umijs",demo:"https://umijs-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/umi.svg",tagline:"UmiJS is an extensible enterprise-level React application framework.",description:"An UmiJS app, created using the Umi CLI.",website:"https://umijs.org",detectors:{every:[{matchPackage:"umi"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `umi build`",value:"umi build"},devCommand:{value:"umi dev --port $PORT",placeholder:"umi dev"},outputDirectory:{value:"dist"}},dependency:"umi",getOutputDirName:async()=>"dist",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/index.html"}]},{name:"Sapper",slug:"sapper",demo:"https://sapper-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/svelte.svg",tagline:"Sapper is a framework for building high-performance universal web apps with Svelte.",description:"A Sapper app, using the Sapper template.",website:"https://sapper.svelte.dev",detectors:{every:[{matchPackage:"sapper"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `sapper export`",value:"sapper export"},devCommand:{value:"sapper dev --port $PORT",placeholder:"sapper dev"},outputDirectory:{value:"__sapper__/export"}},dependency:"sapper",getOutputDirName:async()=>"__sapper__/export"},{name:"Saber",slug:"saber",logo:"https://api-frameworks.vercel.sh/framework-logos/saber.svg",tagline:"Saber is a framework for building static sites in Vue.js that supports data from any source.",description:"A Saber site, created with npm init.",website:"https://saber.egoist.dev",detectors:{every:[{matchPackage:"saber"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `saber build`",value:"saber build"},devCommand:{value:"saber --port $PORT",placeholder:"saber"},outputDirectory:{value:"public"}},dependency:"saber",getOutputDirName:async()=>"public",defaultRoutes:[{src:"/_saber/.*",headers:{"cache-control":"max-age=31536000, immutable"}},{handle:"filesystem"},{src:".*",status:404,dest:"404.html"}]},{name:"Stencil",slug:"stencil",demo:"https://stencil.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/stencil.svg",tagline:"Stencil is a powerful toolchain for building Progressive Web Apps and Design Systems.",description:"A Stencil site, created with the Stencil CLI.",website:"https://stenciljs.com/",detectors:{every:[{matchPackage:"@stencil/core"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `stencil build`",value:"stencil build"},devCommand:{value:"stencil build --dev --watch --serve --port $PORT",placeholder:"stencil build --dev --watch --serve"},outputDirectory:{value:"www"}},dependency:"@stencil/core",getOutputDirName:async()=>"www",defaultRoutes:[{src:"/assets/(.*)",headers:{"cache-control":"max-age=2592000"},continue:!0},{src:"/build/p-.*",headers:{"cache-control":"max-age=31536000, immutable"},continue:!0},{src:"/sw.js",headers:{"cache-control":"no-cache"},continue:!0},{handle:"filesystem"},{src:"/(.*)",dest:"/index.html"}]},{name:"Nuxt",slug:"nuxtjs",demo:"https://nuxtjs-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/nuxt.svg",screenshot:"https://py8fhxnkzwtsqdo9.public.blob.vercel-storage.com/front/import/nuxtjs.png",tagline:"Nuxt is the open source framework that makes full-stack development with Vue.js intuitive.",description:"A Nuxt app, bootstrapped with create-nuxt-app.",website:"https://nuxt.com",sort:2,envPrefix:"NUXT_ENV_",supersedes:["nitro"],detectors:{some:[{matchPackage:"nuxt"},{matchPackage:"nuxt3"},{matchPackage:"nuxt-edge"},{matchPackage:"nuxt-nightly"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `nuxt build`",value:"nuxt build"},devCommand:{value:"nuxt dev"},outputDirectory:{value:"dist"}},dependency:"nuxt",getOutputDirName:async()=>"dist",cachePattern:".nuxt/**",defaultRoutes:[{src:"/sw.js",headers:{"cache-control":"no-cache"},continue:!0},{src:"/_nuxt/(.*)",headers:{"cache-control":"public,max-age=31536000,immutable"},continue:!0},{handle:"filesystem"},{src:"/(.*)",dest:"/200.html"}]},{name:"RedwoodJS",slug:"redwoodjs",demo:"https://redwood-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/redwoodjs.svg",tagline:"RedwoodJS is a full-stack framework for the Jamstack.",description:"A RedwoodJS app, bootstraped with create-redwood-app.",website:"https://redwoodjs.com",envPrefix:"REDWOOD_ENV_",useRuntime:{src:"package.json",use:"@vercel/redwood"},ignoreRuntimes:["@vercel/node"],detectors:{every:[{matchPackage:"@redwoodjs/core"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{value:"yarn rw deploy vercel"},devCommand:{value:'yarn rw dev --fwd="--port=$PORT --open=false"',placeholder:"yarn rw dev"},outputDirectory:{placeholder:"RedwoodJS default"}},getOutputDirName:async()=>"public"},{name:"Hugo",slug:"hugo",demo:"https://hugo-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/hugo.svg",tagline:"Hugo is the world\u2019s fastest framework for building websites, written in Go.",description:"A Hugo site, created with the Hugo CLI.",website:"https://gohugo.io",detectors:{some:[{path:"config.yaml",matchContent:"baseURL"},{path:"config.toml",matchContent:"baseURL"},{path:"config.json",matchContent:"baseURL"}]},settings:{installCommand:{placeholder:"None"},buildCommand:{placeholder:"`npm run build` or `hugo --gc`",value:"hugo --gc"},devCommand:{value:"hugo server -D -w -p $PORT",placeholder:"hugo server -D"},outputDirectory:{placeholder:"`public` or `publishDir` from the `config` file"}},getOutputDirName:async dirPrefix=>{let config=await(0,import_read_config_file.readConfigFile)(["config.json","config.yaml","config.toml"].map(fileName=>(0,import_path.join)(dirPrefix,fileName)));return config&&config.publishDir||"public"},defaultVersion:"0.58.2"},{name:"Jekyll",slug:"jekyll",demo:"https://jekyll-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/jekyll.svg",tagline:"Jekyll makes it super easy to transform your plain text into static websites and blogs.",description:"A Jekyll site, created with the Jekyll CLI.",website:"https://jekyllrb.com/",detectors:{every:[{path:"_config.yml"}]},settings:{installCommand:{value:"bundle install"},buildCommand:{placeholder:"`npm run build` or `jekyll build`",value:"jekyll build"},devCommand:{value:"bundle exec jekyll serve --watch --port $PORT",placeholder:"bundle exec jekyll serve"},outputDirectory:{placeholder:"`_site` or `destination` from `_config.yml`"}},getOutputDirName:async dirPrefix=>{let config=await(0,import_read_config_file.readConfigFile)((0,import_path.join)(dirPrefix,"_config.yml"));return config&&config.destination||"_site"},cachePattern:"{vendor/bin,vendor/cache,vendor/bundle}/**"},{name:"Brunch",slug:"brunch",demo:"https://brunch-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/brunch.svg",tagline:"Brunch is a fast and simple webapp build tool with seamless incremental compilation for rapid development.",description:"A Brunch app, created with the Brunch CLI.",website:"https://brunch.io/",detectors:{some:[{matchPackage:"brunch"},{path:"brunch-config.js"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `brunch build --production`",value:"brunch build --production"},devCommand:{value:"brunch watch --server --port $PORT",placeholder:"brunch watch --server"},outputDirectory:{value:"public"}},getOutputDirName:async()=>"public"},{name:"Middleman",slug:"middleman",demo:"https://middleman-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/middleman.svg",tagline:"Middleman is a static site generator that uses all the shortcuts and tools in modern web development.",description:"A Middleman app, created with the Middleman CLI.",website:"https://middlemanapp.com/",detectors:{every:[{path:"config.rb"}]},settings:{installCommand:{value:"bundle install"},buildCommand:{placeholder:"`npm run build` or `bundle exec middleman build`",value:"bundle exec middleman build"},devCommand:{placeholder:"bundle exec middleman server",value:"bundle exec middleman server -p $PORT"},outputDirectory:{value:"build"}},getOutputDirName:async()=>"build",cachePattern:"{vendor/bin,vendor/cache,vendor/bundle}/**"},{name:"Zola",slug:"zola",demo:"https://zola-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/zola.svg",tagline:"Everything you need to make a static site engine in one binary.",description:'A Zola app, created with the "Getting Started" tutorial.',website:"https://www.getzola.org",detectors:{every:[{path:"config.toml",matchContent:"base_url"}]},settings:{installCommand:{placeholder:"None"},buildCommand:{value:"zola build"},devCommand:{placeholder:"zola serve",value:"zola serve --port $PORT"},outputDirectory:{value:"public"}},getOutputDirName:async()=>"public",defaultVersion:"0.13.0"},{name:"Hydrogen (v1)",slug:"hydrogen",demo:"https://hydrogen-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/hydrogen.svg",tagline:"React framework for headless commerce",description:"React framework for headless commerce",website:"https://hydrogen.shopify.dev",supersedes:["vite"],useRuntime:{src:"package.json",use:"@vercel/hydrogen"},envPrefix:"PUBLIC_",detectors:{some:[{matchPackage:"@shopify/hydrogen"},{path:"hydrogen.config.js"},{path:"hydrogen.config.ts"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{value:"shopify hydrogen build",placeholder:"`npm run build` or `shopify hydrogen build`"},devCommand:{value:"shopify hydrogen dev",placeholder:"shopify hydrogen dev"},outputDirectory:{value:"dist"}},dependency:"@shopify/hydrogen",getOutputDirName:async()=>"dist"},{name:"Vite",slug:"vite",demo:"https://vite-vue-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/vite.svg",tagline:"Vite is a new breed of frontend build tool that significantly improves the frontend development experience.",description:"A Vue.js app, created with Vite.",website:"https://vitejs.dev",supersedes:["ionic-react"],envPrefix:"VITE_",detectors:{every:[{matchPackage:"vite"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `vite build`",value:"vite build"},devCommand:{placeholder:"vite",value:"vite --port $PORT"},outputDirectory:{value:"dist"}},dependency:"vite",getOutputDirName:async()=>"dist"},{name:"TanStack Start",slug:"tanstack-start",logo:"https://api-frameworks.vercel.sh/framework-logos/tanstack-start.svg",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/tanstack-start-dark.svg",tagline:"Full-stack Framework powered by TanStack Router for React and Solid.",description:"Full-document SSR, Streaming, Server Functions, bundling and more, powered by TanStack Router and Vite - Ready to deploy to your favorite hosting provider.",website:"https://tanstack.com/start",supersedes:["ionic-react","vite"],detectors:{every:[{matchPackage:"@tanstack/router-plugin"}],some:[{matchPackage:"@tanstack/react-start"},{matchPackage:"@tanstack/solid-start"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `vite build`",value:"vite build"},devCommand:{placeholder:"vite",value:"vite --port $PORT"},outputDirectory:{value:"dist"}},getOutputDirName:async()=>"dist"},{name:"TanStack Start",slug:"tanstack-start-lovable",logo:"https://api-frameworks.vercel.sh/framework-logos/tanstack-start.svg",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/tanstack-start-dark.svg",platform:{name:"lovable",logo:"https://api-frameworks.vercel.sh/framework-logos/lovable.svg"},tagline:"Full-stack Framework powered by TanStack Router imported from Lovable",description:"Full-document SSR, Streaming, Server Functions, bundling and more, imported from Lovable",website:"https://lovable.dev/",supersedes:["tanstack-start","ionic-react","vite"],detectors:{every:[{matchPackage:"@lovable.dev/vite-tanstack-config"}],some:[{matchPackage:"@tanstack/react-start"},{matchPackage:"@tanstack/solid-start"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `vite build`",value:"vite build"},devCommand:{placeholder:"vite",value:"vite --port $PORT"},outputDirectory:{value:"dist"}},getOutputDirName:async()=>"dist"},{name:"VitePress",slug:"vitepress",demo:"https://vitepress-starter-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/vite.svg",tagline:"VitePress is VuePress' little brother, built on top of Vite.",description:"VuePress on top of Vite",website:"https://vitepress.vuejs.org/",detectors:{every:[{matchPackage:"vitepress"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `vitepress build docs`",value:"vitepress build docs"},devCommand:{value:"vitepress dev docs --port $PORT"},outputDirectory:{value:"docs/.vitepress/dist"}},getOutputDirName:async()=>"docs/.vitepress/dist"},{name:"VuePress",slug:"vuepress",demo:"https://vuepress-starter-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/vuepress.svg",tagline:"Vue-powered Static Site Generator",description:"Vue-powered Static Site Generator",website:"https://vuepress.vuejs.org/",detectors:{every:[{matchPackage:"vuepress"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `vuepress build src`",value:"vuepress build src"},devCommand:{value:"vuepress dev src --port $PORT"},outputDirectory:{value:"src/.vuepress/dist"}},getOutputDirName:async()=>"src/.vuepress/dist"},{name:"Parcel",slug:"parcel",demo:"https://parcel-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/parcel.svg",tagline:"Parcel is a zero configuration build tool for the web that scales to projects of any size and complexity.",description:"A vanilla web app built with Parcel.",website:"https://parceljs.org",detectors:{every:[{matchPackage:"parcel"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `parcel build`",value:"parcel build"},devCommand:{placeholder:"parcel",value:"parcel"},outputDirectory:{value:"dist"}},dependency:"parcel",getOutputDirName:async()=>"dist",defaultRoutes:[{src:"^/[^./]+\\.[0-9a-f]{8}\\.(css|js|png|jpg|webp|avif|svg)$",headers:{"cache-control":"s-maxage=31536000, immutable"},continue:!0},{handle:"filesystem"}]},{name:"FastAPI",slug:"fastapi",demo:"https://vercel-fastapi-gamma-smoky.vercel.app/",logo:"https://api-frameworks.vercel.sh/framework-logos/fastapi.svg",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/fastapi.svg",tagline:"FastAPI framework, high performance, easy to learn, fast to code, ready for production",description:"FastAPI framework, high performance, easy to learn, fast to code, ready for production",website:"https://fastapi.tiangolo.com",supersedes:["python"],useRuntime:{src:"<detect>",use:"@vercel/python"},ignoreRuntimes:["@vercel/python"],detectors:{some:[{path:"requirements.txt",matchContent:"fastapi"},{path:"pyproject.toml",matchContent:"fastapi"},{path:"Pipfile",matchContent:"fastapi"}]},settings:{installCommand:{placeholder:"`pip install -r requirements.txt`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/"}]},{name:"Flask",slug:"flask",logo:"https://api-frameworks.vercel.sh/framework-logos/flask.svg",tagline:"The Python micro web framework",description:"A Flask app, ready for production",website:"https://flask.palletsprojects.com",supersedes:["python"],useRuntime:{src:"<detect>",use:"@vercel/python"},ignoreRuntimes:["@vercel/python"],detectors:{some:[{path:"requirements.txt",matchContent:"[Ff]lask"},{path:"pyproject.toml",matchContent:"[Ff]lask"},{path:"Pipfile",matchContent:"[Ff]lask"}]},settings:{installCommand:{placeholder:"`pip install -r requirements.txt`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/"}]},{name:"FastHTML",slug:"fasthtml",demo:"https://fasthtml-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/fasthtml.svg",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/fasthtml-dark.svg",tagline:"The fastest way to create an HTML app",description:"A library for writing fast and scalable Starlette-powered web applications",website:"https://fastht.ml",supersedes:["python"],useRuntime:{src:"main.py",use:"@vercel/python"},detectors:{every:[{path:"requirements.txt",matchContent:"python-fasthtml"}]},settings:{installCommand:{placeholder:"`pip install`"},buildCommand:{placeholder:"None",value:null},devCommand:{value:"uvicorn main:app --reload"},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/main"}]},{name:"Django",slug:"django",logo:"https://api-frameworks.vercel.sh/framework-logos/django.svg",tagline:"Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design. ",description:"A Django project served via the Python Runtime.",website:"https://www.djangoproject.com",supersedes:["python"],useRuntime:{src:"<detect>",use:"@vercel/python"},ignoreRuntimes:["@vercel/python"],detectors:{some:[{path:"requirements.txt",matchContent:"[Dd]jango"},{path:"pyproject.toml",matchContent:"[Dd]jango"},{path:"Pipfile",matchContent:"[Dd]jango"},{path:"manage.py",matchContent:"DJANGO_SETTINGS_MODULE"}]},settings:{installCommand:{placeholder:"`pip install -r requirements.txt`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/"}]},{name:"Ash",slug:"ash",logo:"https://api-frameworks.vercel.sh/framework-logos/ash.svg",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/ash-dark.svg",tagline:"A filesystem-first framework for durable backend agents on Vercel.",description:"An Ash app: agents authored as a directory of files, compiled and served on Vercel.",detectors:{every:[{path:"package.json",matchContent:'"(dev)?(d|D)ependencies":\\s*{[^}]*"experimental-ash":\\s*".+?"[^}]*}'}]},settings:{installCommand:{placeholder:"`pnpm install`, `yarn install`, or `npm install`"},buildCommand:{value:"ash build",placeholder:"`npm run build` or `ash build`"},devCommand:{value:"ash dev",placeholder:"ash dev"},outputDirectory:{value:".output"}},getOutputDirName:async()=>".output",experimental:!0},{name:"Factory (Eve)",slug:"factory-eve",logo:"https://api-frameworks.vercel.sh/framework-logos/eve.svg",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/eve-dark.svg",tagline:"A software factory built with Eve.",description:"A Factory app built with the Eve agent framework.",supersedes:["eve"],detectors:{every:[{matchPackage:"eve"},{matchPackage:"@vercel/factory"}]},settings:{installCommand:{placeholder:"`pnpm install`, `yarn install`, or `npm install`"},buildCommand:{value:"eve build",placeholder:"`npm run build` or `eve build`"},devCommand:{value:"eve dev",placeholder:"eve dev"},outputDirectory:{value:".output"}},getOutputDirName:async()=>".output"},{name:"eve",slug:"eve",logo:"https://api-frameworks.vercel.sh/framework-logos/eve.svg",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/eve-dark.svg",tagline:"A filesystem-first framework for durable backend agents on Vercel.",description:"An eve app: agents authored as a directory of files, compiled and served on Vercel.",detectors:{every:[{path:"package.json",matchContent:'"(dev)?(d|D)ependencies":\\s*{[^}]*"eve":\\s*".+?"[^}]*}'}]},settings:{installCommand:{placeholder:"`pnpm install`, `yarn install`, or `npm install`"},buildCommand:{value:"eve build",placeholder:"`npm run build` or `eve build`"},devCommand:{value:"eve dev",placeholder:"eve dev"},outputDirectory:{value:".output"}},getOutputDirName:async()=>".output"},{name:"Sanity",slug:"sanity",demo:"https://template-studio-clean.sanity.dev",logo:"https://api-frameworks.vercel.sh/framework-logos/sanity.svg",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/sanity-dark.svg",tagline:"The back-end built for AI content operations. Power web, mobile, and agentic applications at scale.",description:"A Sanity Studio",website:"https://www.sanity.io",envPrefix:"SANITY_STUDIO_",detectors:{some:[{path:"sanity.config.js"},{path:"sanity.config.jsx"},{path:"sanity.config.ts"},{path:"sanity.config.tsx"}],every:[{matchPackage:"sanity"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `sanity build`",value:"sanity build"},devCommand:{value:"sanity dev --port $PORT"},outputDirectory:{value:"dist"}},dependency:"sanity",getOutputDirName:async()=>"dist",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/index.html"}]},{name:"Sanity (v2 - legacy)",slug:"sanity-v2",demo:"https://sanity-studio-template.vercel.app",logo:"https://api-frameworks.vercel.sh/framework-logos/sanity-v2.svg",tagline:"The structured content platform.",description:"A Sanity Studio",website:"https://www.sanity.io",envPrefix:"SANITY_STUDIO_",detectors:{some:[{path:"sanity.json"}],every:[{path:"package.json",matchContent:'"(dev)?(d|D)ependencies":\\s*{[^}]*"@sanity/cli":\\s*"\\^?2\\..*"[^}]*}'}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `sanity build`",value:"sanity build"},devCommand:{value:"sanity start --port $PORT"},outputDirectory:{value:"dist"}},dependency:"@sanity/cli",getOutputDirName:async()=>"dist",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/index.html"}]},{name:"Storybook",slug:"storybook",logo:"https://api-frameworks.vercel.sh/framework-logos/storybook.svg",tagline:"Frontend workshop for UI development",description:"Storybook is a frontend workshop for building UI components and pages in isolation.",website:"https://storybook.js.org",ignoreRuntimes:["@vercel/next","@vercel/node"],disableRootMiddleware:!0,detectionConfidence:"weak",detectors:{every:[{matchPackage:"storybook"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{value:"storybook build",ignorePackageJsonScript:!0},devCommand:{value:"storybook dev -p $PORT"},outputDirectory:{value:"storybook-static"}},getOutputDirName:async()=>"storybook-static"},{name:"Nitro",slug:"nitro",logo:"https://api-frameworks.vercel.sh/framework-logos/nitro.svg",demo:"https://nitro-template.vercel.app",tagline:"Nitro is a next generation server toolkit.",description:"Nitro lets you create web servers that run on multiple platforms.",website:"https://nitro.build/",detectors:{some:[{matchPackage:"nitropack"},{matchPackage:"nitro"}]},supersedes:["vite"],settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `nitro build`",value:"nitro build"},devCommand:{value:"nitro dev"},outputDirectory:{value:"dist"}},getOutputDirName:async()=>"public"},{name:"Hono",slug:"hono",logo:"https://api-frameworks.vercel.sh/framework-logos/hono.svg",demo:"https://hono.vercel.dev",tagline:"Web framework built on Web Standards",description:"Fast, lightweight, built on Web Standards. Support for any JavaScript runtime.",website:"https://hono.dev",supersedes:["node"],useRuntime:{src:"index.js",use:"@vercel/hono"},defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/"}],detectors:{every:[{matchPackage:"hono"}],some:[{path:"app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`},{path:"src/server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']hono["']\\s*(?:\\))?`}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{value:"N/A"}},dependency:"hono",getOutputDirName:async()=>"public"},{name:"Express",slug:"express",logo:"https://api-frameworks.vercel.sh/framework-logos/express.svg",demo:"https://express-vercel-example-demo.vercel.app/",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/express-dark.svg",tagline:"Fast, unopinionated, minimalist web framework for Node.js",description:"Fast, unopinionated, minimalist web framework for Node.js",website:"https://expressjs.com",supersedes:["node"],useRuntime:{src:"index.js",use:"@vercel/express"},defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/"}],detectors:{every:[{matchPackage:"express"}],some:[{path:"app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`},{path:"src/server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']express["']\\s*(?:\\))?`}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{value:"N/A"}},dependency:"express",getOutputDirName:async()=>"public"},{name:"H3",slug:"h3",logo:"https://api-frameworks.vercel.sh/framework-logos/h3.svg",tagline:"Universal, Tiny, and Fast Servers",description:"H(TTP) server framework built on top of web standards for high performance and composability.",website:"https://h3.dev/",supersedes:["node"],useRuntime:{src:"index.js",use:"@vercel/h3"},defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/"}],detectors:{every:[{matchPackage:"h3"}],some:[{path:"app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`},{path:"src/server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']h3["']\\s*(?:\\))?`}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{value:"N/A"}},dependency:"h3",getOutputDirName:async()=>"public"},{name:"Koa",slug:"koa",logo:"https://api-frameworks.vercel.sh/framework-logos/koa.svg",tagline:"Expressive middleware for Node.js using ES2017 async functions",description:"Koa is a new web framework designed by the team behind Express, which aims to be a smaller, more expressive, and more robust foundation for web applications and APIs.",website:"https://koajs.com",supersedes:["node"],useRuntime:{src:"index.js",use:"@vercel/koa"},defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/"}],detectors:{every:[{matchPackage:"koa"}],some:[{path:"app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`},{path:"src/server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']koa["']\\s*(?:\\))?`}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{value:"N/A"}},dependency:"koa",getOutputDirName:async()=>"public"},{name:"NestJS",slug:"nestjs",logo:"https://api-frameworks.vercel.sh/framework-logos/nestjs.svg",tagline:"Framework for building efficient, scalable Node.js server-side applications",description:"A progressive Node.js framework for building efficient, reliable and scalable server-side applications.",website:"https://nestjs.com/",supersedes:["node"],useRuntime:{src:"index.js",use:"@vercel/nestjs"},defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/"}],detectors:{every:[{matchPackage:"@nestjs/core"}],some:[{path:"src/main.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/main.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/main.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/main.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/main.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/main.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"main.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"main.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"main.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"main.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"main.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"main.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`},{path:"src/server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{value:"N/A"}},dependency:"nestjs",getOutputDirName:async()=>"public"},{name:"Elysia",slug:"elysia",logo:"https://api-frameworks.vercel.sh/framework-logos/elysia.svg",tagline:"Ergonomic framework for humans",description:"TypeScript with End-to-End Type Safety, type integrity, and exceptional developer experience. Supercharged by Bun.",website:"https://elysiajs.com/",supersedes:["node"],useRuntime:{src:"index.js",use:"@vercel/elysia"},defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/"}],detectors:{every:[{matchPackage:"elysia"}],some:[{path:"app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`},{path:"src/server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']elysia["']\\s*(?:\\))?`}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public"},{name:"Fastify",slug:"fastify",logo:"https://api-frameworks.vercel.sh/framework-logos/fastify.svg",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/fastify-dark.svg",tagline:"Fast and low overhead web framework, for Node.js",description:"Fastify is a web framework highly focused on providing the best developer experience with the least overhead and a powerful plugin architecture.",website:"https://fastify.dev/",supersedes:["node"],useRuntime:{src:"index.js",use:"@vercel/fastify"},defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/"}],detectors:{every:[{matchPackage:"fastify"}],some:[{path:"app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/index.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/index.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/index.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/index.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/index.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/index.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/app.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/app.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/app.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/app.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/app.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/app.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/server.cjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/server.js",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/server.mjs",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/server.mts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/server.ts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`},{path:"src/server.cts",matchContent:`(?:from|require|import)\\s*(?:\\(\\s*)?["']fastify["']\\s*(?:\\))?`}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public"},{name:"xmcp",slug:"xmcp",logo:"https://api-frameworks.vercel.sh/framework-logos/xmcp.svg",demo:"https://xmcp-template.vercel.app/",tagline:"The MCP framework for building AI-powered tools",description:"A framework for building Model Context Protocol servers with zero configuration.",website:"https://xmcp.dev",detectors:{some:[{path:"xmcp.config.ts"},{path:"xmcp.config.js"},{matchPackage:"xmcp"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `xmcp build`",value:"xmcp build --vercel"},devCommand:{value:"xmcp dev",placeholder:"xmcp dev"},outputDirectory:{value:"dist"}},dependency:"xmcp",getOutputDirName:async()=>"dist"},{name:"Python",slug:"python",runtimeFramework:!0,logo:"https://api-frameworks.vercel.sh/framework-logos/python.svg",tagline:"Python is a programming language that lets you work quickly and integrate systems more effectively.",description:"A generic Python application deployed as a serverless function.",website:"https://python.org",useRuntime:{src:"<detect>",use:"@vercel/python"},ignoreRuntimes:["@vercel/python"],detectors:{some:[{path:"requirements.txt"},{path:"pyproject.toml"},{path:"Pipfile"}]},settings:{installCommand:{placeholder:"`pip install -r requirements.txt`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/"}]},{name:"Ruby",slug:"ruby",experimental:!0,runtimeFramework:!0,logo:"https://api-frameworks.vercel.sh/framework-logos/ruby.svg",tagline:"A dynamic, open source programming language with a focus on simplicity and productivity.",description:"A generic Ruby application deployed as a serverless function.",website:"https://www.ruby-lang.org",useRuntime:{src:"config.ru",use:"@vercel/ruby"},ignoreRuntimes:["@vercel/ruby"],detectors:{every:[{path:"config.ru"},{path:"Gemfile"}]},settings:{installCommand:{placeholder:"`bundle install`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/config"}]},{name:"Rust",slug:"rust",runtimeFramework:!0,logo:"https://api-frameworks.vercel.sh/framework-logos/rust.svg",tagline:"A language empowering everyone to build reliable and efficient software.",description:"A generic Rust application deployed as a serverless function.",website:"https://www.rust-lang.org",useRuntime:{src:"src/main.rs",use:"@vercel/rust"},ignoreRuntimes:["@vercel/rust"],detectors:{every:[{path:"Cargo.toml"},{path:"src/main.rs"}]},settings:{installCommand:{placeholder:"None"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"`cargo run`",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public"},{name:"Axum",slug:"axum",experimental:!0,supersedes:["rust"],logo:"https://api-frameworks.vercel.sh/framework-logos/axum.svg",tagline:"Ergonomic and modular web framework built with Tokio, Tower, and Hyper.",description:"An Axum application deployed as a serverless function.",website:"https://github.com/tokio-rs/axum",useRuntime:{src:"src/main.rs",use:"@vercel/rust"},ignoreRuntimes:["@vercel/rust"],detectors:{every:[{path:"Cargo.toml",matchContent:"axum\\s*="},{path:"src/main.rs"}]},settings:{installCommand:{placeholder:"None"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"`cargo run`",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public"},{name:"Actix Web",slug:"actix-web",experimental:!0,runtimeFramework:!0,supersedes:["rust"],logo:"https://api-frameworks.vercel.sh/framework-logos/actix-web.svg",tagline:"A powerful, pragmatic, and extremely fast web framework for Rust.",description:"An Actix Web application deployed as a serverless function.",website:"https://actix.rs",useRuntime:{src:"src/main.rs",use:"@vercel/rust"},ignoreRuntimes:["@vercel/rust"],detectors:{every:[{path:"Cargo.toml",matchContent:"actix-web\\s*="},{path:"src/main.rs"}]},settings:{installCommand:{placeholder:"None"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"`cargo run`",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public"},{name:"Bun",slug:"bun",runtimeFramework:!0,experimental:!0,supersedes:["node"],logo:"https://api-frameworks.vercel.sh/framework-logos/bun.svg",tagline:"Bun is a fast all-in-one JavaScript runtime, bundler, and package manager.",description:"A Bun application deployed as a serverless function.",website:"https://bun.com",useRuntime:{src:"package.json",use:"@vercel/backends"},ignoreRuntimes:["@vercel/node"],detectors:{every:[{path:"bun.lock"}],some:[{path:"server.cjs"},{path:"server.js"},{path:"server.mjs"},{path:"server.mts"},{path:"server.ts"},{path:"server.cts"},{path:"src/server.cjs"},{path:"src/server.js"},{path:"src/server.mjs"},{path:"src/server.mts"},{path:"src/server.ts"},{path:"src/server.cts"}]},settings:{installCommand:{value:"bun install",placeholder:"bun install"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"`bun dev`, `bun run dev`, or `bun --hot server.ts`",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/"}]},{name:"Node",slug:"node",runtimeFramework:!0,logo:"https://api-frameworks.vercel.sh/framework-logos/node.svg",tagline:"Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine.",description:"A generic Node.js application deployed as a serverless function.",website:"https://nodejs.org",useRuntime:{src:"package.json",use:"@vercel/backends"},ignoreRuntimes:["@vercel/node"],detectors:{some:[{path:"server.cjs"},{path:"server.js"},{path:"server.mjs"},{path:"server.mts"},{path:"server.ts"},{path:"server.cts"},{path:"src/server.cjs"},{path:"src/server.js"},{path:"src/server.mjs"},{path:"src/server.mts"},{path:"src/server.ts"},{path:"src/server.cts"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"`npm run dev`, `node server.js`, or `npx ts-node server.ts`",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public",defaultRoutes:[{handle:"filesystem"},{src:"/(.*)",dest:"/"}]},{name:"Go",slug:"go",runtimeFramework:!0,logo:"https://api-frameworks.vercel.sh/framework-logos/go.svg",tagline:"An open-source programming language supported by Google.",description:"A generic Go application deployed as a serverless function.",website:"https://go.dev",useRuntime:{src:"index.go",use:"@vercel/go"},ignoreRuntimes:["@vercel/go"],detectors:{every:[{path:"go.mod"}],some:[{path:"main.go"},{path:"cmd/api/main.go"},{path:"cmd/server/main.go"}]},settings:{installCommand:{placeholder:"`go mod download`"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"`go run .` or `go run ./cmd/api`",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public"},{name:"Services",slug:"services",logo:"https://api-frameworks.vercel.sh/framework-logos/services.svg",tagline:"Multiple services deployed as serverless functions within your project.",description:"Multiple services deployed as serverless functions within your project.",website:"https://vercel.com",settings:{installCommand:{placeholder:"None"},buildCommand:{placeholder:"None",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{value:"N/A"}},getOutputDirName:async()=>"public"},{name:"Mastra",slug:"mastra",logo:"https://api-frameworks.vercel.sh/framework-logos/mastra.svg",darkModeLogo:"https://api-frameworks.vercel.sh/framework-logos/mastra-dark.svg",tagline:"Build AI agents with a modern TypeScript stack",description:"Mastra is a framework for building AI-powered apps and agents with workflows, memory, streaming, evals, tracing, and Studio, an interactive UI for dev and testing.",website:"https://mastra.ai",detectors:{every:[{matchPackage:"mastra"}]},settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run build` or `mastra build`",value:"mastra build"},devCommand:{value:"mastra dev"},outputDirectory:{value:".mastra"}},getOutputDirName:async()=>".mastra"},{name:"Other",slug:null,logo:"https://api-frameworks.vercel.sh/framework-logos/other.svg",description:"No framework or an unoptimized framework.",settings:{installCommand:{placeholder:"`yarn install`, `pnpm install`, `npm install`, or `bun install`"},buildCommand:{placeholder:"`npm run vercel-build` or `npm run build`",value:null},devCommand:{placeholder:"None",value:null},outputDirectory:{placeholder:"`public` if it exists, or `.`"}},getOutputDirName:async()=>"public"}],frameworkList=frameworks,frameworks_default=frameworkList}});export{require_frameworks};
@@ -0,0 +1,7 @@
1
+ import { createRequire as __createRequire } from 'node:module';
2
+ import { fileURLToPath as __fileURLToPath } from 'node:url';
3
+ import { dirname as __dirname_ } from 'node:path';
4
+ const require = __createRequire(import.meta.url);
5
+ const __filename = __fileURLToPath(import.meta.url);
6
+ const __dirname = __dirname_(__filename);
7
+ import{__commonJS}from"./chunk-6L236MNA.js";var require_semver=__commonJS({"../../node_modules/.pnpm/semver@5.7.2/node_modules/semver/semver.js"(exports,module){exports=module.exports=SemVer;var debug;typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?debug=function(){var args=Array.prototype.slice.call(arguments,0);args.unshift("SEMVER"),console.log.apply(console,args)}:debug=function(){};exports.SEMVER_SPEC_VERSION="2.0.0";var MAX_LENGTH=256,MAX_SAFE_INTEGER=Number.MAX_SAFE_INTEGER||9007199254740991,MAX_SAFE_COMPONENT_LENGTH=16,MAX_SAFE_BUILD_LENGTH=MAX_LENGTH-6,re=exports.re=[],safeRe=exports.safeRe=[],src=exports.src=[],R=0,LETTERDASHNUMBER="[a-zA-Z0-9-]",safeRegexReplacements=[["\\s",1],["\\d",MAX_LENGTH],[LETTERDASHNUMBER,MAX_SAFE_BUILD_LENGTH]];function makeSafeRe(value){for(var i2=0;i2<safeRegexReplacements.length;i2++){var token=safeRegexReplacements[i2][0],max=safeRegexReplacements[i2][1];value=value.split(token+"*").join(token+"{0,"+max+"}").split(token+"+").join(token+"{1,"+max+"}")}return value}var NUMERICIDENTIFIER=R++;src[NUMERICIDENTIFIER]="0|[1-9]\\d*";var NUMERICIDENTIFIERLOOSE=R++;src[NUMERICIDENTIFIERLOOSE]="\\d+";var NONNUMERICIDENTIFIER=R++;src[NONNUMERICIDENTIFIER]="\\d*[a-zA-Z-]"+LETTERDASHNUMBER+"*";var MAINVERSION=R++;src[MAINVERSION]="("+src[NUMERICIDENTIFIER]+")\\.("+src[NUMERICIDENTIFIER]+")\\.("+src[NUMERICIDENTIFIER]+")";var MAINVERSIONLOOSE=R++;src[MAINVERSIONLOOSE]="("+src[NUMERICIDENTIFIERLOOSE]+")\\.("+src[NUMERICIDENTIFIERLOOSE]+")\\.("+src[NUMERICIDENTIFIERLOOSE]+")";var PRERELEASEIDENTIFIER=R++;src[PRERELEASEIDENTIFIER]="(?:"+src[NUMERICIDENTIFIER]+"|"+src[NONNUMERICIDENTIFIER]+")";var PRERELEASEIDENTIFIERLOOSE=R++;src[PRERELEASEIDENTIFIERLOOSE]="(?:"+src[NUMERICIDENTIFIERLOOSE]+"|"+src[NONNUMERICIDENTIFIER]+")";var PRERELEASE=R++;src[PRERELEASE]="(?:-("+src[PRERELEASEIDENTIFIER]+"(?:\\."+src[PRERELEASEIDENTIFIER]+")*))";var PRERELEASELOOSE=R++;src[PRERELEASELOOSE]="(?:-?("+src[PRERELEASEIDENTIFIERLOOSE]+"(?:\\."+src[PRERELEASEIDENTIFIERLOOSE]+")*))";var BUILDIDENTIFIER=R++;src[BUILDIDENTIFIER]=LETTERDASHNUMBER+"+";var BUILD=R++;src[BUILD]="(?:\\+("+src[BUILDIDENTIFIER]+"(?:\\."+src[BUILDIDENTIFIER]+")*))";var FULL=R++,FULLPLAIN="v?"+src[MAINVERSION]+src[PRERELEASE]+"?"+src[BUILD]+"?";src[FULL]="^"+FULLPLAIN+"$";var LOOSEPLAIN="[v=\\s]*"+src[MAINVERSIONLOOSE]+src[PRERELEASELOOSE]+"?"+src[BUILD]+"?",LOOSE=R++;src[LOOSE]="^"+LOOSEPLAIN+"$";var GTLT=R++;src[GTLT]="((?:<|>)?=?)";var XRANGEIDENTIFIERLOOSE=R++;src[XRANGEIDENTIFIERLOOSE]=src[NUMERICIDENTIFIERLOOSE]+"|x|X|\\*";var XRANGEIDENTIFIER=R++;src[XRANGEIDENTIFIER]=src[NUMERICIDENTIFIER]+"|x|X|\\*";var XRANGEPLAIN=R++;src[XRANGEPLAIN]="[v=\\s]*("+src[XRANGEIDENTIFIER]+")(?:\\.("+src[XRANGEIDENTIFIER]+")(?:\\.("+src[XRANGEIDENTIFIER]+")(?:"+src[PRERELEASE]+")?"+src[BUILD]+"?)?)?";var XRANGEPLAINLOOSE=R++;src[XRANGEPLAINLOOSE]="[v=\\s]*("+src[XRANGEIDENTIFIERLOOSE]+")(?:\\.("+src[XRANGEIDENTIFIERLOOSE]+")(?:\\.("+src[XRANGEIDENTIFIERLOOSE]+")(?:"+src[PRERELEASELOOSE]+")?"+src[BUILD]+"?)?)?";var XRANGE=R++;src[XRANGE]="^"+src[GTLT]+"\\s*"+src[XRANGEPLAIN]+"$";var XRANGELOOSE=R++;src[XRANGELOOSE]="^"+src[GTLT]+"\\s*"+src[XRANGEPLAINLOOSE]+"$";var COERCE=R++;src[COERCE]="(?:^|[^\\d])(\\d{1,"+MAX_SAFE_COMPONENT_LENGTH+"})(?:\\.(\\d{1,"+MAX_SAFE_COMPONENT_LENGTH+"}))?(?:\\.(\\d{1,"+MAX_SAFE_COMPONENT_LENGTH+"}))?(?:$|[^\\d])";var LONETILDE=R++;src[LONETILDE]="(?:~>?)";var TILDETRIM=R++;src[TILDETRIM]="(\\s*)"+src[LONETILDE]+"\\s+";re[TILDETRIM]=new RegExp(src[TILDETRIM],"g");safeRe[TILDETRIM]=new RegExp(makeSafeRe(src[TILDETRIM]),"g");var tildeTrimReplace="$1~",TILDE=R++;src[TILDE]="^"+src[LONETILDE]+src[XRANGEPLAIN]+"$";var TILDELOOSE=R++;src[TILDELOOSE]="^"+src[LONETILDE]+src[XRANGEPLAINLOOSE]+"$";var LONECARET=R++;src[LONECARET]="(?:\\^)";var CARETTRIM=R++;src[CARETTRIM]="(\\s*)"+src[LONECARET]+"\\s+";re[CARETTRIM]=new RegExp(src[CARETTRIM],"g");safeRe[CARETTRIM]=new RegExp(makeSafeRe(src[CARETTRIM]),"g");var caretTrimReplace="$1^",CARET=R++;src[CARET]="^"+src[LONECARET]+src[XRANGEPLAIN]+"$";var CARETLOOSE=R++;src[CARETLOOSE]="^"+src[LONECARET]+src[XRANGEPLAINLOOSE]+"$";var COMPARATORLOOSE=R++;src[COMPARATORLOOSE]="^"+src[GTLT]+"\\s*("+LOOSEPLAIN+")$|^$";var COMPARATOR=R++;src[COMPARATOR]="^"+src[GTLT]+"\\s*("+FULLPLAIN+")$|^$";var COMPARATORTRIM=R++;src[COMPARATORTRIM]="(\\s*)"+src[GTLT]+"\\s*("+LOOSEPLAIN+"|"+src[XRANGEPLAIN]+")";re[COMPARATORTRIM]=new RegExp(src[COMPARATORTRIM],"g");safeRe[COMPARATORTRIM]=new RegExp(makeSafeRe(src[COMPARATORTRIM]),"g");var comparatorTrimReplace="$1$2$3",HYPHENRANGE=R++;src[HYPHENRANGE]="^\\s*("+src[XRANGEPLAIN]+")\\s+-\\s+("+src[XRANGEPLAIN]+")\\s*$";var HYPHENRANGELOOSE=R++;src[HYPHENRANGELOOSE]="^\\s*("+src[XRANGEPLAINLOOSE]+")\\s+-\\s+("+src[XRANGEPLAINLOOSE]+")\\s*$";var STAR=R++;src[STAR]="(<|>)?=?\\s*\\*";for(i=0;i<R;i++)debug(i,src[i]),re[i]||(re[i]=new RegExp(src[i]),safeRe[i]=new RegExp(makeSafeRe(src[i])));var i;exports.parse=parse;function parse(version,options){if((!options||typeof options!="object")&&(options={loose:!!options,includePrerelease:!1}),version instanceof SemVer)return version;if(typeof version!="string"||version.length>MAX_LENGTH)return null;var r=options.loose?safeRe[LOOSE]:safeRe[FULL];if(!r.test(version))return null;try{return new SemVer(version,options)}catch{return null}}exports.valid=valid;function valid(version,options){var v=parse(version,options);return v?v.version:null}exports.clean=clean;function clean(version,options){var s=parse(version.trim().replace(/^[=v]+/,""),options);return s?s.version:null}exports.SemVer=SemVer;function SemVer(version,options){if((!options||typeof options!="object")&&(options={loose:!!options,includePrerelease:!1}),version instanceof SemVer){if(version.loose===options.loose)return version;version=version.version}else if(typeof version!="string")throw new TypeError("Invalid Version: "+version);if(version.length>MAX_LENGTH)throw new TypeError("version is longer than "+MAX_LENGTH+" characters");if(!(this instanceof SemVer))return new SemVer(version,options);debug("SemVer",version,options),this.options=options,this.loose=!!options.loose;var m=version.trim().match(options.loose?safeRe[LOOSE]:safeRe[FULL]);if(!m)throw new TypeError("Invalid Version: "+version);if(this.raw=version,this.major=+m[1],this.minor=+m[2],this.patch=+m[3],this.major>MAX_SAFE_INTEGER||this.major<0)throw new TypeError("Invalid major version");if(this.minor>MAX_SAFE_INTEGER||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>MAX_SAFE_INTEGER||this.patch<0)throw new TypeError("Invalid patch version");m[4]?this.prerelease=m[4].split(".").map(function(id){if(/^[0-9]+$/.test(id)){var num=+id;if(num>=0&&num<MAX_SAFE_INTEGER)return num}return id}):this.prerelease=[],this.build=m[5]?m[5].split("."):[],this.format()}SemVer.prototype.format=function(){return this.version=this.major+"."+this.minor+"."+this.patch,this.prerelease.length&&(this.version+="-"+this.prerelease.join(".")),this.version};SemVer.prototype.toString=function(){return this.version};SemVer.prototype.compare=function(other){return debug("SemVer.compare",this.version,this.options,other),other instanceof SemVer||(other=new SemVer(other,this.options)),this.compareMain(other)||this.comparePre(other)};SemVer.prototype.compareMain=function(other){return other instanceof SemVer||(other=new SemVer(other,this.options)),compareIdentifiers(this.major,other.major)||compareIdentifiers(this.minor,other.minor)||compareIdentifiers(this.patch,other.patch)};SemVer.prototype.comparePre=function(other){if(other instanceof SemVer||(other=new SemVer(other,this.options)),this.prerelease.length&&!other.prerelease.length)return-1;if(!this.prerelease.length&&other.prerelease.length)return 1;if(!this.prerelease.length&&!other.prerelease.length)return 0;var i2=0;do{var a=this.prerelease[i2],b=other.prerelease[i2];if(debug("prerelease compare",i2,a,b),a===void 0&&b===void 0)return 0;if(b===void 0)return 1;if(a===void 0)return-1;if(a===b)continue;return compareIdentifiers(a,b)}while(++i2)};SemVer.prototype.inc=function(release,identifier){switch(release){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",identifier);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",identifier);break;case"prepatch":this.prerelease.length=0,this.inc("patch",identifier),this.inc("pre",identifier);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",identifier),this.inc("pre",identifier);break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":if(this.prerelease.length===0)this.prerelease=[0];else{for(var i2=this.prerelease.length;--i2>=0;)typeof this.prerelease[i2]=="number"&&(this.prerelease[i2]++,i2=-2);i2===-1&&this.prerelease.push(0)}identifier&&(this.prerelease[0]===identifier?isNaN(this.prerelease[1])&&(this.prerelease=[identifier,0]):this.prerelease=[identifier,0]);break;default:throw new Error("invalid increment argument: "+release)}return this.format(),this.raw=this.version,this};exports.inc=inc;function inc(version,release,loose,identifier){typeof loose=="string"&&(identifier=loose,loose=void 0);try{return new SemVer(version,loose).inc(release,identifier).version}catch{return null}}exports.diff=diff;function diff(version1,version2){if(eq(version1,version2))return null;var v1=parse(version1),v2=parse(version2),prefix="";if(v1.prerelease.length||v2.prerelease.length){prefix="pre";var defaultResult="prerelease"}for(var key in v1)if((key==="major"||key==="minor"||key==="patch")&&v1[key]!==v2[key])return prefix+key;return defaultResult}exports.compareIdentifiers=compareIdentifiers;var numeric=/^[0-9]+$/;function compareIdentifiers(a,b){var anum=numeric.test(a),bnum=numeric.test(b);return anum&&bnum&&(a=+a,b=+b),a===b?0:anum&&!bnum?-1:bnum&&!anum?1:a<b?-1:1}exports.rcompareIdentifiers=rcompareIdentifiers;function rcompareIdentifiers(a,b){return compareIdentifiers(b,a)}exports.major=major;function major(a,loose){return new SemVer(a,loose).major}exports.minor=minor;function minor(a,loose){return new SemVer(a,loose).minor}exports.patch=patch;function patch(a,loose){return new SemVer(a,loose).patch}exports.compare=compare;function compare(a,b,loose){return new SemVer(a,loose).compare(new SemVer(b,loose))}exports.compareLoose=compareLoose;function compareLoose(a,b){return compare(a,b,!0)}exports.rcompare=rcompare;function rcompare(a,b,loose){return compare(b,a,loose)}exports.sort=sort;function sort(list,loose){return list.sort(function(a,b){return exports.compare(a,b,loose)})}exports.rsort=rsort;function rsort(list,loose){return list.sort(function(a,b){return exports.rcompare(a,b,loose)})}exports.gt=gt;function gt(a,b,loose){return compare(a,b,loose)>0}exports.lt=lt;function lt(a,b,loose){return compare(a,b,loose)<0}exports.eq=eq;function eq(a,b,loose){return compare(a,b,loose)===0}exports.neq=neq;function neq(a,b,loose){return compare(a,b,loose)!==0}exports.gte=gte;function gte(a,b,loose){return compare(a,b,loose)>=0}exports.lte=lte;function lte(a,b,loose){return compare(a,b,loose)<=0}exports.cmp=cmp;function cmp(a,op,b,loose){switch(op){case"===":return typeof a=="object"&&(a=a.version),typeof b=="object"&&(b=b.version),a===b;case"!==":return typeof a=="object"&&(a=a.version),typeof b=="object"&&(b=b.version),a!==b;case"":case"=":case"==":return eq(a,b,loose);case"!=":return neq(a,b,loose);case">":return gt(a,b,loose);case">=":return gte(a,b,loose);case"<":return lt(a,b,loose);case"<=":return lte(a,b,loose);default:throw new TypeError("Invalid operator: "+op)}}exports.Comparator=Comparator;function Comparator(comp,options){if((!options||typeof options!="object")&&(options={loose:!!options,includePrerelease:!1}),comp instanceof Comparator){if(comp.loose===!!options.loose)return comp;comp=comp.value}if(!(this instanceof Comparator))return new Comparator(comp,options);comp=comp.trim().split(/\s+/).join(" "),debug("comparator",comp,options),this.options=options,this.loose=!!options.loose,this.parse(comp),this.semver===ANY?this.value="":this.value=this.operator+this.semver.version,debug("comp",this)}var ANY={};Comparator.prototype.parse=function(comp){var r=this.options.loose?safeRe[COMPARATORLOOSE]:safeRe[COMPARATOR],m=comp.match(r);if(!m)throw new TypeError("Invalid comparator: "+comp);this.operator=m[1],this.operator==="="&&(this.operator=""),m[2]?this.semver=new SemVer(m[2],this.options.loose):this.semver=ANY};Comparator.prototype.toString=function(){return this.value};Comparator.prototype.test=function(version){return debug("Comparator.test",version,this.options.loose),this.semver===ANY?!0:(typeof version=="string"&&(version=new SemVer(version,this.options)),cmp(version,this.operator,this.semver,this.options))};Comparator.prototype.intersects=function(comp,options){if(!(comp instanceof Comparator))throw new TypeError("a Comparator is required");(!options||typeof options!="object")&&(options={loose:!!options,includePrerelease:!1});var rangeTmp;if(this.operator==="")return rangeTmp=new Range(comp.value,options),satisfies(this.value,rangeTmp,options);if(comp.operator==="")return rangeTmp=new Range(this.value,options),satisfies(comp.semver,rangeTmp,options);var sameDirectionIncreasing=(this.operator===">="||this.operator===">")&&(comp.operator===">="||comp.operator===">"),sameDirectionDecreasing=(this.operator==="<="||this.operator==="<")&&(comp.operator==="<="||comp.operator==="<"),sameSemVer=this.semver.version===comp.semver.version,differentDirectionsInclusive=(this.operator===">="||this.operator==="<=")&&(comp.operator===">="||comp.operator==="<="),oppositeDirectionsLessThan=cmp(this.semver,"<",comp.semver,options)&&(this.operator===">="||this.operator===">")&&(comp.operator==="<="||comp.operator==="<"),oppositeDirectionsGreaterThan=cmp(this.semver,">",comp.semver,options)&&(this.operator==="<="||this.operator==="<")&&(comp.operator===">="||comp.operator===">");return sameDirectionIncreasing||sameDirectionDecreasing||sameSemVer&&differentDirectionsInclusive||oppositeDirectionsLessThan||oppositeDirectionsGreaterThan};exports.Range=Range;function Range(range,options){if((!options||typeof options!="object")&&(options={loose:!!options,includePrerelease:!1}),range instanceof Range)return range.loose===!!options.loose&&range.includePrerelease===!!options.includePrerelease?range:new Range(range.raw,options);if(range instanceof Comparator)return new Range(range.value,options);if(!(this instanceof Range))return new Range(range,options);if(this.options=options,this.loose=!!options.loose,this.includePrerelease=!!options.includePrerelease,this.raw=range.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map(function(range2){return this.parseRange(range2.trim())},this).filter(function(c){return c.length}),!this.set.length)throw new TypeError("Invalid SemVer Range: "+this.raw);this.format()}Range.prototype.format=function(){return this.range=this.set.map(function(comps){return comps.join(" ").trim()}).join("||").trim(),this.range};Range.prototype.toString=function(){return this.range};Range.prototype.parseRange=function(range){var loose=this.options.loose,hr=loose?safeRe[HYPHENRANGELOOSE]:safeRe[HYPHENRANGE];range=range.replace(hr,hyphenReplace),debug("hyphen replace",range),range=range.replace(safeRe[COMPARATORTRIM],comparatorTrimReplace),debug("comparator trim",range,safeRe[COMPARATORTRIM]),range=range.replace(safeRe[TILDETRIM],tildeTrimReplace),range=range.replace(safeRe[CARETTRIM],caretTrimReplace);var compRe=loose?safeRe[COMPARATORLOOSE]:safeRe[COMPARATOR],set=range.split(" ").map(function(comp){return parseComparator(comp,this.options)},this).join(" ").split(/\s+/);return this.options.loose&&(set=set.filter(function(comp){return!!comp.match(compRe)})),set=set.map(function(comp){return new Comparator(comp,this.options)},this),set};Range.prototype.intersects=function(range,options){if(!(range instanceof Range))throw new TypeError("a Range is required");return this.set.some(function(thisComparators){return thisComparators.every(function(thisComparator){return range.set.some(function(rangeComparators){return rangeComparators.every(function(rangeComparator){return thisComparator.intersects(rangeComparator,options)})})})})};exports.toComparators=toComparators;function toComparators(range,options){return new Range(range,options).set.map(function(comp){return comp.map(function(c){return c.value}).join(" ").trim().split(" ")})}function parseComparator(comp,options){return debug("comp",comp,options),comp=replaceCarets(comp,options),debug("caret",comp),comp=replaceTildes(comp,options),debug("tildes",comp),comp=replaceXRanges(comp,options),debug("xrange",comp),comp=replaceStars(comp,options),debug("stars",comp),comp}function isX(id){return!id||id.toLowerCase()==="x"||id==="*"}function replaceTildes(comp,options){return comp.trim().split(/\s+/).map(function(comp2){return replaceTilde(comp2,options)}).join(" ")}function replaceTilde(comp,options){var r=options.loose?safeRe[TILDELOOSE]:safeRe[TILDE];return comp.replace(r,function(_,M,m,p,pr){debug("tilde",comp,_,M,m,p,pr);var ret;return isX(M)?ret="":isX(m)?ret=">="+M+".0.0 <"+(+M+1)+".0.0":isX(p)?ret=">="+M+"."+m+".0 <"+M+"."+(+m+1)+".0":pr?(debug("replaceTilde pr",pr),ret=">="+M+"."+m+"."+p+"-"+pr+" <"+M+"."+(+m+1)+".0"):ret=">="+M+"."+m+"."+p+" <"+M+"."+(+m+1)+".0",debug("tilde return",ret),ret})}function replaceCarets(comp,options){return comp.trim().split(/\s+/).map(function(comp2){return replaceCaret(comp2,options)}).join(" ")}function replaceCaret(comp,options){debug("caret",comp,options);var r=options.loose?safeRe[CARETLOOSE]:safeRe[CARET];return comp.replace(r,function(_,M,m,p,pr){debug("caret",comp,_,M,m,p,pr);var ret;return isX(M)?ret="":isX(m)?ret=">="+M+".0.0 <"+(+M+1)+".0.0":isX(p)?M==="0"?ret=">="+M+"."+m+".0 <"+M+"."+(+m+1)+".0":ret=">="+M+"."+m+".0 <"+(+M+1)+".0.0":pr?(debug("replaceCaret pr",pr),M==="0"?m==="0"?ret=">="+M+"."+m+"."+p+"-"+pr+" <"+M+"."+m+"."+(+p+1):ret=">="+M+"."+m+"."+p+"-"+pr+" <"+M+"."+(+m+1)+".0":ret=">="+M+"."+m+"."+p+"-"+pr+" <"+(+M+1)+".0.0"):(debug("no pr"),M==="0"?m==="0"?ret=">="+M+"."+m+"."+p+" <"+M+"."+m+"."+(+p+1):ret=">="+M+"."+m+"."+p+" <"+M+"."+(+m+1)+".0":ret=">="+M+"."+m+"."+p+" <"+(+M+1)+".0.0"),debug("caret return",ret),ret})}function replaceXRanges(comp,options){return debug("replaceXRanges",comp,options),comp.split(/\s+/).map(function(comp2){return replaceXRange(comp2,options)}).join(" ")}function replaceXRange(comp,options){comp=comp.trim();var r=options.loose?safeRe[XRANGELOOSE]:safeRe[XRANGE];return comp.replace(r,function(ret,gtlt,M,m,p,pr){debug("xRange",comp,ret,gtlt,M,m,p,pr);var xM=isX(M),xm=xM||isX(m),xp=xm||isX(p),anyX=xp;return gtlt==="="&&anyX&&(gtlt=""),xM?gtlt===">"||gtlt==="<"?ret="<0.0.0":ret="*":gtlt&&anyX?(xm&&(m=0),p=0,gtlt===">"?(gtlt=">=",xm?(M=+M+1,m=0,p=0):(m=+m+1,p=0)):gtlt==="<="&&(gtlt="<",xm?M=+M+1:m=+m+1),ret=gtlt+M+"."+m+"."+p):xm?ret=">="+M+".0.0 <"+(+M+1)+".0.0":xp&&(ret=">="+M+"."+m+".0 <"+M+"."+(+m+1)+".0"),debug("xRange return",ret),ret})}function replaceStars(comp,options){return debug("replaceStars",comp,options),comp.trim().replace(safeRe[STAR],"")}function hyphenReplace($0,from,fM,fm,fp,fpr,fb,to,tM,tm,tp,tpr,tb){return isX(fM)?from="":isX(fm)?from=">="+fM+".0.0":isX(fp)?from=">="+fM+"."+fm+".0":from=">="+from,isX(tM)?to="":isX(tm)?to="<"+(+tM+1)+".0.0":isX(tp)?to="<"+tM+"."+(+tm+1)+".0":tpr?to="<="+tM+"."+tm+"."+tp+"-"+tpr:to="<="+to,(from+" "+to).trim()}Range.prototype.test=function(version){if(!version)return!1;typeof version=="string"&&(version=new SemVer(version,this.options));for(var i2=0;i2<this.set.length;i2++)if(testSet(this.set[i2],version,this.options))return!0;return!1};function testSet(set,version,options){for(var i2=0;i2<set.length;i2++)if(!set[i2].test(version))return!1;if(version.prerelease.length&&!options.includePrerelease){for(i2=0;i2<set.length;i2++)if(debug(set[i2].semver),set[i2].semver!==ANY&&set[i2].semver.prerelease.length>0){var allowed=set[i2].semver;if(allowed.major===version.major&&allowed.minor===version.minor&&allowed.patch===version.patch)return!0}return!1}return!0}exports.satisfies=satisfies;function satisfies(version,range,options){try{range=new Range(range,options)}catch{return!1}return range.test(version)}exports.maxSatisfying=maxSatisfying;function maxSatisfying(versions,range,options){var max=null,maxSV=null;try{var rangeObj=new Range(range,options)}catch{return null}return versions.forEach(function(v){rangeObj.test(v)&&(!max||maxSV.compare(v)===-1)&&(max=v,maxSV=new SemVer(max,options))}),max}exports.minSatisfying=minSatisfying;function minSatisfying(versions,range,options){var min=null,minSV=null;try{var rangeObj=new Range(range,options)}catch{return null}return versions.forEach(function(v){rangeObj.test(v)&&(!min||minSV.compare(v)===1)&&(min=v,minSV=new SemVer(min,options))}),min}exports.minVersion=minVersion;function minVersion(range,loose){range=new Range(range,loose);var minver=new SemVer("0.0.0");if(range.test(minver)||(minver=new SemVer("0.0.0-0"),range.test(minver)))return minver;minver=null;for(var i2=0;i2<range.set.length;++i2){var comparators=range.set[i2];comparators.forEach(function(comparator){var compver=new SemVer(comparator.semver.version);switch(comparator.operator){case">":compver.prerelease.length===0?compver.patch++:compver.prerelease.push(0),compver.raw=compver.format();case"":case">=":(!minver||gt(minver,compver))&&(minver=compver);break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+comparator.operator)}})}return minver&&range.test(minver)?minver:null}exports.validRange=validRange;function validRange(range,options){try{return new Range(range,options).range||"*"}catch{return null}}exports.ltr=ltr;function ltr(version,range,options){return outside(version,range,"<",options)}exports.gtr=gtr;function gtr(version,range,options){return outside(version,range,">",options)}exports.outside=outside;function outside(version,range,hilo,options){version=new SemVer(version,options),range=new Range(range,options);var gtfn,ltefn,ltfn,comp,ecomp;switch(hilo){case">":gtfn=gt,ltefn=lte,ltfn=lt,comp=">",ecomp=">=";break;case"<":gtfn=lt,ltefn=gte,ltfn=gt,comp="<",ecomp="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(satisfies(version,range,options))return!1;for(var i2=0;i2<range.set.length;++i2){var comparators=range.set[i2],high=null,low=null;if(comparators.forEach(function(comparator){comparator.semver===ANY&&(comparator=new Comparator(">=0.0.0")),high=high||comparator,low=low||comparator,gtfn(comparator.semver,high.semver,options)?high=comparator:ltfn(comparator.semver,low.semver,options)&&(low=comparator)}),high.operator===comp||high.operator===ecomp||(!low.operator||low.operator===comp)&&ltefn(version,low.semver))return!1;if(low.operator===ecomp&&ltfn(version,low.semver))return!1}return!0}exports.prerelease=prerelease;function prerelease(version,options){var parsed=parse(version,options);return parsed&&parsed.prerelease.length?parsed.prerelease:null}exports.intersects=intersects;function intersects(r1,r2,options){return r1=new Range(r1,options),r2=new Range(r2,options),r1.intersects(r2)}exports.coerce=coerce;function coerce(version){if(version instanceof SemVer)return version;if(typeof version!="string")return null;var match=version.match(safeRe[COERCE]);return match==null?null:parse(match[1]+"."+(match[2]||"0")+"."+(match[3]||"0"))}}});export{require_semver};