@mexty/cli 1.0.1 → 1.0.2

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 (41) hide show
  1. package/README.md +5 -5
  2. package/package.json +4 -2
  3. package/src/commands/sync.ts +2 -2
  4. package/src/index.ts +83 -83
  5. package/src/utils/api.ts +241 -239
  6. package/dist/commands/create.d.ts +0 -7
  7. package/dist/commands/create.d.ts.map +0 -1
  8. package/dist/commands/create.js +0 -80
  9. package/dist/commands/create.js.map +0 -1
  10. package/dist/commands/delete.d.ts +0 -2
  11. package/dist/commands/delete.d.ts.map +0 -1
  12. package/dist/commands/delete.js +0 -54
  13. package/dist/commands/delete.js.map +0 -1
  14. package/dist/commands/fork.d.ts +0 -2
  15. package/dist/commands/fork.d.ts.map +0 -1
  16. package/dist/commands/fork.js +0 -52
  17. package/dist/commands/fork.js.map +0 -1
  18. package/dist/commands/login.d.ts +0 -2
  19. package/dist/commands/login.d.ts.map +0 -1
  20. package/dist/commands/login.js +0 -12
  21. package/dist/commands/login.js.map +0 -1
  22. package/dist/commands/publish.d.ts +0 -2
  23. package/dist/commands/publish.d.ts.map +0 -1
  24. package/dist/commands/publish.js +0 -139
  25. package/dist/commands/publish.js.map +0 -1
  26. package/dist/commands/sync.d.ts +0 -2
  27. package/dist/commands/sync.d.ts.map +0 -1
  28. package/dist/commands/sync.js +0 -140
  29. package/dist/commands/sync.js.map +0 -1
  30. package/dist/index.d.ts +0 -3
  31. package/dist/index.d.ts.map +0 -1
  32. package/dist/index.js +0 -60
  33. package/dist/index.js.map +0 -1
  34. package/dist/utils/api.d.ts +0 -55
  35. package/dist/utils/api.d.ts.map +0 -1
  36. package/dist/utils/api.js +0 -68
  37. package/dist/utils/api.js.map +0 -1
  38. package/dist/utils/git.d.ts +0 -41
  39. package/dist/utils/git.d.ts.map +0 -1
  40. package/dist/utils/git.js +0 -171
  41. package/dist/utils/git.js.map +0 -1
@@ -1,41 +0,0 @@
1
- export declare class GitManager {
2
- private git;
3
- constructor(cwd?: string);
4
- /**
5
- * Clone a repository to a local directory
6
- */
7
- cloneRepository(repoUrl: string, targetDir: string): Promise<void>;
8
- /**
9
- * Check if current directory is a Git repository
10
- */
11
- isGitRepository(dir?: string): Promise<boolean>;
12
- /**
13
- * Get the current repository's remote URL
14
- */
15
- getRemoteUrl(dir?: string): Promise<string | null>;
16
- /**
17
- * Check if there are uncommitted changes
18
- */
19
- hasUncommittedChanges(dir?: string): Promise<boolean>;
20
- /**
21
- * Push current branch to remote
22
- */
23
- pushToRemote(dir?: string): Promise<void>;
24
- /**
25
- * Get repository information
26
- */
27
- getRepositoryInfo(dir?: string): Promise<{
28
- branch: string;
29
- remoteUrl: string | null;
30
- hasChanges: boolean;
31
- }>;
32
- /**
33
- * Extract repository name from URL
34
- */
35
- static extractRepoName(gitUrl: string): string;
36
- /**
37
- * Validate Git URL format
38
- */
39
- static isValidGitUrl(url: string): boolean;
40
- }
41
- //# sourceMappingURL=git.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/utils/git.ts"],"names":[],"mappings":"AAgDA,qBAAa,UAAU;IACrB,OAAO,CAAC,GAAG,CAAY;gBAEX,GAAG,CAAC,EAAE,MAAM;IAIxB;;OAEG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBxE;;OAEG;IACG,eAAe,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAUrD;;OAEG;IACG,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAWxD;;OAEG;IACG,qBAAqB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAU3D;;OAEG;IACG,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB/C;;OAEG;IACG,iBAAiB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAC7C,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,UAAU,EAAE,OAAO,CAAC;KACrB,CAAC;IAaF;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAY9C;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;CAU3C"}
package/dist/utils/git.js DELETED
@@ -1,171 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.GitManager = void 0;
7
- const simple_git_1 = __importDefault(require("simple-git"));
8
- const fs_1 = __importDefault(require("fs"));
9
- const chalk_1 = __importDefault(require("chalk"));
10
- // Simple spinner implementation since ora v5 has import issues
11
- class SimpleSpinner {
12
- constructor(message) {
13
- this.interval = null;
14
- this.frames = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'];
15
- this.currentFrame = 0;
16
- this.message = message;
17
- }
18
- start() {
19
- process.stdout.write(this.message);
20
- this.interval = setInterval(() => {
21
- process.stdout.write(`\r${this.frames[this.currentFrame]} ${this.message}`);
22
- this.currentFrame = (this.currentFrame + 1) % this.frames.length;
23
- }, 80);
24
- return this;
25
- }
26
- succeed(message) {
27
- this.stop();
28
- console.log(`\r✅ ${message}`);
29
- }
30
- fail(message) {
31
- this.stop();
32
- console.log(`\r❌ ${message}`);
33
- }
34
- stop() {
35
- if (this.interval) {
36
- clearInterval(this.interval);
37
- this.interval = null;
38
- }
39
- process.stdout.write('\r');
40
- }
41
- }
42
- function ora(message) {
43
- return new SimpleSpinner(message);
44
- }
45
- class GitManager {
46
- constructor(cwd) {
47
- this.git = (0, simple_git_1.default)(cwd);
48
- }
49
- /**
50
- * Clone a repository to a local directory
51
- */
52
- async cloneRepository(repoUrl, targetDir) {
53
- const spinner = ora(`Cloning repository from ${repoUrl}...`).start();
54
- try {
55
- // Ensure target directory doesn't exist
56
- if (fs_1.default.existsSync(targetDir)) {
57
- spinner.fail(chalk_1.default.red(`Directory ${targetDir} already exists`));
58
- throw new Error(`Directory ${targetDir} already exists`);
59
- }
60
- // Clone the repository
61
- await this.git.clone(repoUrl, targetDir);
62
- spinner.succeed(chalk_1.default.green(`Repository cloned to ${targetDir}`));
63
- }
64
- catch (error) {
65
- spinner.fail(chalk_1.default.red(`Failed to clone repository: ${error.message}`));
66
- throw error;
67
- }
68
- }
69
- /**
70
- * Check if current directory is a Git repository
71
- */
72
- async isGitRepository(dir) {
73
- try {
74
- const git = dir ? (0, simple_git_1.default)(dir) : this.git;
75
- await git.status();
76
- return true;
77
- }
78
- catch (error) {
79
- return false;
80
- }
81
- }
82
- /**
83
- * Get the current repository's remote URL
84
- */
85
- async getRemoteUrl(dir) {
86
- try {
87
- const git = dir ? (0, simple_git_1.default)(dir) : this.git;
88
- const remotes = await git.getRemotes(true);
89
- const origin = remotes.find(remote => remote.name === 'origin');
90
- return origin?.refs?.fetch || null;
91
- }
92
- catch (error) {
93
- return null;
94
- }
95
- }
96
- /**
97
- * Check if there are uncommitted changes
98
- */
99
- async hasUncommittedChanges(dir) {
100
- try {
101
- const git = dir ? (0, simple_git_1.default)(dir) : this.git;
102
- const status = await git.status();
103
- return !status.isClean();
104
- }
105
- catch (error) {
106
- return false;
107
- }
108
- }
109
- /**
110
- * Push current branch to remote
111
- */
112
- async pushToRemote(dir) {
113
- const spinner = ora('Pushing changes to remote repository...').start();
114
- try {
115
- const git = dir ? (0, simple_git_1.default)(dir) : this.git;
116
- // Get current branch
117
- const status = await git.status();
118
- const currentBranch = status.current;
119
- if (!currentBranch) {
120
- throw new Error('No current branch found');
121
- }
122
- // Push to remote
123
- await git.push('origin', currentBranch);
124
- spinner.succeed(chalk_1.default.green('Changes pushed to remote repository'));
125
- }
126
- catch (error) {
127
- spinner.fail(chalk_1.default.red(`Failed to push changes: ${error.message}`));
128
- throw error;
129
- }
130
- }
131
- /**
132
- * Get repository information
133
- */
134
- async getRepositoryInfo(dir) {
135
- const git = dir ? (0, simple_git_1.default)(dir) : this.git;
136
- const status = await git.status();
137
- const remoteUrl = await this.getRemoteUrl(dir);
138
- return {
139
- branch: status.current || 'unknown',
140
- remoteUrl,
141
- hasChanges: !status.isClean()
142
- };
143
- }
144
- /**
145
- * Extract repository name from URL
146
- */
147
- static extractRepoName(gitUrl) {
148
- // Handle both SSH and HTTPS URLs
149
- const match = gitUrl.match(/\/([^\/]+?)(?:\.git)?$/);
150
- if (match) {
151
- return match[1];
152
- }
153
- // Fallback: use the last part of the URL
154
- const parts = gitUrl.split('/');
155
- return parts[parts.length - 1].replace('.git', '');
156
- }
157
- /**
158
- * Validate Git URL format
159
- */
160
- static isValidGitUrl(url) {
161
- const patterns = [
162
- /^https:\/\/github\.com\/[\w\-\.]+\/[\w\-\.]+(?:\.git)?$/,
163
- /^git@github\.com:[\w\-\.]+\/[\w\-\.]+(?:\.git)?$/,
164
- /^https:\/\/gitlab\.com\/[\w\-\.]+\/[\w\-\.]+(?:\.git)?$/,
165
- /^git@gitlab\.com:[\w\-\.]+\/[\w\-\.]+(?:\.git)?$/
166
- ];
167
- return patterns.some(pattern => pattern.test(url));
168
- }
169
- }
170
- exports.GitManager = GitManager;
171
- //# sourceMappingURL=git.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/utils/git.ts"],"names":[],"mappings":"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"}