正在显示
9 个修改的文件
包含
662 行增加
和
12 行删除
@@ -3,10 +3,16 @@ | @@ -3,10 +3,16 @@ | ||
3 | /** | 3 | /** |
4 | * Module dependencies. | 4 | * Module dependencies. |
5 | */ | 5 | */ |
6 | +var path = require('path'); | ||
6 | var commander = require('commander'); | 7 | var commander = require('commander'); |
7 | var inquirer = require('inquirer'); | 8 | var inquirer = require('inquirer'); |
9 | +var chalk = require('chalk'); | ||
10 | +var shell = require("shelljs"); | ||
11 | +var parseArgs = require('minimist'); | ||
12 | +const fse = require('fs-extra'); | ||
8 | var os = require('os'); | 13 | var os = require('os'); |
9 | const utils = require('./utils'); | 14 | const utils = require('./utils'); |
15 | + | ||
10 | // import config from '../workai.tools.config'; | 16 | // import config from '../workai.tools.config'; |
11 | 17 | ||
12 | var program = new commander.Command(); | 18 | var program = new commander.Command(); |
@@ -31,8 +37,8 @@ var program = new commander.Command(); | @@ -31,8 +37,8 @@ var program = new commander.Command(); | ||
31 | // console.log(answers); // 返回的结果 | 37 | // console.log(answers); // 返回的结果 |
32 | // }); | 38 | // }); |
33 | 39 | ||
34 | -program | ||
35 | - .version('0.0.1', '-v, --version') | 40 | +// program |
41 | +// .version('0.0.1', '-v, --version') | ||
36 | // .option('-p, --peppers', 'Add peppers') | 42 | // .option('-p, --peppers', 'Add peppers') |
37 | // .option('-P, --pineapple', 'Add pineapple') | 43 | // .option('-P, --pineapple', 'Add pineapple') |
38 | // .option('-b, --bbq-sauce', 'Add bbq sauce') | 44 | // .option('-b, --bbq-sauce', 'Add bbq sauce') |
@@ -51,14 +57,122 @@ program | @@ -51,14 +57,122 @@ program | ||
51 | // }) | 57 | // }) |
52 | // .parse(process.argv); | 58 | // .parse(process.argv); |
53 | program | 59 | program |
54 | - .version('0.0.3', '-b, --bersion') | ||
55 | - .parse(process.argv); | 60 | + .version('0.0.1') |
61 | + .usage('例子') | ||
62 | + .description('this is a lizi of commander'); | ||
63 | + | ||
56 | // console.log('you ordered a pizza with:'); | 64 | // console.log('you ordered a pizza with:'); |
57 | // if (program.peppers) console.log(' - peppers'); | 65 | // if (program.peppers) console.log(' - peppers'); |
58 | // if (program.pineapple) console.log(' - pineapple'); | 66 | // if (program.pineapple) console.log(' - pineapple'); |
59 | // if (program.bbqSauce) console.log(' - bbq'); | 67 | // if (program.bbqSauce) console.log(' - bbq'); |
60 | // console.log(' - %s cheese', program.cheese); | 68 | // console.log(' - %s cheese', program.cheese); |
69 | +program | ||
70 | + .command('hello [st]') | ||
71 | + .action(function (st, value) { | ||
72 | + hello(st, value); | ||
73 | + }) | ||
74 | + | ||
75 | +function hello(val, o) { | ||
76 | + console.log(val); | ||
77 | + console.log(1); | ||
78 | + console.log(o) | ||
79 | +} | ||
80 | + | ||
81 | + | ||
82 | + | ||
83 | + | ||
84 | + | ||
85 | +/*构建生命周期 | ||
86 | +* init 初始化项目 | ||
87 | +*/ | ||
88 | +program | ||
89 | + .command('init [templateName]') | ||
90 | + .alias('i') | ||
91 | + .description('初始化项目') | ||
92 | + .action(option => { | ||
93 | + // // 该对象用于存储所有与用户交互的数据 | ||
94 | + // let config = { | ||
95 | + // // 假设我们需要用户自定义项目名称 | ||
96 | + // projectName: null | ||
97 | + // }; | ||
98 | + // // 使用chalk打印美化的版本信息 | ||
99 | + // console.log(chalk.default.bold('hello v1.0.0')); | ||
100 | + | ||
101 | + // // 用于存储所有的交互步骤,例如让用户输入项目名称就是其中一个步骤 | ||
102 | + // let promps = []; | ||
103 | + // if (config.projectName === null) { | ||
104 | + // promps.push({ | ||
105 | + // type: 'input', | ||
106 | + // name: 'projectName', | ||
107 | + // message: '请输入项目名称', | ||
108 | + // validate: input => { | ||
109 | + // if (!input) { | ||
110 | + // return '项目名称不能为空'; | ||
111 | + // } | ||
112 | + // // 更新对象中属性的数据 | ||
113 | + // config.projectName = input; | ||
114 | + // return true; | ||
115 | + // } | ||
116 | + // }); | ||
117 | + // } | ||
118 | + | ||
119 | + // // 至此,与用户的所有交互均已完成,answers是收集到的用户所填的所有数据 | ||
120 | + // // 同时,这也是你开始操作的地方,这个cli工具的核心代码应该从这个地方开始 | ||
121 | + // inquirer.prompt(promps).then(async (answers) => { | ||
122 | + // // do something here | ||
123 | + // console.log("::::::", answers); | ||
124 | + // }); | ||
125 | + if (option == 'hro') { | ||
126 | + var hro_template_path = path.resolve(__dirname, '..', 'templates', 'hro_template'); | ||
127 | + console.log(hro_template_path); | ||
128 | + fse.copySync(hro_template_path, './hro_template', { | ||
129 | + filter: (src, dest) => { | ||
130 | + console.log(src); | ||
131 | + if (src.indexOf('node_modules') != -1) | ||
132 | + return false; | ||
133 | + else | ||
134 | + return true | ||
135 | + } | ||
136 | + }); | ||
137 | + shell.cd('./hro_template'); | ||
138 | + shell.exec('yarn install'); | ||
139 | + shell.exec('workai start'); | ||
140 | + } | ||
141 | + }); | ||
142 | + | ||
143 | + | ||
144 | +/* | ||
145 | +*开发模式启动项目 | ||
146 | +*/ | ||
147 | +program | ||
148 | + .command('start [projectPath]') | ||
149 | + .alias('dev') | ||
150 | + .description('开发模式启动') | ||
151 | + .action(option => { | ||
152 | + _checkEnv().then(flag => { | ||
153 | + console.log("222:::", flag, process.cwd(), path.resolve(__dirname), option); | ||
154 | + if (flag) { | ||
155 | + shell.exec('npx babel-node server/development.js'); | ||
156 | + } else { | ||
157 | + console.log("当前所在目录不是项目目录"); | ||
158 | + } | ||
159 | + }); | ||
160 | + }); | ||
161 | + | ||
162 | +function _checkEnv() { | ||
163 | + return utils.getPaths(["configs/webpack.**", "!node_modules"]).then(paths => { | ||
164 | + return paths.length > 0; | ||
165 | + }); | ||
166 | +} | ||
167 | + | ||
168 | +program | ||
169 | + .option('-s --save [value]', '保存'); | ||
170 | + | ||
171 | +program.parse(process.argv); | ||
61 | console.log(os.type(), os.platform()); | 172 | console.log(os.type(), os.platform()); |
62 | -utils.getPaths(["**", "!node_modules"]).then(paths => { | ||
63 | - console.log("##", paths); | ||
64 | -}); | ||
173 | +// utils.getPaths(["**", "!node_modules"]).then(paths => { | ||
174 | +// // console.log("##", paths); | ||
175 | +// }); | ||
176 | +if (program.save) { | ||
177 | + console.log(parseArgs(process.argv.slice(2))); | ||
178 | +} |
@@ -140,12 +140,44 @@ | @@ -140,12 +140,44 @@ | ||
140 | "js-tokens": "^4.0.0" | 140 | "js-tokens": "^4.0.0" |
141 | } | 141 | } |
142 | }, | 142 | }, |
143 | + "@babel/node": { | ||
144 | + "version": "7.4.5", | ||
145 | + "resolved": "https://registry.npm.taobao.org/@babel/node/download/@babel/node-7.4.5.tgz", | ||
146 | + "integrity": "sha1-vOcbtE2QK/3U2gucg5qKkPwIQFY=", | ||
147 | + "dev": true, | ||
148 | + "requires": { | ||
149 | + "@babel/polyfill": "^7.0.0", | ||
150 | + "@babel/register": "^7.0.0", | ||
151 | + "commander": "^2.8.1", | ||
152 | + "lodash": "^4.17.11", | ||
153 | + "node-environment-flags": "^1.0.5", | ||
154 | + "v8flags": "^3.1.1" | ||
155 | + } | ||
156 | + }, | ||
143 | "@babel/parser": { | 157 | "@babel/parser": { |
144 | "version": "7.4.5", | 158 | "version": "7.4.5", |
145 | "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.4.5.tgz", | 159 | "resolved": "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.4.5.tgz", |
146 | "integrity": "sha1-BK+NXVorBEoqG/+sweXmZzVE6HI=", | 160 | "integrity": "sha1-BK+NXVorBEoqG/+sweXmZzVE6HI=", |
147 | "dev": true | 161 | "dev": true |
148 | }, | 162 | }, |
163 | + "@babel/polyfill": { | ||
164 | + "version": "7.4.4", | ||
165 | + "resolved": "https://registry.npm.taobao.org/@babel/polyfill/download/@babel/polyfill-7.4.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fpolyfill%2Fdownload%2F%40babel%2Fpolyfill-7.4.4.tgz", | ||
166 | + "integrity": "sha1-eIAc89vmV4RO6r8xwcrjgoBR6JM=", | ||
167 | + "dev": true, | ||
168 | + "requires": { | ||
169 | + "core-js": "^2.6.5", | ||
170 | + "regenerator-runtime": "^0.13.2" | ||
171 | + }, | ||
172 | + "dependencies": { | ||
173 | + "core-js": { | ||
174 | + "version": "2.6.9", | ||
175 | + "resolved": "https://registry.npm.taobao.org/core-js/download/core-js-2.6.9.tgz?cache=0&sync_timestamp=1560599811627&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-js-2.6.9.tgz", | ||
176 | + "integrity": "sha1-a0shRiDINBUuF5Mjcn/Bl0GwhPI=", | ||
177 | + "dev": true | ||
178 | + } | ||
179 | + } | ||
180 | + }, | ||
149 | "@babel/register": { | 181 | "@babel/register": { |
150 | "version": "7.4.4", | 182 | "version": "7.4.4", |
151 | "resolved": "https://registry.npm.taobao.org/@babel/register/download/@babel/register-7.4.4.tgz", | 183 | "resolved": "https://registry.npm.taobao.org/@babel/register/download/@babel/register-7.4.4.tgz", |
@@ -713,6 +745,15 @@ | @@ -713,6 +745,15 @@ | ||
713 | } | 745 | } |
714 | } | 746 | } |
715 | }, | 747 | }, |
748 | + "define-properties": { | ||
749 | + "version": "1.1.3", | ||
750 | + "resolved": "http://registry.npm.taobao.org/define-properties/download/define-properties-1.1.3.tgz", | ||
751 | + "integrity": "sha1-z4jabL7ib+bbcJT2HYcMvYTO6fE=", | ||
752 | + "dev": true, | ||
753 | + "requires": { | ||
754 | + "object-keys": "^1.0.12" | ||
755 | + } | ||
756 | + }, | ||
716 | "define-property": { | 757 | "define-property": { |
717 | "version": "2.0.2", | 758 | "version": "2.0.2", |
718 | "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-2.0.2.tgz", | 759 | "resolved": "http://registry.npm.taobao.org/define-property/download/define-property-2.0.2.tgz", |
@@ -763,6 +804,20 @@ | @@ -763,6 +804,20 @@ | ||
763 | "path-type": "^3.0.0" | 804 | "path-type": "^3.0.0" |
764 | } | 805 | } |
765 | }, | 806 | }, |
807 | + "es-abstract": { | ||
808 | + "version": "1.13.0", | ||
809 | + "resolved": "http://registry.npm.taobao.org/es-abstract/download/es-abstract-1.13.0.tgz", | ||
810 | + "integrity": "sha1-rIYUX91QmdjdSVWMy6Lq+biOJOk=", | ||
811 | + "dev": true, | ||
812 | + "requires": { | ||
813 | + "es-to-primitive": "^1.2.0", | ||
814 | + "function-bind": "^1.1.1", | ||
815 | + "has": "^1.0.3", | ||
816 | + "is-callable": "^1.1.4", | ||
817 | + "is-regex": "^1.0.4", | ||
818 | + "object-keys": "^1.0.12" | ||
819 | + } | ||
820 | + }, | ||
766 | "es-checker": { | 821 | "es-checker": { |
767 | "version": "1.4.1", | 822 | "version": "1.4.1", |
768 | "resolved": "https://registry.npm.taobao.org/es-checker/download/es-checker-1.4.1.tgz", | 823 | "resolved": "https://registry.npm.taobao.org/es-checker/download/es-checker-1.4.1.tgz", |
@@ -815,6 +870,17 @@ | @@ -815,6 +870,17 @@ | ||
815 | } | 870 | } |
816 | } | 871 | } |
817 | }, | 872 | }, |
873 | + "es-to-primitive": { | ||
874 | + "version": "1.2.0", | ||
875 | + "resolved": "http://registry.npm.taobao.org/es-to-primitive/download/es-to-primitive-1.2.0.tgz", | ||
876 | + "integrity": "sha1-7fckeAM0VujdqO8J4ArZZQcH83c=", | ||
877 | + "dev": true, | ||
878 | + "requires": { | ||
879 | + "is-callable": "^1.1.4", | ||
880 | + "is-date-object": "^1.0.1", | ||
881 | + "is-symbol": "^1.0.2" | ||
882 | + } | ||
883 | + }, | ||
818 | "escape-string-regexp": { | 884 | "escape-string-regexp": { |
819 | "version": "1.0.5", | 885 | "version": "1.0.5", |
820 | "resolved": "https://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz", | 886 | "resolved": "https://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz", |
@@ -1581,6 +1647,12 @@ | @@ -1581,6 +1647,12 @@ | ||
1581 | } | 1647 | } |
1582 | } | 1648 | } |
1583 | }, | 1649 | }, |
1650 | + "function-bind": { | ||
1651 | + "version": "1.1.1", | ||
1652 | + "resolved": "http://registry.npm.taobao.org/function-bind/download/function-bind-1.1.1.tgz", | ||
1653 | + "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=", | ||
1654 | + "dev": true | ||
1655 | + }, | ||
1584 | "get-value": { | 1656 | "get-value": { |
1585 | "version": "2.0.6", | 1657 | "version": "2.0.6", |
1586 | "resolved": "http://registry.npm.taobao.org/get-value/download/get-value-2.0.6.tgz", | 1658 | "resolved": "http://registry.npm.taobao.org/get-value/download/get-value-2.0.6.tgz", |
@@ -1662,6 +1734,15 @@ | @@ -1662,6 +1734,15 @@ | ||
1662 | "integrity": "sha1-jY/cc5d8sEEEchy1NmbBymTNMos=", | 1734 | "integrity": "sha1-jY/cc5d8sEEEchy1NmbBymTNMos=", |
1663 | "dev": true | 1735 | "dev": true |
1664 | }, | 1736 | }, |
1737 | + "has": { | ||
1738 | + "version": "1.0.3", | ||
1739 | + "resolved": "http://registry.npm.taobao.org/has/download/has-1.0.3.tgz", | ||
1740 | + "integrity": "sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=", | ||
1741 | + "dev": true, | ||
1742 | + "requires": { | ||
1743 | + "function-bind": "^1.1.1" | ||
1744 | + } | ||
1745 | + }, | ||
1665 | "has-ansi": { | 1746 | "has-ansi": { |
1666 | "version": "2.0.0", | 1747 | "version": "2.0.0", |
1667 | "resolved": "http://registry.npm.taobao.org/has-ansi/download/has-ansi-2.0.0.tgz", | 1748 | "resolved": "http://registry.npm.taobao.org/has-ansi/download/has-ansi-2.0.0.tgz", |
@@ -1685,6 +1766,12 @@ | @@ -1685,6 +1766,12 @@ | ||
1685 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", | 1766 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", |
1686 | "dev": true | 1767 | "dev": true |
1687 | }, | 1768 | }, |
1769 | + "has-symbols": { | ||
1770 | + "version": "1.0.0", | ||
1771 | + "resolved": "http://registry.npm.taobao.org/has-symbols/download/has-symbols-1.0.0.tgz", | ||
1772 | + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", | ||
1773 | + "dev": true | ||
1774 | + }, | ||
1688 | "has-value": { | 1775 | "has-value": { |
1689 | "version": "1.0.0", | 1776 | "version": "1.0.0", |
1690 | "resolved": "http://registry.npm.taobao.org/has-value/download/has-value-1.0.0.tgz", | 1777 | "resolved": "http://registry.npm.taobao.org/has-value/download/has-value-1.0.0.tgz", |
@@ -1717,6 +1804,15 @@ | @@ -1717,6 +1804,15 @@ | ||
1717 | } | 1804 | } |
1718 | } | 1805 | } |
1719 | }, | 1806 | }, |
1807 | + "homedir-polyfill": { | ||
1808 | + "version": "1.0.3", | ||
1809 | + "resolved": "https://registry.npm.taobao.org/homedir-polyfill/download/homedir-polyfill-1.0.3.tgz", | ||
1810 | + "integrity": "sha1-dDKYzvTlrz4ZQWH7rcwhUdOgWOg=", | ||
1811 | + "dev": true, | ||
1812 | + "requires": { | ||
1813 | + "parse-passwd": "^1.0.0" | ||
1814 | + } | ||
1815 | + }, | ||
1720 | "iconv-lite": { | 1816 | "iconv-lite": { |
1721 | "version": "0.4.24", | 1817 | "version": "0.4.24", |
1722 | "resolved": "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz", | 1818 | "resolved": "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz", |
@@ -1811,6 +1907,12 @@ | @@ -1811,6 +1907,12 @@ | ||
1811 | "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", | 1907 | "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", |
1812 | "dev": true | 1908 | "dev": true |
1813 | }, | 1909 | }, |
1910 | + "is-callable": { | ||
1911 | + "version": "1.1.4", | ||
1912 | + "resolved": "http://registry.npm.taobao.org/is-callable/download/is-callable-1.1.4.tgz", | ||
1913 | + "integrity": "sha1-HhrfIZ4e62hNaR+dagX/DTCiTXU=", | ||
1914 | + "dev": true | ||
1915 | + }, | ||
1814 | "is-data-descriptor": { | 1916 | "is-data-descriptor": { |
1815 | "version": "0.1.4", | 1917 | "version": "0.1.4", |
1816 | "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", | 1918 | "resolved": "http://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", |
@@ -1831,6 +1933,12 @@ | @@ -1831,6 +1933,12 @@ | ||
1831 | } | 1933 | } |
1832 | } | 1934 | } |
1833 | }, | 1935 | }, |
1936 | + "is-date-object": { | ||
1937 | + "version": "1.0.1", | ||
1938 | + "resolved": "http://registry.npm.taobao.org/is-date-object/download/is-date-object-1.0.1.tgz", | ||
1939 | + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", | ||
1940 | + "dev": true | ||
1941 | + }, | ||
1834 | "is-descriptor": { | 1942 | "is-descriptor": { |
1835 | "version": "0.1.6", | 1943 | "version": "0.1.6", |
1836 | "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-0.1.6.tgz", | 1944 | "resolved": "http://registry.npm.taobao.org/is-descriptor/download/is-descriptor-0.1.6.tgz", |
@@ -1918,6 +2026,24 @@ | @@ -1918,6 +2026,24 @@ | ||
1918 | "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", | 2026 | "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", |
1919 | "dev": true | 2027 | "dev": true |
1920 | }, | 2028 | }, |
2029 | + "is-regex": { | ||
2030 | + "version": "1.0.4", | ||
2031 | + "resolved": "http://registry.npm.taobao.org/is-regex/download/is-regex-1.0.4.tgz", | ||
2032 | + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", | ||
2033 | + "dev": true, | ||
2034 | + "requires": { | ||
2035 | + "has": "^1.0.1" | ||
2036 | + } | ||
2037 | + }, | ||
2038 | + "is-symbol": { | ||
2039 | + "version": "1.0.2", | ||
2040 | + "resolved": "http://registry.npm.taobao.org/is-symbol/download/is-symbol-1.0.2.tgz", | ||
2041 | + "integrity": "sha1-oFX2rlcZLK7jKeeoYBGLSXqVDzg=", | ||
2042 | + "dev": true, | ||
2043 | + "requires": { | ||
2044 | + "has-symbols": "^1.0.0" | ||
2045 | + } | ||
2046 | + }, | ||
1921 | "is-windows": { | 2047 | "is-windows": { |
1922 | "version": "1.0.2", | 2048 | "version": "1.0.2", |
1923 | "resolved": "http://registry.npm.taobao.org/is-windows/download/is-windows-1.0.2.tgz", | 2049 | "resolved": "http://registry.npm.taobao.org/is-windows/download/is-windows-1.0.2.tgz", |
@@ -2136,6 +2262,24 @@ | @@ -2136,6 +2262,24 @@ | ||
2136 | "to-regex": "^3.0.1" | 2262 | "to-regex": "^3.0.1" |
2137 | } | 2263 | } |
2138 | }, | 2264 | }, |
2265 | + "node-environment-flags": { | ||
2266 | + "version": "1.0.6", | ||
2267 | + "resolved": "https://registry.npm.taobao.org/node-environment-flags/download/node-environment-flags-1.0.6.tgz", | ||
2268 | + "integrity": "sha1-owrBNiH299Z0JgpU3t4EjDmCwIg=", | ||
2269 | + "dev": true, | ||
2270 | + "requires": { | ||
2271 | + "object.getownpropertydescriptors": "^2.0.3", | ||
2272 | + "semver": "^5.7.0" | ||
2273 | + }, | ||
2274 | + "dependencies": { | ||
2275 | + "semver": { | ||
2276 | + "version": "5.7.0", | ||
2277 | + "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.0.tgz", | ||
2278 | + "integrity": "sha1-eQp89v6lRZuslhELKbYEEtyP+Ws=", | ||
2279 | + "dev": true | ||
2280 | + } | ||
2281 | + } | ||
2282 | + }, | ||
2139 | "node-modules-regexp": { | 2283 | "node-modules-regexp": { |
2140 | "version": "1.0.0", | 2284 | "version": "1.0.0", |
2141 | "resolved": "http://registry.npm.taobao.org/node-modules-regexp/download/node-modules-regexp-1.0.0.tgz", | 2285 | "resolved": "http://registry.npm.taobao.org/node-modules-regexp/download/node-modules-regexp-1.0.0.tgz", |
@@ -2180,6 +2324,12 @@ | @@ -2180,6 +2324,12 @@ | ||
2180 | } | 2324 | } |
2181 | } | 2325 | } |
2182 | }, | 2326 | }, |
2327 | + "object-keys": { | ||
2328 | + "version": "1.1.1", | ||
2329 | + "resolved": "https://registry.npm.taobao.org/object-keys/download/object-keys-1.1.1.tgz", | ||
2330 | + "integrity": "sha1-HEfyct8nfzsdrwYWd9nILiMixg4=", | ||
2331 | + "dev": true | ||
2332 | + }, | ||
2183 | "object-visit": { | 2333 | "object-visit": { |
2184 | "version": "1.0.1", | 2334 | "version": "1.0.1", |
2185 | "resolved": "http://registry.npm.taobao.org/object-visit/download/object-visit-1.0.1.tgz", | 2335 | "resolved": "http://registry.npm.taobao.org/object-visit/download/object-visit-1.0.1.tgz", |
@@ -2189,6 +2339,16 @@ | @@ -2189,6 +2339,16 @@ | ||
2189 | "isobject": "^3.0.0" | 2339 | "isobject": "^3.0.0" |
2190 | } | 2340 | } |
2191 | }, | 2341 | }, |
2342 | + "object.getownpropertydescriptors": { | ||
2343 | + "version": "2.0.3", | ||
2344 | + "resolved": "http://registry.npm.taobao.org/object.getownpropertydescriptors/download/object.getownpropertydescriptors-2.0.3.tgz", | ||
2345 | + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", | ||
2346 | + "dev": true, | ||
2347 | + "requires": { | ||
2348 | + "define-properties": "^1.1.2", | ||
2349 | + "es-abstract": "^1.5.1" | ||
2350 | + } | ||
2351 | + }, | ||
2192 | "object.pick": { | 2352 | "object.pick": { |
2193 | "version": "1.3.0", | 2353 | "version": "1.3.0", |
2194 | "resolved": "http://registry.npm.taobao.org/object.pick/download/object.pick-1.3.0.tgz", | 2354 | "resolved": "http://registry.npm.taobao.org/object.pick/download/object.pick-1.3.0.tgz", |
@@ -2257,6 +2417,12 @@ | @@ -2257,6 +2417,12 @@ | ||
2257 | "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", | 2417 | "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", |
2258 | "dev": true | 2418 | "dev": true |
2259 | }, | 2419 | }, |
2420 | + "parse-passwd": { | ||
2421 | + "version": "1.0.0", | ||
2422 | + "resolved": "http://registry.npm.taobao.org/parse-passwd/download/parse-passwd-1.0.0.tgz", | ||
2423 | + "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", | ||
2424 | + "dev": true | ||
2425 | + }, | ||
2260 | "pascalcase": { | 2426 | "pascalcase": { |
2261 | "version": "0.1.1", | 2427 | "version": "0.1.1", |
2262 | "resolved": "http://registry.npm.taobao.org/pascalcase/download/pascalcase-0.1.1.tgz", | 2428 | "resolved": "http://registry.npm.taobao.org/pascalcase/download/pascalcase-0.1.1.tgz", |
@@ -2378,6 +2544,12 @@ | @@ -2378,6 +2544,12 @@ | ||
2378 | "resolve": "^1.1.6" | 2544 | "resolve": "^1.1.6" |
2379 | } | 2545 | } |
2380 | }, | 2546 | }, |
2547 | + "regenerator-runtime": { | ||
2548 | + "version": "0.13.2", | ||
2549 | + "resolved": "https://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.13.2.tgz", | ||
2550 | + "integrity": "sha1-MuWcmm+5saSv8JtJMMotRHc0NEc=", | ||
2551 | + "dev": true | ||
2552 | + }, | ||
2381 | "regex-not": { | 2553 | "regex-not": { |
2382 | "version": "1.0.2", | 2554 | "version": "1.0.2", |
2383 | "resolved": "http://registry.npm.taobao.org/regex-not/download/regex-not-1.0.2.tgz", | 2555 | "resolved": "http://registry.npm.taobao.org/regex-not/download/regex-not-1.0.2.tgz", |
@@ -2952,6 +3124,15 @@ | @@ -2952,6 +3124,15 @@ | ||
2952 | "dev": true, | 3124 | "dev": true, |
2953 | "optional": true | 3125 | "optional": true |
2954 | }, | 3126 | }, |
3127 | + "v8flags": { | ||
3128 | + "version": "3.1.3", | ||
3129 | + "resolved": "https://registry.npm.taobao.org/v8flags/download/v8flags-3.1.3.tgz", | ||
3130 | + "integrity": "sha1-/J3CNSHKIMVDP4HMTrmzAzuxBdg=", | ||
3131 | + "dev": true, | ||
3132 | + "requires": { | ||
3133 | + "homedir-polyfill": "^1.0.1" | ||
3134 | + } | ||
3135 | + }, | ||
2955 | "wrappy": { | 3136 | "wrappy": { |
2956 | "version": "1.0.2", | 3137 | "version": "1.0.2", |
2957 | "resolved": "http://registry.npm.taobao.org/wrappy/download/wrappy-1.0.2.tgz", | 3138 | "resolved": "http://registry.npm.taobao.org/wrappy/download/wrappy-1.0.2.tgz", |
@@ -18,10 +18,12 @@ | @@ -18,10 +18,12 @@ | ||
18 | "devDependencies": { | 18 | "devDependencies": { |
19 | "@babel/cli": "^7.4.4", | 19 | "@babel/cli": "^7.4.4", |
20 | "@babel/core": "^7.4.5", | 20 | "@babel/core": "^7.4.5", |
21 | + "@babel/node": "^7.4.5", | ||
21 | "@babel/register": "^7.4.4", | 22 | "@babel/register": "^7.4.4", |
22 | "chalk": "^2.4.2", | 23 | "chalk": "^2.4.2", |
23 | "commander": "^2.20.0", | 24 | "commander": "^2.20.0", |
24 | "es-checker": "^1.4.1", | 25 | "es-checker": "^1.4.1", |
26 | + "fs-extra": "^8.1.0", | ||
25 | "git-clone": "^0.1.0", | 27 | "git-clone": "^0.1.0", |
26 | "globby": "^9.2.0", | 28 | "globby": "^9.2.0", |
27 | "inquirer": "^6.4.1", | 29 | "inquirer": "^6.4.1", |
1 | import path from 'path'; | 1 | import path from 'path'; |
2 | import webpack from 'webpack'; | 2 | import webpack from 'webpack'; |
3 | import HtmlWebpackPlugin from 'html-webpack-plugin'; | 3 | import HtmlWebpackPlugin from 'html-webpack-plugin'; |
4 | +import OpenBrowserPlugin from 'open-browser-webpack-plugin'; | ||
4 | 5 | ||
5 | const rootPath = path.resolve(__dirname, '..'); | 6 | const rootPath = path.resolve(__dirname, '..'); |
6 | 7 | ||
@@ -58,7 +59,8 @@ module.exports = { | @@ -58,7 +59,8 @@ module.exports = { | ||
58 | "filename": path.resolve(rootPath, 'build', 'index.html'), | 59 | "filename": path.resolve(rootPath, 'build', 'index.html'), |
59 | "inject": 'body', | 60 | "inject": 'body', |
60 | "template": path.resolve(rootPath, 'src', 'index-template.html') | 61 | "template": path.resolve(rootPath, 'src', 'index-template.html') |
61 | - }) | 62 | + }), |
63 | + new OpenBrowserPlugin({ url: 'http://localhost:3000' }) | ||
62 | ], | 64 | ], |
63 | resolve: { | 65 | resolve: { |
64 | alias: { | 66 | alias: { |
1 | +import path from 'path'; | ||
2 | +import webpack from 'webpack'; | ||
3 | +import HtmlWebpackPlugin from 'html-webpack-plugin'; | ||
4 | + | ||
5 | +const rootPath = path.resolve(__dirname, '..'); | ||
6 | + | ||
7 | +const vendor = [ | ||
8 | + "classnames", | ||
9 | + "connected-react-router", | ||
10 | + "es6-promise", | ||
11 | + "history", | ||
12 | + "isomorphic-fetch", | ||
13 | + "localforage", | ||
14 | + "plupload", | ||
15 | + "rc-animate", | ||
16 | + "react", | ||
17 | + "react-dom", | ||
18 | + "react-loadable", | ||
19 | + "react-redux", | ||
20 | + "react-router", | ||
21 | + "react-router-dom", | ||
22 | + "reduce-reducers", | ||
23 | + "redux", | ||
24 | + "redux-form", | ||
25 | + "redux-saga" | ||
26 | +]; | ||
27 | + | ||
28 | + | ||
29 | +module.exports = { | ||
30 | + entry: { | ||
31 | + vendor: vendor | ||
32 | + }, | ||
33 | + output: { | ||
34 | + path: path.resolve(rootPath, 'temp_build'), | ||
35 | + filename: '[name].[chunkhash].js', | ||
36 | + library: '[name]_[chunkhash]', | ||
37 | + publicPath: '/' | ||
38 | + }, | ||
39 | + cache: true, | ||
40 | + mode: 'production', | ||
41 | + stats: { | ||
42 | + assets: true, | ||
43 | + assetsSort: 'chunks', | ||
44 | + children: false, | ||
45 | + colors: true, | ||
46 | + reasons: false, | ||
47 | + hash: false, | ||
48 | + env: true, | ||
49 | + version: true, | ||
50 | + timings: true, | ||
51 | + chunks: false, | ||
52 | + chunkGroups: false, | ||
53 | + chunkModules: false, | ||
54 | + chunkOrigins: false, | ||
55 | + modules: false, | ||
56 | + cached: false, | ||
57 | + moduleTrace: false, | ||
58 | + performance: true, | ||
59 | + warnings: false, | ||
60 | + cachedAssets: false | ||
61 | + }, | ||
62 | + plugins: [ | ||
63 | + new webpack.DllPlugin({ | ||
64 | + path: path.resolve(rootPath, 'temp_build', '[name].manifest.json'), | ||
65 | + name: '[name]_[chunkhash]' | ||
66 | + }), | ||
67 | + new HtmlWebpackPlugin({ | ||
68 | + "title": 'Custom template', | ||
69 | + "csrfToken": '<%=htmlWebpackPlugin.options.csrfToken%>', | ||
70 | + "filename": path.resolve(rootPath, 'temp_build', 'index-production.html'), | ||
71 | + "inject": 'head', | ||
72 | + "template": path.resolve(rootPath, 'src', 'index-template.html') | ||
73 | + }) | ||
74 | + ] | ||
75 | +}; |
1 | +import path from 'path'; | ||
2 | +import webpack from 'webpack'; | ||
3 | +import HtmlWebpackPlugin from 'html-webpack-plugin'; | ||
4 | +import UglifyJsPlugin from 'uglifyjs-webpack-plugin'; | ||
5 | +import MiniCssExtractPlugin from 'mini-css-extract-plugin'; | ||
6 | +import OptimizeCSSAssetsPlugin from 'optimize-css-assets-webpack-plugin'; | ||
7 | +import HappyPack from 'happypack'; | ||
8 | +import os from 'os'; | ||
9 | + | ||
10 | +const rootPath = path.resolve(__dirname, '..'); | ||
11 | + | ||
12 | +const happyThreadPool = HappyPack.ThreadPool({ size: os.cpus().length }); | ||
13 | + | ||
14 | +module.exports = { | ||
15 | + entry: { | ||
16 | + app: [path.resolve(rootPath, 'src', 'index.js')] | ||
17 | + }, | ||
18 | + output: { | ||
19 | + filename: '[name].[chunkhash].bundle.js', | ||
20 | + path: path.resolve(rootPath, 'build'), | ||
21 | + publicPath: '/' | ||
22 | + }, | ||
23 | + module: { | ||
24 | + rules: [{ | ||
25 | + test: /\.(js|jsx?)$/, | ||
26 | + use: 'happypack/loader?id=jsx', | ||
27 | + exclude: [ | ||
28 | + path.resolve(rootPath, 'node_modules') | ||
29 | + ] | ||
30 | + }, { | ||
31 | + test: /\.less$/, | ||
32 | + use: 'happypack/loader?id=style' | ||
33 | + }, { | ||
34 | + test: /\.css$/, | ||
35 | + use: [ | ||
36 | + MiniCssExtractPlugin.loader, | ||
37 | + { | ||
38 | + loader: "css-loader" | ||
39 | + }] | ||
40 | + }] | ||
41 | + }, | ||
42 | + devtool: false,//'source-map',// | ||
43 | + cache: true, | ||
44 | + mode: 'production', | ||
45 | + stats: { | ||
46 | + assets: true, | ||
47 | + assetsSort: 'chunks', | ||
48 | + children: false, | ||
49 | + colors: true, | ||
50 | + reasons: false, | ||
51 | + hash: false, | ||
52 | + env: true, | ||
53 | + version: true, | ||
54 | + timings: true, | ||
55 | + chunks: false, | ||
56 | + chunkGroups: false, | ||
57 | + chunkModules: false, | ||
58 | + chunkOrigins: false, | ||
59 | + modules: false, | ||
60 | + cached: false, | ||
61 | + moduleTrace: false, | ||
62 | + performance: true, | ||
63 | + warnings: false, | ||
64 | + cachedAssets: false | ||
65 | + }, | ||
66 | + resolve: { | ||
67 | + alias: { | ||
68 | + src: path.resolve(rootPath, 'src') | ||
69 | + } | ||
70 | + }, | ||
71 | + optimization: { | ||
72 | + minimize: false, | ||
73 | + minimizer: [ | ||
74 | + new UglifyJsPlugin({ | ||
75 | + parallel: true, | ||
76 | + uglifyOptions: { | ||
77 | + compress: { | ||
78 | + warnings: true, | ||
79 | + drop_debugger: true, | ||
80 | + drop_console: true | ||
81 | + } | ||
82 | + } | ||
83 | + }), | ||
84 | + new OptimizeCSSAssetsPlugin({}) | ||
85 | + ] | ||
86 | + }, | ||
87 | + plugins: [ | ||
88 | + new webpack.DefinePlugin({ | ||
89 | + "window.evn": JSON.stringify('production') | ||
90 | + }), | ||
91 | + new HappyPack({ | ||
92 | + id: 'jsx', | ||
93 | + threadPool: happyThreadPool, | ||
94 | + loaders: [{ | ||
95 | + loader: "babel-loader", | ||
96 | + options: { | ||
97 | + presets: ["env", "react", "stage-0"], | ||
98 | + plugins: [["import", { "libraryName": "antd" }, "ant"]] | ||
99 | + } | ||
100 | + }] | ||
101 | + }), | ||
102 | + new HappyPack({ | ||
103 | + id: 'style', | ||
104 | + threadPool: happyThreadPool, | ||
105 | + loaders: [{ | ||
106 | + loader: "style-loader" | ||
107 | + }, { | ||
108 | + loader: "css-loader" | ||
109 | + }, { | ||
110 | + loader: "less-loader", | ||
111 | + options: { | ||
112 | + paths: [ | ||
113 | + path.resolve(rootPath, "node_modules") | ||
114 | + ] | ||
115 | + } | ||
116 | + }] | ||
117 | + }), | ||
118 | + new HtmlWebpackPlugin({ | ||
119 | + title: '小爱科技', | ||
120 | + "filename": path.resolve(rootPath, 'build', 'index.html'), | ||
121 | + "inject": 'body', | ||
122 | + "template": path.resolve(rootPath, 'temp_build', 'index-production.html') | ||
123 | + }), | ||
124 | + new webpack.HashedModuleIdsPlugin({ | ||
125 | + hashFunction: 'sha256', | ||
126 | + hashDigest: 'hex', | ||
127 | + hashDigestLength: 20 | ||
128 | + }), | ||
129 | + new MiniCssExtractPlugin({ | ||
130 | + filename: '[name].[contenthash].css' | ||
131 | + }), | ||
132 | + new webpack.DllReferencePlugin({ | ||
133 | + context: '.', | ||
134 | + manifest: require('../temp_build/vendor.manifest.json') | ||
135 | + }) | ||
136 | + ] | ||
137 | +}; |
@@ -36,6 +36,7 @@ | @@ -36,6 +36,7 @@ | ||
36 | "html-webpack-plugin": "^3.2.0", | 36 | "html-webpack-plugin": "^3.2.0", |
37 | "less": "^3.9.0", | 37 | "less": "^3.9.0", |
38 | "less-loader": "^5.0.0", | 38 | "less-loader": "^5.0.0", |
39 | + "open-browser-webpack-plugin": "^0.0.5", | ||
39 | "style-loader": "^0.23.1", | 40 | "style-loader": "^0.23.1", |
40 | "webpack": "^4.35.2", | 41 | "webpack": "^4.35.2", |
41 | "webpack-dev-middleware": "^3.7.0", | 42 | "webpack-dev-middleware": "^3.7.0", |
@@ -89,11 +89,29 @@ | @@ -89,11 +89,29 @@ | ||
89 | esutils "^2.0.2" | 89 | esutils "^2.0.2" |
90 | js-tokens "^4.0.0" | 90 | js-tokens "^4.0.0" |
91 | 91 | ||
92 | +"@babel/node@^7.4.5": | ||
93 | + version "7.4.5" | ||
94 | + resolved "https://registry.npm.taobao.org/@babel/node/download/@babel/node-7.4.5.tgz#bce71bb44d902bfdd4da0b9c839a8a90fc084056" | ||
95 | + dependencies: | ||
96 | + "@babel/polyfill" "^7.0.0" | ||
97 | + "@babel/register" "^7.0.0" | ||
98 | + commander "^2.8.1" | ||
99 | + lodash "^4.17.11" | ||
100 | + node-environment-flags "^1.0.5" | ||
101 | + v8flags "^3.1.1" | ||
102 | + | ||
92 | "@babel/parser@^7.4.4", "@babel/parser@^7.4.5": | 103 | "@babel/parser@^7.4.4", "@babel/parser@^7.4.5": |
93 | version "7.4.5" | 104 | version "7.4.5" |
94 | resolved "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.4.5.tgz#04af8d5d5a2b044a2a1bffacc1e5e6673544e872" | 105 | resolved "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.4.5.tgz#04af8d5d5a2b044a2a1bffacc1e5e6673544e872" |
95 | 106 | ||
96 | -"@babel/register@^7.4.4": | 107 | +"@babel/polyfill@^7.0.0": |
108 | + version "7.4.4" | ||
109 | + resolved "https://registry.npm.taobao.org/@babel/polyfill/download/@babel/polyfill-7.4.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fpolyfill%2Fdownload%2F%40babel%2Fpolyfill-7.4.4.tgz#78801cf3dbe657844eeabf31c1cae3828051e893" | ||
110 | + dependencies: | ||
111 | + core-js "^2.6.5" | ||
112 | + regenerator-runtime "^0.13.2" | ||
113 | + | ||
114 | +"@babel/register@^7.0.0", "@babel/register@^7.4.4": | ||
97 | version "7.4.4" | 115 | version "7.4.4" |
98 | resolved "https://registry.npm.taobao.org/@babel/register/download/@babel/register-7.4.4.tgz#370a68ba36f08f015a8b35d4864176c6b65d7a23" | 116 | resolved "https://registry.npm.taobao.org/@babel/register/download/@babel/register-7.4.4.tgz#370a68ba36f08f015a8b35d4864176c6b65d7a23" |
99 | dependencies: | 117 | dependencies: |
@@ -445,6 +463,10 @@ copy-descriptor@^0.1.0: | @@ -445,6 +463,10 @@ copy-descriptor@^0.1.0: | ||
445 | version "0.1.1" | 463 | version "0.1.1" |
446 | resolved "https://registry.npm.taobao.org/copy-descriptor/download/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" | 464 | resolved "https://registry.npm.taobao.org/copy-descriptor/download/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" |
447 | 465 | ||
466 | +core-js@^2.6.5: | ||
467 | + version "2.6.9" | ||
468 | + resolved "https://registry.npm.taobao.org/core-js/download/core-js-2.6.9.tgz?cache=0&sync_timestamp=1560599811627&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-js-2.6.9.tgz#6b4b214620c834152e179323727fc19741b084f2" | ||
469 | + | ||
448 | core-js@^3.0.0: | 470 | core-js@^3.0.0: |
449 | version "3.1.4" | 471 | version "3.1.4" |
450 | resolved "https://registry.npm.taobao.org/core-js/download/core-js-3.1.4.tgz?cache=0&sync_timestamp=1560599811627&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-js-3.1.4.tgz#3a2837fc48e582e1ae25907afcd6cf03b0cc7a07" | 472 | resolved "https://registry.npm.taobao.org/core-js/download/core-js-3.1.4.tgz?cache=0&sync_timestamp=1560599811627&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-js-3.1.4.tgz#3a2837fc48e582e1ae25907afcd6cf03b0cc7a07" |
@@ -489,6 +511,12 @@ deep-extend@^0.6.0: | @@ -489,6 +511,12 @@ deep-extend@^0.6.0: | ||
489 | version "0.6.0" | 511 | version "0.6.0" |
490 | resolved "https://registry.npm.taobao.org/deep-extend/download/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" | 512 | resolved "https://registry.npm.taobao.org/deep-extend/download/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" |
491 | 513 | ||
514 | +define-properties@^1.1.2: | ||
515 | + version "1.1.3" | ||
516 | + resolved "https://registry.npm.taobao.org/define-properties/download/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" | ||
517 | + dependencies: | ||
518 | + object-keys "^1.0.12" | ||
519 | + | ||
492 | define-property@^0.2.5: | 520 | define-property@^0.2.5: |
493 | version "0.2.5" | 521 | version "0.2.5" |
494 | resolved "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" | 522 | resolved "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" |
@@ -522,6 +550,17 @@ dir-glob@^2.2.2: | @@ -522,6 +550,17 @@ dir-glob@^2.2.2: | ||
522 | dependencies: | 550 | dependencies: |
523 | path-type "^3.0.0" | 551 | path-type "^3.0.0" |
524 | 552 | ||
553 | +es-abstract@^1.5.1: | ||
554 | + version "1.13.0" | ||
555 | + resolved "https://registry.npm.taobao.org/es-abstract/download/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" | ||
556 | + dependencies: | ||
557 | + es-to-primitive "^1.2.0" | ||
558 | + function-bind "^1.1.1" | ||
559 | + has "^1.0.3" | ||
560 | + is-callable "^1.1.4" | ||
561 | + is-regex "^1.0.4" | ||
562 | + object-keys "^1.0.12" | ||
563 | + | ||
525 | es-checker@^1.4.1: | 564 | es-checker@^1.4.1: |
526 | version "1.4.1" | 565 | version "1.4.1" |
527 | resolved "https://registry.npm.taobao.org/es-checker/download/es-checker-1.4.1.tgz#b67c338c0023ac914d9ad5ec0a23ace8e91063f7" | 566 | resolved "https://registry.npm.taobao.org/es-checker/download/es-checker-1.4.1.tgz#b67c338c0023ac914d9ad5ec0a23ace8e91063f7" |
@@ -529,6 +568,14 @@ es-checker@^1.4.1: | @@ -529,6 +568,14 @@ es-checker@^1.4.1: | ||
529 | chai "^3.0.0" | 568 | chai "^3.0.0" |
530 | chalk "^1.0.0" | 569 | chalk "^1.0.0" |
531 | 570 | ||
571 | +es-to-primitive@^1.2.0: | ||
572 | + version "1.2.0" | ||
573 | + resolved "https://registry.npm.taobao.org/es-to-primitive/download/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" | ||
574 | + dependencies: | ||
575 | + is-callable "^1.1.4" | ||
576 | + is-date-object "^1.0.1" | ||
577 | + is-symbol "^1.0.2" | ||
578 | + | ||
532 | escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: | 579 | escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: |
533 | version "1.0.5" | 580 | version "1.0.5" |
534 | resolved "https://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fescape-string-regexp%2Fdownload%2Fescape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" | 581 | resolved "https://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fescape-string-regexp%2Fdownload%2Fescape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" |
@@ -633,6 +680,14 @@ fragment-cache@^0.2.1: | @@ -633,6 +680,14 @@ fragment-cache@^0.2.1: | ||
633 | dependencies: | 680 | dependencies: |
634 | map-cache "^0.2.2" | 681 | map-cache "^0.2.2" |
635 | 682 | ||
683 | +fs-extra@^8.1.0: | ||
684 | + version "8.1.0" | ||
685 | + resolved "https://registry.npm.taobao.org/fs-extra/download/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" | ||
686 | + dependencies: | ||
687 | + graceful-fs "^4.2.0" | ||
688 | + jsonfile "^4.0.0" | ||
689 | + universalify "^0.1.0" | ||
690 | + | ||
636 | fs-minipass@^1.2.5: | 691 | fs-minipass@^1.2.5: |
637 | version "1.2.6" | 692 | version "1.2.6" |
638 | resolved "https://registry.npm.taobao.org/fs-minipass/download/fs-minipass-1.2.6.tgz#2c5cc30ded81282bfe8a0d7c7c1853ddeb102c07" | 693 | resolved "https://registry.npm.taobao.org/fs-minipass/download/fs-minipass-1.2.6.tgz#2c5cc30ded81282bfe8a0d7c7c1853ddeb102c07" |
@@ -654,6 +709,10 @@ fsevents@^1.2.7: | @@ -654,6 +709,10 @@ fsevents@^1.2.7: | ||
654 | nan "^2.12.1" | 709 | nan "^2.12.1" |
655 | node-pre-gyp "^0.12.0" | 710 | node-pre-gyp "^0.12.0" |
656 | 711 | ||
712 | +function-bind@^1.1.1: | ||
713 | + version "1.1.1" | ||
714 | + resolved "https://registry.npm.taobao.org/function-bind/download/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" | ||
715 | + | ||
657 | gauge@~2.7.3: | 716 | gauge@~2.7.3: |
658 | version "2.7.4" | 717 | version "2.7.4" |
659 | resolved "https://registry.npm.taobao.org/gauge/download/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" | 718 | resolved "https://registry.npm.taobao.org/gauge/download/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" |
@@ -714,7 +773,7 @@ globby@^9.2.0: | @@ -714,7 +773,7 @@ globby@^9.2.0: | ||
714 | pify "^4.0.1" | 773 | pify "^4.0.1" |
715 | slash "^2.0.0" | 774 | slash "^2.0.0" |
716 | 775 | ||
717 | -graceful-fs@^4.1.11: | 776 | +graceful-fs@^4.1.11, graceful-fs@^4.1.6, graceful-fs@^4.2.0: |
718 | version "4.2.0" | 777 | version "4.2.0" |
719 | resolved "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.2.0.tgz#8d8fdc73977cb04104721cb53666c1ca64cd328b" | 778 | resolved "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.2.0.tgz#8d8fdc73977cb04104721cb53666c1ca64cd328b" |
720 | 779 | ||
@@ -728,6 +787,10 @@ has-flag@^3.0.0: | @@ -728,6 +787,10 @@ has-flag@^3.0.0: | ||
728 | version "3.0.0" | 787 | version "3.0.0" |
729 | resolved "https://registry.npm.taobao.org/has-flag/download/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" | 788 | resolved "https://registry.npm.taobao.org/has-flag/download/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" |
730 | 789 | ||
790 | +has-symbols@^1.0.0: | ||
791 | + version "1.0.0" | ||
792 | + resolved "https://registry.npm.taobao.org/has-symbols/download/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" | ||
793 | + | ||
731 | has-unicode@^2.0.0: | 794 | has-unicode@^2.0.0: |
732 | version "2.0.1" | 795 | version "2.0.1" |
733 | resolved "https://registry.npm.taobao.org/has-unicode/download/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" | 796 | resolved "https://registry.npm.taobao.org/has-unicode/download/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" |
@@ -759,6 +822,18 @@ has-values@^1.0.0: | @@ -759,6 +822,18 @@ has-values@^1.0.0: | ||
759 | is-number "^3.0.0" | 822 | is-number "^3.0.0" |
760 | kind-of "^4.0.0" | 823 | kind-of "^4.0.0" |
761 | 824 | ||
825 | +has@^1.0.1, has@^1.0.3: | ||
826 | + version "1.0.3" | ||
827 | + resolved "https://registry.npm.taobao.org/has/download/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" | ||
828 | + dependencies: | ||
829 | + function-bind "^1.1.1" | ||
830 | + | ||
831 | +homedir-polyfill@^1.0.1: | ||
832 | + version "1.0.3" | ||
833 | + resolved "https://registry.npm.taobao.org/homedir-polyfill/download/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" | ||
834 | + dependencies: | ||
835 | + parse-passwd "^1.0.0" | ||
836 | + | ||
762 | iconv-lite@^0.4.24, iconv-lite@^0.4.4: | 837 | iconv-lite@^0.4.24, iconv-lite@^0.4.4: |
763 | version "0.4.24" | 838 | version "0.4.24" |
764 | resolved "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" | 839 | resolved "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" |
@@ -834,6 +909,10 @@ is-buffer@^1.1.5: | @@ -834,6 +909,10 @@ is-buffer@^1.1.5: | ||
834 | version "1.1.6" | 909 | version "1.1.6" |
835 | resolved "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" | 910 | resolved "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" |
836 | 911 | ||
912 | +is-callable@^1.1.4: | ||
913 | + version "1.1.4" | ||
914 | + resolved "https://registry.npm.taobao.org/is-callable/download/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" | ||
915 | + | ||
837 | is-data-descriptor@^0.1.4: | 916 | is-data-descriptor@^0.1.4: |
838 | version "0.1.4" | 917 | version "0.1.4" |
839 | resolved "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" | 918 | resolved "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" |
@@ -846,6 +925,10 @@ is-data-descriptor@^1.0.0: | @@ -846,6 +925,10 @@ is-data-descriptor@^1.0.0: | ||
846 | dependencies: | 925 | dependencies: |
847 | kind-of "^6.0.0" | 926 | kind-of "^6.0.0" |
848 | 927 | ||
928 | +is-date-object@^1.0.1: | ||
929 | + version "1.0.1" | ||
930 | + resolved "https://registry.npm.taobao.org/is-date-object/download/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" | ||
931 | + | ||
849 | is-descriptor@^0.1.0: | 932 | is-descriptor@^0.1.0: |
850 | version "0.1.6" | 933 | version "0.1.6" |
851 | resolved "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" | 934 | resolved "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" |
@@ -918,6 +1001,18 @@ is-promise@^2.1.0: | @@ -918,6 +1001,18 @@ is-promise@^2.1.0: | ||
918 | version "2.1.0" | 1001 | version "2.1.0" |
919 | resolved "https://registry.npm.taobao.org/is-promise/download/is-promise-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-promise%2Fdownload%2Fis-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" | 1002 | resolved "https://registry.npm.taobao.org/is-promise/download/is-promise-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-promise%2Fdownload%2Fis-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" |
920 | 1003 | ||
1004 | +is-regex@^1.0.4: | ||
1005 | + version "1.0.4" | ||
1006 | + resolved "https://registry.npm.taobao.org/is-regex/download/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" | ||
1007 | + dependencies: | ||
1008 | + has "^1.0.1" | ||
1009 | + | ||
1010 | +is-symbol@^1.0.2: | ||
1011 | + version "1.0.2" | ||
1012 | + resolved "https://registry.npm.taobao.org/is-symbol/download/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" | ||
1013 | + dependencies: | ||
1014 | + has-symbols "^1.0.0" | ||
1015 | + | ||
921 | is-windows@^1.0.2: | 1016 | is-windows@^1.0.2: |
922 | version "1.0.2" | 1017 | version "1.0.2" |
923 | resolved "https://registry.npm.taobao.org/is-windows/download/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" | 1018 | resolved "https://registry.npm.taobao.org/is-windows/download/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" |
@@ -950,6 +1045,12 @@ json5@^2.1.0: | @@ -950,6 +1045,12 @@ json5@^2.1.0: | ||
950 | dependencies: | 1045 | dependencies: |
951 | minimist "^1.2.0" | 1046 | minimist "^1.2.0" |
952 | 1047 | ||
1048 | +jsonfile@^4.0.0: | ||
1049 | + version "4.0.0" | ||
1050 | + resolved "https://registry.npm.taobao.org/jsonfile/download/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" | ||
1051 | + optionalDependencies: | ||
1052 | + graceful-fs "^4.1.6" | ||
1053 | + | ||
953 | kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: | 1054 | kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: |
954 | version "3.2.2" | 1055 | version "3.2.2" |
955 | resolved "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" | 1056 | resolved "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" |
@@ -1104,6 +1205,13 @@ needle@^2.2.1: | @@ -1104,6 +1205,13 @@ needle@^2.2.1: | ||
1104 | iconv-lite "^0.4.4" | 1205 | iconv-lite "^0.4.4" |
1105 | sax "^1.2.4" | 1206 | sax "^1.2.4" |
1106 | 1207 | ||
1208 | +node-environment-flags@^1.0.5: | ||
1209 | + version "1.0.6" | ||
1210 | + resolved "https://registry.npm.taobao.org/node-environment-flags/download/node-environment-flags-1.0.6.tgz#a30ac13621f6f7d674260a54dede048c3982c088" | ||
1211 | + dependencies: | ||
1212 | + object.getownpropertydescriptors "^2.0.3" | ||
1213 | + semver "^5.7.0" | ||
1214 | + | ||
1107 | node-modules-regexp@^1.0.0: | 1215 | node-modules-regexp@^1.0.0: |
1108 | version "1.0.0" | 1216 | version "1.0.0" |
1109 | resolved "https://registry.npm.taobao.org/node-modules-regexp/download/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" | 1217 | resolved "https://registry.npm.taobao.org/node-modules-regexp/download/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" |
@@ -1176,12 +1284,23 @@ object-copy@^0.1.0: | @@ -1176,12 +1284,23 @@ object-copy@^0.1.0: | ||
1176 | define-property "^0.2.5" | 1284 | define-property "^0.2.5" |
1177 | kind-of "^3.0.3" | 1285 | kind-of "^3.0.3" |
1178 | 1286 | ||
1287 | +object-keys@^1.0.12: | ||
1288 | + version "1.1.1" | ||
1289 | + resolved "https://registry.npm.taobao.org/object-keys/download/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" | ||
1290 | + | ||
1179 | object-visit@^1.0.0: | 1291 | object-visit@^1.0.0: |
1180 | version "1.0.1" | 1292 | version "1.0.1" |
1181 | resolved "https://registry.npm.taobao.org/object-visit/download/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" | 1293 | resolved "https://registry.npm.taobao.org/object-visit/download/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" |
1182 | dependencies: | 1294 | dependencies: |
1183 | isobject "^3.0.0" | 1295 | isobject "^3.0.0" |
1184 | 1296 | ||
1297 | +object.getownpropertydescriptors@^2.0.3: | ||
1298 | + version "2.0.3" | ||
1299 | + resolved "https://registry.npm.taobao.org/object.getownpropertydescriptors/download/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" | ||
1300 | + dependencies: | ||
1301 | + define-properties "^1.1.2" | ||
1302 | + es-abstract "^1.5.1" | ||
1303 | + | ||
1185 | object.pick@^1.3.0: | 1304 | object.pick@^1.3.0: |
1186 | version "1.3.0" | 1305 | version "1.3.0" |
1187 | resolved "https://registry.npm.taobao.org/object.pick/download/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" | 1306 | resolved "https://registry.npm.taobao.org/object.pick/download/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" |
@@ -1239,6 +1358,10 @@ p-try@^2.0.0: | @@ -1239,6 +1358,10 @@ p-try@^2.0.0: | ||
1239 | version "2.2.0" | 1358 | version "2.2.0" |
1240 | resolved "https://registry.npm.taobao.org/p-try/download/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" | 1359 | resolved "https://registry.npm.taobao.org/p-try/download/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" |
1241 | 1360 | ||
1361 | +parse-passwd@^1.0.0: | ||
1362 | + version "1.0.0" | ||
1363 | + resolved "https://registry.npm.taobao.org/parse-passwd/download/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" | ||
1364 | + | ||
1242 | pascalcase@^0.1.1: | 1365 | pascalcase@^0.1.1: |
1243 | version "0.1.1" | 1366 | version "0.1.1" |
1244 | resolved "https://registry.npm.taobao.org/pascalcase/download/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" | 1367 | resolved "https://registry.npm.taobao.org/pascalcase/download/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" |
@@ -1328,6 +1451,10 @@ rechoir@^0.6.2: | @@ -1328,6 +1451,10 @@ rechoir@^0.6.2: | ||
1328 | dependencies: | 1451 | dependencies: |
1329 | resolve "^1.1.6" | 1452 | resolve "^1.1.6" |
1330 | 1453 | ||
1454 | +regenerator-runtime@^0.13.2: | ||
1455 | + version "0.13.2" | ||
1456 | + resolved "https://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.13.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerator-runtime%2Fdownload%2Fregenerator-runtime-0.13.2.tgz#32e59c9a6fb9b1a4aff09b4930ca2d4477343447" | ||
1457 | + | ||
1331 | regex-not@^1.0.0, regex-not@^1.0.2: | 1458 | regex-not@^1.0.0, regex-not@^1.0.2: |
1332 | version "1.0.2" | 1459 | version "1.0.2" |
1333 | resolved "https://registry.npm.taobao.org/regex-not/download/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" | 1460 | resolved "https://registry.npm.taobao.org/regex-not/download/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" |
@@ -1404,7 +1531,7 @@ sax@^1.2.4: | @@ -1404,7 +1531,7 @@ sax@^1.2.4: | ||
1404 | version "1.2.4" | 1531 | version "1.2.4" |
1405 | resolved "https://registry.npm.taobao.org/sax/download/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" | 1532 | resolved "https://registry.npm.taobao.org/sax/download/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" |
1406 | 1533 | ||
1407 | -semver@^5.3.0, semver@^5.4.1, semver@^5.6.0: | 1534 | +semver@^5.3.0, semver@^5.4.1, semver@^5.6.0, semver@^5.7.0: |
1408 | version "5.7.0" | 1535 | version "5.7.0" |
1409 | resolved "https://registry.npm.taobao.org/semver/download/semver-5.7.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" | 1536 | resolved "https://registry.npm.taobao.org/semver/download/semver-5.7.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" |
1410 | 1537 | ||
@@ -1649,6 +1776,10 @@ union-value@^1.0.0: | @@ -1649,6 +1776,10 @@ union-value@^1.0.0: | ||
1649 | is-extendable "^0.1.1" | 1776 | is-extendable "^0.1.1" |
1650 | set-value "^2.0.1" | 1777 | set-value "^2.0.1" |
1651 | 1778 | ||
1779 | +universalify@^0.1.0: | ||
1780 | + version "0.1.2" | ||
1781 | + resolved "https://registry.npm.taobao.org/universalify/download/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" | ||
1782 | + | ||
1652 | unset-value@^1.0.0: | 1783 | unset-value@^1.0.0: |
1653 | version "1.0.0" | 1784 | version "1.0.0" |
1654 | resolved "https://registry.npm.taobao.org/unset-value/download/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" | 1785 | resolved "https://registry.npm.taobao.org/unset-value/download/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" |
@@ -1672,6 +1803,12 @@ util-deprecate@~1.0.1: | @@ -1672,6 +1803,12 @@ util-deprecate@~1.0.1: | ||
1672 | version "1.0.2" | 1803 | version "1.0.2" |
1673 | resolved "https://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" | 1804 | resolved "https://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" |
1674 | 1805 | ||
1806 | +v8flags@^3.1.1: | ||
1807 | + version "3.1.3" | ||
1808 | + resolved "https://registry.npm.taobao.org/v8flags/download/v8flags-3.1.3.tgz#fc9dc23521ca20c5433f81cc4eb9b3033bb105d8" | ||
1809 | + dependencies: | ||
1810 | + homedir-polyfill "^1.0.1" | ||
1811 | + | ||
1675 | wide-align@^1.1.0: | 1812 | wide-align@^1.1.0: |
1676 | version "1.1.3" | 1813 | version "1.1.3" |
1677 | resolved "https://registry.npm.taobao.org/wide-align/download/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" | 1814 | resolved "https://registry.npm.taobao.org/wide-align/download/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" |
请
注册
或
登录
后发表评论