create-quasar 2.2.3 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (428) hide show
  1. package/{templates/ui-kit/quasar-v2/BASE/LICENSE → LICENSE} +1 -1
  2. package/bin/create-quasar.js +368 -0
  3. package/lib/cli-pkg.js +3 -0
  4. package/lib/create-project-folder.js +163 -0
  5. package/lib/ensure-outside-project.js +25 -0
  6. package/lib/running-pm.js +2 -0
  7. package/{utils → lib}/template.js +76 -43
  8. package/lib/utils.js +418 -0
  9. package/package.json +12 -17
  10. package/templates/ae/create-quasar-script.js +91 -0
  11. package/templates/ae/js/BASE/README.md +43 -0
  12. package/templates/ae/js/BASE/_.gitignore +24 -0
  13. package/templates/{app/quasar-v2/js-webpack-4 → ae/js}/BASE/_.vscode/extensions.json +3 -2
  14. package/templates/ae/js/BASE/_.vscode/settings.json +17 -0
  15. package/templates/ae/js/BASE/_package.json +30 -0
  16. package/templates/ae/js/BASE/_pnpm-workspace.yaml +23 -0
  17. package/templates/{app-extension/ae-js/BASE → ae/js/BASE/ae}/README.md +15 -14
  18. package/templates/ae/js/BASE/ae/_package.json +38 -0
  19. package/templates/ae/js/BASE/ae/src/index.js +15 -0
  20. package/templates/ae/js/BASE/ae/src/runtime/MyComponent.vue +16 -0
  21. package/templates/ae/js/BASE/ae/src/runtime/boot.register.js +6 -0
  22. package/templates/ae/js/BASE/playground/_package.json +29 -0
  23. package/templates/ae/js/BASE/playground/index.html +20 -0
  24. package/templates/ae/js/BASE/playground/quasar.config.js +25 -0
  25. package/templates/ae/js/BASE/playground/quasar.extensions.json +3 -0
  26. package/templates/ae/js/BASE/playground/src/components/DrawerLink.vue +14 -0
  27. package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-webpack → ae/js/BASE/playground}/src/css/quasar.variables.scss +1 -1
  28. package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-vite/src/pages/ErrorNotFound.vue → ae/js/BASE/playground/src/pages/[...path].vue} +2 -2
  29. package/templates/ae/js/BASE/playground/src/pages/index/(index).vue +11 -0
  30. package/templates/ae/js/BASE/playground/src/pages/index/test1.vue +9 -0
  31. package/templates/ae/js/BASE/playground/src/pages/index/test2.vue +7 -0
  32. package/templates/ae/js/BASE/playground/src/pages/index.vue +51 -0
  33. package/templates/ae/js/BASE/playground/src/router/index.js +42 -0
  34. package/templates/ae/js/install/ae/src/install.js +9 -0
  35. package/templates/ae/js/oxlint/_.oxfmtrc.json +25 -0
  36. package/templates/ae/js/oxlint/_.oxlintrc.json +34 -0
  37. package/templates/ae/js/prompts/ae/src/prompts.js +38 -0
  38. package/templates/ae/js/uninstall/ae/src/uninstall.js +9 -0
  39. package/templates/ae/ts/BASE/README.md +43 -0
  40. package/templates/ae/ts/BASE/_.gitignore +24 -0
  41. package/templates/{app/quasar-v2/js-vite-2 → ae/ts}/BASE/_.vscode/extensions.json +3 -2
  42. package/templates/ae/ts/BASE/_.vscode/settings.json +18 -0
  43. package/templates/ae/ts/BASE/_package.json +34 -0
  44. package/templates/ae/ts/BASE/_pnpm-workspace.yaml +23 -0
  45. package/templates/ae/ts/BASE/ae/README.md +37 -0
  46. package/templates/ae/ts/BASE/ae/_package.json +38 -0
  47. package/templates/ae/ts/BASE/ae/_tsconfig.json +23 -0
  48. package/templates/ae/ts/BASE/ae/src/index.ts +15 -0
  49. package/templates/ae/ts/BASE/ae/src/runtime/MyComponent.vue +16 -0
  50. package/templates/ae/ts/BASE/ae/src/runtime/_env.d.ts +15 -0
  51. package/templates/ae/ts/BASE/ae/src/runtime/_shims-vue.d.ts +5 -0
  52. package/templates/ae/ts/BASE/ae/src/runtime/boot.register.ts +6 -0
  53. package/templates/ae/ts/BASE/playground/_package.json +29 -0
  54. package/templates/ae/ts/BASE/playground/env.d.ts +15 -0
  55. package/templates/ae/ts/BASE/playground/index.html +20 -0
  56. package/templates/ae/ts/BASE/playground/quasar.config.ts +25 -0
  57. package/templates/ae/ts/BASE/playground/quasar.extensions.json +3 -0
  58. package/templates/ae/ts/BASE/playground/src/components/DrawerLink.vue +19 -0
  59. package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-vite → ae/ts/BASE/playground}/src/css/quasar.variables.scss +1 -1
  60. package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-webpack/src/pages/ErrorNotFound.vue → ae/ts/BASE/playground/src/pages/[...path].vue} +2 -2
  61. package/templates/ae/ts/BASE/playground/src/pages/index/(index).vue +11 -0
  62. package/templates/ae/ts/BASE/playground/src/pages/index/test1.vue +9 -0
  63. package/templates/ae/ts/BASE/playground/src/pages/index/test2.vue +7 -0
  64. package/templates/ae/ts/BASE/playground/src/pages/index.vue +51 -0
  65. package/templates/ae/ts/BASE/playground/src/router/_typed-router.d.ts +131 -0
  66. package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-webpack → ae/ts/BASE/playground}/src/router/index.ts +13 -8
  67. package/templates/ae/ts/install/ae/src/install.ts +9 -0
  68. package/templates/ae/ts/oxlint/_oxfmt.config.ts +28 -0
  69. package/templates/ae/ts/oxlint/_oxlint.config.ts +39 -0
  70. package/templates/ae/ts/prompts/ae/src/prompts.ts +38 -0
  71. package/templates/ae/ts/uninstall/ae/src/uninstall.ts +9 -0
  72. package/templates/app/create-quasar-script.js +46 -2
  73. package/templates/app/vite-2/create-quasar-script.js +59 -0
  74. package/templates/app/vite-2/js/BASE/README.md +37 -0
  75. package/templates/app/{quasar-v2/ts-webpack-4 → vite-2/js}/BASE/_.gitignore +3 -10
  76. package/templates/app/{quasar-v2/ts-vite-2 → vite-2/js}/BASE/_.vscode/extensions.json +4 -2
  77. package/templates/app/vite-2/js/BASE/_.vscode/settings.json +12 -0
  78. package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/BASE/_package.json +22 -15
  79. package/templates/app/vite-2/js/BASE/_pnpm-workspace.yaml +11 -0
  80. package/templates/app/{quasar-v2/ts-vite-2 → vite-2/js}/BASE/index.html +4 -4
  81. package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/BASE/quasar.config.js +20 -22
  82. package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/BASE/src/components/EssentialLink.vue +1 -1
  83. package/templates/app/{quasar-v2/js-webpack-4 → vite-2/js}/BASE/src/layouts/MainLayout.vue +7 -7
  84. package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/eslint/_eslint.config.js +1 -6
  85. package/templates/app/vite-2/ts/BASE/README.md +37 -0
  86. package/templates/app/{quasar-v2/js-vite-2 → vite-2/ts}/BASE/_.gitignore +3 -10
  87. package/templates/app/{quasar-v2/ts-webpack-4 → vite-2/ts}/BASE/_.vscode/extensions.json +4 -2
  88. package/templates/{app-extension/ae-ts → app/vite-2/ts}/BASE/_.vscode/settings.json +8 -7
  89. package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/BASE/_package.json +22 -15
  90. package/templates/app/vite-2/ts/BASE/_pnpm-workspace.yaml +11 -0
  91. package/templates/app/{quasar-v2/ts-webpack-4 → vite-2/ts}/BASE/index.html +4 -4
  92. package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/BASE/quasar.config.ts +20 -22
  93. package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/BASE/src/components/EssentialLink.vue +2 -2
  94. package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/BASE/src/layouts/MainLayout.vue +8 -8
  95. package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/eslint/_eslint.config.js +1 -6
  96. package/templates/app/vite-3/create-quasar-script.js +94 -0
  97. package/templates/app/vite-3/js/BASE/README.md +39 -0
  98. package/templates/app/vite-3/js/BASE/_.editorconfig +7 -0
  99. package/templates/app/{quasar-v2/js-webpack-4 → vite-3/js}/BASE/_.gitignore +3 -10
  100. package/templates/app/vite-3/js/BASE/_.vscode/extensions.json +19 -0
  101. package/templates/app/vite-3/js/BASE/_.vscode/settings.json +24 -0
  102. package/templates/app/vite-3/js/BASE/_jsconfig.json +3 -0
  103. package/templates/app/vite-3/js/BASE/_package.json +62 -0
  104. package/templates/app/vite-3/js/BASE/_pnpm-workspace.yaml +10 -0
  105. package/templates/app/{quasar-v2/js-webpack-4 → vite-3/js}/BASE/index.html +10 -4
  106. package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-vite/postcss.config.cjs → app/vite-3/js/BASE/postcss.config.js} +9 -6
  107. package/templates/app/{quasar-v2/js-webpack-4 → vite-3/js}/BASE/quasar.config.js +83 -73
  108. package/templates/app/{quasar-v2/js-webpack-4 → vite-3/js}/BASE/src/components/EssentialLink.vue +1 -1
  109. package/templates/app/{quasar-v2/js-webpack-4 → vite-3/js}/eslint/_eslint.config.js +6 -8
  110. package/templates/app/vite-3/js/filenameBasedRouting/src/pages/[...path].vue +21 -0
  111. package/templates/app/vite-3/js/filenameBasedRouting/src/pages/index/(index).vue +23 -0
  112. package/templates/app/vite-3/js/filenameBasedRouting/src/pages/index/second.vue +9 -0
  113. package/templates/app/vite-3/js/filenameBasedRouting/src/pages/index.vue +92 -0
  114. package/templates/app/vite-3/js/filenameBasedRouting/src/router/index.js +40 -0
  115. package/templates/app/{quasar-v2/js-webpack-4 → vite-3/js}/i18n/src/boot/i18n.js +2 -2
  116. package/templates/app/{quasar-v2/js-webpack-4 → vite-3/js}/i18n/src/i18n/index.js +1 -1
  117. package/templates/app/{quasar-v2/js-vite-2/BASE → vite-3/js/manualRouting}/src/layouts/MainLayout.vue +8 -8
  118. package/templates/app/vite-3/js/manualRouting/src/pages/IndexPage.vue +23 -0
  119. package/templates/app/vite-3/js/manualRouting/src/pages/SecondPage.vue +9 -0
  120. package/templates/app/{quasar-v2/ts-webpack-4/BASE/src/router/index.ts → vite-3/js/manualRouting/src/router/index.js} +10 -9
  121. package/templates/app/vite-3/js/manualRouting/src/router/routes.js +19 -0
  122. package/templates/app/vite-3/js/oxlint/_.oxfmtrc.json +24 -0
  123. package/templates/app/vite-3/js/oxlint/_.oxlintrc.json +33 -0
  124. package/templates/app/vite-3/js/pinia/src/stores/example-store.js +21 -0
  125. package/templates/app/{quasar-v2/js-webpack-4 → vite-3/js}/pinia/src/stores/index.js +1 -1
  126. package/templates/app/vite-3/js/sass/src/css/app.scss +1 -0
  127. package/templates/app/vite-3/ts/BASE/README.md +39 -0
  128. package/templates/app/vite-3/ts/BASE/_.editorconfig +7 -0
  129. package/templates/app/{quasar-v2/ts-vite-2 → vite-3/ts}/BASE/_.gitignore +3 -10
  130. package/templates/app/vite-3/ts/BASE/_.vscode/extensions.json +19 -0
  131. package/templates/app/vite-3/ts/BASE/_.vscode/settings.json +25 -0
  132. package/templates/app/vite-3/ts/BASE/_package.json +67 -0
  133. package/templates/app/vite-3/ts/BASE/_pnpm-workspace.yaml +10 -0
  134. package/templates/app/vite-3/ts/BASE/_tsconfig.json +3 -0
  135. package/templates/app/vite-3/ts/BASE/env.d.ts +15 -0
  136. package/templates/app/{quasar-v2/js-vite-2 → vite-3/ts}/BASE/index.html +10 -4
  137. package/templates/app/vite-3/ts/BASE/postcss.config.js +29 -0
  138. package/templates/app/{quasar-v2/ts-webpack-4 → vite-3/ts}/BASE/quasar.config.ts +87 -80
  139. package/templates/app/{quasar-v2/ts-webpack-4 → vite-3/ts}/BASE/src/components/EssentialLink.vue +2 -2
  140. package/templates/app/{quasar-v2/ts-webpack-4 → vite-3/ts}/eslint/_eslint.config.js +7 -10
  141. package/templates/app/vite-3/ts/filenameBasedRouting/src/pages/[...path].vue +21 -0
  142. package/templates/app/vite-3/ts/filenameBasedRouting/src/pages/index/(index).vue +23 -0
  143. package/templates/app/vite-3/ts/filenameBasedRouting/src/pages/index/second.vue +9 -0
  144. package/templates/app/vite-3/ts/filenameBasedRouting/src/pages/index.vue +94 -0
  145. package/templates/app/vite-3/ts/filenameBasedRouting/src/router/_typed-router.d.ts +116 -0
  146. package/templates/app/vite-3/ts/filenameBasedRouting/src/router/index.ts +40 -0
  147. package/templates/app/{quasar-v2/ts-webpack-4 → vite-3/ts}/i18n/src/boot/i18n.ts +3 -3
  148. package/templates/app/{quasar-v2/ts-webpack-4/BASE → vite-3/ts/manualRouting}/src/layouts/MainLayout.vue +9 -9
  149. package/templates/app/vite-3/ts/manualRouting/src/pages/IndexPage.vue +23 -0
  150. package/templates/app/vite-3/ts/manualRouting/src/pages/SecondPage.vue +9 -0
  151. package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-vite → app/vite-3/ts/manualRouting}/src/router/index.ts +4 -6
  152. package/templates/app/vite-3/ts/manualRouting/src/router/routes.ts +21 -0
  153. package/templates/app/vite-3/ts/oxlint/_oxfmt.config.ts +27 -0
  154. package/templates/app/vite-3/ts/oxlint/_oxlint.config.ts +38 -0
  155. package/templates/app/{quasar-v2/ts-webpack-4 → vite-3/ts}/pinia/src/stores/example-store.ts +7 -1
  156. package/templates/app/{quasar-v2/ts-webpack-4 → vite-3/ts}/pinia/src/stores/index.ts +1 -1
  157. package/templates/app/vite-3/ts/sass/src/css/app.scss +1 -0
  158. package/assets/logo.art +0 -10
  159. package/index.js +0 -192
  160. package/scripts/create-test-project.ts +0 -64
  161. package/scripts/tsconfig.json +0 -18
  162. package/templates/__eslint.config.base.js +0 -148
  163. package/templates/app/__eslint.config.js +0 -64
  164. package/templates/app/quasar-v2/create-quasar-script.js +0 -39
  165. package/templates/app/quasar-v2/js-vite-2/BASE/README.md +0 -40
  166. package/templates/app/quasar-v2/js-vite-2/BASE/_.vscode/settings.json +0 -10
  167. package/templates/app/quasar-v2/js-vite-2/BASE/_pnpm-workspace.yaml +0 -6
  168. package/templates/app/quasar-v2/js-vite-2/__.eslintrc.cjs +0 -24
  169. package/templates/app/quasar-v2/js-vite-2/create-quasar-script.js +0 -53
  170. package/templates/app/quasar-v2/js-webpack-4/BASE/README.md +0 -40
  171. package/templates/app/quasar-v2/js-webpack-4/BASE/_.vscode/settings.json +0 -10
  172. package/templates/app/quasar-v2/js-webpack-4/BASE/_package.json +0 -59
  173. package/templates/app/quasar-v2/js-webpack-4/BASE/_pnpm-workspace.yaml +0 -6
  174. package/templates/app/quasar-v2/js-webpack-4/BASE/babel.config.js +0 -12
  175. package/templates/app/quasar-v2/js-webpack-4/BASE/postcss.config.js +0 -9
  176. package/templates/app/quasar-v2/js-webpack-4/BASE/src/pages/IndexPage.vue +0 -9
  177. package/templates/app/quasar-v2/js-webpack-4/BASE/src/router/index.js +0 -30
  178. package/templates/app/quasar-v2/js-webpack-4/BASE/src/router/routes.js +0 -18
  179. package/templates/app/quasar-v2/js-webpack-4/__.eslintrc.cjs +0 -24
  180. package/templates/app/quasar-v2/js-webpack-4/create-quasar-script.js +0 -53
  181. package/templates/app/quasar-v2/js-webpack-4/pinia/src/stores/example-store.js +0 -15
  182. package/templates/app/quasar-v2/js-webpack-4/pinia/src/stores/store-flag.d.ts +0 -13
  183. package/templates/app/quasar-v2/ts-vite-2/BASE/README.md +0 -40
  184. package/templates/app/quasar-v2/ts-vite-2/BASE/_.vscode/settings.json +0 -11
  185. package/templates/app/quasar-v2/ts-vite-2/BASE/_pnpm-workspace.yaml +0 -6
  186. package/templates/app/quasar-v2/ts-vite-2/BASE/public/icons/favicon-128x128.png +0 -0
  187. package/templates/app/quasar-v2/ts-vite-2/BASE/public/icons/favicon-16x16.png +0 -0
  188. package/templates/app/quasar-v2/ts-vite-2/BASE/public/icons/favicon-32x32.png +0 -0
  189. package/templates/app/quasar-v2/ts-vite-2/BASE/public/icons/favicon-96x96.png +0 -0
  190. package/templates/app/quasar-v2/ts-vite-2/BASE/src/assets/quasar-logo-vertical.svg +0 -15
  191. package/templates/app/quasar-v2/ts-vite-2/BASE/src/env.d.ts +0 -7
  192. package/templates/app/quasar-v2/ts-vite-2/__.eslintrc.cjs +0 -20
  193. package/templates/app/quasar-v2/ts-vite-2/create-quasar-script.js +0 -53
  194. package/templates/app/quasar-v2/ts-webpack-4/BASE/README.md +0 -40
  195. package/templates/app/quasar-v2/ts-webpack-4/BASE/_.vscode/settings.json +0 -11
  196. package/templates/app/quasar-v2/ts-webpack-4/BASE/_package.json +0 -63
  197. package/templates/app/quasar-v2/ts-webpack-4/BASE/_pnpm-workspace.yaml +0 -6
  198. package/templates/app/quasar-v2/ts-webpack-4/BASE/babel.config.cjs +0 -12
  199. package/templates/app/quasar-v2/ts-webpack-4/BASE/postcss.config.cjs +0 -8
  200. package/templates/app/quasar-v2/ts-webpack-4/BASE/public/icons/favicon-128x128.png +0 -0
  201. package/templates/app/quasar-v2/ts-webpack-4/BASE/public/icons/favicon-16x16.png +0 -0
  202. package/templates/app/quasar-v2/ts-webpack-4/BASE/public/icons/favicon-32x32.png +0 -0
  203. package/templates/app/quasar-v2/ts-webpack-4/BASE/public/icons/favicon-96x96.png +0 -0
  204. package/templates/app/quasar-v2/ts-webpack-4/BASE/src/assets/quasar-logo-vertical.svg +0 -15
  205. package/templates/app/quasar-v2/ts-webpack-4/BASE/src/components/ExampleComponent.vue +0 -37
  206. package/templates/app/quasar-v2/ts-webpack-4/BASE/src/components/models.ts +0 -8
  207. package/templates/app/quasar-v2/ts-webpack-4/BASE/src/env.d.ts +0 -7
  208. package/templates/app/quasar-v2/ts-webpack-4/BASE/src/pages/IndexPage.vue +0 -43
  209. package/templates/app/quasar-v2/ts-webpack-4/BASE/src/router/routes.ts +0 -18
  210. package/templates/app/quasar-v2/ts-webpack-4/__.eslintrc.cjs +0 -20
  211. package/templates/app/quasar-v2/ts-webpack-4/create-quasar-script.js +0 -53
  212. package/templates/app-extension/__eslint.config.js +0 -63
  213. package/templates/app-extension/ae-js/BASE/_.gitignore +0 -14
  214. package/templates/app-extension/ae-js/BASE/_package.json +0 -17
  215. package/templates/app-extension/ae-js/BASE/src/index.js +0 -10
  216. package/templates/app-extension/ae-js/create-quasar-script.js +0 -68
  217. package/templates/app-extension/ae-js/install-script/src/install.js +0 -9
  218. package/templates/app-extension/ae-js/prompts-script/src/prompts.js +0 -44
  219. package/templates/app-extension/ae-js/uninstall-script/src/uninstall.js +0 -9
  220. package/templates/app-extension/ae-ts/BASE/README.md +0 -35
  221. package/templates/app-extension/ae-ts/BASE/_.gitignore +0 -8
  222. package/templates/app-extension/ae-ts/BASE/_.vscode/extensions.json +0 -9
  223. package/templates/app-extension/ae-ts/BASE/_eslint.config.js +0 -108
  224. package/templates/app-extension/ae-ts/BASE/_package.json +0 -39
  225. package/templates/app-extension/ae-ts/BASE/_tsconfig.json +0 -30
  226. package/templates/app-extension/ae-ts/BASE/app-extension/README.md +0 -52
  227. package/templates/app-extension/ae-ts/BASE/app-extension/_.npmignore +0 -5
  228. package/templates/app-extension/ae-ts/BASE/app-extension/_package.json +0 -51
  229. package/templates/app-extension/ae-ts/BASE/app-extension/_tsconfig.json +0 -10
  230. package/templates/app-extension/ae-ts/BASE/app-extension/src/index.ts +0 -36
  231. package/templates/app-extension/ae-ts/BASE/app-extension/src/quasar.d.ts +0 -24
  232. package/templates/app-extension/ae-ts/BASE/app-extension/src/runtime/README.md +0 -46
  233. package/templates/app-extension/ae-ts/BASE/app-extension/src/runtime/boot/register.ts +0 -6
  234. package/templates/app-extension/ae-ts/BASE/app-extension/src/runtime/components/MyButton.vue +0 -37
  235. package/templates/app-extension/ae-ts/BASE/app-extension/src/runtime/components/types.ts +0 -19
  236. package/templates/app-extension/ae-ts/BASE/app-extension/src/runtime/index.ts +0 -9
  237. package/templates/app-extension/ae-ts/BASE/app-extension/src/runtime/quasar.d.ts +0 -7
  238. package/templates/app-extension/ae-ts/BASE/app-extension/src/runtime/shims-vue.d.ts +0 -10
  239. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/README.md +0 -67
  240. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/_.gitignore +0 -37
  241. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/_package.json +0 -29
  242. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/_tsconfig.json +0 -9
  243. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/index.html +0 -44
  244. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/quasar.config.ts +0 -202
  245. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/quasar.extensions.json +0 -3
  246. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/src/components/EssentialLink.vue +0 -26
  247. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/src/css/app.scss +0 -1
  248. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/src/layouts/MainLayout.vue +0 -94
  249. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/src/pages/IndexPage.vue +0 -5
  250. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/src/quasar.d.ts +0 -10
  251. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/src/router/routes.ts +0 -18
  252. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/src/shims-vue.d.ts +0 -10
  253. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/README.md +0 -67
  254. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/_.gitignore +0 -32
  255. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/_package.json +0 -40
  256. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/_tsconfig.json +0 -9
  257. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/babel.config.cjs +0 -12
  258. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/index.html +0 -44
  259. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/postcss.config.cjs +0 -8
  260. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/quasar.config.ts +0 -205
  261. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/quasar.extensions.json +0 -3
  262. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/src/components/EssentialLink.vue +0 -26
  263. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/src/css/app.scss +0 -1
  264. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/src/env.d.ts +0 -7
  265. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/src/layouts/MainLayout.vue +0 -92
  266. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/src/pages/IndexPage.vue +0 -5
  267. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/src/quasar.d.ts +0 -10
  268. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/src/router/routes.ts +0 -18
  269. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/src/shims-vue.d.ts +0 -8
  270. package/templates/app-extension/ae-ts/create-quasar-script.js +0 -86
  271. package/templates/app-extension/ae-ts/install-script/app-extension/src/install.ts +0 -25
  272. package/templates/app-extension/ae-ts/install-script/app-extension/src/templates/README.md +0 -27
  273. package/templates/app-extension/ae-ts/pnpm/_pnpm-workspace.yaml +0 -3
  274. package/templates/app-extension/ae-ts/prompts-script/app-extension/src/prompts.ts +0 -46
  275. package/templates/app-extension/ae-ts/uninstall-script/app-extension/src/uninstall.ts +0 -11
  276. package/templates/app-extension/create-quasar-script.js +0 -17
  277. package/templates/ui-kit/__eslint.config.js +0 -70
  278. package/templates/ui-kit/create-quasar-script.js +0 -108
  279. package/templates/ui-kit/quasar-v2/BASE/README.md +0 -16
  280. package/templates/ui-kit/quasar-v2/BASE/_.gitignore +0 -16
  281. package/templates/ui-kit/quasar-v2/BASE/_jsconfig.json +0 -9
  282. package/templates/ui-kit/quasar-v2/BASE/ui/README.md +0 -156
  283. package/templates/ui-kit/quasar-v2/BASE/ui/_.npmignore +0 -21
  284. package/templates/ui-kit/quasar-v2/BASE/ui/_package.json +0 -54
  285. package/templates/ui-kit/quasar-v2/BASE/ui/build/config.js +0 -13
  286. package/templates/ui-kit/quasar-v2/BASE/ui/build/index.js +0 -19
  287. package/templates/ui-kit/quasar-v2/BASE/ui/build/script.clean.js +0 -6
  288. package/templates/ui-kit/quasar-v2/BASE/ui/build/script.css.js +0 -75
  289. package/templates/ui-kit/quasar-v2/BASE/ui/build/script.javascript.js +0 -212
  290. package/templates/ui-kit/quasar-v2/BASE/ui/build/script.open-umd.js +0 -6
  291. package/templates/ui-kit/quasar-v2/BASE/ui/build/utils.js +0 -55
  292. package/templates/ui-kit/quasar-v2/BASE/ui/dev/README.md +0 -3
  293. package/templates/ui-kit/quasar-v2/BASE/ui/dev/_.editorconfig +0 -9
  294. package/templates/ui-kit/quasar-v2/BASE/ui/dev/_.gitignore +0 -20
  295. package/templates/ui-kit/quasar-v2/BASE/ui/dev/_.postcssrc.js +0 -8
  296. package/templates/ui-kit/quasar-v2/BASE/ui/dev/_package.json +0 -30
  297. package/templates/ui-kit/quasar-v2/BASE/ui/dev/babel.config.js +0 -5
  298. package/templates/ui-kit/quasar-v2/BASE/ui/dev/quasar.config.js +0 -73
  299. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/App.vue +0 -9
  300. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/boot/register.js +0 -6
  301. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/components/_.gitkeep +0 -0
  302. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/css/app.sass +0 -2
  303. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/css/quasar.variables.sass +0 -22
  304. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/index.template.html +0 -21
  305. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/layouts/MyLayout.vue +0 -39
  306. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/pages/Error404.vue +0 -31
  307. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/pages/Index.vue +0 -40
  308. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/pages/Test1.vue +0 -18
  309. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/router/index.js +0 -48
  310. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/router/pages.js +0 -27
  311. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/router/routes.js +0 -25
  312. package/templates/ui-kit/quasar-v2/BASE/ui/src/index.common.js +0 -2
  313. package/templates/ui-kit/quasar-v2/BASE/ui/src/index.esm.js +0 -5
  314. package/templates/ui-kit/quasar-v2/BASE/ui/src/index.sass +0 -7
  315. package/templates/ui-kit/quasar-v2/BASE/ui/src/index.umd.js +0 -3
  316. package/templates/ui-kit/quasar-v2/BASE/ui/src/vue-plugin.js +0 -16
  317. package/templates/ui-kit/quasar-v2/BASE/ui/umd-test.html +0 -59
  318. package/templates/ui-kit/quasar-v2/ae/app-extension/README.md +0 -33
  319. package/templates/ui-kit/quasar-v2/ae/app-extension/_.npmignore +0 -17
  320. package/templates/ui-kit/quasar-v2/ae/app-extension/_package.json +0 -16
  321. package/templates/ui-kit/quasar-v2/ae/app-extension/src/boot/register.js +0 -6
  322. package/templates/ui-kit/quasar-v2/ae/app-extension/src/index.js +0 -48
  323. package/templates/ui-kit/quasar-v2/ae/app-extension/src/templates/_.gitkeep +0 -0
  324. package/templates/ui-kit/quasar-v2/ae-install/app-extension/src/install.js +0 -19
  325. package/templates/ui-kit/quasar-v2/ae-prompts/app-extension/src/prompts.js +0 -44
  326. package/templates/ui-kit/quasar-v2/ae-uninstall/app-extension/src/uninstall.js +0 -9
  327. package/templates/ui-kit/quasar-v2/create-quasar-script.js +0 -21
  328. package/templates/ui-kit/quasar-v2/ui-ae/ui/build/script.app-ext.js +0 -60
  329. package/templates/ui-kit/quasar-v2/ui-component/ui/src/components/Component.js +0 -13
  330. package/templates/ui-kit/quasar-v2/ui-component/ui/src/components/Component.sass +0 -2
  331. package/templates/ui-kit/quasar-v2/ui-directive/ui/src/directives/Directive.js +0 -7
  332. package/templates/ui-kit/quasar-v2/ui-directive/ui/src/directives/Directive.sass +0 -2
  333. package/utils/index.js +0 -401
  334. package/utils/logger.js +0 -159
  335. /package/templates/{app/quasar-v2/js-vite-2 → ae/js}/BASE/_.editorconfig +0 -0
  336. /package/templates/{app-extension/ae-js/BASE → ae/js/BASE/ae}/src/templates/_.gitkeep +0 -0
  337. /package/templates/{app/quasar-v2/js-vite-2/BASE → ae/js/BASE/playground}/_jsconfig.json +0 -0
  338. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-vite → ae/js/BASE/playground}/public/favicon.ico +0 -0
  339. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-vite → ae/js/BASE/playground}/src/App.vue +0 -0
  340. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-vite/src/boot → ae/js/BASE/playground/src/assets}/_.gitkeep +0 -0
  341. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-webpack → ae/js/BASE/playground}/src/boot/_.gitkeep +0 -0
  342. /package/templates/{app/quasar-v2/js-vite-2/sass → ae/js/BASE/playground}/src/css/app.scss +0 -0
  343. /package/templates/{app/quasar-v2/js-webpack-4 → ae/ts}/BASE/_.editorconfig +0 -0
  344. /package/templates/{app-extension/ae-ts/install-script/app-extension → ae/ts/BASE/ae}/src/templates/_.gitkeep +0 -0
  345. /package/templates/{app/quasar-v2/ts-vite-2/BASE → ae/ts/BASE/playground}/_tsconfig.json +0 -0
  346. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-webpack → ae/ts/BASE/playground}/public/favicon.ico +0 -0
  347. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-webpack → ae/ts/BASE/playground}/src/App.vue +0 -0
  348. /package/templates/{app-extension/ae-ts/install-script/app-extension/src/templates/base → ae/ts/BASE/playground/src/assets}/_.gitkeep +0 -0
  349. /package/templates/{app/quasar-v2/js-vite-2/BASE → ae/ts/BASE/playground}/src/boot/_.gitkeep +0 -0
  350. /package/templates/{app/quasar-v2/js-webpack-4/sass → ae/ts/BASE/playground}/src/css/app.scss +0 -0
  351. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/js}/BASE/_.editorconfig +0 -0
  352. /package/templates/app/{quasar-v2/js-webpack-4 → vite-2/js}/BASE/_jsconfig.json +0 -0
  353. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/BASE/postcss.config.js +0 -0
  354. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/BASE/public/favicon.ico +0 -0
  355. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-vite → app/vite-2/js/BASE}/public/icons/favicon-128x128.png +0 -0
  356. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-vite → app/vite-2/js/BASE}/public/icons/favicon-16x16.png +0 -0
  357. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-vite → app/vite-2/js/BASE}/public/icons/favicon-32x32.png +0 -0
  358. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-vite → app/vite-2/js/BASE}/public/icons/favicon-96x96.png +0 -0
  359. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/BASE/src/App.vue +0 -0
  360. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-vite → app/vite-2/js/BASE}/src/assets/quasar-logo-vertical.svg +0 -0
  361. /package/templates/app/{quasar-v2/js-webpack-4 → vite-2/js}/BASE/src/boot/_.gitkeep +0 -0
  362. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/BASE/src/pages/ErrorNotFound.vue +0 -0
  363. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/BASE/src/pages/IndexPage.vue +0 -0
  364. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/BASE/src/router/index.js +0 -0
  365. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/BASE/src/router/routes.js +0 -0
  366. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/css/src/css/app.css +0 -0
  367. /package/templates/app/{quasar-v2/js-vite-2/prettier → vite-2/js/eslint}/_.prettierrc.json +0 -0
  368. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/i18n/src/boot/i18n.js +0 -0
  369. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/i18n/src/i18n/en-US/index.js +0 -0
  370. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/i18n/src/i18n/index.js +0 -0
  371. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/pinia/src/stores/example-store.js +0 -0
  372. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/pinia/src/stores/index.js +0 -0
  373. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/js}/sass/src/css/app.scss +0 -0
  374. /package/templates/app/{quasar-v2/js-vite-2 → vite-2/js}/sass/src/css/quasar.variables.scss +0 -0
  375. /package/templates/app/{quasar-v2/ts-webpack-4 → vite-2/ts}/BASE/_.editorconfig +0 -0
  376. /package/templates/app/{quasar-v2/ts-webpack-4 → vite-2/ts}/BASE/_tsconfig.json +0 -0
  377. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/BASE/postcss.config.js +0 -0
  378. /package/templates/app/{quasar-v2/js-webpack-4 → vite-2/ts}/BASE/public/favicon.ico +0 -0
  379. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-webpack → app/vite-2/ts/BASE}/public/icons/favicon-128x128.png +0 -0
  380. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-webpack → app/vite-2/ts/BASE}/public/icons/favicon-16x16.png +0 -0
  381. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-webpack → app/vite-2/ts/BASE}/public/icons/favicon-32x32.png +0 -0
  382. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-webpack → app/vite-2/ts/BASE}/public/icons/favicon-96x96.png +0 -0
  383. /package/templates/app/{quasar-v2/js-webpack-4 → vite-2/ts}/BASE/src/App.vue +0 -0
  384. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-webpack → app/vite-2/ts/BASE}/src/assets/quasar-logo-vertical.svg +0 -0
  385. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/BASE/src/boot/_.gitkeep +0 -0
  386. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/BASE/src/components/ExampleComponent.vue +0 -0
  387. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/BASE/src/components/models.ts +0 -0
  388. /package/templates/{app-extension/ae-ts/BASE/playground/quasar-cli-vite → app/vite-2/ts/BASE}/src/env.d.ts +0 -0
  389. /package/templates/app/{quasar-v2/js-webpack-4 → vite-2/ts}/BASE/src/pages/ErrorNotFound.vue +0 -0
  390. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/BASE/src/pages/IndexPage.vue +0 -0
  391. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/BASE/src/router/index.ts +0 -0
  392. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/BASE/src/router/routes.ts +0 -0
  393. /package/templates/app/{quasar-v2/js-webpack-4 → vite-2/ts}/css/src/css/app.css +0 -0
  394. /package/templates/app/{quasar-v2/ts-vite-2/prettier → vite-2/ts/eslint}/_.prettierrc.json +0 -0
  395. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/i18n/src/boot/i18n.ts +0 -0
  396. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/i18n/src/i18n/en-US/index.ts +0 -0
  397. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/i18n/src/i18n/index.ts +0 -0
  398. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/pinia/src/stores/example-store.ts +0 -0
  399. /package/templates/app/{quasar-v2/ts-vite-2 → vite-2/ts}/pinia/src/stores/index.ts +0 -0
  400. /package/templates/app/{quasar-v2/ts-webpack-4 → vite-2/ts}/sass/src/css/app.scss +0 -0
  401. /package/templates/app/{quasar-v2/js-webpack-4 → vite-2/ts}/sass/src/css/quasar.variables.scss +0 -0
  402. /package/templates/app/{quasar-v2/ts-vite-2 → vite-3/js}/BASE/public/favicon.ico +0 -0
  403. /package/templates/app/{quasar-v2/js-vite-2 → vite-3/js}/BASE/public/icons/favicon-128x128.png +0 -0
  404. /package/templates/app/{quasar-v2/js-vite-2 → vite-3/js}/BASE/public/icons/favicon-16x16.png +0 -0
  405. /package/templates/app/{quasar-v2/js-vite-2 → vite-3/js}/BASE/public/icons/favicon-32x32.png +0 -0
  406. /package/templates/app/{quasar-v2/js-vite-2 → vite-3/js}/BASE/public/icons/favicon-96x96.png +0 -0
  407. /package/templates/app/{quasar-v2/ts-vite-2 → vite-3/js}/BASE/src/App.vue +0 -0
  408. /package/templates/app/{quasar-v2/js-vite-2 → vite-3/js}/BASE/src/assets/quasar-logo-vertical.svg +0 -0
  409. /package/templates/app/{quasar-v2/ts-webpack-4 → vite-3/js}/BASE/src/boot/_.gitkeep +0 -0
  410. /package/templates/app/{quasar-v2/ts-vite-2 → vite-3/js}/css/src/css/app.css +0 -0
  411. /package/templates/app/{quasar-v2/js-webpack-4/prettier → vite-3/js/eslint}/_.prettierrc.json +0 -0
  412. /package/templates/app/{quasar-v2/js-webpack-4 → vite-3/js}/i18n/src/i18n/en-US/index.js +0 -0
  413. /package/templates/app/{quasar-v2/ts-vite-2/BASE → vite-3/js/manualRouting}/src/pages/ErrorNotFound.vue +0 -0
  414. /package/templates/app/{quasar-v2/ts-vite-2 → vite-3/js}/sass/src/css/quasar.variables.scss +0 -0
  415. /package/templates/app/{quasar-v2/ts-webpack-4 → vite-3/ts}/BASE/public/favicon.ico +0 -0
  416. /package/templates/app/{quasar-v2/js-webpack-4 → vite-3/ts}/BASE/public/icons/favicon-128x128.png +0 -0
  417. /package/templates/app/{quasar-v2/js-webpack-4 → vite-3/ts}/BASE/public/icons/favicon-16x16.png +0 -0
  418. /package/templates/app/{quasar-v2/js-webpack-4 → vite-3/ts}/BASE/public/icons/favicon-32x32.png +0 -0
  419. /package/templates/app/{quasar-v2/js-webpack-4 → vite-3/ts}/BASE/public/icons/favicon-96x96.png +0 -0
  420. /package/templates/app/{quasar-v2/ts-webpack-4 → vite-3/ts}/BASE/src/App.vue +0 -0
  421. /package/templates/app/{quasar-v2/js-webpack-4 → vite-3/ts}/BASE/src/assets/quasar-logo-vertical.svg +0 -0
  422. /package/templates/{ui-kit/quasar-v2/BASE/ui/dev/src/assets → app/vite-3/ts/BASE/src/boot}/_.gitkeep +0 -0
  423. /package/templates/app/{quasar-v2/ts-webpack-4 → vite-3/ts}/css/src/css/app.css +0 -0
  424. /package/templates/app/{quasar-v2/ts-webpack-4/prettier → vite-3/ts/eslint}/_.prettierrc.json +0 -0
  425. /package/templates/app/{quasar-v2/ts-webpack-4 → vite-3/ts}/i18n/src/i18n/en-US/index.ts +0 -0
  426. /package/templates/app/{quasar-v2/ts-webpack-4 → vite-3/ts}/i18n/src/i18n/index.ts +0 -0
  427. /package/templates/app/{quasar-v2/ts-webpack-4/BASE → vite-3/ts/manualRouting}/src/pages/ErrorNotFound.vue +0 -0
  428. /package/templates/app/{quasar-v2/ts-webpack-4 → vite-3/ts}/sass/src/css/quasar.variables.scss +0 -0
package/utils/index.js DELETED
@@ -1,401 +0,0 @@
1
- import { readFileSync, writeFileSync, existsSync } from 'node:fs'
2
- import { fileURLToPath } from 'node:url'
3
- import { sep, dirname, normalize, join, resolve, extname } from 'node:path'
4
- import { execSync as exec } from 'node:child_process'
5
- import { sync as spawnSync } from 'cross-spawn'
6
- import {
7
- emptyDirSync,
8
- ensureDirSync,
9
- ensureFileSync,
10
- copySync
11
- } from 'fs-extra/esm'
12
- import promptUser from 'prompts'
13
- import { globSync } from 'tinyglobby'
14
- import { yellow, green } from 'kolorist'
15
-
16
- import { renderTemplate as renderTemplateFn } from './template.js'
17
- import logger from './logger.js'
18
-
19
- const TEMPLATING_FILE_EXTENSIONS = [
20
- '',
21
- '.json',
22
- '.js',
23
- '.cjs',
24
- '.ts',
25
- '.vue',
26
- '.md',
27
- '.html',
28
- '.sass'
29
- ]
30
-
31
- /**
32
- * @param {Record<string, any>} scope
33
- * @param {promptUser.PromptObject[]} questions
34
- * @param {promptUser.Options} opts
35
- */
36
- async function prompts(scope, questions, opts) {
37
- const options = opts || {
38
- onCancel: () => {
39
- logger.fatal('Scaffolding cancelled')
40
- }
41
- }
42
-
43
- const answers = await promptUser(questions, options)
44
- Object.assign(scope, answers)
45
- }
46
-
47
- function createTargetDir(scope) {
48
- console.log()
49
- logger.log('Generating files...')
50
- console.log()
51
-
52
- const fn = scope.overwrite ? emptyDirSync : ensureDirSync
53
- fn(scope.projectFolder)
54
- }
55
-
56
- function convertArrayToObject(arr) {
57
- const acc = {}
58
- arr.forEach(key => {
59
- acc[key] = true
60
- })
61
- return acc
62
- }
63
-
64
- const runningPackageManager = (() => {
65
- const userAgent = process.env.npm_config_user_agent
66
- if (!userAgent) {
67
- return
68
- }
69
-
70
- const [name, version] = userAgent.split(' ')[0].split('/')
71
- return { name, version }
72
- })()
73
-
74
- function getCallerPath() {
75
- const _prepareStackTrace = Error.prepareStackTrace
76
- Error.prepareStackTrace = (_, stack) => stack
77
- const stack = new Error().stack.slice(1)
78
- Error.prepareStackTrace = _prepareStackTrace
79
- const filename = stack[1].getFileName()
80
- return dirname(
81
- filename.startsWith('file://') ? fileURLToPath(filename) : filename
82
- )
83
- }
84
-
85
- function renderTemplate(relativePath, scope) {
86
- const templateDir = join(getCallerPath(), relativePath)
87
- const files = globSync(['**/*'], { cwd: templateDir })
88
-
89
- for (const rawPath of files) {
90
- const targetRelativePath = rawPath
91
- .split('/')
92
- .map(name => (name.startsWith('_') ? name.slice(1) : name))
93
- .join('/')
94
-
95
- const targetPath = resolve(scope.projectFolder, targetRelativePath)
96
- const sourcePath = resolve(templateDir, rawPath)
97
- const extension = extname(targetRelativePath)
98
-
99
- ensureFileSync(targetPath)
100
-
101
- console.log(` ${green('-')} ${targetRelativePath}`)
102
-
103
- if (TEMPLATING_FILE_EXTENSIONS.includes(extension)) {
104
- const rawContent = readFileSync(sourcePath, 'utf-8')
105
-
106
- let newContent = renderTemplateFn(rawContent, scope)
107
- if (extension === '.json') {
108
- try {
109
- // try to format the JSON
110
- newContent = JSON.stringify(JSON.parse(newContent), null, 2)
111
- } catch {
112
- // noop, the JSON might be containing comments, leave it unformatted
113
- }
114
- }
115
-
116
- writeFileSync(targetPath, newContent, 'utf-8')
117
- } else {
118
- copySync(sourcePath, targetPath)
119
- }
120
- }
121
- }
122
-
123
- function isValidPackageName(projectName) {
124
- return /^(?:@[a-z0-9-*~][a-z0-9-*._~]*\/)?[a-z0-9-~][a-z0-9-._~]*$/.test(
125
- projectName
126
- )
127
- }
128
-
129
- function inferPackageName(projectFolder) {
130
- return projectFolder
131
- .trim()
132
- .toLowerCase()
133
- .replace(/\s+/g, '-')
134
- .replace(/^[._]/, '')
135
- .replace(/[^a-z0-9-~]+/g, '-')
136
- }
137
-
138
- function escapeString(val) {
139
- return JSON.stringify(val).slice(1, -1)
140
- }
141
-
142
- function getGitUser() {
143
- let name
144
- let email
145
-
146
- try {
147
- name = exec('git config --get user.name')
148
- email = exec('git config --get user.email')
149
- } catch {}
150
-
151
- name = name && JSON.stringify(name.toString().trim()).slice(1, -1)
152
- email = email && ' <' + email.toString().trim() + '>'
153
-
154
- return (name || '') + (email || '')
155
- }
156
-
157
- /**
158
- * Prints the final message with instructions of necessary next steps.
159
- *
160
- * @param {Object} scope Data from questionnaire.
161
- */
162
- function printFinalMessage(scope) {
163
- const verPrefix = scope.quasarVersion ? scope.quasarVersion + '.' : ''
164
- const message = `
165
- To get started:
166
- ${yellow(`
167
- cd ${scope.projectFolderName}${
168
- scope.skipDepsInstall !== true && scope.packageManager === false
169
- ? `
170
- yarn #or: npm install
171
- yarn lint --fix # or: npm run lint -- --fix`
172
- : ''
173
- }${
174
- scope.skipDepsInstall !== true
175
- ? `
176
- quasar dev # or: yarn quasar dev # or: npx quasar dev`
177
- : ''
178
- }
179
- `)}
180
- Documentation can be found at: https://${verPrefix}quasar.dev
181
-
182
- Quasar is relying on donations to evolve. We'd be very grateful if you can
183
- read our manifest on "Why donations are important": https://${verPrefix}quasar.dev/why-donate
184
- Donation campaign: https://donate.quasar.dev
185
- Any amount is very welcome.
186
- If invoices are required, please first contact Razvan Stoenescu.
187
-
188
- Please give us a star on Github if you appreciate our work:
189
- https://github.com/quasarframework/quasar
190
-
191
- Enjoy! - Quasar Team
192
- `
193
-
194
- console.log(message)
195
- }
196
-
197
- function runCommand(cmd, args, options) {
198
- console.log()
199
-
200
- const runner = spawnSync(cmd, args, {
201
- cwd: process.cwd(),
202
- stdio: 'inherit',
203
- ...options
204
- })
205
-
206
- console.log()
207
-
208
- if (runner.status) {
209
- console.log(` ${cmd} FAILED...`)
210
- console.log()
211
- throw new Error(`${cmd} FAILED`)
212
- }
213
- }
214
-
215
- function installDeps(scope) {
216
- const args = ['install']
217
- // Related to scripts/create-test-project.ts
218
- if (process.env.CREATE_TEST_PROJECT_OVERRIDE === 'true') {
219
- // If we don't use this flag, then the test project will become part of the monorepo and fail to install properly
220
- args.push('--ignore-workspace')
221
- }
222
-
223
- return runCommand(scope.packageManager, args, { cwd: scope.projectFolder })
224
- }
225
-
226
- function lintFolder(scope) {
227
- return runCommand(
228
- scope.packageManager,
229
- scope.packageManager === 'npm'
230
- ? ['run', 'lint', '--', '--fix']
231
- : ['run', 'lint', '--fix'],
232
- { cwd: scope.projectFolder }
233
- )
234
- }
235
-
236
- function formatFolder(scope) {
237
- return runCommand(scope.packageManager, ['run', 'format'], {
238
- cwd: scope.projectFolder
239
- })
240
- }
241
-
242
- function hasGit() {
243
- try {
244
- exec('git --version')
245
- return true
246
- } catch {}
247
- }
248
-
249
- function folderHasGit(cwd) {
250
- try {
251
- exec('git status', { stdio: 'ignore', cwd })
252
- return true
253
- } catch {}
254
- }
255
-
256
- function initializeGit(projectFolder) {
257
- if (hasGit() !== true) {
258
- logger.log(
259
- 'Git is not installed on the system, so skipping Git repo initialization.'
260
- )
261
- return
262
- }
263
-
264
- if (folderHasGit(projectFolder) === true) {
265
- logger.log(
266
- 'A parent of the project folder is already a Git repository, so skipping Git initialization.'
267
- )
268
- return
269
- }
270
-
271
- try {
272
- logger.log('Initializing Git repository...')
273
- exec('git init', { cwd: projectFolder })
274
- exec('git add -A', { cwd: projectFolder })
275
-
276
- // Provide useful feedback to the user if they have GPG signing enabled to avoid feeling that the process is hanging
277
- try {
278
- const needsSigning = exec('git config --get commit.gpgsign', {
279
- cwd: projectFolder
280
- })
281
- .toString()
282
- .trim()
283
- if (needsSigning === 'true') {
284
- logger.log('Creating initial commit (waiting for GPG signing)...')
285
- }
286
- } catch {}
287
-
288
- exec('git commit -m "Initialize the project 🚀" --no-verify', {
289
- cwd: projectFolder
290
- })
291
- } catch {
292
- logger.warn('Could not initialize Git repository. Please do this manually.')
293
- return
294
- }
295
-
296
- logger.log('Initialized Git repository 🚀')
297
- }
298
-
299
- const quasarConfigFilenameList = [
300
- 'quasar.config.js',
301
- 'quasar.config.mjs',
302
- 'quasar.config.ts',
303
- 'quasar.config.cjs',
304
- 'quasar.conf.js' // legacy
305
- ]
306
-
307
- function ensureOutsideProject() {
308
- let dir = process.cwd()
309
-
310
- while (dir.length && dir[dir.length - 1] !== sep) {
311
- for (const name of quasarConfigFilenameList) {
312
- const filename = join(dir, name)
313
- if (existsSync(filename)) {
314
- logger.fatal(
315
- 'Error. This command must NOT be executed inside of a Quasar project folder.'
316
- )
317
- }
318
- }
319
-
320
- dir = normalize(join(dir, '..'))
321
- }
322
- }
323
-
324
- const SCRIPT_TYPES = [
325
- { title: 'Javascript', value: 'js' },
326
- { title: 'Typescript', value: 'ts' }
327
- ]
328
-
329
- const commonPrompts = {
330
- scriptType: {
331
- type: 'select',
332
- name: 'scriptType',
333
- message: 'Pick script type:',
334
- initial: 0,
335
- choices: SCRIPT_TYPES
336
- },
337
-
338
- productName: {
339
- type: 'text',
340
- name: 'productName',
341
- message:
342
- 'Project product name: (must start with letter if building mobile apps)',
343
- initial: 'Quasar App',
344
- validate: val => (val && val.length > 0) || 'Invalid product name'
345
- },
346
-
347
- description: {
348
- type: 'text',
349
- name: 'description',
350
- message: 'Project description:',
351
- initial: 'A Quasar Project',
352
- format: escapeString,
353
- validate: val => val.length > 0 || 'Invalid project description'
354
- },
355
-
356
- license: {
357
- type: 'text',
358
- name: 'license',
359
- message: 'License type',
360
- initial: 'MIT'
361
- }
362
- }
363
-
364
- export async function injectAuthor(scope) {
365
- const author = getGitUser()
366
-
367
- if (author) {
368
- scope.author = author
369
- return
370
- }
371
-
372
- await prompts(scope, [
373
- {
374
- type: 'text',
375
- name: 'author',
376
- message: 'Author:'
377
- }
378
- ])
379
- }
380
-
381
- export default {
382
- logger,
383
-
384
- prompts,
385
- createTargetDir,
386
- convertArrayToObject,
387
- runningPackageManager,
388
- renderTemplate,
389
- isValidPackageName,
390
- inferPackageName,
391
-
392
- printFinalMessage,
393
- installDeps,
394
- lintFolder,
395
- formatFolder,
396
- ensureOutsideProject,
397
- initializeGit,
398
-
399
- commonPrompts,
400
- injectAuthor
401
- }
package/utils/logger.js DELETED
@@ -1,159 +0,0 @@
1
- import {
2
- bgGreen,
3
- green,
4
- inverse,
5
- bgRed,
6
- red,
7
- bgYellow,
8
- yellow,
9
- black,
10
- white,
11
- underline
12
- } from 'kolorist'
13
-
14
- import readline from 'node:readline'
15
-
16
- /**
17
- * Pills
18
- */
19
-
20
- const successPill = msg => bgGreen(black(` ${msg} `))
21
- const infoPill = msg => inverse(` ${msg} `)
22
- const errorPill = msg => bgRed(white(` ${msg} `))
23
- const warningPill = msg => bgYellow(black(` ${msg} `))
24
-
25
- /**
26
- * Main approach
27
- */
28
-
29
- const dot = '•'
30
- const banner = 'Quasar ' + dot
31
- const greenBanner = green(banner)
32
- const redBanner = red(banner)
33
- const yellowBanner = yellow(banner)
34
- const tipBanner = `${green('App')} ${dot} ${successPill('TIP')} ${dot} 🚀 `
35
-
36
- const clearConsole = process.stdout.isTTY
37
- ? () => {
38
- // Fill screen with blank lines. Then move to 0 (beginning of visible part) and clear it
39
- const blank = '\n'.repeat(process.stdout.rows)
40
- console.log(blank)
41
- readline.cursorTo(process.stdout, 0, 0)
42
- readline.clearScreenDown(process.stdout)
43
- }
44
- : () => {}
45
-
46
- function tip(msg) {
47
- console.log(msg ? ` ${tipBanner} ${msg}` : '')
48
- }
49
-
50
- function log(msg) {
51
- console.log(msg ? ` ${greenBanner} ${msg}` : '')
52
- }
53
-
54
- function warn(msg, pill) {
55
- if (msg !== void 0) {
56
- const pillBanner =
57
- pill !== void 0 ? bgYellow(black('', pill, '')) + ' ' : ''
58
-
59
- console.warn(` ${yellowBanner} ⚠️ ${pillBanner}${msg}`)
60
- } else {
61
- console.warn()
62
- }
63
- }
64
-
65
- function fatal(msg, pill) {
66
- if (msg !== void 0) {
67
- const pillBanner = pill !== void 0 ? errorPill(pill) + ' ' : ''
68
-
69
- console.error(`\n ${redBanner} ⚠️ ${pillBanner}${msg}\n`)
70
- } else {
71
- console.error()
72
- }
73
-
74
- process.exit(1)
75
- }
76
-
77
- /**
78
- * Extended approach - Status & pills
79
- */
80
-
81
- function success(msg, title = 'SUCCESS') {
82
- console.log(` ${greenBanner} ${successPill(title)} ${green(dot + ' ' + msg)}`)
83
- }
84
- function getSuccess(msg, title) {
85
- return ` ${greenBanner} ${successPill(title)} ${green(dot + ' ' + msg)}`
86
- }
87
-
88
- function info(msg, title = 'INFO') {
89
- console.log(` ${greenBanner} ${infoPill(title)} ${green(dot)} ${msg}`)
90
- }
91
- function getInfo(msg, title) {
92
- return ` ${greenBanner} ${infoPill(title)} ${green(dot)} ${msg}`
93
- }
94
-
95
- function error(msg, title = 'ERROR') {
96
- console.log(` ${redBanner} ${errorPill(title)} ${red(dot + ' ' + msg)}`)
97
- }
98
- function getError(msg, title = 'ERROR') {
99
- return ` ${redBanner} ${errorPill(title)} ${red(dot + ' ' + msg)}`
100
- }
101
-
102
- function warning(msg, title = 'WARNING') {
103
- console.log(
104
- ` ${yellowBanner} ${warningPill(title)} ${yellow(dot + ' ' + msg)}`
105
- )
106
- }
107
- function getWarning(msg, title = 'WARNING') {
108
- return ` ${yellowBanner} ${warningPill(title)} ${yellow(dot + ' ' + msg)}`
109
- }
110
-
111
- /**
112
- * Progress related
113
- */
114
-
115
- function progress(msg, token) {
116
- const parseMsg =
117
- token !== void 0
118
- ? text => text.replace('___', underline(green(token)))
119
- : text => text
120
-
121
- info(parseMsg(msg), 'WAIT')
122
-
123
- const startTime = Date.now()
124
-
125
- return progressMessage => {
126
- const diffTime = Number(new Date()) - startTime
127
- success(`${parseMsg(progressMessage)} ${dot} ${diffTime}ms`, 'DONE')
128
- log()
129
- }
130
- }
131
-
132
- export default {
133
- successPill,
134
- infoPill,
135
- errorPill,
136
- warningPill,
137
-
138
- dot,
139
-
140
- clearConsole,
141
- tip,
142
- log,
143
- warn,
144
- fatal,
145
-
146
- success,
147
- getSuccess,
148
-
149
- info,
150
- getInfo,
151
-
152
- error,
153
- getError,
154
-
155
- warning,
156
- getWarning,
157
-
158
- progress
159
- }