forked from UMAprotocol/docs_ui
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgulpfile.js
More file actions
90 lines (77 loc) · 2.42 KB
/
gulpfile.js
File metadata and controls
90 lines (77 loc) · 2.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
const { series, parallel, watch } = require('gulp');
const createTask = require('./gulp.d/lib/create-task');
const exportTasks = require('./gulp.d/lib/export-tasks');
const build = require('./gulp.d/tasks/build');
const buildPreview = require('./gulp.d/tasks/build-preview');
const buildDir = 'build';
const previewSrcDir = 'preview-src';
const previewDestDir = 'public';
const srcDir = 'src';
const destDir = `${previewDestDir}/`;
const { reload: livereload } =
process.env.LIVERELOAD === 'true' ? require('gulp-connect') : {};
const serverConfig = { host: '0.0.0.0', port: 5252, livereload };
const destTheme = '_theme';
const repositoryName = 'uma-docs-ui';
const task = require('./gulp.d/tasks');
const glob = {
all: [srcDir, previewSrcDir],
css: `${srcDir}/stylesheets/**/*.scss`,
js: ['gulpfile.js', 'gulp.d/**/*.js', `${srcDir}/{helpers,scripts}/**/*.js`],
};
const buildPreviewPagesTask = createTask({
name: 'preview:build-pages',
call: () => buildPreview(srcDir, destDir, destTheme, previewSrcDir),
});
const buildTask = createTask({
name: 'build',
desc: 'Build and stage the UI assets for bundling',
call: () =>
build(
srcDir,
`${destDir}${destTheme}`,
process.argv.slice(2).some((name) => name.startsWith('preview'))
),
});
const previewBuildTask = createTask({
name: 'preview:build',
desc: 'Process and stage the UI assets and generate pages for the preview',
call: series(buildTask, buildPreviewPagesTask),
});
const previewServeTask = createTask({
name: 'preview:serve',
call: task.serve(previewDestDir, serverConfig, () =>
watch(glob.all, previewBuildTask)
),
});
const previewTask = createTask({
name: 'preview',
desc: 'Generate a preview site and launch a server to view it',
call: series(previewBuildTask, previewServeTask),
});
const packTask = createTask({
name: 'pack',
call: () => task.pack(repositoryName, buildDir, `${destDir}${destTheme}`),
});
const bundleTask = createTask({
name: 'bundle',
desc: 'Bundle UI Theme into a ZIP file',
call: series(buildTask, packTask),
});
module.exports = exportTasks(
previewBuildTask,
previewTask,
previewServeTask,
buildTask,
buildPreviewPagesTask,
bundleTask
);
// gulp.task('release', ['pack'], () =>
// release({
// owner: config.get('repository.owner'),
// repo: config.get('repository.name'),
// token: config.get('github_token'),
// dest,
// })
// );
// gulp.task('update', () => update());