UNPKG

2.34 kBJavaScriptView Raw
1#!/usr/bin/env node
2
3/**
4 * @file Build this project.
5 */
6
7"use strict";
8
9process.chdir(__dirname + '/..');
10
11var uiContrib = require('apeman-tmpl-contrib-official/lib/ui_contrib'),
12 tasking = require('apeman-dev-commons-tasking'),
13 path = require('path'),
14 coz = require('coz'),
15 glob = require('glob'),
16 async = require('async');
17
18
19var pkg = require('../package.json');
20
21var apDependencies = [];
22
23tasking.runTasks([
24 function renderProject(callback) {
25 uiContrib.render({
26 pkg: pkg,
27 ignore: [],
28 year: new Date().getFullYear(),
29 get signature() {
30 try {
31 return require('../.signature');
32 } catch (e) {
33 return null;
34 }
35 },
36 get dependencies() {
37 var dependencies = {
38 'angular': '~1.4.3'
39 };
40 apDependencies.forEach(function (name) {
41 dependencies[name] = pkg["dependencies"][name];
42 });
43 return dependencies;
44 },
45 get docs() {
46 var docs = {};
47 glob.sync('assets/docs/**/*.md').filter(function (filename) {
48 return path.basename(filename) !== 'index.md';
49 }).forEach(function (filename) {
50 docs[path.basename(filename, '.md')] = filename;
51 });
52 return docs;
53 }
54 }, callback);
55 },
56 function renderAssets(callback) {
57 coz.render([
58 'assets/**/.*.bud'
59 ], callback);
60 },
61 function buildDependencies(callback) {
62 async.eachSeries(apDependencies, function (name, callback) {
63 var dist = require(name);
64 async.eachSeries([
65 'assets/test/dependencies',
66 'docs/demo/resources'
67 ], function (dest, callback) {
68 dist()({dest: dest}, callback);
69 }, callback);
70 }, callback);
71 },
72 function generateThis(callback) {
73 var dist = require('../dist');
74 async.eachSeries([
75 'assets/dist',
76 'docs/demo/resources'
77 ], function (dest, callback) {
78 dist()({dest: dest}, callback);
79 }, callback);
80 }
81], true);