UNPKG

1.3 kBJavaScriptView Raw
1const
2 fs = require('fs'),
3 path = require('path'),
4 resolve = path.resolve,
5 join = path.join
6
7function getAppDir () {
8 let dir = process.cwd()
9
10 while (dir.length && dir[dir.length - 1] !== path.sep) {
11 if (fs.existsSync(join(dir, 'quasar.conf.js'))) {
12 return dir
13 }
14
15 dir = path.normalize(join(dir, '..'))
16 }
17
18 const
19 logger = require('./helpers/logger')
20 warn = logger('app:paths', 'red')
21
22 warn(`⚠️ Error. This command must be executed inside a Quasar v0.15+ project folder.`)
23 warn(`For Quasar pre v0.15 projects, npm uninstall -g quasar-cli; npm i -g quasar-cli@0.6.5`)
24 warn()
25 process.exit(1)
26}
27
28const
29 appDir = getAppDir(),
30 cliDir = resolve(__dirname, '..'),
31 srcDir = resolve(appDir, 'src'),
32 pwaDir = resolve(appDir, 'src-pwa'),
33 ssrDir = resolve(appDir, 'src-ssr'),
34 cordovaDir = resolve(appDir, 'src-cordova'),
35 electronDir = resolve(appDir, 'src-electron')
36
37module.exports = {
38 cliDir,
39 appDir,
40 srcDir,
41 pwaDir,
42 ssrDir,
43 cordovaDir,
44 electronDir,
45
46 resolve: {
47 cli: dir => join(cliDir, dir),
48 app: dir => join(appDir, dir),
49 src: dir => join(srcDir, dir),
50 pwa: dir => join(pwaDir, dir),
51 ssr: dir => join(ssrDir, dir),
52 cordova: dir => join(cordovaDir, dir),
53 electron: dir => join(electronDir, dir)
54 }
55}