ugly-app 0.1.533 → 0.1.534

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.
@@ -1 +1 @@
1
- {"version":3,"file":"publishCommand.d.ts","sourceRoot":"","sources":["../../src/cli/publishCommand.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,iBAAiB;IAChC,0EAA0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oFAAoF;IACpF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4DAA4D;IAC5D,aAAa,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,eAAe,GAAG,YAAY,GAAG,WAAW,GAAG,YAAY,GAAG,SAAS,CAAC;IAChH,2DAA2D;IAC3D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iDAAiD;IACjD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,6FAA6F;IAC7F,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+DAA+D;IAC/D,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,cAAc,CAAC,IAAI,GAAE,iBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuEhF"}
1
+ {"version":3,"file":"publishCommand.d.ts","sourceRoot":"","sources":["../../src/cli/publishCommand.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,iBAAiB;IAChC,0EAA0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oFAAoF;IACpF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4DAA4D;IAC5D,aAAa,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,eAAe,GAAG,YAAY,GAAG,WAAW,GAAG,YAAY,GAAG,SAAS,CAAC;IAChH,2DAA2D;IAC3D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iDAAiD;IACjD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,6FAA6F;IAC7F,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+DAA+D;IAC/D,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,cAAc,CAAC,IAAI,GAAE,iBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+FhF"}
@@ -37,29 +37,52 @@ export async function publishCommand(opts = {}) {
37
37
  console.log(`[ugly-app] reset publish session for project ${config.projectId}`);
38
38
  return;
39
39
  }
40
- // Verify the user is logged in to Cloudflare + Neon via the CLI's
41
- // OAuth flows; the orchestrator will hydrate per-project secrets from
42
- // those credentials before invoking any capture step.
43
- const creds = await readCredentials();
40
+ // Ensure the user is logged in to Cloudflare + Neon. If creds are
41
+ // missing, run the OAuth flow inline — the orchestrator will hydrate
42
+ // per-project secrets from `~/.ugly-app/credentials.json` immediately
43
+ // after.
44
+ let creds = await readCredentials();
44
45
  if (!creds.cloudflare) {
45
- throw new Error("Not signed in to Cloudflare. Run `ugly-app login cloudflare` first.");
46
+ console.log('[ugly-app] Not signed in to Cloudflare starting login…\n');
47
+ const { loginCloudflare } = await import('./loginCommands.js');
48
+ await loginCloudflare({
49
+ ...(opts.accountId !== undefined ? { accountId: opts.accountId } : {}),
50
+ ...(opts.headless ? { noOpen: true } : {}),
51
+ });
52
+ creds = await readCredentials();
53
+ if (!creds.cloudflare) {
54
+ throw new Error('Cloudflare login completed without persisting credentials.');
55
+ }
56
+ console.log('');
46
57
  }
47
58
  if (!creds.neon) {
48
- throw new Error("Not signed in to Neon. Run `ugly-app login neon` first.");
59
+ console.log('[ugly-app] Not signed in to Neon starting login…\n');
60
+ const { loginNeon } = await import('./loginCommands.js');
61
+ await loginNeon({ ...(opts.headless ? { noOpen: true } : {}) });
62
+ creds = await readCredentials();
63
+ if (!creds.neon) {
64
+ throw new Error('Neon login completed without persisting credentials.');
65
+ }
66
+ console.log('');
49
67
  }
50
68
  const uglyBotToken = readAuthToken(config.projectId);
51
69
  if (!uglyBotToken) {
52
70
  throw new Error("Not signed in to ugly.bot for this project. Run `ugly-app login` from this directory first.");
53
71
  }
72
+ const cfCreds = creds.cloudflare;
73
+ const neonCreds = creds.neon;
74
+ if (!cfCreds || !neonCreds) {
75
+ throw new Error('Internal: credentials disappeared between login and run.');
76
+ }
54
77
  const { runPublish } = await import('./publish/orchestrator.js');
55
78
  const result = await runPublish({
56
79
  projectPath: cwd,
57
80
  projectId: config.projectId,
58
81
  appName: config.name ?? path.basename(cwd),
59
82
  tokens: {
60
- neonAccessToken: creds.neon.apiKey,
61
- cloudflareToken: creds.cloudflare.accessToken,
62
- cloudflareAccountId: opts.accountId ?? creds.cloudflare.accountId ?? '',
83
+ neonAccessToken: neonCreds.apiKey,
84
+ cloudflareToken: cfCreds.accessToken,
85
+ cloudflareAccountId: opts.accountId ?? cfCreds.accountId ?? '',
63
86
  uglyBotSession: uglyBotToken,
64
87
  },
65
88
  });
@@ -1 +1 @@
1
- {"version":3,"file":"publishCommand.js","sourceRoot":"","sources":["../../src/cli/publishCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"publishCommand.js","sourceRoot":"","sources":["../../src/cli/publishCommand.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare const CLI_VERSION = "0.1.533";
1
+ export declare const CLI_VERSION = "0.1.534";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1,3 +1,3 @@
1
1
  // Auto-generated by prebuild — do not edit manually
2
- export const CLI_VERSION = "0.1.533";
2
+ export const CLI_VERSION = "0.1.534";
3
3
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ugly-app",
3
- "version": "0.1.533",
3
+ "version": "0.1.534",
4
4
  "type": "module",
5
5
  "main": "./dist/server/index.js",
6
6
  "exports": {
@@ -66,15 +66,33 @@ export async function publishCommand(opts: PublishCliOptions = {}): Promise<void
66
66
  return;
67
67
  }
68
68
 
69
- // Verify the user is logged in to Cloudflare + Neon via the CLI's
70
- // OAuth flows; the orchestrator will hydrate per-project secrets from
71
- // those credentials before invoking any capture step.
72
- const creds = await readCredentials();
69
+ // Ensure the user is logged in to Cloudflare + Neon. If creds are
70
+ // missing, run the OAuth flow inline — the orchestrator will hydrate
71
+ // per-project secrets from `~/.ugly-app/credentials.json` immediately
72
+ // after.
73
+ let creds = await readCredentials();
73
74
  if (!creds.cloudflare) {
74
- throw new Error("Not signed in to Cloudflare. Run `ugly-app login cloudflare` first.");
75
+ console.log('[ugly-app] Not signed in to Cloudflare starting login…\n');
76
+ const { loginCloudflare } = await import('./loginCommands.js');
77
+ await loginCloudflare({
78
+ ...(opts.accountId !== undefined ? { accountId: opts.accountId } : {}),
79
+ ...(opts.headless ? { noOpen: true } : {}),
80
+ });
81
+ creds = await readCredentials();
82
+ if (!creds.cloudflare) {
83
+ throw new Error('Cloudflare login completed without persisting credentials.');
84
+ }
85
+ console.log('');
75
86
  }
76
87
  if (!creds.neon) {
77
- throw new Error("Not signed in to Neon. Run `ugly-app login neon` first.");
88
+ console.log('[ugly-app] Not signed in to Neon starting login…\n');
89
+ const { loginNeon } = await import('./loginCommands.js');
90
+ await loginNeon({ ...(opts.headless ? { noOpen: true } : {}) });
91
+ creds = await readCredentials();
92
+ if (!creds.neon) {
93
+ throw new Error('Neon login completed without persisting credentials.');
94
+ }
95
+ console.log('');
78
96
  }
79
97
 
80
98
  const uglyBotToken = readAuthToken(config.projectId);
@@ -82,15 +100,21 @@ export async function publishCommand(opts: PublishCliOptions = {}): Promise<void
82
100
  throw new Error("Not signed in to ugly.bot for this project. Run `ugly-app login` from this directory first.");
83
101
  }
84
102
 
103
+ const cfCreds = creds.cloudflare;
104
+ const neonCreds = creds.neon;
105
+ if (!cfCreds || !neonCreds) {
106
+ throw new Error('Internal: credentials disappeared between login and run.');
107
+ }
108
+
85
109
  const { runPublish } = await import('./publish/orchestrator.js');
86
110
  const result = await runPublish({
87
111
  projectPath: cwd,
88
112
  projectId: config.projectId,
89
113
  appName: config.name ?? path.basename(cwd),
90
114
  tokens: {
91
- neonAccessToken: creds.neon.apiKey,
92
- cloudflareToken: creds.cloudflare.accessToken,
93
- cloudflareAccountId: opts.accountId ?? creds.cloudflare.accountId ?? '',
115
+ neonAccessToken: neonCreds.apiKey,
116
+ cloudflareToken: cfCreds.accessToken,
117
+ cloudflareAccountId: opts.accountId ?? cfCreds.accountId ?? '',
94
118
  uglyBotSession: uglyBotToken,
95
119
  },
96
120
  });
@@ -1,2 +1,2 @@
1
1
  // Auto-generated by prebuild — do not edit manually
2
- export const CLI_VERSION = "0.1.533";
2
+ export const CLI_VERSION = "0.1.534";