create-nola-lang 0.1.5 → 0.1.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.
- package/README.md +2 -1
- package/dist/{chunk-ZHMW2DCK.js → chunk-34XSPT6F.js} +71 -8
- package/dist/flow.d.ts +2 -0
- package/dist/flow.d.ts.map +1 -1
- package/dist/flow.js +13 -2
- package/dist/flow.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/launch.d.ts +13 -2
- package/dist/launch.d.ts.map +1 -1
- package/dist/launch.js +11 -2
- package/dist/launch.js.map +1 -1
- package/dist/main.js +1 -1
- package/dist/node-version.d.ts +22 -0
- package/dist/node-version.d.ts.map +1 -0
- package/dist/node-version.js +60 -0
- package/dist/node-version.js.map +1 -0
- package/dist/registry.js +1 -1
- package/dist/registry.js.map +1 -1
- package/dist/scaffold.d.ts +15 -0
- package/dist/scaffold.d.ts.map +1 -1
- package/dist/scaffold.js +28 -3
- package/dist/scaffold.js.map +1 -1
- package/package.json +2 -2
- package/skills/nola/references/config.md +4 -4
- package/templates/empty/package.json +1 -1
- package/templates/empty/src/main.ts +2 -0
- package/templates/starter/package.json +1 -1
- package/templates/starter/src/main.ts +2 -0
package/README.md
CHANGED
|
@@ -16,7 +16,8 @@ coding agents (yes opens one list: VS Code, preselected, writes `.vscode/`
|
|
|
16
16
|
with a debug config + the extension recommendation; coding-agent skills,
|
|
17
17
|
Claude Code preselected), and — once the files are written, when an editor
|
|
18
18
|
was chosen — whether to install dependencies and open the project in VS Code
|
|
19
|
-
right away.
|
|
19
|
+
right away (on `src/main.ts`, whose opening comment lists the next steps:
|
|
20
|
+
F5 to run, a breakpoint to debug, the recommended extension).
|
|
20
21
|
|
|
21
22
|
You get a typed extraction example (`src/person.tsi` + a plain-TS consumer),
|
|
22
23
|
`nola.config.ts`, tsconfig, and a recorded replay ledger so the first run
|
|
@@ -146,12 +146,12 @@ async function fetchExampleFromGitHub(name, version, fetchImpl = fetch) {
|
|
|
146
146
|
var TEMPLATES = [
|
|
147
147
|
{ name: "starter", label: "typed extraction, runs offline out of the box", source: "builtin" },
|
|
148
148
|
{ name: "empty", label: "nola.config + tsconfig only, bring your own code", source: "builtin" },
|
|
149
|
+
{ name: "file-ticket", label: "call intents: the model fills a function's arguments", source: "example" },
|
|
149
150
|
{ name: "extract-resume", label: "nested arrays of objects, JSDoc schema descriptions", source: "example" },
|
|
150
151
|
{ name: "extract-invoice", label: "same-file type references, optional fields", source: "example" },
|
|
151
152
|
{ name: "classify-message", label: "closed label sets: union alias, string enum, inline union", source: "example" },
|
|
152
153
|
{ name: "chain-of-thought", label: "two asks sharing accumulating context", source: "example" },
|
|
153
|
-
{ name: "research-notes", label: "TS control flow orchestrating nola functions", source: "example" }
|
|
154
|
-
{ name: "file-ticket", label: "call intents: the model fills a function's arguments", source: "example" }
|
|
154
|
+
{ name: "research-notes", label: "TS control flow orchestrating nola functions", source: "example" }
|
|
155
155
|
];
|
|
156
156
|
function templateByName(name) {
|
|
157
157
|
return TEMPLATES.find((t) => t.name === name);
|
|
@@ -170,7 +170,24 @@ function providerConfigUrl(provider) {
|
|
|
170
170
|
return new URL(`../templates/_providers/${provider}.config.ts`, import.meta.url);
|
|
171
171
|
}
|
|
172
172
|
var RENAMES = { _gitignore: ".gitignore" };
|
|
173
|
-
var SUBSTITUTED = /* @__PURE__ */ new Set(["package.json", "README.md"]);
|
|
173
|
+
var SUBSTITUTED = /* @__PURE__ */ new Set(["package.json", "README.md", "main.ts"]);
|
|
174
|
+
function nextStepsComment(ide, template) {
|
|
175
|
+
if (ide === "vscode") {
|
|
176
|
+
const breakpointIn = template === "starter" ? "src/person.tsi" : "your .tsi file";
|
|
177
|
+
return [
|
|
178
|
+
"// Next steps in VS Code:",
|
|
179
|
+
"// 1. Press F5 to run this file (.vscode/launch.json is already set up).",
|
|
180
|
+
`// 2. Set a breakpoint in ${breakpointIn} and press F5 again to step through the ask.`,
|
|
181
|
+
'// 3. Install the recommended "Nola" extension when VS Code offers it \u2014 IntelliSense,',
|
|
182
|
+
"// go to definition and diagnostics inside .tsi files."
|
|
183
|
+
].join("\n");
|
|
184
|
+
}
|
|
185
|
+
return [
|
|
186
|
+
"// Next steps:",
|
|
187
|
+
"// 1. Run this file: npm start",
|
|
188
|
+
"// 2. Set up your editor (VS Code extension, debugging): https://nola.sh/docs/start/editor-setup/"
|
|
189
|
+
].join("\n");
|
|
190
|
+
}
|
|
174
191
|
var OFFLINE_ONLY = /* @__PURE__ */ new Set(["nola.replay.jsonl"]);
|
|
175
192
|
var README_NOTES = {
|
|
176
193
|
offline: {
|
|
@@ -230,6 +247,7 @@ async function scaffold(targetDir, opts = {}) {
|
|
|
230
247
|
const versionRange = `^${version}`;
|
|
231
248
|
const provider = opts.provider ?? "none";
|
|
232
249
|
const notes = readmeNotes(provider);
|
|
250
|
+
const nextSteps2 = nextStepsComment(opts.ide ?? "none", template);
|
|
233
251
|
const files = [];
|
|
234
252
|
const copyDir = async (fromDir, relDir) => {
|
|
235
253
|
await mkdir2(join3(absRoot, relDir), { recursive: true });
|
|
@@ -245,7 +263,7 @@ async function scaffold(targetDir, opts = {}) {
|
|
|
245
263
|
const source = provider !== "none" && relDir === "." && entry.name === "nola.config.ts" ? providerConfigUrl(provider) : join3(templateRoot, fromRel);
|
|
246
264
|
let content = await readFile3(source, "utf8");
|
|
247
265
|
if (SUBSTITUTED.has(entry.name)) {
|
|
248
|
-
content = content.replaceAll("__NAME__", name).replaceAll("__VERSION__", versionRange).replaceAll("__START_NOTE__", notes.START_NOTE).replaceAll("__PROVIDER_NOTE__", notes.PROVIDER_NOTE);
|
|
266
|
+
content = content.replaceAll("__NAME__", name).replaceAll("__VERSION__", versionRange).replaceAll("__START_NOTE__", notes.START_NOTE).replaceAll("__PROVIDER_NOTE__", notes.PROVIDER_NOTE).replaceAll("__NEXT_STEPS__", nextSteps2);
|
|
249
267
|
}
|
|
250
268
|
await writeFile(join3(absRoot, toRel), content);
|
|
251
269
|
files.push(toRel.replaceAll("\\", "/"));
|
|
@@ -1360,6 +1378,9 @@ import { stripVTControlCharacters } from "node:util";
|
|
|
1360
1378
|
import { spawn } from "node:child_process";
|
|
1361
1379
|
import { existsSync as existsSync8 } from "node:fs";
|
|
1362
1380
|
import { join as join10 } from "node:path";
|
|
1381
|
+
function vscodeArgs(dir, entry) {
|
|
1382
|
+
return entry === void 0 ? [dir] : [dir, join10(dir, entry)];
|
|
1383
|
+
}
|
|
1363
1384
|
function findOnPath(name, env = process.env, platform = process.platform) {
|
|
1364
1385
|
const pathValue = env.PATH ?? env.Path ?? env.path ?? "";
|
|
1365
1386
|
const dirs = pathValue.split(platform === "win32" ? ";" : ":").filter((d) => d.length > 0);
|
|
@@ -1392,10 +1413,10 @@ function installArgs(pm) {
|
|
|
1392
1413
|
}
|
|
1393
1414
|
var realLauncher = {
|
|
1394
1415
|
install: (pm, dir, onOutput) => run(pm, installArgs(pm), dir, onOutput),
|
|
1395
|
-
async openVscode(dir) {
|
|
1416
|
+
async openVscode(dir, entry) {
|
|
1396
1417
|
const code = findOnPath("code");
|
|
1397
1418
|
if (!code) return "not-found";
|
|
1398
|
-
const child = spawn(q(code),
|
|
1419
|
+
const child = spawn(q(code), vscodeArgs(dir, entry).map(q), { detached: true, stdio: "ignore", shell: WINDOWS });
|
|
1399
1420
|
child.on("error", () => {
|
|
1400
1421
|
});
|
|
1401
1422
|
child.unref();
|
|
@@ -1403,6 +1424,44 @@ var realLauncher = {
|
|
|
1403
1424
|
}
|
|
1404
1425
|
};
|
|
1405
1426
|
|
|
1427
|
+
// src/node-version.ts
|
|
1428
|
+
var NODE_FLOOR = "22.18";
|
|
1429
|
+
function parse(version) {
|
|
1430
|
+
const m = /^v?(\d+)\.(\d+)/.exec(version);
|
|
1431
|
+
return m ? [Number(m[1]), Number(m[2])] : void 0;
|
|
1432
|
+
}
|
|
1433
|
+
function nodeSupportsTypeStripping(version) {
|
|
1434
|
+
const v = parse(version);
|
|
1435
|
+
if (!v) return true;
|
|
1436
|
+
const [major, minor] = v;
|
|
1437
|
+
if (major >= 24) return true;
|
|
1438
|
+
if (major === 23) return minor >= 6;
|
|
1439
|
+
if (major === 22) return minor >= 18;
|
|
1440
|
+
return false;
|
|
1441
|
+
}
|
|
1442
|
+
function hasStripTypesFlag(version) {
|
|
1443
|
+
const v = parse(version);
|
|
1444
|
+
if (!v) return false;
|
|
1445
|
+
const [major, minor] = v;
|
|
1446
|
+
return major > 22 || major === 22 && minor >= 6;
|
|
1447
|
+
}
|
|
1448
|
+
function nodeVersionWarning(version = process.versions.node) {
|
|
1449
|
+
if (nodeSupportsTypeStripping(version)) return void 0;
|
|
1450
|
+
const lines = [
|
|
1451
|
+
`Node ${version} is older than Nola needs: Node >= ${NODE_FLOOR}, the first release that runs .ts files natively.`,
|
|
1452
|
+
"On this Node, `npm start` and the VS Code F5 launch fail with ERR_UNKNOWN_FILE_EXTENSION for src/main.ts."
|
|
1453
|
+
];
|
|
1454
|
+
if (hasStripTypesFlag(version)) {
|
|
1455
|
+
lines.push(
|
|
1456
|
+
"Upgrade Node (recommended), or set NODE_OPTIONS=--experimental-strip-types for `npm start` and add",
|
|
1457
|
+
'"--experimental-strip-types" to runtimeArgs in .vscode/launch.json.'
|
|
1458
|
+
);
|
|
1459
|
+
} else {
|
|
1460
|
+
lines.push("Upgrade Node: https://nodejs.org/");
|
|
1461
|
+
}
|
|
1462
|
+
return lines.join("\n");
|
|
1463
|
+
}
|
|
1464
|
+
|
|
1406
1465
|
// src/package-manager.ts
|
|
1407
1466
|
function detectPackageManager(userAgent = process.env.npm_config_user_agent) {
|
|
1408
1467
|
const name = userAgent?.split("/")[0]?.trim();
|
|
@@ -1652,6 +1711,7 @@ Next steps:
|
|
|
1652
1711
|
${lines.join("\n ")}`;
|
|
1653
1712
|
}
|
|
1654
1713
|
var INSTALL_LOG_TAIL = 20;
|
|
1714
|
+
var ENTRY_FILE = "src/main.ts";
|
|
1655
1715
|
function lastOutputLine(output) {
|
|
1656
1716
|
const lines = stripVTControlCharacters(output).split(/\r?\n/);
|
|
1657
1717
|
for (let i = lines.length - 1; i >= 0; i--) {
|
|
@@ -1686,7 +1746,8 @@ async function offerInstallAndOpen(dir, pm, prompter, launcher, linkCheckout) {
|
|
|
1686
1746
|
prompter.note(`${tail ? `${tail}
|
|
1687
1747
|
` : ""}Run ${cmd.install} yourself once the cause is fixed.`);
|
|
1688
1748
|
}
|
|
1689
|
-
const
|
|
1749
|
+
const entry = existsSync9(join11(dir, ENTRY_FILE)) ? ENTRY_FILE : void 0;
|
|
1750
|
+
const opened = await launcher.openVscode(dir, entry);
|
|
1690
1751
|
if (opened === "not-found") {
|
|
1691
1752
|
prompter.note(
|
|
1692
1753
|
`VS Code's \`code\` command is not on PATH, so the folder was not opened. In VS Code run "Shell Command: Install 'code' command in PATH" (macOS) or re-run the installer with "Add to PATH" (Windows), then open the folder from VS Code.`
|
|
@@ -1736,6 +1797,8 @@ async function runFlow(args, opts = {}) {
|
|
|
1736
1797
|
}
|
|
1737
1798
|
}
|
|
1738
1799
|
if (interactive) prompter.intro?.(opts.intro ?? `nola v${await ownVersion()}`);
|
|
1800
|
+
const nodeWarning = nodeVersionWarning(opts.nodeVersion);
|
|
1801
|
+
if (nodeWarning) prompter.note(nodeWarning);
|
|
1739
1802
|
const pm = opts.packageManager ?? detectPackageManager();
|
|
1740
1803
|
const apiUrl = (opts.apiUrl ?? nolaApiUrl()).replace(/\/$/, "");
|
|
1741
1804
|
const session = await readSession(opts.home, apiUrl);
|
|
@@ -1804,7 +1867,7 @@ Next steps:
|
|
|
1804
1867
|
try {
|
|
1805
1868
|
const grant = outcome.provider === "nola" ? await obtainTrial(prompter, opts, interactive) : null;
|
|
1806
1869
|
const provider = outcome.provider === "nola" ? grant ? "nola" : "none" : outcome.provider;
|
|
1807
|
-
const { files } = await scaffold(outcome.dir, { template: outcome.template, force: outcome.force, provider });
|
|
1870
|
+
const { files } = await scaffold(outcome.dir, { template: outcome.template, force: outcome.force, provider, ide: outcome.ide });
|
|
1808
1871
|
let trialWrote = [];
|
|
1809
1872
|
if (grant) {
|
|
1810
1873
|
const trial = await applyTrial(outcome.dir, { apiKey: grant.apiKey, hasConfig: false });
|
package/dist/flow.d.ts
CHANGED
|
@@ -168,6 +168,8 @@ export interface RunFlowOptions {
|
|
|
168
168
|
open?: (url: string) => boolean;
|
|
169
169
|
/** checkout root to relink a scaffold to after install; default NOLA_LINK_CHECKOUT env (null = off) */
|
|
170
170
|
linkCheckout?: string | null;
|
|
171
|
+
/** the Node version to judge for the old-Node warning; default process.versions.node — tests inject one */
|
|
172
|
+
nodeVersion?: string;
|
|
171
173
|
}
|
|
172
174
|
/** The last non-empty output line, colour codes stripped, trimmed to one spinner line. */
|
|
173
175
|
export declare function lastOutputLine(output: string): string | undefined;
|
package/dist/flow.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow.d.ts","sourceRoot":"","sources":["../src/flow.ts"],"names":[],"mappings":"AAKA,OAAO,EAA4B,KAAK,OAAO,EAAoD,MAAM,aAAa,CAAC;AAIvH,OAAO,EAAE,KAAK,WAAW,EAAkC,MAAM,UAAU,CAAC;AAM5E,OAAO,EAAE,KAAK,QAAQ,EAAgB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"flow.d.ts","sourceRoot":"","sources":["../src/flow.ts"],"names":[],"mappings":"AAKA,OAAO,EAA4B,KAAK,OAAO,EAAoD,MAAM,aAAa,CAAC;AAIvH,OAAO,EAAE,KAAK,WAAW,EAAkC,MAAM,UAAU,CAAC;AAM5E,OAAO,EAAE,KAAK,QAAQ,EAAgB,MAAM,aAAa,CAAC;AAG1D,OAAO,EAAwB,KAAK,cAAc,EAA0B,MAAM,sBAAsB,CAAC;AACzG,OAAO,EAA2B,KAAK,UAAU,EAA6B,MAAM,gBAAgB,CAAC;AAKrG,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,8FAA8F;AAC9F,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B;AAED,+GAA+G;AAC/G,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,iFAAiF;AACjF,MAAM,WAAW,QAAQ;IACvB,uBAAuB;IACvB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACpE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC3E,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IACzE,uBAAuB;IACvB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;IAC3G,8FAA8F;IAC9F,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;IAC9G,0DAA0D;IAC1D,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAAC;IACxC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,CAAC,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4EAA4E;IAC5E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4HAA4H;IAC5H,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,kEAAkE;IAClE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,uHAAuH;AACvH,MAAM,MAAM,OAAO,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAE1G,MAAM,MAAM,WAAW,GACnB;IACA,IAAI,EAAE,UAAU,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,UAAU,CAAC;IACrB,GAAG,EAAE,QAAQ,GAAG,MAAM,CAAC;IACvB,MAAM,EAAE,OAAO,EAAE,CAAC;CACnB,GACC;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,EAAE,CAAA;CAAE,GAC7F;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC;AAgB1B,eAAO,MAAM,aAAa,qDAAyD,CAAC;AACpF,kGAAkG;AAClG,eAAO,MAAM,cAAc,0CAA0C,CAAC;AACtE,eAAO,MAAM,eAAe,wBAAwB,CAAC;AACrD,eAAO,MAAM,eAAe,0BAA0B,CAAC;AACvD,oCAAoC;AACpC,eAAO,MAAM,mBAAmB,oDAAoD,CAAC;AAiDrF,eAAO,MAAM,iBAAiB,kCAAkC,CAAC;AACjE,iHAAiH;AACjH,eAAO,MAAM,gBAAgB,iGAAiG,CAAC;AAE/H;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAS9C;AAED,mEAAmE;AACnE,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,cAAc,EAAE,CAE/D;AAoDD,uFAAuF;AACvF,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,CAoGvG;AAED,4EAA4E;AAC5E,wBAAgB,aAAa,IAAI,QAAQ,CAiBxC;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;CAUsB,CAAC;AAEhD,kIAAkI;AAClI,eAAO,MAAM,cAAc,EAAE,WAM3B,CAAC;AAEH,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kEAAkE;IAClE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,gFAAgF;IAChF,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,qDAAqD;IACrD,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uEAAuE;IACvE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAChC,uGAAuG;IACvG,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,2GAA2G;IAC3G,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAgDD,0FAA0F;AAC1F,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAOjE;AA6DD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAK7C;AAiCD,wEAAwE;AACxE,wBAAsB,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CA4I3F"}
|
package/dist/flow.js
CHANGED
|
@@ -14,6 +14,7 @@ import { readHomeConfig } from "./home-config.js";
|
|
|
14
14
|
import { writeVscodeSetup } from "./ide.js";
|
|
15
15
|
import { acquireKey, SignInRequiredError } from "./key.js";
|
|
16
16
|
import { realLauncher } from "./launch.js";
|
|
17
|
+
import { nodeVersionWarning } from "./node-version.js";
|
|
17
18
|
import { openBrowser } from "./open-url.js";
|
|
18
19
|
import { detectPackageManager, packageManagerCommands } from "./package-manager.js";
|
|
19
20
|
import { isProviderId, PROVIDERS, providerById, providerIds } from "./providers.js";
|
|
@@ -339,6 +340,8 @@ function nextSteps(outcome, fileCount, name, pm, installed = false, grant = null
|
|
|
339
340
|
}
|
|
340
341
|
/** How many trailing lines of a failed install's output the note shows. */
|
|
341
342
|
const INSTALL_LOG_TAIL = 20;
|
|
343
|
+
/** Every template's entry (builtin and curated examples alike) — what launch.json runs and VS Code opens. */
|
|
344
|
+
const ENTRY_FILE = "src/main.ts";
|
|
342
345
|
/** The last non-empty output line, colour codes stripped, trimmed to one spinner line. */
|
|
343
346
|
export function lastOutputLine(output) {
|
|
344
347
|
const lines = stripVTControlCharacters(output).split(/\r?\n/);
|
|
@@ -390,7 +393,10 @@ async function offerInstallAndOpen(dir, pm, prompter, launcher, linkCheckout) {
|
|
|
390
393
|
const tail = stripVTControlCharacters(output).trim().split(/\r?\n/).slice(-INSTALL_LOG_TAIL).join("\n");
|
|
391
394
|
prompter.note(`${tail ? `${tail}\n` : ""}Run ${cmd.install} yourself once the cause is fixed.`);
|
|
392
395
|
}
|
|
393
|
-
|
|
396
|
+
// Land on the entry file, not an empty window: it opens with the next
|
|
397
|
+
// steps (F5, breakpoints, the extension) as its first lines.
|
|
398
|
+
const entry = existsSync(join(dir, ENTRY_FILE)) ? ENTRY_FILE : undefined;
|
|
399
|
+
const opened = await launcher.openVscode(dir, entry);
|
|
394
400
|
if (opened === "not-found") {
|
|
395
401
|
prompter.note("VS Code's `code` command is not on PATH, so the folder was not opened. " +
|
|
396
402
|
"In VS Code run \"Shell Command: Install 'code' command in PATH\" (macOS) or re-run the installer with \"Add to PATH\" (Windows), then open the folder from VS Code.");
|
|
@@ -454,6 +460,11 @@ export async function runFlow(args, opts = {}) {
|
|
|
454
460
|
}
|
|
455
461
|
if (interactive)
|
|
456
462
|
prompter.intro?.(opts.intro ?? `nola v${await ownVersion()}`);
|
|
463
|
+
// Before anything else: an old Node (native .ts loading still behind a flag)
|
|
464
|
+
// gets the advice here, where it names the fix, not from `npm start`'s bare error.
|
|
465
|
+
const nodeWarning = nodeVersionWarning(opts.nodeVersion);
|
|
466
|
+
if (nodeWarning)
|
|
467
|
+
prompter.note(nodeWarning);
|
|
457
468
|
const pm = opts.packageManager ?? detectPackageManager();
|
|
458
469
|
// Which key question to ask (spec 2026-09-04-cli-sign-in-design.md §5): signed in → account key; trial used here → sign in; else → trial.
|
|
459
470
|
const apiUrl = (opts.apiUrl ?? nolaApiUrl()).replace(/\/$/, "");
|
|
@@ -534,7 +545,7 @@ export async function runFlow(args, opts = {}) {
|
|
|
534
545
|
const grant = outcome.provider === "nola" ? await obtainTrial(prompter, opts, interactive) : null;
|
|
535
546
|
// A nola choice without a key (declined sign-in, API failure) scaffolds the plain template — the note above says why.
|
|
536
547
|
const provider = outcome.provider === "nola" ? (grant ? "nola" : "none") : outcome.provider;
|
|
537
|
-
const { files } = await scaffold(outcome.dir, { template: outcome.template, force: outcome.force, provider });
|
|
548
|
+
const { files } = await scaffold(outcome.dir, { template: outcome.template, force: outcome.force, provider, ide: outcome.ide });
|
|
538
549
|
let trialWrote = [];
|
|
539
550
|
if (grant) {
|
|
540
551
|
const trial = await applyTrial(outcome.dir, { apiKey: grant.apiKey, hasConfig: false });
|
package/dist/flow.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../src/flow.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../src/flow.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
package/dist/launch.d.ts
CHANGED
|
@@ -12,9 +12,20 @@ export interface Launcher {
|
|
|
12
12
|
* to the exit code (1 when the command could not be spawned at all).
|
|
13
13
|
*/
|
|
14
14
|
install(pm: PackageManager, dir: string, onOutput: (chunk: string) => void): Promise<number>;
|
|
15
|
-
/**
|
|
16
|
-
|
|
15
|
+
/**
|
|
16
|
+
* `code <dir> [<dir>/<entry>]`, detached; "not-found" when VS Code's `code`
|
|
17
|
+
* command is not on PATH. `entry` is a project-relative file to open as the
|
|
18
|
+
* active editor on top of the folder (the scaffold's src/main.ts).
|
|
19
|
+
*/
|
|
20
|
+
openVscode(dir: string, entry?: string): Promise<"opened" | "not-found">;
|
|
17
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* The arguments that open a project in VS Code: the folder alone, or the
|
|
24
|
+
* folder plus one file. `code <folder> <file>` opens the folder as the
|
|
25
|
+
* workspace and the file as the active editor — that is how the scaffold
|
|
26
|
+
* lands the user on src/main.ts instead of an empty window.
|
|
27
|
+
*/
|
|
28
|
+
export declare function vscodeArgs(dir: string, entry?: string): string[];
|
|
18
29
|
/**
|
|
19
30
|
* Locate an executable on PATH the way a shell would: every PATH entry, and
|
|
20
31
|
* on Windows every PATHEXT extension (`code` is `code.cmd` there). Pure —
|
package/dist/launch.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"launch.d.ts","sourceRoot":"","sources":["../src/launch.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7F
|
|
1
|
+
{"version":3,"file":"launch.d.ts","sourceRoot":"","sources":["../src/launch.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7F;;;;OAIG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,WAAW,CAAC,CAAC;CAC1E;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAEhE;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,GAAG,SAAS,CAapB;AA0BD;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,cAAc,GAAG,MAAM,EAAE,CAExD;AAED,eAAO,MAAM,YAAY,EAAE,QAW1B,CAAC"}
|
package/dist/launch.js
CHANGED
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
import { spawn } from "node:child_process";
|
|
2
2
|
import { existsSync } from "node:fs";
|
|
3
3
|
import { join } from "node:path";
|
|
4
|
+
/**
|
|
5
|
+
* The arguments that open a project in VS Code: the folder alone, or the
|
|
6
|
+
* folder plus one file. `code <folder> <file>` opens the folder as the
|
|
7
|
+
* workspace and the file as the active editor — that is how the scaffold
|
|
8
|
+
* lands the user on src/main.ts instead of an empty window.
|
|
9
|
+
*/
|
|
10
|
+
export function vscodeArgs(dir, entry) {
|
|
11
|
+
return entry === undefined ? [dir] : [dir, join(dir, entry)];
|
|
12
|
+
}
|
|
4
13
|
/**
|
|
5
14
|
* Locate an executable on PATH the way a shell would: every PATH entry, and
|
|
6
15
|
* on Windows every PATHEXT extension (`code` is `code.cmd` there). Pure —
|
|
@@ -57,12 +66,12 @@ export function installArgs(pm) {
|
|
|
57
66
|
}
|
|
58
67
|
export const realLauncher = {
|
|
59
68
|
install: (pm, dir, onOutput) => run(pm, installArgs(pm), dir, onOutput),
|
|
60
|
-
async openVscode(dir) {
|
|
69
|
+
async openVscode(dir, entry) {
|
|
61
70
|
const code = findOnPath("code");
|
|
62
71
|
if (!code)
|
|
63
72
|
return "not-found";
|
|
64
73
|
// Detached + ignored stdio: the CLI exits while VS Code keeps running.
|
|
65
|
-
const child = spawn(q(code),
|
|
74
|
+
const child = spawn(q(code), vscodeArgs(dir, entry).map(q), { detached: true, stdio: "ignore", shell: WINDOWS });
|
|
66
75
|
child.on("error", () => { });
|
|
67
76
|
child.unref();
|
|
68
77
|
return "opened";
|
package/dist/launch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"launch.js","sourceRoot":"","sources":["../src/launch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"launch.js","sourceRoot":"","sources":["../src/launch.ts"],"names":[],"mappings":"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"}
|
package/dist/main.js
CHANGED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The Node floor the docs state. Plain `.ts` (the templates' `src/main.ts`)
|
|
3
|
+
* is loaded by Node's native type stripping, which is on by default only from
|
|
4
|
+
* 22.18 on the 22 line and 23.6 on the 23 line; before that it sits behind
|
|
5
|
+
* `--experimental-strip-types` and the default loader rejects `.ts` outright
|
|
6
|
+
* (ERR_UNKNOWN_FILE_EXTENSION) — `npm start` and the F5 launch both die on
|
|
7
|
+
* it, with nothing naming Nola. Nola does not paper over the gap with its own
|
|
8
|
+
* stripping (esbuild accepts syntax Node's stripper refuses, so a project
|
|
9
|
+
* would work on the old Node and break on the upgrade); it tells the user at
|
|
10
|
+
* scaffold time instead. `nola run` and the loader also run on Node ≥ 22.18.
|
|
11
|
+
*/
|
|
12
|
+
export declare const NODE_FLOOR = "22.18";
|
|
13
|
+
/** Whether this Node runs `.ts` files natively without a flag. */
|
|
14
|
+
export declare function nodeSupportsTypeStripping(version: string): boolean;
|
|
15
|
+
/**
|
|
16
|
+
* The scaffold-time advice for an unsupported Node, or undefined when the
|
|
17
|
+
* running Node is fine. Printed as a note by `npm create nola` and `nola init`
|
|
18
|
+
* (both go through `runFlow`) so the user hears it before the first
|
|
19
|
+
* `npm start`, not from Node's bare error.
|
|
20
|
+
*/
|
|
21
|
+
export declare function nodeVersionWarning(version?: string): string | undefined;
|
|
22
|
+
//# sourceMappingURL=node-version.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node-version.d.ts","sourceRoot":"","sources":["../src/node-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,UAAU,UAAU,CAAC;AAOlC,kEAAkE;AAClE,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAQlE;AAUD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,MAA8B,GAAG,MAAM,GAAG,SAAS,CAe9F"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The Node floor the docs state. Plain `.ts` (the templates' `src/main.ts`)
|
|
3
|
+
* is loaded by Node's native type stripping, which is on by default only from
|
|
4
|
+
* 22.18 on the 22 line and 23.6 on the 23 line; before that it sits behind
|
|
5
|
+
* `--experimental-strip-types` and the default loader rejects `.ts` outright
|
|
6
|
+
* (ERR_UNKNOWN_FILE_EXTENSION) — `npm start` and the F5 launch both die on
|
|
7
|
+
* it, with nothing naming Nola. Nola does not paper over the gap with its own
|
|
8
|
+
* stripping (esbuild accepts syntax Node's stripper refuses, so a project
|
|
9
|
+
* would work on the old Node and break on the upgrade); it tells the user at
|
|
10
|
+
* scaffold time instead. `nola run` and the loader also run on Node ≥ 22.18.
|
|
11
|
+
*/
|
|
12
|
+
export const NODE_FLOOR = "22.18";
|
|
13
|
+
function parse(version) {
|
|
14
|
+
const m = /^v?(\d+)\.(\d+)/.exec(version);
|
|
15
|
+
return m ? [Number(m[1]), Number(m[2])] : undefined;
|
|
16
|
+
}
|
|
17
|
+
/** Whether this Node runs `.ts` files natively without a flag. */
|
|
18
|
+
export function nodeSupportsTypeStripping(version) {
|
|
19
|
+
const v = parse(version);
|
|
20
|
+
if (!v)
|
|
21
|
+
return true; // unparsable: do not nag on what we cannot read
|
|
22
|
+
const [major, minor] = v;
|
|
23
|
+
if (major >= 24)
|
|
24
|
+
return true;
|
|
25
|
+
if (major === 23)
|
|
26
|
+
return minor >= 6;
|
|
27
|
+
if (major === 22)
|
|
28
|
+
return minor >= 18;
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
/** Whether `--experimental-strip-types` exists on this Node (22.6+, 23.x before 23.6). */
|
|
32
|
+
function hasStripTypesFlag(version) {
|
|
33
|
+
const v = parse(version);
|
|
34
|
+
if (!v)
|
|
35
|
+
return false;
|
|
36
|
+
const [major, minor] = v;
|
|
37
|
+
return major > 22 || (major === 22 && minor >= 6);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* The scaffold-time advice for an unsupported Node, or undefined when the
|
|
41
|
+
* running Node is fine. Printed as a note by `npm create nola` and `nola init`
|
|
42
|
+
* (both go through `runFlow`) so the user hears it before the first
|
|
43
|
+
* `npm start`, not from Node's bare error.
|
|
44
|
+
*/
|
|
45
|
+
export function nodeVersionWarning(version = process.versions.node) {
|
|
46
|
+
if (nodeSupportsTypeStripping(version))
|
|
47
|
+
return undefined;
|
|
48
|
+
const lines = [
|
|
49
|
+
`Node ${version} is older than Nola needs: Node >= ${NODE_FLOOR}, the first release that runs .ts files natively.`,
|
|
50
|
+
"On this Node, `npm start` and the VS Code F5 launch fail with ERR_UNKNOWN_FILE_EXTENSION for src/main.ts.",
|
|
51
|
+
];
|
|
52
|
+
if (hasStripTypesFlag(version)) {
|
|
53
|
+
lines.push("Upgrade Node (recommended), or set NODE_OPTIONS=--experimental-strip-types for `npm start` and add", '"--experimental-strip-types" to runtimeArgs in .vscode/launch.json.');
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
lines.push("Upgrade Node: https://nodejs.org/");
|
|
57
|
+
}
|
|
58
|
+
return lines.join("\n");
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=node-version.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node-version.js","sourceRoot":"","sources":["../src/node-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC;AAElC,SAAS,KAAK,CAAC,OAAe;IAC5B,MAAM,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1C,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,yBAAyB,CAAC,OAAe;IACvD,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IACzB,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC,CAAC,gDAAgD;IACrE,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,IAAI,KAAK,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC;IAC7B,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,KAAK,IAAI,CAAC,CAAC;IACpC,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,KAAK,IAAI,EAAE,CAAC;IACrC,OAAO,KAAK,CAAC;AACf,CAAC;AAED,0FAA0F;AAC1F,SAAS,iBAAiB,CAAC,OAAe;IACxC,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IACzB,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACrB,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,OAAO,KAAK,GAAG,EAAE,IAAI,CAAC,KAAK,KAAK,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,UAAkB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACxE,IAAI,yBAAyB,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAC;IACzD,MAAM,KAAK,GAAG;QACZ,QAAQ,OAAO,sCAAsC,UAAU,mDAAmD;QAClH,2GAA2G;KAC5G,CAAC;IACF,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CACR,oGAAoG,EACpG,qEAAqE,CACtE,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
package/dist/registry.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
export const TEMPLATES = [
|
|
2
2
|
{ name: "starter", label: "typed extraction, runs offline out of the box", source: "builtin" },
|
|
3
3
|
{ name: "empty", label: "nola.config + tsconfig only, bring your own code", source: "builtin" },
|
|
4
|
+
{ name: "file-ticket", label: "call intents: the model fills a function's arguments", source: "example" },
|
|
4
5
|
{ name: "extract-resume", label: "nested arrays of objects, JSDoc schema descriptions", source: "example" },
|
|
5
6
|
{ name: "extract-invoice", label: "same-file type references, optional fields", source: "example" },
|
|
6
7
|
{ name: "classify-message", label: "closed label sets: union alias, string enum, inline union", source: "example" },
|
|
7
8
|
{ name: "chain-of-thought", label: "two asks sharing accumulating context", source: "example" },
|
|
8
9
|
{ name: "research-notes", label: "TS control flow orchestrating nola functions", source: "example" },
|
|
9
|
-
{ name: "file-ticket", label: "call intents: the model fills a function's arguments", source: "example" },
|
|
10
10
|
];
|
|
11
11
|
export function templateByName(name) {
|
|
12
12
|
return TEMPLATES.find((t) => t.name === name);
|
package/dist/registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,MAAM,SAAS,GAA2B;IAC/C,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,+CAA+C,EAAE,MAAM,EAAE,SAAS,EAAE;IAC9F,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,kDAAkD,EAAE,MAAM,EAAE,SAAS,EAAE;IAC/F,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAaA,MAAM,CAAC,MAAM,SAAS,GAA2B;IAC/C,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,+CAA+C,EAAE,MAAM,EAAE,SAAS,EAAE;IAC9F,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,kDAAkD,EAAE,MAAM,EAAE,SAAS,EAAE;IAC/F,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,sDAAsD,EAAE,MAAM,EAAE,SAAS,EAAE;IACzG,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,qDAAqD,EAAE,MAAM,EAAE,SAAS,EAAE;IAC3G,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,4CAA4C,EAAE,MAAM,EAAE,SAAS,EAAE;IACnG,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,2DAA2D,EAAE,MAAM,EAAE,SAAS,EAAE;IACnH,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,uCAAuC,EAAE,MAAM,EAAE,SAAS,EAAE;IAC/F,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,8CAA8C,EAAE,MAAM,EAAE,SAAS,EAAE;CACrG,CAAC;AAEF,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACtC,CAAC"}
|
package/dist/scaffold.d.ts
CHANGED
|
@@ -17,9 +17,24 @@ export interface ScaffoldOptions {
|
|
|
17
17
|
* the matching README notes.
|
|
18
18
|
*/
|
|
19
19
|
provider?: ProviderId;
|
|
20
|
+
/**
|
|
21
|
+
* The editor chosen in the wizard; default "none". Decides the next-steps
|
|
22
|
+
* comment rendered at the top of the template's src/main.ts: with VS Code
|
|
23
|
+
* it names F5, breakpoints and the recommended extension (all of which the
|
|
24
|
+
* .vscode files the flow writes make true); without one it stays
|
|
25
|
+
* editor-neutral.
|
|
26
|
+
*/
|
|
27
|
+
ide?: "vscode" | "none";
|
|
20
28
|
}
|
|
21
29
|
/** The config a live provider choice writes over the template's own (`templates/_providers/<id>.config.ts`). */
|
|
22
30
|
export declare function providerConfigUrl(provider: Exclude<ProviderId, "none">): URL;
|
|
31
|
+
/**
|
|
32
|
+
* The comment that opens src/main.ts — the file the scaffold lands the user
|
|
33
|
+
* on (VS Code opens it as the active editor), so it carries the first three
|
|
34
|
+
* things to do. The VS Code variant only ships with the editor step's
|
|
35
|
+
* .vscode files, which are what make F5 and the extension prompt real.
|
|
36
|
+
*/
|
|
37
|
+
export declare function nextStepsComment(ide: "vscode" | "none", template: string): string;
|
|
23
38
|
export declare function ownVersion(): Promise<string>;
|
|
24
39
|
/**
|
|
25
40
|
* Lay a template down into `targetDir`. One implementation serves both entry
|
package/dist/scaffold.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,UAAU,EAAgB,MAAM,gBAAgB,CAAC;AAG/D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gGAAgG;IAChG,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,UAAU,EAAgB,MAAM,gBAAgB,CAAC;AAG/D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gGAAgG;IAChG,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;CACzB;AAID,gHAAgH;AAChH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,GAAG,CAE5E;AAQD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAgBjF;AAyCD,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAGlD;AAWD;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,GAAE,eAAoB,GAAG,OAAO,CAAC,cAAc,CAAC,CA4DrG"}
|
package/dist/scaffold.js
CHANGED
|
@@ -13,8 +13,31 @@ export function providerConfigUrl(provider) {
|
|
|
13
13
|
}
|
|
14
14
|
/** _gitignore ships underscored (npm pack strips nested .gitignore files). */
|
|
15
15
|
const RENAMES = { _gitignore: ".gitignore" };
|
|
16
|
-
/** Files whose __NAME__/__VERSION__
|
|
17
|
-
const SUBSTITUTED = new Set(["package.json", "README.md"]);
|
|
16
|
+
/** Files whose __NAME__/__VERSION__, README-note and __NEXT_STEPS__ placeholders are substituted. */
|
|
17
|
+
const SUBSTITUTED = new Set(["package.json", "README.md", "main.ts"]);
|
|
18
|
+
/**
|
|
19
|
+
* The comment that opens src/main.ts — the file the scaffold lands the user
|
|
20
|
+
* on (VS Code opens it as the active editor), so it carries the first three
|
|
21
|
+
* things to do. The VS Code variant only ships with the editor step's
|
|
22
|
+
* .vscode files, which are what make F5 and the extension prompt real.
|
|
23
|
+
*/
|
|
24
|
+
export function nextStepsComment(ide, template) {
|
|
25
|
+
if (ide === "vscode") {
|
|
26
|
+
const breakpointIn = template === "starter" ? "src/person.tsi" : "your .tsi file";
|
|
27
|
+
return [
|
|
28
|
+
"// Next steps in VS Code:",
|
|
29
|
+
"// 1. Press F5 to run this file (.vscode/launch.json is already set up).",
|
|
30
|
+
`// 2. Set a breakpoint in ${breakpointIn} and press F5 again to step through the ask.`,
|
|
31
|
+
'// 3. Install the recommended "Nola" extension when VS Code offers it — IntelliSense,',
|
|
32
|
+
"// go to definition and diagnostics inside .tsi files.",
|
|
33
|
+
].join("\n");
|
|
34
|
+
}
|
|
35
|
+
return [
|
|
36
|
+
"// Next steps:",
|
|
37
|
+
"// 1. Run this file: npm start",
|
|
38
|
+
"// 2. Set up your editor (VS Code extension, debugging): https://nola.sh/docs/start/editor-setup/",
|
|
39
|
+
].join("\n");
|
|
40
|
+
}
|
|
18
41
|
/** Starter files that only make sense for the offline (replay) configuration. */
|
|
19
42
|
const OFFLINE_ONLY = new Set(["nola.replay.jsonl"]);
|
|
20
43
|
const README_NOTES = {
|
|
@@ -96,6 +119,7 @@ export async function scaffold(targetDir, opts = {}) {
|
|
|
96
119
|
const versionRange = `^${version}`;
|
|
97
120
|
const provider = opts.provider ?? "none";
|
|
98
121
|
const notes = readmeNotes(provider);
|
|
122
|
+
const nextSteps = nextStepsComment(opts.ide ?? "none", template);
|
|
99
123
|
const files = [];
|
|
100
124
|
const copyDir = async (fromDir, relDir) => {
|
|
101
125
|
await mkdir(join(absRoot, relDir), { recursive: true });
|
|
@@ -119,7 +143,8 @@ export async function scaffold(targetDir, opts = {}) {
|
|
|
119
143
|
.replaceAll("__NAME__", name)
|
|
120
144
|
.replaceAll("__VERSION__", versionRange)
|
|
121
145
|
.replaceAll("__START_NOTE__", notes.START_NOTE)
|
|
122
|
-
.replaceAll("__PROVIDER_NOTE__", notes.PROVIDER_NOTE)
|
|
146
|
+
.replaceAll("__PROVIDER_NOTE__", notes.PROVIDER_NOTE)
|
|
147
|
+
.replaceAll("__NEXT_STEPS__", nextSteps);
|
|
123
148
|
}
|
|
124
149
|
await writeFile(join(absRoot, toRel), content);
|
|
125
150
|
files.push(toRel.replaceAll("\\", "/"));
|
package/dist/scaffold.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAClG,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAmB,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../src/scaffold.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-nola-lang",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.6",
|
|
4
4
|
"description": "Scaffold a new Nola project (npm create nola, or npm create nola-lang)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"nola",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"bundle-dev": "node scripts/bundle.mjs --dev"
|
|
47
47
|
},
|
|
48
48
|
"engines": {
|
|
49
|
-
"node": ">=22"
|
|
49
|
+
"node": ">=22.18"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
52
|
"@clack/prompts": "^1.7.0",
|
|
@@ -203,14 +203,14 @@ the providers package:
|
|
|
203
203
|
"check": "nola check"
|
|
204
204
|
},
|
|
205
205
|
"dependencies": {
|
|
206
|
-
"@nola-lang/providers": "^0.1.
|
|
207
|
-
"@nola-lang/runtime": "^0.1.
|
|
206
|
+
"@nola-lang/providers": "^0.1.6",
|
|
207
|
+
"@nola-lang/runtime": "^0.1.6"
|
|
208
208
|
},
|
|
209
209
|
"devDependencies": {
|
|
210
|
-
"nola-lang": "^0.1.
|
|
210
|
+
"nola-lang": "^0.1.6",
|
|
211
211
|
"typescript": "^5.6.0"
|
|
212
212
|
},
|
|
213
|
-
"engines": { "node": ">=22" }
|
|
213
|
+
"engines": { "node": ">=22.18" }
|
|
214
214
|
}
|
|
215
215
|
```
|
|
216
216
|
|