void 0.10.5 → 0.10.6

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 (217) hide show
  1. package/dist/agents-Bmr5tFFb.mjs +1454 -0
  2. package/dist/{auth-cmd-UoCwfDQv.mjs → auth-cmd-DlgNwByu.mjs} +10 -10
  3. package/dist/{better-auth-shared-D0Mbmx5V.mjs → better-auth-shared-BQooDxbw.mjs} +1 -1
  4. package/dist/{better-auth-shared-jkksALri.d.mts → better-auth-shared-BvnM9px6.d.mts} +2 -2
  5. package/dist/{build-cmd-CVyuBHjP.mjs → build-cmd-Br8qL0rA.mjs} +15 -17
  6. package/dist/{cache-ACORQCIq.mjs → cache-wH-mP8UE.mjs} +10 -12
  7. package/dist/{cancel-deploy-Gi8zmoZC.mjs → cancel-deploy-BEBOEgtu.mjs} +16 -18
  8. package/dist/cli/cli.mjs +47 -49
  9. package/dist/{client-BlbnA92X.mjs → client-Cj96iiBH.mjs} +74 -8
  10. package/dist/{config-8dLIngKW.mjs → config-1twldYCW.mjs} +10 -10
  11. package/dist/{config-CbJS4Krx.mjs → config-BdUctCZD.mjs} +4 -4
  12. package/dist/{create-project-LjvkYziS.mjs → create-project-DD9n8Ho-.mjs} +28 -23
  13. package/dist/{db-C00yjN01.mjs → db-DjKE2-A-.mjs} +147 -149
  14. package/dist/{delete-CplfvTgU.mjs → delete-D2kr3Kmk.mjs} +13 -15
  15. package/dist/{deploy-CISNL5uK.mjs → deploy-C4PbkFyE.mjs} +97 -100
  16. package/dist/{discover-ZWuBvt22.mjs → discover-BuVVSAum.mjs} +3 -3
  17. package/dist/{dist-5cGIJHQQ.mjs → dist-BuiRJkTd.mjs} +59 -27
  18. package/dist/{domain-B4HpcgNG.mjs → domain-_luIsM_B.mjs} +14 -16
  19. package/dist/{env-DNMJpeVF.mjs → env-CO5XAS9t.mjs} +23 -25
  20. package/dist/{env-helpers-B_ks681T.d.mts → env-helpers-z4stu8uc.d.mts} +1 -1
  21. package/dist/{env-types-BS8cZead.mjs → env-types-D51bnR-c.mjs} +3 -3
  22. package/dist/{env-validation-BxbtBbjh.mjs → env-validation-CeC2FL66.mjs} +4 -4
  23. package/dist/{fetch-error-C6qffTl2.mjs → fetch-error-Dj3crt0e.mjs} +3 -3
  24. package/dist/{gen-C0pV2gRQ.mjs → gen-Cf79J4aw.mjs} +42 -44
  25. package/dist/{github-cmd-CwtLD1yI.mjs → github-cmd-DnqxyOsb.mjs} +88 -90
  26. package/dist/{handler-B7rCOy21.d.mts → handler-imD0UVDT.d.mts} +4 -5
  27. package/dist/{headers-BNWymgnH.mjs → headers-BwvFGhkx.mjs} +3 -3
  28. package/dist/index.d.mts +3 -3
  29. package/dist/index.mjs +102 -83
  30. package/dist/{init-D58GxCtt.mjs → init-KirOzVDs.mjs} +132 -134
  31. package/dist/link-CUmiosyb.mjs +45 -0
  32. package/dist/{list-CbNNjXTm.mjs → list-3GEw7b6m.mjs} +10 -12
  33. package/dist/{login-CvxxF_9z.mjs → login-DJReaT_Q.mjs} +14 -15
  34. package/dist/{logs-BDZ9AuhM.mjs → logs-D-rQ56Lq.mjs} +9 -11
  35. package/dist/{magic-string.es-C1Fb0uxq.mjs → magic-string.es-ZQjdJFFn.mjs} +3 -3
  36. package/dist/{mcp-C8BjRt_z.mjs → mcp-D7yc0dXY.mjs} +2 -3
  37. package/dist/{node-B07cZs0d.mjs → node-yFFk626c.mjs} +6 -6
  38. package/dist/{package-json-Bg_GJdJB.mjs → package-json-B0NuUWGd.mjs} +1 -1
  39. package/dist/pages/client.d.mts +1 -1
  40. package/dist/pages/client.mjs +2 -1
  41. package/dist/pages/head-client.d.mts +1 -1
  42. package/dist/pages/head.d.mts +1 -1
  43. package/dist/pages/index.d.mts +2 -2
  44. package/dist/pages/index.mjs +5 -5
  45. package/dist/pages/islands-plugin.d.mts +1 -1
  46. package/dist/pages/islands-plugin.mjs +3 -3
  47. package/dist/pages/protocol.d.mts +2 -2
  48. package/dist/pages/protocol.mjs +5 -2
  49. package/dist/{plugin-inference-D04iL1mW.mjs → plugin-inference-CJxi_fWI.mjs} +3 -3
  50. package/dist/{prepare-DUo9q8cM.mjs → prepare-C_cVurhP.mjs} +15 -18
  51. package/dist/{preset-D0My64KQ.mjs → preset-CVvwCeIy.mjs} +4 -4
  52. package/dist/{project-cmd-Dd1gNRdd.mjs → project-cmd-DnU7u9QF.mjs} +13 -14
  53. package/dist/{project-paths-CCMrHYQm.mjs → project-paths-tpdR1mJR.mjs} +2 -2
  54. package/dist/{project-tsconfig-DMBV55K2.mjs → project-tsconfig-D9uSVVpA.mjs} +2 -2
  55. package/dist/{protocol-6UZCowS1.d.mts → protocol-6hTJ04T1.d.mts} +3 -3
  56. package/dist/{resolve-project-D4O1_fZz.mjs → resolve-project-D2HI3TrG.mjs} +2 -2
  57. package/dist/{rollback-DzmCCrFg.mjs → rollback-Yh7bCKob.mjs} +21 -23
  58. package/dist/{route-types-BpSJEW20.mjs → route-types-CfKfhbIg.mjs} +234 -3
  59. package/dist/{runner-BQyKUqAL.mjs → runner-h272wcPj.mjs} +4 -5
  60. package/dist/{runner-pg-EuhrFW3D.mjs → runner-pg-waxJOnBb.mjs} +1 -1
  61. package/dist/runtime/ai.mjs +2 -2
  62. package/dist/runtime/auth.d.mts +1 -1
  63. package/dist/runtime/better-auth-pg.d.mts +1 -1
  64. package/dist/runtime/better-auth-pg.mjs +3 -3
  65. package/dist/runtime/better-auth.d.mts +1 -1
  66. package/dist/runtime/better-auth.mjs +2 -2
  67. package/dist/runtime/client-react.d.mts +2 -2
  68. package/dist/runtime/client-react.mjs +1 -1
  69. package/dist/runtime/client-solid.d.mts +2 -2
  70. package/dist/runtime/client-solid.mjs +1 -1
  71. package/dist/runtime/client-svelte.d.mts +2 -2
  72. package/dist/runtime/client-svelte.mjs +1 -1
  73. package/dist/runtime/client-vue.d.mts +2 -2
  74. package/dist/runtime/client-vue.mjs +1 -1
  75. package/dist/runtime/client.d.mts +2 -2
  76. package/dist/runtime/client.mjs +1 -1
  77. package/dist/runtime/db-pg.d.mts +1 -1
  78. package/dist/runtime/env-helpers.d.mts +1 -1
  79. package/dist/runtime/env-public-client.d.mts +1 -1
  80. package/dist/runtime/env-public-client.mjs +2 -0
  81. package/dist/runtime/env-public.d.mts +3 -4
  82. package/dist/runtime/env-public.mjs +3 -1
  83. package/dist/runtime/env.mjs +1 -1
  84. package/dist/runtime/fetch-stream.d.mts +1 -1
  85. package/dist/runtime/fetch-stream.mjs +1 -1
  86. package/dist/runtime/fetch.d.mts +1 -1
  87. package/dist/runtime/fetch.mjs +1 -1
  88. package/dist/runtime/handler.d.mts +2 -2
  89. package/dist/runtime/handler.mjs +1 -1
  90. package/dist/runtime/isr.mjs +1 -1
  91. package/dist/runtime/live-server.mjs +2 -0
  92. package/dist/runtime/live.d.mts +2 -2
  93. package/dist/runtime/live.mjs +3 -1
  94. package/dist/runtime/migration-handler-pg.mjs +1 -1
  95. package/dist/runtime/migration-handler.mjs +1 -1
  96. package/dist/runtime/remote/index.mjs +11 -1
  97. package/dist/runtime/sandbox.d.mts +1 -4
  98. package/dist/runtime/sandbox.mjs +1 -1
  99. package/dist/runtime/validator.d.mts +1 -1
  100. package/dist/runtime/ws-server.d.mts +2 -2
  101. package/dist/runtime/ws-server.mjs +2 -0
  102. package/dist/runtime/ws.d.mts +3 -3
  103. package/dist/runtime/ws.mjs +2 -0
  104. package/dist/{scan-VCAM1oh3.mjs → scan-Dp_Gyzs3.mjs} +3 -3
  105. package/dist/{scan---8wfN58.mjs → scan-i7Yz54fv.mjs} +26 -8
  106. package/dist/{secret-CMLYWkE-.mjs → secret-u7FRvg8d.mjs} +22 -24
  107. package/dist/{skills-Dl3u05da.mjs → skills-DsdNDtX3.mjs} +6 -7
  108. package/dist/{subcommand-prompt-B8ng0FTS.mjs → subcommand-prompt-DtES-oP6.mjs} +34 -35
  109. package/dist/sveltekit.mjs +1 -1
  110. package/dist/validate-DT7nFMlf.mjs +504 -0
  111. package/dist/{yarn-pnp-WLW2IHUY.mjs → yarn-pnp-CW8LB6g_.mjs} +1 -1
  112. package/package.json +19 -19
  113. package/skills/void/docs/node_modules/void/node_modules/@clack/prompts/CHANGELOG.md +94 -0
  114. package/skills/void/docs/node_modules/void/node_modules/@clack/prompts/README.md +32 -11
  115. package/skills/void/docs/node_modules/void/node_modules/@cloudflare/sandbox/README.md +45 -0
  116. package/skills/void/docs/node_modules/void/node_modules/@electric-sql/pglite/README.md +5 -5
  117. package/skills/void/docs/node_modules/void/node_modules/@types/node/README.md +1 -1
  118. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/@types/node/README.md +1 -1
  119. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-exit/README.md +4 -1
  120. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/markdown-it-attrs/README.md +29 -12
  121. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/tinyglobby/README.md +1 -1
  122. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/AGENTS.md +1 -0
  123. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/README.md +18 -6
  124. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/build.md +1 -1
  125. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/check.md +35 -0
  126. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/create.md +70 -0
  127. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/fmt.md +3 -1
  128. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/index.md +11 -7
  129. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/lint.md +3 -1
  130. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/pack.md +1 -1
  131. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/run.md +141 -26
  132. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/staged.md +1 -1
  133. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/config/test.md +1 -1
  134. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/automatic-data-tracking.md +145 -0
  135. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/cache.md +16 -28
  136. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/check.md +16 -0
  137. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/ci.md +15 -17
  138. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/commit-hooks.md +9 -0
  139. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/create.md +255 -2
  140. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/docker.md +175 -0
  141. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/env.md +70 -5
  142. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/github-actions-cache.md +165 -0
  143. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/ide-integration.md +2 -2
  144. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/index.md +9 -3
  145. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/install.md +63 -11
  146. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/migrate-rules.md +347 -0
  147. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/migrate.md +27 -3
  148. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/monorepo.md +176 -0
  149. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/pack.md +8 -0
  150. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/run.md +36 -4
  151. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/troubleshooting.md +11 -35
  152. package/skills/void/docs/node_modules/void/node_modules/@void/md/node_modules/vite-plus/docs/guide/upgrade.md +65 -13
  153. package/skills/void/docs/node_modules/void/node_modules/es-module-lexer/README.md +403 -390
  154. package/skills/void/docs/node_modules/void/node_modules/pg/README.md +2 -1
  155. package/skills/void/docs/node_modules/void/node_modules/tinyglobby/README.md +1 -1
  156. package/skills/void/docs/node_modules/void/node_modules/vite-plus/AGENTS.md +1 -0
  157. package/skills/void/docs/node_modules/void/node_modules/vite-plus/README.md +18 -6
  158. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/build.md +1 -1
  159. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/check.md +35 -0
  160. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/create.md +70 -0
  161. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/fmt.md +3 -1
  162. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/index.md +11 -7
  163. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/lint.md +3 -1
  164. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/pack.md +1 -1
  165. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/run.md +141 -26
  166. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/staged.md +1 -1
  167. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/config/test.md +1 -1
  168. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/automatic-data-tracking.md +145 -0
  169. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/cache.md +16 -28
  170. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/check.md +16 -0
  171. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/ci.md +15 -17
  172. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/commit-hooks.md +9 -0
  173. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/create.md +255 -2
  174. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/docker.md +175 -0
  175. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/env.md +70 -5
  176. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/github-actions-cache.md +165 -0
  177. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/ide-integration.md +2 -2
  178. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/index.md +9 -3
  179. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/install.md +63 -11
  180. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/migrate-rules.md +347 -0
  181. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/migrate.md +27 -3
  182. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/monorepo.md +176 -0
  183. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/pack.md +8 -0
  184. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/run.md +36 -4
  185. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/troubleshooting.md +11 -35
  186. package/skills/void/docs/node_modules/void/node_modules/vite-plus/docs/guide/upgrade.md +65 -13
  187. package/skills/void/docs/reference/cli.md +5 -1
  188. package/dist/agents-MhSzNMiC.mjs +0 -151
  189. package/dist/collect-9rO3JFNM.mjs +0 -55
  190. package/dist/config-hhMYPVRT.mjs +0 -21
  191. package/dist/dist-abzUneor.mjs +0 -1287
  192. package/dist/drizzle-DqstQTGq.mjs +0 -232
  193. package/dist/link-ZFmboqY3.mjs +0 -47
  194. package/dist/output-DeiS4oEX.mjs +0 -139
  195. package/dist/plan-aD3wRDqF.mjs +0 -271
  196. package/dist/project-CH9pdo16.mjs +0 -72
  197. package/dist/project-slug-rX3kTOfY.mjs +0 -10
  198. package/dist/validate-CNWm-PsL.mjs +0 -186
  199. /package/dist/{auth-migrations-BP-hMzYl.mjs → auth-migrations-BTZ-ATvQ.mjs} +0 -0
  200. /package/dist/{auth-Dz2CCn4T.d.mts → auth-qgMlYp7Z.d.mts} +0 -0
  201. /package/dist/{canonical-json-CEyQaVDa.mjs → canonical-json-DuDiiUsQ.mjs} +0 -0
  202. /package/dist/{cf-access-DKDsgwOU.mjs → cf-access-Bqw81xAf.mjs} +0 -0
  203. /package/dist/{defer-C-bdSM_b.mjs → defer-YsYDUoii.mjs} +0 -0
  204. /package/dist/{dotenv-lS94ymhM.mjs → dotenv-D_UbC_vc.mjs} +0 -0
  205. /package/dist/{env-raw-Dtj1UAoK.mjs → env-raw-CoS20LHP.mjs} +0 -0
  206. /package/dist/{fetch-error-B6RaJ-eZ.d.mts → fetch-error-Sp1R4mZv.d.mts} +0 -0
  207. /package/dist/{git-metadata-Ce0AtSZL.mjs → git-metadata-CBKaL0v5.mjs} +0 -0
  208. /package/dist/{head-eOUCWUNy.d.mts → head-nmvOgFjd.d.mts} +0 -0
  209. /package/dist/{log-BdD_Fpms.mjs → log-ChfPKsVd.mjs} +0 -0
  210. /package/dist/{pathe.M-eThtNZ-BrPhGF_K.mjs → pathe.M-eThtNZ-CQzLbt4c.mjs} +0 -0
  211. /package/dist/{pg-CempqvEJ.mjs → pg-J2HbZIkX.mjs} +0 -0
  212. /package/dist/{providers-BJIoduK9.d.mts → providers-BNKRacMr.d.mts} +0 -0
  213. /package/dist/{providers-BwPbdHdi.mjs → providers-CJlNS3kT.mjs} +0 -0
  214. /package/dist/{proxy-M3pxItg2.mjs → proxy-D-3_D-Gl.mjs} +0 -0
  215. /package/dist/{chunk-DJd-R1mw.mjs → rolldown-runtime-DJK8HYOj.mjs} +0 -0
  216. /package/dist/{standard-schema-Cy0lfeWv.d.mts → standard-schema-DJ0HW7QP.d.mts} +0 -0
  217. /package/dist/{types-BodZGegX.d.mts → types-lLjNE9Qp.d.mts} +0 -0
@@ -1,5 +1,99 @@
1
1
  # @clack/prompts
2
2
 
3
+ ## 1.7.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#574](https://github.com/bombshell-dev/clack/pull/574) [`8f1c380`](https://github.com/bombshell-dev/clack/commit/8f1c380683cfb5fb7a094610342046ae1603e28e) Thanks [@dreyfus92](https://github.com/dreyfus92)! - Add `showInstructions` option to `select`, `multiselect`, and `groupMultiselect`. Keyboard hints remain shown by default; pass `showInstructions: false` to hide them.
8
+
9
+ ### Patch Changes
10
+
11
+ - [#582](https://github.com/bombshell-dev/clack/pull/582) [`4b24953`](https://github.com/bombshell-dev/clack/commit/4b249539e28eecc16c13b3a1bd0ba447e9f38d06) Thanks [@43081j](https://github.com/43081j)! - Handle empty arrays in various prompts and utilities.
12
+
13
+ - Updated dependencies [[`4b24953`](https://github.com/bombshell-dev/clack/commit/4b249539e28eecc16c13b3a1bd0ba447e9f38d06)]:
14
+ - @clack/core@1.4.3
15
+
16
+ ## 1.6.0
17
+
18
+ ### Minor Changes
19
+
20
+ - [#568](https://github.com/bombshell-dev/clack/pull/568) [`f87933f`](https://github.com/bombshell-dev/clack/commit/f87933fb7b3f4c401b9e51a152b95cb8e7200fe5) Thanks [@florian-lefebvre](https://github.com/florian-lefebvre)! - Updates default formatter of `note()` to note dim lines anymore
21
+
22
+ If you want the old behavior, provide a `format()` function:
23
+
24
+ ```diff
25
+ import { note } from '@clack/prompts';
26
+ +import { styleText } from 'node:util';
27
+
28
+ note(
29
+ 'You can edit the file src/index.jsx',
30
+ 'Next steps.'
31
+ + { format: (text) => styleText('dim', text) }
32
+ );
33
+ ```
34
+
35
+ - [#567](https://github.com/bombshell-dev/clack/pull/567) [`cc6aab5`](https://github.com/bombshell-dev/clack/commit/cc6aab50186cff8a02dc98e9cfd3897c29a33b15) Thanks [@dreyfus92](https://github.com/dreyfus92)! - Add keyboard instruction footers to `select`, `multiselect`, and `groupMultiselect` in the active state, matching autocomplete. No option — always shown.
36
+
37
+ ### Patch Changes
38
+
39
+ - Updated dependencies [[`2f2b52f`](https://github.com/bombshell-dev/clack/commit/2f2b52f77cbfa9af618c6d929249ab8395fc37a1), [`e1b6ee7`](https://github.com/bombshell-dev/clack/commit/e1b6ee71a76e17a3c33ba7ee6e5fb34e886233bb)]:
40
+ - @clack/core@1.4.2
41
+
42
+ ## 1.5.1
43
+
44
+ ### Patch Changes
45
+
46
+ - [#548](https://github.com/bombshell-dev/clack/pull/548) [`2356e97`](https://github.com/bombshell-dev/clack/commit/2356e97c1f46007ead55133c3a26910404ef1cfb) Thanks [@43081j](https://github.com/43081j)! - Remove sourcemaps and enable pretty-ish build output.
47
+
48
+ - [#546](https://github.com/bombshell-dev/clack/pull/546) [`56e9d67`](https://github.com/bombshell-dev/clack/commit/56e9d6707715bc858d9c2dbc444230b02813e809) Thanks [@ghostdevv](https://github.com/ghostdevv)! - docs: add jsdoc for `date`, `limit-options`, and `messages`
49
+
50
+ - Updated dependencies [[`2356e97`](https://github.com/bombshell-dev/clack/commit/2356e97c1f46007ead55133c3a26910404ef1cfb)]:
51
+ - @clack/core@1.4.1
52
+
53
+ ## 1.5.0
54
+
55
+ ### Minor Changes
56
+
57
+ - [#543](https://github.com/bombshell-dev/clack/pull/543) [`83428ac`](https://github.com/bombshell-dev/clack/commit/83428ac6d8bc5eda87615cc7b1f14e0c8b16e1b6) Thanks [@florian-lefebvre](https://github.com/florian-lefebvre)! - Adds support for Standard Schema validation
58
+
59
+ Prompts accept an optional `validate()` function to validate user input. While a function provides more flexibility and customization over your validation, it can be a bit verbose. To help solve this, there are libraries that provide schema-based validation to make shorthand and type-strict validation substantially easier.
60
+
61
+ Libraries following the [Standard Schema specification](https://github.com/standard-schema/standard-schema) are now natively supported. For example, using [Arktype](https://arktype.io/):
62
+
63
+ ```diff
64
+ import { text } from '@clack/prompts';
65
+ import { type } from 'arktype';
66
+
67
+ const name = await text({
68
+ message: 'Enter your email',
69
+ + validate: type('string.email').describe('Invalid email'),
70
+ });
71
+ ```
72
+
73
+ ### Patch Changes
74
+
75
+ - [#542](https://github.com/bombshell-dev/clack/pull/542) [`adb6af9`](https://github.com/bombshell-dev/clack/commit/adb6af9f5fb39408934323a7415beb46b63ecd9a) Thanks [@ghostdevv](https://github.com/ghostdevv)! - docs: add jsdoc for `box`, `group`, and `group-multi-select`
76
+
77
+ - [#534](https://github.com/bombshell-dev/clack/pull/534) [`3dcb31a`](https://github.com/bombshell-dev/clack/commit/3dcb31a7d63827d95a5a52ac630cbd48e3a68364) Thanks [@MattStypa](https://github.com/MattStypa)! - Fixed spaces and uppercase characters in multiline prompt
78
+
79
+ - [#540](https://github.com/bombshell-dev/clack/pull/540) [`3170ed9`](https://github.com/bombshell-dev/clack/commit/3170ed94dc2a6ed7973228d46c664fb7461969ad) Thanks [@ghostdevv](https://github.com/ghostdevv)! - docs: add jsdoc for `autocomplete`, `confirm`, and `path` prompts
80
+
81
+ - Updated dependencies [[`83428ac`](https://github.com/bombshell-dev/clack/commit/83428ac6d8bc5eda87615cc7b1f14e0c8b16e1b6), [`3dcb31a`](https://github.com/bombshell-dev/clack/commit/3dcb31a7d63827d95a5a52ac630cbd48e3a68364)]:
82
+ - @clack/core@1.4.0
83
+
84
+ ## 1.4.0
85
+
86
+ ### Minor Changes
87
+
88
+ - 284677e: Support scrolling and `maxItems` option for `groupMultiselect`, and removes indent when `withGuide` is set to `false`
89
+
90
+ ### Patch Changes
91
+
92
+ - aab46a2: docs: add jsdoc for `text`, `password`, and `multiline` prompts
93
+ - 54be8d7: Fix line wrapping and overflow computation in group multi-select and other list-like prompts.
94
+ - Updated dependencies [54be8d7]
95
+ - @clack/core@1.3.1
96
+
3
97
  ## 1.3.0
4
98
 
5
99
  ### Minor Changes
@@ -65,7 +65,7 @@ const meaning = await text({
65
65
 
66
66
  ### Password
67
67
 
68
- The password component behaves like `text`, but masks the input as the user types.
68
+ The password prompt behaves like the [`text`](#text) prompt, but masks the input as the user types.
69
69
 
70
70
  ```js
71
71
  import { password } from '@clack/prompts';
@@ -81,7 +81,7 @@ const secret = await password({
81
81
 
82
82
  ### Confirm
83
83
 
84
- The confirm component accepts a yes or no answer. The result is a boolean value of `true` or `false`.
84
+ The `confirm` prompt accepts a yes or no choice, returning a boolean value corresponding to the user's selection.
85
85
 
86
86
  ```js
87
87
  import { confirm } from '@clack/prompts';
@@ -93,16 +93,16 @@ const shouldContinue = await confirm({
93
93
 
94
94
  ### Date
95
95
 
96
- The date component accepts a calendar date and returns a `Date` value.
96
+ The `date` prompt provides an interactive date picker, allowing users to navigate between year, month, and day segments and increment/decrement values using keyboard controls.
97
97
 
98
98
  ```js
99
99
  import { date } from '@clack/prompts';
100
100
 
101
- const dueDate = await date({
102
- message: 'Pick a due date.',
103
- format: 'YMD',
104
- minDate: new Date(Date.UTC(2026, 0, 1)),
105
- maxDate: new Date(Date.UTC(2026, 11, 31)),
101
+ const birthday = await date({
102
+ message: 'Pick your birthday',
103
+ minDate: new Date('1900-01-01'),
104
+ initialValue: new Date(),
105
+ maxDate: new Date(),
106
106
  });
107
107
  ```
108
108
 
@@ -125,7 +125,7 @@ const projectType = await select({
125
125
 
126
126
  ### Autocomplete
127
127
 
128
- The autocomplete component lets a user filter a list by typing, then choose one option from the matching results. By default, matching uses each option's `label`, `hint`, and `value`. The result is the selected option's `value`.
128
+ The `autocomplete` prompt combines text input with a searchable list of options. It's perfect for when you have a large list of options and want to help users find what they're looking for quickly.
129
129
 
130
130
  ```js
131
131
  import { autocomplete } from '@clack/prompts';
@@ -142,6 +142,27 @@ const framework = await autocomplete({
142
142
  });
143
143
  ```
144
144
 
145
+ ### Autocomplete Multi-Select
146
+
147
+ The `autocompleteMultiselect` prompt combines the search functionality of [autocomplete](#autocomplete) with the ability to select multiple options.
148
+
149
+ ```js
150
+ import { autocomplete } from '@clack/prompts';
151
+
152
+ const framework = await autocomplete({
153
+ message: 'Search for a framework',
154
+ options: [
155
+ { value: 'next', label: 'Next.js', hint: 'React framework' },
156
+ { value: 'astro', label: 'Astro', hint: 'Content-focused' },
157
+ { value: 'svelte', label: 'SvelteKit', hint: 'Compile-time framework' },
158
+ { value: 'remix', label: 'Remix', hint: 'Full stack framework' },
159
+ { value: 'nuxt', label: 'Nuxt', hint: 'Vue framework' },
160
+ ],
161
+ placeholder: 'Type to search...',
162
+ maxItems: 5,
163
+ });
164
+ ```
165
+
145
166
  ### Select Key
146
167
 
147
168
  The `selectKey` component lets a user choose an option by pressing its single-character string `value` key directly.
@@ -201,7 +222,7 @@ const basket = await groupMultiselect({
201
222
 
202
223
  ### Multi-Line Text
203
224
 
204
- The multi-line text component accepts multiple lines of text input. By default, pressing `Enter` twice submits the input.
225
+ The multi-line prompt accepts multiple lines of text input. By default, pressing `Enter` twice submits the input.
205
226
 
206
227
  ```js
207
228
  import { multiline } from '@clack/prompts';
@@ -226,7 +247,7 @@ const bio = await multiline({
226
247
 
227
248
  ### Path
228
249
 
229
- The path component offers filesystem path suggestions and returns the selected path as a string. When `directory: true` is set, only directories can be selected.
250
+ The `path` prompt extends [`autocomplete`](#autocomplete) to provide file and directory suggestions.
230
251
 
231
252
  ```js
232
253
  import { path } from '@clack/prompts';
@@ -98,6 +98,49 @@ export default {
98
98
  };
99
99
  ```
100
100
 
101
+ ## Quick tunnels
102
+
103
+ `sandbox.tunnels.get(port)` exposes a service running inside the
104
+ sandbox on a `*.trycloudflare.com` URL. No Cloudflare account or DNS
105
+ setup required — cloudflared opens a persistent QUIC connection to
106
+ Cloudflare's edge and Cloudflare hands back a hostname.
107
+
108
+ ```ts
109
+ // Inside a Worker with an RPC-transport sandbox:
110
+ const tunnel = await sandbox.tunnels.get(8080);
111
+ console.log(tunnel.url);
112
+ // → https://random-words-here.trycloudflare.com
113
+
114
+ // Repeated calls for the same port return the same record:
115
+ const same = await sandbox.tunnels.get(8080);
116
+ console.log(same.url === tunnel.url); // true
117
+
118
+ // Tear down by port number or by the record:
119
+ await sandbox.tunnels.destroy(8080);
120
+ // or: await sandbox.tunnels.destroy(tunnel);
121
+ ```
122
+
123
+ `get()` is idempotent: it consults a per-sandbox cache in Durable
124
+ Object storage, returns the cached record on a hit, and only spawns a
125
+ fresh cloudflared process on a miss. `list()` returns every cached
126
+ tunnel.
127
+
128
+ Notes:
129
+
130
+ - Requires the RPC transport. The route-based transport's `tunnels`
131
+ stub throws "RPC transport required".
132
+ - URLs do **not** survive a container restart. Cloudflare assigns the
133
+ hostname during cloudflared's startup handshake, so every restart
134
+ yields a new URL. The SDK clears its cache on container start, so
135
+ the next `get(port)` after a restart returns a fresh record.
136
+ - The first fetch through a brand-new URL can take a couple of
137
+ seconds while DNS propagates, even after `get()` resolves.
138
+ - `*.trycloudflare.com` buffers `text/event-stream` responses.
139
+ WebSockets work fine.
140
+ - Local builds behind a TLS-intercepting proxy (e.g. Cloudflare WARP)
141
+ need the host CA bundle injected at build time — see
142
+ [DOCKER_README.md](../../DOCKER_README.md).
143
+
101
144
  ## Documentation
102
145
 
103
146
  **📖 [Full Documentation](https://developers.cloudflare.com/sandbox/)**
@@ -115,6 +158,7 @@ export default {
115
158
  - **File System Access** - Read, write, and manage files
116
159
  - **Command Execution** - Run any command with streaming support
117
160
  - **Preview URLs** - Expose services with public URLs
161
+ - **Quick tunnels** - Zero-config `*.trycloudflare.com` URLs via `sandbox.tunnels.get(port)`
118
162
  - **Git Integration** - Clone repositories directly
119
163
 
120
164
  ## Contributing
@@ -156,6 +200,7 @@ See the [examples directory](./examples) for complete working examples:
156
200
  - [Claude Code](./examples/claude-code) - Run [Claude Code](https://claude.ai/code) headless on any repo
157
201
  - [OpenAI Agents](./examples/openai-agents) - `Shell` and `Editor` tools for [OpenAI Agents SDK](https://openai.github.io/openai-agents-js/)
158
202
  - [OpenCode](./examples/opencode) - [OpenCode](https://github.com/sst/opencode) web UI or [SDK](https://opencode.ai/docs/sdk/) in a sandbox
203
+ - [Git Repo Per Sandbox](./examples/git-repo-per-sandbox) - One Artifacts Git repo per sandbox
159
204
  - [TypeScript Validator](./examples/typescript-validator) - Build with npm in sandbox, execute in [isolates](https://developers.cloudflare.com/workers/runtime-apis/bindings/worker-loader/)
160
205
 
161
206
  ## Status
@@ -7,7 +7,7 @@
7
7
  <source media="(prefers-color-scheme: light)"
8
8
  srcset="https://raw.githubusercontent.com/electric-sql/pglite/main/docs/public/img/brand/logo-light.svg"
9
9
  />
10
- <img alt="ElectricSQL logo"
10
+ <img alt="PGlite logo"
11
11
  src="https://raw.githubusercontent.com/electric-sql/pglite/main/docs/public/img/brand/logo-light.svg"
12
12
  />
13
13
  </picture>
@@ -15,7 +15,7 @@
15
15
  </p>
16
16
 
17
17
  <p align="center">
18
- <a href="https://pglite.dev">PGlite</a> - the WASM build of Postgres from <a href="https://electric-sql.com" target="_blank">ElectricSQL</a>.<br>
18
+ <a href="https://pglite.dev">PGlite</a> - the WASM build of Postgres from <a href="https://electric.ax" target="_blank">Electric</a>.<br>
19
19
  Build reactive, realtime, local-first apps directly on Postgres.
20
20
  <p>
21
21
 
@@ -33,7 +33,7 @@
33
33
 
34
34
  ![PGlite](https://raw.githubusercontent.com/electric-sql/pglite/main/screenshot.png)
35
35
 
36
- PGlite is a WASM Postgres build packaged into a TypeScript client library that enables you to run Postgres in the browser, Node.js, Bun and Deno, with no need to install any other dependencies. It is only 3mb gzipped and has support for many Postgres extensions, including [pgvector](https://github.com/pgvector/pgvector).
36
+ PGlite is a WASM Postgres build packaged into a TypeScript client library that enables you to run Postgres in the browser, Node.js, Bun and Deno, with no need to install any other dependencies. It is only 3mb gzipped and has support for many Postgres extensions, including [pgvector](https://github.com/pgvector/pgvector) and [PostGIS](https://postgis.net).
37
37
 
38
38
  ```javascript
39
39
  import { PGlite } from '@electric-sql/pglite'
@@ -180,10 +180,10 @@ And follow the instructions to create an appropriate changeset. Please ensure an
180
180
 
181
181
  ## Acknowledgments
182
182
 
183
- PGlite builds on the work of [Stas Kelvich](https://github.com/kelvich) of [Neon](https://neon.tech) in this [Postgres fork](https://github.com/electric-sql/postgres-wasm).
183
+ PGlite builds on the work of [Stas Kelvich](https://github.com/kelvich) of [Neon](https://neon.tech) in this [Postgres fork](https://github.com/electric-sql/postgres-pglite).
184
184
 
185
185
  ## License
186
186
 
187
187
  PGlite is dual-licensed under the terms of the [Apache License 2.0](https://github.com/electric-sql/pglite/blob/main/LICENSE) and the [PostgreSQL License](https://github.com/electric-sql/pglite/blob/main/POSTGRES-LICENSE), you can choose which you prefer.
188
188
 
189
- Changes to the [Postgres source](https://github.com/electric-sql/postgres-wasm) are licensed under the PostgreSQL License.
189
+ Changes to the [Postgres source](https://github.com/electric-sql/postgres-pglite) are licensed under the PostgreSQL License.
@@ -8,7 +8,7 @@ This package contains type definitions for node (https://nodejs.org/).
8
8
  Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node.
9
9
 
10
10
  ### Additional Details
11
- * Last updated: Thu, 07 May 2026 22:21:35 GMT
11
+ * Last updated: Wed, 01 Jul 2026 11:03:38 GMT
12
12
  * Dependencies: [undici-types](https://npmjs.com/package/undici-types)
13
13
 
14
14
  # Credits
@@ -8,7 +8,7 @@ This package contains type definitions for node (https://nodejs.org/).
8
8
  Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node.
9
9
 
10
10
  ### Additional Details
11
- * Last updated: Thu, 07 May 2026 22:21:35 GMT
11
+ * Last updated: Wed, 01 Jul 2026 11:03:38 GMT
12
12
  * Dependencies: [undici-types](https://npmjs.com/package/undici-types)
13
13
 
14
14
  # Credits
@@ -5,6 +5,7 @@
5
5
  [![npm version][npm-version-src]][npm-version-href]
6
6
  [![bundle][bundle-src]][bundle-href]
7
7
  [![License][license-src]][license-href]
8
+ [![CodSpeed][codspeed-src]][codspeed-href]
8
9
 
9
10
  A TypeScript rewrite of [markdown-it](https://github.com/markdown-it/markdown-it) with first-class typings, modern tooling, and enhancements.
10
11
 
@@ -13,7 +14,7 @@ A TypeScript rewrite of [markdown-it](https://github.com/markdown-it/markdown-it
13
14
  - 🛡️ **Type Safety:** Ship robust types, improve DX, and enable type-safe development.
14
15
  - ⚡ **New features:** [Async rendering](https://markdown-exit.pages.dev/guide/rendering.html#async-rendering) for all rules includeing syntax highlighting and [more](https://github.com/serkodev/markdown-exit/issues?q=is:issue%20label:features).
15
16
  - 🔌 **Extensibility:** Extend the markdown syntax, custom rendering with [Plugins](https://markdown-exit.pages.dev/guide/plugins.html).
16
- - 🤝 **Compatibility:** Compatible with markdown-it `v14.1.0` and plugin API.
17
+ - 🤝 **Compatibility:** Compatible with markdown-it `v14.2.0` and plugin API.
17
18
 
18
19
  ## Documentation
19
20
 
@@ -122,3 +123,5 @@ This project owes its foundation to the [markdown-it](https://github.com/markdow
122
123
  [bundle-href]: https://bundlephobia.com/result?p=markdown-exit
123
124
  [license-src]: https://img.shields.io/github/license/serkodev/markdown-exit.svg?style=flat&colorA=00AF6B&colorB=000
124
125
  [license-href]: https://github.com/serkodev/markdown-exit/blob/main/LICENSE
126
+ [codspeed-src]: https://img.shields.io/badge/CodSpeed-benchmark-blue
127
+ [codspeed-href]: https://codspeed.io/serkodev/markdown-exit?utm_source=badge
@@ -47,8 +47,7 @@ nums = [x for x in range(10)]
47
47
 
48
48
  Output:
49
49
  ```html
50
- <pre><code data="asdf" class="language-python">
51
- nums = [x for x in range(10)]
50
+ <pre data="asdf"><code class="language-python">nums = [x for x in range(10)]
52
51
  </code></pre>
53
52
  ```
54
53
 
@@ -293,35 +292,53 @@ Output:
293
292
  If you need finer control, [decorate](https://github.com/rstacruz/markdown-it-decorate) might help you.
294
293
 
295
294
  ## Custom rendering
296
- If you would like some other output, you can override renderers:
295
+ By default, fenced code block attributes are rendered on `<pre>`.
296
+
297
+ If you prefer markdown-it's default behavior (attributes on `<code>`), opt out:
297
298
 
298
299
  ```js
299
300
  const md = require('markdown-it')();
300
301
  const markdownItAttrs = require('markdown-it-attrs');
301
302
 
302
- md.use(markdownItAttrs);
303
+ md.use(markdownItAttrs, {
304
+ fenceAttrsOnPre: false
305
+ });
306
+ ```
307
+
308
+ If you need fully custom output, define your own `fence` renderer. The plugin
309
+ will not override an existing custom `fence` renderer.
310
+
311
+ ```js
312
+ const md = require('markdown-it')();
313
+ const markdownItAttrs = require('markdown-it-attrs');
303
314
 
304
- // custom renderer for fences
305
315
  md.renderer.rules.fence = function (tokens, idx, options, env, slf) {
306
316
  const token = tokens[idx];
307
- return '<pre' + slf.renderAttrs(token) + '>'
308
- + '<code>' + token.content + '</code>'
309
- + '</pre>';
310
- }
317
+ const info = token.info ? token.info.trim() : '';
318
+ const langName = info ? info.split(/\s+/g)[0] : '';
319
+ const langClass = langName ? ' class="' + options.langPrefix + langName + '"' : '';
320
+ const content = md.utils.escapeHtml(token.content);
321
+
322
+ return '<pre' + slf.renderAttrs(token) + '><code' + langClass + '>'
323
+ + content
324
+ + '</code></pre>\n';
325
+ };
326
+
327
+ md.use(markdownItAttrs);
311
328
 
312
- let src = [
329
+ const src = [
313
330
  '',
314
331
  '```js {.abcd}',
315
332
  'var a = 1;',
316
333
  '```'
317
- ].join('\n')
334
+ ].join('\n');
318
335
 
319
336
  console.log(md.render(src));
320
337
  ```
321
338
 
322
339
  Output:
323
340
  ```html
324
- <pre class="abcd"><code>var a = 1;
341
+ <pre class="abcd"><code class="language-js">var a = 1;
325
342
  </code></pre>
326
343
  ```
327
344
 
@@ -1,7 +1,7 @@
1
1
  # tinyglobby
2
2
 
3
3
  [![npm version](https://img.shields.io/npm/v/tinyglobby.svg?maxAge=3600)](https://npmjs.com/package/tinyglobby)
4
- [![monthly downloads](https://img.shields.io/npm/dm/tinyglobby.svg?maxAge=3600)](https://npmjs.com/package/tinyglobby)
4
+ [![weekly downloads](https://img.shields.io/npm/dw/tinyglobby.svg?maxAge=3600)](https://npmjs.com/package/tinyglobby)
5
5
 
6
6
  A fast and minimal alternative to globby and fast-glob, meant to behave the same way.
7
7
 
@@ -11,5 +11,6 @@ Docs are local at `node_modules/vite-plus/docs` or online at https://viteplus.de
11
11
  - [ ] Run `vp install` after pulling remote changes and before getting started.
12
12
  - [ ] Run `vp check` and `vp test` to format, lint, type check and test changes.
13
13
  - [ ] Check if there are `vite.config.ts` tasks or `package.json` scripts necessary for validation, run via `vp run <script>`.
14
+ - [ ] If setup, runtime, or package-manager behavior looks wrong, run `vp env doctor` and include its output when asking for help.
14
15
 
15
16
  <!--VITE PLUS END-->
@@ -3,7 +3,7 @@
3
3
  **The Unified Toolchain for the Web**
4
4
  _runtime and package management, create, dev, check, test, build, pack, and monorepo task caching in a single dependency_
5
5
 
6
- This package provides the project-local version of Vite+. The global `vite` command automatically delegates to this package for all project-specific tasks.
6
+ This package provides the project-local version of Vite+. The global `vp` command automatically delegates to this package for all project-specific tasks.
7
7
 
8
8
  ---
9
9
 
@@ -111,6 +111,7 @@ Use `vp migrate` to migrate to Vite+. It merges tool-specific config files such
111
111
 
112
112
  - **run** - Run monorepo tasks
113
113
  - **exec** - Execute a command from local `node_modules/.bin`
114
+ - **node** - Run a Node.js script with the resolved Vite+ environment
114
115
  - **dlx** - Execute a package binary without installing it as a dependency
115
116
  - **cache** - Manage the task cache
116
117
 
@@ -122,7 +123,7 @@ Use `vp migrate` to migrate to Vite+. It merges tool-specific config files such
122
123
 
123
124
  #### Manage Dependencies
124
125
 
125
- Vite+ automatically wraps your package manager (pnpm, npm, or Yarn) based on `packageManager` and lockfiles:
126
+ Vite+ automatically wraps your package manager (pnpm, npm, Yarn, or Bun) based on `packageManager` and lockfiles:
126
127
 
127
128
  - **add** - Add packages to dependencies
128
129
  - **remove** (`rm`, `un`, `uninstall`) - Remove packages from dependencies
@@ -133,6 +134,7 @@ Vite+ automatically wraps your package manager (pnpm, npm, or Yarn) based on `pa
133
134
  - **why** (`explain`) - Show why a package is installed
134
135
  - **info** (`view`, `show`) - View package metadata from the registry
135
136
  - **link** (`ln`) / **unlink** - Manage local package links
137
+ - **rebuild** - Rebuild native modules
136
138
  - **pm** - Forward a command to the package manager
137
139
 
138
140
  #### Maintain
@@ -150,6 +152,16 @@ vp create
150
152
 
151
153
  You can run `vp create` inside of a project to add new apps or libraries to your project.
152
154
 
155
+ Organizations can expose a curated set of templates under their npm scope by
156
+ publishing `@org/create` with a `createConfig.templates` manifest in its `package.json`.
157
+ Once published, `vp create @org` opens an interactive picker over those
158
+ templates, and setting `create: { defaultTemplate: '@org' }` in
159
+ `vite.config.ts` makes it the default for bare `vp create`. See the
160
+ [Organization Templates guide](https://viteplus.dev/guide/create#organization-templates)
161
+ for the authoring workflow and
162
+ [`create.defaultTemplate`](https://viteplus.dev/config/create) for the
163
+ config reference.
164
+
153
165
  ### Migrating an existing project
154
166
 
155
167
  You can migrate an existing project to Vite+:
@@ -177,12 +189,12 @@ If you are manually migrating a project to Vite+, install these dev dependencies
177
189
  npm install -D vite-plus @voidzero-dev/vite-plus-core@latest
178
190
  ```
179
191
 
180
- You need to add overrides to your package manager for `vite` and `vitest` so that other packages depending on Vite and Vitest will use the Vite+ versions:
192
+ You need to add overrides to your package manager so that other packages resolve the Vite+ versions: alias `vite` to `@voidzero-dev/vite-plus-core`, and pin `vitest` to the version Vite+ bundles (run `vp --version`) so the whole project shares a single Vitest copy with `vp test`. Without the `vitest` pin, a dependency or workspace package can pull a different Vitest than the bundled runner, splitting Vitest's internals (mocks, `expect`, runner state):
181
193
 
182
194
  ```json
183
195
  "overrides": {
184
196
  "vite": "npm:@voidzero-dev/vite-plus-core@latest",
185
- "vitest": "npm:@voidzero-dev/vite-plus-test@latest"
197
+ "vitest": "4.1.9"
186
198
  }
187
199
  ```
188
200
 
@@ -191,7 +203,7 @@ If you are using `pnpm`, add this to your `pnpm-workspace.yaml`:
191
203
  ```yaml
192
204
  overrides:
193
205
  vite: npm:@voidzero-dev/vite-plus-core@latest
194
- vitest: npm:@voidzero-dev/vite-plus-test@latest
206
+ vitest: 4.1.9
195
207
  ```
196
208
 
197
209
  Or, if you are using Yarn:
@@ -199,7 +211,7 @@ Or, if you are using Yarn:
199
211
  ```json
200
212
  "resolutions": {
201
213
  "vite": "npm:@voidzero-dev/vite-plus-core@latest",
202
- "vitest": "npm:@voidzero-dev/vite-plus-test@latest"
214
+ "vitest": "4.1.9"
203
215
  }
204
216
  ```
205
217
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  ## Example
6
6
 
7
- ```ts
7
+ ```ts [vite.config.ts]
8
8
  import { defineConfig } from 'vite-plus';
9
9
 
10
10
  export default defineConfig({
@@ -0,0 +1,35 @@
1
+ # Check Config
2
+
3
+ `vp check` runs format, lint, and type checks together. The `check` block in `vite.config.ts` sets defaults for the composite command, mirroring the `--no-fmt` and `--no-lint` CLI flags.
4
+
5
+ This is useful when a project wants to keep most of the toolchain but skip one step by default. For example, a team that lints but does not format can disable `check.fmt` so a plain `vp check` (the command agents and contributors run most) only lints, without anyone needing to remember `--no-fmt`.
6
+
7
+ ## Example
8
+
9
+ ```ts [vite.config.ts]
10
+ import { defineConfig } from 'vite-plus';
11
+
12
+ export default defineConfig({
13
+ check: {
14
+ // Skip the format step in `vp check`. Defaults to true.
15
+ fmt: false,
16
+ // Skip lint rules in `vp check`. Type-check still runs when both
17
+ // `lint.options.typeAware` and `lint.options.typeCheck` are enabled.
18
+ // Defaults to true.
19
+ lint: true,
20
+ },
21
+ });
22
+ ```
23
+
24
+ When a step is disabled here, `vp check` prints a short `note:` line so it is clear why the step did not run. With the `check.fmt: false` config above:
25
+
26
+ ```bash
27
+ $ vp check
28
+ note: Format skipped (check.fmt: false in vite.config.ts)
29
+ pass: Found no warnings or lint errors in 1 file (12ms, 8 threads)
30
+ ```
31
+
32
+ ## Scope and precedence
33
+
34
+ - These options only affect the composite `vp check`. Standalone [`vp fmt`](/config/fmt) and [`vp lint`](/config/lint) are unaffected, so you can still run a disabled tool directly when you need it once. Note that any `vp check` invocation honors these defaults, including one run from a pre-commit hook: if your [`staged`](/config/staged) tasks call `vp check`, that step is skipped there too.
35
+ - A step is skipped if the config disables it **or** the matching CLI flag is passed. There is no flag to re-enable a step disabled in config; run `vp fmt` or `vp lint` directly instead.
@@ -0,0 +1,70 @@
1
+ # Create Config
2
+
3
+ `vp create` reads the `create` block in `vite.config.ts` to set per-repo defaults. See the [Creating a Project guide](/guide/create#organization-templates) for the full `@org` template workflow.
4
+
5
+ ## `create.defaultTemplate`
6
+
7
+ When `vp create` is invoked with no `TEMPLATE` argument, Vite+ uses this value as if the user had typed it. Typically set to an npm scope whose `@scope/create` package publishes a `createConfig.templates` manifest — so bare `vp create` drops into the org picker.
8
+
9
+ ```ts
10
+ import { defineConfig } from 'vite-plus';
11
+
12
+ export default defineConfig({
13
+ create: {
14
+ defaultTemplate: '@your-org',
15
+ },
16
+ });
17
+ ```
18
+
19
+ Any value accepted by `vp create` as a first argument works here: `@your-org` for an org picker, `@your-org:web` for a direct manifest entry, `vite:application` for a built-in, or the `name` of a local `create.templates` entry (see below).
20
+
21
+ ## `create.templates`
22
+
23
+ Declare local templates available to `vp create` inside a monorepo. Each entry is listed in the `vp create` picker, and selecting it (or passing its `name` as the template argument) runs the resolved `template`.
24
+
25
+ ```ts
26
+ import { defineConfig } from 'vite-plus';
27
+
28
+ export default defineConfig({
29
+ create: {
30
+ templates: [
31
+ {
32
+ name: 'component',
33
+ description: 'Internal UI component',
34
+ template: './tools/create-component',
35
+ },
36
+ { name: 'service', description: 'Backend service', template: 'service-generator' },
37
+ ],
38
+ },
39
+ });
40
+ ```
41
+
42
+ Each entry has:
43
+
44
+ | Field | Required | Notes |
45
+ | ------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
46
+ | `name` | yes | Identifier shown in the picker and accepted as `vp create <name>`. Must be unique within the array. The `vite:` prefix is reserved for built-in templates. |
47
+ | `description` | yes | One-line description shown in the picker. |
48
+ | `template` | yes | A workspace package name, a relative `./path` to a local package's directory (resolved against the workspace root), a `vite:*` built-in, a GitHub URL, or a full npm package name (e.g. `create-foo`). It is run as-is (not shorthand-expanded). |
49
+
50
+ `create.templates` is the source of truth for local templates: only entries listed here appear in the picker. Vite+ does not infer templates from package.json keywords. A `create.templates` entry whose `template` does not match any workspace package, or resolves to a local package without a `bin`, is reported as an error rather than falling through to an unrelated npm package.
51
+
52
+ [`vp create vite:generator`](/guide/create#code-generators) adds an entry here automatically (idempotently, preserving `defaultTemplate`); you can also edit the list by hand.
53
+
54
+ `create.defaultTemplate` can name a local entry, so bare `vp create` opens it directly.
55
+
56
+ ## Precedence
57
+
58
+ CLI argument > `create.defaultTemplate` > the standard built-in picker.
59
+
60
+ Explicit specifiers always win, so scripts and CI can bypass the configured default:
61
+
62
+ ```bash
63
+ # Uses create.defaultTemplate
64
+ vp create
65
+
66
+ # Explicitly ignores the default
67
+ vp create vite:library
68
+ ```
69
+
70
+ The org picker also appends a trailing "Vite+ built-in templates" entry — selecting it routes to the `vite:monorepo` / `vite:application` / `vite:library` / `vite:generator` flow, so built-ins stay reachable interactively even when a default is configured.