@solidnumber/cli 1.11.0 → 1.13.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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nest-helpers.d.ts","sourceRoot":"","sources":["../../src/commands/nest-helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,SAAS,GACT,SAAS,GACT,eAAe,GACf,MAAM,GACN,SAAS,GACT,SAAS,GACT,WAAW,CAAC;AAEhB,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;AAE/C,MAAM,MAAM,kBAAkB,GAC1B,aAAa,GACb,UAAU,GACV,SAAS,GACT,YAAY,GACZ,OAAO,CAAC;AAEZ,MAAM,WAAW,eAAe;IAC9B,SAAS,CAAC,EAAE,YAAY,CAAC;IACzB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,kBAAkB,CAAC;CACtC;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAM3D;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,CAahE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAGhD;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,eAAe,CAwBpE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,MAAM,GAAG,SAAS,GACtB,YAAY,GAAG,SAAS,CAS1B;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,CAYtD"}
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+ /**
3
+ * Pure helpers for the `solid nest` command.
4
+ *
5
+ * Kept separate from nest.ts so Jest can unit-test them without pulling in
6
+ * ESM-only deps (ora/chalk) through the commander action module.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
21
+ }) : function(o, v) {
22
+ o["default"] = v;
23
+ });
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.detectSource = detectSource;
43
+ exports.normalizeUrl = normalizeUrl;
44
+ exports.flagsToDestination = flagsToDestination;
45
+ exports.guessPageType = guessPageType;
46
+ exports.flagsAsArgv = flagsAsArgv;
47
+ const fs = __importStar(require("fs"));
48
+ // ---------------------------------------------------------------------------
49
+ // Helpers
50
+ // ---------------------------------------------------------------------------
51
+ /**
52
+ * Classify the raw positional argument.
53
+ *
54
+ * Rules (in order):
55
+ * '-' or undefined → stdin (pipe into CLI)
56
+ * starts with http(s):// or has a valid .tld pattern → url
57
+ * exists as a file on disk → file
58
+ * otherwise → treated as raw code paste
59
+ */
60
+ function detectSource(arg) {
61
+ if (!arg || arg === '-')
62
+ return 'stdin';
63
+ if (/^https?:\/\//i.test(arg))
64
+ return 'url';
65
+ // Bare domain heuristic: word.tld with optional path/query
66
+ if (/^[\w-]+(\.[\w-]+)+(\/.*)?$/.test(arg) && !arg.includes('\n') && arg.length < 256) {
67
+ return 'url';
68
+ }
69
+ try {
70
+ if (fs.existsSync(arg) && fs.statSync(arg).isFile())
71
+ return 'file';
72
+ }
73
+ catch {
74
+ // fs.statSync can throw on odd paths — fall through to 'code'
75
+ }
76
+ return 'code';
77
+ }
78
+ /**
79
+ * Normalize a bare domain to a full URL so the backend URL fetcher can handle it.
80
+ */
81
+ function normalizeUrl(raw) {
82
+ if (/^https?:\/\//i.test(raw))
83
+ return raw;
84
+ return `https://${raw}`;
85
+ }
86
+ /**
87
+ * Shape flags + positional into the AntService destination contract.
88
+ * Mirrors the backend/UI contract (toExecutePayload in destination-picker.tsx).
89
+ * Drops unset fields so the backend treats them as "not specified".
90
+ */
91
+ function flagsToDestination(flags) {
92
+ const dest = {};
93
+ if (flags.type)
94
+ dest.page_type = flags.type;
95
+ // Mode: --live wins over --sandbox; default is sandbox.
96
+ dest.mode = flags.live ? 'place_now' : 'sandbox';
97
+ if (flags.site && /^\d+$/.test(flags.site)) {
98
+ dest.site_id = Number(flags.site);
99
+ }
100
+ const sub = flags.subdomain?.trim();
101
+ if (sub)
102
+ dest.subdomain = sub;
103
+ const dom = flags.customDomain?.trim();
104
+ if (dom)
105
+ dest.custom_domain = dom;
106
+ const camp = flags.campaign?.trim();
107
+ if (camp)
108
+ dest.campaign_id = camp;
109
+ if (flags.goal)
110
+ dest.conversion_goal = flags.goal;
111
+ return dest;
112
+ }
113
+ /**
114
+ * Guess page_type from a bare drop's shape. Only fires when --type isn't given.
115
+ * Conservative: return undefined unless we have strong signal.
116
+ */
117
+ function guessPageType(source, raw) {
118
+ if (!raw)
119
+ return undefined;
120
+ const lower = raw.toLowerCase();
121
+ if (source === 'url') {
122
+ if (/\/(lp|landing|promo|offer|special)\b/.test(lower))
123
+ return 'landing';
124
+ if (/\/blog\//.test(lower) || /\/posts?\//.test(lower))
125
+ return 'blog';
126
+ if (/\/products?\//.test(lower) || /\/shop\//.test(lower))
127
+ return 'product';
128
+ }
129
+ return undefined;
130
+ }
131
+ /**
132
+ * Serialize parsed commander flags back into argv for subcommand delegation.
133
+ */
134
+ function flagsAsArgv(flags) {
135
+ const out = [];
136
+ if (flags.type)
137
+ out.push('--type', flags.type);
138
+ if (flags.site)
139
+ out.push('--site', flags.site);
140
+ if (flags.subdomain)
141
+ out.push('--subdomain', flags.subdomain);
142
+ if (flags.customDomain)
143
+ out.push('--custom-domain', flags.customDomain);
144
+ if (flags.live)
145
+ out.push('--live');
146
+ if (flags.sandbox)
147
+ out.push('--sandbox');
148
+ if (flags.campaign)
149
+ out.push('--campaign', flags.campaign);
150
+ if (flags.goal)
151
+ out.push('--goal', flags.goal);
152
+ if (flags.json)
153
+ out.push('--json');
154
+ return out;
155
+ }
156
+ //# sourceMappingURL=nest-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nest-helpers.js","sourceRoot":"","sources":["../../src/commands/nest-helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * solid nest — Nest as a first-class CLI verb.
3
+ *
4
+ * Conversational intake from the terminal. `solid nest <something>` auto-detects
5
+ * URL / file path / clipboard / raw code, then threads destination intent
6
+ * (page_type, site, subdomain, custom_domain, campaign, goal) into the same
7
+ * AntService.execute pipeline the dashboard UI uses.
8
+ *
9
+ * Why this exists: designers want `solid nest anglebuild.com --type landing`
10
+ * from muscle memory. Vertically-trained agents (a dentistry-vertical agent,
11
+ * a contractor agent) want `solid nest <screenshot>` as a programmatic surface
12
+ * to ship customer landing pages. Same service layer, three doors.
13
+ *
14
+ * See Owners-Manual/99-Active-Sprints/SPRINT-NEST-DESTINATION-WIRING.md
15
+ */
16
+ import { Command } from 'commander';
17
+ export { detectSource, normalizeUrl, flagsToDestination, flagsAsArgv, guessPageType, } from './nest-helpers';
18
+ export type { NestPageType, NestMode, NestConversionGoal, NestDestination, NestFlags, SourceKind, } from './nest-helpers';
19
+ export declare const nestCommand: Command;
20
+ //# sourceMappingURL=nest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nest.d.ts","sourceRoot":"","sources":["../../src/commands/nest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmBpC,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,WAAW,EACX,aAAa,GACd,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,eAAe,EACf,SAAS,EACT,UAAU,GACX,MAAM,gBAAgB,CAAC;AAiCxB,eAAO,MAAM,WAAW,SAsIpB,CAAC"}
@@ -0,0 +1,389 @@
1
+ "use strict";
2
+ /**
3
+ * solid nest — Nest as a first-class CLI verb.
4
+ *
5
+ * Conversational intake from the terminal. `solid nest <something>` auto-detects
6
+ * URL / file path / clipboard / raw code, then threads destination intent
7
+ * (page_type, site, subdomain, custom_domain, campaign, goal) into the same
8
+ * AntService.execute pipeline the dashboard UI uses.
9
+ *
10
+ * Why this exists: designers want `solid nest anglebuild.com --type landing`
11
+ * from muscle memory. Vertically-trained agents (a dentistry-vertical agent,
12
+ * a contractor agent) want `solid nest <screenshot>` as a programmatic surface
13
+ * to ship customer landing pages. Same service layer, three doors.
14
+ *
15
+ * See Owners-Manual/99-Active-Sprints/SPRINT-NEST-DESTINATION-WIRING.md
16
+ */
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || (function () {
34
+ var ownKeys = function(o) {
35
+ ownKeys = Object.getOwnPropertyNames || function (o) {
36
+ var ar = [];
37
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
38
+ return ar;
39
+ };
40
+ return ownKeys(o);
41
+ };
42
+ return function (mod) {
43
+ if (mod && mod.__esModule) return mod;
44
+ var result = {};
45
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
46
+ __setModuleDefault(result, mod);
47
+ return result;
48
+ };
49
+ })();
50
+ var __importDefault = (this && this.__importDefault) || function (mod) {
51
+ return (mod && mod.__esModule) ? mod : { "default": mod };
52
+ };
53
+ Object.defineProperty(exports, "__esModule", { value: true });
54
+ exports.nestCommand = exports.guessPageType = exports.flagsAsArgv = exports.flagsToDestination = exports.normalizeUrl = exports.detectSource = void 0;
55
+ const fs = __importStar(require("fs"));
56
+ const path = __importStar(require("path"));
57
+ const commander_1 = require("commander");
58
+ const chalk_1 = __importDefault(require("chalk"));
59
+ const ora_1 = __importDefault(require("ora"));
60
+ const config_1 = require("../lib/config");
61
+ const api_client_1 = require("../lib/api-client");
62
+ const ui_1 = require("../lib/ui");
63
+ const json_output_1 = require("../lib/json-output");
64
+ const nest_helpers_1 = require("./nest-helpers");
65
+ // Re-export helpers so existing imports from this module keep working.
66
+ var nest_helpers_2 = require("./nest-helpers");
67
+ Object.defineProperty(exports, "detectSource", { enumerable: true, get: function () { return nest_helpers_2.detectSource; } });
68
+ Object.defineProperty(exports, "normalizeUrl", { enumerable: true, get: function () { return nest_helpers_2.normalizeUrl; } });
69
+ Object.defineProperty(exports, "flagsToDestination", { enumerable: true, get: function () { return nest_helpers_2.flagsToDestination; } });
70
+ Object.defineProperty(exports, "flagsAsArgv", { enumerable: true, get: function () { return nest_helpers_2.flagsAsArgv; } });
71
+ Object.defineProperty(exports, "guessPageType", { enumerable: true, get: function () { return nest_helpers_2.guessPageType; } });
72
+ /**
73
+ * Read clipboard or stdin into a string. Separated so tests can stub it.
74
+ * Currently stdin-only (no native clipboard dep); clipboard support is
75
+ * a follow-up when we add clipboardy.
76
+ */
77
+ async function readStdin() {
78
+ if (process.stdin.isTTY) {
79
+ throw new Error('No input piped. Use `cat file.html | solid nest -` or `solid nest <file>` or `solid nest <url>`.');
80
+ }
81
+ return new Promise((resolve, reject) => {
82
+ let data = '';
83
+ process.stdin.setEncoding('utf8');
84
+ process.stdin.on('data', (chunk) => (data += chunk));
85
+ process.stdin.on('end', () => resolve(data));
86
+ process.stdin.on('error', reject);
87
+ });
88
+ }
89
+ function requireAuth() {
90
+ if (!config_1.config.isLoggedIn()) {
91
+ console.error(chalk_1.default.red('Not logged in. Run `solid auth login` first.'));
92
+ process.exit(1);
93
+ }
94
+ }
95
+ // ---------------------------------------------------------------------------
96
+ // Main: `solid nest <source>`
97
+ // ---------------------------------------------------------------------------
98
+ exports.nestCommand = new commander_1.Command('nest')
99
+ .description('Nest — drop anything, we make it real. (paste/url/file → live page)')
100
+ .argument('[source]', 'URL, file path, "-" for stdin, or raw code')
101
+ .option('--type <type>', 'home | website | landing | email_landing | blog | product | booking | component')
102
+ .option('--site <id>', 'destination Site id (numeric)')
103
+ .option('--subdomain <sub>', 'hint for promote (e.g. "promo" → promo.solidnumber.com)')
104
+ .option('--custom-domain <domain>', 'custom domain (e.g. anglebuild.com)')
105
+ .option('--sandbox', 'save privately to the sandbox shelf (default)')
106
+ .option('--live', 'skip sandbox — place immediately on a site as a draft')
107
+ .option('--campaign <id>', 'campaign_id for outcome tracking')
108
+ .option('--goal <goal>', 'form_submit | checkout | booking | chat_start | click')
109
+ .option('--json', 'machine-readable output')
110
+ .action(async (source, flags) => {
111
+ requireAuth();
112
+ const json = (0, json_output_1.isJsonOutput)(flags);
113
+ const sourceKind = (0, nest_helpers_1.detectSource)(source);
114
+ // Build destination payload
115
+ const destination = (0, nest_helpers_1.flagsToDestination)(flags);
116
+ if (!destination.page_type) {
117
+ const guessed = (0, nest_helpers_1.guessPageType)(sourceKind, source);
118
+ if (guessed)
119
+ destination.page_type = guessed;
120
+ }
121
+ // Load source bytes
122
+ let importResponse;
123
+ const spinner = json ? null : (0, ora_1.default)('Nesting…').start();
124
+ try {
125
+ if (sourceKind === 'url') {
126
+ const url = (0, nest_helpers_1.normalizeUrl)(source);
127
+ if (spinner)
128
+ spinner.text = `Fetching ${url}…`;
129
+ importResponse = await api_client_1.apiClient.post('/api/v1/cli/ant/import-url', { url });
130
+ }
131
+ else {
132
+ let code;
133
+ let formatHint;
134
+ let sourceHint;
135
+ if (sourceKind === 'stdin') {
136
+ if (spinner)
137
+ spinner.stop();
138
+ code = await readStdin();
139
+ if (spinner)
140
+ spinner.start('Nesting…');
141
+ sourceHint = 'stdin';
142
+ }
143
+ else if (sourceKind === 'file') {
144
+ const filePath = path.resolve(source);
145
+ code = fs.readFileSync(filePath, 'utf8');
146
+ const ext = path.extname(filePath).slice(1).toLowerCase();
147
+ formatHint = ext || undefined;
148
+ sourceHint = `file:${path.basename(filePath)}`;
149
+ }
150
+ else {
151
+ code = source;
152
+ sourceHint = 'paste';
153
+ }
154
+ const body = { code };
155
+ if (formatHint)
156
+ body.format_hint = formatHint;
157
+ if (sourceHint)
158
+ body.source_hint = sourceHint;
159
+ importResponse = await api_client_1.apiClient.post('/api/v1/cli/ant/import', body);
160
+ }
161
+ }
162
+ catch (error) {
163
+ if (spinner)
164
+ spinner.fail(chalk_1.default.red('Nest intake failed'));
165
+ const apiError = (0, api_client_1.handleApiError)(error);
166
+ if (json) {
167
+ console.log(JSON.stringify({ error: apiError.message }));
168
+ }
169
+ else {
170
+ console.error(chalk_1.default.red(` ${apiError.message}`));
171
+ }
172
+ process.exit(1);
173
+ }
174
+ const preview = importResponse.data;
175
+ const importId = preview.import_id || preview.id;
176
+ if (!importId) {
177
+ if (spinner)
178
+ spinner.fail(chalk_1.default.red('Nest intake returned no import_id'));
179
+ process.exit(1);
180
+ }
181
+ // Execute with destination attached as modifications.destination
182
+ if (spinner)
183
+ spinner.text = 'Wiring…';
184
+ let executeResponse;
185
+ try {
186
+ executeResponse = await api_client_1.apiClient.post('/api/v1/cli/ant/execute', {
187
+ import_id: importId,
188
+ modifications: { destination },
189
+ });
190
+ }
191
+ catch (error) {
192
+ if (spinner)
193
+ spinner.fail(chalk_1.default.red('Nest build failed'));
194
+ const apiError = (0, api_client_1.handleApiError)(error);
195
+ if (json) {
196
+ console.log(JSON.stringify({ error: apiError.message, import_id: importId }));
197
+ }
198
+ else {
199
+ console.error(chalk_1.default.red(` ${apiError.message}`));
200
+ }
201
+ process.exit(1);
202
+ }
203
+ const result = executeResponse.data;
204
+ if (json) {
205
+ console.log(JSON.stringify({
206
+ import_id: importId,
207
+ status: result.status,
208
+ mode: destination.mode,
209
+ page_type: destination.page_type,
210
+ created: result.created,
211
+ }));
212
+ return;
213
+ }
214
+ if (spinner) {
215
+ spinner.succeed(destination.mode === 'sandbox'
216
+ ? chalk_1.default.green('Nested to Sandbox')
217
+ : chalk_1.default.green('Nested and placed'));
218
+ }
219
+ console.log('');
220
+ console.log(ui_1.ui.label('Import', importId));
221
+ console.log(ui_1.ui.label('Status', String(result.status ?? '—')));
222
+ console.log(ui_1.ui.label('Mode', destination.mode ?? 'sandbox'));
223
+ if (destination.page_type)
224
+ console.log(ui_1.ui.label('Type', destination.page_type));
225
+ const page = (result.created?.page ?? null);
226
+ if (page?.url)
227
+ console.log(ui_1.ui.label('Page', String(page.url)));
228
+ if (page?.id)
229
+ console.log(ui_1.ui.label('Page ID', String(page.id)));
230
+ console.log('');
231
+ if (destination.mode === 'sandbox') {
232
+ console.log(chalk_1.default.dim(' Find it in the Design Library. `solid nest promote <id>` to place it live.'));
233
+ }
234
+ else {
235
+ console.log(chalk_1.default.dim(' It\'s a draft on your site. Publish when ready.'));
236
+ }
237
+ });
238
+ // ---------------------------------------------------------------------------
239
+ // Subcommands — explicit disambiguation for scripts and agent callers
240
+ // ---------------------------------------------------------------------------
241
+ exports.nestCommand
242
+ .command('list')
243
+ .alias('ls')
244
+ .description('List recent Nest drops (Design Library contents)')
245
+ .option('--json', 'machine-readable output')
246
+ .action(async (flags) => {
247
+ requireAuth();
248
+ const spinner = flags.json ? null : (0, ora_1.default)('Loading…').start();
249
+ try {
250
+ const res = await api_client_1.apiClient.get('/api/v1/cli/ant/imports');
251
+ const data = res.data;
252
+ const imports = (data.imports ?? []);
253
+ if (flags.json) {
254
+ console.log(JSON.stringify(imports));
255
+ return;
256
+ }
257
+ if (spinner)
258
+ spinner.succeed(`${imports.length} drops`);
259
+ if (imports.length === 0) {
260
+ console.log(chalk_1.default.dim(' Nothing nested yet. Try `solid nest <url>`.'));
261
+ return;
262
+ }
263
+ console.log('');
264
+ const headers = ['ID', 'Type', 'Mode', 'Status', 'Created'];
265
+ const rows = imports.map((imp) => [
266
+ String(imp.import_id ?? imp.id).substring(0, 14),
267
+ String(imp.page_type ?? '—'),
268
+ String(imp.mode ?? 'sandbox'),
269
+ String(imp.status ?? '—'),
270
+ imp.created_at ? new Date(imp.created_at).toLocaleDateString() : '—',
271
+ ]);
272
+ console.log(ui_1.ui.table(headers, rows));
273
+ }
274
+ catch (error) {
275
+ if (spinner)
276
+ spinner.fail(chalk_1.default.red('Failed to load drops'));
277
+ const apiError = (0, api_client_1.handleApiError)(error);
278
+ console.error(chalk_1.default.red(` ${apiError.message}`));
279
+ }
280
+ });
281
+ exports.nestCommand
282
+ .command('outcomes')
283
+ .description('Which of my Nest drops converted — the feedback loop')
284
+ .option('--campaign <id>', 'filter to one campaign')
285
+ .option('--since <iso>', 'ISO datetime cutoff (e.g. 2026-04-01)')
286
+ .option('--limit <n>', 'max rows', '50')
287
+ .option('--json', 'machine-readable output')
288
+ .action(async (flags) => {
289
+ requireAuth();
290
+ const spinner = flags.json ? null : (0, ora_1.default)('Querying outcomes…').start();
291
+ try {
292
+ const qs = new URLSearchParams();
293
+ if (flags.campaign)
294
+ qs.set('campaign_id', flags.campaign);
295
+ if (flags.since)
296
+ qs.set('since', flags.since);
297
+ qs.set('limit', flags.limit ?? '50');
298
+ const res = await api_client_1.apiClient.get(`/api/v1/cli/ant/outcomes?${qs.toString()}`);
299
+ const data = res.data;
300
+ if (flags.json) {
301
+ console.log(JSON.stringify(data));
302
+ return;
303
+ }
304
+ const outcomes = (data.outcomes ?? []);
305
+ const byCampaign = (data.by_campaign ?? []);
306
+ if (spinner)
307
+ spinner.succeed(`${outcomes.length} drops, ${byCampaign.length} campaigns`);
308
+ if (outcomes.length === 0) {
309
+ console.log(chalk_1.default.dim(' No tracked drops yet. `solid nest <...> --campaign <id> --live` to start measuring.'));
310
+ return;
311
+ }
312
+ if (byCampaign.length > 0) {
313
+ console.log('');
314
+ console.log(ui_1.ui.header('By campaign'));
315
+ const campHeaders = ['Campaign', 'Drops', 'Views'];
316
+ const campRows = byCampaign
317
+ .slice()
318
+ .sort((a, b) => (b.views ?? 0) - (a.views ?? 0))
319
+ .map((b) => [
320
+ String(b.campaign_id ?? '(untagged)'),
321
+ String(b.drops ?? 0),
322
+ String(b.views ?? 0),
323
+ ]);
324
+ console.log(ui_1.ui.table(campHeaders, campRows));
325
+ }
326
+ console.log('');
327
+ console.log(ui_1.ui.header('Drops (ranked by views)'));
328
+ const dropHeaders = ['ID', 'Type', 'Campaign', 'Goal', 'Views', 'URL'];
329
+ const dropRows = outcomes
330
+ .slice()
331
+ .sort((a, b) => (b.page_views ?? 0) - (a.page_views ?? 0))
332
+ .map((o) => [
333
+ String(o.import_id ?? '').substring(0, 14),
334
+ String(o.page_type ?? '—'),
335
+ String(o.campaign_id ?? '—'),
336
+ String(o.conversion_goal ?? '—'),
337
+ String(o.page_views ?? 0),
338
+ String(o.page_url ?? '—'),
339
+ ]);
340
+ console.log(ui_1.ui.table(dropHeaders, dropRows));
341
+ }
342
+ catch (error) {
343
+ if (spinner)
344
+ spinner.fail(chalk_1.default.red('Failed to query outcomes'));
345
+ const apiError = (0, api_client_1.handleApiError)(error);
346
+ console.error(chalk_1.default.red(` ${apiError.message}`));
347
+ }
348
+ });
349
+ exports.nestCommand
350
+ .command('from-url <url>')
351
+ .description('Nest from a URL (explicit; equivalent to `solid nest <url>`)')
352
+ .option('--type <type>')
353
+ .option('--site <id>')
354
+ .option('--subdomain <sub>')
355
+ .option('--custom-domain <domain>')
356
+ .option('--live')
357
+ .option('--campaign <id>')
358
+ .option('--goal <goal>')
359
+ .option('--json')
360
+ .action(async (url, flags) => {
361
+ // Delegate by invoking parent action
362
+ await exports.nestCommand.parseAsync(['node', 'nest', url, ...(0, nest_helpers_1.flagsAsArgv)(flags)]);
363
+ });
364
+ exports.nestCommand
365
+ .command('from-file <path>')
366
+ .description('Nest from a local file (html/jsx/png/...)')
367
+ .option('--type <type>')
368
+ .option('--site <id>')
369
+ .option('--subdomain <sub>')
370
+ .option('--custom-domain <domain>')
371
+ .option('--live')
372
+ .option('--campaign <id>')
373
+ .option('--goal <goal>')
374
+ .option('--json')
375
+ .action(async (filePath, flags) => {
376
+ await exports.nestCommand.parseAsync(['node', 'nest', filePath, ...(0, nest_helpers_1.flagsAsArgv)(flags)]);
377
+ });
378
+ // ---------------------------------------------------------------------------
379
+ // Examples
380
+ // ---------------------------------------------------------------------------
381
+ const command_kit_1 = require("../lib/command-kit");
382
+ (0, command_kit_1.appendExamples)(exports.nestCommand, [
383
+ { cmd: 'solid nest anglebuild.com', why: 'Fetch a URL, classify, save to Sandbox' },
384
+ { cmd: 'solid nest page.html --type landing --live', why: 'Nest a local file, place live as a landing page' },
385
+ { cmd: 'cat design.jsx | solid nest - --type home', why: 'Pipe code in; land as a home page' },
386
+ { cmd: 'solid nest <url> --type landing --site 5 --subdomain promo --campaign q2', why: 'Agent-native shape' },
387
+ { cmd: 'solid nest list', why: 'See recent Nest drops (Design Library)' },
388
+ ]);
389
+ //# sourceMappingURL=nest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nest.js","sourceRoot":"","sources":["../../src/commands/nest.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,eAAO,MAAM,aAAa,SAkHtB,CAAC"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,eAAO,MAAM,aAAa,SAqHtB,CAAC"}
@@ -77,7 +77,10 @@ exports.statusCommand = new commander_1.Command('status')
77
77
  console.log(ui_1.ui.bannerSmall());
78
78
  console.log(ui_1.ui.successBox(company.name, [
79
79
  `${chalk_1.default.dim('ID:')} ${company.id}`,
80
- `${chalk_1.default.dim('Tier:')} ${chalk_1.default.hex('#818cf8')(company.tier || 'starter')}`,
80
+ // Prefer effective_tier (derived from feature_settings — reflects
81
+ // what the company actually has access to right now). Falls back
82
+ // to subscription tier column, then 'starter'.
83
+ `${chalk_1.default.dim('Tier:')} ${chalk_1.default.hex('#818cf8')(company.effective_tier || company.tier || 'starter')}`,
81
84
  `${chalk_1.default.dim('Industry:')} ${company.industry || 'not set'}`,
82
85
  ]));
83
86
  // ── Contact ─────────────────────────────────────────────────
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}