UNPKG

skypager-project-types-electron-app

Version:

skypager electron app project type

43 lines (35 loc) 1.21 kB
const { join } = require('path') export function packageInfo() { return { ...require('../../../package.json'), dirname: __dirname, filename: __filename, } } export function use(options = {}, context = {}, next) { try { attach.call(this, options, context) typeof next === 'function' && next() } catch(error) { typeof next === 'function' && next(error) } } export function attach(options = {}, context = {}) { const { project = this || this.project } = context const { features, assets, compilers, servers } = project compilers.add(require.context('../compilers', true, /\.js$/)) servers.add(require.context('../servers', false, /\.js$/)) if (assets) { const projectTypeAssets = __non_webpack_require__('../assets.js') projectTypeAssets.available.forEach(id => { assets.register(id, projectTypeAssets.lookup.bind(projectTypeAssets, id)) }) } if (project.isElectron) { __non_webpack_require__(join(__dirname,'helpers/application.js')).attach(project) __non_webpack_require__(join(__dirname,'helpers/panel.js')).attach(project) features.add( __non_webpack_require__(join(__dirname,'features/electron.js')) ) } }