UNPKG

1.31 kBJavaScriptView Raw
1#!/usr/bin/env node
2
3/**
4 * Compile files.
5 */
6
7'use strict'
8
9process.chdir(`${__dirname}/..`)
10
11const { runTasks } = require('ape-tasking')
12const ababel = require('ababel')
13const abrowserify = require('abrowserify')
14const fs = require('fs')
15const filelink = require('filelink')
16const co = require('co')
17const coz = require('coz')
18
19runTasks('compile', [
20 () => {
21 let libDir = `${__dirname}/../lib`
22 return ababel('*.jsx', {
23 cwd: libDir,
24 out: libDir,
25 presets: [ 'es2015', 'react' ]
26 })
27 },
28 () => {
29 let demoDir = `${__dirname}/../doc/demo`
30 return co(function * () {
31 if (!fs.existsSync(demoDir)) {
32 return
33 }
34 yield ababel('*.jsx', {
35 cwd: demoDir,
36 out: demoDir,
37 presets: [ 'es2015', 'react' ],
38 minified: true
39 })
40 yield coz.render(demoDir + '/.*.bud')
41 yield abrowserify(
42 `${demoDir}/demo.entrypoint.js`,
43 `${demoDir}/demo.js`,
44 {
45 debug: true,
46 external: require('apeman-asset-javascripts/src/demo.external.json')
47 })
48 yield filelink(
49 require.resolve('apeman-asset-javascripts/dist/demo.external.cc.js'),
50 `${demoDir}/demo.external.cc.js`,
51 {
52 force: true,
53 mkdirp: true
54 }
55 )
56 })
57 }
58], true)