neo-cmp-cli 1.8.2 → 1.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/neo.js +1 -1
- package/package.json +6 -5
- package/src/{module/index.js → index.js} +14 -14
- package/src/{module/main.js → main.js} +18 -18
- package/src/module/neoInitByCopy.js +6 -6
- package/src/neo/webpack.mf.js +1 -1
- package/src/oss/publish2oss.js +1 -1
- package/src/utils/cmpUtils/createCmpByZip.js +7 -5
- package/src/utils/cmpUtils/pullCmp.js +1 -1
- package/src/utils/cmpUtils/pushCmp.js +9 -7
- package/src/utils/projectUtils/updatePublishLog.js +1 -1
- package/test/demo.js +1 -1
- package/test/demo3.js +1 -1
- package/test/neo.config.js +77 -0
- package/src/template/antd-custom-cmp-template/.prettierrc.js +0 -12
- package/src/template/antd-custom-cmp-template/README.md +0 -153
- package/src/template/antd-custom-cmp-template/commitlint.config.js +0 -59
- package/src/template/antd-custom-cmp-template/neo.config.js +0 -144
- package/src/template/antd-custom-cmp-template/package.json +0 -60
- package/src/template/antd-custom-cmp-template/public/css/base.css +0 -283
- package/src/template/antd-custom-cmp-template/public/scripts/app/bluebird.js +0 -6679
- package/src/template/antd-custom-cmp-template/public/template.html +0 -13
- package/src/template/antd-custom-cmp-template/src/assets/css/common.scss +0 -127
- package/src/template/antd-custom-cmp-template/src/assets/css/mixin.scss +0 -47
- package/src/template/antd-custom-cmp-template/src/assets/img/NeoCRM.jpg +0 -0
- package/src/template/antd-custom-cmp-template/src/assets/img/custom-widget.svg +0 -1
- package/src/template/antd-custom-cmp-template/src/assets/img/favicon.png +0 -0
- package/src/template/antd-custom-cmp-template/src/components/dataDashboard/README.md +0 -39
- package/src/template/antd-custom-cmp-template/src/components/dataDashboard/index.tsx +0 -462
- package/src/template/antd-custom-cmp-template/src/components/dataDashboard/model.ts +0 -75
- package/src/template/antd-custom-cmp-template/src/components/dataDashboard/style.scss +0 -1667
- package/src/template/antd-custom-cmp-template/src/components/infoCard/index.tsx +0 -87
- package/src/template/antd-custom-cmp-template/src/components/infoCard/model.ts +0 -80
- package/src/template/antd-custom-cmp-template/src/components/infoCard/style.scss +0 -105
- package/src/template/antd-custom-cmp-template/tsconfig.json +0 -68
- package/src/template/develop/neo-custom-cmp-template/.prettierrc.js +0 -12
- package/src/template/develop/neo-custom-cmp-template/README.md +0 -48
- package/src/template/develop/neo-custom-cmp-template/commitlint.config.js +0 -59
- package/src/template/develop/neo-custom-cmp-template/docs/README.md +0 -13
- package/src/template/develop/neo-custom-cmp-template/neo.config.js +0 -121
- package/src/template/develop/neo-custom-cmp-template/package.json +0 -63
- package/src/template/develop/neo-custom-cmp-template/public/css/base.css +0 -283
- package/src/template/develop/neo-custom-cmp-template/public/scripts/app/bluebird.js +0 -6679
- package/src/template/develop/neo-custom-cmp-template/public/template.html +0 -13
- package/src/template/develop/neo-custom-cmp-template/src/assets/css/common.scss +0 -127
- package/src/template/develop/neo-custom-cmp-template/src/assets/css/mixin.scss +0 -47
- package/src/template/develop/neo-custom-cmp-template/src/assets/img/NeoCRM.jpg +0 -0
- package/src/template/develop/neo-custom-cmp-template/src/assets/img/custom-widget.svg +0 -1
- package/src/template/develop/neo-custom-cmp-template/src/assets/img/favicon.png +0 -0
- package/src/template/develop/neo-custom-cmp-template/src/assets/img/table.svg +0 -1
- package/src/template/develop/neo-custom-cmp-template/src/components/contactCardList/README.md +0 -65
- package/src/template/develop/neo-custom-cmp-template/src/components/contactCardList/index.tsx +0 -180
- package/src/template/develop/neo-custom-cmp-template/src/components/contactCardList/model.ts +0 -50
- package/src/template/develop/neo-custom-cmp-template/src/components/contactCardList/style.scss +0 -260
- package/src/template/develop/neo-custom-cmp-template/src/components/contactForm/README.md +0 -94
- package/src/template/develop/neo-custom-cmp-template/src/components/contactForm/index.tsx +0 -251
- package/src/template/develop/neo-custom-cmp-template/src/components/contactForm/model.ts +0 -56
- package/src/template/develop/neo-custom-cmp-template/src/components/contactForm/style.scss +0 -120
- package/src/template/develop/neo-custom-cmp-template/src/components/neoEntityGrid/README.md +0 -115
- package/src/template/develop/neo-custom-cmp-template/src/components/neoEntityGrid/index.tsx +0 -304
- package/src/template/develop/neo-custom-cmp-template/src/components/neoEntityGrid/model.ts +0 -87
- package/src/template/develop/neo-custom-cmp-template/src/components/neoEntityGrid/style.scss +0 -127
- package/src/template/develop/neo-custom-cmp-template/src/utils/axiosFetcher.ts +0 -29
- package/src/template/develop/neo-custom-cmp-template/src/utils/queryObjectData.ts +0 -39
- package/src/template/develop/neo-custom-cmp-template/src/utils/xobjects.ts +0 -203
- package/src/template/develop/neo-custom-cmp-template/tsconfig.json +0 -68
- package/src/template/echarts-custom-cmp-template/.prettierrc.js +0 -12
- package/src/template/echarts-custom-cmp-template/README.md +0 -198
- package/src/template/echarts-custom-cmp-template/commitlint.config.js +0 -59
- package/src/template/echarts-custom-cmp-template/neo.config.js +0 -140
- package/src/template/echarts-custom-cmp-template/package.json +0 -61
- package/src/template/echarts-custom-cmp-template/public/css/base.css +0 -283
- package/src/template/echarts-custom-cmp-template/public/scripts/app/bluebird.js +0 -6679
- package/src/template/echarts-custom-cmp-template/public/template.html +0 -13
- package/src/template/echarts-custom-cmp-template/src/assets/css/common.scss +0 -127
- package/src/template/echarts-custom-cmp-template/src/assets/css/mixin.scss +0 -47
- package/src/template/echarts-custom-cmp-template/src/assets/img/NeoCRM.jpg +0 -0
- package/src/template/echarts-custom-cmp-template/src/assets/img/chart.svg +0 -1
- package/src/template/echarts-custom-cmp-template/src/assets/img/custom-widget.svg +0 -1
- package/src/template/echarts-custom-cmp-template/src/assets/img/favicon.png +0 -0
- package/src/template/echarts-custom-cmp-template/src/components/chartWidget/README.md +0 -186
- package/src/template/echarts-custom-cmp-template/src/components/chartWidget/index.tsx +0 -724
- package/src/template/echarts-custom-cmp-template/src/components/chartWidget/model.ts +0 -151
- package/src/template/echarts-custom-cmp-template/src/components/chartWidget/style.scss +0 -209
- package/src/template/echarts-custom-cmp-template/src/components/mapWidget/README.md +0 -125
- package/src/template/echarts-custom-cmp-template/src/components/mapWidget/USAGE.md +0 -190
- package/src/template/echarts-custom-cmp-template/src/components/mapWidget/index.tsx +0 -385
- package/src/template/echarts-custom-cmp-template/src/components/mapWidget/model.ts +0 -107
- package/src/template/echarts-custom-cmp-template/src/components/mapWidget/style.scss +0 -192
- package/src/template/echarts-custom-cmp-template/src/utils/url.ts +0 -82
- package/src/template/echarts-custom-cmp-template/tsconfig.json +0 -68
- package/src/template/empty-cmp/index.tsx +0 -58
- package/src/template/empty-cmp/model.ts +0 -79
- package/src/template/empty-cmp/style.scss +0 -72
- package/src/template/empty-custom-cmp-template/.prettierrc.js +0 -12
- package/src/template/empty-custom-cmp-template/README.md +0 -154
- package/src/template/empty-custom-cmp-template/commitlint.config.js +0 -59
- package/src/template/empty-custom-cmp-template/neo.config.js +0 -138
- package/src/template/empty-custom-cmp-template/package.json +0 -58
- package/src/template/empty-custom-cmp-template/public/css/base.css +0 -283
- package/src/template/empty-custom-cmp-template/public/scripts/app/bluebird.js +0 -6679
- package/src/template/empty-custom-cmp-template/public/template.html +0 -13
- package/src/template/empty-custom-cmp-template/src/assets/css/common.scss +0 -127
- package/src/template/empty-custom-cmp-template/src/assets/css/mixin.scss +0 -47
- package/src/template/empty-custom-cmp-template/src/assets/img/NeoCRM.jpg +0 -0
- package/src/template/empty-custom-cmp-template/src/assets/img/custom-widget.svg +0 -1
- package/src/template/empty-custom-cmp-template/src/assets/img/favicon.png +0 -0
- package/src/template/empty-custom-cmp-template/src/assets/img/map.svg +0 -1
- package/src/template/empty-custom-cmp-template/src/components/README.md +0 -3
- package/src/template/empty-custom-cmp-template/tsconfig.json +0 -68
- package/src/template/neo-custom-cmp-template/.prettierrc.js +0 -12
- package/src/template/neo-custom-cmp-template/README.md +0 -155
- package/src/template/neo-custom-cmp-template/commitlint.config.js +0 -59
- package/src/template/neo-custom-cmp-template/docs/README.md +0 -244
- package/src/template/neo-custom-cmp-template/neo.config.js +0 -140
- package/src/template/neo-custom-cmp-template/package.json +0 -66
- package/src/template/neo-custom-cmp-template/public/css/base.css +0 -283
- package/src/template/neo-custom-cmp-template/public/scripts/app/bluebird.js +0 -6679
- package/src/template/neo-custom-cmp-template/public/template.html +0 -13
- package/src/template/neo-custom-cmp-template/src/assets/css/common.scss +0 -127
- package/src/template/neo-custom-cmp-template/src/assets/css/mixin.scss +0 -47
- package/src/template/neo-custom-cmp-template/src/assets/img/NeoCRM.jpg +0 -0
- package/src/template/neo-custom-cmp-template/src/assets/img/card-list.svg +0 -1
- package/src/template/neo-custom-cmp-template/src/assets/img/contact-form.svg +0 -1
- package/src/template/neo-custom-cmp-template/src/assets/img/custom-form.svg +0 -1
- package/src/template/neo-custom-cmp-template/src/assets/img/custom-widget.svg +0 -1
- package/src/template/neo-custom-cmp-template/src/assets/img/data-list.svg +0 -1
- package/src/template/neo-custom-cmp-template/src/assets/img/detail.svg +0 -1
- package/src/template/neo-custom-cmp-template/src/assets/img/table.svg +0 -1
- package/src/template/neo-custom-cmp-template/src/components/entityCardList/README.md +0 -61
- package/src/template/neo-custom-cmp-template/src/components/entityCardList/index.tsx +0 -202
- package/src/template/neo-custom-cmp-template/src/components/entityCardList/model.ts +0 -74
- package/src/template/neo-custom-cmp-template/src/components/entityCardList/style.scss +0 -260
- package/src/template/neo-custom-cmp-template/src/components/entityDetail/README.md +0 -176
- package/src/template/neo-custom-cmp-template/src/components/entityDetail/index.tsx +0 -334
- package/src/template/neo-custom-cmp-template/src/components/entityDetail/model.ts +0 -123
- package/src/template/neo-custom-cmp-template/src/components/entityDetail/style.scss +0 -292
- package/src/template/neo-custom-cmp-template/src/components/entityForm/README.md +0 -176
- package/src/template/neo-custom-cmp-template/src/components/entityForm/index.tsx +0 -615
- package/src/template/neo-custom-cmp-template/src/components/entityForm/model.ts +0 -107
- package/src/template/neo-custom-cmp-template/src/components/entityForm/style.scss +0 -370
- package/src/template/neo-custom-cmp-template/src/components/entityTable/README.md +0 -92
- package/src/template/neo-custom-cmp-template/src/components/entityTable/index.tsx +0 -784
- package/src/template/neo-custom-cmp-template/src/components/entityTable/model.ts +0 -134
- package/src/template/neo-custom-cmp-template/src/components/entityTable/style.scss +0 -304
- package/src/template/neo-custom-cmp-template/src/utils/axiosFetcher.ts +0 -37
- package/src/template/neo-custom-cmp-template/src/utils/queryObjectData.ts +0 -76
- package/src/template/neo-custom-cmp-template/src/utils/xobjects.ts +0 -162
- package/src/template/neo-custom-cmp-template/tsconfig.json +0 -49
- package/src/template/react-custom-cmp-template/.prettierrc.js +0 -12
- package/src/template/react-custom-cmp-template/README.md +0 -154
- package/src/template/react-custom-cmp-template/commitlint.config.js +0 -59
- package/src/template/react-custom-cmp-template/neo.config.js +0 -137
- package/src/template/react-custom-cmp-template/package.json +0 -57
- package/src/template/react-custom-cmp-template/public/css/base.css +0 -283
- package/src/template/react-custom-cmp-template/public/scripts/app/bluebird.js +0 -6679
- package/src/template/react-custom-cmp-template/public/template.html +0 -13
- package/src/template/react-custom-cmp-template/src/assets/css/common.scss +0 -127
- package/src/template/react-custom-cmp-template/src/assets/css/mixin.scss +0 -47
- package/src/template/react-custom-cmp-template/src/assets/img/NeoCRM.jpg +0 -0
- package/src/template/react-custom-cmp-template/src/assets/img/custom-widget.svg +0 -1
- package/src/template/react-custom-cmp-template/src/assets/img/favicon.png +0 -0
- package/src/template/react-custom-cmp-template/src/components/infoCard/index.jsx +0 -45
- package/src/template/react-custom-cmp-template/src/components/infoCard/model.js +0 -81
- package/src/template/react-custom-cmp-template/src/components/infoCard/style.scss +0 -67
- package/src/template/react-ts-custom-cmp-template/.prettierrc.js +0 -12
- package/src/template/react-ts-custom-cmp-template/README.md +0 -154
- package/src/template/react-ts-custom-cmp-template/commitlint.config.js +0 -59
- package/src/template/react-ts-custom-cmp-template/neo.config.js +0 -138
- package/src/template/react-ts-custom-cmp-template/package.json +0 -59
- package/src/template/react-ts-custom-cmp-template/public/css/base.css +0 -283
- package/src/template/react-ts-custom-cmp-template/public/scripts/app/bluebird.js +0 -6679
- package/src/template/react-ts-custom-cmp-template/public/template.html +0 -13
- package/src/template/react-ts-custom-cmp-template/src/assets/css/common.scss +0 -127
- package/src/template/react-ts-custom-cmp-template/src/assets/css/mixin.scss +0 -47
- package/src/template/react-ts-custom-cmp-template/src/assets/img/NeoCRM.jpg +0 -0
- package/src/template/react-ts-custom-cmp-template/src/assets/img/custom-widget.svg +0 -1
- package/src/template/react-ts-custom-cmp-template/src/assets/img/favicon.png +0 -0
- package/src/template/react-ts-custom-cmp-template/src/assets/img/map.svg +0 -1
- package/src/template/react-ts-custom-cmp-template/src/components/listWidget/README.md +0 -2
- package/src/template/react-ts-custom-cmp-template/src/components/listWidget/index.tsx +0 -208
- package/src/template/react-ts-custom-cmp-template/src/components/listWidget/model.ts +0 -92
- package/src/template/react-ts-custom-cmp-template/src/components/listWidget/style.scss +0 -350
- package/src/template/react-ts-custom-cmp-template/tsconfig.json +0 -68
- package/src/template/vue2-custom-cmp-template/.prettierrc.js +0 -12
- package/src/template/vue2-custom-cmp-template/README.md +0 -154
- package/src/template/vue2-custom-cmp-template/commitlint.config.js +0 -59
- package/src/template/vue2-custom-cmp-template/neo.config.js +0 -146
- package/src/template/vue2-custom-cmp-template/package.json +0 -59
- package/src/template/vue2-custom-cmp-template/public/css/base.css +0 -283
- package/src/template/vue2-custom-cmp-template/public/scripts/app/bluebird.js +0 -6679
- package/src/template/vue2-custom-cmp-template/public/template.html +0 -13
- package/src/template/vue2-custom-cmp-template/src/assets/css/common.scss +0 -126
- package/src/template/vue2-custom-cmp-template/src/assets/css/mixin.scss +0 -47
- package/src/template/vue2-custom-cmp-template/src/assets/img/NeoCRM.jpg +0 -0
- package/src/template/vue2-custom-cmp-template/src/assets/img/custom-widget.svg +0 -1
- package/src/template/vue2-custom-cmp-template/src/assets/img/favicon.png +0 -0
- package/src/template/vue2-custom-cmp-template/src/components/vueInfoCard/index.vue +0 -131
- package/src/template/vue2-custom-cmp-template/src/components/vueInfoCard/model.js +0 -81
- package/src/utils/getConfigObj.js +0 -18
package/bin/neo.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
require('../src/
|
|
2
|
+
require('../src/index');
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "neo-cmp-cli",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.3",
|
|
4
4
|
"description": "Neo 自定义组件开发工具,支持react 和 vue2.0技术栈。",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"neo-cli",
|
|
@@ -11,9 +11,10 @@
|
|
|
11
11
|
"bin": {
|
|
12
12
|
"neo": "./bin/neo.js"
|
|
13
13
|
},
|
|
14
|
-
"main": "src/
|
|
14
|
+
"main": "src/main.js",
|
|
15
15
|
"scripts": {
|
|
16
16
|
"neo": "neo",
|
|
17
|
+
"build2lib": "",
|
|
17
18
|
"format": "prettier --write \"src/**/**/*.{js,jsx,vue,tsx,ts,scss,less,json}\""
|
|
18
19
|
},
|
|
19
20
|
"files": [
|
|
@@ -41,7 +42,7 @@
|
|
|
41
42
|
},
|
|
42
43
|
"dependencies": {
|
|
43
44
|
"adm-zip": "^0.5.10",
|
|
44
|
-
"akfun": "^
|
|
45
|
+
"akfun": "^6.0.0",
|
|
45
46
|
"axios": "^0.27.2",
|
|
46
47
|
"babel-plugin-import": "^1.13.8",
|
|
47
48
|
"chalk": "^4.0.0",
|
|
@@ -66,8 +67,8 @@
|
|
|
66
67
|
"prettier": "^2.0.5"
|
|
67
68
|
},
|
|
68
69
|
"engines": {
|
|
69
|
-
"node": ">=
|
|
70
|
-
"npm": ">=
|
|
70
|
+
"node": ">= 16.0.0",
|
|
71
|
+
"npm": ">= 8.0.0"
|
|
71
72
|
},
|
|
72
73
|
"browserslist": [
|
|
73
74
|
"> 1%",
|
|
@@ -3,21 +3,21 @@ const yargs = require('yargs'); // 命令行工具
|
|
|
3
3
|
const chalk = require('chalk'); // 带样式的log输出
|
|
4
4
|
const inquirer = require('inquirer'); // 问答式交互
|
|
5
5
|
const ora = require('ora');
|
|
6
|
-
const neoInit = require('./neoInit.js');
|
|
7
|
-
const neoInitByCopy = require('./neoInitByCopy.js');
|
|
8
|
-
const inspect = require('./inspect.js'); // 输出当前项目配置文件
|
|
9
|
-
const neoConfigInit = require('
|
|
10
|
-
const { validateProjectName } = require('
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const { errorLog, successLog } = require('../utils/common');
|
|
6
|
+
const neoInit = require('./module/neoInit.js');
|
|
7
|
+
const neoInitByCopy = require('./module/neoInitByCopy.js');
|
|
8
|
+
const inspect = require('./module/inspect.js'); // 输出当前项目配置文件
|
|
9
|
+
const neoConfigInit = require('./utils/neoConfigInit.js');
|
|
10
|
+
const { validateProjectName } = require('./utils/projectNameValidator.js');
|
|
11
|
+
const getCmpTypeByDir = require('./utils/cmpUtils/getCmpTypeByDir.js');
|
|
12
|
+
const NeoService = require('./neo/neoService.js');
|
|
13
|
+
const NeoLoginService = require('./neo/neoLogin.js');
|
|
14
|
+
const curConfig = require('./config/index'); // 获取当前项目根目录下的配置文件
|
|
15
|
+
const hasNeoProject = require('./utils/projectUtils/hasNeoProject.js');
|
|
16
|
+
const consoleTag = require('./utils/neoParams').consoleTag;
|
|
17
|
+
const { errorLog, successLog } = require('./utils/common');
|
|
19
18
|
// neo 的 package 文件
|
|
20
|
-
const neoPackage = require('
|
|
19
|
+
const neoPackage = require('../package.json');
|
|
20
|
+
const mainAction = require('./main.js'); // 入口文件
|
|
21
21
|
|
|
22
22
|
const titleTip = function (msg) {
|
|
23
23
|
return chalk.green(chalk.bold(msg));
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
const akfun = require('akfun');
|
|
2
2
|
const _ = require('lodash');
|
|
3
|
-
const neoInit = require('./neoInit');
|
|
4
|
-
const neoInitByCopy = require('./neoInitByCopy');
|
|
5
|
-
const inspect = require('./inspect');
|
|
6
|
-
const neoConfigInit = require('
|
|
7
|
-
const { consoleTag } = require('
|
|
8
|
-
const curConfig = require('
|
|
9
|
-
const publish2oss = require('
|
|
10
|
-
const pushCmp = require('
|
|
11
|
-
const previewCmp = require('
|
|
12
|
-
const generateEntries = require('
|
|
13
|
-
// const { MFPlugins } = require('
|
|
14
|
-
const createCmpByTemplate = require('
|
|
15
|
-
const createCmpProjectByTemplate = require('
|
|
16
|
-
const pullCmp = require('
|
|
17
|
-
const deleteCmp = require('
|
|
18
|
-
const openProject = require('
|
|
19
|
-
const { configureNeoBuild } = require('
|
|
20
|
-
const { errorLog, successLog } = require('
|
|
3
|
+
const neoInit = require('./module/neoInit');
|
|
4
|
+
const neoInitByCopy = require('./module/neoInitByCopy');
|
|
5
|
+
const inspect = require('./module/inspect');
|
|
6
|
+
const neoConfigInit = require('./utils/neoConfigInit.js');
|
|
7
|
+
const { consoleTag } = require('./utils/neoParams');
|
|
8
|
+
const curConfig = require('./config/index'); // 获取当前项目根目录下的配置文件
|
|
9
|
+
const publish2oss = require('./oss/publish2oss');
|
|
10
|
+
const pushCmp = require('./utils/cmpUtils/pushCmp');
|
|
11
|
+
const previewCmp = require('./utils/cmpUtils/previewCmp');
|
|
12
|
+
const generateEntries = require('./utils/generateEntries');
|
|
13
|
+
// const { MFPlugins } = require('./neo/webpack.mf');
|
|
14
|
+
const createCmpByTemplate = require('./utils/cmpUtils/createCmpByTemplate');
|
|
15
|
+
const createCmpProjectByTemplate = require('./utils/projectUtils/createCmpProjectByTemplate');
|
|
16
|
+
const pullCmp = require('./utils/cmpUtils/pullCmp');
|
|
17
|
+
const deleteCmp = require('./utils/cmpUtils/deleteCmp');
|
|
18
|
+
const openProject = require('./utils/projectUtils/openProject');
|
|
19
|
+
const { configureNeoBuild } = require('./utils/configureNeoBuild');
|
|
20
|
+
const { errorLog, successLog } = require('./utils/common');
|
|
21
21
|
|
|
22
22
|
const getValue = (originValue, defaultValue) => {
|
|
23
23
|
return originValue !== undefined ? originValue : defaultValue;
|
|
@@ -9,27 +9,27 @@ const { errorLog } = require('../utils/common');
|
|
|
9
9
|
const templateList = {
|
|
10
10
|
react: {
|
|
11
11
|
projectName: 'react-custom-cmp-template',
|
|
12
|
-
dir: path.resolve(__dirname, '
|
|
12
|
+
dir: path.resolve(__dirname, '../../template/react-custom-cmp-template')
|
|
13
13
|
},
|
|
14
14
|
'react-ts': {
|
|
15
15
|
projectName: 'react-ts-custom-cmp-template',
|
|
16
|
-
dir: path.resolve(__dirname, '
|
|
16
|
+
dir: path.resolve(__dirname, '../../template/react-ts-custom-cmp-template')
|
|
17
17
|
},
|
|
18
18
|
antd: {
|
|
19
19
|
projectName: 'antd-custom-cmp-template',
|
|
20
|
-
dir: path.resolve(__dirname, '
|
|
20
|
+
dir: path.resolve(__dirname, '../../template/antd-custom-cmp-template')
|
|
21
21
|
},
|
|
22
22
|
echarts: {
|
|
23
23
|
projectName: 'echarts-custom-cmp-template',
|
|
24
|
-
dir: path.resolve(__dirname, '
|
|
24
|
+
dir: path.resolve(__dirname, '../../template/echarts-custom-cmp-template')
|
|
25
25
|
},
|
|
26
26
|
neo: {
|
|
27
27
|
projectName: 'neo-custom-cmp-template',
|
|
28
|
-
dir: path.resolve(__dirname, '
|
|
28
|
+
dir: path.resolve(__dirname, '../../template/neo-custom-cmp-template')
|
|
29
29
|
},
|
|
30
30
|
vue2: {
|
|
31
31
|
projectName: 'vue2-custom-cmp-template',
|
|
32
|
-
dir: path.resolve(__dirname, '
|
|
32
|
+
dir: path.resolve(__dirname, '../../template/vue2-custom-cmp-template')
|
|
33
33
|
}
|
|
34
34
|
};
|
|
35
35
|
|
package/src/neo/webpack.mf.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
// 模块联邦插件
|
|
2
2
|
const webpack = require('webpack');
|
|
3
3
|
const { ModuleFederationPlugin } = require('webpack').container;
|
|
4
|
+
const { getConfigObj } = require('akfun');
|
|
4
5
|
|
|
5
6
|
// 解析 webpack 模块联邦 remotes 中的变量
|
|
6
7
|
const ExternalTemplateRemotesPlugin = require('external-remotes-plugin');
|
|
7
8
|
|
|
8
9
|
const { catchCurPackageJson } = require('../utils/pathUtils');
|
|
9
|
-
const getConfigObj = require('../utils/getConfigObj');
|
|
10
10
|
|
|
11
11
|
// 获取当前项目的package文件
|
|
12
12
|
const currentPackageJsonDir = catchCurPackageJson();
|
package/src/oss/publish2oss.js
CHANGED
|
@@ -3,8 +3,8 @@ const fs = require('fs');
|
|
|
3
3
|
const path = require('path');
|
|
4
4
|
const _ = require('lodash');
|
|
5
5
|
const ora = require('ora');
|
|
6
|
+
const { getConfigObj } = require('akfun');
|
|
6
7
|
const { catchCurPackageJson } = require('../utils/pathUtils');
|
|
7
|
-
const getConfigObj = require('../utils/getConfigObj');
|
|
8
8
|
const updatePublishLog = require('../utils/projectUtils/updatePublishLog');
|
|
9
9
|
const { errorLog, warningLog, successLog } = require('../utils/common');
|
|
10
10
|
|
|
@@ -113,14 +113,14 @@ function formatConfigObject(obj, indent = 0, fileDir = '') {
|
|
|
113
113
|
* @param {*} cmpZipUrl 自定义组件源码文件地址(zip包地址)
|
|
114
114
|
* @param {*} cmpName 自定义组件名称
|
|
115
115
|
* @param {*} componentBaseDir 自定义组件目录
|
|
116
|
-
*
|
|
116
|
+
*
|
|
117
117
|
* 拉取线上自定义组件源码 规则:
|
|
118
118
|
* 1、对于 组件源码中 src/components 中的所有文件 copy 至 当前项目 src/components,非覆盖式(copy 前判断是否存在);
|
|
119
119
|
* 2、对于 组件源码中的 配置文件(neo.config.js)内容 和 当前项目配置 进行 非覆盖式 merge 处理;
|
|
120
120
|
* 3、对于 组件源码中的 tsconfig.json 文件内容 和 当前项目 tsconfig 进行 非覆盖式 merge 处理;
|
|
121
121
|
* 4、对于 组件源码中的 package.json 文件内容 和 当前项目 package.json 进行 非覆盖式 merge 处理,并识别新增 依赖,提示用户 重新安装依赖
|
|
122
122
|
*/
|
|
123
|
-
|
|
123
|
+
async function createCmpByZip(cmpZipUrl, option = {}) {
|
|
124
124
|
const { token, cmpName, componentBaseDir = './src/components' } = option || {};
|
|
125
125
|
const finalCmpName = cmpName;
|
|
126
126
|
|
|
@@ -158,7 +158,7 @@ module.exports = async function (cmpZipUrl, option = {}) {
|
|
|
158
158
|
response = await axios.get(cmpZipUrl, {
|
|
159
159
|
headers: {
|
|
160
160
|
Authorization: `Bearer ${token}`,
|
|
161
|
-
'xsy-inner-source': 'bff'
|
|
161
|
+
'xsy-inner-source': 'bff'
|
|
162
162
|
},
|
|
163
163
|
responseType: 'arraybuffer',
|
|
164
164
|
timeout: 60000, // 60秒超时
|
|
@@ -171,7 +171,7 @@ module.exports = async function (cmpZipUrl, option = {}) {
|
|
|
171
171
|
}
|
|
172
172
|
});
|
|
173
173
|
} catch (axiosError) {
|
|
174
|
-
const errorMessage = axiosError.response
|
|
174
|
+
const errorMessage = axiosError.response
|
|
175
175
|
? `下载文件失败: HTTP ${axiosError.response.status} - ${axiosError.message}`
|
|
176
176
|
: `下载文件失败: ${axiosError.message}`;
|
|
177
177
|
errorLog(errorMessage, spinner);
|
|
@@ -403,4 +403,6 @@ module.exports = async function (cmpZipUrl, option = {}) {
|
|
|
403
403
|
|
|
404
404
|
return false;
|
|
405
405
|
}
|
|
406
|
-
}
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
module.exports = createCmpByZip;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
const _ = require('lodash');
|
|
2
|
+
const { getConfigObj } = require('akfun');
|
|
2
3
|
const { catchCurPackageJson } = require('../pathUtils');
|
|
3
|
-
const getConfigObj = require('../getConfigObj');
|
|
4
4
|
const ora = require('ora');
|
|
5
5
|
const NeoService = require('../../neo/neoService');
|
|
6
6
|
const { getFramework, errorLog, successLog } = require('../common');
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
const fs = require('fs');
|
|
2
2
|
const path = require('path');
|
|
3
3
|
const _ = require('lodash');
|
|
4
|
+
const { getConfigObj } = require('akfun');
|
|
4
5
|
const { catchCurPackageJson } = require('../pathUtils');
|
|
5
|
-
const getConfigObj = require('../getConfigObj');
|
|
6
6
|
const ora = require('ora');
|
|
7
7
|
const NeoService = require('../../neo/neoService');
|
|
8
8
|
const { getFramework, errorLog, successLog } = require('../common');
|
|
@@ -12,7 +12,6 @@ const createCmpProjectZip = require('../projectUtils/createCmpProjectZip');
|
|
|
12
12
|
const currentPackageJsonDir = catchCurPackageJson();
|
|
13
13
|
const currentPackageJson = getConfigObj(currentPackageJsonDir);
|
|
14
14
|
|
|
15
|
-
|
|
16
15
|
// 获取属性 propsSchema 数据结构
|
|
17
16
|
const getPropsSchema = (propsSchema = []) => {
|
|
18
17
|
return propsSchema.map((item) => {
|
|
@@ -98,10 +97,10 @@ const buildComponentData = async (assetsRoot, cmpInfo) => {
|
|
|
98
97
|
label: modelInstance.label || cmpType,
|
|
99
98
|
description: modelInstance.description || '',
|
|
100
99
|
componentCategory: (modelInstance.tags || ['自定义组件']).join(','),
|
|
101
|
-
targetPage:
|
|
102
|
-
targetObject:
|
|
103
|
-
targetApplication:
|
|
104
|
-
targetDevice:
|
|
100
|
+
targetPage: modelInstance.targetPage || ['customPage'], // 支持的页面类型
|
|
101
|
+
targetObject: modelInstance.targetObject || ['all'], // 支持的实体类型
|
|
102
|
+
targetApplication: modelInstance.targetApplication || ['all'], // 支持的应用类型
|
|
103
|
+
targetDevice: modelInstance.targetDevice || 'all', // 支持的设备类型。只有这个字段是字符串数值,其他都是数组
|
|
105
104
|
iconUrl: modelInstance.iconSrc || modelInstance.iconUrl,
|
|
106
105
|
defaultProps: JSON.stringify(modelInstance.defaultComProps || {}),
|
|
107
106
|
previewProps: JSON.stringify(modelInstance.previewComProps || {}),
|
|
@@ -116,7 +115,10 @@ const buildComponentData = async (assetsRoot, cmpInfo) => {
|
|
|
116
115
|
modelInstance.enableDuplicate !== undefined ? modelInstance.enableDuplicate : true
|
|
117
116
|
};
|
|
118
117
|
|
|
119
|
-
console.log(
|
|
118
|
+
console.log(
|
|
119
|
+
`自定义组件模型信息(${cmpType}):`,
|
|
120
|
+
_.omit(curCmpInfo, ['assetFile', 'modelAssetFile', 'cssAssetFile', 'codeLibFile'])
|
|
121
|
+
);
|
|
120
122
|
return curCmpInfo;
|
|
121
123
|
} catch (error) {
|
|
122
124
|
errorLog(`自定义组件模型文件解析失败 (${modelFile || '未知路径'}): ${error.message}`);
|
|
@@ -4,7 +4,7 @@ const { resolveToCurrentRoot } = require('../pathUtils');
|
|
|
4
4
|
/**
|
|
5
5
|
* 更新发布日志
|
|
6
6
|
*/
|
|
7
|
-
module.exports = (curHistoryData)
|
|
7
|
+
module.exports = function (curHistoryData) {
|
|
8
8
|
// 创建存放 cli 的临时目录
|
|
9
9
|
const cliTempDir = resolveToCurrentRoot('./.neo-cli');
|
|
10
10
|
if (!fs.existsSync(cliTempDir)) {
|
package/test/demo.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const {neoInit, neoConfigInit, inspect, preview, debug, build2lib, build2esm, neoInitByCopy, previewCmp } = require('../src/
|
|
1
|
+
const {neoInit, neoConfigInit, inspect, preview, debug, build2lib, build2esm, neoInitByCopy, previewCmp } = require('../src/main');
|
|
2
2
|
const getEntries = require('../src/utils/projectUtils/getEntries');
|
|
3
3
|
const getEntriesWithAutoRegister = require('../src/utils/projectUtils/getEntriesWithAutoRegister');
|
|
4
4
|
// inspect('dev');
|
package/test/demo3.js
CHANGED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
const path = require('path');
|
|
3
|
+
// 统一路径解析
|
|
4
|
+
function resolve(dir) {
|
|
5
|
+
return path.resolve(__dirname, dir);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
// 包括生产和开发的环境配置信息
|
|
9
|
+
module.exports = {
|
|
10
|
+
settings: {
|
|
11
|
+
enableESLint: false, // 调试模式是否开启ESLint,默认开启ESLint检测代码格式
|
|
12
|
+
enableESLintFix: false, // 是否自动修正代码格式,默认不自动修正
|
|
13
|
+
enableStyleLint: false, // 是否开启StyleLint,默认开启ESLint检测代码格式
|
|
14
|
+
enableStyleLintFix: false // 是否需要StyleLint自动修正代码格式
|
|
15
|
+
},
|
|
16
|
+
webpack: {
|
|
17
|
+
resolve: {
|
|
18
|
+
// webpack的resolve配置
|
|
19
|
+
extensions: ['.js', '.json'], // 用于配置webpack在尝试过程中用到的后缀列表
|
|
20
|
+
alias: {
|
|
21
|
+
'@': resolve('src'),
|
|
22
|
+
},
|
|
23
|
+
// conditionNames: ['require']
|
|
24
|
+
},
|
|
25
|
+
target: 'node',
|
|
26
|
+
createDeclaration: true, // 打包时是否创建ts声明文件
|
|
27
|
+
ignoreNodeModules: false, // 打包时是否忽略 node_modules
|
|
28
|
+
allowList: [], // ignoreNodeModules为true时生效
|
|
29
|
+
externals: [],
|
|
30
|
+
projectDir: ['src'],
|
|
31
|
+
// cssLoaderUrl: true,
|
|
32
|
+
moduleRules: [], // 用于配置自定义loaders
|
|
33
|
+
plugins: [], // 用于配置自定义plugins
|
|
34
|
+
},
|
|
35
|
+
build2lib: {
|
|
36
|
+
entry: {
|
|
37
|
+
index: './src/index.js', // 构建lib的入口
|
|
38
|
+
main: './src/main.js', // 构建lib的入口
|
|
39
|
+
},
|
|
40
|
+
output: {
|
|
41
|
+
filename: '[name].js',
|
|
42
|
+
library: {
|
|
43
|
+
type: 'commonjs2', // 使用 CommonJS 模式构建
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
// 用于构建生产环境代码的相关配置信息
|
|
47
|
+
NODE_ENV: 'development', // development / production
|
|
48
|
+
assetsRoot: resolve('./dist'), // 打包后的文件绝对路径(物理路径)
|
|
49
|
+
assetsPublicPath: '/', // 设置静态资源的引用路径(根域名+路径)
|
|
50
|
+
assetsSubDirectory: '', // 资源引用二级路径
|
|
51
|
+
ignoreNodeModules: true, // 打包时是否忽略 node_modules
|
|
52
|
+
// allowList: ['vue'], // ignoreNodeModules为true时生效
|
|
53
|
+
productionSourceMap: false,
|
|
54
|
+
productionGzip: false,
|
|
55
|
+
productionGzipExtensions: ['js', 'css', 'json'],
|
|
56
|
+
// bundleAnalyzerReport: false
|
|
57
|
+
},
|
|
58
|
+
build2esm: {
|
|
59
|
+
type: 'js',
|
|
60
|
+
compress: false,
|
|
61
|
+
input: {
|
|
62
|
+
index: resolve('src/index.js'),
|
|
63
|
+
main: resolve('src/main.js')
|
|
64
|
+
},
|
|
65
|
+
output: {
|
|
66
|
+
dir: resolve('dist'),
|
|
67
|
+
format: 'cjs', // which can be one of "amd", "cjs", "system", "es", "iife" or "umd".
|
|
68
|
+
preserveModules: true, // 关键:保留原始模块结构,不合并文件
|
|
69
|
+
preserveModulesRoot: 'src', // 指定模块根目录
|
|
70
|
+
entryFileNames: '[name].js',
|
|
71
|
+
exports: 'auto', // 自动处理导出(适配 ES 模块的默认导出/命名导出)
|
|
72
|
+
// interop: 'auto' // 自动处理 CJS/ES 模块互操作(如 __esModule 标记)
|
|
73
|
+
},
|
|
74
|
+
// 不将以下依赖打包到输出文件中
|
|
75
|
+
excludeList: []
|
|
76
|
+
}
|
|
77
|
+
};
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
prettier 配置文件
|
|
3
|
-
更多配置信息:https://prettier.io/docs/en/options.html
|
|
4
|
-
*/
|
|
5
|
-
module.exports = {
|
|
6
|
-
semi: true, // Semicolons 分号,默认需要分号
|
|
7
|
-
tabWidth: 2, // 空格,默认 2,
|
|
8
|
-
useTabs: false,
|
|
9
|
-
singleQuote: true, // 单引号还是双引号,默认为false 双引号
|
|
10
|
-
trailingComma: 'all', // 逗号
|
|
11
|
-
jsxBracketSameLine: false, // 默认为false,Put the > of a multi-line JSX element at the end of the last line instead of being alone on the next line (does not apply to self closing elements).
|
|
12
|
-
};
|
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
### 目录说明
|
|
2
|
-
- src: 自定义组件源码;
|
|
3
|
-
- src/assets: 存放组件静态资源,比如 css、img等;
|
|
4
|
-
- src/components: 存放自定义组件代码,每个自定义组件以自身名称(cmpType 数值)作为目录进行存放;
|
|
5
|
-
- src/components/xxCmp/index.tsx: 自定义组件的内容文件;
|
|
6
|
-
- src/components/xxCmp/model.ts: 自定义组件的模型文件,用于对接页面设计器;
|
|
7
|
-
- neo.config.js: neo-cmp-cli 配置文件。
|
|
8
|
-
|
|
9
|
-
### 组件开发规范
|
|
10
|
-
- 存放在 src/components 目录下的自定义组件,默认 index 为自定义组件源码入口文件,register.[tj]s 为注册 自定义组件的脚本文件,model.[tj]s 为自定义组件的模型文件(对接页面设计器需要);
|
|
11
|
-
- 当 neo.config.js 中的 entry 为空或者不存在时,cli 将根据 src/components 目录下的自定义组件结构生成对应的 entry 配置(可在命令控制台查看生成的 entry 配置);
|
|
12
|
-
- 自定义组件中可用的配置项类型 请见 [当前可用表单项](https://github.com/wibetter/neo-register/blob/master/docs/FormItemType.md);
|
|
13
|
-
- 自定义组件最外层请设置一个唯一的 ClassName(比如 xx-cmpType-container),所有内容样式请放在该 ClassName 中,避免自定义组件样式相互干扰;
|
|
14
|
-
- 默认开启代码规范检测(含样式内容),如需关闭,请调整 neo.config.js 相关配置;
|
|
15
|
-
- 请使用 react 16版本。
|
|
16
|
-
|
|
17
|
-
### 自定义组件注册器使用说明
|
|
18
|
-
- [neo-register 使用说明](https://www.npmjs.com/package/neo-register?activeTab=readme)
|
|
19
|
-
备注:预览、调试(linkDebug)和构建发布时 cli 会自动创建对应的注册文件(含 neo-register 的使用),用户无需关注 neo-register。
|
|
20
|
-
|
|
21
|
-
### 开发说明
|
|
22
|
-
|
|
23
|
-
1. **安装依赖**
|
|
24
|
-
```bash
|
|
25
|
-
$ npm i 或者 yarn
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
2. **preview: 组件预览模式(带热更新)**
|
|
29
|
-
> preview模式:用于预览自定义组件内容。
|
|
30
|
-
```bash
|
|
31
|
-
$ npm run preview
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
3. **linkDebug: 外链调试(在线上页面设计器端预览自定义组件)**
|
|
35
|
-
> linkDebug模式:用于在线上页面设计器中预览和调试自定义组件。
|
|
36
|
-
```bash
|
|
37
|
-
$ npm run linkDebug
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
4. **发布到 NeoCRM 平台**
|
|
41
|
-
> 需要确保 package.json 中的 name 值唯一,version 值不重复。
|
|
42
|
-
```bash
|
|
43
|
-
$ npm run pushCmp
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
### 🔐 授权配置
|
|
47
|
-
|
|
48
|
-
使用 `neo push cmp`、`neo pull cmp`、`neo delete cmp` 等命令与 NeoCRM 平台交互时,需要配置授权信息。
|
|
49
|
-
|
|
50
|
-
#### 方式一:OAuth2 登录授权(推荐)
|
|
51
|
-
|
|
52
|
-
OAuth2 授权码模式更加安全可靠,无需用户配置账户名和密码。
|
|
53
|
-
|
|
54
|
-
##### 使用步骤
|
|
55
|
-
|
|
56
|
-
1. **登录 NeoCRM 平台**
|
|
57
|
-
```bash
|
|
58
|
-
neo login
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
执行流程:
|
|
62
|
-
- 自动打开浏览器访问授权页面
|
|
63
|
-
- 在浏览器中输入 NeoCRM 账号密码进行登录(需选择对应的租户)
|
|
64
|
-
- 授权成功后自动跳转回本地(附带 code)
|
|
65
|
-
- cli 端 通过 code 获取 Token,并自动保存到项目的 `.neo-cli/token.json` 文件中
|
|
66
|
-
|
|
67
|
-
2. **登出 NeoCRM 平台**
|
|
68
|
-
```bash
|
|
69
|
-
neo logout
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
功能:清除本地保存的 token 文件,下次使用需要重新登录。
|
|
73
|
-
|
|
74
|
-
##### 配置示例
|
|
75
|
-
|
|
76
|
-
```javascript
|
|
77
|
-
// neo.config.js
|
|
78
|
-
module.exports = {
|
|
79
|
-
neoConfig: {
|
|
80
|
-
neoBaseURL: 'https://crm-cd.xiaoshouyi.com', // 平台根地址(默认:https://crm.xiaoshouyi.com)
|
|
81
|
-
// 登录授权 URL(用于获取 code)
|
|
82
|
-
loginURL: 'https://login-cd.xiaoshouyi.com/auc/oauth2/auth',
|
|
83
|
-
tokenAPI: 'https://login-cd.xiaoshouyi.com/auc/oauth2/token', // Token 获取接口地址
|
|
84
|
-
},
|
|
85
|
-
}
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
##### Token 有效期
|
|
89
|
-
|
|
90
|
-
- **access_token**:默认有效期 2 小时
|
|
91
|
-
- **refresh_token**:默认有效期 30 天
|
|
92
|
-
- 系统会在 access_token 过期前 5 分钟自动刷新
|
|
93
|
-
- 如果 refresh_token 也过期,需要重新执行 `neo login`
|
|
94
|
-
|
|
95
|
-
##### 常见问题
|
|
96
|
-
|
|
97
|
-
**Q1: 浏览器无法自动打开怎么办?**
|
|
98
|
-
A: 命令行会输出授权 URL,手动复制到浏览器中打开即可。
|
|
99
|
-
|
|
100
|
-
**Q2: Token 刷新失败怎么办?**
|
|
101
|
-
A: 如果 refresh_token 也过期(默认 30 天),需要重新执行 `neo login`。同时检查网络连接是否正常。
|
|
102
|
-
|
|
103
|
-
**Q3: 授权登录后没有正常跳回 redirect_uri**
|
|
104
|
-
A: 可能被浏览器安装的插件影响,目前已知会影响授权登录的浏览器插件有:Neo UI Extension,请关闭插件后重试。
|
|
105
|
-
|
|
106
|
-
#### 方式二:密码授权配置
|
|
107
|
-
|
|
108
|
-
在项目根目录的 `neo.config.js` 文件中添加 NeoCRM 平台授权配置:
|
|
109
|
-
|
|
110
|
-
```javascript
|
|
111
|
-
module.exports = {
|
|
112
|
-
neoConfig: {
|
|
113
|
-
neoBaseURL: 'https://crm-cd.xiaoshouyi.com', // 平台根地址(默认:https://crm.xiaoshouyi.com)
|
|
114
|
-
tokenAPI: 'https://login-cd.xiaoshouyi.com/auc/oauth2/token', // Token 获取接口地址
|
|
115
|
-
// NeoCRM 授权配置
|
|
116
|
-
auth: {
|
|
117
|
-
client_id: 'xx', // 客户端 ID,从创建连接器的客户端信息中获取(Client_Id)
|
|
118
|
-
client_secret: 'xxx', // 客户端秘钥,从创建连接器的客户端信息中获取(Client_Secret)
|
|
119
|
-
username: 'xx', // 用户在销售易系统中的用户名
|
|
120
|
-
/**
|
|
121
|
-
* password 为 用户在销售易系统中的账号密码加上 8 位安全令牌。
|
|
122
|
-
* 例如,用户密码为 123456,安全令牌为 ABCDEFGH,则 password 的值应为 123456ABCDEFGH。
|
|
123
|
-
*/
|
|
124
|
-
password: 'xx xx' // 用户账户密码 + 8 位安全令牌
|
|
125
|
-
},
|
|
126
|
-
},
|
|
127
|
-
}
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
##### 授权配置获取方式
|
|
131
|
-
|
|
132
|
-
1. **客户端 ID 和客户端秘钥**:需通过创建连接器获取
|
|
133
|
-
- 访问 [销售易文档中心](https://doc.xiaoshouyi.com) / 创建连接器
|
|
134
|
-
- 创建连接器后,从客户端信息中获取 `Client_Id` 和 `Client_Secret`
|
|
135
|
-
|
|
136
|
-
2. **安全令牌**:如何获取安全令牌
|
|
137
|
-
- 访问 [销售易文档中心](https://doc.xiaoshouyi.com) / OAuth安全认证 / 密码模式 / 获取令牌
|
|
138
|
-
- 按照文档说明获取 8 位安全令牌
|
|
139
|
-
- `password` 字段 = 用户账户密码 + 8 位安全令牌(直接拼接,无空格或分隔符)
|
|
140
|
-
|
|
141
|
-
#### OAuth2 模式 vs 密码模式
|
|
142
|
-
|
|
143
|
-
| 特性 | OAuth2 授权码模式 | 密码模式 |
|
|
144
|
-
|------|------------------|---------|
|
|
145
|
-
| 安全性 | ✅ 高(无需在配置文件中存储密码) | ⚠️ 较低(需要配置密码和安全令牌) |
|
|
146
|
-
| Token 刷新 | ✅ 自动刷新 | ✅ 自动刷新 |
|
|
147
|
-
| 有效期 | 2 小时(可自动刷新) | 永不过期 |
|
|
148
|
-
| 推荐程度 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
|
|
149
|
-
|
|
150
|
-
---
|
|
151
|
-
|
|
152
|
-
### 配置项说明(neo-cmp-cli)
|
|
153
|
-
[请查看neo-cmp-cli](https://www.npmjs.com/package/neo-cmp-cli)
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* https://www.npmjs.com/package/@commitlint/config-conventional\
|
|
3
|
-
*
|
|
4
|
-
* Git提交规范-配置文件
|
|
5
|
-
* Commit message 由Header、Body 和 Footer三个部分组成,其格式如下:
|
|
6
|
-
* <type>(<scope>): <subject>
|
|
7
|
-
* <BLANK LINE>
|
|
8
|
-
* <body>
|
|
9
|
-
* <BLANK LINE>
|
|
10
|
-
* <footer>
|
|
11
|
-
*
|
|
12
|
-
*【备注】
|
|
13
|
-
* type 用于说明 commit 的类别,常用下面 7 个标识:
|
|
14
|
-
* scope 用于说明当前功能点作用于哪个页面或者哪个功能模块;
|
|
15
|
-
* subject 用于简短的描述当前commit,不超过50个字符;
|
|
16
|
-
* body 用于填写对本次 commit 的详细描述,可以分成多行;
|
|
17
|
-
* footer 不兼容变动声明,或者关闭 Issue。
|
|
18
|
-
*
|
|
19
|
-
* 【type类型取值类型】
|
|
20
|
-
* feat:新功能(feature)
|
|
21
|
-
* fix:功能优化
|
|
22
|
-
* bug:修补bug
|
|
23
|
-
* docs:文档(documentation)
|
|
24
|
-
* style:格式(不影响代码运行的变动)
|
|
25
|
-
* refactor:重构(即不是新增功能,也不是修改bug的代码变动)
|
|
26
|
-
* test:增加测试
|
|
27
|
-
* chore:构建过程或辅助工具的变动
|
|
28
|
-
* build:影响构建系统或外部依赖项的更改(示例范围:gulp,broccoli,npm)
|
|
29
|
-
* ci:对 CI 配置文件和脚本的更改(示例范围:Travis,Circle,BrowserStack,SauceLabs)
|
|
30
|
-
* perf:改进性能的代码更改
|
|
31
|
-
*
|
|
32
|
-
*/
|
|
33
|
-
|
|
34
|
-
module.exports = {
|
|
35
|
-
extends: ['@commitlint/config-conventional'],
|
|
36
|
-
rules: {
|
|
37
|
-
'type-enum': [
|
|
38
|
-
2,
|
|
39
|
-
'always',
|
|
40
|
-
[
|
|
41
|
-
'feat',
|
|
42
|
-
'fix',
|
|
43
|
-
'bug',
|
|
44
|
-
'docs',
|
|
45
|
-
'style',
|
|
46
|
-
'refactor',
|
|
47
|
-
'test',
|
|
48
|
-
'chore',
|
|
49
|
-
'perf',
|
|
50
|
-
'build',
|
|
51
|
-
'ci',
|
|
52
|
-
],
|
|
53
|
-
],
|
|
54
|
-
'type-empty': [2, 'never'],
|
|
55
|
-
'scope-empty': [1, 'never'],
|
|
56
|
-
'subject-full-stop': [0, 'never'],
|
|
57
|
-
'subject-case': [0, 'never'],
|
|
58
|
-
},
|
|
59
|
-
};
|