@reliverse/dler 1.7.92 → 1.7.94

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 (1023) hide show
  1. package/LICENSES +4 -1
  2. package/README.md +25 -1213
  3. package/bin/app/add/add-global/install-impl.d.ts +9 -0
  4. package/bin/app/add/add-global/install-impl.js +138 -0
  5. package/bin/app/add/add-local/api/orpc.d.ts +1 -0
  6. package/bin/app/add/add-local/api/orpc.js +4 -0
  7. package/bin/app/add/add-local/api/trpc.d.ts +1 -0
  8. package/bin/app/add/add-local/api/trpc.js +4 -0
  9. package/bin/app/add/add-local/auth/better-auth.d.ts +1 -0
  10. package/bin/app/add/add-local/auth/better-auth.js +4 -0
  11. package/bin/app/add/add-local/auth/clerk-auth.d.ts +1 -0
  12. package/bin/app/add/add-local/auth/clerk-auth.js +4 -0
  13. package/bin/app/add/add-local/auth/next-auth.d.ts +1 -0
  14. package/bin/app/add/add-local/auth/next-auth.js +4 -0
  15. package/bin/app/add/add-local/core/deps.d.ts +8 -0
  16. package/bin/app/add/add-local/core/deps.js +19 -0
  17. package/bin/app/add/add-local/core/prompts.d.ts +4 -0
  18. package/bin/app/add/add-local/core/prompts.js +12 -0
  19. package/bin/app/add/add-local/core/templates.d.ts +29 -0
  20. package/bin/app/add/add-local/core/templates.js +85 -0
  21. package/bin/app/add/add-local/core/types.d.ts +6 -0
  22. package/bin/app/add/add-local/db/drizzle.d.ts +1 -0
  23. package/bin/app/add/add-local/db/drizzle.js +4 -0
  24. package/bin/app/add/add-local/db/prisma.d.ts +1 -0
  25. package/bin/app/add/add-local/db/prisma.js +4 -0
  26. package/bin/app/add/add-local/files/uploadthing.d.ts +1 -0
  27. package/bin/app/add/add-local/files/uploadthing.js +4 -0
  28. package/bin/app/add/add-local/form/react-hook-form.d.ts +1 -0
  29. package/bin/app/add/add-local/form/react-hook-form.js +4 -0
  30. package/bin/app/add/add-local/form/tanstack-form.d.ts +1 -0
  31. package/bin/app/add/add-local/form/tanstack-form.js +4 -0
  32. package/bin/app/add/add-local/fws/browser/plasmo.d.ts +1 -0
  33. package/bin/app/add/add-local/fws/browser/plasmo.js +4 -0
  34. package/bin/app/add/add-local/fws/browser/wxt.d.ts +1 -0
  35. package/bin/app/add/add-local/fws/browser/wxt.js +4 -0
  36. package/bin/app/add/add-local/fws/configs/eslint-config.d.ts +1 -0
  37. package/bin/app/add/add-local/fws/configs/eslint-config.js +4 -0
  38. package/bin/app/add/add-local/fws/native/lynx.d.ts +1 -0
  39. package/bin/app/add/add-local/fws/native/lynx.js +4 -0
  40. package/bin/app/add/add-local/fws/native/react.d.ts +1 -0
  41. package/bin/app/add/add-local/fws/native/react.js +4 -0
  42. package/bin/app/add/add-local/fws/plugins/eslint-plugin.d.ts +1 -0
  43. package/bin/app/add/add-local/fws/plugins/eslint-plugin.js +4 -0
  44. package/bin/app/add/add-local/fws/vscode/vscode-ext.d.ts +1 -0
  45. package/bin/app/add/add-local/fws/vscode/vscode-ext.js +4 -0
  46. package/bin/app/add/add-local/fws/web/astro.d.ts +1 -0
  47. package/bin/app/add/add-local/fws/web/astro.js +4 -0
  48. package/bin/app/add/add-local/fws/web/jstack.d.ts +1 -0
  49. package/bin/app/add/add-local/fws/web/jstack.js +4 -0
  50. package/bin/app/add/add-local/fws/web/next.d.ts +1 -0
  51. package/bin/app/add/add-local/fws/web/next.js +4 -0
  52. package/bin/app/add/add-local/fws/web/start.d.ts +1 -0
  53. package/bin/app/add/add-local/fws/web/start.js +4 -0
  54. package/bin/app/add/add-local/fws/web/vite.d.ts +1 -0
  55. package/bin/app/add/add-local/fws/web/vite.js +4 -0
  56. package/bin/app/add/add-local/i18n/gt-libs.d.ts +1 -0
  57. package/bin/app/add/add-local/i18n/gt-libs.js +4 -0
  58. package/bin/app/add/add-local/i18n/languine.d.ts +1 -0
  59. package/bin/app/add/add-local/i18n/languine.js +19 -0
  60. package/bin/app/add/add-local/i18n/next-intl.d.ts +1 -0
  61. package/bin/app/add/add-local/i18n/next-intl.js +4 -0
  62. package/bin/app/add/add-local/llm/vercel.d.ts +1 -0
  63. package/bin/app/add/add-local/llm/vercel.js +4 -0
  64. package/bin/app/add/add-local/mail/resend.d.ts +1 -0
  65. package/bin/app/add/add-local/mail/resend.js +4 -0
  66. package/bin/app/add/add-local/pay/polar.d.ts +1 -0
  67. package/bin/app/add/add-local/pay/polar.js +4 -0
  68. package/bin/app/add/add-local/pay/stripe.d.ts +1 -0
  69. package/bin/app/add/add-local/pay/stripe.js +4 -0
  70. package/bin/app/add/add-local/tool/biome.d.ts +1 -0
  71. package/bin/app/add/add-local/tool/biome.js +4 -0
  72. package/bin/app/add/add-local/tool/eslint.d.ts +1 -0
  73. package/bin/app/add/add-local/tool/eslint.js +4 -0
  74. package/bin/app/add/add-local/tool/oxlint.d.ts +4 -0
  75. package/bin/app/add/add-local/tool/oxlint.js +4 -0
  76. package/bin/app/add/add-local/ui/21st.d.ts +4 -0
  77. package/bin/app/add/add-local/ui/21st.js +4 -0
  78. package/bin/app/add/add-local/ui/shadcn.d.ts +1 -0
  79. package/bin/app/add/add-local/ui/shadcn.js +4 -0
  80. package/bin/app/add/add-local/ui/tailwind.d.ts +1 -0
  81. package/bin/app/add/add-local/ui/tailwind.js +4 -0
  82. package/bin/app/add/add-rule/add-rule-const.d.ts +11 -0
  83. package/bin/app/add/add-rule/add-rule-const.js +32 -0
  84. package/bin/app/add/add-rule/add-rule-impl.d.ts +21 -0
  85. package/bin/app/add/add-rule/add-rule-impl.js +300 -0
  86. package/bin/app/add/add-rule/add-rule-mod.d.ts +19 -0
  87. package/bin/app/add/add-rule/add-rule-mod.js +55 -0
  88. package/bin/app/add/add-rule/add-rule-types.d.ts +18 -0
  89. package/bin/app/add/add-rule/add-rule-utils.d.ts +61 -0
  90. package/bin/app/add/add-rule/add-rule-utils.js +324 -0
  91. package/bin/app/add/cmd.d.ts +19 -0
  92. package/bin/app/add/cmd.js +55 -0
  93. package/bin/app/agg/cmd.js +2 -2
  94. package/bin/app/ai/ai-impl/ai-auth.d.ts +10 -0
  95. package/bin/app/ai/ai-impl/ai-auth.js +61 -0
  96. package/bin/app/ai/ai-impl/ai-chat.d.ts +5 -0
  97. package/bin/app/ai/ai-impl/ai-chat.js +93 -0
  98. package/bin/app/ai/ai-impl/ai-const.d.ts +7 -0
  99. package/bin/app/ai/ai-impl/ai-const.js +14 -0
  100. package/bin/app/ai/ai-impl/ai-tools.d.ts +5 -0
  101. package/bin/app/ai/ai-impl/ai-tools.js +32 -0
  102. package/bin/app/ai/ai-impl/ai-types.d.ts +12 -0
  103. package/bin/app/ai/ai-impl/code/code-mod.d.ts +6 -0
  104. package/bin/app/ai/ai-impl/code/code-mod.js +164 -0
  105. package/bin/app/ai/ai-impl/gen/image.d.ts +29 -0
  106. package/bin/app/ai/ai-impl/gen/image.js +77 -0
  107. package/bin/app/ai/ai-impl/mcp/mcp-mod.d.ts +5 -0
  108. package/bin/app/ai/ai-impl/mcp/mcp-mod.js +127 -0
  109. package/bin/app/ai/ai-impl/relinter/relinter.d.ts +27 -0
  110. package/bin/app/ai/ai-impl/relinter/relinter.js +310 -0
  111. package/bin/app/ai/ai-menu.d.ts +3 -0
  112. package/bin/app/ai/ai-menu.js +40 -0
  113. package/bin/app/ai/cmd.d.ts +19 -0
  114. package/bin/app/ai/cmd.js +63 -0
  115. package/bin/app/better/auth/(generators)/auth-config.d.ts +44 -0
  116. package/bin/app/better/auth/(generators)/auth-config.js +537 -0
  117. package/bin/app/better/auth/(generators)/drizzle.d.ts +3 -0
  118. package/bin/app/better/auth/(generators)/drizzle.js +137 -0
  119. package/bin/app/better/auth/(generators)/index.d.ts +16 -0
  120. package/bin/app/better/auth/(generators)/index.js +18 -0
  121. package/bin/app/better/auth/(generators)/kysely.d.ts +2 -0
  122. package/bin/app/better/auth/(generators)/kysely.js +9 -0
  123. package/bin/app/better/auth/(generators)/prisma.d.ts +2 -0
  124. package/bin/app/better/auth/(generators)/prisma.js +154 -0
  125. package/bin/app/better/auth/(generators)/types.d.ts +11 -0
  126. package/bin/app/better/auth/(utils)/add-svelte-kit-env-modules.d.ts +3 -0
  127. package/bin/app/better/auth/(utils)/add-svelte-kit-env-modules.js +91 -0
  128. package/bin/app/better/auth/(utils)/check-package-managers.d.ts +4 -0
  129. package/bin/app/better/auth/(utils)/check-package-managers.js +20 -0
  130. package/bin/app/better/auth/(utils)/format-ms.d.ts +4 -0
  131. package/bin/app/better/auth/(utils)/format-ms.js +11 -0
  132. package/bin/app/better/auth/(utils)/generate-secret.d.ts +1 -0
  133. package/bin/app/better/auth/(utils)/generate-secret.js +4 -0
  134. package/bin/app/better/auth/(utils)/get-config.d.ts +8 -0
  135. package/bin/app/better/auth/(utils)/get-config.js +168 -0
  136. package/bin/app/better/auth/(utils)/get-package-info.d.ts +1 -0
  137. package/bin/app/better/auth/(utils)/get-package-info.js +6 -0
  138. package/bin/app/better/auth/(utils)/get-tsconfig-info.d.ts +2 -0
  139. package/bin/app/better/auth/(utils)/get-tsconfig-info.js +15 -0
  140. package/bin/app/better/auth/(utils)/install-dependencies.d.ts +5 -0
  141. package/bin/app/better/auth/(utils)/install-dependencies.js +34 -0
  142. package/bin/app/better/auth/cmd.d.ts +13 -0
  143. package/bin/app/better/auth/cmd.js +72 -0
  144. package/bin/app/better/auth/consts.d.ts +2 -0
  145. package/bin/app/better/auth/consts.js +2 -0
  146. package/bin/app/better/auth/generate/cmd.d.ts +23 -0
  147. package/bin/app/better/auth/generate/cmd.js +127 -0
  148. package/bin/app/better/auth/generateSecret/cmd.d.ts +2 -0
  149. package/bin/app/better/auth/generateSecret/cmd.js +21 -0
  150. package/bin/app/better/auth/init/cmd.d.ts +160 -0
  151. package/bin/app/better/auth/init/cmd.js +979 -0
  152. package/bin/app/better/auth/migrate/cmd.d.ts +24 -0
  153. package/bin/app/better/auth/migrate/cmd.js +115 -0
  154. package/bin/app/build/binary/cmd.d.ts +12 -5
  155. package/bin/app/build/binary/cmd.js +34 -9
  156. package/bin/app/build/build-library.d.ts +42 -0
  157. package/bin/app/build/build-library.js +631 -0
  158. package/bin/app/build/build-regular.d.ts +19 -0
  159. package/bin/app/build/build-regular.js +400 -0
  160. package/bin/app/build/cmd.js +2 -2
  161. package/bin/app/build/impl.d.ts +1 -1
  162. package/bin/app/build/impl.js +8 -8
  163. package/bin/app/build/library-flow.d.ts +25 -0
  164. package/bin/app/build/library-flow.js +203 -0
  165. package/bin/app/build/postbuild.d.ts +1 -1
  166. package/bin/app/build/postbuild.js +5 -5
  167. package/bin/app/build/prebuild.d.ts +1 -1
  168. package/bin/app/build/prebuild.js +2 -2
  169. package/bin/app/build/providers/auto.d.ts +3 -0
  170. package/bin/app/build/providers/auto.js +105 -0
  171. package/bin/app/build/providers/build.d.ts +8 -0
  172. package/bin/app/build/providers/build.js +351 -0
  173. package/bin/app/build/providers/bun/single-file.js +146 -0
  174. package/bin/app/build/providers/copy/copy-mod.d.ts +2 -0
  175. package/bin/app/build/providers/copy/copy-mod.js +49 -0
  176. package/bin/app/build/providers/mkdist/mkdist-impl/loader.d.ts +4 -0
  177. package/bin/app/build/providers/mkdist/mkdist-impl/loaders/js.d.ts +2 -0
  178. package/bin/app/build/providers/mkdist/mkdist-impl/loaders/loaders-mod.d.ts +12 -0
  179. package/bin/app/build/providers/mkdist/mkdist-impl/loaders/postcss.d.ts +3 -0
  180. package/bin/app/build/providers/mkdist/mkdist-impl/loaders/sass.d.ts +2 -0
  181. package/bin/app/build/providers/mkdist/mkdist-impl/loaders/sass.js +31 -0
  182. package/bin/app/build/providers/mkdist/mkdist-impl/loaders/vue.d.ts +17 -0
  183. package/bin/app/build/providers/mkdist/mkdist-impl/loaders/vue.js +145 -0
  184. package/bin/app/build/providers/mkdist/mkdist-impl/make.d.ts +11 -0
  185. package/bin/app/build/providers/mkdist/mkdist-impl/make.js +192 -0
  186. package/bin/app/build/providers/mkdist/mkdist-impl/utils/dts.d.ts +11 -0
  187. package/bin/app/build/providers/mkdist/mkdist-impl/utils/dts.js +94 -0
  188. package/bin/app/build/providers/mkdist/mkdist-impl/utils/vue-dts.d.ts +3 -0
  189. package/bin/app/build/providers/mkdist/mkdist-impl/utils/vue-dts.js +175 -0
  190. package/bin/app/build/providers/mkdist/mkdist-mod.d.ts +2 -0
  191. package/bin/app/build/providers/mkdist/mkdist-mod.js +92 -0
  192. package/bin/app/build/providers/rollup/build.d.ts +2 -0
  193. package/bin/app/build/providers/rollup/config.d.ts +2 -0
  194. package/bin/app/build/providers/rollup/config.js +112 -0
  195. package/bin/app/build/providers/rollup/plugins/cjs.d.ts +4 -0
  196. package/bin/app/build/providers/rollup/plugins/esbuild.d.ts +3 -0
  197. package/bin/app/build/providers/rollup/plugins/shebang.js +42 -0
  198. package/bin/app/build/providers/rollup/stub.d.ts +2 -0
  199. package/bin/app/build/providers/rollup/stub.js +125 -0
  200. package/bin/app/build/providers/rollup/utils.d.ts +5 -0
  201. package/bin/app/build/providers/rollup/watch.d.ts +2 -0
  202. package/bin/app/build/providers/untyped/untyped-mod.d.ts +2 -0
  203. package/bin/app/build/providers/untyped/untyped-mod.js +111 -0
  204. package/bin/app/build/providers/utils.d.ts +19 -0
  205. package/bin/app/build/providers/utils.js +148 -0
  206. package/bin/app/build/providers/validate.d.ts +4 -0
  207. package/bin/app/build/providers/validate.js +52 -0
  208. package/bin/app/build/regular-flow.d.ts +9 -0
  209. package/bin/app/build/regular-flow.js +173 -0
  210. package/bin/app/catalog/cmd.js +2 -2
  211. package/bin/app/check/cmd.js +14 -14
  212. package/bin/app/cli/cmd.d.ts +12 -0
  213. package/bin/app/cli/cmd.js +56 -0
  214. package/bin/app/cli/impl.d.ts +5 -0
  215. package/bin/app/cli/impl.js +88 -0
  216. package/bin/app/clone/cmd.d.ts +43 -0
  217. package/bin/app/clone/cmd.js +112 -0
  218. package/bin/app/clone/firecrawl/firecrawl-mod.d.ts +1 -0
  219. package/bin/app/clone/firecrawl/firecrawl-mod.js +14 -0
  220. package/bin/app/cmds/inject/inject-impl-mod.js +724 -0
  221. package/bin/app/cmds/transform/transform-impl-mod.js +178 -0
  222. package/bin/app/cmds.d.ts +3 -0
  223. package/bin/app/cmds.js +4 -1
  224. package/bin/app/cmod/cmd.d.ts +31 -0
  225. package/bin/app/cmod/cmd.js +66 -0
  226. package/bin/app/cmod/cmod-impl.d.ts +9 -0
  227. package/bin/app/cmod/cmod-impl.js +21 -0
  228. package/bin/app/config/cfg-biome.d.ts +2 -0
  229. package/bin/app/config/cfg-biome.js +34 -0
  230. package/bin/app/config/cfg-comments.d.ts +1 -0
  231. package/bin/app/config/cfg-comments.js +57 -0
  232. package/bin/app/config/cfg-content.d.ts +14 -0
  233. package/bin/app/config/cfg-content.js +15 -0
  234. package/bin/app/config/cfg-core.d.ts +14 -0
  235. package/bin/app/config/cfg-core.js +63 -0
  236. package/bin/app/config/cfg-create.d.ts +35 -0
  237. package/bin/app/config/cfg-create.js +279 -0
  238. package/bin/app/config/cfg-def-utils.d.ts +6 -0
  239. package/bin/app/config/cfg-def-utils.js +229 -0
  240. package/bin/app/config/cfg-default.d.ts +3 -0
  241. package/bin/app/config/cfg-default.js +155 -0
  242. package/bin/app/config/cfg-detect.d.ts +22 -0
  243. package/bin/app/config/cfg-detect.js +347 -0
  244. package/bin/app/config/cfg-gen-cfg.d.ts +3 -0
  245. package/bin/app/config/cfg-gen-cfg.js +185 -0
  246. package/bin/app/config/cfg-migrate.d.ts +5 -0
  247. package/bin/app/config/cfg-migrate.js +56 -0
  248. package/bin/app/config/cfg-path.d.ts +11 -0
  249. package/bin/app/config/cfg-path.js +33 -0
  250. package/bin/app/config/cfg-prepare.d.ts +2 -0
  251. package/bin/app/config/cfg-prepare.js +302 -0
  252. package/bin/app/config/cfg-prompts.d.ts +5 -0
  253. package/bin/app/config/cfg-prompts.js +12 -0
  254. package/bin/app/config/cfg-read.d.ts +11 -0
  255. package/bin/app/config/cfg-read.js +84 -0
  256. package/bin/app/config/cfg-reltypes-content.d.ts +3 -0
  257. package/bin/app/config/cfg-reltypes-content.js +1139 -0
  258. package/bin/app/config/cfg-reltypes-utils.d.ts +2 -0
  259. package/bin/app/config/cfg-reltypes-utils.js +50 -0
  260. package/bin/app/config/cfg-repair.d.ts +16 -0
  261. package/bin/app/config/cfg-repair.js +137 -0
  262. package/bin/app/config/cfg-schema.d.ts +130 -0
  263. package/bin/app/config/cfg-schema.js +443 -0
  264. package/bin/app/config/cfg-unstable.d.ts +11 -0
  265. package/bin/app/config/cfg-unstable.js +41 -0
  266. package/bin/app/config/cfg-update.d.ts +10 -0
  267. package/bin/app/config/cfg-update.js +152 -0
  268. package/bin/app/config/cfg-utils.d.ts +17 -0
  269. package/bin/app/config/cfg-utils.js +85 -0
  270. package/bin/app/config/cmd.js +1 -1
  271. package/bin/app/config/constants.d.ts +44 -0
  272. package/bin/app/config/constants.js +59 -0
  273. package/bin/app/config/core.js +231 -0
  274. package/bin/app/config/default.d.ts +6 -0
  275. package/bin/app/config/default.js +159 -0
  276. package/bin/app/config/load.d.ts +15 -0
  277. package/bin/app/config/load.js +87 -0
  278. package/bin/app/config/prepare.js +340 -0
  279. package/bin/app/conv/cmd.js +1 -1
  280. package/bin/app/create/cmd.js +4 -4
  281. package/bin/app/cross/mod.js +27 -0
  282. package/bin/app/db/client.d.ts +4 -0
  283. package/bin/app/db/client.js +32 -0
  284. package/bin/app/db/config.d.ts +2 -0
  285. package/bin/app/db/config.js +59 -0
  286. package/bin/app/db/messages.d.ts +13 -0
  287. package/bin/app/db/messages.js +83 -0
  288. package/bin/app/db/schema.d.ts +90 -0
  289. package/bin/app/db/schema.js +9 -0
  290. package/bin/app/env/cmd.d.ts +7 -0
  291. package/bin/app/env/cmd.js +19 -0
  292. package/bin/app/env/env-impl.d.ts +1 -0
  293. package/bin/app/env/env-impl.js +28 -0
  294. package/bin/app/fs/cmd.js +3 -3
  295. package/bin/app/get/cmd.d.ts +1 -1
  296. package/bin/app/get/cmd.js +1 -1
  297. package/bin/app/get/get-impl/get-core.js +453 -0
  298. package/bin/app/get/get-mod.js +68 -0
  299. package/bin/app/help/cmd.d.ts +7 -0
  300. package/bin/app/help/cmd.js +23 -0
  301. package/bin/app/help/help-impl.d.ts +7 -0
  302. package/bin/app/help/help-impl.js +23 -0
  303. package/bin/app/init/cmd-2.d.ts +13 -0
  304. package/bin/app/init/cmd-2.js +68 -0
  305. package/bin/app/init/init-utils/init-impl.d.ts +6 -0
  306. package/bin/app/init/init-utils/init-impl.js +31 -0
  307. package/bin/app/init/init-utils/init-utils.d.ts +35 -0
  308. package/bin/app/init/init-utils/init-utils.js +255 -0
  309. package/bin/app/init/init-utils/mm-deprecated/editor-menu.d.ts +3 -0
  310. package/bin/app/init/init-utils/mm-deprecated/editor-menu.js +404 -0
  311. package/bin/app/init/mm-deprecated/drizzle/manageDrizzleConstants.d.ts +2 -0
  312. package/bin/app/init/mm-deprecated/drizzle/manageDrizzleConstants.js +36 -0
  313. package/bin/app/init/mm-deprecated/drizzle/manageDrizzleSchema.d.ts +1 -0
  314. package/bin/app/init/mm-deprecated/drizzle/manageDrizzleSchema.js +81 -0
  315. package/bin/app/init/mm-deprecated/drizzle/manageDrizzleSchemaUtils.d.ts +16 -0
  316. package/bin/app/init/mm-deprecated/drizzle/manageDrizzleSchemaUtils.js +474 -0
  317. package/bin/app/init/mm-deprecated/editor-impl.d.ts +1 -0
  318. package/bin/app/init/mm-deprecated/editor-impl.js +153 -0
  319. package/bin/app/init/mm-deprecated/editor-mod.d.ts +18 -0
  320. package/bin/app/init/mm-deprecated/editor-mod.js +184 -0
  321. package/bin/app/init/mm-deprecated/feature-add.d.ts +2 -0
  322. package/bin/app/init/mm-deprecated/feature-add.js +591 -0
  323. package/bin/app/init/mm-deprecated/feature-rm.d.ts +2 -0
  324. package/bin/app/init/mm-deprecated/feature-rm.js +98 -0
  325. package/bin/app/init/mm-deprecated/shadcn/shadcn-mod.d.ts +1 -0
  326. package/bin/app/init/mm-deprecated/shadcn/shadcn-mod.js +87 -0
  327. package/bin/app/init/use-template/cp-impl.d.ts +38 -0
  328. package/bin/app/init/use-template/cp-impl.js +286 -0
  329. package/bin/app/init/use-template/cp-mod.d.ts +31 -0
  330. package/bin/app/init/use-template/cp-mod.js +233 -0
  331. package/bin/app/init/use-template/cp-modules/cli-main-modules/cli-menu-items/getMainMenuOptions.d.ts +12 -0
  332. package/bin/app/init/use-template/cp-modules/cli-main-modules/cli-menu-items/getMainMenuOptions.js +69 -0
  333. package/bin/app/init/use-template/cp-modules/cli-main-modules/cli-menu-items/showCloneProjectMenu.d.ts +11 -0
  334. package/bin/app/init/use-template/cp-modules/cli-main-modules/cli-menu-items/showCloneProjectMenu.js +206 -0
  335. package/bin/app/init/use-template/cp-modules/cli-main-modules/modules/showAnykeyPrompt.d.ts +1 -0
  336. package/bin/app/init/use-template/cp-modules/cli-main-modules/modules/showAnykeyPrompt.js +9 -0
  337. package/bin/app/init/use-template/cp-modules/cli-main-modules/modules/showStartEndPrompt.d.ts +2 -0
  338. package/bin/app/init/use-template/cp-modules/cli-main-modules/modules/showStartEndPrompt.js +26 -0
  339. package/bin/app/init/use-template/cp-modules/compose-env-file/cef-impl.d.ts +16 -0
  340. package/bin/app/init/use-template/cp-modules/compose-env-file/cef-impl.js +400 -0
  341. package/bin/app/init/use-template/cp-modules/compose-env-file/cef-keys.d.ts +26 -0
  342. package/bin/app/init/use-template/cp-modules/compose-env-file/cef-keys.js +202 -0
  343. package/bin/app/init/use-template/cp-modules/compose-env-file/cef-mod.d.ts +2 -0
  344. package/bin/app/init/use-template/cp-modules/compose-env-file/cef-mod.js +167 -0
  345. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/deploy.d.ts +11 -0
  346. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/deploy.js +91 -0
  347. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/gdp-mod.d.ts +54 -0
  348. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/gdp-mod.js +449 -0
  349. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/git.d.ts +50 -0
  350. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/git.js +313 -0
  351. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/github.d.ts +8 -0
  352. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/github.js +113 -0
  353. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/helpers/domainHelpers.d.ts +1 -0
  354. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/helpers/domainHelpers.js +25 -0
  355. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/helpers/handlePkgJsonScripts.d.ts +1 -0
  356. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/helpers/handlePkgJsonScripts.js +52 -0
  357. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/helpers/promptForDomain.d.ts +4 -0
  358. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/helpers/promptForDomain.js +39 -0
  359. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/utils-git-github.d.ts +8 -0
  360. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/utils-git-github.js +75 -0
  361. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/utils-private-repo.d.ts +12 -0
  362. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/utils-private-repo.js +165 -0
  363. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/utils-repo-exists.d.ts +9 -0
  364. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/utils-repo-exists.js +62 -0
  365. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-api.d.ts +10 -0
  366. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-api.js +36 -0
  367. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-check.d.ts +14 -0
  368. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-check.js +29 -0
  369. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-config.d.ts +27 -0
  370. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-config.js +104 -0
  371. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-create.d.ts +17 -0
  372. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-create.js +129 -0
  373. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-deploy.d.ts +20 -0
  374. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-deploy.js +151 -0
  375. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-domain.d.ts +5 -0
  376. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-domain.js +44 -0
  377. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-env.d.ts +3 -0
  378. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-env.js +58 -0
  379. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-team.d.ts +15 -0
  380. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-team.js +74 -0
  381. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-types.d.ts +28 -0
  382. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-utils.d.ts +26 -0
  383. package/bin/app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-utils.js +134 -0
  384. package/bin/app/install/cmd.js +3 -7
  385. package/bin/app/invoke/cmd.d.ts +59 -0
  386. package/bin/app/invoke/cmd.js +353 -0
  387. package/bin/app/libs/cmd.js +2 -2
  388. package/bin/app/login/cmd.d.ts +7 -0
  389. package/bin/app/login/cmd.js +41 -0
  390. package/bin/app/login/login-impl.d.ts +7 -0
  391. package/bin/app/login/login-impl.js +182 -0
  392. package/bin/app/logout/cmd.d.ts +7 -0
  393. package/bin/app/logout/cmd.js +47 -0
  394. package/bin/app/logout/logout-impl.d.ts +1 -0
  395. package/bin/app/logout/logout-impl.js +20 -0
  396. package/bin/app/magic/cmd.js +2 -2
  397. package/bin/app/magic/magic-apply.js +669 -0
  398. package/bin/app/memory/cmd.d.ts +2 -0
  399. package/bin/app/memory/cmd.js +26 -0
  400. package/bin/app/memory/memory-impl.d.ts +2 -0
  401. package/bin/app/memory/memory-impl.js +26 -0
  402. package/bin/app/merge/cmd.js +17 -18
  403. package/bin/app/migrate/codemods/anything-bun.js +2 -2
  404. package/bin/app/migrate/codemods/commander-rempts.js +3 -3
  405. package/bin/app/migrate/codemods/console-relinka.js +1 -1
  406. package/bin/app/migrate/codemods/fs-relifso.js +2 -2
  407. package/bin/app/migrate/codemods/nodenext-bundler.js +2 -3
  408. package/bin/app/migrate/codemods/path-pathkit.js +2 -2
  409. package/bin/app/migrate/codemods/readdir-glob.js +2 -2
  410. package/bin/app/mkdist/cmd.js +2 -2
  411. package/bin/app/mrse/cmd.d.ts +41 -0
  412. package/bin/app/mrse/cmd.js +395 -0
  413. package/bin/app/mrse/mrse-impl.d.ts +53 -0
  414. package/bin/app/mrse/mrse-impl.js +132 -0
  415. package/bin/app/pack/cmd.js +4 -4
  416. package/bin/app/providers/better-t-stack/better-t-stack-mod.d.ts +14 -0
  417. package/bin/app/providers/better-t-stack/better-t-stack-mod.js +35 -0
  418. package/bin/app/providers/better-t-stack/better-t-stack-types.d.ts +21 -0
  419. package/bin/app/providers/better-t-stack/better-t-stack-types.js +0 -0
  420. package/bin/app/providers/better-t-stack/constants.d.ts +61 -0
  421. package/bin/app/providers/better-t-stack/constants.js +81 -0
  422. package/bin/app/providers/better-t-stack/helpers/database-providers/mongodb-atlas-setup.d.ts +2 -0
  423. package/bin/app/providers/better-t-stack/helpers/database-providers/mongodb-atlas-setup.js +132 -0
  424. package/bin/app/providers/better-t-stack/helpers/database-providers/neon-setup.d.ts +2 -0
  425. package/bin/app/providers/better-t-stack/helpers/database-providers/neon-setup.js +167 -0
  426. package/bin/app/providers/better-t-stack/helpers/database-providers/prisma-postgres-setup.d.ts +2 -0
  427. package/bin/app/providers/better-t-stack/helpers/database-providers/prisma-postgres-setup.js +161 -0
  428. package/bin/app/providers/better-t-stack/helpers/database-providers/supabase-setup.d.ts +2 -0
  429. package/bin/app/providers/better-t-stack/helpers/database-providers/supabase-setup.js +162 -0
  430. package/bin/app/providers/better-t-stack/helpers/database-providers/turso-setup.d.ts +2 -0
  431. package/bin/app/providers/better-t-stack/helpers/database-providers/turso-setup.js +250 -0
  432. package/bin/app/providers/better-t-stack/helpers/project-generation/create-project.d.ts +2 -0
  433. package/bin/app/providers/better-t-stack/helpers/project-generation/create-project.js +82 -0
  434. package/bin/app/providers/better-t-stack/helpers/project-generation/create-readme.d.ts +2 -0
  435. package/bin/app/providers/better-t-stack/helpers/project-generation/create-readme.js +245 -0
  436. package/bin/app/providers/better-t-stack/helpers/project-generation/env-setup.d.ts +8 -0
  437. package/bin/app/providers/better-t-stack/helpers/project-generation/env-setup.js +193 -0
  438. package/bin/app/providers/better-t-stack/helpers/project-generation/install-dependencies.d.ts +6 -0
  439. package/bin/app/providers/better-t-stack/helpers/project-generation/install-dependencies.js +25 -0
  440. package/bin/app/providers/better-t-stack/helpers/project-generation/post-installation.d.ts +4 -0
  441. package/bin/app/providers/better-t-stack/helpers/project-generation/post-installation.js +228 -0
  442. package/bin/app/providers/better-t-stack/helpers/project-generation/project-config.d.ts +3 -0
  443. package/bin/app/providers/better-t-stack/helpers/project-generation/project-config.js +224 -0
  444. package/bin/app/providers/better-t-stack/helpers/project-generation/template-manager.d.ts +9 -0
  445. package/bin/app/providers/better-t-stack/helpers/project-generation/template-manager.js +484 -0
  446. package/bin/app/providers/better-t-stack/helpers/setup/addons-setup.d.ts +2 -0
  447. package/bin/app/providers/better-t-stack/helpers/setup/addons-setup.js +99 -0
  448. package/bin/app/providers/better-t-stack/helpers/setup/api-setup.d.ts +2 -0
  449. package/bin/app/providers/better-t-stack/helpers/setup/api-setup.js +236 -0
  450. package/bin/app/providers/better-t-stack/helpers/setup/auth-setup.d.ts +3 -0
  451. package/bin/app/providers/better-t-stack/helpers/setup/auth-setup.js +67 -0
  452. package/bin/app/providers/better-t-stack/helpers/setup/backend-setup.d.ts +2 -0
  453. package/bin/app/providers/better-t-stack/helpers/setup/backend-setup.js +52 -0
  454. package/bin/app/providers/better-t-stack/helpers/setup/db-setup.d.ts +2 -0
  455. package/bin/app/providers/better-t-stack/helpers/setup/db-setup.js +84 -0
  456. package/bin/app/providers/better-t-stack/helpers/setup/examples-setup.d.ts +2 -0
  457. package/bin/app/providers/better-t-stack/helpers/setup/examples-setup.js +38 -0
  458. package/bin/app/providers/better-t-stack/helpers/setup/runtime-setup.d.ts +2 -0
  459. package/bin/app/providers/better-t-stack/helpers/setup/runtime-setup.js +79 -0
  460. package/bin/app/providers/better-t-stack/helpers/setup/starlight-setup.d.ts +2 -0
  461. package/bin/app/providers/better-t-stack/helpers/setup/starlight-setup.js +41 -0
  462. package/bin/app/providers/better-t-stack/helpers/setup/tauri-setup.d.ts +2 -0
  463. package/bin/app/providers/better-t-stack/helpers/setup/tauri-setup.js +67 -0
  464. package/bin/app/providers/better-t-stack/index.d.ts +2 -0
  465. package/bin/app/providers/better-t-stack/index.js +282 -0
  466. package/bin/app/providers/better-t-stack/packed/addons.d.ts +2 -0
  467. package/bin/app/providers/better-t-stack/packed/addons.js +263 -0
  468. package/bin/app/providers/better-t-stack/packed/api.d.ts +2 -0
  469. package/bin/app/providers/better-t-stack/packed/api.js +678 -0
  470. package/bin/app/providers/better-t-stack/packed/auth.d.ts +2 -0
  471. package/bin/app/providers/better-t-stack/packed/auth.js +4277 -0
  472. package/bin/app/providers/better-t-stack/packed/backend.d.ts +2 -0
  473. package/bin/app/providers/better-t-stack/packed/backend.js +996 -0
  474. package/bin/app/providers/better-t-stack/packed/base.d.ts +2 -0
  475. package/bin/app/providers/better-t-stack/packed/base.js +32 -0
  476. package/bin/app/providers/better-t-stack/packed/binaries/01dad80fc2.png +0 -0
  477. package/bin/app/providers/better-t-stack/packed/binaries/0ba5eb8b0a.png +0 -0
  478. package/bin/app/providers/better-t-stack/packed/binaries/19b53640a9.png +0 -0
  479. package/bin/app/providers/better-t-stack/packed/binaries/206a875d5d.png +0 -0
  480. package/bin/app/providers/better-t-stack/packed/binaries/2dc8b34485.png +0 -0
  481. package/bin/app/providers/better-t-stack/packed/binaries/3f71f5a845.png +0 -0
  482. package/bin/app/providers/better-t-stack/packed/binaries/6eda863d14.ico +0 -0
  483. package/bin/app/providers/better-t-stack/packed/binaries/70aadde45a.png +0 -0
  484. package/bin/app/providers/better-t-stack/packed/binaries/9ecfcc8f0e.ico +0 -0
  485. package/bin/app/providers/better-t-stack/packed/binaries/9fc7a0c84f.ico +0 -0
  486. package/bin/app/providers/better-t-stack/packed/binaries/b72f6b7339.png +0 -0
  487. package/bin/app/providers/better-t-stack/packed/binaries/cb25ca74dd.png +0 -0
  488. package/bin/app/providers/better-t-stack/packed/binaries/dee83fc2fb.png +0 -0
  489. package/bin/app/providers/better-t-stack/packed/binaries/eda53e30fe.svg +6 -0
  490. package/bin/app/providers/better-t-stack/packed/db.d.ts +2 -0
  491. package/bin/app/providers/better-t-stack/packed/db.js +329 -0
  492. package/bin/app/providers/better-t-stack/packed/examples.d.ts +2 -0
  493. package/bin/app/providers/better-t-stack/packed/examples.js +3470 -0
  494. package/bin/app/providers/better-t-stack/packed/extras.d.ts +2 -0
  495. package/bin/app/providers/better-t-stack/packed/extras.js +33 -0
  496. package/bin/app/providers/better-t-stack/packed/frontend.d.ts +2 -0
  497. package/bin/app/providers/better-t-stack/packed/frontend.js +6116 -0
  498. package/bin/app/providers/better-t-stack/packed/runtime.d.ts +2 -0
  499. package/bin/app/providers/better-t-stack/packed/runtime.js +35 -0
  500. package/bin/app/providers/better-t-stack/prompts/addons.d.ts +2 -0
  501. package/bin/app/providers/better-t-stack/prompts/addons.js +62 -0
  502. package/bin/app/providers/better-t-stack/prompts/api.d.ts +2 -0
  503. package/bin/app/providers/better-t-stack/prompts/api.js +52 -0
  504. package/bin/app/providers/better-t-stack/prompts/auth.d.ts +2 -0
  505. package/bin/app/providers/better-t-stack/prompts/auth.js +19 -0
  506. package/bin/app/providers/better-t-stack/prompts/backend.d.ts +2 -0
  507. package/bin/app/providers/better-t-stack/prompts/backend.js +60 -0
  508. package/bin/app/providers/better-t-stack/prompts/config-prompts.d.ts +2 -0
  509. package/bin/app/providers/better-t-stack/prompts/config-prompts.js +88 -0
  510. package/bin/app/providers/better-t-stack/prompts/database-setup.d.ts +2 -0
  511. package/bin/app/providers/better-t-stack/prompts/database-setup.js +67 -0
  512. package/bin/app/providers/better-t-stack/prompts/database.d.ts +2 -0
  513. package/bin/app/providers/better-t-stack/prompts/database.js +48 -0
  514. package/bin/app/providers/better-t-stack/prompts/examples.d.ts +2 -0
  515. package/bin/app/providers/better-t-stack/prompts/examples.js +44 -0
  516. package/bin/app/providers/better-t-stack/prompts/frontend.d.ts +2 -0
  517. package/bin/app/providers/better-t-stack/prompts/frontend.js +107 -0
  518. package/bin/app/providers/better-t-stack/prompts/git.d.ts +1 -0
  519. package/bin/app/providers/better-t-stack/prompts/git.js +15 -0
  520. package/bin/app/providers/better-t-stack/prompts/install.d.ts +1 -0
  521. package/bin/app/providers/better-t-stack/prompts/install.js +15 -0
  522. package/bin/app/providers/better-t-stack/prompts/orm.d.ts +2 -0
  523. package/bin/app/providers/better-t-stack/prompts/orm.js +43 -0
  524. package/bin/app/providers/better-t-stack/prompts/package-manager.d.ts +2 -0
  525. package/bin/app/providers/better-t-stack/prompts/package-manager.js +29 -0
  526. package/bin/app/providers/better-t-stack/prompts/project-name.d.ts +1 -0
  527. package/bin/app/providers/better-t-stack/prompts/project-name.js +62 -0
  528. package/bin/app/providers/better-t-stack/prompts/runtime.d.ts +2 -0
  529. package/bin/app/providers/better-t-stack/prompts/runtime.js +41 -0
  530. package/bin/app/providers/better-t-stack/types.d.ts +124 -0
  531. package/bin/app/providers/better-t-stack/types.js +29 -0
  532. package/bin/app/providers/better-t-stack/utils/add-package-deps.d.ts +6 -0
  533. package/bin/app/providers/better-t-stack/utils/add-package-deps.js +31 -0
  534. package/bin/app/providers/better-t-stack/utils/analytics.d.ts +2 -0
  535. package/bin/app/providers/better-t-stack/utils/analytics.js +32 -0
  536. package/bin/app/providers/better-t-stack/utils/command-exists.d.ts +1 -0
  537. package/bin/app/providers/better-t-stack/utils/command-exists.js +14 -0
  538. package/bin/app/providers/better-t-stack/utils/display-config.d.ts +2 -0
  539. package/bin/app/providers/better-t-stack/utils/display-config.js +59 -0
  540. package/bin/app/providers/better-t-stack/utils/generate-reproducible-command.d.ts +2 -0
  541. package/bin/app/providers/better-t-stack/utils/generate-reproducible-command.js +39 -0
  542. package/bin/app/providers/better-t-stack/utils/get-latest-cli-version.d.ts +1 -0
  543. package/bin/app/providers/better-t-stack/utils/get-latest-cli-version.js +8 -0
  544. package/bin/app/providers/better-t-stack/utils/get-package-execution-command.d.ts +10 -0
  545. package/bin/app/providers/better-t-stack/utils/get-package-execution-command.js +10 -0
  546. package/bin/app/providers/better-t-stack/utils/get-package-manager.d.ts +2 -0
  547. package/bin/app/providers/better-t-stack/utils/get-package-manager.js +10 -0
  548. package/bin/app/providers/better-t-stack/utils/open-url.d.ts +1 -0
  549. package/bin/app/providers/better-t-stack/utils/open-url.js +22 -0
  550. package/bin/app/providers/better-t-stack/utils/render-title.d.ts +2 -0
  551. package/bin/app/providers/better-t-stack/utils/render-title.js +43 -0
  552. package/bin/app/providers/better-t-stack/utils/sponsors.d.ts +16 -0
  553. package/bin/app/providers/better-t-stack/utils/sponsors.js +37 -0
  554. package/bin/app/providers/better-t-stack/utils/template-processor.d.ts +8 -0
  555. package/bin/app/providers/better-t-stack/utils/template-processor.js +23 -0
  556. package/bin/app/providers/better-t-stack/validation.d.ts +4 -0
  557. package/bin/app/providers/better-t-stack/validation.js +436 -0
  558. package/bin/app/providers/reliverse-stack/reliverse-stack-mod.d.ts +6 -0
  559. package/bin/app/providers/reliverse-stack/reliverse-stack-mod.js +146 -0
  560. package/bin/app/providers/reliverse-stack/rs-impl.d.ts +37 -0
  561. package/bin/app/providers/reliverse-stack/rs-impl.js +367 -0
  562. package/bin/app/pub/cmd.js +2 -2
  563. package/bin/app/pub/impl.d.ts +1 -1
  564. package/bin/app/pub/impl.js +7 -7
  565. package/bin/app/pub/pub-library.d.ts +5 -0
  566. package/bin/app/pub/pub-library.js +122 -0
  567. package/bin/app/pub/pub-regular.d.ts +9 -0
  568. package/bin/app/pub/pub-regular.js +78 -0
  569. package/bin/app/remdn/cmd.js +4 -6
  570. package/bin/app/remove/cmd.js +4 -4
  571. package/bin/app/rempts/cmd.js +1 -1
  572. package/bin/app/rules/reliverse/dler-config-health/dler-config-health.d.ts +2 -0
  573. package/bin/app/rules/reliverse/dler-config-health/dler-config-health.js +37 -0
  574. package/bin/app/rules/reliverse/file-extensions/file-extensions.d.ts +2 -0
  575. package/bin/app/rules/reliverse/file-extensions/file-extensions.js +62 -0
  576. package/bin/app/rules/reliverse/missing-deps/analyzer.js +49 -0
  577. package/bin/app/rules/reliverse/missing-deps/deps-mod.d.ts +2 -0
  578. package/bin/app/rules/reliverse/missing-deps/deps-mod.js +57 -0
  579. package/bin/app/rules/reliverse/missing-deps/deps-types.js +0 -0
  580. package/bin/app/rules/reliverse/missing-deps/formatter.js +101 -0
  581. package/bin/app/rules/reliverse/no-dynamic-imports/no-dynamic-imports.d.ts +7 -0
  582. package/bin/app/rules/reliverse/no-dynamic-imports/no-dynamic-imports.js +89 -0
  583. package/bin/app/rules/reliverse/no-index-files/no-index-files.d.ts +2 -0
  584. package/bin/app/rules/reliverse/package-json-health/package-json-health.d.ts +2 -0
  585. package/bin/app/rules/reliverse/path-extensions/path-extensions.d.ts +2 -0
  586. package/bin/app/rules/reliverse/path-extensions/path-extensions.js +87 -0
  587. package/bin/app/rules/reliverse/self-include/self-include.d.ts +2 -0
  588. package/bin/app/rules/reliverse/self-include/self-include.js +93 -0
  589. package/bin/app/rules/reliverse/tsconfig-health/tsconfig-health.d.ts +2 -0
  590. package/bin/app/rules/rules-mod.d.ts +2 -0
  591. package/bin/app/rules/rules-utils.js +49 -0
  592. package/bin/app/schema/cmd.d.ts +2 -0
  593. package/bin/app/schema/cmd.js +24 -0
  594. package/bin/app/schema/schema-impl.d.ts +2 -0
  595. package/bin/app/schema/schema-impl.js +24 -0
  596. package/bin/app/studio/cmd.d.ts +2 -0
  597. package/bin/app/studio/cmd.js +20 -0
  598. package/bin/app/studio/studio-impl.d.ts +2 -0
  599. package/bin/app/studio/studio-impl.js +20 -0
  600. package/bin/app/toolbox/cmd.d.ts +7 -0
  601. package/bin/app/toolbox/cmd.js +37 -0
  602. package/bin/app/toolbox/toolbox-impl.d.ts +6 -0
  603. package/bin/app/toolbox/toolbox-impl.js +127 -0
  604. package/bin/app/toolbox/toolbox-vercel.d.ts +6 -0
  605. package/bin/app/toolbox/toolbox-vercel.js +105 -0
  606. package/bin/app/types/mod.d.ts +2165 -0
  607. package/bin/app/types/mod.js +162 -0
  608. package/bin/app/update/cmd-2.d.ts +2 -0
  609. package/bin/app/update/cmd-2.js +50 -0
  610. package/bin/app/update/cmd.js +14 -10
  611. package/bin/app/update/migrate/cmd.js +6 -5
  612. package/bin/app/update/update-impl.d.ts +2 -0
  613. package/bin/app/update/update-impl.js +50 -0
  614. package/bin/app/upgrade/cmd.js +2 -2
  615. package/bin/app/upload/cmd.d.ts +17 -0
  616. package/bin/app/upload/cmd.js +67 -0
  617. package/bin/app/upload/providers/providers-mod.d.ts +20 -0
  618. package/bin/app/upload/providers/providers-mod.js +40 -0
  619. package/bin/app/upload/providers/uploadcare.d.ts +13 -0
  620. package/bin/app/upload/providers/uploadcare.js +26 -0
  621. package/bin/app/upload/providers/uploadthing.d.ts +11 -0
  622. package/bin/app/upload/providers/uploadthing.js +31 -0
  623. package/bin/app/upload/upload-utils.d.ts +1 -0
  624. package/bin/app/upload/upload-utils.js +7 -0
  625. package/bin/app/utils/agg/agg-1.js +196 -0
  626. package/bin/app/utils/agg/agg-3.js +197 -0
  627. package/bin/app/utils/agg/agg-5.js +10 -0
  628. package/bin/app/utils/badgeNotifiers.d.ts +2 -0
  629. package/bin/app/utils/badgeNotifiers.js +3 -0
  630. package/bin/app/utils/codemods/convertCjsToEsm.d.ts +1 -0
  631. package/bin/app/utils/codemods/convertCjsToEsm.js +27 -0
  632. package/bin/app/utils/codemods/convertDatabase.d.ts +2 -0
  633. package/bin/app/utils/codemods/convertDatabase.js +229 -0
  634. package/bin/app/utils/codemods/convertDefinitions.d.ts +1 -0
  635. package/bin/app/utils/codemods/convertDefinitions.js +42 -0
  636. package/bin/app/utils/codemods/convertImportStyle.d.ts +1 -0
  637. package/bin/app/utils/codemods/convertImportStyle.js +30 -0
  638. package/bin/app/utils/codemods/convertJsToTs.d.ts +1 -0
  639. package/bin/app/utils/codemods/convertJsToTs.js +99 -0
  640. package/bin/app/utils/codemods/convertQuoteStyle.d.ts +1 -0
  641. package/bin/app/utils/codemods/convertQuoteStyle.js +31 -0
  642. package/bin/app/utils/codemods/convertRuntime.d.ts +1 -0
  643. package/bin/app/utils/codemods/convertRuntime.js +116 -0
  644. package/bin/app/utils/codemods/convertToMonorepo.d.ts +2 -0
  645. package/bin/app/utils/codemods/convertToMonorepo.js +137 -0
  646. package/bin/app/utils/codemods/removeComments.d.ts +1 -0
  647. package/bin/app/utils/codemods/removeComments.js +13 -0
  648. package/bin/app/utils/codemods/removeUnusedDeps.d.ts +1 -0
  649. package/bin/app/utils/codemods/removeUnusedDeps.js +29 -0
  650. package/bin/app/utils/codemods/replaceImportSymbol.d.ts +1 -0
  651. package/bin/app/utils/codemods/replaceImportSymbol.js +57 -0
  652. package/bin/app/utils/codemods/replaceWithModern.d.ts +1 -0
  653. package/bin/app/utils/codemods/replaceWithModern.js +122 -0
  654. package/bin/app/utils/createPackageJSON.d.ts +6 -0
  655. package/bin/app/utils/createPackageJSON.js +20 -0
  656. package/bin/app/utils/decideHelper.d.ts +12 -0
  657. package/bin/app/utils/decideHelper.js +32 -0
  658. package/bin/app/utils/dependencies/getUserPkgManager.d.ts +13 -0
  659. package/bin/app/utils/dependencies/getUserPkgManager.js +178 -0
  660. package/bin/app/utils/downloading/downloadI18nFiles.d.ts +1 -0
  661. package/bin/app/utils/downloading/downloadI18nFiles.js +98 -0
  662. package/bin/app/utils/downloading/downloadRepo.d.ts +41 -0
  663. package/bin/app/utils/downloading/downloadRepo.js +362 -0
  664. package/bin/app/utils/downloading/handleDownload.d.ts +17 -0
  665. package/bin/app/utils/downloading/handleDownload.js +160 -0
  666. package/bin/app/utils/exec/exec-env.js +34 -0
  667. package/bin/app/utils/exec/exec-error.d.ts +7 -0
  668. package/bin/app/utils/exec/exec-error.js +15 -0
  669. package/bin/app/utils/exec/exec-mod.d.ts +58 -0
  670. package/bin/app/utils/exec/exec-mod.js +224 -0
  671. package/bin/app/utils/exec/exec-parse.js +71 -0
  672. package/bin/app/utils/exec/exec-resolve.js +39 -0
  673. package/bin/app/utils/file-type.js +78 -0
  674. package/bin/app/utils/finalize.d.ts +9 -0
  675. package/bin/app/utils/finalize.js +34 -0
  676. package/bin/app/utils/fs-rename.js +108 -0
  677. package/bin/app/utils/getEffectiveDir.d.ts +5 -0
  678. package/bin/app/utils/getEffectiveDir.js +4 -0
  679. package/bin/app/utils/getPackageManager.d.ts +3 -0
  680. package/bin/app/utils/getPackageManager.js +14 -0
  681. package/bin/app/utils/handlers/dependencies.d.ts +1 -0
  682. package/bin/app/utils/handlers/dependencies.js +19 -0
  683. package/bin/app/utils/handlers/handleCleanup.d.ts +1 -0
  684. package/bin/app/utils/handlers/handleCleanup.js +84 -0
  685. package/bin/app/utils/handlers/handleCodemods.d.ts +2 -0
  686. package/bin/app/utils/handlers/handleCodemods.js +203 -0
  687. package/bin/app/utils/handlers/isAppInstalled.d.ts +1 -0
  688. package/bin/app/utils/handlers/isAppInstalled.js +17 -0
  689. package/bin/app/utils/handlers/promptPackageJsonScripts.d.ts +8 -0
  690. package/bin/app/utils/handlers/promptPackageJsonScripts.js +128 -0
  691. package/bin/app/utils/handlers/shadcn.d.ts +19 -0
  692. package/bin/app/utils/handlers/shadcn.js +299 -0
  693. package/bin/app/utils/hasOnlyRseConfig.d.ts +6 -0
  694. package/bin/app/utils/hasOnlyRseConfig.js +15 -0
  695. package/bin/app/utils/init/init-const.d.ts +34 -0
  696. package/bin/app/utils/init/init-const.js +17 -0
  697. package/bin/app/utils/init/init-types.js +0 -0
  698. package/bin/app/utils/instanceGithub.d.ts +29 -0
  699. package/bin/app/utils/instanceGithub.js +50 -0
  700. package/bin/app/utils/instanceVercel.d.ts +16 -0
  701. package/bin/app/utils/instanceVercel.js +39 -0
  702. package/bin/app/utils/microHelpers.d.ts +11 -0
  703. package/bin/app/utils/microHelpers.js +8 -0
  704. package/bin/app/utils/mrseHelpers.d.ts +6 -0
  705. package/bin/app/utils/mrseHelpers.js +21 -0
  706. package/bin/app/utils/native-cli/nc-impl.d.ts +15 -0
  707. package/bin/app/utils/native-cli/nc-impl.js +154 -0
  708. package/bin/app/utils/native-cli/nc-mod.d.ts +3 -0
  709. package/bin/app/utils/native-cli/nc-mod.js +44 -0
  710. package/bin/app/utils/pkgJsonHelpers.d.ts +7 -0
  711. package/bin/app/utils/pkgJsonHelpers.js +15 -0
  712. package/bin/app/utils/pm/pm-api.js +170 -0
  713. package/bin/app/utils/pm/pm-meta.js +86 -0
  714. package/bin/app/utils/pm/pm-types.js +0 -0
  715. package/bin/app/utils/pm/pm-utils.js +115 -0
  716. package/bin/app/utils/projectRepository.d.ts +59 -0
  717. package/bin/app/utils/projectRepository.js +229 -0
  718. package/bin/app/utils/prompts/askAppOrLib.d.ts +1 -0
  719. package/bin/app/utils/prompts/askAppOrLib.js +30 -0
  720. package/bin/app/utils/prompts/askInstallDeps.d.ts +7 -0
  721. package/bin/app/utils/prompts/askInstallDeps.js +40 -0
  722. package/bin/app/utils/prompts/askOpenInIDE.d.ts +5 -0
  723. package/bin/app/utils/prompts/askOpenInIDE.js +43 -0
  724. package/bin/app/utils/prompts/askProjectName.d.ts +3 -0
  725. package/bin/app/utils/prompts/askProjectName.js +21 -0
  726. package/bin/app/utils/prompts/askUsernameFrontend.d.ts +2 -0
  727. package/bin/app/utils/prompts/askUsernameFrontend.js +29 -0
  728. package/bin/app/utils/prompts/askUsernameGithub.d.ts +2 -0
  729. package/bin/app/utils/prompts/askUsernameGithub.js +29 -0
  730. package/bin/app/utils/prompts/shouldInitGit.d.ts +1 -0
  731. package/bin/app/utils/prompts/shouldInitGit.js +8 -0
  732. package/bin/app/utils/reliverseMemory.d.ts +3 -0
  733. package/bin/app/utils/reliverseMemory.js +122 -0
  734. package/bin/app/utils/replacements/reps-impl.d.ts +35 -0
  735. package/bin/app/utils/replacements/reps-impl.js +216 -0
  736. package/bin/app/utils/replacements/reps-keys.d.ts +19 -0
  737. package/bin/app/utils/replacements/reps-keys.js +31 -0
  738. package/bin/app/utils/replacements/reps-mod.d.ts +5 -0
  739. package/bin/app/utils/replacements/reps-mod.js +211 -0
  740. package/bin/app/utils/replacements.d.ts +0 -0
  741. package/bin/app/utils/replacements.js +0 -0
  742. package/bin/app/utils/resolve-cross-libs.js +641 -0
  743. package/bin/app/utils/schemaMemory.d.ts +31 -0
  744. package/bin/app/utils/schemaMemory.js +16 -0
  745. package/bin/app/utils/schemaTemplate.d.ts +52 -0
  746. package/bin/app/utils/schemaTemplate.js +117 -0
  747. package/bin/app/utils/spinner.d.ts +17 -0
  748. package/bin/app/utils/spinner.js +54 -0
  749. package/bin/app/utils/startEndPrompts.d.ts +2 -0
  750. package/bin/app/utils/startEndPrompts.js +14 -0
  751. package/bin/app/utils/terminalHelpers.d.ts +19 -0
  752. package/bin/app/utils/terminalHelpers.js +43 -0
  753. package/bin/app/utils/testsRuntime.d.ts +5 -0
  754. package/bin/app/utils/testsRuntime.js +11 -0
  755. package/bin/app/utils/tsconfigHelpers.d.ts +5 -0
  756. package/bin/app/utils/tsconfigHelpers.js +14 -0
  757. package/bin/app/utils/utils-build.d.ts +33 -0
  758. package/bin/app/utils/utils-clean.d.ts +11 -0
  759. package/bin/app/utils/utils-clean.js +70 -0
  760. package/bin/app/utils/utils-deps.d.ts +5 -0
  761. package/bin/app/utils/utils-determine.d.ts +12 -0
  762. package/bin/app/utils/utils-fs.js +183 -0
  763. package/bin/app/utils/utils-jsr-json.d.ts +9 -0
  764. package/bin/app/utils/utils-jsr-json.js +75 -0
  765. package/bin/app/utils/utils-package-json-libraries.d.ts +10 -0
  766. package/bin/app/utils/utils-package-json-regular.d.ts +8 -0
  767. package/bin/app/utils/utils-package-json-regular.js +165 -0
  768. package/bin/app/utils/utils-perf.d.ts +5 -0
  769. package/bin/app/utils/utils-security.d.ts +12 -0
  770. package/bin/app/utils/utils-security.js +95 -0
  771. package/bin/app/utils/utils-tsconfig.d.ts +10 -0
  772. package/bin/app/utils/utils-tsconfig.js +81 -0
  773. package/bin/app/web/README.md +149 -0
  774. package/bin/app/web/cmd.d.ts +2 -0
  775. package/bin/app/web/cmd.js +11 -0
  776. package/bin/app/x/cmd.js +3 -3
  777. package/bin/dler-go +4 -0
  778. package/bin/dler-rust +4 -0
  779. package/bin/dler.d.ts +1 -0
  780. package/bin/dler.js +90 -0
  781. package/bin/mod.d.ts +294 -1
  782. package/bin/mod.js +734 -4
  783. package/package.json +71 -13
  784. package/bin/cli.js +0 -89
  785. package/bin/libs/cfg/cfg-impl/cfg-dler.d.ts +0 -812
  786. package/bin/libs/cfg/cfg-impl/cfg-dler.js +0 -161
  787. package/bin/libs/cfg/cfg-mod.d.ts +0 -2
  788. package/bin/libs/cfg/cfg-mod.js +0 -1
  789. package/bin/libs/get/get-impl/get-core.js +0 -453
  790. package/bin/libs/get/get-mod.js +0 -88
  791. package/bin/libs/sdk/sdk-impl/build/build-library.d.ts +0 -43
  792. package/bin/libs/sdk/sdk-impl/build/build-library.js +0 -639
  793. package/bin/libs/sdk/sdk-impl/build/build-regular.d.ts +0 -20
  794. package/bin/libs/sdk/sdk-impl/build/build-regular.js +0 -407
  795. package/bin/libs/sdk/sdk-impl/build/providers/auto.d.ts +0 -3
  796. package/bin/libs/sdk/sdk-impl/build/providers/auto.js +0 -105
  797. package/bin/libs/sdk/sdk-impl/build/providers/build.d.ts +0 -8
  798. package/bin/libs/sdk/sdk-impl/build/providers/build.js +0 -351
  799. package/bin/libs/sdk/sdk-impl/build/providers/bun/single-file.js +0 -133
  800. package/bin/libs/sdk/sdk-impl/build/providers/copy/copy-mod.d.ts +0 -2
  801. package/bin/libs/sdk/sdk-impl/build/providers/copy/copy-mod.js +0 -49
  802. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/loader.d.ts +0 -4
  803. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/loaders/js.d.ts +0 -2
  804. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/loaders/loaders-mod.d.ts +0 -12
  805. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/loaders/postcss.d.ts +0 -3
  806. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/loaders/sass.d.ts +0 -2
  807. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/loaders/sass.js +0 -31
  808. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/loaders/vue.d.ts +0 -17
  809. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/loaders/vue.js +0 -145
  810. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/make.d.ts +0 -11
  811. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/make.js +0 -192
  812. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/utils/dts.d.ts +0 -11
  813. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/utils/dts.js +0 -94
  814. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/utils/vue-dts.d.ts +0 -3
  815. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-impl/utils/vue-dts.js +0 -174
  816. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-mod.d.ts +0 -2
  817. package/bin/libs/sdk/sdk-impl/build/providers/mkdist/mkdist-mod.js +0 -92
  818. package/bin/libs/sdk/sdk-impl/build/providers/rollup/build.d.ts +0 -2
  819. package/bin/libs/sdk/sdk-impl/build/providers/rollup/config.d.ts +0 -2
  820. package/bin/libs/sdk/sdk-impl/build/providers/rollup/config.js +0 -113
  821. package/bin/libs/sdk/sdk-impl/build/providers/rollup/plugins/cjs.d.ts +0 -4
  822. package/bin/libs/sdk/sdk-impl/build/providers/rollup/plugins/esbuild.d.ts +0 -3
  823. package/bin/libs/sdk/sdk-impl/build/providers/rollup/plugins/shebang.js +0 -42
  824. package/bin/libs/sdk/sdk-impl/build/providers/rollup/stub.d.ts +0 -2
  825. package/bin/libs/sdk/sdk-impl/build/providers/rollup/stub.js +0 -125
  826. package/bin/libs/sdk/sdk-impl/build/providers/rollup/utils.d.ts +0 -5
  827. package/bin/libs/sdk/sdk-impl/build/providers/rollup/watch.d.ts +0 -2
  828. package/bin/libs/sdk/sdk-impl/build/providers/untyped/untyped-mod.d.ts +0 -2
  829. package/bin/libs/sdk/sdk-impl/build/providers/untyped/untyped-mod.js +0 -111
  830. package/bin/libs/sdk/sdk-impl/build/providers/utils.d.ts +0 -19
  831. package/bin/libs/sdk/sdk-impl/build/providers/utils.js +0 -148
  832. package/bin/libs/sdk/sdk-impl/build/providers/validate.d.ts +0 -4
  833. package/bin/libs/sdk/sdk-impl/build/providers/validate.js +0 -52
  834. package/bin/libs/sdk/sdk-impl/cmds/inject/inject-impl-mod.js +0 -724
  835. package/bin/libs/sdk/sdk-impl/cmds/transform/transform-impl-mod.js +0 -178
  836. package/bin/libs/sdk/sdk-impl/config/core.js +0 -231
  837. package/bin/libs/sdk/sdk-impl/config/default.d.ts +0 -6
  838. package/bin/libs/sdk/sdk-impl/config/default.js +0 -159
  839. package/bin/libs/sdk/sdk-impl/config/info.d.ts +0 -2
  840. package/bin/libs/sdk/sdk-impl/config/info.js +0 -20
  841. package/bin/libs/sdk/sdk-impl/config/load.d.ts +0 -15
  842. package/bin/libs/sdk/sdk-impl/config/load.js +0 -87
  843. package/bin/libs/sdk/sdk-impl/config/prepare.js +0 -338
  844. package/bin/libs/sdk/sdk-impl/config/types.d.ts +0 -734
  845. package/bin/libs/sdk/sdk-impl/constants.d.ts +0 -1
  846. package/bin/libs/sdk/sdk-impl/constants.js +0 -13
  847. package/bin/libs/sdk/sdk-impl/library-flow.d.ts +0 -26
  848. package/bin/libs/sdk/sdk-impl/library-flow.js +0 -203
  849. package/bin/libs/sdk/sdk-impl/magic/magic-apply.js +0 -669
  850. package/bin/libs/sdk/sdk-impl/pub/pub-library.d.ts +0 -5
  851. package/bin/libs/sdk/sdk-impl/pub/pub-library.js +0 -122
  852. package/bin/libs/sdk/sdk-impl/pub/pub-regular.d.ts +0 -9
  853. package/bin/libs/sdk/sdk-impl/pub/pub-regular.js +0 -78
  854. package/bin/libs/sdk/sdk-impl/regular-flow.d.ts +0 -10
  855. package/bin/libs/sdk/sdk-impl/regular-flow.js +0 -173
  856. package/bin/libs/sdk/sdk-impl/rules/reliverse/dler-config-health/dler-config-health.d.ts +0 -2
  857. package/bin/libs/sdk/sdk-impl/rules/reliverse/dler-config-health/dler-config-health.js +0 -37
  858. package/bin/libs/sdk/sdk-impl/rules/reliverse/file-extensions/file-extensions.d.ts +0 -2
  859. package/bin/libs/sdk/sdk-impl/rules/reliverse/file-extensions/file-extensions.js +0 -65
  860. package/bin/libs/sdk/sdk-impl/rules/reliverse/missing-deps/analyzer.js +0 -49
  861. package/bin/libs/sdk/sdk-impl/rules/reliverse/missing-deps/deps-mod.d.ts +0 -2
  862. package/bin/libs/sdk/sdk-impl/rules/reliverse/missing-deps/deps-mod.js +0 -57
  863. package/bin/libs/sdk/sdk-impl/rules/reliverse/missing-deps/formatter.js +0 -101
  864. package/bin/libs/sdk/sdk-impl/rules/reliverse/no-dynamic-imports/no-dynamic-imports.d.ts +0 -8
  865. package/bin/libs/sdk/sdk-impl/rules/reliverse/no-dynamic-imports/no-dynamic-imports.js +0 -89
  866. package/bin/libs/sdk/sdk-impl/rules/reliverse/no-index-files/no-index-files.d.ts +0 -2
  867. package/bin/libs/sdk/sdk-impl/rules/reliverse/package-json-health/package-json-health.d.ts +0 -2
  868. package/bin/libs/sdk/sdk-impl/rules/reliverse/path-extensions/path-extensions.d.ts +0 -2
  869. package/bin/libs/sdk/sdk-impl/rules/reliverse/path-extensions/path-extensions.js +0 -90
  870. package/bin/libs/sdk/sdk-impl/rules/reliverse/self-include/self-include.d.ts +0 -2
  871. package/bin/libs/sdk/sdk-impl/rules/reliverse/self-include/self-include.js +0 -93
  872. package/bin/libs/sdk/sdk-impl/rules/reliverse/tsconfig-health/tsconfig-health.d.ts +0 -2
  873. package/bin/libs/sdk/sdk-impl/rules/rules-mod.d.ts +0 -2
  874. package/bin/libs/sdk/sdk-impl/rules/rules-utils.js +0 -49
  875. package/bin/libs/sdk/sdk-impl/sdk-types.d.ts +0 -415
  876. package/bin/libs/sdk/sdk-impl/utils/agg/agg-1.js +0 -196
  877. package/bin/libs/sdk/sdk-impl/utils/agg/agg-3.js +0 -197
  878. package/bin/libs/sdk/sdk-impl/utils/agg/agg-5.js +0 -17
  879. package/bin/libs/sdk/sdk-impl/utils/exec/exec-env.js +0 -34
  880. package/bin/libs/sdk/sdk-impl/utils/exec/exec-error.d.ts +0 -7
  881. package/bin/libs/sdk/sdk-impl/utils/exec/exec-error.js +0 -15
  882. package/bin/libs/sdk/sdk-impl/utils/exec/exec-mod.d.ts +0 -58
  883. package/bin/libs/sdk/sdk-impl/utils/exec/exec-mod.js +0 -224
  884. package/bin/libs/sdk/sdk-impl/utils/exec/exec-parse.js +0 -71
  885. package/bin/libs/sdk/sdk-impl/utils/exec/exec-resolve.js +0 -39
  886. package/bin/libs/sdk/sdk-impl/utils/file-type.js +0 -78
  887. package/bin/libs/sdk/sdk-impl/utils/finalize.d.ts +0 -10
  888. package/bin/libs/sdk/sdk-impl/utils/finalize.js +0 -34
  889. package/bin/libs/sdk/sdk-impl/utils/fs-rename.js +0 -108
  890. package/bin/libs/sdk/sdk-impl/utils/init/init-const.d.ts +0 -34
  891. package/bin/libs/sdk/sdk-impl/utils/init/init-const.js +0 -17
  892. package/bin/libs/sdk/sdk-impl/utils/pm/pm-api.js +0 -170
  893. package/bin/libs/sdk/sdk-impl/utils/pm/pm-meta.js +0 -86
  894. package/bin/libs/sdk/sdk-impl/utils/pm/pm-utils.js +0 -115
  895. package/bin/libs/sdk/sdk-impl/utils/resolve-cross-libs.js +0 -641
  896. package/bin/libs/sdk/sdk-impl/utils/spinner.d.ts +0 -17
  897. package/bin/libs/sdk/sdk-impl/utils/spinner.js +0 -53
  898. package/bin/libs/sdk/sdk-impl/utils/utils-build.d.ts +0 -33
  899. package/bin/libs/sdk/sdk-impl/utils/utils-clean.d.ts +0 -11
  900. package/bin/libs/sdk/sdk-impl/utils/utils-clean.js +0 -70
  901. package/bin/libs/sdk/sdk-impl/utils/utils-consts.d.ts +0 -9
  902. package/bin/libs/sdk/sdk-impl/utils/utils-consts.js +0 -10
  903. package/bin/libs/sdk/sdk-impl/utils/utils-deps.d.ts +0 -5
  904. package/bin/libs/sdk/sdk-impl/utils/utils-determine.d.ts +0 -12
  905. package/bin/libs/sdk/sdk-impl/utils/utils-fs.js +0 -183
  906. package/bin/libs/sdk/sdk-impl/utils/utils-jsr-json.d.ts +0 -9
  907. package/bin/libs/sdk/sdk-impl/utils/utils-jsr-json.js +0 -75
  908. package/bin/libs/sdk/sdk-impl/utils/utils-package-json-libraries.d.ts +0 -10
  909. package/bin/libs/sdk/sdk-impl/utils/utils-package-json-regular.d.ts +0 -8
  910. package/bin/libs/sdk/sdk-impl/utils/utils-package-json-regular.js +0 -165
  911. package/bin/libs/sdk/sdk-impl/utils/utils-perf.d.ts +0 -5
  912. package/bin/libs/sdk/sdk-impl/utils/utils-security.d.ts +0 -12
  913. package/bin/libs/sdk/sdk-impl/utils/utils-security.js +0 -95
  914. package/bin/libs/sdk/sdk-impl/utils/utils-tsconfig.d.ts +0 -4
  915. package/bin/libs/sdk/sdk-impl/utils/utils-tsconfig.js +0 -44
  916. package/bin/libs/sdk/sdk-mod.d.ts +0 -125
  917. package/bin/libs/sdk/sdk-mod.js +0 -303
  918. /package/bin/{libs/sdk/sdk-impl/build/providers/bun/bun-build.d.ts → app/add/add-global/install-mod.d.ts} +0 -0
  919. /package/bin/{libs/sdk/sdk-impl/build/providers/bun/bun-build.js → app/add/add-global/install-mod.js} +0 -0
  920. /package/bin/{libs/sdk/sdk-impl/config → app/add/add-local/core}/types.js +0 -0
  921. /package/bin/{libs/sdk/sdk-impl/rules/reliverse/missing-deps/deps-types.js → app/add/add-rule/add-rule-types.js} +0 -0
  922. /package/bin/{libs/sdk/sdk-impl/sdk-types.js → app/ai/ai-impl/ai-types.js} +0 -0
  923. /package/bin/{libs/sdk/sdk-impl/utils/init/init-types.js → app/better/auth/(generators)/types.js} +0 -0
  924. /package/bin/{libs/sdk/sdk-impl/utils/pm/pm-types.js → app/build/providers/bun/bun-build.d.ts} +0 -0
  925. /package/bin/{libs/sdk/sdk-impl/utils/replacements.d.ts → app/build/providers/bun/bun-build.js} +0 -0
  926. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/bun/single-file.d.ts +0 -0
  927. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/mkdist/mkdist-impl/loader.js +0 -0
  928. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/mkdist/mkdist-impl/loaders/js.js +0 -0
  929. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/mkdist/mkdist-impl/loaders/loaders-mod.js +0 -0
  930. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/mkdist/mkdist-impl/loaders/postcss.js +0 -0
  931. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/mkdist/mkdist-impl/utils/fs.d.ts +0 -0
  932. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/mkdist/mkdist-impl/utils/fs.js +0 -0
  933. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/rollup/build.js +0 -0
  934. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/rollup/plugins/cjs.js +0 -0
  935. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/rollup/plugins/esbuild.js +0 -0
  936. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/rollup/plugins/json.d.ts +0 -0
  937. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/rollup/plugins/json.js +0 -0
  938. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/rollup/plugins/raw.d.ts +0 -0
  939. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/rollup/plugins/raw.js +0 -0
  940. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/rollup/plugins/shebang.d.ts +0 -0
  941. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/rollup/utils.js +0 -0
  942. /package/bin/{libs/sdk/sdk-impl → app}/build/providers/rollup/watch.js +0 -0
  943. /package/bin/{libs/sdk/sdk-impl → app}/cmds/inject/inject-impl-mod.d.ts +0 -0
  944. /package/bin/{libs/sdk/sdk-impl → app}/cmds/transform/transform-impl-mod.d.ts +0 -0
  945. /package/bin/{libs/sdk/sdk-impl → app}/config/core.d.ts +0 -0
  946. /package/bin/{libs/sdk/sdk-impl → app}/config/prepare.d.ts +0 -0
  947. /package/bin/{cli.d.ts → app/cross/mod.d.ts} +0 -0
  948. /package/bin/{libs → app}/get/get-impl/get-core.d.ts +0 -0
  949. /package/bin/{libs → app}/get/get-mod.d.ts +0 -0
  950. /package/bin/{libs/sdk/sdk-impl/utils/replacements.js → app/init/use-template/cp-modules/git-deploy-prompts/vercel/vercel-types.js} +0 -0
  951. /package/bin/{libs/sdk/sdk-impl → app}/magic/magic-apply.d.ts +0 -0
  952. /package/bin/{libs/sdk/sdk-impl → app}/magic/magic-spells.d.ts +0 -0
  953. /package/bin/{libs/sdk/sdk-impl → app}/magic/magic-spells.js +0 -0
  954. /package/bin/{libs/sdk/sdk-impl → app}/rules/reliverse/missing-deps/analyzer.d.ts +0 -0
  955. /package/bin/{libs/sdk/sdk-impl → app}/rules/reliverse/missing-deps/deps-types.d.ts +0 -0
  956. /package/bin/{libs/sdk/sdk-impl → app}/rules/reliverse/missing-deps/filesystem.d.ts +0 -0
  957. /package/bin/{libs/sdk/sdk-impl → app}/rules/reliverse/missing-deps/filesystem.js +0 -0
  958. /package/bin/{libs/sdk/sdk-impl → app}/rules/reliverse/missing-deps/formatter.d.ts +0 -0
  959. /package/bin/{libs/sdk/sdk-impl → app}/rules/reliverse/missing-deps/parser.d.ts +0 -0
  960. /package/bin/{libs/sdk/sdk-impl → app}/rules/reliverse/missing-deps/parser.js +0 -0
  961. /package/bin/{libs/sdk/sdk-impl → app}/rules/reliverse/no-index-files/no-index-files.js +0 -0
  962. /package/bin/{libs/sdk/sdk-impl → app}/rules/reliverse/package-json-health/package-json-health.js +0 -0
  963. /package/bin/{libs/sdk/sdk-impl → app}/rules/reliverse/tsconfig-health/tsconfig-health.js +0 -0
  964. /package/bin/{libs/sdk/sdk-impl → app}/rules/rules-consts.d.ts +0 -0
  965. /package/bin/{libs/sdk/sdk-impl → app}/rules/rules-consts.js +0 -0
  966. /package/bin/{libs/sdk/sdk-impl → app}/rules/rules-mod.js +0 -0
  967. /package/bin/{libs/sdk/sdk-impl → app}/rules/rules-utils.d.ts +0 -0
  968. /package/bin/{libs/sdk/sdk-impl → app}/utils/agg/agg-1.d.ts +0 -0
  969. /package/bin/{libs/sdk/sdk-impl → app}/utils/agg/agg-2.d.ts +0 -0
  970. /package/bin/{libs/sdk/sdk-impl → app}/utils/agg/agg-2.js +0 -0
  971. /package/bin/{libs/sdk/sdk-impl → app}/utils/agg/agg-3.d.ts +0 -0
  972. /package/bin/{libs/sdk/sdk-impl → app}/utils/agg/agg-4.d.ts +0 -0
  973. /package/bin/{libs/sdk/sdk-impl → app}/utils/agg/agg-4.js +0 -0
  974. /package/bin/{libs/sdk/sdk-impl → app}/utils/agg/agg-5.d.ts +0 -0
  975. /package/bin/{libs/sdk/sdk-impl → app}/utils/b-exts.d.ts +0 -0
  976. /package/bin/{libs/sdk/sdk-impl → app}/utils/b-exts.js +0 -0
  977. /package/bin/{libs/sdk/sdk-impl → app}/utils/binary.d.ts +0 -0
  978. /package/bin/{libs/sdk/sdk-impl → app}/utils/binary.js +0 -0
  979. /package/bin/{libs/sdk/sdk-impl → app}/utils/comments.d.ts +0 -0
  980. /package/bin/{libs/sdk/sdk-impl → app}/utils/comments.js +0 -0
  981. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-enoent.d.ts +0 -0
  982. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-enoent.js +0 -0
  983. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-env.d.ts +0 -0
  984. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-escape.d.ts +0 -0
  985. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-escape.js +0 -0
  986. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-parse.d.ts +0 -0
  987. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-resolve.d.ts +0 -0
  988. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-shebang.d.ts +0 -0
  989. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-shebang.js +0 -0
  990. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-spawn.d.ts +0 -0
  991. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-spawn.js +0 -0
  992. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-stream.d.ts +0 -0
  993. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-stream.js +0 -0
  994. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-types.d.ts +0 -0
  995. /package/bin/{libs/sdk/sdk-impl → app}/utils/exec/exec-types.js +0 -0
  996. /package/bin/{libs/sdk/sdk-impl → app}/utils/file-type.d.ts +0 -0
  997. /package/bin/{libs/sdk/sdk-impl → app}/utils/fs-rename.d.ts +0 -0
  998. /package/bin/{libs/sdk/sdk-impl → app}/utils/init/init-impl.d.ts +0 -0
  999. /package/bin/{libs/sdk/sdk-impl → app}/utils/init/init-impl.js +0 -0
  1000. /package/bin/{libs/sdk/sdk-impl → app}/utils/init/init-tmpl.d.ts +0 -0
  1001. /package/bin/{libs/sdk/sdk-impl → app}/utils/init/init-tmpl.js +0 -0
  1002. /package/bin/{libs/sdk/sdk-impl → app}/utils/init/init-types.d.ts +0 -0
  1003. /package/bin/{libs/sdk/sdk-impl → app}/utils/pm/pm-api.d.ts +0 -0
  1004. /package/bin/{libs/sdk/sdk-impl → app}/utils/pm/pm-catalog.d.ts +0 -0
  1005. /package/bin/{libs/sdk/sdk-impl → app}/utils/pm/pm-catalog.js +0 -0
  1006. /package/bin/{libs/sdk/sdk-impl → app}/utils/pm/pm-detect.d.ts +0 -0
  1007. /package/bin/{libs/sdk/sdk-impl → app}/utils/pm/pm-detect.js +0 -0
  1008. /package/bin/{libs/sdk/sdk-impl → app}/utils/pm/pm-meta.d.ts +0 -0
  1009. /package/bin/{libs/sdk/sdk-impl → app}/utils/pm/pm-parse.d.ts +0 -0
  1010. /package/bin/{libs/sdk/sdk-impl → app}/utils/pm/pm-parse.js +0 -0
  1011. /package/bin/{libs/sdk/sdk-impl → app}/utils/pm/pm-types.d.ts +0 -0
  1012. /package/bin/{libs/sdk/sdk-impl → app}/utils/pm/pm-utils.d.ts +0 -0
  1013. /package/bin/{libs/sdk/sdk-impl → app}/utils/resolve-cross-libs.d.ts +0 -0
  1014. /package/bin/{libs/sdk/sdk-impl → app}/utils/utils-build.js +0 -0
  1015. /package/bin/{libs/sdk/sdk-impl → app}/utils/utils-deps.js +0 -0
  1016. /package/bin/{libs/sdk/sdk-impl → app}/utils/utils-determine.js +0 -0
  1017. /package/bin/{libs/sdk/sdk-impl → app}/utils/utils-error-cwd.d.ts +0 -0
  1018. /package/bin/{libs/sdk/sdk-impl → app}/utils/utils-error-cwd.js +0 -0
  1019. /package/bin/{libs/sdk/sdk-impl → app}/utils/utils-fs.d.ts +0 -0
  1020. /package/bin/{libs/sdk/sdk-impl → app}/utils/utils-misc.d.ts +0 -0
  1021. /package/bin/{libs/sdk/sdk-impl → app}/utils/utils-misc.js +0 -0
  1022. /package/bin/{libs/sdk/sdk-impl → app}/utils/utils-package-json-libraries.js +0 -0
  1023. /package/bin/{libs/sdk/sdk-impl → app}/utils/utils-perf.js +0 -0
@@ -0,0 +1,979 @@
1
+ import { re } from "@reliverse/relico";
2
+ import { existsSync } from "@reliverse/relifso";
3
+ import { relinka } from "@reliverse/relinka";
4
+ import {
5
+ cancel,
6
+ confirm,
7
+ defineCommand,
8
+ intro,
9
+ isCancel,
10
+ multiselect,
11
+ outro,
12
+ select,
13
+ selectSimple,
14
+ spinner,
15
+ text
16
+ } from "@reliverse/rempts";
17
+ import { parse } from "dotenv";
18
+ import { execaCommand } from "execa";
19
+ import fs from "fs/promises";
20
+ import path from "path";
21
+ import semver from "semver";
22
+ import { z } from "zod";
23
+ import { generateAuthConfig } from "../(generators)/auth-config.js";
24
+ import { checkPackageManagers } from "../(utils)/check-package-managers.js";
25
+ import { formatMilliseconds } from "../(utils)/format-ms.js";
26
+ import { generateSecretHash } from "../(utils)/generate-secret.js";
27
+ import { getPackageInfo } from "../(utils)/get-package-info.js";
28
+ import { getTsconfigInfo } from "../(utils)/get-tsconfig-info.js";
29
+ import { installDependencies } from "../(utils)/install-dependencies.js";
30
+ const supportedDatabases = [
31
+ // Built-in kysely
32
+ "sqlite",
33
+ "mysql",
34
+ "mssql",
35
+ "postgres",
36
+ // Drizzle
37
+ "drizzle:pg",
38
+ "drizzle:mysql",
39
+ "drizzle:sqlite",
40
+ // Prisma
41
+ "prisma:postgresql",
42
+ "prisma:mysql",
43
+ "prisma:sqlite",
44
+ // Mongo
45
+ "mongodb"
46
+ ];
47
+ export const supportedPlugins = [
48
+ {
49
+ id: "two-factor",
50
+ name: "twoFactor",
51
+ path: `better-auth/plugins`,
52
+ clientName: "twoFactorClient",
53
+ clientPath: "better-auth/client/plugins"
54
+ },
55
+ {
56
+ id: "username",
57
+ name: "username",
58
+ clientName: "usernameClient",
59
+ path: `better-auth/plugins`,
60
+ clientPath: "better-auth/client/plugins"
61
+ },
62
+ {
63
+ id: "anonymous",
64
+ name: "anonymous",
65
+ clientName: "anonymousClient",
66
+ path: `better-auth/plugins`,
67
+ clientPath: "better-auth/client/plugins"
68
+ },
69
+ {
70
+ id: "phone-number",
71
+ name: "phoneNumber",
72
+ clientName: "phoneNumberClient",
73
+ path: `better-auth/plugins`,
74
+ clientPath: "better-auth/client/plugins"
75
+ },
76
+ {
77
+ id: "magic-link",
78
+ name: "magicLink",
79
+ clientName: "magicLinkClient",
80
+ clientPath: "better-auth/client/plugins",
81
+ path: `better-auth/plugins`
82
+ },
83
+ {
84
+ id: "email-otp",
85
+ name: "emailOTP",
86
+ clientName: "emailOTPClient",
87
+ path: `better-auth/plugins`,
88
+ clientPath: "better-auth/client/plugins"
89
+ },
90
+ {
91
+ id: "passkey",
92
+ name: "passkey",
93
+ clientName: "passkeyClient",
94
+ path: `better-auth/plugins/passkey`,
95
+ clientPath: "better-auth/client/plugins"
96
+ },
97
+ {
98
+ id: "generic-oauth",
99
+ name: "genericOAuth",
100
+ clientName: "genericOAuthClient",
101
+ path: `better-auth/plugins`,
102
+ clientPath: "better-auth/client/plugins"
103
+ },
104
+ {
105
+ id: "one-tap",
106
+ name: "oneTap",
107
+ clientName: "oneTapClient",
108
+ path: `better-auth/plugins`,
109
+ clientPath: "better-auth/client/plugins"
110
+ },
111
+ {
112
+ id: "api-key",
113
+ name: "apiKey",
114
+ clientName: "apiKeyClient",
115
+ path: `better-auth/plugins`,
116
+ clientPath: "better-auth/client/plugins"
117
+ },
118
+ {
119
+ id: "admin",
120
+ name: "admin",
121
+ clientName: "adminClient",
122
+ path: `better-auth/plugins`,
123
+ clientPath: "better-auth/client/plugins"
124
+ },
125
+ {
126
+ id: "organization",
127
+ name: "organization",
128
+ clientName: "organizationClient",
129
+ path: `better-auth/plugins`,
130
+ clientPath: "better-auth/client/plugins"
131
+ },
132
+ {
133
+ id: "oidc",
134
+ name: "oidcProvider",
135
+ clientName: "oidcClient",
136
+ path: `better-auth/plugins`,
137
+ clientPath: "better-auth/client/plugins"
138
+ },
139
+ {
140
+ id: "sso",
141
+ name: "sso",
142
+ clientName: "ssoClient",
143
+ path: `better-auth/plugins/sso`,
144
+ clientPath: "better-auth/client/plugins"
145
+ },
146
+ {
147
+ id: "bearer",
148
+ name: "bearer",
149
+ clientName: void 0,
150
+ path: `better-auth/plugins`,
151
+ clientPath: void 0
152
+ },
153
+ {
154
+ id: "multi-session",
155
+ name: "multiSession",
156
+ clientName: "multiSessionClient",
157
+ path: `better-auth/plugins`,
158
+ clientPath: "better-auth/client/plugins"
159
+ },
160
+ {
161
+ id: "oauth-proxy",
162
+ name: "oAuthProxy",
163
+ clientName: void 0,
164
+ path: `better-auth/plugins`,
165
+ clientPath: void 0
166
+ },
167
+ {
168
+ id: "open-api",
169
+ name: "openAPI",
170
+ clientName: void 0,
171
+ path: `better-auth/plugins`,
172
+ clientPath: void 0
173
+ },
174
+ {
175
+ id: "jwt",
176
+ name: "jwt",
177
+ clientName: void 0,
178
+ clientPath: void 0,
179
+ path: `better-auth/plugins`
180
+ },
181
+ {
182
+ id: "next-cookies",
183
+ name: "nextCookies",
184
+ clientPath: void 0,
185
+ clientName: void 0,
186
+ path: `better-auth/next-js`
187
+ }
188
+ ];
189
+ async function formatWithBiome(code, _filepath) {
190
+ const tempFile = path.join(process.cwd(), `.temp-${Date.now()}.ts`);
191
+ try {
192
+ await fs.writeFile(tempFile, code);
193
+ await execaCommand(`bun x biome format --write ${tempFile}`);
194
+ const formatted = await fs.readFile(tempFile, "utf-8");
195
+ return formatted;
196
+ } finally {
197
+ await fs.unlink(tempFile).catch(() => {
198
+ });
199
+ }
200
+ }
201
+ const getDefaultAuthConfig = async ({ appName }) => await formatWithBiome(
202
+ [
203
+ "import { betterAuth } from 'better-auth';",
204
+ "",
205
+ "export const auth = betterAuth({",
206
+ appName ? `appName: "${appName}",` : "",
207
+ "plugins: [],",
208
+ "});"
209
+ ].join("\n"),
210
+ "auth.ts"
211
+ );
212
+ const getDefaultAuthClientConfig = async ({
213
+ auth_config_path,
214
+ framework,
215
+ clientPlugins
216
+ }) => {
217
+ function groupImportVariables() {
218
+ const result = [
219
+ {
220
+ path: "better-auth/client/plugins",
221
+ variables: [{ name: "inferAdditionalFields" }]
222
+ }
223
+ ];
224
+ for (const plugin of clientPlugins) {
225
+ for (const import_ of plugin.imports) {
226
+ if (Array.isArray(import_.variables)) {
227
+ for (const variable of import_.variables) {
228
+ const existingIndex = result.findIndex((x) => x.path === import_.path);
229
+ if (existingIndex !== -1) {
230
+ const vars = result[existingIndex].variables;
231
+ if (Array.isArray(vars)) {
232
+ vars.push(variable);
233
+ } else {
234
+ result[existingIndex].variables = [vars, variable];
235
+ }
236
+ } else {
237
+ result.push({
238
+ path: import_.path,
239
+ variables: [variable]
240
+ });
241
+ }
242
+ }
243
+ } else {
244
+ const existingIndex = result.findIndex((x) => x.path === import_.path);
245
+ if (existingIndex !== -1) {
246
+ const vars = result[existingIndex].variables;
247
+ if (Array.isArray(vars)) {
248
+ vars.push(import_.variables);
249
+ } else {
250
+ result[existingIndex].variables = [vars, import_.variables];
251
+ }
252
+ } else {
253
+ result.push({
254
+ path: import_.path,
255
+ variables: [import_.variables]
256
+ });
257
+ }
258
+ }
259
+ }
260
+ }
261
+ return result;
262
+ }
263
+ const imports = groupImportVariables();
264
+ let importString = "";
265
+ for (const import_ of imports) {
266
+ if (Array.isArray(import_.variables)) {
267
+ importString += `import { ${import_.variables.map((x) => `${x.asType ? "type " : ""}${x.name}${x.as ? ` as ${x.as}` : ""}`).join(", ")} } from "${import_.path}";
268
+ `;
269
+ } else {
270
+ importString += `import ${import_.variables.asType ? "type " : ""}${import_.variables.name}${import_.variables.as ? ` as ${import_.variables.as}` : ""} from "${import_.path}";
271
+ `;
272
+ }
273
+ }
274
+ const formattedCode = await formatWithBiome(
275
+ [
276
+ `import { createAuthClient } from "better-auth/${framework === "nextjs" ? "react" : framework === "vanilla" ? "client" : framework}";`,
277
+ `import type { auth } from "${auth_config_path}";`,
278
+ importString,
279
+ ``,
280
+ `export const authClient = createAuthClient({`,
281
+ `baseURL: "http://localhost:3000",`,
282
+ `plugins: [inferAdditionalFields<typeof auth>(),${clientPlugins.map((x) => `${x.name}(${x.contents})`).join(", ")}],`,
283
+ `});`
284
+ ].join("\n"),
285
+ "auth-client.ts"
286
+ );
287
+ return formattedCode;
288
+ };
289
+ const optionsSchema = z.object({
290
+ cwd: z.string(),
291
+ config: z.string().optional(),
292
+ database: z.enum(supportedDatabases).optional(),
293
+ "skip-db": z.boolean().optional(),
294
+ "skip-plugins": z.boolean().optional(),
295
+ "package-manager": z.string().optional(),
296
+ tsconfig: z.string().optional()
297
+ });
298
+ const outroText = `\u{1F973} All Done, Happy Hacking!`;
299
+ export const init = defineCommand({
300
+ meta: {
301
+ name: "init",
302
+ description: "Initialize Better Auth in your project"
303
+ },
304
+ args: {
305
+ cwd: {
306
+ type: "string",
307
+ description: "The working directory",
308
+ default: process.cwd()
309
+ },
310
+ config: {
311
+ type: "string",
312
+ description: "The path to the auth configuration file. defaults to the first `auth.ts` file found.",
313
+ optional: true
314
+ },
315
+ tsconfig: {
316
+ type: "string",
317
+ description: "The path to the tsconfig file",
318
+ optional: true
319
+ },
320
+ "skip-db": {
321
+ type: "boolean",
322
+ description: "Skip the database setup",
323
+ optional: true
324
+ },
325
+ "skip-plugins": {
326
+ type: "boolean",
327
+ description: "Skip the plugins setup",
328
+ optional: true
329
+ },
330
+ "package-manager": {
331
+ type: "string",
332
+ description: "The package manager you want to use",
333
+ optional: true
334
+ }
335
+ },
336
+ async run({ args }) {
337
+ console.log();
338
+ intro("\u{1F44B} Initializing Better Auth");
339
+ const options = optionsSchema.parse(args);
340
+ const cwd = path.resolve(options.cwd);
341
+ let packageManagerPreference;
342
+ let config_path = "";
343
+ let framework = "vanilla";
344
+ const format = async (code) => await formatWithBiome(code, config_path);
345
+ let packageInfo;
346
+ try {
347
+ packageInfo = getPackageInfo(cwd);
348
+ } catch (error) {
349
+ relinka("error", `\u274C Couldn't read your package.json file. (dir: ${cwd})`);
350
+ relinka("error", JSON.stringify(error, null, 2));
351
+ process.exit(1);
352
+ }
353
+ const envFiles = await getEnvFiles(cwd);
354
+ if (!envFiles.length) {
355
+ outro("\u274C No .env files found. Please create an env file first.");
356
+ process.exit(0);
357
+ }
358
+ let targetEnvFile;
359
+ if (envFiles.includes(".env")) targetEnvFile = ".env";
360
+ else if (envFiles.includes(".env.local")) targetEnvFile = ".env.local";
361
+ else if (envFiles.includes(".env.development")) targetEnvFile = ".env.development";
362
+ else if (envFiles.length === 1) targetEnvFile = envFiles[0];
363
+ else targetEnvFile = "none";
364
+ let tsconfigInfo;
365
+ try {
366
+ const tsconfigPath = options.tsconfig !== void 0 ? path.resolve(cwd, options.tsconfig) : path.join(cwd, "tsconfig.json");
367
+ tsconfigInfo = await getTsconfigInfo(cwd, tsconfigPath);
368
+ } catch (error) {
369
+ relinka("error", `\u274C Couldn't read your tsconfig.json file. (dir: ${cwd})`);
370
+ console.error(error);
371
+ process.exit(1);
372
+ }
373
+ if (!("compilerOptions" in tsconfigInfo && "strict" in tsconfigInfo.compilerOptions && tsconfigInfo.compilerOptions.strict === true)) {
374
+ relinka(
375
+ "warn",
376
+ `Better Auth requires your tsconfig.json to have "compilerOptions.strict" set to true.`
377
+ );
378
+ const shouldAdd = await confirm({
379
+ message: `Would you like us to set ${re.bold(`strict`)} to ${re.bold(`true`)}?`
380
+ });
381
+ if (isCancel(shouldAdd)) {
382
+ cancel(`\u270B Operation cancelled.`);
383
+ process.exit(0);
384
+ }
385
+ if (shouldAdd) {
386
+ try {
387
+ await fs.writeFile(path.join(cwd, "tsconfig.json"), "utf-8");
388
+ relinka("success", `\u{1F680} tsconfig.json successfully updated!`);
389
+ } catch (error) {
390
+ relinka("error", `Failed to add "compilerOptions.strict" to your tsconfig.json file.`);
391
+ console.error(error);
392
+ process.exit(1);
393
+ }
394
+ }
395
+ }
396
+ const s = spinner({ indicator: "dots", text: "Checking better-auth installation" });
397
+ s.start(`Checking better-auth installation`);
398
+ let latest_betterauth_version;
399
+ try {
400
+ latest_betterauth_version = await getLatestNpmVersion("better-auth");
401
+ } catch (error) {
402
+ relinka("error", `\u274C Couldn't get latest version of better-auth.`);
403
+ console.error(error);
404
+ process.exit(1);
405
+ }
406
+ if (!packageInfo.dependencies || !Object.keys(packageInfo.dependencies).includes("better-auth")) {
407
+ s.stop("Finished fetching latest version of better-auth.");
408
+ const s2 = spinner({ indicator: "dots", text: "Installing Better Auth" });
409
+ const shouldInstallBetterAuthDep = await confirm({
410
+ message: `Would you like to install Better Auth?`
411
+ });
412
+ if (isCancel(shouldInstallBetterAuthDep)) {
413
+ cancel(`\u270B Operation cancelled.`);
414
+ process.exit(0);
415
+ }
416
+ if (packageManagerPreference === void 0) {
417
+ packageManagerPreference = await getPackageManager();
418
+ }
419
+ if (shouldInstallBetterAuthDep) {
420
+ s2.start(`Installing Better Auth using ${re.bold(packageManagerPreference)}`);
421
+ try {
422
+ const start = Date.now();
423
+ await installDependencies({
424
+ dependencies: ["better-auth@latest"],
425
+ packageManager: packageManagerPreference,
426
+ cwd
427
+ });
428
+ s2.stop(
429
+ `Better Auth installed ${re.greenBright(
430
+ `successfully`
431
+ )}! ${re.gray(`(${formatMilliseconds(Date.now() - start)})`)}`
432
+ );
433
+ } catch (error) {
434
+ s2.stop(`Failed to install Better Auth:`);
435
+ console.error(error);
436
+ process.exit(1);
437
+ }
438
+ }
439
+ } else if (packageInfo.dependencies["better-auth"] !== "workspace:*" && semver.lt(
440
+ semver.coerce(packageInfo.dependencies["better-auth"])?.toString() ?? "",
441
+ semver.clean(latest_betterauth_version) ?? ""
442
+ )) {
443
+ s.stop("Finished fetching latest version of better-auth.");
444
+ const shouldInstallBetterAuthDep = await confirm({
445
+ message: `Your current Better Auth dependency is out-of-date. Would you like to update it? (${re.bold(
446
+ packageInfo.dependencies["better-auth"]
447
+ )} \u2192 ${re.bold(`v${latest_betterauth_version}`)})`
448
+ });
449
+ if (isCancel(shouldInstallBetterAuthDep)) {
450
+ cancel(`\u270B Operation cancelled.`);
451
+ process.exit(0);
452
+ }
453
+ if (shouldInstallBetterAuthDep) {
454
+ if (packageManagerPreference === void 0) {
455
+ packageManagerPreference = await getPackageManager();
456
+ }
457
+ const s2 = spinner({ indicator: "dots", text: "Updating Better Auth" });
458
+ s2.start(`Updating Better Auth using ${re.bold(packageManagerPreference)}`);
459
+ try {
460
+ const start = Date.now();
461
+ await installDependencies({
462
+ dependencies: ["better-auth@latest"],
463
+ packageManager: packageManagerPreference,
464
+ cwd
465
+ });
466
+ s2.stop(
467
+ `Better Auth updated ${re.greenBright(
468
+ `successfully`
469
+ )}! ${re.gray(`(${formatMilliseconds(Date.now() - start)})`)}`
470
+ );
471
+ } catch (error) {
472
+ s2.stop(`Failed to update Better Auth:`);
473
+ relinka("error", error.message);
474
+ process.exit(1);
475
+ }
476
+ }
477
+ } else {
478
+ s.stop(`Better Auth dependencies are ${re.greenBright(`up to date`)}!`);
479
+ }
480
+ const packageJson = getPackageInfo(cwd);
481
+ let appName;
482
+ if (!packageJson.name) {
483
+ const newAppName = await text({
484
+ message: "What is the name of your application?"
485
+ });
486
+ if (isCancel(newAppName)) {
487
+ cancel("\u270B Operation cancelled.");
488
+ process.exit(0);
489
+ }
490
+ appName = newAppName;
491
+ } else {
492
+ appName = packageJson.name;
493
+ }
494
+ let possiblePaths = ["auth.ts", "auth.tsx", "auth.js", "auth.jsx"];
495
+ possiblePaths = [
496
+ ...possiblePaths,
497
+ ...possiblePaths.map((it) => `lib/server/${it}`),
498
+ ...possiblePaths.map((it) => `server/${it}`),
499
+ ...possiblePaths.map((it) => `lib/${it}`),
500
+ ...possiblePaths.map((it) => `utils/${it}`)
501
+ ];
502
+ possiblePaths = [
503
+ ...possiblePaths,
504
+ ...possiblePaths.map((it) => `src/${it}`),
505
+ ...possiblePaths.map((it) => `app/${it}`)
506
+ ];
507
+ if (options.config) {
508
+ config_path = path.join(cwd, options.config);
509
+ } else {
510
+ for (const possiblePath of possiblePaths) {
511
+ const doesExist = existsSync(path.join(cwd, possiblePath));
512
+ if (doesExist) {
513
+ config_path = path.join(cwd, possiblePath);
514
+ break;
515
+ }
516
+ }
517
+ }
518
+ let current_user_config = "";
519
+ let database = null;
520
+ let add_plugins = [];
521
+ if (!config_path) {
522
+ const shouldCreateAuthConfig = await select({
523
+ message: `Would you like to create an auth config file?`,
524
+ options: [
525
+ { label: "Yes", value: "yes" },
526
+ { label: "No", value: "no" }
527
+ ]
528
+ });
529
+ if (isCancel(shouldCreateAuthConfig)) {
530
+ cancel(`\u270B Operation cancelled.`);
531
+ process.exit(0);
532
+ }
533
+ if (shouldCreateAuthConfig === "yes") {
534
+ const shouldSetupDb = await confirm({
535
+ message: `Would you like to set up your ${re.bold(`database`)}?`,
536
+ initialValue: true
537
+ });
538
+ if (isCancel(shouldSetupDb)) {
539
+ cancel(`\u270B Operating cancelled.`);
540
+ process.exit(0);
541
+ }
542
+ if (shouldSetupDb) {
543
+ const prompted_database = await select({
544
+ message: "Choose a Database Dialect",
545
+ options: supportedDatabases.map((it) => ({ value: it, label: it }))
546
+ });
547
+ if (isCancel(prompted_database)) {
548
+ cancel(`\u270B Operating cancelled.`);
549
+ process.exit(0);
550
+ }
551
+ database = prompted_database;
552
+ }
553
+ if (options["skip-plugins"] !== false) {
554
+ const shouldSetupPlugins = await confirm({
555
+ message: `Would you like to set up ${re.bold(`plugins`)}?`
556
+ });
557
+ if (isCancel(shouldSetupPlugins)) {
558
+ cancel(`\u270B Operating cancelled.`);
559
+ process.exit(0);
560
+ }
561
+ if (shouldSetupPlugins) {
562
+ const prompted_plugins = await multiselect({
563
+ message: "Select your new plugins",
564
+ options: supportedPlugins.filter((x) => x.id !== "next-cookies").map((x) => ({ value: x.id, label: x.id })),
565
+ required: false
566
+ });
567
+ if (isCancel(prompted_plugins)) {
568
+ cancel(`\u270B Operating cancelled.`);
569
+ process.exit(0);
570
+ }
571
+ add_plugins = prompted_plugins.map((x) => supportedPlugins.find((y) => y.id === x));
572
+ const possible_next_config_paths = [
573
+ "next.config.js",
574
+ "next.config.ts",
575
+ "next.config.mjs",
576
+ ".next/server/next.config.js",
577
+ ".next/server/next.config.ts",
578
+ ".next/server/next.config.mjs"
579
+ ];
580
+ for (const possible_next_config_path of possible_next_config_paths) {
581
+ if (existsSync(path.join(cwd, possible_next_config_path))) {
582
+ framework = "nextjs";
583
+ break;
584
+ }
585
+ }
586
+ if (framework === "nextjs") {
587
+ const result = await confirm({
588
+ message: `It looks like you're using NextJS. Do you want to add the next-cookies plugin? ${re.bold(
589
+ `(Recommended)`
590
+ )}`
591
+ });
592
+ if (isCancel(result)) {
593
+ cancel(`\u270B Operating cancelled.`);
594
+ process.exit(0);
595
+ }
596
+ if (result) {
597
+ add_plugins.push(supportedPlugins.find((x) => x.id === "next-cookies"));
598
+ }
599
+ }
600
+ }
601
+ }
602
+ const filePath = path.join(cwd, "auth.ts");
603
+ config_path = filePath;
604
+ relinka("info", `Creating auth config file: ${filePath}`);
605
+ try {
606
+ current_user_config = await getDefaultAuthConfig({
607
+ appName
608
+ });
609
+ const { dependencies, envs, generatedCode } = await generateAuthConfig({
610
+ current_user_config,
611
+ format,
612
+ // @ts-expect-error TODO: fix ts
613
+ s,
614
+ plugins: add_plugins,
615
+ database
616
+ });
617
+ current_user_config = generatedCode;
618
+ await fs.writeFile(filePath, current_user_config);
619
+ config_path = filePath;
620
+ relinka("success", `\u{1F680} Auth config file successfully created!`);
621
+ if (envs.length !== 0) {
622
+ relinka(
623
+ "info",
624
+ `There are ${envs.length} environment variables for your database of choice.`
625
+ );
626
+ const shouldUpdateEnvs = await confirm({
627
+ message: `Would you like us to update your ENV files?`
628
+ });
629
+ if (isCancel(shouldUpdateEnvs)) {
630
+ cancel("\u270B Operation cancelled.");
631
+ process.exit(0);
632
+ }
633
+ if (shouldUpdateEnvs) {
634
+ const filesToUpdate = await multiselect({
635
+ message: "Select the .env files you want to update",
636
+ options: envFiles.map((x) => ({
637
+ value: path.join(cwd, x),
638
+ label: x
639
+ })),
640
+ required: false
641
+ });
642
+ if (isCancel(filesToUpdate)) {
643
+ cancel("\u270B Operation cancelled.");
644
+ process.exit(0);
645
+ }
646
+ if (filesToUpdate.length === 0) {
647
+ relinka("info", "No .env files to update. Skipping...");
648
+ } else {
649
+ try {
650
+ await updateEnvs({
651
+ files: filesToUpdate,
652
+ envs,
653
+ isCommented: true
654
+ });
655
+ } catch (error) {
656
+ relinka("error", `Failed to update .env files:`);
657
+ relinka("error", JSON.stringify(error, null, 2));
658
+ process.exit(1);
659
+ }
660
+ relinka("success", `\u{1F680} ENV files successfully updated!`);
661
+ }
662
+ }
663
+ }
664
+ if (dependencies.length !== 0) {
665
+ relinka(
666
+ "info",
667
+ `There are ${dependencies.length} dependencies to install. (${dependencies.map((x) => re.green(x)).join(", ")})`
668
+ );
669
+ const shouldInstallDeps = await confirm({
670
+ message: `Would you like us to install dependencies?`
671
+ });
672
+ if (isCancel(shouldInstallDeps)) {
673
+ cancel("\u270B Operation cancelled.");
674
+ process.exit(0);
675
+ }
676
+ if (shouldInstallDeps) {
677
+ const s2 = spinner({ indicator: "dots", text: "Installing dependencies" });
678
+ if (packageManagerPreference === void 0) {
679
+ packageManagerPreference = await getPackageManager();
680
+ }
681
+ s2.start(`Installing dependencies using ${re.bold(packageManagerPreference)}...`);
682
+ try {
683
+ const start = Date.now();
684
+ await installDependencies({
685
+ dependencies,
686
+ packageManager: packageManagerPreference,
687
+ cwd
688
+ });
689
+ s2.stop(
690
+ `Dependencies installed ${re.greenBright(
691
+ `successfully`
692
+ )} ${re.gray(`(${formatMilliseconds(Date.now() - start)})`)}`
693
+ );
694
+ } catch (error) {
695
+ s2.stop(`Failed to install dependencies using ${packageManagerPreference}:`);
696
+ relinka("error", error.message);
697
+ process.exit(1);
698
+ }
699
+ }
700
+ }
701
+ } catch (error) {
702
+ relinka("error", `Failed to create auth config file: ${filePath}`);
703
+ console.error(error);
704
+ process.exit(1);
705
+ }
706
+ } else if (shouldCreateAuthConfig === "no") {
707
+ relinka("info", `Skipping auth config file creation.`);
708
+ }
709
+ } else {
710
+ relinka("success", `Found auth config file. ${re.gray(`(${config_path})`)}`);
711
+ }
712
+ let possibleClientPaths = [
713
+ "auth-client.ts",
714
+ "auth-client.tsx",
715
+ "auth-client.js",
716
+ "auth-client.jsx",
717
+ "client.ts",
718
+ "client.tsx",
719
+ "client.js",
720
+ "client.jsx"
721
+ ];
722
+ possibleClientPaths = [
723
+ ...possibleClientPaths,
724
+ ...possibleClientPaths.map((it) => `lib/server/${it}`),
725
+ ...possibleClientPaths.map((it) => `server/${it}`),
726
+ ...possibleClientPaths.map((it) => `lib/${it}`),
727
+ ...possibleClientPaths.map((it) => `utils/${it}`)
728
+ ];
729
+ possibleClientPaths = [
730
+ ...possibleClientPaths,
731
+ ...possibleClientPaths.map((it) => `src/${it}`),
732
+ ...possibleClientPaths.map((it) => `app/${it}`)
733
+ ];
734
+ let authClientConfigPath = null;
735
+ for (const possiblePath of possibleClientPaths) {
736
+ const doesExist = existsSync(path.join(cwd, possiblePath));
737
+ if (doesExist) {
738
+ authClientConfigPath = path.join(cwd, possiblePath);
739
+ break;
740
+ }
741
+ }
742
+ if (!authClientConfigPath) {
743
+ const choice = await select({
744
+ message: `Would you like to create an auth client config file?`,
745
+ options: [
746
+ { label: "Yes", value: "yes" },
747
+ { label: "No", value: "no" }
748
+ ]
749
+ });
750
+ if (isCancel(choice)) {
751
+ cancel(`\u270B Operation cancelled.`);
752
+ process.exit(0);
753
+ }
754
+ if (choice === "yes") {
755
+ authClientConfigPath = path.join(cwd, "auth-client.ts");
756
+ relinka("info", `Creating auth client config file: ${authClientConfigPath}`);
757
+ try {
758
+ const contents = await getDefaultAuthClientConfig({
759
+ auth_config_path: `./${path.join(config_path.replace(cwd, ""))}`.replace(".//", "./"),
760
+ clientPlugins: add_plugins.filter((x) => x.clientName).map((plugin) => {
761
+ let contents2 = "";
762
+ if (plugin.id === "one-tap") {
763
+ contents2 = `{ clientId: "MY_CLIENT_ID" }`;
764
+ }
765
+ return {
766
+ contents: contents2,
767
+ id: plugin.id,
768
+ name: plugin.clientName,
769
+ imports: [
770
+ {
771
+ path: "better-auth/client/plugins",
772
+ variables: [{ name: plugin.clientName }]
773
+ }
774
+ ]
775
+ };
776
+ }),
777
+ framework
778
+ });
779
+ await fs.writeFile(authClientConfigPath, contents);
780
+ relinka("success", `\u{1F680} Auth client config file successfully created!`);
781
+ } catch (error) {
782
+ relinka("error", `Failed to create auth client config file: ${authClientConfigPath}`);
783
+ relinka("error", JSON.stringify(error, null, 2));
784
+ process.exit(1);
785
+ }
786
+ } else if (choice === "no") {
787
+ relinka("info", `Skipping auth client config file creation.`);
788
+ }
789
+ } else {
790
+ relinka("success", `Found auth client config file. ${re.gray(`(${authClientConfigPath})`)}`);
791
+ }
792
+ if (targetEnvFile !== "none") {
793
+ try {
794
+ const fileContents = await fs.readFile(path.join(cwd, targetEnvFile), "utf8");
795
+ const parsed = parse(fileContents);
796
+ let isMissingSecret = false;
797
+ let isMissingUrl = false;
798
+ if (parsed.BETTER_AUTH_SECRET === void 0) isMissingSecret = true;
799
+ if (parsed.BETTER_AUTH_URL === void 0) isMissingUrl = true;
800
+ if (isMissingSecret || isMissingUrl) {
801
+ let txt = "";
802
+ if (isMissingSecret && !isMissingUrl) txt = re.bold(`BETTER_AUTH_SECRET`);
803
+ else if (!isMissingSecret && isMissingUrl) txt = re.bold(`BETTER_AUTH_URL`);
804
+ else txt = `${re.underline(`BETTER_AUTH_SECRET`)} and ${re.underline(`BETTER_AUTH_URL`)}`;
805
+ relinka("warn", `Missing ${txt} in ${targetEnvFile}`);
806
+ const shouldAdd = await select({
807
+ message: `Do you want to add ${txt} to ${targetEnvFile}?`,
808
+ options: [
809
+ { label: "Yes", value: "yes" },
810
+ { label: "No", value: "no" },
811
+ { label: "Choose other file(s)", value: "other" }
812
+ ]
813
+ });
814
+ if (isCancel(shouldAdd)) {
815
+ cancel(`\u270B Operation cancelled.`);
816
+ process.exit(0);
817
+ }
818
+ const envs = [];
819
+ if (isMissingSecret) {
820
+ envs.push("BETTER_AUTH_SECRET");
821
+ }
822
+ if (isMissingUrl) {
823
+ envs.push("BETTER_AUTH_URL");
824
+ }
825
+ if (shouldAdd === "yes") {
826
+ try {
827
+ await updateEnvs({
828
+ files: [path.join(cwd, targetEnvFile)],
829
+ envs,
830
+ isCommented: false
831
+ });
832
+ } catch (error) {
833
+ relinka("error", `Failed to add ENV variables to ${targetEnvFile}`);
834
+ relinka("error", JSON.stringify(error, null, 2));
835
+ process.exit(1);
836
+ }
837
+ relinka("success", `\u{1F680} ENV variables successfully added!`);
838
+ if (isMissingUrl) {
839
+ relinka(
840
+ "info",
841
+ `Be sure to update your BETTER_AUTH_URL according to your app's needs.`
842
+ );
843
+ }
844
+ } else if (shouldAdd === "no") {
845
+ relinka("info", `Skipping ENV step.`);
846
+ } else if (shouldAdd === "other") {
847
+ if (!envFiles.length) {
848
+ cancel("No env files found. Please create an env file first.");
849
+ process.exit(0);
850
+ }
851
+ const envFilesToUpdate = await multiselect({
852
+ message: "Select the .env files you want to update",
853
+ options: envFiles.map((x) => ({
854
+ value: path.join(cwd, x),
855
+ label: x
856
+ })),
857
+ required: false
858
+ });
859
+ if (isCancel(envFilesToUpdate)) {
860
+ cancel("\u270B Operation cancelled.");
861
+ process.exit(0);
862
+ }
863
+ if (envFilesToUpdate.length === 0) {
864
+ relinka("info", "No .env files to update. Skipping...");
865
+ } else {
866
+ try {
867
+ await updateEnvs({
868
+ files: envFilesToUpdate,
869
+ envs,
870
+ isCommented: false
871
+ });
872
+ } catch (error) {
873
+ relinka("error", `Failed to update .env files:`);
874
+ relinka("error", JSON.stringify(error, null, 2));
875
+ process.exit(1);
876
+ }
877
+ relinka("success", `\u{1F680} ENV files successfully updated!`);
878
+ }
879
+ }
880
+ }
881
+ } catch (_error) {
882
+ }
883
+ }
884
+ outro(outroText);
885
+ console.log();
886
+ process.exit(0);
887
+ }
888
+ });
889
+ async function getLatestNpmVersion(packageName) {
890
+ try {
891
+ const response = await fetch(`https://registry.npmjs.org/${packageName}`);
892
+ if (!response.ok) {
893
+ throw new Error(`Package not found: ${response.statusText}`);
894
+ }
895
+ const data = await response.json();
896
+ return data["dist-tags"].latest;
897
+ } catch (error) {
898
+ throw error?.message;
899
+ }
900
+ }
901
+ async function getPackageManager() {
902
+ const { hasBun, hasPnpm } = await checkPackageManagers();
903
+ if (!hasBun && !hasPnpm) return "npm";
904
+ const packageManagerOptions = [];
905
+ if (hasPnpm) {
906
+ packageManagerOptions.push({
907
+ value: "pnpm",
908
+ label: "pnpm",
909
+ hint: "recommended"
910
+ });
911
+ }
912
+ if (hasBun) {
913
+ packageManagerOptions.push({
914
+ value: "bun",
915
+ label: "bun"
916
+ });
917
+ }
918
+ packageManagerOptions.push({
919
+ value: "npm",
920
+ hint: "not recommended"
921
+ });
922
+ const packageManager = await selectSimple({
923
+ message: "Choose a package manager",
924
+ options: packageManagerOptions
925
+ });
926
+ if (isCancel(packageManager)) {
927
+ cancel(`Operation cancelled.`);
928
+ process.exit(0);
929
+ }
930
+ return packageManager;
931
+ }
932
+ async function getEnvFiles(cwd) {
933
+ const files = await fs.readdir(cwd);
934
+ return files.filter((x) => x.startsWith(".env"));
935
+ }
936
+ async function updateEnvs({
937
+ envs,
938
+ files,
939
+ isCommented
940
+ }) {
941
+ let previouslyGeneratedSecret = null;
942
+ for (const file of files) {
943
+ const content = await fs.readFile(file, "utf8");
944
+ const lines = content.split("\n");
945
+ const newLines = envs.map(
946
+ (x) => `${isCommented ? "# " : ""}${x}=${getEnvDescription(x) ?? `"some_value"`}`
947
+ );
948
+ newLines.push("");
949
+ newLines.push(...lines);
950
+ await fs.writeFile(file, newLines.join("\n"), "utf8");
951
+ }
952
+ function getEnvDescription(env) {
953
+ if (env === "DATABASE_HOST") {
954
+ return `"The host of your database"`;
955
+ }
956
+ if (env === "DATABASE_PORT") {
957
+ return `"The port of your database"`;
958
+ }
959
+ if (env === "DATABASE_USER") {
960
+ return `"The username of your database"`;
961
+ }
962
+ if (env === "DATABASE_PASSWORD") {
963
+ return `"The password of your database"`;
964
+ }
965
+ if (env === "DATABASE_NAME") {
966
+ return `"The name of your database"`;
967
+ }
968
+ if (env === "DATABASE_URL") {
969
+ return `"The URL of your database"`;
970
+ }
971
+ if (env === "BETTER_AUTH_SECRET") {
972
+ previouslyGeneratedSecret = previouslyGeneratedSecret ?? generateSecretHash();
973
+ return `"${previouslyGeneratedSecret}"`;
974
+ }
975
+ if (env === "BETTER_AUTH_URL") {
976
+ return `"http://localhost:3000" # Your APP URL`;
977
+ }
978
+ }
979
+ }