create-quasar 2.1.0 → 2.2.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 (139) hide show
  1. package/index.js +72 -54
  2. package/package.json +14 -18
  3. package/scripts/create-test-project.ts +26 -25
  4. package/templates/{eslint.config.base.js → __eslint.config.base.js} +3 -2
  5. package/templates/app/{eslint.config.js → __eslint.config.js} +2 -3
  6. package/templates/app/create-quasar-script.js +8 -0
  7. package/templates/app/quasar-v2/create-quasar-script.js +39 -0
  8. package/templates/app/quasar-v2/js-vite-2/BASE/README.md +4 -4
  9. package/templates/app/quasar-v2/js-vite-2/BASE/_.vscode/extensions.json +2 -2
  10. package/templates/app/quasar-v2/js-vite-2/BASE/_.vscode/settings.json +2 -2
  11. package/templates/app/quasar-v2/js-vite-2/BASE/_package.json +13 -14
  12. package/templates/app/quasar-v2/js-vite-2/BASE/index.html +3 -3
  13. package/templates/app/quasar-v2/js-vite-2/BASE/quasar.config.js +9 -10
  14. package/templates/app/quasar-v2/js-vite-2/BASE/src/App.vue +0 -11
  15. package/templates/app/quasar-v2/js-vite-2/BASE/src/components/EssentialLink.vue +7 -35
  16. package/templates/app/quasar-v2/js-vite-2/BASE/src/layouts/MainLayout.vue +2 -141
  17. package/templates/app/quasar-v2/js-vite-2/BASE/src/pages/ErrorNotFound.vue +0 -11
  18. package/templates/app/quasar-v2/js-vite-2/BASE/src/pages/IndexPage.vue +0 -11
  19. package/templates/app/quasar-v2/{ts-webpack-4/index.js → js-vite-2/create-quasar-script.js} +24 -7
  20. package/templates/app/quasar-v2/js-vite-2/eslint/_eslint.config.js +3 -3
  21. package/templates/app/quasar-v2/js-webpack-4/BASE/README.md +4 -4
  22. package/templates/app/quasar-v2/js-webpack-4/BASE/_.vscode/extensions.json +2 -2
  23. package/templates/app/quasar-v2/js-webpack-4/BASE/_.vscode/settings.json +2 -2
  24. package/templates/app/quasar-v2/js-webpack-4/BASE/_package.json +10 -11
  25. package/templates/app/quasar-v2/js-webpack-4/BASE/index.html +3 -3
  26. package/templates/app/quasar-v2/js-webpack-4/BASE/quasar.config.js +5 -6
  27. package/templates/app/quasar-v2/js-webpack-4/BASE/src/App.vue +0 -11
  28. package/templates/app/quasar-v2/js-webpack-4/BASE/src/components/EssentialLink.vue +7 -35
  29. package/templates/app/quasar-v2/js-webpack-4/BASE/src/layouts/MainLayout.vue +2 -141
  30. package/templates/app/quasar-v2/js-webpack-4/BASE/src/pages/ErrorNotFound.vue +0 -11
  31. package/templates/app/quasar-v2/js-webpack-4/BASE/src/pages/IndexPage.vue +0 -11
  32. package/templates/app/quasar-v2/{js-vite-2/index.js → js-webpack-4/create-quasar-script.js} +24 -7
  33. package/templates/app/quasar-v2/js-webpack-4/eslint/_eslint.config.js +3 -3
  34. package/templates/app/quasar-v2/ts-vite-2/BASE/README.md +4 -4
  35. package/templates/app/quasar-v2/ts-vite-2/BASE/_.vscode/extensions.json +2 -2
  36. package/templates/app/quasar-v2/ts-vite-2/BASE/_.vscode/settings.json +2 -2
  37. package/templates/app/quasar-v2/ts-vite-2/BASE/_package.json +13 -14
  38. package/templates/app/quasar-v2/ts-vite-2/BASE/index.html +3 -3
  39. package/templates/app/quasar-v2/ts-vite-2/BASE/quasar.config.ts +9 -10
  40. package/templates/app/quasar-v2/ts-vite-2/BASE/src/App.vue +0 -11
  41. package/templates/app/quasar-v2/ts-vite-2/BASE/src/components/EssentialLink.vue +2 -37
  42. package/templates/app/quasar-v2/ts-vite-2/BASE/src/components/ExampleComponent.vue +2 -98
  43. package/templates/app/quasar-v2/ts-vite-2/BASE/src/layouts/MainLayout.vue +2 -141
  44. package/templates/app/quasar-v2/ts-vite-2/BASE/src/pages/ErrorNotFound.vue +0 -11
  45. package/templates/app/quasar-v2/ts-vite-2/BASE/src/pages/IndexPage.vue +2 -90
  46. package/templates/app/quasar-v2/{ts-webpack-4/.eslintrc.cjs → ts-vite-2/__.eslintrc.cjs} +0 -1
  47. package/templates/app/quasar-v2/ts-vite-2/{index.js → create-quasar-script.js} +24 -7
  48. package/templates/app/quasar-v2/ts-vite-2/eslint/_eslint.config.js +3 -3
  49. package/templates/app/quasar-v2/ts-vite-2/i18n/src/boot/i18n.ts +2 -2
  50. package/templates/app/quasar-v2/ts-webpack-4/BASE/README.md +4 -4
  51. package/templates/app/quasar-v2/ts-webpack-4/BASE/_.vscode/extensions.json +2 -2
  52. package/templates/app/quasar-v2/ts-webpack-4/BASE/_.vscode/settings.json +2 -2
  53. package/templates/app/quasar-v2/ts-webpack-4/BASE/_package.json +10 -11
  54. package/templates/app/quasar-v2/ts-webpack-4/BASE/index.html +3 -3
  55. package/templates/app/quasar-v2/ts-webpack-4/BASE/quasar.config.ts +5 -6
  56. package/templates/app/quasar-v2/ts-webpack-4/BASE/src/App.vue +0 -11
  57. package/templates/app/quasar-v2/ts-webpack-4/BASE/src/components/EssentialLink.vue +2 -37
  58. package/templates/app/quasar-v2/ts-webpack-4/BASE/src/components/ExampleComponent.vue +2 -98
  59. package/templates/app/quasar-v2/ts-webpack-4/BASE/src/layouts/MainLayout.vue +2 -141
  60. package/templates/app/quasar-v2/ts-webpack-4/BASE/src/pages/ErrorNotFound.vue +0 -11
  61. package/templates/app/quasar-v2/ts-webpack-4/BASE/src/pages/IndexPage.vue +2 -90
  62. package/templates/app/quasar-v2/{ts-vite-2/.eslintrc.cjs → ts-webpack-4/__.eslintrc.cjs} +0 -1
  63. package/templates/app/quasar-v2/{js-webpack-4/index.js → ts-webpack-4/create-quasar-script.js} +24 -7
  64. package/templates/app/quasar-v2/ts-webpack-4/eslint/_eslint.config.js +3 -3
  65. package/templates/app/quasar-v2/ts-webpack-4/i18n/src/boot/i18n.ts +2 -2
  66. package/templates/app-extension/{eslint.config.js → __eslint.config.js} +3 -5
  67. package/templates/app-extension/ae-js/BASE/README.md +5 -5
  68. package/templates/app-extension/ae-js/BASE/_package.json +6 -6
  69. package/templates/app-extension/ae-js/BASE/src/index.js +1 -1
  70. package/templates/app-extension/ae-js/{index.js → create-quasar-script.js} +4 -14
  71. package/templates/app-extension/ae-js/install-script/src/install.js +1 -1
  72. package/templates/app-extension/ae-js/prompts-script/src/prompts.js +1 -1
  73. package/templates/app-extension/ae-js/uninstall-script/src/uninstall.js +1 -1
  74. package/templates/app-extension/ae-ts/BASE/README.md +6 -6
  75. package/templates/app-extension/ae-ts/BASE/_eslint.config.js +3 -2
  76. package/templates/app-extension/ae-ts/BASE/_package.json +11 -11
  77. package/templates/app-extension/ae-ts/BASE/app-extension/README.md +7 -7
  78. package/templates/app-extension/ae-ts/BASE/app-extension/_package.json +9 -9
  79. package/templates/app-extension/ae-ts/BASE/app-extension/src/index.ts +2 -2
  80. package/templates/app-extension/ae-ts/BASE/app-extension/src/runtime/README.md +3 -3
  81. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/README.md +11 -11
  82. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/_package.json +4 -4
  83. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/index.html +3 -3
  84. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/quasar.config.ts +0 -2
  85. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/quasar.extensions.json +1 -1
  86. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-vite/src/quasar.d.ts +1 -1
  87. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/README.md +10 -10
  88. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/_package.json +4 -4
  89. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/index.html +3 -3
  90. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/quasar.config.ts +0 -2
  91. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/quasar.extensions.json +1 -1
  92. package/templates/app-extension/ae-ts/BASE/playground/quasar-cli-webpack/src/quasar.d.ts +1 -1
  93. package/templates/app-extension/ae-ts/{index.js → create-quasar-script.js} +11 -6
  94. package/templates/app-extension/create-quasar-script.js +17 -0
  95. package/templates/ui-kit/{eslint.config.js → __eslint.config.js} +2 -2
  96. package/templates/ui-kit/{index.js → create-quasar-script.js} +8 -5
  97. package/templates/ui-kit/quasar-v2/BASE/LICENSE +1 -1
  98. package/templates/ui-kit/quasar-v2/BASE/README.md +4 -4
  99. package/templates/ui-kit/quasar-v2/BASE/ui/README.md +29 -29
  100. package/templates/ui-kit/quasar-v2/BASE/ui/_package.json +4 -4
  101. package/templates/ui-kit/quasar-v2/BASE/ui/build/index.js +1 -1
  102. package/templates/ui-kit/quasar-v2/BASE/ui/build/script.javascript.js +2 -2
  103. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/index.template.html +10 -5
  104. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/layouts/MyLayout.vue +1 -1
  105. package/templates/ui-kit/quasar-v2/BASE/ui/dev/src/pages/Test1.vue +4 -4
  106. package/templates/ui-kit/quasar-v2/BASE/ui/src/index.sass +2 -2
  107. package/templates/ui-kit/quasar-v2/BASE/ui/src/vue-plugin.js +6 -6
  108. package/templates/ui-kit/quasar-v2/BASE/ui/umd-test.html +2 -2
  109. package/templates/ui-kit/quasar-v2/ae/app-extension/README.md +6 -6
  110. package/templates/ui-kit/quasar-v2/ae/app-extension/_package.json +5 -5
  111. package/templates/ui-kit/quasar-v2/ae/app-extension/src/boot/register.js +1 -1
  112. package/templates/ui-kit/quasar-v2/ae/app-extension/src/index.js +7 -7
  113. package/templates/ui-kit/quasar-v2/{index.js → create-quasar-script.js} +5 -2
  114. package/templates/ui-kit/quasar-v2/ui-component/ui/src/components/Component.js +3 -3
  115. package/templates/ui-kit/quasar-v2/ui-component/ui/src/components/Component.sass +1 -1
  116. package/templates/ui-kit/quasar-v2/ui-directive/ui/src/directives/Directive.js +1 -1
  117. package/templates/ui-kit/quasar-v2/ui-directive/ui/src/directives/Directive.sass +1 -1
  118. package/utils/index.js +106 -93
  119. package/utils/logger.js +52 -50
  120. package/utils/template.js +280 -0
  121. package/eslint.config.base.js +0 -19
  122. package/eslint.config.js +0 -47
  123. package/templates/app/index.js +0 -8
  124. package/templates/app/quasar-v2/index.js +0 -56
  125. package/templates/app/quasar-v2/js-vite-2/axios/src/boot/axios.js +0 -24
  126. package/templates/app/quasar-v2/js-vite-2/scss/src/css/app.scss +0 -1
  127. package/templates/app/quasar-v2/js-vite-2/scss/src/css/quasar.variables.scss +0 -25
  128. package/templates/app/quasar-v2/js-webpack-4/axios/src/boot/axios.js +0 -24
  129. package/templates/app/quasar-v2/js-webpack-4/scss/src/css/app.scss +0 -1
  130. package/templates/app/quasar-v2/js-webpack-4/scss/src/css/quasar.variables.scss +0 -25
  131. package/templates/app/quasar-v2/ts-vite-2/axios/src/boot/axios.ts +0 -31
  132. package/templates/app/quasar-v2/ts-vite-2/scss/src/css/app.scss +0 -1
  133. package/templates/app/quasar-v2/ts-vite-2/scss/src/css/quasar.variables.scss +0 -25
  134. package/templates/app/quasar-v2/ts-webpack-4/axios/src/boot/axios.ts +0 -31
  135. package/templates/app/quasar-v2/ts-webpack-4/scss/src/css/app.scss +0 -1
  136. package/templates/app/quasar-v2/ts-webpack-4/scss/src/css/quasar.variables.scss +0 -25
  137. package/templates/app-extension/index.js +0 -15
  138. /package/templates/app/quasar-v2/js-vite-2/{.eslintrc.cjs → __.eslintrc.cjs} +0 -0
  139. /package/templates/app/quasar-v2/js-webpack-4/{.eslintrc.cjs → __.eslintrc.cjs} +0 -0
@@ -1,19 +1,19 @@
1
1
  {
2
- "name": "quasar-app-extension-<%= name %>-monorepo",
2
+ "name": "quasar-app-extension-<%= scope.name %>-monorepo",
3
3
  "private": true,
4
- <% if (packageManagerField) { %>"packageManager": "<%= packageManagerField %>",<% } %>
5
- "author": "<%= author %>",
4
+ <% if (scope.packageManagerField) { %>"packageManager": "<%= scope.packageManagerField %>",<% } %>
5
+ "author": "<%= scope.author %>",
6
6
  "type": "module",
7
- <% if (packageManager?.name !== 'pnpm') { %>"workspaces": [
7
+ <% if (scope.packageManager?.name !== 'pnpm') { %>"workspaces": [
8
8
  "app-extension",
9
9
  "playground/*"
10
10
  ],<% } %>
11
11
  "scripts": {
12
- <% if (packageManager) { %>
13
- "build": <% if (['pnpm', 'bun'].includes(packageManager.name)) { %>"<%= packageManager.name %> --filter ./app-extension build"<% } else if (packageManager.name === 'yarn') { %>"yarn workspace <%= pkgName %> build"<% } else { %>"npm run --workspace <%= pkgName %> build"<% } %>,
14
- "dev:vite": <% if (['pnpm', 'bun'].includes(packageManager.name)) { %>"<%= packageManager.name %> --filter ./playground/quasar-cli-vite dev"<% } else if (packageManager.name === 'yarn') { %>"yarn workspace playground-quasar-cli-vite dev"<% } else { %>"npm run --workspace playground-quasar-cli-vite dev"<% } %>,
15
- "dev:webpack": <% if (['pnpm', 'bun'].includes(packageManager.name)) { %>"<%= packageManager.name %> --filter ./playground/quasar-cli-webpack dev"<% } else if (packageManager.name === 'yarn') { %>"yarn workspace playground-quasar-cli-webpack dev"<% } else { %>"npm run --workspace playground-quasar-cli-webpack dev"<% } %>,
16
- "format": <% if (packageManager.name === 'pnpm') { %>"pnpm format:root && pnpm --recursive format"<% } else if (packageManager.name === 'bun') { %>"bun format:root && bun --filter '*' format"<% } else if (packageManager.name === 'yarn') { %>"yarn format:root && yarn workspace <%= pkgName %> format"<% } else { %>"npm run format:root && npm run --workspaces format"<% } %>,
12
+ <% if (scope.packageManager) { %>
13
+ "build": <% if (['pnpm', 'bun'].includes(scope.packageManager.name)) { %>"<%= scope.packageManager.name %> --filter ./app-extension build"<% } else if (scope.packageManager.name === 'yarn') { %>"yarn workspace <%= scope.pkgName %> build"<% } else { %>"npm run --workspace <%= scope.pkgName %> build"<% } %>,
14
+ "dev:vite": <% if (['pnpm', 'bun'].includes(scope.packageManager.name)) { %>"<%= scope.packageManager.name %> --filter ./playground/quasar-cli-vite dev"<% } else if (scope.packageManager.name === 'yarn') { %>"yarn workspace playground-quasar-cli-vite dev"<% } else { %>"npm run --workspace playground-quasar-cli-vite dev"<% } %>,
15
+ "dev:webpack": <% if (['pnpm', 'bun'].includes(scope.packageManager.name)) { %>"<%= scope.packageManager.name %> --filter ./playground/quasar-cli-webpack dev"<% } else if (scope.packageManager.name === 'yarn') { %>"yarn workspace playground-quasar-cli-webpack dev"<% } else { %>"npm run --workspace playground-quasar-cli-webpack dev"<% } %>,
16
+ "format": <% if (scope.packageManager.name === 'pnpm') { %>"pnpm format:root && pnpm --recursive format"<% } else if (scope.packageManager.name === 'bun') { %>"bun format:root && bun --filter '*' format"<% } else if (scope.packageManager.name === 'yarn') { %>"yarn format:root && yarn workspace <%= scope.pkgName %> format"<% } else { %>"npm run format:root && npm run --workspaces format"<% } %>,
17
17
  <% } else { %>
18
18
  "build": "pnpm --filter ./app-extension build",
19
19
  "dev:vite": "pnpm --filter ./playground/quasar-cli-vite dev",
@@ -24,11 +24,11 @@
24
24
  "format:root": "prettier --write \"./*.{json,md,vue,js,ts,yml}\" \"./.vscode/*.json\" --ignore-path .gitignore"
25
25
  },
26
26
  "devDependencies": {
27
- "@eslint/js": "^9.8.0",
27
+ "@eslint/js": "^9.39.4",
28
28
  "@types/eslint": "^9.6.0",
29
29
  "@types/eslint__js": "^8.42.3",
30
30
  "@types/node": "^20.12.8",
31
- "eslint": "^10.0.3",
31
+ "eslint": "^9.39.4",
32
32
  "eslint-config-prettier": "^9.1.0",
33
33
  "eslint-plugin-vue": "^9.27.0",
34
34
  "globals": "^17.4.0",
@@ -1,14 +1,14 @@
1
- # Quasar App Extension <%= name %> (<%= pkgName %>)
1
+ # Quasar App Extension <%= scope.name %> (<%= scope.pkgName %>)
2
2
 
3
3
  > TODO: Add a short description of your App Extension. What does it do? How is it beneficial? Why would someone want to use it?
4
4
 
5
- [![npm](https://img.shields.io/npm/v/<%= pkgName %>.svg?label=<%= pkgName %>)](https://www.npmjs.com/package/<%= pkgName %>)
6
- [![npm](https://img.shields.io/npm/dt/<%= pkgName %>.svg)](https://www.npmjs.com/package/<%= pkgName %>)
5
+ [![npm](https://img.shields.io/npm/v/<%= scope.pkgName %>.svg?label=<%= scope.pkgName %>)](https://www.npmjs.com/package/<%= scope.pkgName %>)
6
+ [![npm](https://img.shields.io/npm/dt/<%= scope.pkgName %>.svg)](https://www.npmjs.com/package/<%= scope.pkgName %>)
7
7
 
8
8
  # Install
9
9
 
10
10
  ```bash
11
- quasar ext add <%= name %>
11
+ quasar ext add <%= scope.name %>
12
12
  ```
13
13
 
14
14
  Quasar CLI will retrieve it from NPM and install the extension.
@@ -18,7 +18,7 @@ Quasar CLI will retrieve it from NPM and install the extension.
18
18
  Add this to `src/quasar.d.ts` to load the global component typings:
19
19
  ```ts
20
20
  // Load global component typings
21
- /// <reference types="<%= pkgName %>" />
21
+ /// <reference types="<%= scope.pkgName %>" />
22
22
  ```
23
23
 
24
24
  ## Prompts
@@ -28,7 +28,7 @@ Add this to `src/quasar.d.ts` to load the global component typings:
28
28
  # Uninstall
29
29
 
30
30
  ```bash
31
- quasar ext remove <%= name %>
31
+ quasar ext remove <%= scope.name %>
32
32
  ```
33
33
 
34
34
  # Info
@@ -49,4 +49,4 @@ If you appreciate the work that went into this App Extension, please consider [d
49
49
 
50
50
  # License
51
51
 
52
- <%= license %> (c) <%= author %>
52
+ <%= scope.license %> (c) <%= scope.author %>
@@ -1,9 +1,9 @@
1
1
  {
2
- "name": "<%= pkgName %>",
2
+ "name": "<%= scope.pkgName %>",
3
3
  "version": "0.0.1",
4
- "description": "<%= description %>",
5
- "author": "<%= author %>",
6
- "license": "<%= license %>",
4
+ "description": "<%= scope.description %>",
5
+ "author": "<%= scope.author %>",
6
+ "license": "<%= scope.license %>",
7
7
  "type": "module",
8
8
  "main": "./dist/runtime/index.js",
9
9
  "module": "./dist/runtime/index.js",
@@ -14,17 +14,17 @@
14
14
  "import": "./dist/runtime/index.js"
15
15
  },
16
16
  "./package.json": "./package.json",
17
- <% if (preset.prompts) { %>"./dist/prompts": "./dist/prompts.js",<% } %>
18
- <% if (preset.install) { %>"./dist/install": "./dist/install.js",<% } %>
19
- <% if (preset.uninstall) { %>"./dist/uninstall": "./dist/uninstall.js",<% } %>
17
+ <% if (scope.preset.prompts) { %>"./dist/prompts": "./dist/prompts.js",<% } %>
18
+ <% if (scope.preset.install) { %>"./dist/install": "./dist/install.js",<% } %>
19
+ <% if (scope.preset.uninstall) { %>"./dist/uninstall": "./dist/uninstall.js",<% } %>
20
20
  "./dist/index": "./dist/index.js",
21
21
  "./*": "./dist/runtime/*"
22
22
  },
23
23
  "scripts": {
24
24
  "format": "prettier --write \"**/*.{js,ts,vue,scss,html,md,json}\" --ignore-path .gitignore",
25
- <% if (preset.install) { %>"build:code": "mkdist ./ --ext=js --declaration --pattern='**' --pattern='!shims-vue.d.ts' --pattern='!templates/**'",
25
+ <% if (scope.preset.install) { %>"build:code": "mkdist ./ --ext=js --declaration --pattern='**' --pattern='!shims-vue.d.ts' --pattern='!templates/**'",
26
26
  "build:templates": "mkdist ./ --src ./src/templates --dist ./dist/templates --loaders='raw'",
27
- "build": "<%= packageManager?.name ?? 'pnpm' %> run build:code && <%= packageManager?.name ?? 'pnpm' %> run build:templates"<% } else { %>"build": "mkdist ./ --ext=js --declaration --pattern='**' --pattern='!shims-vue.d.ts'"<% } %>
27
+ "build": "<%= scope.packageManager?.name ?? 'pnpm' %> run build:code && <%= scope.packageManager?.name ?? 'pnpm' %> run build:templates"<% } else { %>"build": "mkdist ./ --ext=js --declaration --pattern='**' --pattern='!shims-vue.d.ts'"<% } %>
28
28
  },
29
29
  "devDependencies": {
30
30
  "@quasar/app-vite": "^2.1.0",
@@ -23,13 +23,13 @@ export default function (api: IndexAPI) {
23
23
  }
24
24
 
25
25
  api.extendQuasarConf((conf, api) => {
26
- conf.boot!.push('~<%= pkgName %>/boot/register');
26
+ conf.boot!.push('~<%= scope.pkgName %>/boot/register');
27
27
 
28
28
  // make sure app extension files get transpiled
29
29
  if (api.hasWebpack) {
30
30
  const config = conf as unknown as WebpackQuasarConfProxy;
31
31
  config.build.webpackTranspileDependencies.push(
32
- /<%= pkgName.replace('/', '[\\\\/]') %>[\\/]dist/,
32
+ /<%= scope.pkgName.replace('/', '[\\\\/]') %>[\\/]dist/,
33
33
  );
34
34
  }
35
35
  });
@@ -12,10 +12,10 @@ This directory contains runtime files for your app extension. The code here will
12
12
  Use `index.ts` to export your runtime code as part of the library. The exported code can then be imported like so:
13
13
 
14
14
  ```js
15
- import { someFunction } from '<%= pkgName %>'
15
+ import { someFunction } from '<%= scope.pkgName %>'
16
16
  ```
17
17
 
18
- If you need more entrypoints(e.g. `<%= pkgName %>/another`) for a good reason, you can create the respective files and add an entry to `package.json > exports`.
18
+ If you need more entrypoints(e.g. `<%= scope.pkgName %>/another`) for a good reason, you can create the respective files and add an entry to `package.json > exports`.
19
19
 
20
20
  ### Boot files
21
21
 
@@ -39,7 +39,7 @@ Afterwards, you can use the Index API ([`src/index.ts`](../index.ts)) to registe
39
39
  export default function (api: IndexAPI) {
40
40
  // ...
41
41
  api.extendQuasarConf((conf, api) => {
42
- conf.boot!.push('~<%= pkgName %>/boot/some-boot-file');
42
+ conf.boot!.push('~<%= scope.pkgName %>/boot/some-boot-file');
43
43
  // ...
44
44
  });
45
45
  }
@@ -1,11 +1,11 @@
1
- # Quasar AE <%= name %> Playground (quasar-cli-vite)
1
+ # Quasar AE <%= scope.name %> Playground (quasar-cli-vite)
2
2
 
3
3
  Playground for Quasar AE <%= name %>
4
4
 
5
5
  ## Install the dependencies
6
6
 
7
- <% if (packageManager) { %>```bash
8
- <%= packageManager.name %> install
7
+ <% if (scope.packageManager) { %>```bash
8
+ <%= scope.packageManager.name %> install
9
9
  ```<% } else { %>```bash
10
10
  # One of the following, depending on your package manager
11
11
  npm install
@@ -16,8 +16,8 @@ bun install
16
16
 
17
17
  ### Start the app in development mode (hot-code reloading, error reporting, etc.)
18
18
 
19
- <% if (packageManager) { %>```bash
20
- <%= packageManager.name %> run dev
19
+ <% if (scope.packageManager) { %>```bash
20
+ <%= scope.packageManager.name %> run dev
21
21
  ```<% } else { %>```bash
22
22
  # One of the following, depending on your package manager
23
23
  npm run dev
@@ -28,8 +28,8 @@ bun dev
28
28
 
29
29
  ### Lint the files
30
30
 
31
- <% if (packageManager) { %>```bash
32
- <%= packageManager.name %> run lint
31
+ <% if (scope.packageManager) { %>```bash
32
+ <%= scope.packageManager.name %> run lint
33
33
  ```<% } else { %>```bash
34
34
  # One of the following, depending on your package manager
35
35
  npm run lint
@@ -40,8 +40,8 @@ bun lint
40
40
 
41
41
  ### Format the files
42
42
 
43
- <% if (packageManager) { %>```bash
44
- <%= packageManager.name %> run format
43
+ <% if (scope.packageManager) { %>```bash
44
+ <%= scope.packageManager.name %> run format
45
45
  ```<% } else { %>```bash
46
46
  # One of the following, depending on your package manager
47
47
  npm run format
@@ -52,8 +52,8 @@ bun format
52
52
 
53
53
  ### Build the app for production
54
54
 
55
- <% if (packageManager) { %>```bash
56
- <%= packageManager.name %> run build
55
+ <% if (scope.packageManager) { %>```bash
56
+ <%= scope.packageManager.name %> run build
57
57
  ```<% } else { %>```bash
58
58
  # One of the following, depending on your package manager
59
59
  npm run build
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "playground-quasar-cli-vite",
3
3
  "version": "0.0.1",
4
- "description": "Playground for Quasar AE <%= name %>",
5
- "productName": "Quasar AE <%= name %> Playground",
6
- "author": "<%= author %>",
4
+ "description": "Playground for Quasar AE <%= scope.name %>",
5
+ "productName": "Quasar AE <%= scope.name %> Playground",
6
+ "author": "<%= scope.author %>",
7
7
  "type": "module",
8
8
  "private": true,
9
9
  "scripts": {
@@ -17,7 +17,7 @@
17
17
  "quasar": "^2.16.7",
18
18
  "vue": "^3.4.36",
19
19
  "vue-router": "^5.0.3",
20
- "<%= pkgName %>": <% if (!packageManager || ['pnpm', 'bun'].includes(packageManager.name)) { %>"workspace:*"<% } else { %>"*"<% } %>
20
+ "<%= scope.pkgName %>": <% if (!scope.packageManager || ['pnpm', 'bun'].includes(scope.packageManager.name)) { %>"workspace:*"<% } else { %>"*"<% } %>
21
21
  },
22
22
  "devDependencies": {
23
23
  "@quasar/app-vite": "^2.1.0",
@@ -1,15 +1,15 @@
1
1
  <!doctype html>
2
2
  <html>
3
3
  <head>
4
- <title><%= '\<%= productName %\>' %></title>
4
+ <title><%= '<' + '%= productName %' + '>' %></title>
5
5
 
6
6
  <meta charset="utf-8" />
7
- <meta name="description" content="<%= '\<%= productDescription %\>' %>" />
7
+ <meta name="description" content="<%= '<' + '%= productDescription %' + '>' %>" />
8
8
  <meta name="format-detection" content="telephone=no" />
9
9
  <meta name="msapplication-tap-highlight" content="no" />
10
10
  <meta
11
11
  name="viewport"
12
- content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width<%= '\<% if (ctx.mode.cordova || ctx.mode.capacitor) { %\>, viewport-fit=cover\<% } %\>' %>"
12
+ content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width<%= '<' + '% if (ctx.mode.cordova || ctx.mode.capacitor) { %' + '>, viewport-fit=cover<' + '% } %' + '>' %>"
13
13
  />
14
14
 
15
15
  <link
@@ -1,5 +1,3 @@
1
- /* eslint-env node */
2
-
3
1
  // Configuration for your app
4
2
  // https://v2.quasar.dev/quasar-cli-vite/quasar-config-js
5
3
 
@@ -1,3 +1,3 @@
1
1
  {
2
- "<%= pkgName.replace('quasar-app-extension-', '') %>": {}
2
+ "<%= scope.pkgName.replace('quasar-app-extension-', '') %>": {}
3
3
  }
@@ -7,4 +7,4 @@
7
7
  /// <reference types="@quasar/app-vite" />
8
8
 
9
9
  // Load global component typings
10
- /// <reference types="<%= pkgName %>" />
10
+ /// <reference types="<%= scope.pkgName %>" />
@@ -4,8 +4,8 @@ Playground for Quasar AE <%= name %>
4
4
 
5
5
  ## Install the dependencies
6
6
 
7
- <% if (packageManager) { %>```bash
8
- <%= packageManager.name %> install
7
+ <% if (scope.packageManager) { %>```bash
8
+ <%= scope.packageManager.name %> install
9
9
  ```<% } else { %>```bash
10
10
  # One of the following, depending on your package manager
11
11
  npm install
@@ -16,8 +16,8 @@ bun install
16
16
 
17
17
  ### Start the app in development mode (hot-code reloading, error reporting, etc.)
18
18
 
19
- <% if (packageManager) { %>```bash
20
- <%= packageManager.name %> run dev
19
+ <% if (scope.packageManager) { %>```bash
20
+ <%= scope.packageManager.name %> run dev
21
21
  ```<% } else { %>```bash
22
22
  # One of the following, depending on your package manager
23
23
  npm run dev
@@ -28,8 +28,8 @@ bun dev
28
28
 
29
29
  ### Lint the files
30
30
 
31
- <% if (packageManager) { %>```bash
32
- <%= packageManager.name %> run lint
31
+ <% if (scope.packageManager) { %>```bash
32
+ <%= scope.packageManager.name %> run lint
33
33
  ```<% } else { %>```bash
34
34
  # One of the following, depending on your package manager
35
35
  npm run lint
@@ -40,8 +40,8 @@ bun lint
40
40
 
41
41
  ### Format the files
42
42
 
43
- <% if (packageManager) { %>```bash
44
- <%= packageManager.name %> run format
43
+ <% if (scope.packageManager) { %>```bash
44
+ <%= scope.packageManager.name %> run format
45
45
  ```<% } else { %>```bash
46
46
  # One of the following, depending on your package manager
47
47
  npm run format
@@ -52,8 +52,8 @@ bun format
52
52
 
53
53
  ### Build the app for production
54
54
 
55
- <% if (packageManager) { %>```bash
56
- <%= packageManager.name %> run build
55
+ <% if (scope.packageManager) { %>```bash
56
+ <%= scope.packageManager.name %> run build
57
57
  ```<% } else { %>```bash
58
58
  # One of the following, depending on your package manager
59
59
  npm run build
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "playground-quasar-cli-webpack",
3
3
  "version": "0.0.1",
4
- "description": "Playground for Quasar AE <%= name %>",
5
- "productName": "Quasar AE <%= name %> Playground",
6
- "author": "<%= author %>",
4
+ "description": "Playground for Quasar AE <%= scope.name %>",
5
+ "productName": "Quasar AE <%= scope.name %> Playground",
6
+ "author": "<%= scope.author %>",
7
7
  "private": true,
8
8
  "scripts": {
9
9
  "format": "prettier --write \"**/*.{js,ts,vue,scss,html,md,json}\" --ignore-path .gitignore",
@@ -17,7 +17,7 @@
17
17
  "quasar": "^2.16.7",
18
18
  "vue": "^3.4.36",
19
19
  "vue-router": "^5.0.3",
20
- "<%= pkgName %>": <% if (!packageManager || ['pnpm', 'bun'].includes(packageManager?.name)) { %>"workspace:*"<% } else { %>"*"<% } %>
20
+ "<%= scope.pkgName %>": <% if (!scope.packageManager || ['pnpm', 'bun'].includes(scope.packageManager?.name)) { %>"workspace:*"<% } else { %>"*"<% } %>
21
21
  },
22
22
  "devDependencies": {
23
23
  "@quasar/app-webpack": "^4.1.0",
@@ -1,15 +1,15 @@
1
1
  <!doctype html>
2
2
  <html>
3
3
  <head>
4
- <title><%= '\<%= productName %\>' %></title>
4
+ <title><%= '<' + '%= productName %' + '>' %></title>
5
5
 
6
6
  <meta charset="utf-8" />
7
- <meta name="description" content="<%= '\<%= productDescription %\>' %>" />
7
+ <meta name="description" content="<%= '<' + '%= productDescription %' + '>' %>" />
8
8
  <meta name="format-detection" content="telephone=no" />
9
9
  <meta name="msapplication-tap-highlight" content="no" />
10
10
  <meta
11
11
  name="viewport"
12
- content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width<%= '\<% if (ctx.mode.cordova || ctx.mode.capacitor) { %\>, viewport-fit=cover\<% } %\>' %>"
12
+ content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width<%= '<' + '% if (ctx.mode.cordova || ctx.mode.capacitor) { %' + '>, viewport-fit=cover<' + '% } %' + '>' %>"
13
13
  />
14
14
 
15
15
  <link
@@ -1,5 +1,3 @@
1
- /* eslint-env node */
2
-
3
1
  // Configuration for your app
4
2
  // https://v2.quasar.dev/quasar-cli-webpack/quasar-config-js
5
3
 
@@ -1,3 +1,3 @@
1
1
  {
2
- "<%= pkgName.replace('quasar-app-extension-', '') %>": {}
2
+ "<%= scope.pkgName.replace('quasar-app-extension-', '') %>": {}
3
3
  }
@@ -7,4 +7,4 @@
7
7
  /// <reference types="@quasar/app-webpack" />
8
8
 
9
9
  // Load global component typings
10
- /// <reference types="<%= pkgName %>" />
10
+ /// <reference types="<%= scope.pkgName %>" />
@@ -1,4 +1,4 @@
1
- export async function script ({ scope, utils }) {
1
+ export async function createQuasarScript({ scope, utils }) {
2
2
  await utils.prompts(scope, [
3
3
  {
4
4
  type: 'confirm',
@@ -16,12 +16,13 @@ export async function script ({ scope, utils }) {
16
16
  {
17
17
  type: 'text',
18
18
  name: 'name',
19
- message: 'Quasar App Extension ext-id (without "quasar-app-extension" prefix), eg. "my-ext"',
20
- validate: (val) =>
19
+ message:
20
+ 'Quasar App Extension ext-id (without "quasar-app-extension" prefix), eg. "my-ext"',
21
+ validate: val =>
21
22
  utils.isValidPackageName(val) || 'Invalid App Extension name'
22
23
  },
23
24
 
24
- utils.commonPrompts.description,
25
+ utils.commonPrompts.description
25
26
  ])
26
27
 
27
28
  await utils.injectAuthor(scope)
@@ -55,10 +56,14 @@ export async function script ({ scope, utils }) {
55
56
  }
56
57
  ])
57
58
 
58
- scope.pkgName = scope.needOrgName ? `@${scope.orgName}/quasar-app-extension-${scope.name}` : `quasar-app-extension-${scope.name}`
59
+ scope.pkgName = scope.needOrgName
60
+ ? `@${scope.orgName}/quasar-app-extension-${scope.name}`
61
+ : `quasar-app-extension-${scope.name}`
59
62
  const packageManager = utils.runningPackageManager
60
63
  scope.packageManager = packageManager
61
- scope.packageManagerField = packageManager ? `${packageManager.name}@${packageManager.version}` : undefined
64
+ scope.packageManagerField = packageManager
65
+ ? `${packageManager.name}@${packageManager.version}`
66
+ : void 0
62
67
 
63
68
  utils.createTargetDir(scope)
64
69
  utils.renderTemplate('BASE', scope)
@@ -0,0 +1,17 @@
1
+ export async function createQuasarScript({ scope, utils }) {
2
+ /**
3
+ * Temporarily disable scriptType prompt (TS not ready yet)
4
+ */
5
+
6
+ // await utils.prompts(scope, [
7
+ // utils.commonPrompts.scriptType
8
+ // ])
9
+
10
+ // const { createQuasarScript: create } = await import(`./ae-${ scope.scriptType }/create-quasar-script.js`)
11
+ // await create({ scope, utils })
12
+
13
+ const { createQuasarScript: create } =
14
+ await import('./ae-js/create-quasar-script.js')
15
+
16
+ await create({ scope, utils })
17
+ }
@@ -1,8 +1,8 @@
1
+ import { defineConfig } from 'eslint/config'
1
2
  import globals from 'globals'
2
- import tseslint from 'typescript-eslint'
3
3
  import baseConfig from '../eslint.config.base.js'
4
4
 
5
- export default tseslint.config(
5
+ export default defineConfig(
6
6
  ...baseConfig,
7
7
 
8
8
  {
@@ -1,10 +1,11 @@
1
- export async function script ({ scope, utils }) {
1
+ export async function createQuasarScript({ scope, utils }) {
2
2
  await utils.prompts(scope, [
3
3
  {
4
4
  type: 'text',
5
5
  name: 'name',
6
- message: 'Project name (npm name, kebab-case, without "quasar-ui" prefix)',
7
- validate: (val) =>
6
+ message:
7
+ 'Project name (npm name, kebab-case, without "quasar-ui" prefix)',
8
+ validate: val =>
8
9
  utils.isValidPackageName(val) || 'Invalid package.json name'
9
10
  }
10
11
  ])
@@ -97,8 +98,10 @@ export async function script ({ scope, utils }) {
97
98
  }
98
99
  ])
99
100
 
100
- const { script } = await import(`./quasar-v2/index.js`)
101
- await script({ scope, utils })
101
+ const { createQuasarScript: create } = await import(
102
+ `./quasar-v2/create-quasar-script.js`
103
+ )
104
+ create({ scope, utils })
102
105
 
103
106
  // we don't want to install
104
107
  scope.skipDepsInstall = true
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) <%= author %>
3
+ Copyright (c) <%= scope.author %>
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -1,11 +1,11 @@
1
- <img src="https://img.shields.io/npm/v/quasar-ui-<%= name %>.svg?label=quasar-ui-<%= name %>">
2
- <% if (features.ae) { %><img src="https://img.shields.io/npm/v/quasar-app-extension-<%= name %>.svg?label=quasar-app-extension-<%= name %>"><% } %>
1
+ <img src="https://img.shields.io/npm/v/quasar-ui-<%= scope.name %>.svg?label=quasar-ui-<%= scope.name %>">
2
+ <% if (scope.features.ae) { %><img src="https://img.shields.io/npm/v/quasar-app-extension-<%= scope.name %>.svg?label=quasar-app-extension-<%= scope.name %>"><% } %>
3
3
 
4
4
  Compatible with Quasar UI v2 and Vue 3.
5
5
 
6
6
  # Structure
7
7
  * [/ui](ui) - standalone npm package
8
- <% if (features.ae) { %>
8
+ <% if (scope.features.ae) { %>
9
9
  * [/app-extension](app-extension) - Quasar app extension
10
10
  <% } %>
11
11
 
@@ -13,4 +13,4 @@ Compatible with Quasar UI v2 and Vue 3.
13
13
  If you appreciate the work that went into this project, please consider [donating to Quasar](https://donate.quasar.dev).
14
14
 
15
15
  # License
16
- <%= license %> (c) <%= author %>
16
+ <%= scope.license %> (c) <%= scope.author %>