@10play/expo-air 0.12.0 → 0.12.1

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.
@@ -0,0 +1,31 @@
1
+ import type { GitChange, BranchInfo } from "../types/messages.js";
2
+ export declare class GitOperations {
3
+ private projectRoot;
4
+ constructor(projectRoot: string);
5
+ private execGit;
6
+ private execGitFile;
7
+ private execGitVoid;
8
+ getBranchName(): string;
9
+ getGitChanges(): GitChange[];
10
+ hasUncommittedChanges(): boolean;
11
+ getGitRoot(): string;
12
+ getPRStatus(): {
13
+ hasPR: boolean;
14
+ prUrl?: string;
15
+ };
16
+ getRecentBranches(): BranchInfo[];
17
+ isValidBranchName(name: string): boolean;
18
+ autoStash(branchTag: string): {
19
+ didStash: boolean;
20
+ error?: string;
21
+ };
22
+ autoPopStash(branchName: string): {
23
+ popped: boolean;
24
+ conflict: boolean;
25
+ };
26
+ restoreStashAfterFailure(): boolean;
27
+ checkoutBranch(branchName: string): void;
28
+ createBranchFromMain(branchName: string): void;
29
+ discardAllChanges(): void;
30
+ }
31
+ //# sourceMappingURL=gitOperations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gitOperations.d.ts","sourceRoot":"","sources":["../../server/gitOperations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElE,qBAAa,aAAa;IACxB,OAAO,CAAC,WAAW,CAAS;gBAEhB,WAAW,EAAE,MAAM;IAM/B,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,WAAW;IASnB,aAAa,IAAI,MAAM;IAQvB,aAAa,IAAI,SAAS,EAAE;IA8B5B,qBAAqB,IAAI,OAAO;IAQhC,UAAU,IAAI,MAAM;IAQpB,WAAW,IAAI;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE;IASjD,iBAAiB,IAAI,UAAU,EAAE;IA6EjC,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAYxC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE;IAYnE,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE;IA4BxE,wBAAwB,IAAI,OAAO;IAWnC,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAIxC,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAK9C,iBAAiB,IAAI,IAAI;CAI1B"}
@@ -0,0 +1,232 @@
1
+ import { execSync, execFileSync } from "child_process";
2
+ export class GitOperations {
3
+ projectRoot;
4
+ constructor(projectRoot) {
5
+ this.projectRoot = projectRoot;
6
+ }
7
+ // --- Private helpers ---
8
+ execGit(command) {
9
+ return execSync(command, {
10
+ cwd: this.projectRoot,
11
+ encoding: "utf-8",
12
+ stdio: ["pipe", "pipe", "pipe"],
13
+ }).trim();
14
+ }
15
+ execGitFile(args) {
16
+ return execFileSync("git", args, {
17
+ cwd: this.projectRoot,
18
+ encoding: "utf-8",
19
+ stdio: ["pipe", "pipe", "pipe"],
20
+ }).trim();
21
+ }
22
+ execGitVoid(command) {
23
+ execSync(command, {
24
+ cwd: this.projectRoot,
25
+ stdio: ["pipe", "pipe", "pipe"],
26
+ });
27
+ }
28
+ // --- Public query methods ---
29
+ getBranchName() {
30
+ try {
31
+ return this.execGit("git rev-parse --abbrev-ref HEAD");
32
+ }
33
+ catch {
34
+ return "main";
35
+ }
36
+ }
37
+ getGitChanges() {
38
+ try {
39
+ const output = this.execGit("git status --porcelain -u");
40
+ if (!output) {
41
+ return [];
42
+ }
43
+ return output
44
+ .split("\n")
45
+ .map((line) => {
46
+ const statusCode = line.substring(0, 2);
47
+ const file = line.substring(3);
48
+ let status = "modified";
49
+ if (statusCode.includes("A") || statusCode === "??") {
50
+ status = statusCode === "??" ? "untracked" : "added";
51
+ }
52
+ else if (statusCode.includes("D")) {
53
+ status = "deleted";
54
+ }
55
+ else if (statusCode.includes("R")) {
56
+ status = "renamed";
57
+ }
58
+ return { file, status };
59
+ });
60
+ }
61
+ catch {
62
+ return [];
63
+ }
64
+ }
65
+ hasUncommittedChanges() {
66
+ try {
67
+ return this.execGit("git status --porcelain -u") !== "";
68
+ }
69
+ catch {
70
+ return false;
71
+ }
72
+ }
73
+ getGitRoot() {
74
+ try {
75
+ return this.execGit("git rev-parse --show-toplevel");
76
+ }
77
+ catch {
78
+ return this.projectRoot;
79
+ }
80
+ }
81
+ getPRStatus() {
82
+ try {
83
+ const result = this.execGit("gh pr view --json url -q .url");
84
+ return { hasPR: true, prUrl: result || undefined };
85
+ }
86
+ catch {
87
+ return { hasPR: false };
88
+ }
89
+ }
90
+ getRecentBranches() {
91
+ try {
92
+ const output = this.execGit("git branch --sort=-committerdate --format='%(refname:short)|%(committerdate:iso8601)'");
93
+ if (!output)
94
+ return [];
95
+ const currentBranch = this.getBranchName();
96
+ const branches = output
97
+ .split("\n")
98
+ .map((line) => {
99
+ const [name, lastCommitDate] = line.split("|");
100
+ return {
101
+ name: name.trim(),
102
+ isCurrent: name.trim() === currentBranch,
103
+ lastCommitDate: lastCommitDate?.trim(),
104
+ };
105
+ });
106
+ const localBranchNames = new Set(branches.map((b) => b.name));
107
+ // Fetch remote branches
108
+ try {
109
+ const remoteOutput = this.execGit("git branch -r --sort=-committerdate --format='%(refname:short)|%(committerdate:iso8601)'");
110
+ if (remoteOutput) {
111
+ for (const line of remoteOutput.split("\n")) {
112
+ const [rawName, lastCommitDate] = line.split("|");
113
+ const trimmedRaw = rawName.trim();
114
+ if (trimmedRaw === "origin/HEAD" || trimmedRaw.endsWith("/HEAD"))
115
+ continue;
116
+ const name = trimmedRaw.replace(/^origin\//, "");
117
+ if (localBranchNames.has(name))
118
+ continue;
119
+ branches.push({
120
+ name,
121
+ isCurrent: false,
122
+ lastCommitDate: lastCommitDate?.trim(),
123
+ isRemote: true,
124
+ });
125
+ }
126
+ }
127
+ }
128
+ catch {
129
+ // No remote branches or git error, skip
130
+ }
131
+ // Try to enrich with PR info
132
+ try {
133
+ const prOutput = this.execGit("gh pr list --json headRefName,number,title --limit 10");
134
+ if (prOutput) {
135
+ const prs = JSON.parse(prOutput);
136
+ for (const pr of prs) {
137
+ const branch = branches.find((b) => b.name === pr.headRefName);
138
+ if (branch) {
139
+ branch.prNumber = String(pr.number);
140
+ branch.prTitle = pr.title;
141
+ }
142
+ }
143
+ }
144
+ }
145
+ catch {
146
+ // gh CLI not available or not authenticated, skip PR enrichment
147
+ }
148
+ return branches;
149
+ }
150
+ catch {
151
+ return [];
152
+ }
153
+ }
154
+ isValidBranchName(name) {
155
+ if (!name || name.trim() !== name || name.length > 250)
156
+ return false;
157
+ if (/[\s~^:?*\[\]\\]/.test(name))
158
+ return false;
159
+ if (/\.\./.test(name))
160
+ return false;
161
+ if (/\/\//.test(name))
162
+ return false;
163
+ if (name.endsWith(".") || name.endsWith("/") || name.endsWith(".lock"))
164
+ return false;
165
+ if (name.startsWith("-") || name.startsWith("."))
166
+ return false;
167
+ return true;
168
+ }
169
+ // --- Public stash methods ---
170
+ autoStash(branchTag) {
171
+ if (!this.hasUncommittedChanges()) {
172
+ return { didStash: false };
173
+ }
174
+ try {
175
+ this.execGitFile(["stash", "push", "-u", "-m", `expo-air-auto-stash:${branchTag}`]);
176
+ return { didStash: true };
177
+ }
178
+ catch (e) {
179
+ return { didStash: false, error: e instanceof Error ? e.message : String(e) };
180
+ }
181
+ }
182
+ autoPopStash(branchName) {
183
+ try {
184
+ const stashList = this.execGitFile(["stash", "list"]);
185
+ const stashLines = stashList.split("\n");
186
+ const autoStashIndex = stashLines.findIndex((line) => line.endsWith(`expo-air-auto-stash:${branchName}`));
187
+ if (autoStashIndex === -1) {
188
+ return { popped: false, conflict: false };
189
+ }
190
+ try {
191
+ this.execGitFile(["stash", "pop", `stash@{${autoStashIndex}}`]);
192
+ return { popped: true, conflict: false };
193
+ }
194
+ catch {
195
+ // Merge conflict — reset working directory, stash is preserved
196
+ try {
197
+ this.execGitFile(["reset", "--hard", "HEAD"]);
198
+ }
199
+ catch {
200
+ // best-effort reset
201
+ }
202
+ return { popped: false, conflict: true };
203
+ }
204
+ }
205
+ catch {
206
+ // stash list failed — not critical
207
+ return { popped: false, conflict: false };
208
+ }
209
+ }
210
+ restoreStashAfterFailure() {
211
+ try {
212
+ this.execGitFile(["stash", "pop"]);
213
+ return true;
214
+ }
215
+ catch {
216
+ return false;
217
+ }
218
+ }
219
+ // --- Public mutation methods ---
220
+ checkoutBranch(branchName) {
221
+ this.execGitFile(["checkout", branchName]);
222
+ }
223
+ createBranchFromMain(branchName) {
224
+ this.execGitFile(["fetch", "origin", "main"]);
225
+ this.execGitFile(["checkout", "-b", branchName, "origin/main"]);
226
+ }
227
+ discardAllChanges() {
228
+ this.execGitVoid("git checkout -- .");
229
+ this.execGitVoid("git clean -fd");
230
+ }
231
+ }
232
+ //# sourceMappingURL=gitOperations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gitOperations.js","sourceRoot":"","sources":["../../server/gitOperations.ts"],"names":[],"mappings":"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"}
@@ -15,20 +15,15 @@ export declare class PromptServer {
15
15
  private currentStreamedResponse;
16
16
  private lastToolInput;
17
17
  private secret;
18
+ private git;
18
19
  constructor(port: number, projectRoot?: string, secret?: string | null);
19
20
  private getImageDir;
20
- private getBranchName;
21
- private getGitChanges;
22
21
  private startGitWatcher;
23
22
  private stopGitWatcher;
24
- private getPRStatus;
25
- private getRecentBranches;
26
23
  private handleListBranches;
27
- private isValidBranchName;
28
24
  private handleSwitchBranch;
29
25
  private handleCreateBranch;
30
26
  private broadcastGitStatus;
31
- private getGitRoot;
32
27
  private retriggerHMR;
33
28
  private getConfigPath;
34
29
  private loadSession;
@@ -1 +1 @@
1
- {"version":3,"file":"promptServer.d.ts","sourceRoot":"","sources":["../../server/promptServer.ts"],"names":[],"mappings":"AA0BA,qBAAa,YAAY;IACvB,OAAO,CAAC,GAAG,CAAgC;IAC3C,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,YAAY,CAAyC;IAC7D,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,mBAAmB,CAA8B;IACzD,OAAO,CAAC,gBAAgB,CAA+C;IACvE,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,kBAAkB,CAAc;IACxC,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,uBAAuB,CAAc;IAC7C,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,MAAM,CAAuB;gBAEzB,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAOtE,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,aAAa;IAYrB,OAAO,CAAC,aAAa;IAmCrB,OAAO,CAAC,eAAe;IAsBvB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,iBAAiB;IA6DzB,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,kBAAkB;IA0F1B,OAAO,CAAC,kBAAkB;IAgG1B,OAAO,CAAC,kBAAkB;IAkB1B,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,YAAY;IA4BpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,WAAW;IAmBnB,OAAO,CAAC,WAAW;IAgBnB,OAAO,CAAC,oBAAoB;IAc5B,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,iBAAiB;IAsCzB,OAAO,CAAC,YAAY;IA8CpB,OAAO,CAAC,qBAAqB;IA6C7B,OAAO,CAAC,WAAW;IAmBnB,OAAO,CAAC,cAAc;IAchB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAqCtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAiC3B,OAAO,CAAC,gBAAgB;IA0DxB,OAAO,CAAC,aAAa;IAgFrB,OAAO,CAAC,gBAAgB;IAyBxB,OAAO,CAAC,UAAU;IAuBlB,OAAO,CAAC,oBAAoB;IAkC5B,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,uBAAuB;IAS/B,OAAO,CAAC,0BAA0B;IAWlC,OAAO,CAAC,qBAAqB;IAS7B,OAAO,CAAC,qBAAqB;IAW7B,OAAO,CAAC,qBAAqB;YAWf,cAAc;IAgP5B,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,cAAc;IAgCtB,OAAO,CAAC,iBAAiB;YAaX,oBAAoB;IA2BlC,OAAO,CAAC,GAAG;CAyBZ"}
1
+ {"version":3,"file":"promptServer.d.ts","sourceRoot":"","sources":["../../server/promptServer.ts"],"names":[],"mappings":"AAyBA,qBAAa,YAAY;IACvB,OAAO,CAAC,GAAG,CAAgC;IAC3C,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,YAAY,CAAyC;IAC7D,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,mBAAmB,CAA8B;IACzD,OAAO,CAAC,gBAAgB,CAA+C;IACvE,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,kBAAkB,CAAc;IACxC,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,uBAAuB,CAAc;IAC7C,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,GAAG,CAAgB;gBAEf,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAQtE,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,eAAe;IAsBvB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,kBAAkB;IAuE1B,OAAO,CAAC,kBAAkB;IA+D1B,OAAO,CAAC,kBAAkB;IAkB1B,OAAO,CAAC,YAAY;IA4BpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,WAAW;IAmBnB,OAAO,CAAC,WAAW;IAgBnB,OAAO,CAAC,oBAAoB;IAc5B,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,iBAAiB;IAsCzB,OAAO,CAAC,YAAY;IA8CpB,OAAO,CAAC,qBAAqB;IA6C7B,OAAO,CAAC,WAAW;IAmBnB,OAAO,CAAC,cAAc;IAchB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAqCtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAiC3B,OAAO,CAAC,gBAAgB;IA0DxB,OAAO,CAAC,aAAa;IAgFrB,OAAO,CAAC,gBAAgB;IAyBxB,OAAO,CAAC,UAAU;IAuBlB,OAAO,CAAC,oBAAoB;IAsB5B,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,uBAAuB;IAS/B,OAAO,CAAC,0BAA0B;IAWlC,OAAO,CAAC,qBAAqB;IAS7B,OAAO,CAAC,qBAAqB;IAW7B,OAAO,CAAC,qBAAqB;YAWf,cAAc;IAgP5B,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,cAAc;IAgCtB,OAAO,CAAC,iBAAiB;YAaX,oBAAoB;IA2BlC,OAAO,CAAC,GAAG;CAyBZ"}