@nifrajs/cli 2.4.0 → 2.6.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.
- package/dist/capabilities-tool.d.ts.map +1 -1
- package/dist/capabilities-tool.js +3 -1
- package/dist/capabilities-tool.js.map +1 -1
- package/dist/check.d.ts +1 -1
- package/dist/check.d.ts.map +1 -1
- package/dist/check.js +45 -2
- package/dist/check.js.map +1 -1
- package/dist/cli.js +1 -1
- package/dist/doctor.d.ts +27 -0
- package/dist/doctor.d.ts.map +1 -1
- package/dist/doctor.js +154 -15
- package/dist/doctor.js.map +1 -1
- package/dist/mcp-app-tool.d.ts.map +1 -1
- package/dist/mcp-app-tool.js +1 -0
- package/dist/mcp-app-tool.js.map +1 -1
- package/dist/mcp-docs-tools.d.ts.map +1 -1
- package/dist/mcp-docs-tools.js +14 -0
- package/dist/mcp-docs-tools.js.map +1 -1
- package/dist/mcp-http.d.ts.map +1 -1
- package/dist/mcp-http.js +6 -2
- package/dist/mcp-http.js.map +1 -1
- package/docs/llms-full.txt +49 -10
- package/docs/types.json +60 -21
- package/package.json +9 -9
- package/src/capabilities-tool.ts +3 -1
- package/src/check.ts +44 -2
- package/src/cli.ts +1 -1
- package/src/doctor.ts +178 -3
- package/src/mcp-app-tool.ts +1 -0
- package/src/mcp-docs-tools.ts +14 -0
- package/src/mcp-http.ts +7 -2
package/dist/doctor.js
CHANGED
|
@@ -1,18 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
* `nifra doctor` - catches the Bun-workspace footgun the typed-client lint can't: a package that's
|
|
3
|
-
* IMPORTED in source but NOT declared in `package.json`. Bun resolves it at runtime (via hoisting or a
|
|
4
|
-
* workspace), so tests pass and `bun install` reports "no changes" - false confidence - yet `tsc` fails
|
|
5
|
-
* and a fresh or standalone install can't resolve it. doctor diffs every bare import specifier against
|
|
6
|
-
* the package's declared dependencies and flags the gap, with a stable `--json` shape for agents/CI.
|
|
7
|
-
*
|
|
8
|
-
* Scope is intentionally per-package: it checks the `package.json` at `cwd`, because a dependency must be
|
|
9
|
-
* declared by the package that imports it (for `tsc` and for that package to install on its own) even
|
|
10
|
-
* when a monorepo would hoist it. Relative paths, runtime builtins (node core, `node:`/`bun:`, `bun`),
|
|
11
|
-
* the package's own name, and tsconfig `paths` aliases are excluded - none of them are npm deps.
|
|
12
|
-
*/
|
|
13
|
-
import { realpath, stat } from "node:fs/promises";
|
|
1
|
+
import { readdir, realpath, stat } from "node:fs/promises";
|
|
14
2
|
import { builtinModules } from "node:module";
|
|
15
|
-
import { dirname, join, relative } from "node:path";
|
|
3
|
+
import { dirname, join, relative, sep } from "node:path";
|
|
16
4
|
import { codePositionMask, stripComments, walkSource } from "./check.js";
|
|
17
5
|
// Runtime-provided modules that are never an npm dependency: Node core (bare + `node:` form) and Bun's
|
|
18
6
|
// own `bun` module. `node:`/`bun:`-prefixed specifiers are filtered in packageOf by prefix.
|
|
@@ -354,6 +342,142 @@ export async function collectDuplicateInstalls(cwd, rootPackage) {
|
|
|
354
342
|
}
|
|
355
343
|
return findings;
|
|
356
344
|
}
|
|
345
|
+
/**
|
|
346
|
+
* Resolve one condition through an export-map entry: a string is terminal; an object takes the first
|
|
347
|
+
* key that is the wanted condition or `default` (insertion order, like the runtime), skipping `types`.
|
|
348
|
+
*/
|
|
349
|
+
function exportTarget(entry, condition) {
|
|
350
|
+
if (typeof entry === "string")
|
|
351
|
+
return entry;
|
|
352
|
+
if (!isRecord(entry))
|
|
353
|
+
return undefined;
|
|
354
|
+
for (const [key, value] of Object.entries(entry)) {
|
|
355
|
+
if (key === "types")
|
|
356
|
+
continue;
|
|
357
|
+
if (key === condition || key === "default")
|
|
358
|
+
return exportTarget(value, condition);
|
|
359
|
+
}
|
|
360
|
+
return undefined;
|
|
361
|
+
}
|
|
362
|
+
// Bounded recursive walk for the newest file under a package's source tree. The cap is a runaway
|
|
363
|
+
// guard, not a tuning knob - a real `src/` is a few hundred files.
|
|
364
|
+
const MAX_SOURCE_FILES = 4_096;
|
|
365
|
+
async function newestFileUnder(dir) {
|
|
366
|
+
let newest;
|
|
367
|
+
let seen = 0;
|
|
368
|
+
const walk = async (current) => {
|
|
369
|
+
const entries = await readdir(current, { withFileTypes: true }).catch(() => []);
|
|
370
|
+
for (const entry of entries) {
|
|
371
|
+
if (seen >= MAX_SOURCE_FILES)
|
|
372
|
+
return;
|
|
373
|
+
const path = join(current, entry.name);
|
|
374
|
+
if (entry.isDirectory()) {
|
|
375
|
+
if (entry.name === "node_modules" || entry.name === "dist" || entry.name.startsWith("."))
|
|
376
|
+
continue;
|
|
377
|
+
await walk(path);
|
|
378
|
+
continue;
|
|
379
|
+
}
|
|
380
|
+
if (!entry.isFile())
|
|
381
|
+
continue;
|
|
382
|
+
seen++;
|
|
383
|
+
const s = await stat(path).catch(() => undefined);
|
|
384
|
+
if (s !== undefined && (newest === undefined || s.mtimeMs > newest.mtimeMs))
|
|
385
|
+
newest = { file: path, mtimeMs: s.mtimeMs };
|
|
386
|
+
}
|
|
387
|
+
};
|
|
388
|
+
await walk(dir);
|
|
389
|
+
return newest;
|
|
390
|
+
}
|
|
391
|
+
/**
|
|
392
|
+
* Find workspace-linked dependencies whose `default`-condition artifact (`dist/…`) has fallen behind
|
|
393
|
+
* their `bun`-condition source (`src/…`).
|
|
394
|
+
*
|
|
395
|
+
* The split export map is what makes this a trap: Bun (the build, the tests, the prod binary) reads
|
|
396
|
+
* live source, while Vite's SSR runner and any node consumer read a build artifact nothing in the dev
|
|
397
|
+
* loop regenerates. `dist/` is gitignored, so the drift never shows in a diff - it surfaces as a 500
|
|
398
|
+
* INSIDE framework/shared-package code and reads like an upstream regression. npm-installed copies are
|
|
399
|
+
* immutable and skipped; only symlinked (workspace) installs can drift.
|
|
400
|
+
*/
|
|
401
|
+
export async function collectStaleWorkspaceDists(cwd, rootPackage) {
|
|
402
|
+
const findings = [];
|
|
403
|
+
const seen = new Set();
|
|
404
|
+
for (const field of DEPENDENCY_FIELDS) {
|
|
405
|
+
for (const name of depNames(rootPackage, field)) {
|
|
406
|
+
if (seen.has(name))
|
|
407
|
+
continue;
|
|
408
|
+
seen.add(name);
|
|
409
|
+
// Boundary "" - never matches a real dir, so the upward walk runs to the filesystem root and
|
|
410
|
+
// finds a hoisted copy wherever the install put it.
|
|
411
|
+
const copy = await resolvedInstalledCopy(cwd, "", name);
|
|
412
|
+
// A real (tarball) install lives under node_modules and cannot drift; only a symlink out of the
|
|
413
|
+
// tree - a workspace/link install whose realpath escapes node_modules - has a live `src`.
|
|
414
|
+
if (copy === undefined || copy.path.includes(`${sep}node_modules${sep}`))
|
|
415
|
+
continue;
|
|
416
|
+
const meta = await readJson(join(copy.path, "package.json"));
|
|
417
|
+
const exportsMap = meta?.exports;
|
|
418
|
+
if (!isRecord(exportsMap))
|
|
419
|
+
continue;
|
|
420
|
+
// Every subpath with a bun→src / default→dist split; the root "." alone would miss the common
|
|
421
|
+
// "deep subpaths only" layout.
|
|
422
|
+
const pairs = [];
|
|
423
|
+
const entries = Object.keys(exportsMap).some((k) => k.startsWith("."))
|
|
424
|
+
? Object.entries(exportsMap)
|
|
425
|
+
: [[".", exportsMap]];
|
|
426
|
+
for (const [, entry] of entries) {
|
|
427
|
+
const bun = exportTarget(entry, "bun");
|
|
428
|
+
const dist = exportTarget(entry, "default");
|
|
429
|
+
if (bun !== undefined && dist !== undefined && bun !== dist)
|
|
430
|
+
pairs.push({ bun, dist });
|
|
431
|
+
}
|
|
432
|
+
if (pairs.length === 0)
|
|
433
|
+
continue;
|
|
434
|
+
// One newest-source probe per package: the bun targets share a source tree (its top directory).
|
|
435
|
+
const sourceDirs = new Set(pairs
|
|
436
|
+
.map((p) => p.bun.replace(/^\.\//, "").split("/")[0])
|
|
437
|
+
.filter((d) => d !== undefined && d.length > 0));
|
|
438
|
+
let newest;
|
|
439
|
+
for (const dir of sourceDirs) {
|
|
440
|
+
const candidate = await newestFileUnder(join(copy.path, dir));
|
|
441
|
+
if (candidate !== undefined && (newest === undefined || candidate.mtimeMs > newest.mtimeMs))
|
|
442
|
+
newest = candidate;
|
|
443
|
+
}
|
|
444
|
+
if (newest === undefined)
|
|
445
|
+
continue;
|
|
446
|
+
// Report the package once, anchored on its stalest (or missing) artifact.
|
|
447
|
+
let worst;
|
|
448
|
+
for (const pair of pairs) {
|
|
449
|
+
const distPath = join(copy.path, pair.dist.replace(/^\.\//, ""));
|
|
450
|
+
const distStat = await stat(distPath).catch(() => undefined);
|
|
451
|
+
const finding = distStat === undefined
|
|
452
|
+
? {
|
|
453
|
+
package: name,
|
|
454
|
+
distFile: displayPath(cwd, distPath),
|
|
455
|
+
missing: true,
|
|
456
|
+
sourceFile: displayPath(cwd, newest.file),
|
|
457
|
+
behindSeconds: 0,
|
|
458
|
+
}
|
|
459
|
+
: distStat.mtimeMs < newest.mtimeMs
|
|
460
|
+
? {
|
|
461
|
+
package: name,
|
|
462
|
+
distFile: displayPath(cwd, distPath),
|
|
463
|
+
missing: false,
|
|
464
|
+
sourceFile: displayPath(cwd, newest.file),
|
|
465
|
+
behindSeconds: Math.round((newest.mtimeMs - distStat.mtimeMs) / 1000),
|
|
466
|
+
}
|
|
467
|
+
: undefined;
|
|
468
|
+
if (finding === undefined)
|
|
469
|
+
continue;
|
|
470
|
+
if (worst === undefined ||
|
|
471
|
+
(finding.missing && !worst.missing) ||
|
|
472
|
+
finding.behindSeconds > worst.behindSeconds)
|
|
473
|
+
worst = finding;
|
|
474
|
+
}
|
|
475
|
+
if (worst !== undefined)
|
|
476
|
+
findings.push(worst);
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
return findings.sort((a, b) => a.package.localeCompare(b.package));
|
|
480
|
+
}
|
|
357
481
|
function depRecord(pkg, field) {
|
|
358
482
|
const deps = pkg[field];
|
|
359
483
|
return isRecord(deps) ? deps : undefined;
|
|
@@ -407,7 +531,7 @@ async function inferDependencyFix(cwd, name) {
|
|
|
407
531
|
export async function collectDoctorResult(cwd) {
|
|
408
532
|
const pkg = await readJson(join(cwd, "package.json"));
|
|
409
533
|
if (pkg === undefined)
|
|
410
|
-
return { ok: true, ran: false, findings: [], duplicateInstalls: [] };
|
|
534
|
+
return { ok: true, ran: false, findings: [], duplicateInstalls: [], staleDists: [] };
|
|
411
535
|
const scopes = await doctorPackageScopes(cwd, pkg);
|
|
412
536
|
const findings = [];
|
|
413
537
|
await walkSource(cwd, (rel, content) => {
|
|
@@ -418,11 +542,14 @@ export async function collectDoctorResult(cwd) {
|
|
|
418
542
|
});
|
|
419
543
|
findings.sort((a, b) => a.file.localeCompare(b.file) || a.line - b.line);
|
|
420
544
|
const duplicateInstalls = await collectDuplicateInstalls(cwd, pkg);
|
|
545
|
+
const staleDists = await collectStaleWorkspaceDists(cwd, pkg);
|
|
546
|
+
// `staleDists` is advisory (see DoctorResult): it never fails `ok`.
|
|
421
547
|
return {
|
|
422
548
|
ok: findings.length === 0 && duplicateInstalls.length === 0,
|
|
423
549
|
ran: true,
|
|
424
550
|
findings,
|
|
425
551
|
duplicateInstalls,
|
|
552
|
+
staleDists,
|
|
426
553
|
};
|
|
427
554
|
}
|
|
428
555
|
/** Safely add undeclared imports to package.json when the version can be inferred without network I/O. */
|
|
@@ -521,6 +648,18 @@ export async function runDoctor(cwd, opts = {}) {
|
|
|
521
648
|
}
|
|
522
649
|
console.log("");
|
|
523
650
|
}
|
|
651
|
+
// Advisory, printed regardless of ok: a stale linked dist doesn't fail doctor, but silently eating
|
|
652
|
+
// it costs an hour of misdiagnosis when the dev server 500s inside the package.
|
|
653
|
+
if (result.staleDists.length > 0) {
|
|
654
|
+
console.log(`⚠ ${result.staleDists.length} workspace-linked package(s) with a build artifact older than their source (Bun reads src, Vite SSR/node consumers read dist):\n`);
|
|
655
|
+
for (const f of result.staleDists) {
|
|
656
|
+
console.log(f.missing
|
|
657
|
+
? ` ${f.package} - ${f.distFile} was never built`
|
|
658
|
+
: ` ${f.package} - ${f.distFile} is ${f.behindSeconds}s behind ${f.sourceFile}`);
|
|
659
|
+
console.log(` rebuild ${f.package}`);
|
|
660
|
+
}
|
|
661
|
+
console.log("");
|
|
662
|
+
}
|
|
524
663
|
if (result.ok) {
|
|
525
664
|
console.log("✓ every imported package is declared and identity-sensitive installs are deduplicated");
|
|
526
665
|
return true;
|
package/dist/doctor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAsB,aAAa,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAE5F,uGAAuG;AACvG,4FAA4F;AAC5F,MAAM,QAAQ,GAAwB,IAAI,GAAG,CAAS;IACpD,GAAG,cAAc;IACjB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;IACzC,KAAK;CACN,CAAC,CAAA;AAEF,uGAAuG;AACvG,yGAAyG;AACzG,yGAAyG;AACzG,4BAA4B;AAC5B,MAAM,eAAe,GAAsB;IACzC,iEAAiE;IACjE,uCAAuC;IACvC,4CAA4C;IAC5C,6CAA6C;CAC9C,CAAA;AAED,MAAM,gBAAgB,GAAG,0CAA0C,CAAA;AACnE,MAAM,iBAAiB,GAAG;IACxB,cAAc;IACd,iBAAiB;IACjB,kBAAkB;IAClB,sBAAsB;CACd,CAAA;AAEV,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAW,EAAE,CACjD,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;IAC3B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,IAAI,CAAC,CAAA;AAE/E;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,IAAI,IAAI,KAAK,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAA;IACjF,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAA;IACzE,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACrC,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,GAAG,IAAI,CAAC,IAAI;YAAE,OAAO,SAAS,CAAA,CAAC,yCAAyC;QAChG,MAAM,GAAG,GAAG,GAAG,KAAK,IAAI,IAAI,EAAE,CAAA;QAC9B,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;IAChD,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAW,CAAA;IACzC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAA;IAC7C,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAA;AAC9C,CAAC;AAED;8DAC8D;AAC9D,MAAM,UAAU,YAAY,CAC1B,KAAoD;IAEpD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;SACnC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;IAC1B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;AAC/E,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAY,EACZ,OAAe,EACf,QAA6B,EAC7B,OAAkC;IAElC,MAAM,GAAG,GAAoB,EAAE,CAAA;IAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA,CAAC,4DAA4D;IAChG,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;IAC3C,KAAK,MAAM,EAAE,IAAI,eAAe,EAAE,CAAC;QACjC,EAAE,CAAC,SAAS,GAAG,CAAC,CAAA;QAChB,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1D,gGAAgG;YAChG,8FAA8F;YAC9F,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG;gBAAE,SAAQ;YACxC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YACvB,IAAI,OAAO,CAAC,IAAI,CAAC;gBAAE,SAAQ;YAC3B,MAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;YAC3B,IAAI,GAAG,KAAK,SAAS,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAQ;YACpD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAA;YACzD,MAAM,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;YAC5B,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAQ;YAC3B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACb,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAA;QACxC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;AAClF,CAAC;AAiDD,4GAA4G;AAC5G,KAAK,UAAU,QAAQ,CAAC,IAAY;IAClC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAA;QAC1C,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;YAClD,CAAC,CAAE,MAAkC;YACrC,CAAC,CAAC,SAAS,CAAA;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC;AAED,MAAM,QAAQ,GAAG,CAAC,GAA4B,EAAE,KAAa,EAAY,EAAE;IACzE,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAA;IACvB,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;QAC9C,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAA+B,CAAC;QAC9C,CAAC,CAAC,EAAE,CAAA;AACR,CAAC,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAoC,EAAE,CACpE,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;AAEtE,MAAM,uBAAuB,GAAG,KAAK,CAAA;AACrC,MAAM,2BAA2B,GAAG,IAAI,GAAG,CAAC,CAAC,eAAe,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAA;AAEpF,SAAS,iBAAiB,CAAC,GAA4B;IACrD,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAA;IAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAChC,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;YAC5C,CAAC,CAAC,GAAG,CAAC,QAAQ;YACd,CAAC,CAAC,EAAE,CAAA;IACR,OAAO,OAAO;SACX,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;SACjF,IAAI,EAAE,CAAA;AACX,CAAC;AAED;;mGAEmG;AACnG,KAAK,UAAU,kBAAkB,CAC/B,GAAW,EACX,WAAoC,EACpC,qBAAqB,GAAG,KAAK;IAE7B,MAAM,SAAS,GAAG,IAAI,GAAG,CAAS,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,CAAA;IAC9D,KAAK,MAAM,OAAO,IAAI,iBAAiB,CAAC,WAAW,CAAC,EAAE,CAAC;QACrD,MAAM,cAAc,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAA;QACnE,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YAC/E,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;gBAAE,SAAQ;YACzD,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;YAC7B,4FAA4F;YAC5F,iFAAiF;YACjF,IAAI,SAAS,CAAC,IAAI,GAAG,uBAAuB;gBAAE,OAAO,EAAE,CAAA;QACzD,CAAC;IACH,CAAC;IACD,IAAI,qBAAqB,EAAE,CAAC;QAC1B,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YAClF,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACnC,IACE,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CACxB,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,QAAQ,CAC/E,OAAO,CACR,CACF,EACD,CAAC;gBACD,SAAQ;YACV,CAAC;YACD,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;YAC7B,IAAI,SAAS,CAAC,IAAI,GAAG,uBAAuB;gBAAE,OAAO,EAAE,CAAA;QACzD,CAAC;IACH,CAAC;IAED,MAAM,GAAG,GAA8D,EAAE,CAAA;IACzE,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAA;QACpC,IAAI,GAAG,KAAK,SAAS;YAAE,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAA;IAC5E,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AASD,MAAM,gBAAgB,GAAG,CAAC,GAA4B,EAAuB,EAAE;IAC7E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAA;IAClC,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;QAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACxD,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE,CAAC;QACtC,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC;YAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC7D,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,KAAK,EACzB,IAAY,EAC4C,EAAE;IAC1D,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAA;IAC5D,MAAM,eAAe,GAAG,QAAQ,EAAE,eAErB,CAAA;IACb,OAAO,eAAe,EAAE,KAAK,CAAA;AAC/B,CAAC,CAAA;AAED;4FAC4F;AAC5F,KAAK,UAAU,mBAAmB,CAChC,GAAW,EACX,WAAoC;IAEpC,MAAM,SAAS,GAAG,MAAM,kBAAkB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;IAClE,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAA;IACzF,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,CAAA;IAC1C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAA+B,EAAE;QACxD,MAAM,KAAK,GAAG,CAAC,MAAM,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,SAAS,CAAA;QAC5D,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,YAAY,EAAE,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAC7D,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,OAAO,CAAC;YACzC,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC;SAC7B,CAAA;IACH,CAAC,CAAC,CACH,CAAA;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;AAC7E,CAAC;AAED,MAAM,YAAY,GAAG,CAAC,MAAqC,EAAE,IAAY,EAAsB,EAAE,CAC/F,MAAM,CAAC,IAAI,CACT,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,YAAY,KAAK,EAAE;IACzB,CAAC,IAAI,KAAK,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAC7E,IAAK,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,KAAK,EAAE,CAAwB,CAAA;AAEhF,SAAS,gBAAgB,CAAC,GAA4B;IACpD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAA;IACjC,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE,CAAC;QACtC,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;YACxC,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,2BAA2B,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC9F,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,EAAE,CAAA;AAC5B,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,QAAgB,EAChB,QAAgB,EAChB,IAAY;IAEZ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC7B,KAAK,IAAI,GAAG,GAAG,QAAQ,GAAI,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC,CAAA;QACtD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAA;QAC7D,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC;gBACH,OAAO;oBACL,IAAI,EAAE,MAAM,QAAQ,CAAC,UAAU,CAAC;oBAChC,OAAO,EACL,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;iBACzF,CAAA;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,SAAS,CAAA;YAClB,CAAC;QACH,CAAC;QACD,IAAI,GAAG,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAA;QACtC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;QAC3B,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,SAAS,CAAA;IACtC,CAAC;AACH,CAAC;AAED,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,IAAY,EAAU,EAAE;IACxD,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC/B,OAAO,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;AAC/B,CAAC,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH;sFACsF;AACtF,MAAM,UAAU,GAAG,CAAC,IAAY,EAAoB,EAAE,CACpD,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CACb,GAAG,EAAE,CAAC,IAAI,EACV,GAAG,EAAE,CAAC,KAAK,CACZ,CAAA;AAEH,KAAK,UAAU,iBAAiB,CAC9B,GAAW;IAEX,IAAI,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IACtB,SAAS,CAAC;QACR,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;QAC9C,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,CAAA;QAC7C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;YAC5C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;gBACrE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAA;YACzC,CAAC;QACH,CAAC;QACD,2FAA2F;QAC3F,iEAAiE;QACjE,IAAI,MAAM,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAAE,OAAO,SAAS,CAAA;QACzD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;QAC3B,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,SAAS,CAAA;QACpC,GAAG,GAAG,MAAM,CAAA;IACd,CAAC;AACH,CAAC;AAED,mGAAmG;AACnG,KAAK,UAAU,aAAa,CAAC,IAAY,EAAE,QAAkB,EAAE,MAAc;IAC3E,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,cAAc,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAA;QACnE,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YACrF,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;gBAAE,SAAQ;YACzD,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,KAAK,MAAM;gBAAE,OAAO,IAAI,CAAA;QACtD,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;qEAKqE;AACrE,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,GAAW,EACX,WAAoC;IAEpC,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAA;IAC9C,MAAM,QAAQ,GAAG,SAAS,EAAE,IAAI,IAAI,GAAG,CAAA;IACvC,MAAM,SAAS,GAAG,MAAM,kBAAkB,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,IAAI,WAAW,CAAC,CAAA;IACvF,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoE,CAAA;IAC7F,MAAM,MAAM,GAAG,CACb,IAAY,EACZ,IAAuC,EACvC,QAAgB,EACV,EAAE;QACR,IAAI,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAChC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,GAAG,IAAI,GAAG,EAAE,CAAA;YAClB,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC7B,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,GAAG,EAAU,EAAE,CAAA;QAC9F,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC7B,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IAC9B,CAAC,CAAA;IAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAA;IACjC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,KAAK,MAAM,IAAI,IAAI,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACtD,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI;gBAAE,SAAQ;YAC5C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACjB,8FAA8F;YAC9F,gGAAgG;YAChG,qCAAqC;YACrC,MAAM,IAAI,GAAG,MAAM,qBAAqB,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;YACvE,IAAI,IAAI,KAAK,SAAS;gBAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;QAC7E,CAAC;IACH,CAAC;IAED,iGAAiG;IACjG,iGAAiG;IACjG,mGAAmG;IACnG,iGAAiG;IACjG,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;QAClE,IAAI,IAAI,KAAK,SAAS;YAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAA;IACxE,CAAC;IAED,MAAM,QAAQ,GAA8B,EAAE,CAAA;IAC9C,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7F,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC;YAAE,SAAQ;QAC7B,QAAQ,CAAC,IAAI,CAAC;YACZ,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;iBAC1B,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;iBACtC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBACtB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC;gBAC5B,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE;aACtC,CAAC,CAAC;SACN,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,SAAS,CAChB,GAA4B,EAC5B,KAAa;IAEb,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAA;IACvB,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;AAC1C,CAAC;AAED,SAAS,cAAc,CAAC,GAA4B,EAAE,IAAY;IAChE,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;QAC1C,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,CAAA;IAC9D,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,GAAW,EAAE,IAAY;IAC7D,KAAK,IAAI,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAI,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAClD,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAA;QACrD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YACtC,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAA;QACrC,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;QAC3B,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,SAAS,CAAA;IACtC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,GAAW,EAAE,IAAY;IAC3D,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAA;IAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC7B,KAAK,IAAI,GAAG,GAAG,GAAG,GAAI,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,GAAG,KAAK,EAAE,cAAc,CAAC,CAAC,CAAA;QAChF,IAAI,OAAO,IAAI,EAAE,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjE,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,CAAA;QAC3B,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;QAC3B,IAAI,MAAM,KAAK,GAAG;YAAE,OAAO,SAAS,CAAA;IACtC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,GAAW,EACX,IAAY;IAEZ,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC5D,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAA;IACnE,CAAC;IACD,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC3D,OAAO,aAAa,KAAK,SAAS;QAChC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAA;AAClE,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,GAAW;IACnD,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAA;IACrD,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAA;IAE3F,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAElD,MAAM,QAAQ,GAAoB,EAAE,CAAA;IACpC,MAAM,UAAU,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QACvC,KAAK,MAAM,CAAC,IAAI,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACnF,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;QACnE,CAAC;IACH,CAAC,CAAC,CAAA;IACF,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAA;IACxE,MAAM,iBAAiB,GAAG,MAAM,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAClE,OAAO;QACL,EAAE,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC;QAC3D,GAAG,EAAE,IAAI;QACT,QAAQ;QACR,iBAAiB;KAClB,CAAA;AACH,CAAC;AAED,0GAA0G;AAC1G,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,GAAW;IAClD,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAA;IAC7C,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,MAAM,CAAA;IAE9D,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAA;IAC7D,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,MAAM,CAAA;IAC5C,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAA;IAC1D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAA;IAC7C,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAA;QACpD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,EAAU,CAAA;QACnD,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC1B,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IACzB,CAAC;IAED,MAAM,KAAK,GAAuB,EAAE,CAAA;IACpC,MAAM,YAAY,GAAuB,EAAE,CAAA;IAC3C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;QAC1C,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAA;QACnC,IAAI,GAAG,KAAK,SAAS;YAAE,SAAQ;QAC/B,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAA;QACrC,IAAI,YAAY,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAC1D,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBACrC,YAAY,CAAC,IAAI,CAAC;oBAChB,OAAO,EAAE,IAAI;oBACb,MAAM,EACJ,kFAAkF;oBACpF,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;iBAC9B,CAAC,CAAA;YACJ,CAAC;YACD,SAAQ;QACV,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,YAAY,IAAI,EAAE,CAA4B,CAAA;QAC5D,IAAI,YAAY,KAAK,SAAS;YAAE,GAAG,CAAC,YAAY,GAAG,IAAI,CAAA;QACvD,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YACrC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5B,YAAY,CAAC,IAAI,CAAC;oBAChB,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,oDAAoD;oBAC5D,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;iBAC9B,CAAC,CAAA;gBACF,SAAQ;YACV,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YACrD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,YAAY,CAAC,IAAI,CAAC;oBAChB,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,8EAA8E;oBACtF,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC;iBAC9B,CAAC,CAAA;gBACF,SAAQ;YACV,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAA;YAC7B,OAAO,GAAG,IAAI,CAAA;YACd,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAA;QACnE,CAAC;QACD,IAAI,OAAO;YAAE,MAAM,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAA;IAC5E,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IACxE,OAAO;QACL,GAAG,KAAK;QACR,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtC,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrD,CAAA;AACH,CAAC;AAED,6FAA6F;AAC7F,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,GAAW,EACX,OAAgE,EAAE;IAElE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAA;IAC5F,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QAC5C,OAAO,MAAM,CAAC,EAAE,CAAA;IAClB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;IAC7B,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAA;QACrE,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAA;QACnD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;QAC1D,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACjB,CAAC;IACD,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;QAChC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,WAAW,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC7E,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACjB,CAAC;IACD,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACT,uFAAuF,CACxF,CAAA;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,8FAA8F;IAC9F,MAAM,KAAK,GAAG,IAAI,GAAG,EAA2B,CAAA;IAChD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;QACvC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACZ,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC5B,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,0DAA0D,CAAC,CAAA;QACtF,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,qCAAqC,GAAG,KAAK,CAAC,CAAA;YAClE,KAAK,MAAM,CAAC,IAAI,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;QACjE,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CACT,GAAG,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,sEAAsE,CACpG,CAAA;QACD,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;YACnC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAClC,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,OAAO,OAAO,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACrF,CAAC;YACD,IAAI,OAAO,CAAC,OAAO,KAAK,eAAe,EAAE,CAAC;gBACxC,OAAO,CAAC,GAAG,CACT,4FAA4F,CAC7F,CAAA;gBACD,OAAO,CAAC,GAAG,CACT,qGAAqG,CACtG,CAAA;YACH,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,CACT,mGAAmG,CACpG,CAAA;IACH,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC;QAChB,OAAO,CAAC,GAAG,CACT,iGAAiG,CAClG,CAAA;IACH,OAAO,KAAK,CAAA;AACd,CAAC"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-app-tool.d.ts","sourceRoot":"","sources":["../src/mcp-app-tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAkC,KAAK,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAE5C,8FAA8F;AAC9F,eAAO,MAAM,cAAc,kCAoCzB,CAAA;AAEF,sGAAsG;AACtG,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"mcp-app-tool.d.ts","sourceRoot":"","sources":["../src/mcp-app-tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAkC,KAAK,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAE5C,8FAA8F;AAC9F,eAAO,MAAM,cAAc,kCAoCzB,CAAA;AAEF,sGAAsG;AACtG,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,GAAG,OAAO,CAoC3F"}
|
package/dist/mcp-app-tool.js
CHANGED
|
@@ -48,6 +48,7 @@ export const examplesWidget = defineMcpWidget({
|
|
|
48
48
|
export function examplesAppTool(loadExamples) {
|
|
49
49
|
return defineMcpTool({
|
|
50
50
|
name: "nifra_examples_app",
|
|
51
|
+
annotations: { title: "Browse nifra examples", readOnlyHint: true, openWorldHint: false },
|
|
51
52
|
description: "Browse nifra's verified code examples as an interactive, filterable list (MCP Apps widget). Pass query to pre-filter; the widget also filters client-side.",
|
|
52
53
|
inputSchema: {
|
|
53
54
|
type: "object",
|
package/dist/mcp-app-tool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-app-tool.js","sourceRoot":"","sources":["../src/mcp-app-tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,aAAa,EAAE,eAAe,EAAgB,MAAM,cAAc,CAAA;AAG3E,8FAA8F;AAC9F,MAAM,CAAC,MAAM,cAAc,GAAG,eAAe,CAAC;IAC5C,GAAG,EAAE,qBAAqB;IAC1B,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,sEAAsE;IACnF,IAAI,EAAE;;;;;;;;;WASG;IACT,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;GAqBL;CACF,CAAC,CAAA;AAEF,sGAAsG;AACtG,MAAM,UAAU,eAAe,CAAC,YAAkD;IAChF,OAAO,aAAa,CAAC;QACnB,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EACT,4JAA4J;QAC9J,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE,EAAE;YACzF,oBAAoB,EAAE,KAAK;SAC5B;QACD,MAAM,EAAE,cAAc;QACtB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACtB,MAAM,GAAG,GAAG,CAAC,MAAM,YAAY,EAAE,CAAC,IAAI,EAAE,CAAA;YACxC,MAAM,CAAC,GAAG,CAAE,IAAI,CAAC,KAAgB,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;YACtD,MAAM,OAAO,GAAG,CACd,CAAC;gBACC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACzF,CAAC,CAAC,GAAG,CACR,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YACd,OAAO;gBACL,IAAI,EACF,OAAO,CAAC,MAAM,KAAK,CAAC;oBAClB,CAAC,CAAC,uBAAuB;oBACzB,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,gBAAgB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBAC/E,iBAAiB,EAAE;oBACjB,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC5B,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,IAAI,EAAE,CAAC,CAAC,IAAI;qBACb,CAAC,CAAC;iBACJ;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"mcp-app-tool.js","sourceRoot":"","sources":["../src/mcp-app-tool.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,aAAa,EAAE,eAAe,EAAgB,MAAM,cAAc,CAAA;AAG3E,8FAA8F;AAC9F,MAAM,CAAC,MAAM,cAAc,GAAG,eAAe,CAAC;IAC5C,GAAG,EAAE,qBAAqB;IAC1B,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,sEAAsE;IACnF,IAAI,EAAE;;;;;;;;;WASG;IACT,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;GAqBL;CACF,CAAC,CAAA;AAEF,sGAAsG;AACtG,MAAM,UAAU,eAAe,CAAC,YAAkD;IAChF,OAAO,aAAa,CAAC;QACnB,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE;QACzF,WAAW,EACT,4JAA4J;QAC9J,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE,EAAE;YACzF,oBAAoB,EAAE,KAAK;SAC5B;QACD,MAAM,EAAE,cAAc;QACtB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACtB,MAAM,GAAG,GAAG,CAAC,MAAM,YAAY,EAAE,CAAC,IAAI,EAAE,CAAA;YACxC,MAAM,CAAC,GAAG,CAAE,IAAI,CAAC,KAAgB,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;YACtD,MAAM,OAAO,GAAG,CACd,CAAC;gBACC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACzF,CAAC,CAAC,GAAG,CACR,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YACd,OAAO;gBACL,IAAI,EACF,OAAO,CAAC,MAAM,KAAK,CAAC;oBAClB,CAAC,CAAC,uBAAuB;oBACzB,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,gBAAgB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBAC/E,iBAAiB,EAAE;oBACjB,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC5B,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,IAAI,EAAE,CAAC,CAAC,IAAI;qBACb,CAAC,CAAC;iBACJ;aACF,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-docs-tools.d.ts","sourceRoot":"","sources":["../src/mcp-docs-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,KAAK,OAAO,EAAwB,MAAM,eAAe,CAAA;AAElE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAKrE,yFAAyF;AACzF,wBAAgB,SAAS,CACvB,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,EAC3C,YAAY,EAAE,MAAM,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,EAClD,SAAS,EAAE,MAAM,OAAO,CAAC,SAAS,EAAE,GAAG,SAAS,CAAC,GAChD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"mcp-docs-tools.d.ts","sourceRoot":"","sources":["../src/mcp-docs-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,KAAK,OAAO,EAAwB,MAAM,eAAe,CAAA;AAElE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAKrE,yFAAyF;AACzF,wBAAgB,SAAS,CACvB,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,EAC3C,YAAY,EAAE,MAAM,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,EAClD,SAAS,EAAE,MAAM,OAAO,CAAC,SAAS,EAAE,GAAG,SAAS,CAAC,GAChD,OAAO,EAAE,CA4HX"}
|
package/dist/mcp-docs-tools.js
CHANGED
|
@@ -14,8 +14,11 @@ const clamp = (n, lo, hi, dflt) => Math.min(Math.max(typeof n === "number" ? n :
|
|
|
14
14
|
/** Build `nifra_docs` + `nifra_example` + `nifra_types` over injected corpus loaders. */
|
|
15
15
|
export function docsTools(loadDocs, loadExamples, loadTypes) {
|
|
16
16
|
return [
|
|
17
|
+
// Every tool here reads the package's bundled corpus and nothing else: read-only, closed-world.
|
|
18
|
+
// The annotations state that for MCP hosts (and directory reviews check for them).
|
|
17
19
|
{
|
|
18
20
|
name: "nifra_docs",
|
|
21
|
+
annotations: { title: "Search nifra docs", readOnlyHint: true, openWorldHint: false },
|
|
19
22
|
description: "Search nifra's framework documentation and get back ONLY the matching sections - auth, uploads, ISR, WebSockets, loaders, deployment, anything. Call with no query for the cheap section index; pass query (e.g. \"isr revalidate\") for the top matching sections. Use this instead of reading llms-full.txt (~150 KB) whole. For the EXACT TypeScript of a type/interface/function, call nifra_types instead (don't read .d.ts files).",
|
|
20
23
|
inputSchema: {
|
|
21
24
|
type: "object",
|
|
@@ -39,6 +42,11 @@ export function docsTools(loadDocs, loadExamples, loadTypes) {
|
|
|
39
42
|
},
|
|
40
43
|
{
|
|
41
44
|
name: "nifra_example",
|
|
45
|
+
annotations: {
|
|
46
|
+
title: "Get a verified nifra example",
|
|
47
|
+
readOnlyHint: true,
|
|
48
|
+
openWorldHint: false,
|
|
49
|
+
},
|
|
42
50
|
description: 'Get a VERIFIED, copy-pasteable nifra code example for a task - auth route, file upload, ISR page, loader/action, typed client, SSE, deployment, etc. Every snippet is typechecked against the installed nifra version, so it compiles as-is. PREFER THIS over writing nifra code from memory (training data drifts). Call with no query for the grouped index; pass query (e.g. "protected route", "upload", "isr revalidate") for matching snippets.',
|
|
43
51
|
inputSchema: {
|
|
44
52
|
type: "object",
|
|
@@ -62,6 +70,7 @@ export function docsTools(loadDocs, loadExamples, loadTypes) {
|
|
|
62
70
|
},
|
|
63
71
|
{
|
|
64
72
|
name: "nifra_types",
|
|
73
|
+
annotations: { title: "Look up nifra API types", readOnlyHint: true, openWorldHint: false },
|
|
65
74
|
description: 'Get the EXACT TypeScript declaration of any exported @nifrajs/* symbol - interface, type, class, function, const. Each signature is generated from the package\'s built .d.ts, so it is the LITERAL declaration: complete, authoritative, never prose and never truncated. THIS IS THE SOURCE OF TRUTH for nifra\'s types - do NOT read node_modules/@nifrajs/**/*.d.ts; call this instead. Pass `name` for an exact symbol (e.g. "RateLimitStore", "RouteSchema", "Context", "rateLimit"); pass `query` to search by keyword; omit both for the per-package index of names. A `name` lookup is always the complete declaration; a `query` returns a one-line summary plus the signature, collapsing an oversized body - pass `full: true` to override.',
|
|
66
75
|
inputSchema: {
|
|
67
76
|
type: "object",
|
|
@@ -96,6 +105,11 @@ export function docsTools(loadDocs, loadExamples, loadTypes) {
|
|
|
96
105
|
},
|
|
97
106
|
{
|
|
98
107
|
name: "nifra_learn",
|
|
108
|
+
annotations: {
|
|
109
|
+
title: "Guided nifra learning path",
|
|
110
|
+
readOnlyHint: true,
|
|
111
|
+
openWorldHint: false,
|
|
112
|
+
},
|
|
99
113
|
description: "Walk the guided path to build a nifra app end to end - an ORDERED sequence (create → page route → loader → typed API → typed client → auth → background jobs → deploy), not the random-access search of nifra_docs/nifra_example. Call with no args for the step index; pass `step: N` for that step's goal, how to do it (which tool emits the correct artifact), and how to verify it. Use it when scaffolding a new app or learning nifra's flow - each step composes the other nifra_* tools.",
|
|
100
114
|
inputSchema: {
|
|
101
115
|
type: "object",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-docs-tools.js","sourceRoot":"","sources":["../src/mcp-docs-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-docs-tools.js","sourceRoot":"","sources":["../src/mcp-docs-tools.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp-http.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-http.d.ts","sourceRoot":"","sources":["../src/mcp-http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,KAAK,cAAc,EAAwC,MAAM,mBAAmB,CAAA;AAC7F,OAAO,EAAE,KAAK,OAAO,EAAW,MAAM,uBAAuB,CAAA;AAO7D,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,YAAY,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAG5C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAWlD;oEACoE;AACpE,wBAAgB,eAAe,IAAI,OAAO,EAAE,CAK3C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,QAAQ,CAAC,CAEnB;AAED;2GAC2G;AAC3G,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"mcp-http.d.ts","sourceRoot":"","sources":["../src/mcp-http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,KAAK,cAAc,EAAwC,MAAM,mBAAmB,CAAA;AAC7F,OAAO,EAAE,KAAK,OAAO,EAAW,MAAM,uBAAuB,CAAA;AAO7D,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACvD,YAAY,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAG5C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAWlD;oEACoE;AACpE,wBAAgB,eAAe,IAAI,OAAO,EAAE,CAK3C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,QAAQ,CAAC,CAEnB;AAED;2GAC2G;AAC3G,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CASjE;AAED;;;;;GAKG;;;;;AACH,wBAGC"}
|
package/dist/mcp-http.js
CHANGED
|
@@ -23,7 +23,7 @@ import { loadTypesCorpus } from "./types-search.js";
|
|
|
23
23
|
export { examplesAppTool, examplesWidget } from "./mcp-app-tool.js";
|
|
24
24
|
export { docsTools } from "./mcp-docs-tools.js";
|
|
25
25
|
// Kept in lockstep with packages/cli/package.json by check:publish's version-consistency gate.
|
|
26
|
-
const VERSION = "2.
|
|
26
|
+
const VERSION = "2.6.0";
|
|
27
27
|
const SERVER_INFO = { name: "nifra-docs", version: VERSION };
|
|
28
28
|
// Derive the GET/health tool list from the tools actually served, so the line can never drift from them.
|
|
29
29
|
const docsHealth = (tools) => `nifra docs MCP - POST JSON-RPC 2.0 here (methods: initialize, tools/list, tools/call). Tools: ${tools
|
|
@@ -49,7 +49,11 @@ export function respondMcpHttp(request, tools, options = {}) {
|
|
|
49
49
|
* resource so MCP Apps hosts can render `nifra_examples_app`. (`nifra docs-mcp` / `bun run` this file.) */
|
|
50
50
|
export function handleMcpHttp(request) {
|
|
51
51
|
return respondMcpHttp(request, publicDocsTools(), {
|
|
52
|
-
features: {
|
|
52
|
+
features: {
|
|
53
|
+
resources: [examplesWidget.resource],
|
|
54
|
+
ui: { mimeTypes: [UI_MIME] },
|
|
55
|
+
instructions: "nifra's own documentation, runnable examples, and API types - for building with the nifra framework. Call nifra_docs / nifra_example / nifra_types / nifra_learn to learn it without a local checkout.",
|
|
56
|
+
},
|
|
53
57
|
});
|
|
54
58
|
}
|
|
55
59
|
/**
|
package/dist/mcp-http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-http.js","sourceRoot":"","sources":["../src/mcp-http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAuB,cAAc,IAAI,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC7F,OAAO,EAAgB,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAInD,qGAAqG;AACrG,0FAA0F;AAC1F,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAG/C,+FAA+F;AAC/F,MAAM,OAAO,GAAG,OAAO,CAAA;AACvB,MAAM,WAAW,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;AAC5D,yGAAyG;AACzG,MAAM,UAAU,GAAG,CAAC,KAAgB,EAAU,EAAE,CAC9C,iGAAiG,KAAK;KACnG,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;KACxB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;AAElB;oEACoE;AACpE,MAAM,UAAU,eAAe;IAC7B,OAAO;QACL,GAAG,SAAS,CAAC,cAAc,EAAE,kBAAkB,EAAE,eAAe,CAAC;QACjE,eAAe,CAAC,kBAAkB,CAAC;KACpC,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAgB,EAChB,KAAgB,EAChB,UAA0B,EAAE;IAE5B,OAAO,kBAAkB,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAA;AACnG,CAAC;AAED;2GAC2G;AAC3G,MAAM,UAAU,aAAa,CAAC,OAAgB;IAC5C,OAAO,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE;QAChD,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"mcp-http.js","sourceRoot":"","sources":["../src/mcp-http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAuB,cAAc,IAAI,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC7F,OAAO,EAAgB,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAInD,qGAAqG;AACrG,0FAA0F;AAC1F,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAG/C,+FAA+F;AAC/F,MAAM,OAAO,GAAG,OAAO,CAAA;AACvB,MAAM,WAAW,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;AAC5D,yGAAyG;AACzG,MAAM,UAAU,GAAG,CAAC,KAAgB,EAAU,EAAE,CAC9C,iGAAiG,KAAK;KACnG,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;KACxB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;AAElB;oEACoE;AACpE,MAAM,UAAU,eAAe;IAC7B,OAAO;QACL,GAAG,SAAS,CAAC,cAAc,EAAE,kBAAkB,EAAE,eAAe,CAAC;QACjE,eAAe,CAAC,kBAAkB,CAAC;KACpC,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAgB,EAChB,KAAgB,EAChB,UAA0B,EAAE;IAE5B,OAAO,kBAAkB,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAA;AACnG,CAAC;AAED;2GAC2G;AAC3G,MAAM,UAAU,aAAa,CAAC,OAAgB;IAC5C,OAAO,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE;QAChD,QAAQ,EAAE;YACR,SAAS,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC;YACpC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE;YAC5B,YAAY,EACV,wMAAwM;SAC3M;KACF,CAAC,CAAA;AACJ,CAAC;AAED;;;;;GAKG;AACH,eAAe;IACb,IAAI,EAAE,OAAO,GAAG,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;IACtE,KAAK,EAAE,aAAa;CACrB,CAAA"}
|
package/docs/llms-full.txt
CHANGED
|
@@ -148,8 +148,10 @@ SSR · SSG · ISR, streaming SSR with out-of-order Suspense, islands, view trans
|
|
|
148
148
|
~0 KB-client vanilla adapter.
|
|
149
149
|
|
|
150
150
|
-
|
|
151
|
-
Loaders + actions +
|
|
152
|
-
|
|
151
|
+
Loaders + actions + [server functions](/docs/server-functions) (typed
|
|
152
|
+
`serverFn` RPC, server code never shipped to the browser) + progressive-enhancement
|
|
153
|
+
forms; `defer()` / `<Await>` streaming data; query cache, optimistic
|
|
154
|
+
UI, concurrent fetchers, revalidation.
|
|
153
155
|
|
|
154
156
|
- Head/meta, hover/focus prefetch, scroll restoration.
|
|
155
157
|
|
|
@@ -170,6 +172,12 @@ would break a core that also serves Vue, Solid, and Svelte. (Nuxt, SvelteKit, an
|
|
|
170
172
|
either - this is _Nifra vs. Next App Router specifically_.) Typed loaders, `defer()`,
|
|
171
173
|
and route-level code-splitting cover the same problems by a different mechanism.
|
|
172
174
|
|
|
175
|
+
**"No RSC" does not mean "no server code in components' reach."** Nifra ships typed
|
|
176
|
+
[server functions](/docs/server-functions) - `serverFn` RPC whose body (DB
|
|
177
|
+
handles, secrets, imports) is _never_ shipped to the browser, callable as a normal typed
|
|
178
|
+
function from any component - on all five UI libraries. What Nifra skips is React's specific RSC /
|
|
179
|
+
`"use server"` component model, not server-side mutations.
|
|
180
|
+
|
|
173
181
|
### Also a standalone backend (vs. Hono & Elysia)
|
|
174
182
|
|
|
175
183
|
Nifra's core is a Bun-native, Web-standard server, so it stands on its own as an API - and graduates
|
|
@@ -178,10 +186,12 @@ to full-stack later without a rewrite.
|
|
|
178
186
|
-
|
|
179
187
|
**Throughput - the realistic case.** Router micro-benchmarks flatter Hono (a single compiled
|
|
180
188
|
regex), but a router is **~1% of a real request** - the time goes to middleware, validation,
|
|
181
|
-
context, and serialization.
|
|
182
|
-
Elysia
|
|
183
|
-
|
|
184
|
-
|
|
189
|
+
context, and serialization. On the bare Bun/Deno micro-GET rows Nifra runs within **~1-3% of
|
|
190
|
+
Elysia** - a statistical tie at the runtime ceiling; on **Node it's ahead of Elysia on every
|
|
191
|
+
workload**, and it leads on every POST/validated row across runtimes. In the realistic shape
|
|
192
|
+
(security headers + CORS + bearer auth + cookies + validated query/body + a ~2.4 KB JSON
|
|
193
|
+
response, measured with `oha`) Nifra runs at **103% of Elysia on GET and 108% on
|
|
194
|
+
POST**. Treat benchmark rows as same-run evidence, not a permanent law of nature.
|
|
185
195
|
|
|
186
196
|
-
|
|
187
197
|
**End-to-end types.** `client<typeof app>()` derives request inputs _and_
|
|
@@ -241,8 +251,9 @@ version-checked examples, which no other framework ships.
|
|
|
241
251
|
no rewrite.
|
|
242
252
|
|
|
243
253
|
The one deliberate trade: Nifra is streaming SSR + islands, **not** React Server Components -
|
|
244
|
-
framework-agnostic by design.
|
|
245
|
-
you
|
|
254
|
+
framework-agnostic by design. You still get typed server-side mutations via
|
|
255
|
+
[server functions](/docs/server-functions); what you give up is specifically the RSC
|
|
256
|
+
component model. If your app is built specifically around RSC, that's the call you're making.
|
|
246
257
|
|
|
247
258
|
## Nifra - Routing
|
|
248
259
|
|
|
@@ -3535,6 +3546,34 @@ to an agent than its own memory of the framework.
|
|
|
3535
3546
|
`nifra_types` also follows each package's `exports` map rather than
|
|
3536
3547
|
scanning the build output, so it will not offer a type that is real but unimportable.
|
|
3537
3548
|
|
|
3549
|
+
### From any assistant, hosted
|
|
3550
|
+
|
|
3551
|
+
The teaching tools - `nifra_docs`, `nifra_example`,
|
|
3552
|
+
`nifra_types`, `nifra_learn` - are also served, project-independent, at
|
|
3553
|
+
`mcp.nifra.dev`. Add that one URL to any assistant and it learns Nifra from the same
|
|
3554
|
+
verified corpora, with no local checkout. It is read-only and needs no key. The project tools
|
|
3555
|
+
above still come from `nifra mcp` in your own repo, where they can see your routes.
|
|
3556
|
+
|
|
3557
|
+
```ts
|
|
3558
|
+
# Claude Code
|
|
3559
|
+
claude mcp add --transport http nifra-docs https://mcp.nifra.dev
|
|
3560
|
+
|
|
3561
|
+
# Claude.ai (web or desktop): Settings -> Connectors -> Add custom connector -> https://mcp.nifra.dev
|
|
3562
|
+
# ChatGPT (developer mode): Settings -> Connectors -> add the same URL
|
|
3563
|
+
|
|
3564
|
+
# Cursor - .cursor/mcp.json
|
|
3565
|
+
# { "mcpServers": { "nifra-docs": { "url": "https://mcp.nifra.dev" } } }
|
|
3566
|
+
|
|
3567
|
+
# VS Code - .vscode/mcp.json
|
|
3568
|
+
# { "servers": { "nifra-docs": { "type": "http", "url": "https://mcp.nifra.dev" } } }
|
|
3569
|
+
```
|
|
3570
|
+
|
|
3571
|
+
Cursor reads it in one click:
|
|
3572
|
+
[
|
|
3573
|
+
add Nifra docs to Cursor
|
|
3574
|
+
](cursor://anysphere.cursor-deeplink/mcp/install?name=nifra-docs&config=eyJ1cmwiOiJodHRwczovL21jcC5uaWZyYS5kZXYifQ==)
|
|
3575
|
+
.
|
|
3576
|
+
|
|
3538
3577
|
### The gate to write against
|
|
3539
3578
|
|
|
3540
3579
|
`nifra_check` is the one an agent should loop on. It returns structured
|
|
@@ -8520,7 +8559,7 @@ done-gate, or `nifra mcp` to give the agent live project tools.
|
|
|
8520
8559
|
|
|
8521
8560
|
## @nifrajs/mock
|
|
8522
8561
|
|
|
8523
|
-
`createMockServer`, `generateMockValue`, `MockableApp`, `MockableRoute`, `MockServer`, `MockServerOptions`, `UnsupportedMockSchemaError`
|
|
8562
|
+
`autoReflectJsonSchema`, `createMockServer`, `generateMockValue`, `MockableApp`, `MockableRoute`, `MockServer`, `MockServerOptions`, `UnsupportedMockSchemaError`
|
|
8524
8563
|
|
|
8525
8564
|
## @nifrajs/node
|
|
8526
8565
|
|
|
@@ -8560,7 +8599,7 @@ done-gate, or `nifra mcp` to give the agent live project tools.
|
|
|
8560
8599
|
|
|
8561
8600
|
## @nifrajs/web
|
|
8562
8601
|
|
|
8563
|
-
`Action`, `ACTION_GLOBAL`, `apiKey`, `assertRenderAdapterConformance`, `Blocker`, `BlockerController`, `BlockerFunction`, `BlockerLocation`, `BlockerState`, `BrowserNavigate`, `buildManifest`, `CachedResponse`, `CacheStore`, `canonical`, `clientEntry`, `ClientRouter`, `ClientRouterOptions`, `createClientRouter`, `createMatcher`, `createMutation`, `createQueryClient`, `createWebApp`, `CreateWebAppOptions`, `DATA_GLOBAL`, `DATA_HEADER`, `DEFAULT_DEV_PORT`, `defer`, `Deferred`, `DehydratedState`, `disableDraft`, `DRAFT_COOKIE`, `DraftCookieControls`, `enableDraft`, `EnableDraftOptions`, `enumerateStaticRoutes`, `Fetcher`, `FetcherState`, `FetchRouteData`, `filePathToPattern`, `filePathToPatterns`, `FontDisplay`, `fontFace`, `FontFace`, `fontPreload`, `FontPreloadInput`, `FontSource`, `gate`, `generateClientEntry`, `GenerateClientEntryOptions`, `generateRouteSearchTypes`, `GenerateRouteSearchTypesOptions`, `generateServerManifest`, `GenerateServerManifestOptions`, `getBrowserNavigate`, `GetStaticPaths`, `gone`, `hashQueryKey`, `IDLE_BLOCKER`, `InertScriptType`, `InfiniteData`, `InfiniteQueryHandle`, `InfiniteQueryOptions`, `isDraftEnabled`, `ISR_REVALIDATE_HEADER`, `ISR_STATUS_HEADER`, `ISRApp`, `ISROptions`, `ISRPlatform`, `jsonLd`, `KVCacheStore`, `KVCacheStoreOptions`, `KVNamespaceLike`, `LAYOUT_DATA_GLOBAL`, `LayoutEntry`, `LinkDescriptor`, `Loader`, `LoaderContext`, `manifest`, `Manifest`, `MemoryCacheStore`, `MemoryCacheStoreOptions`, `mergeHeads`, `meta`, `Meta`, `MetaArgs`, `MetaInput`, `MountRouterOptions`, `MutationCallbacks`, `MutationHandle`, `MutationState`, `MutationStatus`, `NAV_FROM_HEADER`, `NavigateFunction`, `NavigateOptions`, `NavigateSearchOf`, `NavigateTargetInput`, `notFound`, `openGraph`, `OpenGraphInput`, `PRE_HYDRATION_GUARD`, `previewEndpoint`, `PreviewEndpointOptions`, `PublicDirCache`, `QueryClient`, `QueryClientOptions`, `QueryHandle`, `QueryOptions`, `QueryState`, `QueryStatus`, `redirect`, `REDIRECT_HEADER`, `RedirectOptions`, `registerBlocker`, `RenderAdapter`, `RenderAdapterConformanceError`, `RenderAdapterConformanceFixture`, `RenderedPage`, `renderPage`, `RenderPageInput`, `RenderPageOptions`, `renderPageResult`, `RenderProps`, `resolveMeta`, `resolveNavigate`, `resolvePublicPath`, `RETAIN_HEADER`, `revalidate`, `REVALIDATE_HEADER`, `revalidateEndpoint`, `RevalidateEndpointOptions`, `RevalidateResult`, `ROOT_ATTRIBUTE`, `ROUTE_GLOBAL`, `RouteEntry`, `RouteMatch`, `RouteModule`, `RoutePattern`, `RouterState`, `RouteSearch`, `routeStyles`, `ScriptDescriptor`, `searchOf`, `SearchOf`, `searchOfChain`, `serializeData`, `serializeSearch`, `servePublicDir`, `ServePublicDirOptions`, `SERVER_FN_MODULE`, `SERVER_ONLY_MODULE`, `ServerOnly`, `setBlockerController`, `setBrowserNavigate`, `StaticPath`, `StaticPaths`, `StaticRoutes`, `STATUS_HEADER`, `statusPage`, `StatusPageOptions`, `styles`, `Submission`, `SubmitOptions`, `unsafeInlineScript`, `UnsafeScriptDescriptor`, `withISR`
|
|
8602
|
+
`Action`, `ACTION_GLOBAL`, `apiKey`, `assertRenderAdapterConformance`, `Blocker`, `BlockerController`, `BlockerFunction`, `BlockerLocation`, `BlockerState`, `BrowserNavigate`, `buildManifest`, `CachedResponse`, `CacheStore`, `canonical`, `clientEntry`, `ClientRouter`, `ClientRouterOptions`, `createClientRouter`, `createMatcher`, `createMutation`, `createQueryClient`, `createWebApp`, `CreateWebAppOptions`, `DATA_GLOBAL`, `DATA_HEADER`, `DEFAULT_DEV_PORT`, `defer`, `Deferred`, `DehydratedState`, `disableDraft`, `DRAFT_COOKIE`, `DraftCookieControls`, `enableDraft`, `EnableDraftOptions`, `enumerateStaticRoutes`, `Fetcher`, `FetcherState`, `FetchRouteData`, `filePathToPattern`, `filePathToPatterns`, `FontDisplay`, `fontFace`, `FontFace`, `fontPreload`, `FontPreloadInput`, `FontSource`, `gate`, `generateClientEntry`, `GenerateClientEntryOptions`, `generateRouteSearchTypes`, `GenerateRouteSearchTypesOptions`, `generateServerManifest`, `GenerateServerManifestOptions`, `getBrowserNavigate`, `GetStaticPaths`, `gone`, `hashQueryKey`, `IDLE_BLOCKER`, `InertScriptType`, `InfiniteData`, `InfiniteQueryHandle`, `InfiniteQueryOptions`, `isDraftEnabled`, `ISR_REVALIDATE_HEADER`, `ISR_STATUS_HEADER`, `ISRApp`, `ISROptions`, `ISRPlatform`, `jsonLd`, `KVCacheStore`, `KVCacheStoreOptions`, `KVNamespaceLike`, `LAYOUT_DATA_GLOBAL`, `LayoutEntry`, `LinkDescriptor`, `Loader`, `LoaderContext`, `manifest`, `Manifest`, `MemoryCacheStore`, `MemoryCacheStoreOptions`, `mergeHeads`, `meta`, `Meta`, `MetaArgs`, `MetaInput`, `MountRouterOptions`, `MutationCallbacks`, `MutationHandle`, `MutationState`, `MutationStatus`, `NAV_FROM_HEADER`, `NavigateFunction`, `NavigateOptions`, `NavigateSearchOf`, `NavigateTargetInput`, `notFound`, `openGraph`, `OpenGraphInput`, `PRE_HYDRATION_GUARD`, `previewEndpoint`, `PreviewEndpointOptions`, `PublicDirCache`, `QueryClient`, `QueryClientOptions`, `QueryHandle`, `QueryOptions`, `QueryState`, `QueryStatus`, `redirect`, `REDIRECT_HEADER`, `RedirectOptions`, `registerBlocker`, `RenderAdapter`, `RenderAdapterConformanceError`, `RenderAdapterConformanceFixture`, `RenderAssemblyCache`, `RenderedPage`, `renderPage`, `RenderPageInput`, `RenderPageOptions`, `renderPageResult`, `RenderProps`, `resolveMeta`, `resolveNavigate`, `resolvePublicPath`, `RETAIN_HEADER`, `revalidate`, `REVALIDATE_HEADER`, `revalidateEndpoint`, `RevalidateEndpointOptions`, `RevalidateResult`, `ROOT_ATTRIBUTE`, `ROUTE_GLOBAL`, `RouteEntry`, `RouteMatch`, `RouteModule`, `RoutePattern`, `RouterState`, `RouteSearch`, `routeStyles`, `ScriptDescriptor`, `searchOf`, `SearchOf`, `searchOfChain`, `serializeData`, `serializeSearch`, `servePublicDir`, `ServePublicDirOptions`, `SERVER_FN_MODULE`, `SERVER_ONLY_MODULE`, `ServerOnly`, `setBlockerController`, `setBrowserNavigate`, `StaticPath`, `StaticPaths`, `StaticRoutes`, `STATUS_HEADER`, `statusPage`, `StatusPageOptions`, `styles`, `Submission`, `SubmitOptions`, `unsafeInlineScript`, `UnsafeScriptDescriptor`, `withISR`
|
|
8564
8603
|
|
|
8565
8604
|
## @nifrajs/web-preact
|
|
8566
8605
|
|