@@ -2,6 +2,7 @@ const gulp = require('gulp')
22const sass = require ( 'gulp-sass' )
33const rename = require ( 'gulp-rename' )
44const cssnano = require ( 'gulp-cssnano' )
5+ const uglify = require ( 'gulp-uglify' )
56const sizereport = require ( 'gulp-sizereport' )
67const notify = require ( 'gulp-notify' )
78const postcss = require ( 'gulp-postcss' )
@@ -54,7 +55,7 @@ nunjucksRender.setDefaults({
5455/**
5556 * Build
5657 */
57- gulp . task ( 'build' , function ( ) {
58+ gulp . task ( 'build:css ' , function ( ) {
5859
5960 return gulp . src ( './point.scss' )
6061 . pipe ( sass ( {
@@ -68,20 +69,23 @@ gulp.task('build', function () {
6869 . pipe ( cssnano ( ) )
6970 . pipe ( rename ( { suffix : '.min' } ) )
7071 . pipe ( gulp . dest ( './dist' ) )
71- . pipe ( notify ( 'pointcss build successfully.' ) )
72+ . pipe ( notify ( 'css build successfully.' ) )
7273} )
7374
74- /**
75- * Size Report
76- */
77- gulp . task ( 'report' , function ( ) {
78- return gulp . src ( './dist/*' )
79- . pipe ( sizereport ( {
80- gzip : true
81- } ) )
75+ gulp . task ( 'build:js' , function ( ) {
76+
77+ return gulp . src ( './js/point.js' )
78+ . pipe ( header ( banner , { pkg : pkg } ) )
79+ . pipe ( gulp . dest ( './dist' ) )
80+ . pipe ( gulp . dest ( './docs/js' ) )
81+ . pipe ( uglify ( ) )
82+ . pipe ( header ( banner , { pkg : pkg } ) )
83+ . pipe ( rename ( { suffix : '.min' } ) )
84+ . pipe ( gulp . dest ( './dist' ) )
85+ . pipe ( notify ( 'js build successfully.' ) )
8286} )
8387
84- gulp . task ( 'docs:scss ' , function ( ) {
88+ gulp . task ( 'docs:css ' , function ( ) {
8589 return gulp . src ( './docs/src/_scss/style.scss' )
8690 . pipe ( sass ( {
8791 outputStyle : 'expanded' ,
@@ -92,19 +96,6 @@ gulp.task('docs:scss', function () {
9296 . pipe ( browserSync . stream ( ) )
9397} )
9498
95- gulp . task ( 'serve' , function ( done ) {
96- browserSync . init ( {
97- "server" : {
98- "baseDir" : "./docs"
99- }
100- } )
101- done ( )
102- } )
103-
104- gulp . task ( 'clean' , function ( ) {
105- return del ( [ 'docs/**' , '!docs/src' ] ) ;
106- } )
107-
10899gulp . task ( 'docs:html' , function ( ) {
109100 return gulp . src ( [
110101 'docs/src/content/*.md'
@@ -130,31 +121,59 @@ gulp.task('docs:html', function () {
130121
131122gulp . task ( 'docs:assets' , function ( ) {
132123 return gulp . src ( './docs/src/_assets/**/*' )
133- . pipe ( gulp . dest ( './docs' ) )
124+ . pipe ( gulp . dest ( './docs' ) )
134125} )
135126
136127/**
137- * Watcher
128+ * Dev
138129 */
130+ gulp . task ( 'serve' , function ( done ) {
131+ browserSync . init ( {
132+ "server" : {
133+ "baseDir" : "./docs"
134+ }
135+ } )
136+ done ( )
137+ } )
138+
139139gulp . task ( 'watch' , function ( ) {
140140 gulp . watch ( [
141141 './point.scss' ,
142142 './scss/**/*.scss'
143- ] , gulp . series ( 'build' ) )
143+ ] , gulp . series ( 'build:css' ) )
144+
145+ gulp . watch ( [
146+ './js/**/*.js'
147+ ] , gulp . series ( 'build:js' ) )
144148
145149 gulp . watch ( [
146150 './docs/src/_templates/*' ,
147151 './docs/src/**/*.md'
148152 ] , gulp . series ( 'docs:html' ) )
149153
150- gulp . watch ( './docs/src/_scss/**/*.scss' , gulp . series ( 'docs:scss ' ) )
154+ gulp . watch ( './docs/src/_scss/**/*.scss' , gulp . series ( 'docs:css ' ) )
151155 gulp . watch ( [ './docs/src/_assets/**/*' ] , gulp . series ( 'docs:assets' ) )
152156} )
153157
158+ /**
159+ * Common
160+ */
161+ gulp . task ( 'report' , function ( ) {
162+ return gulp . src ( './dist/*' )
163+ . pipe ( sizereport ( {
164+ gzip : true
165+ } ) )
166+ } )
167+
168+ gulp . task ( 'clean' , function ( ) {
169+ return del ( [ 'docs/**' , '!docs/src' ] ) ;
170+ } )
171+
154172/**
155173 * Scripts
156174 */
157- gulp . task ( 'docs' , gulp . series ( 'docs:scss' , 'docs:assets' , 'docs:html' ) )
175+ gulp . task ( 'build' , gulp . series ( 'build:css' , 'build:js' ) )
176+ gulp . task ( 'docs' , gulp . series ( 'docs:css' , 'docs:assets' , 'docs:html' ) )
158177gulp . task ( 'dev' , gulp . series (
159178 function ( done ) {
160179 isProd = false
0 commit comments