create-quasar 1.3.0 → 1.4.1
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.
- package/package.json +4 -4
- package/templates/app/quasar-v2/index.js +2 -2
- package/templates/app/quasar-v2/js-vite-beta/BASE/_package.json +3 -3
- package/templates/app/quasar-v2/js-vite-beta/BASE/quasar.config.js +36 -28
- package/templates/app/quasar-v2/js-webpack-beta/BASE/_package.json +3 -3
- package/templates/app/quasar-v2/{ts-webpack-beta/BASE/src/index.template.html → js-webpack-beta/BASE/index.html} +1 -2
- package/templates/app/quasar-v2/js-webpack-beta/BASE/quasar.config.js +76 -107
- package/templates/app/quasar-v2/js-webpack-beta/BASE/src/router/index.js +1 -1
- package/templates/app/quasar-v2/ts-vite-beta/BASE/_package.json +7 -7
- package/templates/app/quasar-v2/ts-vite-beta/BASE/quasar.config.ts +36 -28
- package/templates/app/quasar-v2/ts-webpack-beta/BASE/_package.json +9 -7
- package/templates/app/quasar-v2/{js-webpack-beta/BASE/src/index.template.html → ts-webpack-beta/BASE/index.html} +1 -2
- package/templates/app/quasar-v2/ts-webpack-beta/BASE/quasar.config.ts +70 -82
- package/templates/app/quasar-v2/ts-webpack-beta/BASE/src/router/index.ts +1 -3
- package/templates/app-extension/ae-v1/.eslintrc.js +3 -1
- package/templates/app-extension/ae-v1/BASE/_package.json +1 -1
- package/templates/app-extension/ae-v1/BASE/src/index.js +1 -1
- package/templates/app-extension/ae-v1/index.js +11 -0
- package/templates/app-extension/ae-v1/install-script/{install.js → src/install.js} +1 -1
- package/templates/app-extension/ae-v1/prompts-script/{prompts.js → src/prompts.js} +1 -1
- package/templates/app-extension/ae-v1/uninstall-script/{uninstall.js → src/uninstall.js} +1 -1
- package/templates/ui-kit/.eslintrc.js +1 -0
- package/templates/ui-kit/index.js +11 -0
- package/templates/ui-kit/quasar-v2/ae/app-extension/_package.json +1 -1
- package/templates/ui-kit/quasar-v2/ae/app-extension/src/index.js +12 -6
- package/templates/ui-kit/quasar-v2/ae-install/app-extension/src/install.js +12 -2
- package/templates/ui-kit/quasar-v2/ae-prompts/app-extension/src/prompts.js +1 -1
- package/templates/ui-kit/quasar-v2/ae-uninstall/app-extension/src/uninstall.js +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-quasar",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.1",
|
|
4
4
|
"description": "Scaffolds Quasar Apps, AppExtensions or UI kits",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Razvan Stoenescu",
|
|
@@ -37,10 +37,10 @@
|
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
39
|
"@types/lodash": "^4.6.7",
|
|
40
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
41
|
-
"@typescript-eslint/parser": "^
|
|
40
|
+
"@typescript-eslint/eslint-plugin": "^6.6.0",
|
|
41
|
+
"@typescript-eslint/parser": "^6.6.0",
|
|
42
42
|
"eslint": "^8.11.0",
|
|
43
43
|
"eslint-plugin-lodash-template": "^0.21.0",
|
|
44
|
-
"typescript": "^
|
|
44
|
+
"typescript": "^5.2.2"
|
|
45
45
|
}
|
|
46
46
|
}
|
|
@@ -8,9 +8,9 @@ module.exports = async function ({ scope, utils }) {
|
|
|
8
8
|
initial: 0,
|
|
9
9
|
choices: [
|
|
10
10
|
{ title: 'Quasar App CLI with Vite', value: 'vite', description: 'recommended' },
|
|
11
|
-
// { title: 'Quasar App CLI with Vite (BETA
|
|
11
|
+
// { title: 'Quasar App CLI with Vite 5 (BETA | next major version)', value: 'vite-beta' },
|
|
12
12
|
{ title: 'Quasar App CLI with Webpack', value: 'webpack' }
|
|
13
|
-
// { title: 'Quasar App CLI with Webpack (BETA
|
|
13
|
+
// { title: 'Quasar App CLI with Webpack (BETA | next major version)', value: 'webpack-beta' }
|
|
14
14
|
]
|
|
15
15
|
},
|
|
16
16
|
{
|
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
"eslint-config-airbnb-base": "^15.0.0",
|
|
37
37
|
"eslint-plugin-import": "^2.20.1",
|
|
38
38
|
<% } else if (lintConfig === 'prettier') { %>
|
|
39
|
-
"eslint-config-prettier": "^
|
|
40
|
-
"prettier": "^
|
|
39
|
+
"eslint-config-prettier": "^9.0.0",
|
|
40
|
+
"prettier": "^3.0.3",
|
|
41
41
|
<% } } %>
|
|
42
42
|
<% if (preset.i18n) { %>"@intlify/vite-plugin-vue-i18n": "^3.3.1",<% } %>
|
|
43
43
|
"@quasar/app-vite": "^2.0.0-alpha.0",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"postcss": "^8.4.14"
|
|
46
46
|
},
|
|
47
47
|
"engines": {
|
|
48
|
-
"node": "^
|
|
48
|
+
"node": "^24 || ^22 || ^20 || ^18",
|
|
49
49
|
"npm": ">= 6.13.4",
|
|
50
50
|
"yarn": ">= 1.21.1"
|
|
51
51
|
}
|
|
@@ -14,6 +14,7 @@ export default configure((/* ctx */) => {
|
|
|
14
14
|
// fix: true,
|
|
15
15
|
// include: [],
|
|
16
16
|
// exclude: [],
|
|
17
|
+
// cache: false,
|
|
17
18
|
// rawOptions: {},
|
|
18
19
|
warnings: true,
|
|
19
20
|
errors: true
|
|
@@ -126,46 +127,51 @@ export default configure((/* ctx */) => {
|
|
|
126
127
|
// rootComponent: 'src/App.vue',
|
|
127
128
|
// router: 'src/router/index',
|
|
128
129
|
// store: 'src/store/index',
|
|
129
|
-
//
|
|
130
|
-
//
|
|
130
|
+
// pwaRegisterServiceWorker: 'src-pwa/register-service-worker',
|
|
131
|
+
// pwaServiceWorker: 'src-pwa/custom-service-worker',
|
|
131
132
|
// pwaManifestFile: 'src-pwa/manifest.json',
|
|
132
133
|
// electronMain: 'src-electron/electron-main',
|
|
133
134
|
// electronPreload: 'src-electron/electron-preload'
|
|
135
|
+
// bexManifestFile: 'src-bex/manifest.json
|
|
134
136
|
// },
|
|
135
137
|
|
|
136
138
|
// https://v2.quasar.dev/quasar-cli/developing-ssr/configuring-ssr
|
|
137
139
|
ssr: {
|
|
138
|
-
|
|
139
|
-
|
|
140
|
+
prodPort: 3000, // The default port that the production server should use
|
|
141
|
+
// (gets superseded if process.env.PORT is specified at runtime)
|
|
140
142
|
|
|
141
|
-
|
|
142
|
-
|
|
143
|
+
middlewares: [
|
|
144
|
+
'render' // keep this as last one
|
|
145
|
+
],
|
|
143
146
|
|
|
144
|
-
|
|
147
|
+
// extendPackageJson (json) {},
|
|
148
|
+
// extendSSRWebserverConf (esbuildConf) {},
|
|
145
149
|
|
|
150
|
+
// manualStoreSerialization: true,
|
|
151
|
+
// manualStoreSsrContextInjection: true,
|
|
146
152
|
// manualStoreHydration: true,
|
|
147
153
|
// manualPostHydrationTrigger: true,
|
|
148
154
|
|
|
149
|
-
|
|
150
|
-
// (gets superseded if process.env.PORT is specified at runtime)
|
|
155
|
+
pwa: false
|
|
151
156
|
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
157
|
+
// pwaOfflineHtmlFilename: 'offline.html', // do NOT use index.html as name!
|
|
158
|
+
// will mess up SSR
|
|
159
|
+
|
|
160
|
+
// pwaExtendGenerateSWOptions (cfg) {},
|
|
161
|
+
// pwaExtendInjectManifestOptions (cfg) {}
|
|
155
162
|
},
|
|
156
163
|
|
|
157
164
|
// https://v2.quasar.dev/quasar-cli/developing-pwa/configuring-pwa
|
|
158
165
|
pwa: {
|
|
159
|
-
workboxMode: '
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
useCredentialsForManifestTag:
|
|
164
|
-
//
|
|
165
|
-
//
|
|
166
|
-
//
|
|
167
|
-
//
|
|
168
|
-
// extendPWACustomSWConf (esbuildConf) {}
|
|
166
|
+
workboxMode: 'GenerateSW' // 'GenerateSW' or 'InjectManifest'
|
|
167
|
+
// swFilename: 'sw.js',
|
|
168
|
+
// manifestFilename: 'manifest.json'
|
|
169
|
+
// extendManifestJson (json) {},
|
|
170
|
+
// useCredentialsForManifestTag: true,
|
|
171
|
+
// injectPwaMetaTags: false,
|
|
172
|
+
// extendPWACustomSWConf (esbuildConf) {},
|
|
173
|
+
// extendGenerateSWOptions (cfg) {},
|
|
174
|
+
// extendInjectManifestOptions (cfg) {}
|
|
169
175
|
},
|
|
170
176
|
|
|
171
177
|
// Full list of options: https://v2.quasar.dev/quasar-cli/developing-cordova-apps/configuring-cordova
|
|
@@ -180,8 +186,10 @@ export default configure((/* ctx */) => {
|
|
|
180
186
|
|
|
181
187
|
// Full list of options: https://v2.quasar.dev/quasar-cli/developing-electron-apps/configuring-electron
|
|
182
188
|
electron: {
|
|
183
|
-
// extendElectronMainConf (esbuildConf)
|
|
184
|
-
// extendElectronPreloadConf (esbuildConf)
|
|
189
|
+
// extendElectronMainConf (esbuildConf) {},
|
|
190
|
+
// extendElectronPreloadConf (esbuildConf) {},
|
|
191
|
+
|
|
192
|
+
// extendPackageJson (json) {},
|
|
185
193
|
|
|
186
194
|
// specify the debugging port to use for the Electron app when running in development mode
|
|
187
195
|
inspectPort: 5858,
|
|
@@ -210,12 +218,12 @@ export default configure((/* ctx */) => {
|
|
|
210
218
|
|
|
211
219
|
// Full list of options: https://v2.quasar.dev/quasar-cli-vite/developing-browser-extensions/configuring-bex
|
|
212
220
|
bex: {
|
|
221
|
+
// extendBexScriptsConf (esbuildConf) {},
|
|
222
|
+
// extendBexManifestJson (json) {},
|
|
223
|
+
|
|
213
224
|
contentScripts: [
|
|
214
225
|
'my-content-script'
|
|
215
|
-
]
|
|
216
|
-
|
|
217
|
-
// extendBexScriptsConf (esbuildConf) {}
|
|
218
|
-
// extendBexManifestJson (json) {}
|
|
226
|
+
]
|
|
219
227
|
}
|
|
220
228
|
}
|
|
221
229
|
});
|
|
@@ -39,8 +39,8 @@
|
|
|
39
39
|
"eslint-config-airbnb-base": "^15.0.0",
|
|
40
40
|
"eslint-plugin-import": "^2.20.1",
|
|
41
41
|
<% } else if (lintConfig === 'prettier') { %>
|
|
42
|
-
"eslint-config-prettier": "^
|
|
43
|
-
"prettier": "^
|
|
42
|
+
"eslint-config-prettier": "^9.0.0",
|
|
43
|
+
"prettier": "^3.0.3",
|
|
44
44
|
<% } } %>
|
|
45
45
|
"@quasar/app-webpack": "^4.0.0-alpha.0"
|
|
46
46
|
},
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"last 5 Opera versions"
|
|
57
57
|
],
|
|
58
58
|
"engines": {
|
|
59
|
-
"node": "
|
|
59
|
+
"node": "^24 || ^22 || ^20 || ^18 || ^16",
|
|
60
60
|
"npm": ">= 6.13.4",
|
|
61
61
|
"yarn": ">= 1.21.1"
|
|
62
62
|
}
|
|
@@ -3,19 +3,24 @@
|
|
|
3
3
|
// Configuration for your app
|
|
4
4
|
// https://v2.quasar.dev/quasar-cli-webpack/quasar-config-js
|
|
5
5
|
|
|
6
|
-
<% if (preset.lint) { %>
|
|
7
|
-
import ESLintPlugin from 'eslint-webpack-plugin'
|
|
8
|
-
<% if (lintConfig === 'airbnb') { %>
|
|
6
|
+
<% if (preset.lint && lintConfig === 'airbnb') { %>
|
|
9
7
|
/* eslint func-names: 0 */
|
|
10
8
|
/* eslint global-require: 0 */
|
|
11
9
|
<% } %>
|
|
12
|
-
<% } %>
|
|
13
10
|
import { configure } from 'quasar/wrappers';
|
|
14
11
|
|
|
15
12
|
export default configure((ctx) => {
|
|
16
13
|
return {
|
|
17
|
-
|
|
18
|
-
|
|
14
|
+
<% if (preset.lint) { %>eslint: {
|
|
15
|
+
// fix: true,
|
|
16
|
+
// include: [],
|
|
17
|
+
// exclude: [],
|
|
18
|
+
// cache: false,
|
|
19
|
+
// rawEsbuildEslintOptions: {},
|
|
20
|
+
// rawWebpackEslintPluginOptions: {},
|
|
21
|
+
warnings: true,
|
|
22
|
+
errors: true
|
|
23
|
+
},<% } %>
|
|
19
24
|
|
|
20
25
|
// https://v2.quasar.dev/quasar-cli-webpack/prefetch-feature
|
|
21
26
|
// preFetch: true,
|
|
@@ -49,15 +54,20 @@ export default configure((ctx) => {
|
|
|
49
54
|
|
|
50
55
|
// Full list of options: https://v2.quasar.dev/quasar-cli-webpack/quasar-config-js#Property%3A-build
|
|
51
56
|
build: {
|
|
57
|
+
// publicPath: '/',
|
|
52
58
|
vueRouterMode: 'hash', // available values: 'hash', 'history'
|
|
53
59
|
|
|
54
|
-
|
|
55
|
-
|
|
60
|
+
esbuildTarget: {
|
|
61
|
+
browser: [ 'es2019', 'edge88', 'firefox78', 'chrome87', 'safari13.1' ],
|
|
62
|
+
node: 'node16'
|
|
63
|
+
},
|
|
64
|
+
|
|
65
|
+
// webpackTranspile: false,
|
|
56
66
|
|
|
57
67
|
// Add dependencies for transpiling with Babel (Array of string/regex)
|
|
58
68
|
// (from node_modules, which are by default not transpiled).
|
|
59
|
-
// Applies only if "
|
|
60
|
-
//
|
|
69
|
+
// Applies only if "webpackTranspile" is set to true.
|
|
70
|
+
// webpackTranspileDependencies: [],
|
|
61
71
|
|
|
62
72
|
// rtl: true, // https://quasar.dev/options/rtl-support
|
|
63
73
|
// preloadChunks: true,
|
|
@@ -69,15 +79,8 @@ export default configure((ctx) => {
|
|
|
69
79
|
// extractCSS: false,
|
|
70
80
|
|
|
71
81
|
// https://v2.quasar.dev/quasar-cli-webpack/handling-webpack
|
|
72
|
-
// "chain" is a webpack-chain object https://github.com/
|
|
73
|
-
|
|
74
|
-
chainWebpack (chain) {
|
|
75
|
-
chain.plugin('eslint-webpack-plugin')
|
|
76
|
-
.use(ESLintPlugin, [{ extensions: [ 'js', 'vue' ] }])
|
|
77
|
-
}
|
|
78
|
-
<% } else { %>
|
|
79
|
-
chainWebpack (/* chain */) {}
|
|
80
|
-
<% } %>
|
|
82
|
+
// "chain" is a webpack-chain object https://github.com/sorrycc/webpack-chain
|
|
83
|
+
// chainWebpack (/* chain, { isClient, isServer } */) {}
|
|
81
84
|
},
|
|
82
85
|
|
|
83
86
|
// Full list of options: https://v2.quasar.dev/quasar-cli-webpack/quasar-config-js#Property%3A-devServer
|
|
@@ -85,7 +88,6 @@ export default configure((ctx) => {
|
|
|
85
88
|
server: {
|
|
86
89
|
type: 'http'
|
|
87
90
|
},
|
|
88
|
-
port: 8080,
|
|
89
91
|
open: true // opens browser window automatically
|
|
90
92
|
},
|
|
91
93
|
|
|
@@ -111,86 +113,57 @@ export default configure((ctx) => {
|
|
|
111
113
|
// https://quasar.dev/options/animations
|
|
112
114
|
animations: [],
|
|
113
115
|
|
|
116
|
+
// https://v2.quasar.dev/quasar-cli-webpack/quasar-config-js#property-sourcefiles
|
|
117
|
+
// sourceFiles: {
|
|
118
|
+
// rootComponent: 'src/App.vue',
|
|
119
|
+
// router: 'src/router/index',
|
|
120
|
+
// store: 'src/store/index',
|
|
121
|
+
// indexHtmlTemplate: 'index.html',
|
|
122
|
+
// pwaRegisterServiceWorker: 'src-pwa/register-service-worker',
|
|
123
|
+
// pwaServiceWorker: 'src-pwa/custom-service-worker',
|
|
124
|
+
// pwaManifestFile: 'src-pwa/manifest.json',
|
|
125
|
+
// electronMain: 'src-electron/electron-main',
|
|
126
|
+
// electronPreload: 'src-electron/electron-preload'
|
|
127
|
+
// bexManifestFile: 'src-bex/manifest.json
|
|
128
|
+
// },
|
|
129
|
+
|
|
114
130
|
// https://v2.quasar.dev/quasar-cli-webpack/developing-ssr/configuring-ssr
|
|
115
131
|
ssr: {
|
|
116
|
-
|
|
132
|
+
prodPort: 3000, // The default port that the production server should use
|
|
133
|
+
// (gets superseded if process.env.PORT is specified at runtime)
|
|
134
|
+
|
|
135
|
+
middlewares: [
|
|
136
|
+
'render' // keep this as last one
|
|
137
|
+
],
|
|
117
138
|
|
|
139
|
+
// extendPackageJson (json) {},
|
|
140
|
+
// extendSSRWebserverConf (esbuildConf) {},
|
|
141
|
+
|
|
142
|
+
// manualStoreSerialization: true,
|
|
143
|
+
// manualStoreSsrContextInjection: true,
|
|
118
144
|
// manualStoreHydration: true,
|
|
119
145
|
// manualPostHydrationTrigger: true,
|
|
120
146
|
|
|
121
|
-
|
|
122
|
-
// (gets superseded if process.env.PORT is specified at runtime)
|
|
147
|
+
pwa: false
|
|
123
148
|
|
|
124
|
-
|
|
125
|
-
|
|
149
|
+
// pwaOfflineHtmlFilename: 'offline.html', // do NOT use index.html as name!
|
|
150
|
+
// will mess up SSR
|
|
126
151
|
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
chain.plugin('eslint-webpack-plugin')
|
|
130
|
-
.use(ESLintPlugin, [{ extensions: [ 'js' ] }])
|
|
131
|
-
},
|
|
132
|
-
<% } else { %>
|
|
133
|
-
chainWebpackWebserver (/* chain */) {},
|
|
134
|
-
<% } %>
|
|
135
|
-
|
|
136
|
-
middlewares: [
|
|
137
|
-
ctx.prod ? 'compression' : '',
|
|
138
|
-
'render' // keep this as last one
|
|
139
|
-
]
|
|
152
|
+
// pwaExtendGenerateSWOptions (cfg) {},
|
|
153
|
+
// pwaExtendInjectManifestOptions (cfg) {}
|
|
140
154
|
},
|
|
141
155
|
|
|
142
156
|
// https://v2.quasar.dev/quasar-cli-webpack/developing-pwa/configuring-pwa
|
|
143
157
|
pwa: {
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
//
|
|
148
|
-
//
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
},
|
|
154
|
-
<% } else { %>
|
|
155
|
-
chainWebpackCustomSW (/* chain */) {},
|
|
156
|
-
<% } %>
|
|
157
|
-
|
|
158
|
-
manifest: {
|
|
159
|
-
name: `<%= productName %>`,
|
|
160
|
-
short_name: `<%= productName %>`,
|
|
161
|
-
description: `<%= description %>`,
|
|
162
|
-
display: 'standalone',
|
|
163
|
-
orientation: 'portrait',
|
|
164
|
-
background_color: '#ffffff',
|
|
165
|
-
theme_color: '#027be3',
|
|
166
|
-
icons: [
|
|
167
|
-
{
|
|
168
|
-
src: 'icons/icon-128x128.png',
|
|
169
|
-
sizes: '128x128',
|
|
170
|
-
type: 'image/png'
|
|
171
|
-
},
|
|
172
|
-
{
|
|
173
|
-
src: 'icons/icon-192x192.png',
|
|
174
|
-
sizes: '192x192',
|
|
175
|
-
type: 'image/png'
|
|
176
|
-
},
|
|
177
|
-
{
|
|
178
|
-
src: 'icons/icon-256x256.png',
|
|
179
|
-
sizes: '256x256',
|
|
180
|
-
type: 'image/png'
|
|
181
|
-
},
|
|
182
|
-
{
|
|
183
|
-
src: 'icons/icon-384x384.png',
|
|
184
|
-
sizes: '384x384',
|
|
185
|
-
type: 'image/png'
|
|
186
|
-
},
|
|
187
|
-
{
|
|
188
|
-
src: 'icons/icon-512x512.png',
|
|
189
|
-
sizes: '512x512',
|
|
190
|
-
type: 'image/png'
|
|
191
|
-
}
|
|
192
|
-
]
|
|
193
|
-
}
|
|
158
|
+
workboxMode: 'GenerateSW' // 'GenerateSW' or 'InjectManifest'
|
|
159
|
+
// swFilename: 'sw.js',
|
|
160
|
+
// manifestFilename: 'manifest.json'
|
|
161
|
+
// extendManifestJson (json) {},
|
|
162
|
+
// useCredentialsForManifestTag: true,
|
|
163
|
+
// injectPwaMetaTags: false,
|
|
164
|
+
// extendPWACustomSWConf (esbuildConf) {},
|
|
165
|
+
// extendGenerateSWOptions (cfg) {},
|
|
166
|
+
// extendInjectManifestOptions (cfg) {}
|
|
194
167
|
},
|
|
195
168
|
|
|
196
169
|
// Full list of options: https://v2.quasar.dev/quasar-cli-webpack/developing-cordova-apps/configuring-cordova
|
|
@@ -205,6 +178,11 @@ export default configure((ctx) => {
|
|
|
205
178
|
|
|
206
179
|
// Full list of options: https://v2.quasar.dev/quasar-cli-webpack/developing-electron-apps/configuring-electron
|
|
207
180
|
electron: {
|
|
181
|
+
// extendElectronMainConf (esbuildConf) {},
|
|
182
|
+
// extendElectronPreloadConf (esbuildConf) {},
|
|
183
|
+
|
|
184
|
+
// extendPackageJson (json) {},
|
|
185
|
+
|
|
208
186
|
// specify the debugging port to use for the Electron app when running in development mode
|
|
209
187
|
inspectPort: 5858,
|
|
210
188
|
|
|
@@ -227,26 +205,17 @@ export default configure((ctx) => {
|
|
|
227
205
|
// https://www.electron.build/configuration/configuration
|
|
228
206
|
|
|
229
207
|
appId: '<%= name %>'
|
|
230
|
-
}
|
|
208
|
+
}
|
|
209
|
+
},
|
|
231
210
|
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
<% } %>
|
|
241
|
-
|
|
242
|
-
<% if (preset.lint) { %>
|
|
243
|
-
chainWebpackPreload (chain) {
|
|
244
|
-
chain.plugin('eslint-webpack-plugin')
|
|
245
|
-
.use(ESLintPlugin, [{ extensions: [ 'js' ] }])
|
|
246
|
-
},
|
|
247
|
-
<% } else { %>
|
|
248
|
-
chainWebpackPreload (/* chain */) {},
|
|
249
|
-
<% } %>
|
|
211
|
+
// Full list of options: https://v2.quasar.dev/quasar-cli-webpack/developing-browser-extensions/configuring-bex
|
|
212
|
+
bex: {
|
|
213
|
+
// extendBexScriptsConf (esbuildConf) {},
|
|
214
|
+
// extendBexManifestJson (json) {},
|
|
215
|
+
|
|
216
|
+
contentScripts: [
|
|
217
|
+
'my-content-script'
|
|
218
|
+
]
|
|
250
219
|
}
|
|
251
220
|
}
|
|
252
221
|
});
|
|
@@ -23,7 +23,7 @@ export default route(function (/* { store, ssrContext } */) {
|
|
|
23
23
|
// Leave this as is and make changes in quasar.conf.js instead!
|
|
24
24
|
// quasar.conf.js -> build -> vueRouterMode
|
|
25
25
|
// quasar.conf.js -> build -> publicPath
|
|
26
|
-
history: createHistory(process.env.
|
|
26
|
+
history: createHistory(process.env.VUE_ROUTER_BASE)
|
|
27
27
|
})
|
|
28
28
|
|
|
29
29
|
return Router
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
28
|
<% if (preset.lint) { %>
|
|
29
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
30
|
-
"@typescript-eslint/parser": "^
|
|
29
|
+
"@typescript-eslint/eslint-plugin": "^6.6.0",
|
|
30
|
+
"@typescript-eslint/parser": "^6.6.0",
|
|
31
31
|
"eslint": "^8.10.0",
|
|
32
32
|
"eslint-plugin-vue": "^9.0.0",
|
|
33
33
|
<% if (lintConfig === 'standard') { %>
|
|
@@ -39,17 +39,17 @@
|
|
|
39
39
|
"eslint-config-airbnb-base": "^15.0.0",
|
|
40
40
|
"eslint-plugin-import": "^2.20.1",
|
|
41
41
|
<% } else if (lintConfig === 'prettier') { %>
|
|
42
|
-
"eslint-config-prettier": "^
|
|
43
|
-
"prettier": "^
|
|
42
|
+
"eslint-config-prettier": "^9.0.0",
|
|
43
|
+
"prettier": "^3.0.3",
|
|
44
44
|
<% } } %>
|
|
45
|
-
"@types/node": "^
|
|
45
|
+
"@types/node": "^20.5.9",
|
|
46
46
|
<% if (preset.i18n) { %>"@intlify/vite-plugin-vue-i18n": "^3.3.1",<% } %>
|
|
47
47
|
"@quasar/app-vite": "^2.0.0-alpha.0",
|
|
48
48
|
"autoprefixer": "^10.4.2",
|
|
49
|
-
"typescript": "^
|
|
49
|
+
"typescript": "^5.2.2"
|
|
50
50
|
},
|
|
51
51
|
"engines": {
|
|
52
|
-
"node": "^
|
|
52
|
+
"node": "^24 || ^22 || ^20 || ^18",
|
|
53
53
|
"npm": ">= 6.13.4",
|
|
54
54
|
"yarn": ">= 1.21.1"
|
|
55
55
|
}
|
|
@@ -15,6 +15,7 @@ export default configure((/* ctx */) => {
|
|
|
15
15
|
// fix: true,
|
|
16
16
|
// include: [],
|
|
17
17
|
// exclude: [],
|
|
18
|
+
// cache: false,
|
|
18
19
|
// rawOptions: {},
|
|
19
20
|
warnings: true,
|
|
20
21
|
errors: true
|
|
@@ -127,46 +128,51 @@ export default configure((/* ctx */) => {
|
|
|
127
128
|
// rootComponent: 'src/App.vue',
|
|
128
129
|
// router: 'src/router/index',
|
|
129
130
|
// store: 'src/store/index',
|
|
130
|
-
//
|
|
131
|
-
//
|
|
131
|
+
// pwaRegisterServiceWorker: 'src-pwa/register-service-worker',
|
|
132
|
+
// pwaServiceWorker: 'src-pwa/custom-service-worker',
|
|
132
133
|
// pwaManifestFile: 'src-pwa/manifest.json',
|
|
133
134
|
// electronMain: 'src-electron/electron-main',
|
|
134
135
|
// electronPreload: 'src-electron/electron-preload'
|
|
136
|
+
// bexManifestFile: 'src-bex/manifest.json
|
|
135
137
|
// },
|
|
136
138
|
|
|
137
139
|
// https://v2.quasar.dev/quasar-cli-vite/developing-ssr/configuring-ssr
|
|
138
140
|
ssr: {
|
|
139
|
-
|
|
140
|
-
|
|
141
|
+
prodPort: 3000, // The default port that the production server should use
|
|
142
|
+
// (gets superseded if process.env.PORT is specified at runtime)
|
|
141
143
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
+
middlewares: [
|
|
145
|
+
'render' // keep this as last one
|
|
146
|
+
],
|
|
144
147
|
|
|
145
|
-
|
|
148
|
+
// extendPackageJson (json) {},
|
|
149
|
+
// extendSSRWebserverConf (esbuildConf) {},
|
|
146
150
|
|
|
151
|
+
// manualStoreSerialization: true,
|
|
152
|
+
// manualStoreSsrContextInjection: true,
|
|
147
153
|
// manualStoreHydration: true,
|
|
148
154
|
// manualPostHydrationTrigger: true,
|
|
149
155
|
|
|
150
|
-
|
|
151
|
-
// (gets superseded if process.env.PORT is specified at runtime)
|
|
156
|
+
pwa: false
|
|
152
157
|
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
158
|
+
// pwaOfflineHtmlFilename: 'offline.html', // do NOT use index.html as name!
|
|
159
|
+
// will mess up SSR
|
|
160
|
+
|
|
161
|
+
// pwaExtendGenerateSWOptions (cfg) {},
|
|
162
|
+
// pwaExtendInjectManifestOptions (cfg) {}
|
|
156
163
|
},
|
|
157
164
|
|
|
158
165
|
// https://v2.quasar.dev/quasar-cli-vite/developing-pwa/configuring-pwa
|
|
159
166
|
pwa: {
|
|
160
|
-
workboxMode: '
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
useCredentialsForManifestTag:
|
|
165
|
-
//
|
|
166
|
-
//
|
|
167
|
-
//
|
|
168
|
-
//
|
|
169
|
-
// extendPWACustomSWConf (esbuildConf) {}
|
|
167
|
+
workboxMode: 'GenerateSW' // 'GenerateSW' or 'InjectManifest'
|
|
168
|
+
// swFilename: 'sw.js',
|
|
169
|
+
// manifestFilename: 'manifest.json'
|
|
170
|
+
// extendManifestJson (json) {},
|
|
171
|
+
// useCredentialsForManifestTag: true,
|
|
172
|
+
// injectPwaMetaTags: false,
|
|
173
|
+
// extendPWACustomSWConf (esbuildConf) {},
|
|
174
|
+
// extendGenerateSWOptions (cfg) {},
|
|
175
|
+
// extendInjectManifestOptions (cfg) {}
|
|
170
176
|
},
|
|
171
177
|
|
|
172
178
|
// Full list of options: https://v2.quasar.dev/quasar-cli-vite/developing-cordova-apps/configuring-cordova
|
|
@@ -181,8 +187,10 @@ export default configure((/* ctx */) => {
|
|
|
181
187
|
|
|
182
188
|
// Full list of options: https://v2.quasar.dev/quasar-cli-vite/developing-electron-apps/configuring-electron
|
|
183
189
|
electron: {
|
|
184
|
-
// extendElectronMainConf (esbuildConf)
|
|
185
|
-
// extendElectronPreloadConf (esbuildConf)
|
|
190
|
+
// extendElectronMainConf (esbuildConf) {},
|
|
191
|
+
// extendElectronPreloadConf (esbuildConf) {},
|
|
192
|
+
|
|
193
|
+
// extendPackageJson (json) {},
|
|
186
194
|
|
|
187
195
|
// specify the debugging port to use for the Electron app when running in development mode
|
|
188
196
|
inspectPort: 5858,
|
|
@@ -211,12 +219,12 @@ export default configure((/* ctx */) => {
|
|
|
211
219
|
|
|
212
220
|
// Full list of options: https://v2.quasar.dev/quasar-cli-vite/developing-browser-extensions/configuring-bex
|
|
213
221
|
bex: {
|
|
222
|
+
// extendBexScriptsConf (esbuildConf) {},
|
|
223
|
+
// extendBexManifestJson (json) {},
|
|
224
|
+
|
|
214
225
|
contentScripts: [
|
|
215
226
|
'my-content-script'
|
|
216
|
-
]
|
|
217
|
-
|
|
218
|
-
// extendBexScriptsConf (esbuildConf) {}
|
|
219
|
-
// extendBexManifestJson (json) {}
|
|
227
|
+
]
|
|
220
228
|
}
|
|
221
229
|
}
|
|
222
230
|
});
|
|
@@ -27,10 +27,11 @@
|
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
<% if (preset.lint) { %>
|
|
30
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
31
|
-
"@typescript-eslint/parser": "^
|
|
30
|
+
"@typescript-eslint/eslint-plugin": "^6.6.0",
|
|
31
|
+
"@typescript-eslint/parser": "^6.6.0",
|
|
32
32
|
"eslint": "^8.10.0",
|
|
33
33
|
"eslint-plugin-vue": "^9.0.0",
|
|
34
|
+
"eslint-webpack-plugin": "^4.0.1",
|
|
34
35
|
<% if (lintConfig === 'standard') { %>
|
|
35
36
|
"eslint-config-standard": "^17.0.0",
|
|
36
37
|
"eslint-plugin-import": "^2.19.1",
|
|
@@ -40,11 +41,12 @@
|
|
|
40
41
|
"eslint-config-airbnb-base": "^15.0.0",
|
|
41
42
|
"eslint-plugin-import": "^2.20.1",
|
|
42
43
|
<% } else if (lintConfig === 'prettier') { %>
|
|
43
|
-
"eslint-config-prettier": "^
|
|
44
|
-
"prettier": "^
|
|
44
|
+
"eslint-config-prettier": "^9.0.0",
|
|
45
|
+
"prettier": "^3.0.3",
|
|
45
46
|
<% } } %>
|
|
46
|
-
"@
|
|
47
|
-
"
|
|
47
|
+
"@quasar/app-webpack": "^4.0.0-alpha.0",
|
|
48
|
+
"ts-loader": "^9.4.2",
|
|
49
|
+
"typescript": "^5.2.2"
|
|
48
50
|
},
|
|
49
51
|
"browserslist": [
|
|
50
52
|
"last 10 Chrome versions",
|
|
@@ -58,7 +60,7 @@
|
|
|
58
60
|
"last 5 Opera versions"
|
|
59
61
|
],
|
|
60
62
|
"engines": {
|
|
61
|
-
"node": "
|
|
63
|
+
"node": "^24 || ^22 || ^20 || ^18 || ^16",
|
|
62
64
|
"npm": ">= 6.13.4",
|
|
63
65
|
"yarn": ">= 1.21.1"
|
|
64
66
|
}
|
|
@@ -12,8 +12,18 @@
|
|
|
12
12
|
<% } %>
|
|
13
13
|
import { configure } from 'quasar/wrappers';
|
|
14
14
|
|
|
15
|
-
export default configure((ctx) => {
|
|
15
|
+
export default configure((/* ctx */) => {
|
|
16
16
|
return {
|
|
17
|
+
<% if (preset.lint) { %>eslint: {
|
|
18
|
+
// fix: true,
|
|
19
|
+
// include: [],
|
|
20
|
+
// exclude: [],
|
|
21
|
+
// cache: false,
|
|
22
|
+
// rawEsbuildEslintOptions: {},
|
|
23
|
+
// rawWebpackEslintPluginOptions: {},
|
|
24
|
+
warnings: true,
|
|
25
|
+
errors: true
|
|
26
|
+
},<% } %>
|
|
17
27
|
// https://v2.quasar.dev/quasar-cli-webpack/prefetch-feature
|
|
18
28
|
// preFetch: true,
|
|
19
29
|
|
|
@@ -46,24 +56,15 @@ export default configure((ctx) => {
|
|
|
46
56
|
|
|
47
57
|
// Full list of options: https://v2.quasar.dev/quasar-cli-webpack/quasar-config-js#Property%3A-build
|
|
48
58
|
build: {
|
|
49
|
-
|
|
50
|
-
tsCheckerOptions: {
|
|
51
|
-
eslint: {
|
|
52
|
-
enabled: true,
|
|
53
|
-
files: './src/**/*.{ts,tsx,js,jsx,vue}',
|
|
54
|
-
},
|
|
55
|
-
},
|
|
56
|
-
|
|
57
|
-
<% } %>
|
|
59
|
+
// publicPath: '/',
|
|
58
60
|
vueRouterMode: 'hash', // available values: 'hash', 'history'
|
|
59
61
|
|
|
60
|
-
//
|
|
61
|
-
// publicPath: '/',
|
|
62
|
+
// webpackTranspile: false,
|
|
62
63
|
|
|
63
64
|
// Add dependencies for transpiling with Babel (Array of string/regex)
|
|
64
65
|
// (from node_modules, which are by default not transpiled).
|
|
65
|
-
// Applies only if "
|
|
66
|
-
//
|
|
66
|
+
// Applies only if "webpackTranspile" is set to true.
|
|
67
|
+
// webpackTranspileDependencies: [],
|
|
67
68
|
|
|
68
69
|
// rtl: true, // https://quasar.dev/options/rtl-support
|
|
69
70
|
// preloadChunks: true,
|
|
@@ -75,8 +76,8 @@ export default configure((ctx) => {
|
|
|
75
76
|
// extractCSS: false,
|
|
76
77
|
|
|
77
78
|
// https://v2.quasar.dev/quasar-cli-webpack/handling-webpack
|
|
78
|
-
// "chain" is a webpack-chain object https://github.com/
|
|
79
|
-
// chainWebpack (/* chain */) {}
|
|
79
|
+
// "chain" is a webpack-chain object https://github.com/sorrycc/webpack-chain
|
|
80
|
+
// chainWebpack (/* chain, { isClient, isServer } */) {}
|
|
80
81
|
},
|
|
81
82
|
|
|
82
83
|
// Full list of options: https://v2.quasar.dev/quasar-cli-webpack/quasar-config-js#Property%3A-devServer
|
|
@@ -84,7 +85,6 @@ export default configure((ctx) => {
|
|
|
84
85
|
server: {
|
|
85
86
|
type: 'http'
|
|
86
87
|
},
|
|
87
|
-
port: 8080,
|
|
88
88
|
open: true // opens browser window automatically
|
|
89
89
|
},
|
|
90
90
|
|
|
@@ -110,72 +110,57 @@ export default configure((ctx) => {
|
|
|
110
110
|
// https://quasar.dev/options/animations
|
|
111
111
|
animations: [],
|
|
112
112
|
|
|
113
|
+
// https://v2.quasar.dev/quasar-cli-webpack/quasar-config-js#property-sourcefiles
|
|
114
|
+
// sourceFiles: {
|
|
115
|
+
// rootComponent: 'src/App.vue',
|
|
116
|
+
// router: 'src/router/index',
|
|
117
|
+
// store: 'src/store/index',
|
|
118
|
+
// indexHtmlTemplate: 'index.html',
|
|
119
|
+
// pwaRegisterServiceWorker: 'src-pwa/register-service-worker',
|
|
120
|
+
// pwaServiceWorker: 'src-pwa/custom-service-worker',
|
|
121
|
+
// pwaManifestFile: 'src-pwa/manifest.json',
|
|
122
|
+
// electronMain: 'src-electron/electron-main',
|
|
123
|
+
// electronPreload: 'src-electron/electron-preload'
|
|
124
|
+
// bexManifestFile: 'src-bex/manifest.json
|
|
125
|
+
// },
|
|
126
|
+
|
|
113
127
|
// https://v2.quasar.dev/quasar-cli-webpack/developing-ssr/configuring-ssr
|
|
114
128
|
ssr: {
|
|
115
|
-
|
|
129
|
+
prodPort: 3000, // The default port that the production server should use
|
|
130
|
+
// (gets superseded if process.env.PORT is specified at runtime)
|
|
116
131
|
|
|
132
|
+
middlewares: [
|
|
133
|
+
'render' // keep this as last one
|
|
134
|
+
],
|
|
135
|
+
|
|
136
|
+
// extendPackageJson (json) {},
|
|
137
|
+
// extendSSRWebserverConf (esbuildConf) {},
|
|
138
|
+
|
|
139
|
+
// manualStoreSerialization: true,
|
|
140
|
+
// manualStoreSsrContextInjection: true,
|
|
117
141
|
// manualStoreHydration: true,
|
|
118
142
|
// manualPostHydrationTrigger: true,
|
|
119
143
|
|
|
120
|
-
|
|
121
|
-
// (gets superseded if process.env.PORT is specified at runtime)
|
|
122
|
-
|
|
123
|
-
maxAge: 1000 * 60 * 60 * 24 * 30,
|
|
124
|
-
// Tell browser when a file from the server should expire from cache (in ms)
|
|
144
|
+
pwa: false
|
|
125
145
|
|
|
126
|
-
//
|
|
146
|
+
// pwaOfflineHtmlFilename: 'offline.html', // do NOT use index.html as name!
|
|
147
|
+
// will mess up SSR
|
|
127
148
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
'render' // keep this as last one
|
|
131
|
-
]
|
|
149
|
+
// pwaExtendGenerateSWOptions (cfg) {},
|
|
150
|
+
// pwaExtendInjectManifestOptions (cfg) {}
|
|
132
151
|
},
|
|
133
152
|
|
|
134
153
|
// https://v2.quasar.dev/quasar-cli-webpack/developing-pwa/configuring-pwa
|
|
135
154
|
pwa: {
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
//
|
|
140
|
-
//
|
|
141
|
-
//
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
short_name: `<%= productName %>`,
|
|
146
|
-
description: `<% description %>`,
|
|
147
|
-
display: 'standalone',
|
|
148
|
-
orientation: 'portrait',
|
|
149
|
-
background_color: '#ffffff',
|
|
150
|
-
theme_color: '#027be3',
|
|
151
|
-
icons: [
|
|
152
|
-
{
|
|
153
|
-
src: 'icons/icon-128x128.png',
|
|
154
|
-
sizes: '128x128',
|
|
155
|
-
type: 'image/png'
|
|
156
|
-
},
|
|
157
|
-
{
|
|
158
|
-
src: 'icons/icon-192x192.png',
|
|
159
|
-
sizes: '192x192',
|
|
160
|
-
type: 'image/png'
|
|
161
|
-
},
|
|
162
|
-
{
|
|
163
|
-
src: 'icons/icon-256x256.png',
|
|
164
|
-
sizes: '256x256',
|
|
165
|
-
type: 'image/png'
|
|
166
|
-
},
|
|
167
|
-
{
|
|
168
|
-
src: 'icons/icon-384x384.png',
|
|
169
|
-
sizes: '384x384',
|
|
170
|
-
type: 'image/png'
|
|
171
|
-
},
|
|
172
|
-
{
|
|
173
|
-
src: 'icons/icon-512x512.png',
|
|
174
|
-
sizes: '512x512',
|
|
175
|
-
type: 'image/png'
|
|
176
|
-
}
|
|
177
|
-
]
|
|
178
|
-
}
|
|
155
|
+
workboxMode: 'GenerateSW' // 'GenerateSW' or 'InjectManifest'
|
|
156
|
+
// swFilename: 'sw.js',
|
|
157
|
+
// manifestFilename: 'manifest.json'
|
|
158
|
+
// extendManifestJson (json) {},
|
|
159
|
+
// useCredentialsForManifestTag: true,
|
|
160
|
+
// injectPwaMetaTags: false,
|
|
161
|
+
// extendPWACustomSWConf (esbuildConf) {},
|
|
162
|
+
// extendGenerateSWOptions (cfg) {},
|
|
163
|
+
// extendInjectManifestOptions (cfg) {}
|
|
179
164
|
},
|
|
180
165
|
|
|
181
166
|
// Full list of options: https://v2.quasar.dev/quasar-cli-webpack/developing-cordova-apps/configuring-cordova
|
|
@@ -190,6 +175,11 @@ export default configure((ctx) => {
|
|
|
190
175
|
|
|
191
176
|
// Full list of options: https://v2.quasar.dev/quasar-cli-webpack/developing-electron-apps/configuring-electron
|
|
192
177
|
electron: {
|
|
178
|
+
// extendElectronMainConf (esbuildConf) {},
|
|
179
|
+
// extendElectronPreloadConf (esbuildConf) {},
|
|
180
|
+
|
|
181
|
+
// extendPackageJson (json) {},
|
|
182
|
+
|
|
193
183
|
// specify the debugging port to use for the Electron app when running in development mode
|
|
194
184
|
inspectPort: 5858,
|
|
195
185
|
|
|
@@ -212,19 +202,17 @@ export default configure((ctx) => {
|
|
|
212
202
|
// https://www.electron.build/configuration/configuration
|
|
213
203
|
|
|
214
204
|
appId: '<%= name %>'
|
|
215
|
-
}
|
|
205
|
+
}
|
|
206
|
+
},
|
|
216
207
|
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
},
|
|
208
|
+
// Full list of options: https://v2.quasar.dev/quasar-cli-webpack/developing-browser-extensions/configuring-bex
|
|
209
|
+
bex: {
|
|
210
|
+
// extendBexScriptsConf (esbuildConf) {},
|
|
211
|
+
// extendBexManifestJson (json) {},
|
|
222
212
|
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
// extendWebpackPreload also available besides this chainWebpackPreload
|
|
227
|
-
}
|
|
213
|
+
contentScripts: [
|
|
214
|
+
'my-content-script'
|
|
215
|
+
]
|
|
228
216
|
}
|
|
229
217
|
}
|
|
230
218
|
});
|
|
@@ -29,9 +29,7 @@ export default route<% if (preset.vuex) { %><StateInterface><% } %>(function (/*
|
|
|
29
29
|
// Leave this as is and make changes in quasar.conf.js instead!
|
|
30
30
|
// quasar.conf.js -> build -> vueRouterMode
|
|
31
31
|
// quasar.conf.js -> build -> publicPath
|
|
32
|
-
history: createHistory(
|
|
33
|
-
process.env.MODE === 'ssr' ? void 0 : process.env.VUE_ROUTER_BASE
|
|
34
|
-
),
|
|
32
|
+
history: createHistory(process.env.VUE_ROUTER_BASE),
|
|
35
33
|
});
|
|
36
34
|
|
|
37
35
|
return Router;
|
|
@@ -22,6 +22,17 @@ module.exports = async function ({ scope, utils }) {
|
|
|
22
22
|
utils.isValidPackageName(val) || 'Invalid App Extension name'
|
|
23
23
|
},
|
|
24
24
|
|
|
25
|
+
{
|
|
26
|
+
type: 'select',
|
|
27
|
+
name: 'codeFormat',
|
|
28
|
+
message: 'Pick AE format:',
|
|
29
|
+
initial: 0,
|
|
30
|
+
choices: [
|
|
31
|
+
{ title: 'ESM (q/app-vite >= 1.5, q/app-webpack >= 3.10)', value: 'esm', description: 'recommended' },
|
|
32
|
+
{ title: 'CommonJS', value: 'commonjs' }
|
|
33
|
+
]
|
|
34
|
+
},
|
|
35
|
+
|
|
25
36
|
utils.commonPrompts.description,
|
|
26
37
|
utils.commonPrompts.author,
|
|
27
38
|
{
|
|
@@ -96,6 +96,17 @@ module.exports = async function ({ scope, utils }) {
|
|
|
96
96
|
]
|
|
97
97
|
},
|
|
98
98
|
|
|
99
|
+
{
|
|
100
|
+
type: (_, { quasarVersion, features }) => quasarVersion === 'v2' && features.ae ? 'select' : null,
|
|
101
|
+
name: 'aeCodeFormat',
|
|
102
|
+
message: 'Pick the App Extension format:',
|
|
103
|
+
initial: 0,
|
|
104
|
+
choices: [
|
|
105
|
+
{ title: 'ESM (q/app-vite >= 1.5, q/app-webpack >= 3.10)', value: 'esm', description: 'recommended' },
|
|
106
|
+
{ title: 'CommonJS', value: 'commonjs' }
|
|
107
|
+
]
|
|
108
|
+
},
|
|
109
|
+
|
|
99
110
|
utils.commonPrompts.repositoryType,
|
|
100
111
|
utils.commonPrompts.repositoryURL,
|
|
101
112
|
utils.commonPrompts.homepage,
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"description": "<%= aeDescription %>",
|
|
5
5
|
"author": "<%= author %>",
|
|
6
6
|
"license": "<%= license %>",
|
|
7
|
-
"
|
|
7
|
+
"type": "<%= aeCodeFormat === 'esm' ? 'module' : 'commonjs' %>",
|
|
8
8
|
"repository": {
|
|
9
9
|
"type": "<%= repositoryType %>",
|
|
10
10
|
"url": "<%= repositoryURL %>"
|
|
@@ -6,28 +6,34 @@
|
|
|
6
6
|
* API: https://github.com/quasarframework/quasar/blob/master/app/lib/app-extension/IndexAPI.js
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
function extendConf (conf) {
|
|
9
|
+
function extendConf (conf, api) {
|
|
10
10
|
// register our boot file
|
|
11
11
|
conf.boot.push('~quasar-app-extension-<%= name %>/src/boot/register.js')
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
if (api.hasWebpack) {
|
|
14
|
+
// make sure app extension files & ui package gets transpiled
|
|
15
|
+
const transpileTarget = (
|
|
16
|
+
conf.build.webpackTranspileDependencies // q/app-webpack >= v4
|
|
17
|
+
|| conf.build.transpileDependencies // q/app-webpack v3
|
|
18
|
+
)
|
|
19
|
+
transpileTarget.push(/quasar-app-extension-<%= name %>[\\/]src/)
|
|
20
|
+
}
|
|
15
21
|
|
|
16
22
|
// make sure the stylesheet goes through webpack to avoid SSR issues
|
|
17
23
|
conf.css.push('~quasar-ui-<%= name %>/src/index.sass')
|
|
18
24
|
}
|
|
19
25
|
|
|
20
|
-
module.exports = function (api) {
|
|
26
|
+
<%= aeCodeFormat === 'esm' ? 'export default' : 'module.exports =' %> function (api) {
|
|
21
27
|
// Quasar compatibility check; you may need
|
|
22
28
|
// hard dependencies, as in a minimum version of the "quasar"
|
|
23
29
|
// package or a minimum version of "@quasar/app-*" CLI
|
|
24
30
|
api.compatibleWith('quasar', '^2.0.0')
|
|
25
31
|
|
|
26
32
|
if (api.hasVite) {
|
|
27
|
-
api.compatibleWith('@quasar/app-vite', '^1.0.0')
|
|
33
|
+
api.compatibleWith('@quasar/app-vite', '^1.5.0 || ^2.0.0')
|
|
28
34
|
}
|
|
29
35
|
else if (api.hasWebpack) {
|
|
30
|
-
api.compatibleWith('@quasar/app-webpack', '^3.4.0')
|
|
36
|
+
api.compatibleWith('@quasar/app-webpack', '^3.10.0 || ^4.0.0')
|
|
31
37
|
}
|
|
32
38
|
|
|
33
39
|
<% if (features.component) { %>
|
|
@@ -5,6 +5,16 @@
|
|
|
5
5
|
* API: https://github.com/quasarframework/quasar/blob/master/app/lib/app-extension/InstallAPI.js
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
module.exports = function (api) {
|
|
9
|
-
//
|
|
8
|
+
<%= aeCodeFormat === 'esm' ? 'export default' : 'module.exports =' %> function (api) {
|
|
9
|
+
// Quasar compatibility check; you may need
|
|
10
|
+
// hard dependencies, as in a minimum version of the "quasar"
|
|
11
|
+
// package or a minimum version of "@quasar/app-*" CLI
|
|
12
|
+
api.compatibleWith('quasar', '^2.0.0')
|
|
13
|
+
|
|
14
|
+
if (api.hasVite) {
|
|
15
|
+
api.compatibleWith('@quasar/app-vite', '^1.0.0 || ^2.0.0')
|
|
16
|
+
}
|
|
17
|
+
else if (api.hasWebpack) {
|
|
18
|
+
api.compatibleWith('@quasar/app-webpack', '^3.10.0 || ^4.0.0')
|
|
19
|
+
}
|
|
10
20
|
}
|