underpeaks-nxf 1.0.5 → 1.0.6

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":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAYnC,eAAO,MAAM,aAAa,SA6CtB,CAAA"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAYnC,eAAO,MAAM,aAAa,SA4EtB,CAAA"}
@@ -30,16 +30,47 @@ exports.doctorCommand = new commander_1.Command('doctor')
30
30
  ? chalk_1.default.green(` ✓ Active project: ${creds.active_project_id}`)
31
31
  : chalk_1.default.yellow(' ⚠ No active project — run: nxf project switch <id>'));
32
32
  // Check API reachability
33
+ let apiReachable = false;
33
34
  try {
34
35
  const res = await (0, node_fetch_1.default)(`${creds.api_base}/api/codegen-private/health`);
35
- console.log(res.ok
36
+ apiReachable = res.ok;
37
+ console.log(apiReachable
36
38
  ? chalk_1.default.green(` ✓ API reachable: ${creds.api_base}`)
37
39
  : chalk_1.default.red(` ✗ API returned ${res.status}`));
38
40
  }
39
41
  catch {
40
42
  console.log(chalk_1.default.red(` ✗ API unreachable: ${creds.api_base}`));
41
43
  }
42
- // Check license expiry
44
+ // FIX: previously only checked the locally-stored expires_at date,
45
+ // which trusts credentials.json blindly — a revoked or suspended
46
+ // account would still show green until that date passed. Now calls
47
+ // the same license/validate route `nxf generate` itself relies on,
48
+ // so doctor reflects real, current server-side validity rather than
49
+ // a locally cached expiry timestamp. Only attempted if the API was
50
+ // reachable above, to avoid a confusing double failure message.
51
+ if (apiReachable && creds.license_key) {
52
+ try {
53
+ const res = await (0, node_fetch_1.default)(`${creds.api_base}/api/codegen-private/license/validate`, {
54
+ method: 'POST',
55
+ headers: {
56
+ 'Content-Type': 'application/json',
57
+ 'Authorization': `Bearer ${creds.license_key}`,
58
+ },
59
+ });
60
+ const data = await res.json();
61
+ if (res.ok && data.valid) {
62
+ console.log(chalk_1.default.green(' ✓ License valid'));
63
+ }
64
+ else {
65
+ console.log(chalk_1.default.red(` ✗ License invalid: ${data.error ?? 'Unknown reason'}`));
66
+ }
67
+ }
68
+ catch {
69
+ console.log(chalk_1.default.yellow(' ⚠ Could not verify license (network error)'));
70
+ }
71
+ }
72
+ // Check license expiry (informational — the live check above is
73
+ // authoritative; this just shows how much runway is left)
43
74
  if (creds.expires_at) {
44
75
  const expiresAt = new Date(creds.expires_at);
45
76
  const now = new Date();
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":";AAAA,+DAA+D;;;;;;AAE/D,yCAAmC;AACnC,kDAA+B;AAC/B,wDAAkC;AAClC,gDAA8B;AAC9B,4DAAoC;AAEpC,MAAM,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAChC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,EAClD,MAAM,EACN,kBAAkB,CACnB,CAAA;AAEY,QAAA,aAAa,GAAG,IAAI,mBAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,8CAA8C,CAAC;KAC3D,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAE3C,oBAAoB;IACpB,MAAM,cAAc,GAAG,MAAM,kBAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAA;IAC5D,OAAO,CAAC,GAAG,CAAC,cAAc;QACxB,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,4BAA4B,CAAC;QAC3C,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAClD,CAAA;IAED,IAAI,CAAC,cAAc,EAAE,CAAC;QAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAAC,OAAM;IAAC,CAAC;IAEhD,MAAM,KAAK,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;IAEjD,uBAAuB;IACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB;QACjC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,uBAAuB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC/D,CAAC,CAAC,eAAK,CAAC,MAAM,CAAC,sDAAsD,CAAC,CACvE,CAAA;IAED,yBAAyB;IACzB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,IAAA,oBAAK,EAAC,GAAG,KAAK,CAAC,QAAQ,6BAA6B,CAAC,CAAA;QACvE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAChB,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,sBAAsB,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrD,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,oBAAoB,GAAG,CAAC,MAAM,EAAE,CAAC,CAC9C,CAAA;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,wBAAwB,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;IAClE,CAAC;IAED,uBAAuB;IACvB,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QACrB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QAC5C,MAAM,GAAG,GAAS,IAAI,IAAI,EAAE,CAAA;QAC5B,MAAM,QAAQ,GAAI,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;QAC3F,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,CAAC;YACtB,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,yBAAyB,QAAQ,YAAY,CAAC;YAC5D,CAAC,CAAC,eAAK,CAAC,GAAG,CAAC,sDAAsD,CAAC,CACpE,CAAA;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAQ,WAAW,CAAA;AAgBrC,eAAO,MAAM,YAAY,SA+CrB,CAAA"}
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAQ,WAAW,CAAA;AA2FrC,eAAO,MAAM,YAAY,SA2BrB,CAAA"}
@@ -6,49 +6,91 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.loginCommand = void 0;
8
8
  const commander_1 = require("commander");
9
- const inquirer_1 = __importDefault(require("inquirer"));
10
9
  const chalk_1 = __importDefault(require("chalk"));
11
10
  const ora_1 = __importDefault(require("ora"));
12
11
  const fs_extra_1 = __importDefault(require("fs-extra"));
13
12
  const path_1 = __importDefault(require("path"));
14
- const node_fetch_1 = __importDefault(require("node-fetch"));
13
+ const http_1 = __importDefault(require("http"));
14
+ const open_1 = __importDefault(require("open"));
15
15
  const CREDENTIALS_PATH = path_1.default.join(process.env.HOME ?? process.env.USERPROFILE ?? '~', '.nxf', 'credentials.json');
16
16
  const API_BASE = process.env.NXF_API_URL ?? 'https://studio.underpeaks.com';
17
+ /**
18
+ * Starts a short-lived local HTTP server on a random free port, opens the
19
+ * user's browser to Studio's /cli-auth page, and waits for that page to
20
+ * POST the resolved credentials back to /callback. Mirrors the pattern
21
+ * used by the GitHub/Vercel/Firebase CLIs — no license key is ever typed
22
+ * or copy-pasted by the user.
23
+ */
24
+ function waitForCallback() {
25
+ return new Promise((resolve, reject) => {
26
+ const server = http_1.default.createServer((req, res) => {
27
+ if (req.method === 'OPTIONS') {
28
+ res.writeHead(204, {
29
+ 'Access-Control-Allow-Origin': '*',
30
+ 'Access-Control-Allow-Methods': 'POST',
31
+ 'Access-Control-Allow-Headers': 'Content-Type',
32
+ });
33
+ res.end();
34
+ return;
35
+ }
36
+ if (req.method !== 'POST' || req.url !== '/callback') {
37
+ res.writeHead(404);
38
+ res.end();
39
+ return;
40
+ }
41
+ let body = '';
42
+ req.on('data', (chunk) => { body += chunk; });
43
+ req.on('end', () => {
44
+ res.writeHead(200, {
45
+ 'Content-Type': 'application/json',
46
+ 'Access-Control-Allow-Origin': '*',
47
+ });
48
+ res.end(JSON.stringify({ success: true }));
49
+ try {
50
+ const payload = JSON.parse(body);
51
+ server.close();
52
+ resolve(payload);
53
+ }
54
+ catch (err) {
55
+ server.close();
56
+ reject(new Error('Received malformed response from Studio'));
57
+ }
58
+ });
59
+ });
60
+ server.listen(0, '127.0.0.1', () => {
61
+ const { port } = server.address();
62
+ const callbackUrl = `http://127.0.0.1:${port}/callback`;
63
+ const authUrl = `${API_BASE}/cli-auth?callback=${encodeURIComponent(callbackUrl)}`;
64
+ (0, open_1.default)(authUrl).catch(() => {
65
+ console.log(chalk_1.default.dim(`\n Could not open your browser automatically. Visit:\n ${authUrl}\n`));
66
+ });
67
+ });
68
+ // Don't hang forever if the user never completes the browser flow.
69
+ const timeout = setTimeout(() => {
70
+ server.close();
71
+ reject(new Error('Login timed out after 5 minutes. Run `nxf login` again.'));
72
+ }, 5 * 60 * 1000);
73
+ server.on('close', () => clearTimeout(timeout));
74
+ });
75
+ }
17
76
  exports.loginCommand = new commander_1.Command('login')
18
- .description('Authenticate with your Underpeaks license key')
77
+ .description('Authenticate with your Underpeaks account')
19
78
  .action(async () => {
20
79
  console.log(chalk_1.default.cyan('\n Underpeaks CLI\n'));
21
- const { licenseKey } = await inquirer_1.default.prompt([
22
- {
23
- type: 'password',
24
- name: 'licenseKey',
25
- message: 'Enter your Underpeaks license key:',
26
- mask: '*',
27
- validate: (v) => v.trim().length > 0 || 'License key is required',
28
- },
29
- ]);
30
- const spinner = (0, ora_1.default)('Validating license key…').start();
80
+ console.log(chalk_1.default.dim(' Opening your browser to sign in…\n'));
81
+ const spinner = (0, ora_1.default)('Waiting for you to finish signing in…').start();
31
82
  try {
32
- const res = await (0, node_fetch_1.default)(`${API_BASE}/api/codegen-private/license/validate`, {
33
- method: 'POST',
34
- headers: { 'Content-Type': 'application/json' },
35
- body: JSON.stringify({ license_key: licenseKey.trim() }),
36
- });
37
- const data = await res.json();
38
- if (!res.ok || !data.valid) {
39
- spinner.fail(chalk_1.default.red('Invalid or expired license key.'));
40
- process.exit(1);
41
- }
83
+ const payload = await waitForCallback();
42
84
  await fs_extra_1.default.ensureDir(path_1.default.dirname(CREDENTIALS_PATH));
43
85
  await fs_extra_1.default.writeJson(CREDENTIALS_PATH, {
44
- license_key: licenseKey.trim(),
45
- user_id: data.user_id,
46
- plan: data.plan,
47
- active_project_id: data.active_project_id,
48
- expires_at: data.expires_at,
86
+ license_key: payload.license_key,
87
+ user_id: payload.user_id,
88
+ plan: payload.plan,
89
+ active_project_id: payload.active_project_id ?? null,
90
+ expires_at: payload.expires_at ?? null,
49
91
  api_base: API_BASE,
50
92
  }, { spaces: 2 });
51
- spinner.succeed(chalk_1.default.green(`Logged in. Plan: ${data.plan}`));
93
+ spinner.succeed(chalk_1.default.green(`Logged in. Plan: ${payload.plan}`));
52
94
  console.log(chalk_1.default.dim(` Credentials saved to ${CREDENTIALS_PATH}\n`));
53
95
  }
54
96
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,36 +1,39 @@
1
1
  {
2
2
  "name": "underpeaks-nxf",
3
- "version": "1.0.5",
3
+ "version": "1.0.6",
4
4
  "description": "Underpeaks CLI — generate Flutter and Next.js code from your CMS models",
5
5
  "bin": {
6
6
  "nxf": "./dist/index.js"
7
7
  },
8
- "main": "dist/index.js",
9
- "types": "dist/index.d.ts",
10
- "files": ["dist", "README.md"],
11
-
8
+ "main": "dist/index.js",
9
+ "types": "dist/index.d.ts",
10
+ "files": [
11
+ "dist",
12
+ "README.md"
13
+ ],
12
14
  "scripts": {
13
15
  "build": "tsc",
14
- "dev": "tsc --watch",
16
+ "dev": "tsc --watch",
15
17
  "clean": "rm -rf dist"
16
18
  },
17
19
  "dependencies": {
18
- "commander": "^11.0.0",
19
- "chalk": "^5.3.0",
20
- "ora": "^7.0.1",
21
- "inquirer": "^9.2.0",
20
+ "archiver": "^6.0.0",
21
+ "chalk": "^5.3.0",
22
+ "commander": "^11.0.0",
23
+ "fs-extra": "^11.1.0",
24
+ "inquirer": "^9.2.0",
22
25
  "node-fetch": "^3.3.0",
23
- "archiver": "^6.0.0",
24
- "fs-extra": "^11.1.0"
26
+ "open": "^8.4.2",
27
+ "ora": "^7.0.1"
25
28
  },
26
29
  "devDependencies": {
27
- "typescript": "^5.0.0",
28
- "@types/node": "^20.0.0",
29
- "@types/fs-extra": "^11.0.0",
30
30
  "@types/archiver": "^6.0.0",
31
- "@types/inquirer": "^9.0.0"
31
+ "@types/fs-extra": "^11.0.0",
32
+ "@types/inquirer": "^9.0.0",
33
+ "@types/node": "^20.0.0",
34
+ "typescript": "^5.0.0"
32
35
  },
33
36
  "engines": {
34
37
  "node": ">=18.0.0"
35
38
  }
36
- }
39
+ }