1 |
|
2 | 'use strict';
|
3 | const npm = require('./npm-dependency');
|
4 | const logger = require('../log/logger');
|
5 |
|
6 | const REG_VAR = /\{\{package.([\w\d]*?)\}\}/g;
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 | function replaceVar(obj) {
|
13 | try {
|
14 | const pkg = npm.loadPackage(process.cwd());
|
15 | for (const k in obj) {
|
16 | if (obj.hasOwnProperty(k) && typeof obj[k] === "string") {
|
17 | obj[k] = obj[k].replace(REG_VAR, (m, key) => pkg[key]);
|
18 | }
|
19 | }
|
20 | } catch (e) {
|
21 | logger.warn('package.json load fail:');
|
22 | logger.warn(''+e);
|
23 | }
|
24 | return obj;
|
25 | }
|
26 |
|
27 | module.exports = replaceVar |
\ | No newline at end of file |