UNPKG

1.11 kBJavaScriptView Raw
1///@ts-check
2'use strict';
3var gulp = require('gulp');
4var rename = require('gulp-rename');
5const debug = require("../log/compile");
6const size = require('../log/size');
7var err = require('../log/error');
8var multiReplace = require('../lib/multi-replace');
9const pkgVar = require('../lib/package-var');
10var jsonMini = require('../lib/json-mini');
11
12var TITLE = 'json';
13/**
14 * 复制 Json文件
15 * @param {object} config
16 * @param {string|string[]} [jsonFile]
17 */
18function replaceJson(config, jsonFile) {
19 jsonFile = jsonFile || (config.src + '/**/*.{json,jsonc}');
20 return gulp.src(jsonFile, { base: config.src, ignore: config.exclude })
21 .pipe(debug({
22 title: TITLE,
23 // dist: config.dist,
24 distExt: '.json'
25 }))
26 .pipe(rename({ 'extname': '.json' }))
27 .pipe(jsonMini(!config.production))
28 .on('error', err(TITLE))
29 .pipe(multiReplace(pkgVar(config.var), undefined, '{{', '}}'))
30 .pipe(gulp.dest(config.dist))
31 .pipe(size({ title: TITLE, showFiles: true, showTotal: true }))
32 ;
33}
34
35module.exports = replaceJson;