imooc-cli-dev-gd 1.0.0

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.
Files changed (63) hide show
  1. package/LICENSE.md +0 -0
  2. package/commands/init/README.md +11 -0
  3. package/commands/init/__tests__/init.test.js +7 -0
  4. package/commands/init/lib/getProjectTemplate.js +7 -0
  5. package/commands/init/lib/index.js +423 -0
  6. package/commands/init/package.json +41 -0
  7. package/commands/publish/README.md +11 -0
  8. package/commands/publish/__tests__/publish.test.js +7 -0
  9. package/commands/publish/lib/index.js +67 -0
  10. package/commands/publish/package.json +32 -0
  11. package/core/cli/README.md +11 -0
  12. package/core/cli/__tests__/core.test.js +7 -0
  13. package/core/cli/bin/index.js +9 -0
  14. package/core/cli/lib/const.js +5 -0
  15. package/core/cli/lib/index.js +151 -0
  16. package/core/cli/package.json +41 -0
  17. package/core/exec/README.md +11 -0
  18. package/core/exec/__tests__/exec.test.js +7 -0
  19. package/core/exec/lib/index.js +89 -0
  20. package/core/exec/package.json +31 -0
  21. package/lerna.json +9 -0
  22. package/models/cloudbuild/README.md +11 -0
  23. package/models/cloudbuild/__tests__/cloudbuild.test.js +7 -0
  24. package/models/cloudbuild/lib/index.js +99 -0
  25. package/models/cloudbuild/package.json +28 -0
  26. package/models/command/README.md +11 -0
  27. package/models/command/__tests__/Command.test.js +7 -0
  28. package/models/command/lib/index.js +56 -0
  29. package/models/command/package.json +31 -0
  30. package/models/git/README.md +11 -0
  31. package/models/git/__tests__/git.test.js +7 -0
  32. package/models/git/lib/GitServer.js +60 -0
  33. package/models/git/lib/Gitee.js +59 -0
  34. package/models/git/lib/GiteeRequest.js +50 -0
  35. package/models/git/lib/Github.js +63 -0
  36. package/models/git/lib/GithubRequest.js +53 -0
  37. package/models/git/lib/index.js +512 -0
  38. package/models/git/package.json +35 -0
  39. package/models/package/README.md +11 -0
  40. package/models/package/__tests__/package.test.js +7 -0
  41. package/models/package/lib/index.js +121 -0
  42. package/models/package/package.json +35 -0
  43. package/package.json +14 -0
  44. package/utils/format-path/README.md +11 -0
  45. package/utils/format-path/__tests__/format-path.test.js +7 -0
  46. package/utils/format-path/lib/index.js +15 -0
  47. package/utils/format-path/package.json +26 -0
  48. package/utils/get-npm-info/README.md +11 -0
  49. package/utils/get-npm-info/__tests__/get-npm-info.test.js +7 -0
  50. package/utils/get-npm-info/lib/index.js +65 -0
  51. package/utils/get-npm-info/package.json +28 -0
  52. package/utils/log/README.md +11 -0
  53. package/utils/log/__tests__/log.test.js +7 -0
  54. package/utils/log/lib/index.js +10 -0
  55. package/utils/log/package.json +32 -0
  56. package/utils/request/README.md +11 -0
  57. package/utils/request/__tests__/request.test.js +7 -0
  58. package/utils/request/lib/index.js +22 -0
  59. package/utils/request/package.json +29 -0
  60. package/utils/utils/README.md +11 -0
  61. package/utils/utils/__tests__/utils.test.js +7 -0
  62. package/utils/utils/lib/index.js +77 -0
  63. package/utils/utils/package.json +26 -0
@@ -0,0 +1,59 @@
1
+ const GitServer = require('./GitServer');
2
+ const GiteeRequest = require('./GiteeRequest');
3
+
4
+ class Gitee extends GitServer {
5
+ constructor() {
6
+ super('gitee');
7
+ this.request = null;
8
+ }
9
+
10
+ setToken(token) {
11
+ super.setToken(token);
12
+ this.request = new GiteeRequest(token);
13
+ }
14
+
15
+ getUser() {
16
+ return this.request.get('/user');
17
+ }
18
+
19
+ getOrg(username) {
20
+ return this.request.get(`/users/${username}/orgs`, {
21
+ page: 1,
22
+ per_page: 100,
23
+ });
24
+ }
25
+
26
+ getRepo(login, name) {
27
+ return this.request
28
+ .get(`/repos/${login}/${name}`)
29
+ .then(response => {
30
+ return this.handleResponse(response);
31
+ });
32
+ }
33
+
34
+ createRepo(name) {
35
+ return this.request.post('/user/repos', {
36
+ name,
37
+ });
38
+ }
39
+
40
+ createOrgRepo(name, login) {
41
+ return this.request.post(`/orgs/${login}/repos`, {
42
+ name,
43
+ });
44
+ }
45
+
46
+ getTokenUrl() {
47
+ return 'https://gitee.com/personal_access_tokens';
48
+ }
49
+
50
+ getTokenHelpUrl() {
51
+ return 'https://gitee.com/help/articles/4191';
52
+ }
53
+
54
+ getRemote(login, name) {
55
+ return `git@gitee.com:${login}/${name}.git`;
56
+ }
57
+ }
58
+
59
+ module.exports = Gitee;
@@ -0,0 +1,50 @@
1
+ const axios = require('axios');
2
+ const BASE_URL = 'https://gitee.com/api/v5';
3
+
4
+ class GiteeRequest {
5
+ constructor(token) {
6
+ this.token = token;
7
+ this.service = axios.create({
8
+ baseURL: BASE_URL,
9
+ timeout: 5000,
10
+ });
11
+ this.service.interceptors.response.use(
12
+ response => {
13
+ return response.data;
14
+ },
15
+ error => {
16
+ if (error.response && error.response.data) {
17
+ return error.response;
18
+ } else {
19
+ return Promise.reject(error);
20
+ }
21
+ },
22
+ );
23
+ }
24
+
25
+ get(url, params, headers) {
26
+ return this.service({
27
+ url,
28
+ params: {
29
+ ...params,
30
+ access_token: this.token,
31
+ },
32
+ method: 'get',
33
+ headers,
34
+ });
35
+ }
36
+
37
+ post(url, data, headers) {
38
+ return this.service({
39
+ url,
40
+ params: {
41
+ access_token: this.token,
42
+ },
43
+ data,
44
+ method: 'post',
45
+ headers,
46
+ });
47
+ }
48
+ }
49
+
50
+ module.exports = GiteeRequest;
@@ -0,0 +1,63 @@
1
+ const GitServer = require('./GitServer');
2
+ const GithubRequest = require('./GithubRequest');
3
+
4
+ class Github extends GitServer {
5
+ constructor() {
6
+ super('github');
7
+ this.request = null;
8
+ }
9
+
10
+ getUser() {
11
+ return this.request.get('/user');
12
+ }
13
+
14
+ getOrg(username) {
15
+ return this.request.get(`/user/orgs`, {
16
+ page: 1,
17
+ per_page: 100,
18
+ });
19
+ }
20
+
21
+ getRepo(login, name) {
22
+ return this.request
23
+ .get(`/repos/${login}/${name}`)
24
+ .then(response => {
25
+ return this.handleResponse(response);
26
+ });
27
+ }
28
+
29
+ createRepo(name) {
30
+ return this.request.post('/user/repos', {
31
+ name,
32
+ }, {
33
+ Accept: 'application/vnd.github.v3+json',
34
+ });
35
+ }
36
+
37
+ createOrgRepo(name, login) {
38
+ return this.request.post(`/orgs/${login}/repos`, {
39
+ name,
40
+ }, {
41
+ Accept: 'application/vnd.github.v3+json',
42
+ });
43
+ }
44
+
45
+ setToken(token) {
46
+ super.setToken(token);
47
+ this.request = new GithubRequest(token);
48
+ }
49
+
50
+ getTokenUrl() {
51
+ return 'https://github.com/settings/tokens';
52
+ }
53
+
54
+ getTokenHelpUrl() {
55
+ return 'https://docs.github.com/en/github/authenticating-to-github/connecting-to-github-with-ssh';
56
+ }
57
+
58
+ getRemote(login, name) {
59
+ return `git@github.com:${login}/${name}.git`;
60
+ }
61
+ }
62
+
63
+ module.exports = Github;
@@ -0,0 +1,53 @@
1
+ const axios = require('axios');
2
+ const BASE_URL = 'https://api.github.com';
3
+
4
+ class GithubRequest {
5
+ constructor(token) {
6
+ this.token = token;
7
+ this.service = axios.create({
8
+ baseURL: BASE_URL,
9
+ timeout: 5000,
10
+ });
11
+ this.service.interceptors.request.use(
12
+ config => {
13
+ config.headers['Authorization'] = `token ${this.token}`;
14
+ return config;
15
+ },
16
+ error => {
17
+ Promise.reject(error);
18
+ },
19
+ );
20
+ this.service.interceptors.response.use(
21
+ response => {
22
+ return response.data;
23
+ },
24
+ error => {
25
+ if (error.response && error.response.data) {
26
+ return error.response;
27
+ } else {
28
+ return Promise.reject(error);
29
+ }
30
+ },
31
+ );
32
+ }
33
+
34
+ get(url, params, headers) {
35
+ return this.service({
36
+ url,
37
+ params,
38
+ method: 'get',
39
+ headers,
40
+ });
41
+ }
42
+
43
+ post(url, data, headers) {
44
+ return this.service({
45
+ url,
46
+ data,
47
+ method: 'post',
48
+ headers,
49
+ });
50
+ }
51
+ }
52
+
53
+ module.exports = GithubRequest;