Browse Source

feat: 更新

master
lkh 4 years ago
parent
commit
f51e6b018f
  1. 1
      .gitignore
  2. 46
      bin/command/create.js
  3. 16
      bin/index.js
  4. 171
      package-lock.json
  5. 5
      package.json

1
.gitignore

@ -1 +1,2 @@
.test
node_modules

46
bin/command/create.js

@ -1,4 +1,48 @@
module.exports = async function(projectName, templateType) {
const chalk = require('chalk');
const path = require('path');
const fs = require('fs-extra');
module.exports = function(projectName, templateType) {
console.log('创建项目:', projectName);
console.log('类型:', templateType);
/**
* 类型
* 1 platform
* 2 application
* 3 component
*/
console.log(chalk.white('\n 开始初始化... \n'));
return new Promise(async (resolve, reject) => {
// 创建文件目录
const dir = `${projectName}`;
await fs.ensureDir(dir).then(res => {
console.log('创建成功');
console.log(res);
}).catch(err => {
console.log('创建失败');
});
// 复制文件
switch (parseInt(templateType)) {
case 1:
console.log('框架');
console.log(__dirname);
fs.copy(path.join(__dirname, '../../templates/platform'), projectName)
.then(() => console.log('success!'))
.catch(err => console.error(err));
break;
case 2:
console.log('应用');
break;
case 3:
console.log('组件库');
break;
default:
break;
}
});
}

16
bin/index.js

@ -31,7 +31,17 @@ const templateOpts = [
type: 'list',
name: 'templateType',
message: '模板类型',
choices: ['platform', 'application', 'component']
choices: [
{
value: 1, name: 'platform 框架模板'
},
{
value: 2, name: 'application 应用模板'
},
{
value: 3, name: 'component 组件库模板'
}
]
}
];
@ -41,10 +51,8 @@ Cli
.description('通过选择模板类型,创建新的项目')
.action(async (projectName) => {
Prompt.prompt(templateOpts).then(result => {
console.log('选择结果:');
console.log(JSON.stringify(result));
// 创建
Create(projectName, 1);
Create(projectName, result.templateType);
})
});

171
package-lock.json

@ -31,22 +31,22 @@
"integrity": "sha1-GxtEAWClv3rUC2UPCVljSBkDkwo="
},
"bl": {
"version": "4.1.0",
"resolved": "https://r.cnpmjs.org/bl/download/bl-4.1.0.tgz",
"integrity": "sha1-RRU1JkGCvsL7vIOmKrmM8R2fezo=",
"version": "5.0.0",
"resolved": "https://r.cnpmjs.org/bl/download/bl-5.0.0.tgz",
"integrity": "sha1-aSiASkHp2pA0ho4cUMqI8h9XrqI=",
"requires": {
"buffer": "^5.5.0",
"buffer": "^6.0.3",
"inherits": "^2.0.4",
"readable-stream": "^3.4.0"
}
},
"buffer": {
"version": "5.7.1",
"resolved": "https://r.cnpmjs.org/buffer/download/buffer-5.7.1.tgz",
"integrity": "sha1-umLnwTEzBTWCGXFghRqPZI6Z7tA=",
"version": "6.0.3",
"resolved": "https://r.cnpmjs.org/buffer/download/buffer-6.0.3.tgz",
"integrity": "sha1-Ks5XhFnMj74qcKqo9S7mO2p0xsY=",
"requires": {
"base64-js": "^1.3.1",
"ieee754": "^1.1.13"
"ieee754": "^1.2.1"
}
},
"chalk": {
@ -140,6 +140,21 @@
"escape-string-regexp": "^1.0.5"
}
},
"fs-extra": {
"version": "10.0.0",
"resolved": "https://r.cnpmjs.org/fs-extra/download/fs-extra-10.0.0.tgz",
"integrity": "sha1-n/YbZV3eU/s0qC34S7IUzoAuF8E=",
"requires": {
"graceful-fs": "^4.2.0",
"jsonfile": "^6.0.1",
"universalify": "^2.0.0"
}
},
"graceful-fs": {
"version": "4.2.8",
"resolved": "https://r.cnpmjs.org/graceful-fs/download/graceful-fs-4.2.8.tgz",
"integrity": "sha1-5BK40z9eAGWTy9PO5t+fLOu+gCo="
},
"has-flag": {
"version": "4.0.0",
"resolved": "https://r.cnpmjs.org/has-flag/download/has-flag-4.0.0.tgz",
@ -182,12 +197,26 @@
"string-width": "^4.1.0",
"strip-ansi": "^6.0.0",
"through": "^2.3.6"
},
"dependencies": {
"bl": {
"version": "4.1.0",
"resolved": "https://r.cnpmjs.org/bl/download/bl-4.1.0.tgz",
"integrity": "sha1-RRU1JkGCvsL7vIOmKrmM8R2fezo=",
"requires": {
"buffer": "^5.5.0",
"inherits": "^2.0.4",
"readable-stream": "^3.4.0"
}
},
"is-fullwidth-code-point": {
"version": "3.0.0",
"resolved": "https://r.cnpmjs.org/is-fullwidth-code-point/download/is-fullwidth-code-point-3.0.0.tgz",
"integrity": "sha1-8Rb4Bk/pCz94RKOJl8C3UFEmnx0="
"buffer": {
"version": "5.7.1",
"resolved": "https://r.cnpmjs.org/buffer/download/buffer-5.7.1.tgz",
"integrity": "sha1-umLnwTEzBTWCGXFghRqPZI6Z7tA=",
"requires": {
"base64-js": "^1.3.1",
"ieee754": "^1.1.13"
}
},
"is-interactive": {
"version": "1.0.0",
@ -199,18 +228,69 @@
"resolved": "https://r.cnpmjs.org/is-unicode-supported/download/is-unicode-supported-0.1.0.tgz",
"integrity": "sha1-PybHaoCVk7Ur+i7LVxDtJ3m1Iqc="
},
"log-symbols": {
"version": "4.1.0",
"resolved": "https://r.cnpmjs.org/log-symbols/download/log-symbols-4.1.0.tgz",
"integrity": "sha1-P727lbRoOsn8eFER55LlWNSr1QM=",
"requires": {
"chalk": "^4.1.0",
"is-unicode-supported": "^0.1.0"
}
},
"ora": {
"version": "5.4.1",
"resolved": "https://r.cnpmjs.org/ora/download/ora-5.4.1.tgz",
"integrity": "sha1-GyZ4Qmr0rEpQkAjl5KyemVnbnhg=",
"requires": {
"bl": "^4.1.0",
"chalk": "^4.1.0",
"cli-cursor": "^3.1.0",
"cli-spinners": "^2.5.0",
"is-interactive": "^1.0.0",
"is-unicode-supported": "^0.1.0",
"log-symbols": "^4.1.0",
"strip-ansi": "^6.0.0",
"wcwidth": "^1.0.1"
}
}
}
},
"is-fullwidth-code-point": {
"version": "3.0.0",
"resolved": "https://r.cnpmjs.org/is-fullwidth-code-point/download/is-fullwidth-code-point-3.0.0.tgz",
"integrity": "sha1-8Rb4Bk/pCz94RKOJl8C3UFEmnx0="
},
"is-interactive": {
"version": "2.0.0",
"resolved": "https://r.cnpmjs.org/is-interactive/download/is-interactive-2.0.0.tgz",
"integrity": "sha1-QMV2FFk4JtoRAK3mBZd41ZfxbpA="
},
"is-unicode-supported": {
"version": "1.1.0",
"resolved": "https://r.cnpmjs.org/is-unicode-supported/download/is-unicode-supported-1.1.0.tgz",
"integrity": "sha1-kSe3H5+oL1LKXCDpgue+wO4x7h4="
},
"jsonfile": {
"version": "6.1.0",
"resolved": "https://r.cnpmjs.org/jsonfile/download/jsonfile-6.1.0.tgz",
"integrity": "sha1-vFWyY0eTxnnsZAMJTrE2mKbsCq4=",
"requires": {
"graceful-fs": "^4.1.6",
"universalify": "^2.0.0"
}
},
"lodash": {
"version": "4.17.21",
"resolved": "https://r.cnpmjs.org/lodash/download/lodash-4.17.21.tgz",
"integrity": "sha1-Z5WRxWTDv/quhFTPCz3zcMPWkRw="
},
"log-symbols": {
"version": "4.1.0",
"resolved": "https://r.cnpmjs.org/log-symbols/download/log-symbols-4.1.0.tgz",
"integrity": "sha1-P727lbRoOsn8eFER55LlWNSr1QM=",
"version": "5.0.0",
"resolved": "https://r.cnpmjs.org/log-symbols/download/log-symbols-5.0.0.tgz",
"integrity": "sha1-dyDTxqVsNl4fZYkWBpuhjZQQkso=",
"requires": {
"chalk": "^4.1.0",
"is-unicode-supported": "^0.1.0"
"is-unicode-supported": "^1.0.0"
}
},
"mimic-fn": {
@ -232,19 +312,51 @@
}
},
"ora": {
"version": "5.4.1",
"resolved": "https://r.cnpmjs.org/ora/download/ora-5.4.1.tgz",
"integrity": "sha1-GyZ4Qmr0rEpQkAjl5KyemVnbnhg=",
"version": "6.0.1",
"resolved": "https://r.cnpmjs.org/ora/download/ora-6.0.1.tgz",
"integrity": "sha1-aMqp/WxIWkDW9GxQo5QPo9+Zx/M=",
"requires": {
"bl": "^4.1.0",
"chalk": "^4.1.0",
"cli-cursor": "^3.1.0",
"cli-spinners": "^2.5.0",
"is-interactive": "^1.0.0",
"is-unicode-supported": "^0.1.0",
"log-symbols": "^4.1.0",
"strip-ansi": "^6.0.0",
"bl": "^5.0.0",
"chalk": "^4.1.2",
"cli-cursor": "^4.0.0",
"cli-spinners": "^2.6.0",
"is-interactive": "^2.0.0",
"is-unicode-supported": "^1.1.0",
"log-symbols": "^5.0.0",
"strip-ansi": "^7.0.1",
"wcwidth": "^1.0.1"
},
"dependencies": {
"ansi-regex": {
"version": "6.0.1",
"resolved": "https://r.cnpmjs.org/ansi-regex/download/ansi-regex-6.0.1.tgz",
"integrity": "sha1-MYPjj66aZdfLXlOUXNWJfQJgoGo="
},
"cli-cursor": {
"version": "4.0.0",
"resolved": "https://r.cnpmjs.org/cli-cursor/download/cli-cursor-4.0.0.tgz",
"integrity": "sha1-POz+NzS/T+Aqg2HL3A9v4oxqV+o=",
"requires": {
"restore-cursor": "^4.0.0"
}
},
"restore-cursor": {
"version": "4.0.0",
"resolved": "https://r.cnpmjs.org/restore-cursor/download/restore-cursor-4.0.0.tgz",
"integrity": "sha1-UZVgpDGJdQlt725gnUQQDtqkzLk=",
"requires": {
"onetime": "^5.1.0",
"signal-exit": "^3.0.2"
}
},
"strip-ansi": {
"version": "7.0.1",
"resolved": "https://r.cnpmjs.org/strip-ansi/download/strip-ansi-7.0.1.tgz",
"integrity": "sha1-YXQKCM42th5Q5lZT8HBg0ACXX7I=",
"requires": {
"ansi-regex": "^6.0.1"
}
}
}
},
"os-tmpdir": {
@ -356,6 +468,11 @@
"resolved": "https://r.cnpmjs.org/type-fest/download/type-fest-0.21.3.tgz",
"integrity": "sha1-0mCiSwGYQ24TP6JqUkptZfo7Ljc="
},
"universalify": {
"version": "2.0.0",
"resolved": "https://r.cnpmjs.org/universalify/download/universalify-2.0.0.tgz",
"integrity": "sha1-daSYTv7cSwiXXFrrc/Uw0C3yVxc="
},
"util-deprecate": {
"version": "1.0.2",
"resolved": "https://r.cnpmjs.org/util-deprecate/download/util-deprecate-1.0.2.tgz",

5
package.json

@ -16,7 +16,10 @@
"author": "",
"license": "ISC",
"dependencies": {
"chalk": "^4.1.2",
"commander": "^8.2.0",
"inquirer": "^8.2.0"
"fs-extra": "^10.0.0",
"inquirer": "^8.2.0",
"ora": "^6.0.1"
}
}
Loading…
Cancel
Save