vitrify 0.5.6 → 0.5.9
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/dist/bin/dev.js +3 -1
- package/dist/index.js +6 -4
- package/dist/plugins/quasar.js +95 -44
- package/dist/types/bin/dev.d.ts +1 -1
- package/package.json +17 -17
- package/src/node/bin/dev.ts +3 -1
- package/src/node/index.ts +6 -4
- package/src/node/plugins/quasar.ts +95 -64
package/dist/bin/dev.js
CHANGED
|
@@ -33,7 +33,7 @@ ssr, framework = 'vue', host, appDir, publicDir, base }) {
|
|
|
33
33
|
},
|
|
34
34
|
port,
|
|
35
35
|
// middlewareMode: mode === 'ssr' ? 'ssr' : undefined,
|
|
36
|
-
middlewareMode: ssr ?
|
|
36
|
+
middlewareMode: ssr ? true : false,
|
|
37
37
|
fs: {
|
|
38
38
|
strict: false,
|
|
39
39
|
allow: [
|
|
@@ -51,6 +51,8 @@ ssr, framework = 'vue', host, appDir, publicDir, base }) {
|
|
|
51
51
|
},
|
|
52
52
|
host
|
|
53
53
|
};
|
|
54
|
+
if (ssr)
|
|
55
|
+
config.appType = 'custom';
|
|
54
56
|
const vitrifyDevServer = await (await import('vite')).createServer({
|
|
55
57
|
configFile: false,
|
|
56
58
|
...config
|
package/dist/index.js
CHANGED
|
@@ -132,7 +132,8 @@ export const baseConfig = async ({ ssr, appDir, publicDir, base = '/', command =
|
|
|
132
132
|
console.log('No vitrify.config.(ts|js) file found, using defaults');
|
|
133
133
|
vitrifyConfig = {};
|
|
134
134
|
}
|
|
135
|
-
const localPackages = ['vue', 'vue-router', '@vue/server-renderer']
|
|
135
|
+
// const localPackages = ['vue', 'vue-router', '@vue/server-renderer']
|
|
136
|
+
const localPackages = [];
|
|
136
137
|
const cliPackages = [];
|
|
137
138
|
const packageUrls = vitrifyConfig.vitrify?.urls?.packages || {};
|
|
138
139
|
await (async () => {
|
|
@@ -459,7 +460,8 @@ export const baseConfig = async ({ ssr, appDir, publicDir, base = '/', command =
|
|
|
459
460
|
};
|
|
460
461
|
}
|
|
461
462
|
const config = {
|
|
462
|
-
root: ssr === 'fastify' ? appDir.pathname : frameworkDir.pathname,
|
|
463
|
+
// root: ssr === 'fastify' ? appDir.pathname : frameworkDir.pathname,
|
|
464
|
+
root: appDir.pathname,
|
|
463
465
|
publicDir: publicDir.pathname,
|
|
464
466
|
base,
|
|
465
467
|
envDir: appDir.pathname,
|
|
@@ -475,10 +477,10 @@ export const baseConfig = async ({ ssr, appDir, publicDir, base = '/', command =
|
|
|
475
477
|
},
|
|
476
478
|
plugins,
|
|
477
479
|
optimizeDeps: {
|
|
478
|
-
exclude: ['vue', ...serverModules, ...builtinModules]
|
|
480
|
+
exclude: ['vue', 'vue-router', ...serverModules, ...builtinModules]
|
|
479
481
|
},
|
|
480
482
|
resolve: {
|
|
481
|
-
dedupe: ['vue', 'vue-router'],
|
|
483
|
+
dedupe: ['vue', '@vue/server-renderer', 'vue-router'],
|
|
482
484
|
alias
|
|
483
485
|
},
|
|
484
486
|
build: {
|
package/dist/plugins/quasar.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { readFileSync } from 'fs';
|
|
2
1
|
import Components from 'unplugin-vue-components/vite';
|
|
3
2
|
// import { quasarDir as defaultQuasarDir } from '../app-urls.js'
|
|
4
3
|
// import { QuasarResolver } from '../resolver.js';
|
|
@@ -40,12 +39,12 @@ export const QuasarPlugin = async ({ ssr = false, pwa = false }) => {
|
|
|
40
39
|
name: 'vite-plugin-quasar-transform',
|
|
41
40
|
enforce: 'pre',
|
|
42
41
|
transform: (code, id, options) => {
|
|
43
|
-
const { ssr } = options || {};
|
|
42
|
+
const { ssr: transformSsr } = options || {};
|
|
44
43
|
code = code
|
|
45
|
-
.replaceAll('__QUASAR_SSR__', ssr ?
|
|
46
|
-
.replaceAll('__QUASAR_SSR_SERVER__',
|
|
47
|
-
.replaceAll('__QUASAR_SSR_CLIENT__',
|
|
48
|
-
.replaceAll('__QUASAR_SSR_PWA__',
|
|
44
|
+
.replaceAll('__QUASAR_SSR__', ssr ? 'true' : 'false')
|
|
45
|
+
.replaceAll('__QUASAR_SSR_SERVER__', 'import.meta.env.SSR')
|
|
46
|
+
.replaceAll('__QUASAR_SSR_CLIENT__', '!import.meta.env.SSR')
|
|
47
|
+
.replaceAll('__QUASAR_SSR_PWA__', pwa ? '!import.meta.env.SSR' : 'false');
|
|
49
48
|
return code;
|
|
50
49
|
}
|
|
51
50
|
},
|
|
@@ -55,7 +54,8 @@ export const QuasarPlugin = async ({ ssr = false, pwa = false }) => {
|
|
|
55
54
|
config: async (config, env) => {
|
|
56
55
|
const { vitrify: { urls } = {}, quasar } = config;
|
|
57
56
|
const globalCss = quasar?.extras.map((extra) => `@quasar/extras/${extra}/${extra}.css`);
|
|
58
|
-
const localPackages = ['@quasar/extras', 'quasar']
|
|
57
|
+
// const localPackages = ['@quasar/extras', 'quasar']
|
|
58
|
+
const localPackages = [];
|
|
59
59
|
await (async () => {
|
|
60
60
|
for (const val of localPackages)
|
|
61
61
|
urls.packages[val] = getPkgJsonDir(new URL(await resolve(val, urls.app)));
|
|
@@ -72,7 +72,7 @@ export const QuasarPlugin = async ({ ssr = false, pwa = false }) => {
|
|
|
72
72
|
// @ts-ignore
|
|
73
73
|
const quasarPlugins = await import('virtual:quasar-plugins');
|
|
74
74
|
// @ts-ignore
|
|
75
|
-
const directives = await import('quasar
|
|
75
|
+
const directives = await import('virtual:quasar-directives');
|
|
76
76
|
app.use(staticImports?.Quasar, {
|
|
77
77
|
plugins: quasarPlugins,
|
|
78
78
|
directives
|
|
@@ -104,8 +104,20 @@ export const QuasarPlugin = async ({ ssr = false, pwa = false }) => {
|
|
|
104
104
|
enforce: 'post',
|
|
105
105
|
config: async (config, env) => {
|
|
106
106
|
const { quasar: quasarConf, vitrify: { urls } = {} } = config;
|
|
107
|
-
const quasarPkgJsonPath = new URL(
|
|
108
|
-
|
|
107
|
+
// const quasarPkgJsonPath = new URL(
|
|
108
|
+
// 'package.json',
|
|
109
|
+
// urls?.packages?.quasar
|
|
110
|
+
// ).pathname
|
|
111
|
+
// const { version } = JSON.parse(
|
|
112
|
+
// readFileSync(quasarPkgJsonPath, { encoding: 'utf-8' })
|
|
113
|
+
// )
|
|
114
|
+
// const { version } = await import('quasar/package.json', {
|
|
115
|
+
// assert: { type: 'json' }
|
|
116
|
+
// })
|
|
117
|
+
/**
|
|
118
|
+
* Importing package.json is problematic
|
|
119
|
+
*/
|
|
120
|
+
const version = '?';
|
|
109
121
|
/**
|
|
110
122
|
* All components should have been auto-imported
|
|
111
123
|
*/
|
|
@@ -118,50 +130,84 @@ export const QuasarPlugin = async ({ ssr = false, pwa = false }) => {
|
|
|
118
130
|
plugins = quasarConf?.framework.plugins;
|
|
119
131
|
}
|
|
120
132
|
return {
|
|
133
|
+
// build: {
|
|
134
|
+
// rollupOptions: {
|
|
135
|
+
// treeshake: {
|
|
136
|
+
// moduleSideEffects: 'no-external'
|
|
137
|
+
// }
|
|
138
|
+
// }
|
|
139
|
+
// },
|
|
121
140
|
resolve: {
|
|
141
|
+
// dedupe: ['quasar', '@quasar/extras'],
|
|
122
142
|
alias: [
|
|
123
|
-
{
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
},
|
|
127
|
-
{
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
143
|
+
// {
|
|
144
|
+
// find: 'quasar/wrappers',
|
|
145
|
+
// replacement: new URL('quasar-wrappers.ts', urls?.cli).pathname
|
|
146
|
+
// },
|
|
147
|
+
// {
|
|
148
|
+
// find: 'quasar/vue-plugin',
|
|
149
|
+
// replacement: new URL(
|
|
150
|
+
// 'src/vue-plugin.js',
|
|
151
|
+
// urls?.packages?.quasar
|
|
152
|
+
// ).pathname
|
|
153
|
+
// },
|
|
154
|
+
// {
|
|
155
|
+
// find: 'quasar/plugins',
|
|
156
|
+
// replacement: new URL('src/plugins.js', urls?.packages?.quasar)
|
|
157
|
+
// .pathname
|
|
158
|
+
// },
|
|
159
|
+
// {
|
|
160
|
+
// find: 'quasar/components',
|
|
161
|
+
// replacement: new URL(
|
|
162
|
+
// 'src/components.js',
|
|
163
|
+
// urls?.packages?.quasar
|
|
164
|
+
// ).pathname
|
|
165
|
+
// },
|
|
166
|
+
// {
|
|
167
|
+
// find: 'quasar/composables',
|
|
168
|
+
// replacement: new URL(
|
|
169
|
+
// 'src/composables.js',
|
|
170
|
+
// urls?.packages?.quasar
|
|
171
|
+
// ).pathname
|
|
172
|
+
// },
|
|
173
|
+
// {
|
|
174
|
+
// find: 'quasar/directives',
|
|
175
|
+
// replacement: new URL(
|
|
176
|
+
// 'src/directives.js',
|
|
177
|
+
// urls?.packages?.quasar
|
|
178
|
+
// ).pathname
|
|
179
|
+
// },
|
|
148
180
|
{
|
|
149
181
|
find: 'quasar/src',
|
|
150
|
-
replacement: new URL('src/', urls?.
|
|
182
|
+
replacement: new URL('node_modules/quasar/src/', config.vitrify?.urls?.app).pathname
|
|
151
183
|
},
|
|
184
|
+
{
|
|
185
|
+
find: new RegExp('^quasar$'),
|
|
186
|
+
replacement: 'virtual:quasar'
|
|
187
|
+
}
|
|
188
|
+
// {
|
|
189
|
+
// find: 'quasar',
|
|
190
|
+
// replacement: new URL(
|
|
191
|
+
// 'node_modules/quasar',
|
|
192
|
+
// config.vitrify?.urls?.app
|
|
193
|
+
// )
|
|
194
|
+
// }
|
|
152
195
|
// {
|
|
153
196
|
// find: new RegExp('^quasar$'),
|
|
154
197
|
// replacement: new URL('src/index.all.js', urls?.packages?.quasar)
|
|
155
198
|
// .pathname
|
|
156
199
|
// },
|
|
157
|
-
{
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
}
|
|
200
|
+
// {
|
|
201
|
+
// find: `@quasar/extras`,
|
|
202
|
+
// replacement: new URL('.', urls?.packages?.['@quasar/extras'])
|
|
203
|
+
// .pathname
|
|
204
|
+
// }
|
|
162
205
|
// { find: new RegExp('^quasar$'), replacement: 'virtual:quasar' }
|
|
163
206
|
]
|
|
164
207
|
},
|
|
208
|
+
optimizeDeps: {
|
|
209
|
+
// exclude: ['quasar']
|
|
210
|
+
},
|
|
165
211
|
define: {
|
|
166
212
|
__DEV__: process.env.NODE_ENV !== 'production' || true,
|
|
167
213
|
__QUASAR_VERSION__: `'${version}'`
|
|
@@ -193,8 +239,10 @@ export const QuasarPlugin = async ({ ssr = false, pwa = false }) => {
|
|
|
193
239
|
switch (id) {
|
|
194
240
|
case 'virtual:quasar-plugins':
|
|
195
241
|
return 'virtual:quasar-plugins';
|
|
196
|
-
case 'quasar':
|
|
197
|
-
return
|
|
242
|
+
case 'virtual:quasar-directives':
|
|
243
|
+
return 'virtual:quasar-directives';
|
|
244
|
+
case 'virtual:quasar':
|
|
245
|
+
return { id: 'virtual:quasar', moduleSideEffects: false };
|
|
198
246
|
default:
|
|
199
247
|
return;
|
|
200
248
|
}
|
|
@@ -203,7 +251,10 @@ export const QuasarPlugin = async ({ ssr = false, pwa = false }) => {
|
|
|
203
251
|
if (id === 'virtual:quasar-plugins') {
|
|
204
252
|
return `export { ${plugins.join(',')} } from 'quasar'`;
|
|
205
253
|
}
|
|
206
|
-
else if (id === 'quasar') {
|
|
254
|
+
else if (id === 'virtual:quasar-directives') {
|
|
255
|
+
return `export * from 'quasar/src/directives.js'`;
|
|
256
|
+
}
|
|
257
|
+
else if (id === 'virtual:quasar') {
|
|
207
258
|
return `export * from 'quasar/src/plugins.js';
|
|
208
259
|
export * from 'quasar/src/components.js';
|
|
209
260
|
export * from 'quasar/src/composables.js';
|
package/dist/types/bin/dev.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export declare function createServer({ port, logLevel, ssr, framework, host, app
|
|
|
22
22
|
publicDir?: URL;
|
|
23
23
|
}): Promise<{
|
|
24
24
|
server: Server;
|
|
25
|
-
config: Readonly<Omit<import("vite").UserConfig, "
|
|
25
|
+
config: Readonly<Omit<import("vite").UserConfig, "optimizeDeps" | "plugins" | "assetsInclude" | "worker"> & {
|
|
26
26
|
configFile: string | undefined;
|
|
27
27
|
configFileDependencies: string[];
|
|
28
28
|
inlineConfig: InlineConfig;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vitrify",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.9",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"author": "Stefan van Herwijnen",
|
|
6
6
|
"description": "Pre-configured Vite CLI for your framework",
|
|
@@ -54,46 +54,46 @@
|
|
|
54
54
|
"dependencies": {
|
|
55
55
|
"@fastify/middie": "^8.0.0",
|
|
56
56
|
"@fastify/static": "^6.4.0",
|
|
57
|
-
"@quasar/extras": "^1.14.
|
|
57
|
+
"@quasar/extras": "^1.14.1",
|
|
58
58
|
"@vitejs/plugin-vue": "^3.0.0-alpha.1",
|
|
59
59
|
"builtin-modules": "^3.3.0",
|
|
60
60
|
"cac": "^6.7.12",
|
|
61
61
|
"chalk": "^5.0.1",
|
|
62
|
+
"critters": "^0.0.16",
|
|
62
63
|
"cross-env": "^7.0.3",
|
|
63
|
-
"esbuild": "^0.14.
|
|
64
|
-
"fastify": "^4.
|
|
64
|
+
"esbuild": "^0.14.47",
|
|
65
|
+
"fastify": "^4.2.0",
|
|
65
66
|
"glob": "^8.0.3",
|
|
66
|
-
"happy-dom": "^5.
|
|
67
|
+
"happy-dom": "^5.3.4",
|
|
67
68
|
"magic-string": "^0.26.2",
|
|
68
69
|
"merge-deep": "^3.0.3",
|
|
69
70
|
"readline": "^1.3.0",
|
|
70
71
|
"rollup-plugin-visualizer": "^5.6.0",
|
|
71
|
-
"sass": "1.
|
|
72
|
+
"sass": "1.53.0",
|
|
72
73
|
"ts-node": "^10.8.1",
|
|
73
|
-
"unplugin-vue-components": "^0.
|
|
74
|
+
"unplugin-vue-components": "^0.20.1",
|
|
74
75
|
"vite": "^3.0.0-beta.0",
|
|
75
|
-
"vitest": "^0.
|
|
76
|
+
"vitest": "^0.16.0"
|
|
76
77
|
},
|
|
77
78
|
"devDependencies": {
|
|
78
79
|
"@types/connect": "^3.4.35",
|
|
79
80
|
"@types/glob": "^7.2.0",
|
|
80
81
|
"@types/merge-deep": "^3.0.0",
|
|
81
|
-
"@types/node": "^
|
|
82
|
+
"@types/node": "^18.0.0",
|
|
82
83
|
"@types/ws": "^8.5.3",
|
|
83
84
|
"@vue/runtime-core": "^3.2.37",
|
|
84
|
-
"quasar": "^2.7.
|
|
85
|
-
"rollup": "^2.75.
|
|
86
|
-
"typescript": "^4.7.
|
|
87
|
-
"vite": "^3.0.0-alpha.11",
|
|
85
|
+
"quasar": "^2.7.3",
|
|
86
|
+
"rollup": "^2.75.7",
|
|
87
|
+
"typescript": "^4.7.4",
|
|
88
88
|
"vue": "^3.2.37",
|
|
89
|
-
"vue-router": "^4.0.
|
|
89
|
+
"vue-router": "^4.0.16"
|
|
90
90
|
},
|
|
91
91
|
"peerDependencies": {
|
|
92
92
|
"@fastify/static": "^6.4.0",
|
|
93
|
-
"fastify": "^4.
|
|
94
|
-
"quasar": "^2.7.
|
|
93
|
+
"fastify": "^4.2.0",
|
|
94
|
+
"quasar": "^2.7.3",
|
|
95
95
|
"vue": "^3.2.37",
|
|
96
|
-
"vue-router": "^4.0.
|
|
96
|
+
"vue-router": "^4.0.16"
|
|
97
97
|
},
|
|
98
98
|
"publishConfig": {
|
|
99
99
|
"access": "public",
|
package/src/node/bin/dev.ts
CHANGED
|
@@ -60,7 +60,7 @@ export async function createVitrifyDevServer({
|
|
|
60
60
|
},
|
|
61
61
|
port,
|
|
62
62
|
// middlewareMode: mode === 'ssr' ? 'ssr' : undefined,
|
|
63
|
-
middlewareMode: ssr ?
|
|
63
|
+
middlewareMode: ssr ? true : false,
|
|
64
64
|
fs: {
|
|
65
65
|
strict: false, // https://github.com/vitejs/vite/issues/8175
|
|
66
66
|
allow: [
|
|
@@ -78,6 +78,8 @@ export async function createVitrifyDevServer({
|
|
|
78
78
|
},
|
|
79
79
|
host
|
|
80
80
|
}
|
|
81
|
+
if (ssr) config.appType = 'custom'
|
|
82
|
+
|
|
81
83
|
const vitrifyDevServer = await (
|
|
82
84
|
await import('vite')
|
|
83
85
|
).createServer({
|
package/src/node/index.ts
CHANGED
|
@@ -194,7 +194,8 @@ export const baseConfig = async ({
|
|
|
194
194
|
vitrifyConfig = {}
|
|
195
195
|
}
|
|
196
196
|
|
|
197
|
-
const localPackages = ['vue', 'vue-router', '@vue/server-renderer']
|
|
197
|
+
// const localPackages = ['vue', 'vue-router', '@vue/server-renderer']
|
|
198
|
+
const localPackages: string[] = []
|
|
198
199
|
const cliPackages = []
|
|
199
200
|
const packageUrls: Record<string, URL> =
|
|
200
201
|
vitrifyConfig.vitrify?.urls?.packages || {}
|
|
@@ -541,7 +542,8 @@ export const baseConfig = async ({
|
|
|
541
542
|
}
|
|
542
543
|
|
|
543
544
|
const config = {
|
|
544
|
-
root: ssr === 'fastify' ? appDir.pathname : frameworkDir.pathname,
|
|
545
|
+
// root: ssr === 'fastify' ? appDir.pathname : frameworkDir.pathname,
|
|
546
|
+
root: appDir.pathname,
|
|
545
547
|
publicDir: publicDir.pathname,
|
|
546
548
|
base,
|
|
547
549
|
envDir: appDir.pathname,
|
|
@@ -557,10 +559,10 @@ export const baseConfig = async ({
|
|
|
557
559
|
},
|
|
558
560
|
plugins,
|
|
559
561
|
optimizeDeps: {
|
|
560
|
-
exclude: ['vue', ...serverModules, ...builtinModules]
|
|
562
|
+
exclude: ['vue', 'vue-router', ...serverModules, ...builtinModules]
|
|
561
563
|
},
|
|
562
564
|
resolve: {
|
|
563
|
-
dedupe: ['vue', 'vue-router'],
|
|
565
|
+
dedupe: ['vue', '@vue/server-renderer', 'vue-router'],
|
|
564
566
|
alias
|
|
565
567
|
},
|
|
566
568
|
build: {
|
|
@@ -90,20 +90,14 @@ export const QuasarPlugin: VitrifyPlugin = async ({
|
|
|
90
90
|
name: 'vite-plugin-quasar-transform',
|
|
91
91
|
enforce: 'pre',
|
|
92
92
|
transform: (code, id, options) => {
|
|
93
|
-
const { ssr } = options || {}
|
|
93
|
+
const { ssr: transformSsr } = options || {}
|
|
94
94
|
code = code
|
|
95
|
-
.replaceAll('__QUASAR_SSR__', ssr ?
|
|
96
|
-
.replaceAll(
|
|
97
|
-
|
|
98
|
-
ssr ? 'import.meta.env.SSR' : 'false'
|
|
99
|
-
)
|
|
100
|
-
.replaceAll(
|
|
101
|
-
'__QUASAR_SSR_CLIENT__',
|
|
102
|
-
ssr ? '!import.meta.env.SSR' : 'false'
|
|
103
|
-
)
|
|
95
|
+
.replaceAll('__QUASAR_SSR__', ssr ? 'true' : 'false')
|
|
96
|
+
.replaceAll('__QUASAR_SSR_SERVER__', 'import.meta.env.SSR')
|
|
97
|
+
.replaceAll('__QUASAR_SSR_CLIENT__', '!import.meta.env.SSR')
|
|
104
98
|
.replaceAll(
|
|
105
99
|
'__QUASAR_SSR_PWA__',
|
|
106
|
-
|
|
100
|
+
pwa ? '!import.meta.env.SSR' : 'false'
|
|
107
101
|
)
|
|
108
102
|
|
|
109
103
|
return code
|
|
@@ -119,7 +113,8 @@ export const QuasarPlugin: VitrifyPlugin = async ({
|
|
|
119
113
|
(extra) => `@quasar/extras/${extra}/${extra}.css`
|
|
120
114
|
)
|
|
121
115
|
|
|
122
|
-
const localPackages = ['@quasar/extras', 'quasar']
|
|
116
|
+
// const localPackages = ['@quasar/extras', 'quasar']
|
|
117
|
+
const localPackages: string[] = []
|
|
123
118
|
await (async () => {
|
|
124
119
|
for (const val of localPackages)
|
|
125
120
|
urls!.packages![val] = getPkgJsonDir(
|
|
@@ -142,7 +137,7 @@ export const QuasarPlugin: VitrifyPlugin = async ({
|
|
|
142
137
|
// @ts-ignore
|
|
143
138
|
const quasarPlugins = await import('virtual:quasar-plugins')
|
|
144
139
|
// @ts-ignore
|
|
145
|
-
const directives = await import('quasar
|
|
140
|
+
const directives = await import('virtual:quasar-directives')
|
|
146
141
|
|
|
147
142
|
app.use(
|
|
148
143
|
staticImports?.Quasar,
|
|
@@ -181,13 +176,20 @@ export const QuasarPlugin: VitrifyPlugin = async ({
|
|
|
181
176
|
config: async (config: VitrifyConfig, env) => {
|
|
182
177
|
const { quasar: quasarConf, vitrify: { urls } = {} } = config
|
|
183
178
|
|
|
184
|
-
const quasarPkgJsonPath = new URL(
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
).pathname
|
|
188
|
-
const { version } = JSON.parse(
|
|
189
|
-
|
|
190
|
-
)
|
|
179
|
+
// const quasarPkgJsonPath = new URL(
|
|
180
|
+
// 'package.json',
|
|
181
|
+
// urls?.packages?.quasar
|
|
182
|
+
// ).pathname
|
|
183
|
+
// const { version } = JSON.parse(
|
|
184
|
+
// readFileSync(quasarPkgJsonPath, { encoding: 'utf-8' })
|
|
185
|
+
// )
|
|
186
|
+
// const { version } = await import('quasar/package.json', {
|
|
187
|
+
// assert: { type: 'json' }
|
|
188
|
+
// })
|
|
189
|
+
/**
|
|
190
|
+
* Importing package.json is problematic
|
|
191
|
+
*/
|
|
192
|
+
const version = '?'
|
|
191
193
|
|
|
192
194
|
/**
|
|
193
195
|
* All components should have been auto-imported
|
|
@@ -201,62 +203,87 @@ export const QuasarPlugin: VitrifyPlugin = async ({
|
|
|
201
203
|
}
|
|
202
204
|
|
|
203
205
|
return {
|
|
206
|
+
// build: {
|
|
207
|
+
// rollupOptions: {
|
|
208
|
+
// treeshake: {
|
|
209
|
+
// moduleSideEffects: 'no-external'
|
|
210
|
+
// }
|
|
211
|
+
// }
|
|
212
|
+
// },
|
|
204
213
|
resolve: {
|
|
214
|
+
// dedupe: ['quasar', '@quasar/extras'],
|
|
205
215
|
alias: [
|
|
216
|
+
// {
|
|
217
|
+
// find: 'quasar/wrappers',
|
|
218
|
+
// replacement: new URL('quasar-wrappers.ts', urls?.cli).pathname
|
|
219
|
+
// },
|
|
220
|
+
// {
|
|
221
|
+
// find: 'quasar/vue-plugin',
|
|
222
|
+
// replacement: new URL(
|
|
223
|
+
// 'src/vue-plugin.js',
|
|
224
|
+
// urls?.packages?.quasar
|
|
225
|
+
// ).pathname
|
|
226
|
+
// },
|
|
227
|
+
// {
|
|
228
|
+
// find: 'quasar/plugins',
|
|
229
|
+
// replacement: new URL('src/plugins.js', urls?.packages?.quasar)
|
|
230
|
+
// .pathname
|
|
231
|
+
// },
|
|
232
|
+
// {
|
|
233
|
+
// find: 'quasar/components',
|
|
234
|
+
// replacement: new URL(
|
|
235
|
+
// 'src/components.js',
|
|
236
|
+
// urls?.packages?.quasar
|
|
237
|
+
// ).pathname
|
|
238
|
+
// },
|
|
239
|
+
// {
|
|
240
|
+
// find: 'quasar/composables',
|
|
241
|
+
// replacement: new URL(
|
|
242
|
+
// 'src/composables.js',
|
|
243
|
+
// urls?.packages?.quasar
|
|
244
|
+
// ).pathname
|
|
245
|
+
// },
|
|
246
|
+
// {
|
|
247
|
+
// find: 'quasar/directives',
|
|
248
|
+
// replacement: new URL(
|
|
249
|
+
// 'src/directives.js',
|
|
250
|
+
// urls?.packages?.quasar
|
|
251
|
+
// ).pathname
|
|
252
|
+
// },
|
|
206
253
|
{
|
|
207
|
-
find: 'quasar/
|
|
208
|
-
replacement: new URL('quasar-wrappers.ts', urls?.cli).pathname
|
|
209
|
-
},
|
|
210
|
-
{
|
|
211
|
-
find: 'quasar/vue-plugin',
|
|
212
|
-
replacement: new URL(
|
|
213
|
-
'src/vue-plugin.js',
|
|
214
|
-
urls?.packages?.quasar
|
|
215
|
-
).pathname
|
|
216
|
-
},
|
|
217
|
-
{
|
|
218
|
-
find: 'quasar/plugins',
|
|
219
|
-
replacement: new URL('src/plugins.js', urls?.packages?.quasar)
|
|
220
|
-
.pathname
|
|
221
|
-
},
|
|
222
|
-
{
|
|
223
|
-
find: 'quasar/components',
|
|
224
|
-
replacement: new URL(
|
|
225
|
-
'src/components.js',
|
|
226
|
-
urls?.packages?.quasar
|
|
227
|
-
).pathname
|
|
228
|
-
},
|
|
229
|
-
{
|
|
230
|
-
find: 'quasar/composables',
|
|
231
|
-
replacement: new URL(
|
|
232
|
-
'src/composables.js',
|
|
233
|
-
urls?.packages?.quasar
|
|
234
|
-
).pathname
|
|
235
|
-
},
|
|
236
|
-
{
|
|
237
|
-
find: 'quasar/directives',
|
|
254
|
+
find: 'quasar/src',
|
|
238
255
|
replacement: new URL(
|
|
239
|
-
'src/
|
|
240
|
-
urls?.
|
|
256
|
+
'node_modules/quasar/src/',
|
|
257
|
+
config.vitrify?.urls?.app
|
|
241
258
|
).pathname
|
|
242
259
|
},
|
|
243
260
|
{
|
|
244
|
-
find: 'quasar
|
|
245
|
-
replacement:
|
|
246
|
-
}
|
|
261
|
+
find: new RegExp('^quasar$'),
|
|
262
|
+
replacement: 'virtual:quasar'
|
|
263
|
+
}
|
|
264
|
+
// {
|
|
265
|
+
// find: 'quasar',
|
|
266
|
+
// replacement: new URL(
|
|
267
|
+
// 'node_modules/quasar',
|
|
268
|
+
// config.vitrify?.urls?.app
|
|
269
|
+
// )
|
|
270
|
+
// }
|
|
247
271
|
// {
|
|
248
272
|
// find: new RegExp('^quasar$'),
|
|
249
273
|
// replacement: new URL('src/index.all.js', urls?.packages?.quasar)
|
|
250
274
|
// .pathname
|
|
251
275
|
// },
|
|
252
|
-
{
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
}
|
|
276
|
+
// {
|
|
277
|
+
// find: `@quasar/extras`,
|
|
278
|
+
// replacement: new URL('.', urls?.packages?.['@quasar/extras'])
|
|
279
|
+
// .pathname
|
|
280
|
+
// }
|
|
257
281
|
// { find: new RegExp('^quasar$'), replacement: 'virtual:quasar' }
|
|
258
282
|
]
|
|
259
283
|
},
|
|
284
|
+
optimizeDeps: {
|
|
285
|
+
// exclude: ['quasar']
|
|
286
|
+
},
|
|
260
287
|
define: {
|
|
261
288
|
__DEV__: process.env.NODE_ENV !== 'production' || true,
|
|
262
289
|
__QUASAR_VERSION__: `'${version}'`
|
|
@@ -288,8 +315,10 @@ export const QuasarPlugin: VitrifyPlugin = async ({
|
|
|
288
315
|
switch (id) {
|
|
289
316
|
case 'virtual:quasar-plugins':
|
|
290
317
|
return 'virtual:quasar-plugins'
|
|
291
|
-
case 'quasar':
|
|
292
|
-
return
|
|
318
|
+
case 'virtual:quasar-directives':
|
|
319
|
+
return 'virtual:quasar-directives'
|
|
320
|
+
case 'virtual:quasar':
|
|
321
|
+
return { id: 'virtual:quasar', moduleSideEffects: false }
|
|
293
322
|
default:
|
|
294
323
|
return
|
|
295
324
|
}
|
|
@@ -297,7 +326,9 @@ export const QuasarPlugin: VitrifyPlugin = async ({
|
|
|
297
326
|
load(id) {
|
|
298
327
|
if (id === 'virtual:quasar-plugins') {
|
|
299
328
|
return `export { ${plugins.join(',')} } from 'quasar'`
|
|
300
|
-
} else if (id === 'quasar') {
|
|
329
|
+
} else if (id === 'virtual:quasar-directives') {
|
|
330
|
+
return `export * from 'quasar/src/directives.js'`
|
|
331
|
+
} else if (id === 'virtual:quasar') {
|
|
301
332
|
return `export * from 'quasar/src/plugins.js';
|
|
302
333
|
export * from 'quasar/src/components.js';
|
|
303
334
|
export * from 'quasar/src/composables.js';
|