Refactor tauri.js to move command code outside of bin files (#140)

* refactor(tauri.js): move command code into helpers

* reafactor(tauri.js): move command helpers to api dir

* fix(tauri.js/tests): import tauricon from proper dir

* fix(tauri.js/tests): add api dir to moduleNameMapper
This commit is contained in:
Noah Klayman 2019-12-10 12:44:49 -08:00 committed by nothingismagick
parent eb3ec78552
commit de68a86c8c
10 changed files with 66 additions and 34 deletions

21
cli/tauri.js/api/build.js Normal file
View File

@ -0,0 +1,21 @@
module.exports = config => {
const { tauriDir } = require('../helpers/app-paths')
const merge = require('webpack-merge')
const Runner = require('../runner')
const tauri = new Runner({ modeDir: tauriDir })
const tauriConfig = require('../helpers/tauri-config')(
merge(
{
ctx: {
prod: true
}
},
config
)
)
require('../generator').generate(tauriConfig.tauri)
require('../entry').generate(tauriDir, tauriConfig)
return tauri.build(tauriConfig)
}

21
cli/tauri.js/api/dev.js Normal file
View File

@ -0,0 +1,21 @@
module.exports = config => {
const { tauriDir } = require('../helpers/app-paths')
const Runner = require('../runner')
const merge = require('webpack-merge')
const tauri = new Runner()
const tauriConfig = require('../helpers/tauri-config')(
merge(
{
ctx: {
debug: true
}
},
config
)
)
require('../generator').generate(tauriConfig.tauri)
require('../entry').generate(tauriDir, tauriConfig)
return tauri.run(tauriConfig)
}

9
cli/tauri.js/api/init.js Normal file
View File

@ -0,0 +1,9 @@
const { inject } = require('../template')
module.exports = args => {
return inject(args.directory, 'all', {
force: args.force,
logging: args.logging,
tauriPath: args.tauriPath
})
}

View File

@ -21,11 +21,11 @@ const zopfli = require('imagemin-zopfli')
const png2icons = require('png2icons')
const readChunk = require('read-chunk')
const isPng = require('is-png')
const logger = require('./logger')
const logger = require('../helpers/logger')
const log = logger('app:spawn')
const warn = logger('app:spawn', 'red')
const settings = require('./tauricon.config.js')
const settings = require('../helpers/tauricon.config.js')
let image = false
const spinnerInterval = false

View File

@ -1,5 +1,4 @@
const
parseArgs = require('minimist')
const parseArgs = require('minimist')
const argv = parseArgs(process.argv.slice(2), {
alias: {
@ -21,17 +20,6 @@ if (argv.help) {
process.exit(0)
}
const { tauriDir } = require('../helpers/app-paths')
const Runner = require('../runner')
const tauri = new Runner({ modeDir: tauriDir })
const tauriConfig = require('../helpers/tauri-config')({
ctx: {
debug: argv.debug,
prod: true
}
})
const build = require('../api/build')
require('../generator').generate(tauriConfig.tauri)
require('../entry').generate(tauriDir, tauriConfig)
tauri.build(tauriConfig)
build({ ctx: { debug: argv.debug } })

View File

@ -19,16 +19,6 @@ if (argv.help) {
process.exit(0)
}
const { tauriDir } = require('../helpers/app-paths')
const Runner = require('../runner')
const tauri = new Runner()
const tauriConfig = require('../helpers/tauri-config')({
ctx: {
debug: true
}
})
const dev = require('../api/dev')
require('../generator').generate(tauriConfig.tauri)
require('../entry').generate(tauriDir, tauriConfig)
tauri.run(tauriConfig)
dev()

View File

@ -3,7 +3,7 @@ const { appDir, tauriDir } = require('../helpers/app-paths')
const logger = require('../helpers/logger')
const log = logger('app:tauri')
const warn = logger('app:tauri (icon)', 'red')
const { tauricon } = require('../helpers/tauricon')
const { tauricon } = require('../api/tauricon')
const { resolve } = require('path')
/**

View File

@ -39,9 +39,10 @@ if (argv.help) {
process.exit(0)
}
const { inject } = require('../template')
const init = require('../api/init')
inject(argv.d || process.cwd(), 'all', {
init({
directory: argv.d || process.cwd(),
force: argv.f || null,
logging: argv.l || null,
tauriPath: argv.t || null

View File

@ -12,7 +12,8 @@ module.exports = {
coverageDirectory: '<rootDir>/test/jest/coverage',
collectCoverageFrom: [
'<rootDir>/bin/**/*.js',
'<rootDir>/helpers/**/*.js'
'<rootDir>/helpers/**/*.js',
'<rootDir>/api/**/*.js'
],
coverageReporters: ['json-summary', 'text', 'lcov'],
coverageThreshold: {
@ -32,6 +33,7 @@ module.exports = {
'^~/(.*)$': '<rootDir>/$1',
'^bin/(.*)$': '<rootDir>/bin/$1',
'^helpers/(.*)$': '<rootDir>/helpers/$1',
'^api/(.*)$': '<rootDir>/api/$1',
'^templates/(.*)$': '<rootDir>/templates/$1',
'^test/(.*)$': '<rootDir>/test/$1',
'../../package.json': '<rootDir>/package.json'

View File

@ -1,4 +1,4 @@
const tauricon = require('helpers/tauricon.js')
const tauricon = require('api/tauricon.js')
describe('[CLI] tauri-icon internals', () => {
it('tells you the version', () => {