diff --git a/.webpack/css.js b/.webpack/css.js index a196a23a..d7f3b1ca 100644 --- a/.webpack/css.js +++ b/.webpack/css.js @@ -19,6 +19,7 @@ const cssNames = [ 'nojs', 'view', 'config', + 'terminal', ...getCSSList('columns'), ]; @@ -33,7 +34,7 @@ const cssLoader = isDev ? 'css-loader' : 'css-loader?minimize'; const rules = [{ test: /\.css$/, - exclude: /css\/(nojs|view|config|columns.*)\.css/, + exclude: /css\/(nojs|view|config|terminal|columns.*)\.css/, use: extractMain.extract([ cssLoader, ]), diff --git a/client/modules/terminal.js b/client/modules/terminal.js index 7cd79d3c..6756e1cc 100644 --- a/client/modules/terminal.js +++ b/client/modules/terminal.js @@ -3,6 +3,7 @@ /* global CloudCmd, gritty */ const {promisify} = require('es6-promisify'); +const tryToCatch = require('try-to-catch'); require('../../css/terminal.css'); @@ -11,6 +12,8 @@ const load = require('../dom/load'); const DOM = require('../dom'); const Images = require('../dom/images'); +const loadParallel = promisify(load.parallel); + const TITLE = 'Terminal'; const {Dialog} = DOM; @@ -24,18 +27,22 @@ let Terminal; const {config} = CloudCmd; -const loadAll = promisify((callback) => { - const prefix = getPrefix(); - const url = prefix + '/gritty.js'; +const loadAll = async () => { + const { + PREFIX, + } = CloudCmd; - DOM.load.js(url, (error) => { - if (error) - return Dialog.alert(TITLE, error.message); - - Loaded = true; - exec(callback); - }); -}); + const prefix = getPrefix(); + const js = `${prefix}/gritty.js`; + const css = `${PREFIX}/dist/terminal.css`; + + const [e] = await tryToCatch(loadParallel, [js, css]); + + if (e) + return Dialog.alert(TITLE, e.message); + + Loaded = true; +}; module.exports.init = async () => { Images.show.load('top'); diff --git a/css/main.css b/css/main.css index ebaafe19..6008c2a9 100644 --- a/css/main.css +++ b/css/main.css @@ -5,5 +5,4 @@ @import './help.css'; @import './query.css'; @import './supports.css'; -@import './terminal.css';