@xylabs/ts-scripts-yarn3 7.4.18 → 7.4.20
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.body.md +86 -0
- package/README.md +108 -0
- package/dist/actions/claude-commands.mjs +6 -2
- package/dist/actions/claude-commands.mjs.map +1 -1
- package/dist/actions/claude-rules.mjs +6 -2
- package/dist/actions/claude-rules.mjs.map +1 -1
- package/dist/actions/claude-skills.mjs +120 -0
- package/dist/actions/claude-skills.mjs.map +1 -0
- package/dist/actions/compile.mjs.map +1 -1
- package/dist/actions/cycle.mjs.map +1 -1
- package/dist/actions/dead.mjs.map +1 -1
- package/dist/actions/deploy-major.mjs.map +1 -1
- package/dist/actions/deploy-minor.mjs.map +1 -1
- package/dist/actions/deploy-next.mjs.map +1 -1
- package/dist/actions/deploy.mjs.map +1 -1
- package/dist/actions/fix.mjs.map +1 -1
- package/dist/actions/gen-docs.mjs.map +1 -1
- package/dist/actions/index.mjs +367 -160
- package/dist/actions/index.mjs.map +1 -1
- package/dist/actions/knip.mjs.map +1 -1
- package/dist/actions/lint.mjs.map +1 -1
- package/dist/actions/publint.mjs.map +1 -1
- package/dist/actions/publish.mjs.map +1 -1
- package/dist/actions/readme-gen.mjs +136 -20
- package/dist/actions/readme-gen.mjs.map +1 -1
- package/dist/actions/readme-init.mjs +83 -0
- package/dist/actions/readme-init.mjs.map +1 -0
- package/dist/actions/rebuild.mjs.map +1 -1
- package/dist/actions/reinstall.mjs.map +1 -1
- package/dist/actions/relint.mjs.map +1 -1
- package/dist/actions/retest.mjs +2 -2
- package/dist/actions/retest.mjs.map +1 -1
- package/dist/actions/sonar.mjs.map +1 -1
- package/dist/actions/test.mjs.map +1 -1
- package/dist/actions/up.mjs.map +1 -1
- package/dist/actions/updo.mjs.map +1 -1
- package/dist/actions/upplug.mjs.map +1 -1
- package/dist/actions/upyarn.mjs.map +1 -1
- package/dist/bin/xy.mjs +982 -642
- package/dist/bin/xy.mjs.map +1 -1
- package/dist/index.d.ts +46 -13
- package/dist/index.mjs +1044 -695
- package/dist/index.mjs.map +1 -1
- package/dist/lib/claudeMdTemplate.mjs +28 -3
- package/dist/lib/claudeMdTemplate.mjs.map +1 -1
- package/dist/lib/generateReadmeFiles.mjs +118 -21
- package/dist/lib/generateReadmeFiles.mjs.map +1 -1
- package/dist/lib/index.mjs +146 -24
- package/dist/lib/index.mjs.map +1 -1
- package/dist/lib/runSteps.mjs.map +1 -1
- package/dist/lib/runXy.mjs.map +1 -1
- package/dist/xy/{xyBuildCommands.mjs → build-commands/build.mjs} +107 -94
- package/dist/xy/build-commands/build.mjs.map +1 -0
- package/dist/xy/build-commands/index.mjs +502 -0
- package/dist/xy/build-commands/index.mjs.map +1 -0
- package/dist/xy/common/claude/commandsCommand.mjs +111 -0
- package/dist/xy/common/claude/commandsCommand.mjs.map +1 -0
- package/dist/xy/common/claude/index.mjs +441 -0
- package/dist/xy/common/claude/index.mjs.map +1 -0
- package/dist/xy/common/claude/initCommand.mjs +393 -0
- package/dist/xy/common/claude/initCommand.mjs.map +1 -0
- package/dist/xy/common/claude/rulesCommand.mjs +133 -0
- package/dist/xy/common/claude/rulesCommand.mjs.map +1 -0
- package/dist/xy/common/claude/settingsCommand.mjs +90 -0
- package/dist/xy/common/claude/settingsCommand.mjs.map +1 -0
- package/dist/xy/common/claude/skillsCommand.mjs +129 -0
- package/dist/xy/common/claude/skillsCommand.mjs.map +1 -0
- package/dist/xy/common/cleanDocsCommand.mjs +45 -0
- package/dist/xy/common/cleanDocsCommand.mjs.map +1 -0
- package/dist/xy/common/deadCommand.mjs +116 -0
- package/dist/xy/common/deadCommand.mjs.map +1 -0
- package/dist/xy/common/genDocsCommand.mjs +125 -0
- package/dist/xy/common/genDocsCommand.mjs.map +1 -0
- package/dist/xy/common/gitignoreGenCommand.mjs +98 -0
- package/dist/xy/common/gitignoreGenCommand.mjs.map +1 -0
- package/dist/xy/common/gitlintCommand.mjs +82 -0
- package/dist/xy/common/gitlintCommand.mjs.map +1 -0
- package/dist/xy/{xyCommonCommands.mjs → common/index.mjs} +561 -242
- package/dist/xy/common/index.mjs.map +1 -0
- package/dist/xy/common/licenseCommand.mjs +100 -0
- package/dist/xy/common/licenseCommand.mjs.map +1 -0
- package/dist/xy/common/npmignoreGenCommand.mjs +98 -0
- package/dist/xy/common/npmignoreGenCommand.mjs.map +1 -0
- package/dist/xy/common/readme/genCommand.mjs +321 -0
- package/dist/xy/common/readme/genCommand.mjs.map +1 -0
- package/dist/xy/common/readme/index.mjs +361 -0
- package/dist/xy/common/readme/index.mjs.map +1 -0
- package/dist/xy/common/readme/initCommand.mjs +103 -0
- package/dist/xy/common/readme/initCommand.mjs.map +1 -0
- package/dist/xy/common/retestCommand.mjs +111 -0
- package/dist/xy/common/retestCommand.mjs.map +1 -0
- package/dist/xy/common/testCommand.mjs +108 -0
- package/dist/xy/common/testCommand.mjs.map +1 -0
- package/dist/xy/common/upplugCommand.mjs +113 -0
- package/dist/xy/common/upplugCommand.mjs.map +1 -0
- package/dist/xy/common/upyarnCommand.mjs +108 -0
- package/dist/xy/common/upyarnCommand.mjs.map +1 -0
- package/dist/xy/common/yarn3OnlyCommand.mjs +70 -0
- package/dist/xy/common/yarn3OnlyCommand.mjs.map +1 -0
- package/dist/xy/deploy/deployCommand.mjs +139 -0
- package/dist/xy/deploy/deployCommand.mjs.map +1 -0
- package/dist/xy/deploy/deployMajorCommand.mjs +139 -0
- package/dist/xy/deploy/deployMajorCommand.mjs.map +1 -0
- package/dist/xy/deploy/deployMinorCommand.mjs +139 -0
- package/dist/xy/deploy/deployMinorCommand.mjs.map +1 -0
- package/dist/xy/deploy/deployNextCommand.mjs +139 -0
- package/dist/xy/deploy/deployNextCommand.mjs.map +1 -0
- package/dist/xy/{xyDeployCommands.mjs → deploy/index.mjs} +53 -53
- package/dist/xy/deploy/index.mjs.map +1 -0
- package/dist/xy/deploy/publishCommand.mjs +108 -0
- package/dist/xy/deploy/publishCommand.mjs.map +1 -0
- package/dist/xy/index.mjs +982 -642
- package/dist/xy/index.mjs.map +1 -1
- package/dist/xy/install/cleanCommand.mjs +140 -0
- package/dist/xy/install/cleanCommand.mjs.map +1 -0
- package/dist/xy/install/dupdepsCommand.mjs +191 -0
- package/dist/xy/install/dupdepsCommand.mjs.map +1 -0
- package/dist/xy/{xyInstallCommands.mjs → install/index.mjs} +71 -68
- package/dist/xy/install/index.mjs.map +1 -0
- package/dist/xy/install/reinstallCommand.mjs +140 -0
- package/dist/xy/install/reinstallCommand.mjs.map +1 -0
- package/dist/xy/install/staticsCommand.mjs +191 -0
- package/dist/xy/install/staticsCommand.mjs.map +1 -0
- package/dist/{actions/clean-jest.mjs → xy/install/upCommand.mjs} +15 -6
- package/dist/xy/install/upCommand.mjs.map +1 -0
- package/dist/xy/install/updoCommand.mjs +112 -0
- package/dist/xy/install/updoCommand.mjs.map +1 -0
- package/dist/xy/lint/cycleCommand.mjs +163 -0
- package/dist/xy/lint/cycleCommand.mjs.map +1 -0
- package/dist/xy/lint/deplintCommand.mjs +814 -0
- package/dist/xy/lint/deplintCommand.mjs.map +1 -0
- package/dist/xy/lint/fixCommand.mjs +168 -0
- package/dist/xy/lint/fixCommand.mjs.map +1 -0
- package/dist/xy/{xyLintCommands.mjs → lint/index.mjs} +176 -145
- package/dist/xy/lint/index.mjs.map +1 -0
- package/dist/xy/lint/knipCommand.mjs +121 -0
- package/dist/xy/lint/knipCommand.mjs.map +1 -0
- package/dist/xy/lint/lintCommand.mjs +186 -0
- package/dist/xy/lint/lintCommand.mjs.map +1 -0
- package/dist/xy/lint/publintCommand.mjs +187 -0
- package/dist/xy/lint/publintCommand.mjs.map +1 -0
- package/dist/xy/lint/relintCommand.mjs +163 -0
- package/dist/xy/lint/relintCommand.mjs.map +1 -0
- package/dist/xy/lint/sonarCommand.mjs +121 -0
- package/dist/xy/lint/sonarCommand.mjs.map +1 -0
- package/dist/xy/xy.mjs +980 -640
- package/dist/xy/xy.mjs.map +1 -1
- package/package.json +2 -2
- package/templates/claude/skills/xylabs-e2e-setup/SKILL.md +196 -0
- package/templates/readme/README.body.md +11 -0
- package/templates/readme/README.template.md +22 -0
- package/dist/actions/clean-jest.mjs.map +0 -1
- package/dist/xy/xyBuildCommands.mjs.map +0 -1
- package/dist/xy/xyCommonCommands.mjs.map +0 -1
- package/dist/xy/xyDeployCommands.mjs.map +0 -1
- package/dist/xy/xyInstallCommands.mjs.map +0 -1
- package/dist/xy/xyLintCommands.mjs.map +0 -1
- /package/templates/{CLAUDE-project.md → claude/CLAUDE-project.md} +0 -0
- /package/templates/{commands → claude/commands}/xylabs-build.md +0 -0
- /package/templates/{commands → claude/commands}/xylabs-clean.md +0 -0
- /package/templates/{commands → claude/commands}/xylabs-compile.md +0 -0
- /package/templates/{commands → claude/commands}/xylabs-cycle.md +0 -0
- /package/templates/{commands → claude/commands}/xylabs-deplint.md +0 -0
- /package/templates/{commands → claude/commands}/xylabs-deploy-major.md +0 -0
- /package/templates/{commands → claude/commands}/xylabs-deploy-minor.md +0 -0
- /package/templates/{commands → claude/commands}/xylabs-deploy.md +0 -0
- /package/templates/{commands → claude/commands}/xylabs-fix.md +0 -0
- /package/templates/{commands → claude/commands}/xylabs-knip.md +0 -0
- /package/templates/{commands → claude/commands}/xylabs-lint.md +0 -0
- /package/templates/{commands → claude/commands}/xylabs-publint.md +0 -0
- /package/templates/{commands → claude/commands}/xylabs-rebuild.md +0 -0
- /package/templates/{commands → claude/commands}/xylabs-test.md +0 -0
- /package/templates/{rules → claude/rules}/xylabs-architecture.md +0 -0
- /package/templates/{rules → claude/rules}/xylabs-build.md +0 -0
- /package/templates/{rules → claude/rules}/xylabs-dependencies.md +0 -0
- /package/templates/{rules → claude/rules}/xylabs-error-handling.md +0 -0
- /package/templates/{rules → claude/rules}/xylabs-frameworks.md +0 -0
- /package/templates/{rules → claude/rules}/xylabs-git-workflow.md +0 -0
- /package/templates/{rules → claude/rules}/xylabs-linting.md +0 -0
- /package/templates/{rules → claude/rules}/xylabs-naming.md +0 -0
- /package/templates/{rules → claude/rules}/xylabs-style.md +0 -0
- /package/templates/{rules → claude/rules}/xylabs-typescript.md +0 -0
package/dist/xy/xy.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// src/xy/xy.ts
|
|
2
|
-
import
|
|
2
|
+
import chalk39 from "chalk";
|
|
3
3
|
|
|
4
4
|
// src/actions/build.ts
|
|
5
5
|
import chalk9 from "chalk";
|
|
@@ -18,14 +18,19 @@ var checkResult = (name, result, level = "error", exitOnFail = false) => {
|
|
|
18
18
|
};
|
|
19
19
|
|
|
20
20
|
// src/lib/claudeMdTemplate.ts
|
|
21
|
-
import {
|
|
21
|
+
import {
|
|
22
|
+
readdirSync,
|
|
23
|
+
readFileSync,
|
|
24
|
+
statSync
|
|
25
|
+
} from "fs";
|
|
22
26
|
import { createRequire } from "module";
|
|
23
27
|
import PATH from "path";
|
|
24
28
|
var require2 = createRequire(import.meta.url);
|
|
25
29
|
var packageRoot = PATH.dirname(require2.resolve("@xylabs/ts-scripts-yarn3/package.json"));
|
|
26
|
-
var templatesDir = PATH.resolve(packageRoot, "templates");
|
|
30
|
+
var templatesDir = PATH.resolve(packageRoot, "templates", "claude");
|
|
27
31
|
var XYLABS_RULES_PREFIX = "xylabs-";
|
|
28
32
|
var XYLABS_COMMANDS_PREFIX = "xylabs-";
|
|
33
|
+
var XYLABS_SKILLS_PREFIX = "xylabs-";
|
|
29
34
|
var claudeMdRuleTemplates = () => {
|
|
30
35
|
const rulesDir = PATH.resolve(templatesDir, "rules");
|
|
31
36
|
const files = readdirSync(rulesDir).filter((f) => f.startsWith(XYLABS_RULES_PREFIX) && f.endsWith(".md"));
|
|
@@ -44,6 +49,24 @@ var claudeCommandTemplates = () => {
|
|
|
44
49
|
}
|
|
45
50
|
return result;
|
|
46
51
|
};
|
|
52
|
+
var claudeSkillTemplates = () => {
|
|
53
|
+
const skillsDir = PATH.resolve(templatesDir, "skills");
|
|
54
|
+
const dirs = readdirSync(skillsDir).filter(
|
|
55
|
+
(f) => f.startsWith(XYLABS_SKILLS_PREFIX) && statSync(PATH.resolve(skillsDir, f)).isDirectory()
|
|
56
|
+
);
|
|
57
|
+
const result = {};
|
|
58
|
+
for (const dir of dirs) {
|
|
59
|
+
const dirPath = PATH.resolve(skillsDir, dir);
|
|
60
|
+
const files = readdirSync(dirPath, { recursive: true, encoding: "utf8" });
|
|
61
|
+
result[dir] = {};
|
|
62
|
+
for (const file of files) {
|
|
63
|
+
if (statSync(PATH.resolve(dirPath, file)).isFile()) {
|
|
64
|
+
result[dir][file] = readFileSync(PATH.resolve(dirPath, file), "utf8");
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return result;
|
|
69
|
+
};
|
|
47
70
|
var claudeMdProjectTemplate = () => readFileSync(PATH.resolve(templatesDir, "CLAUDE-project.md"), "utf8");
|
|
48
71
|
|
|
49
72
|
// src/lib/deleteGlob.ts
|
|
@@ -326,10 +349,19 @@ var generateIgnoreFiles = (filename3, pkg) => {
|
|
|
326
349
|
|
|
327
350
|
// src/lib/generateReadmeFiles.ts
|
|
328
351
|
import { execSync as execSync2 } from "child_process";
|
|
329
|
-
import FS from "fs";
|
|
330
|
-
import {
|
|
352
|
+
import FS, { readFileSync as readFileSync3 } from "fs";
|
|
353
|
+
import {
|
|
354
|
+
mkdir,
|
|
355
|
+
readFile,
|
|
356
|
+
writeFile
|
|
357
|
+
} from "fs/promises";
|
|
358
|
+
import { createRequire as createRequire2 } from "module";
|
|
331
359
|
import PATH2 from "path";
|
|
360
|
+
import { createInterface } from "readline";
|
|
332
361
|
import chalk5 from "chalk";
|
|
362
|
+
var require3 = createRequire2(import.meta.url);
|
|
363
|
+
var packageRoot2 = PATH2.dirname(require3.resolve("@xylabs/ts-scripts-yarn3/package.json"));
|
|
364
|
+
var readmeTemplatesDir = PATH2.resolve(packageRoot2, "templates", "readme");
|
|
333
365
|
function fillTemplate(template, data) {
|
|
334
366
|
const additionalData = { ...data, safeName: data.name.replaceAll("/", "__").replaceAll("@", "") };
|
|
335
367
|
return template.replaceAll(/\{\{(.*?)\}\}/g, (_, key) => additionalData[key.trim()] ?? "");
|
|
@@ -419,37 +451,120 @@ ${indent}### ${item.name}
|
|
|
419
451
|
}
|
|
420
452
|
return content;
|
|
421
453
|
}
|
|
454
|
+
function askConfirmation(question) {
|
|
455
|
+
const rl = createInterface({ input: process.stdin, output: process.stdout });
|
|
456
|
+
return new Promise((resolve) => {
|
|
457
|
+
rl.question(question, (answer) => {
|
|
458
|
+
rl.close();
|
|
459
|
+
resolve(answer.toLowerCase() === "y" || answer.toLowerCase() === "yes");
|
|
460
|
+
});
|
|
461
|
+
});
|
|
462
|
+
}
|
|
463
|
+
var DEFAULT_README_TEMPLATE = readFileSync3(PATH2.resolve(readmeTemplatesDir, "README.template.md"), "utf8");
|
|
464
|
+
var DEFAULT_README_BODY = readFileSync3(PATH2.resolve(readmeTemplatesDir, "README.body.md"), "utf8");
|
|
465
|
+
function applyLogoConfig(template, logoUrl, logoLinkUrl) {
|
|
466
|
+
let result = template;
|
|
467
|
+
if (logoUrl) {
|
|
468
|
+
result = result.replace(/\[logo]: .+/, `[logo]: ${logoUrl}`);
|
|
469
|
+
if (logoLinkUrl) {
|
|
470
|
+
result = result.replace(/\[!\[logo]\[]][^)]*\)/, `[![logo][]](${logoLinkUrl})`);
|
|
471
|
+
}
|
|
472
|
+
} else {
|
|
473
|
+
result = result.replace(/\[!\[logo]\[]][^\n]*\n*/, "");
|
|
474
|
+
result = result.replace(/\[logo]: [^\n]*\n?/, "");
|
|
475
|
+
}
|
|
476
|
+
return result;
|
|
477
|
+
}
|
|
478
|
+
function resolveTemplatePath(templatePath) {
|
|
479
|
+
const cwd = INIT_CWD() ?? ".";
|
|
480
|
+
return templatePath ?? PATH2.join(cwd, ".xy", "README.template.md");
|
|
481
|
+
}
|
|
482
|
+
async function loadOrCreateTemplate(resolvedTemplatePath) {
|
|
483
|
+
try {
|
|
484
|
+
const template = await readFile(resolvedTemplatePath, "utf8");
|
|
485
|
+
return { created: false, template };
|
|
486
|
+
} catch {
|
|
487
|
+
console.log(chalk5.yellow(`Template not found: ${resolvedTemplatePath}`));
|
|
488
|
+
const shouldCreate = await askConfirmation("Would you like to create a stock template? (y/N) ");
|
|
489
|
+
if (!shouldCreate) {
|
|
490
|
+
throw new Error("Template creation declined");
|
|
491
|
+
}
|
|
492
|
+
const template = DEFAULT_README_TEMPLATE;
|
|
493
|
+
await scaffoldTemplate(resolvedTemplatePath, template);
|
|
494
|
+
return { created: true, template };
|
|
495
|
+
}
|
|
496
|
+
}
|
|
497
|
+
async function scaffoldTemplate(resolvedTemplatePath, template) {
|
|
498
|
+
const xyDir = PATH2.dirname(resolvedTemplatePath);
|
|
499
|
+
await mkdir(xyDir, { recursive: true });
|
|
500
|
+
await writeFile(resolvedTemplatePath, template);
|
|
501
|
+
console.log(chalk5.green(`Created template: ${resolvedTemplatePath}`));
|
|
502
|
+
const bodyPath = PATH2.join(xyDir, "README.body.md");
|
|
503
|
+
await writeFile(bodyPath, DEFAULT_README_BODY);
|
|
504
|
+
console.log(chalk5.green(`Created body template: ${bodyPath}`));
|
|
505
|
+
}
|
|
506
|
+
async function resolveBody(location, defaultBody) {
|
|
507
|
+
const localBodyPath = PATH2.join(location, "README.body.md");
|
|
508
|
+
try {
|
|
509
|
+
return await readFile(localBodyPath, "utf8");
|
|
510
|
+
} catch {
|
|
511
|
+
return defaultBody;
|
|
512
|
+
}
|
|
513
|
+
}
|
|
514
|
+
async function generateReadmeForWorkspace(location, name, template, defaultBody, typedoc, verbose) {
|
|
515
|
+
try {
|
|
516
|
+
const pkgJsonPath = PATH2.join(location, "package.json");
|
|
517
|
+
const pkgJson = JSON.parse(await readFile(pkgJsonPath, "utf8"));
|
|
518
|
+
const body = await resolveBody(location, defaultBody);
|
|
519
|
+
const typedocContent = typedoc ? generateTypedoc(location, ["src/index*.ts"]) : "";
|
|
520
|
+
const readmeContent = fillTemplate(template, {
|
|
521
|
+
...pkgJson,
|
|
522
|
+
body,
|
|
523
|
+
typedoc: typedocContent
|
|
524
|
+
});
|
|
525
|
+
await writeFile(PATH2.join(location, "README.md"), readmeContent);
|
|
526
|
+
if (verbose) console.log(chalk5.green(` ${name}`));
|
|
527
|
+
return true;
|
|
528
|
+
} catch (ex) {
|
|
529
|
+
const error = ex;
|
|
530
|
+
console.warn(chalk5.yellow(` Skipped ${location}: ${error.message}`));
|
|
531
|
+
return false;
|
|
532
|
+
}
|
|
533
|
+
}
|
|
422
534
|
async function generateReadmeFiles({
|
|
535
|
+
logoLinkUrl,
|
|
536
|
+
logoUrl,
|
|
423
537
|
pkg,
|
|
424
538
|
templatePath,
|
|
425
539
|
typedoc = false,
|
|
426
|
-
verbose
|
|
540
|
+
verbose = false
|
|
427
541
|
}) {
|
|
428
542
|
console.log(chalk5.green("Generate README Files"));
|
|
429
|
-
const
|
|
430
|
-
const resolvedTemplatePath = templatePath ?? PATH2.join(cwd, "scripts", "README.template.md");
|
|
543
|
+
const resolvedTemplatePath = resolveTemplatePath(templatePath);
|
|
431
544
|
let template;
|
|
545
|
+
let templateCreated;
|
|
432
546
|
try {
|
|
433
|
-
template = await
|
|
547
|
+
({ template, created: templateCreated } = await loadOrCreateTemplate(resolvedTemplatePath));
|
|
434
548
|
} catch {
|
|
435
|
-
console.error(chalk5.red(`Template not found: ${resolvedTemplatePath}`));
|
|
436
549
|
return 1;
|
|
437
550
|
}
|
|
438
|
-
|
|
551
|
+
template = applyLogoConfig(template, logoUrl, logoLinkUrl);
|
|
552
|
+
if (templateCreated) {
|
|
553
|
+
console.log(chalk5.green("Generating README files for all packages..."));
|
|
554
|
+
}
|
|
555
|
+
const xyDir = PATH2.dirname(resolvedTemplatePath);
|
|
556
|
+
const xyBodyPath = PATH2.join(xyDir, "README.body.md");
|
|
557
|
+
let defaultBody;
|
|
558
|
+
try {
|
|
559
|
+
defaultBody = await readFile(xyBodyPath, "utf8");
|
|
560
|
+
} catch {
|
|
561
|
+
defaultBody = DEFAULT_README_BODY;
|
|
562
|
+
}
|
|
563
|
+
const workspaces = pkg && !templateCreated ? [yarnWorkspace(pkg)] : yarnWorkspaces();
|
|
439
564
|
let failed = false;
|
|
440
565
|
for (const { location, name } of workspaces) {
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
const pkgJson = JSON.parse(await readFile(pkgJsonPath, "utf8"));
|
|
444
|
-
const typedocContent = typedoc ? generateTypedoc(location, ["src/index*.ts"]) : "";
|
|
445
|
-
const readmeContent = fillTemplate(template, { ...pkgJson, typedoc: typedocContent });
|
|
446
|
-
await writeFile(PATH2.join(location, "README.md"), readmeContent);
|
|
447
|
-
if (verbose) console.log(chalk5.green(` ${name}`));
|
|
448
|
-
} catch (ex) {
|
|
449
|
-
const error = ex;
|
|
450
|
-
console.warn(chalk5.yellow(` Skipped ${location}: ${error.message}`));
|
|
451
|
-
failed = true;
|
|
452
|
-
}
|
|
566
|
+
const success = await generateReadmeForWorkspace(location, name, template, defaultBody, typedoc, verbose);
|
|
567
|
+
if (!success) failed = true;
|
|
453
568
|
}
|
|
454
569
|
return failed ? 1 : 0;
|
|
455
570
|
}
|
|
@@ -476,10 +591,10 @@ var loadConfig = async (params) => {
|
|
|
476
591
|
};
|
|
477
592
|
|
|
478
593
|
// src/lib/parsedPackageJSON.ts
|
|
479
|
-
import { readFileSync as
|
|
594
|
+
import { readFileSync as readFileSync4 } from "fs";
|
|
480
595
|
var parsedPackageJSON = (path8) => {
|
|
481
596
|
const pathToPackageJSON = path8 ?? process.env.npm_package_json ?? "";
|
|
482
|
-
const packageJSON =
|
|
597
|
+
const packageJSON = readFileSync4(pathToPackageJSON).toString();
|
|
483
598
|
return JSON.parse(packageJSON);
|
|
484
599
|
};
|
|
485
600
|
|
|
@@ -594,7 +709,7 @@ import {
|
|
|
594
709
|
existsSync as existsSync4,
|
|
595
710
|
mkdirSync,
|
|
596
711
|
readdirSync as readdirSync2,
|
|
597
|
-
readFileSync as
|
|
712
|
+
readFileSync as readFileSync5,
|
|
598
713
|
unlinkSync,
|
|
599
714
|
writeFileSync as writeFileSync2
|
|
600
715
|
} from "fs";
|
|
@@ -607,7 +722,7 @@ var syncCommandFiles = (commandsDir) => {
|
|
|
607
722
|
let created = 0;
|
|
608
723
|
for (const [filename3, content] of Object.entries(templates)) {
|
|
609
724
|
const targetPath = PATH3.resolve(commandsDir, filename3);
|
|
610
|
-
const existing = existsSync4(targetPath) ?
|
|
725
|
+
const existing = existsSync4(targetPath) ? readFileSync5(targetPath, "utf8") : void 0;
|
|
611
726
|
if (existing === content) continue;
|
|
612
727
|
writeFileSync2(targetPath, content, "utf8");
|
|
613
728
|
if (existing) {
|
|
@@ -664,7 +779,7 @@ import {
|
|
|
664
779
|
existsSync as existsSync5,
|
|
665
780
|
mkdirSync as mkdirSync2,
|
|
666
781
|
readdirSync as readdirSync3,
|
|
667
|
-
readFileSync as
|
|
782
|
+
readFileSync as readFileSync6,
|
|
668
783
|
unlinkSync as unlinkSync2,
|
|
669
784
|
writeFileSync as writeFileSync3
|
|
670
785
|
} from "fs";
|
|
@@ -677,7 +792,7 @@ var syncRuleFiles = (rulesDir) => {
|
|
|
677
792
|
let created = 0;
|
|
678
793
|
for (const [filename3, content] of Object.entries(templates)) {
|
|
679
794
|
const targetPath = PATH4.resolve(rulesDir, filename3);
|
|
680
|
-
const existing = existsSync5(targetPath) ?
|
|
795
|
+
const existing = existsSync5(targetPath) ? readFileSync6(targetPath, "utf8") : void 0;
|
|
681
796
|
if (existing === content) continue;
|
|
682
797
|
writeFileSync3(targetPath, content, "utf8");
|
|
683
798
|
if (existing) {
|
|
@@ -749,7 +864,7 @@ import {
|
|
|
749
864
|
writeFileSync as writeFileSync4
|
|
750
865
|
} from "fs";
|
|
751
866
|
import PATH5 from "path";
|
|
752
|
-
import { createInterface } from "readline";
|
|
867
|
+
import { createInterface as createInterface2 } from "readline";
|
|
753
868
|
import chalk12 from "chalk";
|
|
754
869
|
var DEFAULT_SETTINGS = {
|
|
755
870
|
permissions: {
|
|
@@ -784,8 +899,8 @@ var DEFAULT_SETTINGS = {
|
|
|
784
899
|
]
|
|
785
900
|
}
|
|
786
901
|
};
|
|
787
|
-
function
|
|
788
|
-
const rl =
|
|
902
|
+
function askConfirmation2(question) {
|
|
903
|
+
const rl = createInterface2({ input: process.stdin, output: process.stdout });
|
|
789
904
|
return new Promise((resolve) => {
|
|
790
905
|
rl.question(question, (answer) => {
|
|
791
906
|
rl.close();
|
|
@@ -799,7 +914,7 @@ async function claudeSettings() {
|
|
|
799
914
|
const settingsPath = PATH5.resolve(claudeDir, "settings.local.json");
|
|
800
915
|
mkdirSync3(claudeDir, { recursive: true });
|
|
801
916
|
if (existsSync6(settingsPath)) {
|
|
802
|
-
const confirmed = await
|
|
917
|
+
const confirmed = await askConfirmation2(
|
|
803
918
|
chalk12.yellow(`${settingsPath} already exists. Replace it? (y/N) `)
|
|
804
919
|
);
|
|
805
920
|
if (!confirmed) {
|
|
@@ -813,6 +928,84 @@ async function claudeSettings() {
|
|
|
813
928
|
return 0;
|
|
814
929
|
}
|
|
815
930
|
|
|
931
|
+
// src/actions/claude-skills.ts
|
|
932
|
+
import {
|
|
933
|
+
existsSync as existsSync7,
|
|
934
|
+
mkdirSync as mkdirSync4,
|
|
935
|
+
readdirSync as readdirSync4,
|
|
936
|
+
readFileSync as readFileSync7,
|
|
937
|
+
rmSync,
|
|
938
|
+
statSync as statSync2,
|
|
939
|
+
writeFileSync as writeFileSync5
|
|
940
|
+
} from "fs";
|
|
941
|
+
import PATH6 from "path";
|
|
942
|
+
import chalk13 from "chalk";
|
|
943
|
+
var syncSkillFiles = (skillsDir) => {
|
|
944
|
+
const templates = claudeSkillTemplates();
|
|
945
|
+
const templateNames = new Set(Object.keys(templates));
|
|
946
|
+
let updated = 0;
|
|
947
|
+
let created = 0;
|
|
948
|
+
for (const [skillName, files] of Object.entries(templates)) {
|
|
949
|
+
const skillDir = PATH6.resolve(skillsDir, skillName);
|
|
950
|
+
mkdirSync4(skillDir, { recursive: true });
|
|
951
|
+
for (const [filename3, content] of Object.entries(files)) {
|
|
952
|
+
const targetPath = PATH6.resolve(skillDir, filename3);
|
|
953
|
+
mkdirSync4(PATH6.dirname(targetPath), { recursive: true });
|
|
954
|
+
const existing = existsSync7(targetPath) ? readFileSync7(targetPath, "utf8") : void 0;
|
|
955
|
+
if (existing === content) continue;
|
|
956
|
+
writeFileSync5(targetPath, content, "utf8");
|
|
957
|
+
if (existing) {
|
|
958
|
+
updated++;
|
|
959
|
+
} else {
|
|
960
|
+
created++;
|
|
961
|
+
}
|
|
962
|
+
}
|
|
963
|
+
}
|
|
964
|
+
return {
|
|
965
|
+
created,
|
|
966
|
+
templateNames,
|
|
967
|
+
updated
|
|
968
|
+
};
|
|
969
|
+
};
|
|
970
|
+
var removeStaleSkills = (skillsDir, templateNames) => {
|
|
971
|
+
const existingSkills = readdirSync4(skillsDir).filter(
|
|
972
|
+
(f) => f.startsWith(XYLABS_SKILLS_PREFIX) && statSync2(PATH6.resolve(skillsDir, f)).isDirectory()
|
|
973
|
+
);
|
|
974
|
+
let removed = 0;
|
|
975
|
+
for (const dir of existingSkills) {
|
|
976
|
+
if (!templateNames.has(dir)) {
|
|
977
|
+
rmSync(PATH6.resolve(skillsDir, dir), { recursive: true });
|
|
978
|
+
removed++;
|
|
979
|
+
}
|
|
980
|
+
}
|
|
981
|
+
return removed;
|
|
982
|
+
};
|
|
983
|
+
var logSkillsResult = (created, updated, removed) => {
|
|
984
|
+
if (created || updated || removed) {
|
|
985
|
+
const parts = [
|
|
986
|
+
created ? `${created} created` : "",
|
|
987
|
+
updated ? `${updated} updated` : "",
|
|
988
|
+
removed ? `${removed} removed` : ""
|
|
989
|
+
].filter(Boolean);
|
|
990
|
+
console.log(chalk13.green(`.claude/skills/${XYLABS_SKILLS_PREFIX}*/: ${parts.join(", ")}`));
|
|
991
|
+
} else {
|
|
992
|
+
console.log(chalk13.gray(`.claude/skills/${XYLABS_SKILLS_PREFIX}*/: already up to date`));
|
|
993
|
+
}
|
|
994
|
+
};
|
|
995
|
+
var claudeSkills = () => {
|
|
996
|
+
const cwd = INIT_CWD() ?? process.cwd();
|
|
997
|
+
const skillsDir = PATH6.resolve(cwd, ".claude", "skills");
|
|
998
|
+
mkdirSync4(skillsDir, { recursive: true });
|
|
999
|
+
const {
|
|
1000
|
+
created,
|
|
1001
|
+
templateNames,
|
|
1002
|
+
updated
|
|
1003
|
+
} = syncSkillFiles(skillsDir);
|
|
1004
|
+
const removed = removeStaleSkills(skillsDir, templateNames);
|
|
1005
|
+
logSkillsResult(created, updated, removed);
|
|
1006
|
+
return 0;
|
|
1007
|
+
};
|
|
1008
|
+
|
|
816
1009
|
// src/actions/clean.ts
|
|
817
1010
|
var clean = async ({ verbose, pkg }) => {
|
|
818
1011
|
return pkg ? await cleanPackage({ pkg, verbose }) : cleanAll({ verbose });
|
|
@@ -827,16 +1020,16 @@ var cleanAll = ({ verbose }) => {
|
|
|
827
1020
|
|
|
828
1021
|
// src/actions/clean-docs.ts
|
|
829
1022
|
import path from "path";
|
|
830
|
-
import
|
|
1023
|
+
import chalk14 from "chalk";
|
|
831
1024
|
var cleanDocs = () => {
|
|
832
1025
|
const pkgName = process.env.npm_package_name;
|
|
833
|
-
console.log(
|
|
1026
|
+
console.log(chalk14.green(`Cleaning Docs [${pkgName}]`));
|
|
834
1027
|
for (const { location } of yarnWorkspaces()) deleteGlob(path.join(location, "docs"));
|
|
835
1028
|
return 0;
|
|
836
1029
|
};
|
|
837
1030
|
|
|
838
1031
|
// src/actions/compile.ts
|
|
839
|
-
import
|
|
1032
|
+
import chalk15 from "chalk";
|
|
840
1033
|
var compile = ({
|
|
841
1034
|
verbose,
|
|
842
1035
|
target,
|
|
@@ -877,7 +1070,7 @@ var compileAll = ({
|
|
|
877
1070
|
const incrementalOptions = incremental ? ["--since", "-Ap", "--topological-dev"] : ["--parallel", "-Ap", "--topological-dev"];
|
|
878
1071
|
const jobsOptions = jobs ? ["-j", `${jobs}`] : [];
|
|
879
1072
|
if (jobs) {
|
|
880
|
-
console.log(
|
|
1073
|
+
console.log(chalk15.blue(`Jobs set to [${jobs}]`));
|
|
881
1074
|
}
|
|
882
1075
|
const result = runSteps(`Compile${incremental ? "-Incremental" : ""} [All]`, [
|
|
883
1076
|
["yarn", [
|
|
@@ -891,13 +1084,13 @@ var compileAll = ({
|
|
|
891
1084
|
...targetOptions
|
|
892
1085
|
]]
|
|
893
1086
|
]);
|
|
894
|
-
console.log(`${
|
|
1087
|
+
console.log(`${chalk15.gray("Compiled in")} [${chalk15.magenta(((Date.now() - start) / 1e3).toFixed(2))}] ${chalk15.gray("seconds")}`);
|
|
895
1088
|
return result;
|
|
896
1089
|
};
|
|
897
1090
|
|
|
898
1091
|
// src/actions/copy-assets.ts
|
|
899
1092
|
import path2 from "path/posix";
|
|
900
|
-
import
|
|
1093
|
+
import chalk16 from "chalk";
|
|
901
1094
|
import cpy from "cpy";
|
|
902
1095
|
var copyPackageTargetAssets = async (target, name, location) => {
|
|
903
1096
|
try {
|
|
@@ -920,7 +1113,7 @@ var copyPackageTargetAssets = async (target, name, location) => {
|
|
|
920
1113
|
};
|
|
921
1114
|
var copyTargetAssets = async (target, pkg) => {
|
|
922
1115
|
const workspaces = yarnWorkspaces();
|
|
923
|
-
console.log(
|
|
1116
|
+
console.log(chalk16.green(`Copying Assets [${target.toUpperCase()}]`));
|
|
924
1117
|
const workspaceList = workspaces.filter(({ name }) => {
|
|
925
1118
|
return pkg === void 0 || name === pkg;
|
|
926
1119
|
});
|
|
@@ -1004,7 +1197,7 @@ var dead = () => {
|
|
|
1004
1197
|
};
|
|
1005
1198
|
|
|
1006
1199
|
// src/actions/deplint/deplint.ts
|
|
1007
|
-
import
|
|
1200
|
+
import chalk22 from "chalk";
|
|
1008
1201
|
|
|
1009
1202
|
// src/actions/deplint/findFiles.ts
|
|
1010
1203
|
import fs2 from "fs";
|
|
@@ -1209,7 +1402,7 @@ function getExternalImportsFromFiles({
|
|
|
1209
1402
|
|
|
1210
1403
|
// src/actions/deplint/checkPackage/getUnlistedDependencies.ts
|
|
1211
1404
|
import { builtinModules } from "module";
|
|
1212
|
-
import
|
|
1405
|
+
import chalk17 from "chalk";
|
|
1213
1406
|
function isRuntimeImportListed(imp, name, dependencies, peerDependencies) {
|
|
1214
1407
|
return dependencies.includes(imp) || imp === name || peerDependencies.includes(imp) || builtinModules.includes(imp);
|
|
1215
1408
|
}
|
|
@@ -1217,7 +1410,7 @@ function isTypeImportListed(imp, name, dependencies, devDependencies, peerDepend
|
|
|
1217
1410
|
return dependencies.includes(imp) || imp === name || dependencies.includes(`@types/${imp}`) || peerDependencies.includes(imp) || peerDependencies.includes(`@types/${imp}`) || devDependencies.includes(`@types/${imp}`) || builtinModules.includes(imp);
|
|
1218
1411
|
}
|
|
1219
1412
|
function logMissing(name, imp, importPaths) {
|
|
1220
|
-
console.log(`[${
|
|
1413
|
+
console.log(`[${chalk17.blue(name)}] Missing dependency in package.json: ${chalk17.red(imp)}`);
|
|
1221
1414
|
if (importPaths[imp]) {
|
|
1222
1415
|
console.log(` ${importPaths[imp].join("\n ")}`);
|
|
1223
1416
|
}
|
|
@@ -1246,7 +1439,7 @@ function getUnlistedDependencies({ name, location }, {
|
|
|
1246
1439
|
}
|
|
1247
1440
|
if (unlistedDependencies > 0) {
|
|
1248
1441
|
const packageLocation = `${location}/package.json`;
|
|
1249
|
-
console.log(` ${
|
|
1442
|
+
console.log(` ${chalk17.yellow(packageLocation)}
|
|
1250
1443
|
`);
|
|
1251
1444
|
}
|
|
1252
1445
|
return unlistedDependencies;
|
|
@@ -1254,7 +1447,7 @@ function getUnlistedDependencies({ name, location }, {
|
|
|
1254
1447
|
|
|
1255
1448
|
// src/actions/deplint/checkPackage/getUnlistedDevDependencies.ts
|
|
1256
1449
|
import { builtinModules as builtinModules2 } from "module";
|
|
1257
|
-
import
|
|
1450
|
+
import chalk18 from "chalk";
|
|
1258
1451
|
function getUnlistedDevDependencies({ name, location }, {
|
|
1259
1452
|
devDependencies,
|
|
1260
1453
|
dependencies,
|
|
@@ -1268,7 +1461,7 @@ function getUnlistedDevDependencies({ name, location }, {
|
|
|
1268
1461
|
for (const imp of externalAllImports) {
|
|
1269
1462
|
if (!distImports.includes(imp) && imp !== name && !dependencies.includes(imp) && !dependencies.includes(`@types/${imp}`) && !peerDependencies.includes(imp) && !peerDependencies.includes(`@types/${imp}`) && !devDependencies.includes(imp) && !devDependencies.includes(`@types/${imp}`) && !builtinModules2.includes(imp)) {
|
|
1270
1463
|
unlistedDevDependencies++;
|
|
1271
|
-
console.log(`[${
|
|
1464
|
+
console.log(`[${chalk18.blue(name)}] Missing devDependency in package.json: ${chalk18.red(imp)}`);
|
|
1272
1465
|
if (allImportPaths[imp]) {
|
|
1273
1466
|
console.log(` ${allImportPaths[imp].join("\n ")}`);
|
|
1274
1467
|
}
|
|
@@ -1276,14 +1469,14 @@ function getUnlistedDevDependencies({ name, location }, {
|
|
|
1276
1469
|
}
|
|
1277
1470
|
if (unlistedDevDependencies > 0) {
|
|
1278
1471
|
const packageLocation = `${location}/package.json`;
|
|
1279
|
-
console.log(` ${
|
|
1472
|
+
console.log(` ${chalk18.yellow(packageLocation)}
|
|
1280
1473
|
`);
|
|
1281
1474
|
}
|
|
1282
1475
|
return unlistedDevDependencies;
|
|
1283
1476
|
}
|
|
1284
1477
|
|
|
1285
1478
|
// src/actions/deplint/checkPackage/getUnusedDependencies.ts
|
|
1286
|
-
import
|
|
1479
|
+
import chalk19 from "chalk";
|
|
1287
1480
|
function getUnusedDependencies({ name, location }, { dependencies }, {
|
|
1288
1481
|
externalDistImports,
|
|
1289
1482
|
externalDistTypeImports,
|
|
@@ -1295,22 +1488,22 @@ function getUnusedDependencies({ name, location }, { dependencies }, {
|
|
|
1295
1488
|
if (!externalDistImports.includes(dep) && !externalDistImports.includes(dep.replace(/^@types\//, "")) && !externalDistTypeImports.includes(dep) && !externalDistTypeImports.includes(dep.replace(/^@types\//, ""))) {
|
|
1296
1489
|
unusedDependencies++;
|
|
1297
1490
|
if (externalAllImports.includes(dep)) {
|
|
1298
|
-
console.log(`[${
|
|
1491
|
+
console.log(`[${chalk19.blue(name)}] dependency should be devDependency in package.json: ${chalk19.red(dep)}`);
|
|
1299
1492
|
} else {
|
|
1300
|
-
console.log(`[${
|
|
1493
|
+
console.log(`[${chalk19.blue(name)}] Unused dependency in package.json: ${chalk19.red(dep)}`);
|
|
1301
1494
|
}
|
|
1302
1495
|
}
|
|
1303
1496
|
}
|
|
1304
1497
|
if (unusedDependencies > 0) {
|
|
1305
1498
|
const packageLocation = `${location}/package.json`;
|
|
1306
|
-
console.log(` ${
|
|
1499
|
+
console.log(` ${chalk19.yellow(packageLocation)}
|
|
1307
1500
|
`);
|
|
1308
1501
|
}
|
|
1309
1502
|
return unusedDependencies;
|
|
1310
1503
|
}
|
|
1311
1504
|
|
|
1312
1505
|
// src/actions/deplint/checkPackage/getUnusedDevDependencies.ts
|
|
1313
|
-
import
|
|
1506
|
+
import chalk20 from "chalk";
|
|
1314
1507
|
|
|
1315
1508
|
// src/actions/deplint/getCliReferencedPackagesFromFiles.ts
|
|
1316
1509
|
import fs8 from "fs";
|
|
@@ -1594,19 +1787,19 @@ function getUnusedDevDependencies({ name, location }, {
|
|
|
1594
1787
|
if (dependencies.includes(dep) || peerDependencies.includes(dep)) continue;
|
|
1595
1788
|
if (!isDevDepUsed(dep, allImports, implicitDeps, requiredPeers, scriptRefs, cliRefs)) {
|
|
1596
1789
|
unusedDevDependencies++;
|
|
1597
|
-
console.log(`[${
|
|
1790
|
+
console.log(`[${chalk20.blue(name)}] Unused devDependency in package.json: ${chalk20.red(dep)}`);
|
|
1598
1791
|
}
|
|
1599
1792
|
}
|
|
1600
1793
|
if (unusedDevDependencies > 0) {
|
|
1601
1794
|
const packageLocation = `${location}/package.json`;
|
|
1602
|
-
console.log(` ${
|
|
1795
|
+
console.log(` ${chalk20.yellow(packageLocation)}
|
|
1603
1796
|
`);
|
|
1604
1797
|
}
|
|
1605
1798
|
return unusedDevDependencies;
|
|
1606
1799
|
}
|
|
1607
1800
|
|
|
1608
1801
|
// src/actions/deplint/checkPackage/getUnusedPeerDependencies.ts
|
|
1609
|
-
import
|
|
1802
|
+
import chalk21 from "chalk";
|
|
1610
1803
|
function getUnusedPeerDependencies({ name, location }, { peerDependencies, dependencies }, { externalDistImports, externalDistTypeImports }, exclude) {
|
|
1611
1804
|
let unusedDependencies = 0;
|
|
1612
1805
|
for (const dep of peerDependencies) {
|
|
@@ -1614,15 +1807,15 @@ function getUnusedPeerDependencies({ name, location }, { peerDependencies, depen
|
|
|
1614
1807
|
if (!externalDistImports.includes(dep) && !externalDistImports.includes(dep.replace(/^@types\//, "")) && !externalDistTypeImports.includes(dep) && !externalDistTypeImports.includes(dep.replace(/^@types\//, ""))) {
|
|
1615
1808
|
unusedDependencies++;
|
|
1616
1809
|
if (dependencies.includes(dep)) {
|
|
1617
|
-
console.log(`[${
|
|
1810
|
+
console.log(`[${chalk21.blue(name)}] Unused peerDependency [already a dependency] in package.json: ${chalk21.red(dep)}`);
|
|
1618
1811
|
} else {
|
|
1619
|
-
console.log(`[${
|
|
1812
|
+
console.log(`[${chalk21.blue(name)}] Unused peerDependency in package.json: ${chalk21.red(dep)}`);
|
|
1620
1813
|
}
|
|
1621
1814
|
}
|
|
1622
1815
|
}
|
|
1623
1816
|
if (unusedDependencies > 0) {
|
|
1624
1817
|
const packageLocation = `${location}/package.json`;
|
|
1625
|
-
console.log(` ${
|
|
1818
|
+
console.log(` ${chalk21.yellow(packageLocation)}
|
|
1626
1819
|
`);
|
|
1627
1820
|
}
|
|
1628
1821
|
return unusedDependencies;
|
|
@@ -1717,19 +1910,19 @@ var deplint = async ({
|
|
|
1717
1910
|
});
|
|
1718
1911
|
}
|
|
1719
1912
|
if (totalErrors > 0) {
|
|
1720
|
-
console.warn(`Deplint: Found ${
|
|
1913
|
+
console.warn(`Deplint: Found ${chalk22.red(totalErrors)} dependency problems. ${chalk22.red("\u2716")}`);
|
|
1721
1914
|
} else {
|
|
1722
|
-
console.info(`Deplint: Found no dependency problems. ${
|
|
1915
|
+
console.info(`Deplint: Found no dependency problems. ${chalk22.green("\u2714")}`);
|
|
1723
1916
|
}
|
|
1724
1917
|
return 0;
|
|
1725
1918
|
};
|
|
1726
1919
|
|
|
1727
1920
|
// src/actions/deploy.ts
|
|
1728
|
-
import { readFileSync as
|
|
1921
|
+
import { readFileSync as readFileSync8 } from "fs";
|
|
1729
1922
|
var privatePackageExcludeList = () => {
|
|
1730
1923
|
const possibleDeployablePackages = yarnWorkspaces().map((workspace) => [
|
|
1731
1924
|
workspace,
|
|
1732
|
-
JSON.parse(
|
|
1925
|
+
JSON.parse(readFileSync8(`${workspace.location}/package.json`, { encoding: "utf8" }))
|
|
1733
1926
|
]);
|
|
1734
1927
|
const privatePackages = possibleDeployablePackages.filter(([_, pkg]) => pkg.private).map(([workspace]) => workspace);
|
|
1735
1928
|
const excludeList = privatePackages.map((workspace) => `--exclude ${workspace.name}`);
|
|
@@ -1749,11 +1942,11 @@ var deploy = () => {
|
|
|
1749
1942
|
};
|
|
1750
1943
|
|
|
1751
1944
|
// src/actions/deploy-major.ts
|
|
1752
|
-
import { readFileSync as
|
|
1945
|
+
import { readFileSync as readFileSync9 } from "fs";
|
|
1753
1946
|
var privatePackageExcludeList2 = () => {
|
|
1754
1947
|
const possibleDeployablePackages = yarnWorkspaces().map((workspace) => [
|
|
1755
1948
|
workspace,
|
|
1756
|
-
JSON.parse(
|
|
1949
|
+
JSON.parse(readFileSync9(`${workspace.location}/package.json`, { encoding: "utf8" }))
|
|
1757
1950
|
]);
|
|
1758
1951
|
const privatePackages = possibleDeployablePackages.filter(([_, pkg]) => pkg.private).map(([workspace]) => workspace);
|
|
1759
1952
|
const excludeList = privatePackages.map((workspace) => `--exclude ${workspace.name}`);
|
|
@@ -1773,11 +1966,11 @@ var deployMajor = () => {
|
|
|
1773
1966
|
};
|
|
1774
1967
|
|
|
1775
1968
|
// src/actions/deploy-minor.ts
|
|
1776
|
-
import { readFileSync as
|
|
1969
|
+
import { readFileSync as readFileSync10 } from "fs";
|
|
1777
1970
|
var privatePackageExcludeList3 = () => {
|
|
1778
1971
|
const possibleDeployablePackages = yarnWorkspaces().map((workspace) => [
|
|
1779
1972
|
workspace,
|
|
1780
|
-
JSON.parse(
|
|
1973
|
+
JSON.parse(readFileSync10(`${workspace.location}/package.json`, { encoding: "utf8" }))
|
|
1781
1974
|
]);
|
|
1782
1975
|
const privatePackages = possibleDeployablePackages.filter(([_, pkg]) => pkg.private).map(([workspace]) => workspace);
|
|
1783
1976
|
const excludeList = privatePackages.map((workspace) => `--exclude ${workspace.name}`);
|
|
@@ -1797,11 +1990,11 @@ var deployMinor = () => {
|
|
|
1797
1990
|
};
|
|
1798
1991
|
|
|
1799
1992
|
// src/actions/deploy-next.ts
|
|
1800
|
-
import { readFileSync as
|
|
1993
|
+
import { readFileSync as readFileSync11 } from "fs";
|
|
1801
1994
|
var privatePackageExcludeList4 = () => {
|
|
1802
1995
|
const possibleDeployablePackages = yarnWorkspaces().map((workspace) => [
|
|
1803
1996
|
workspace,
|
|
1804
|
-
JSON.parse(
|
|
1997
|
+
JSON.parse(readFileSync11(`${workspace.location}/package.json`, { encoding: "utf8" }))
|
|
1805
1998
|
]);
|
|
1806
1999
|
const privatePackages = possibleDeployablePackages.filter(([_, pkg]) => pkg.private).map(([workspace]) => workspace);
|
|
1807
2000
|
const excludeList = privatePackages.map((workspace) => `--exclude ${workspace.name}`);
|
|
@@ -1821,22 +2014,22 @@ var deployNext = () => {
|
|
|
1821
2014
|
};
|
|
1822
2015
|
|
|
1823
2016
|
// src/actions/dupdeps.ts
|
|
1824
|
-
import
|
|
2017
|
+
import chalk23 from "chalk";
|
|
1825
2018
|
var dupdeps = () => {
|
|
1826
|
-
console.log(
|
|
2019
|
+
console.log(chalk23.green("Checking all Dependencies for Duplicates"));
|
|
1827
2020
|
const allDependencies = parsedPackageJSON()?.dependencies;
|
|
1828
2021
|
const dependencies = Object.entries(allDependencies).map(([k]) => k);
|
|
1829
2022
|
return detectDuplicateDependencies(dependencies);
|
|
1830
2023
|
};
|
|
1831
2024
|
|
|
1832
2025
|
// src/actions/lint.ts
|
|
1833
|
-
import
|
|
2026
|
+
import chalk24 from "chalk";
|
|
1834
2027
|
var lintPackage = ({
|
|
1835
2028
|
pkg,
|
|
1836
2029
|
fix: fix2,
|
|
1837
2030
|
verbose
|
|
1838
2031
|
}) => {
|
|
1839
|
-
console.log(
|
|
2032
|
+
console.log(chalk24.gray(`${fix2 ? "Fix" : "Lint"} [${pkg}]`));
|
|
1840
2033
|
const start = Date.now();
|
|
1841
2034
|
const result = runSteps(`${fix2 ? "Fix" : "Lint"} [${pkg}]`, [
|
|
1842
2035
|
["yarn", [
|
|
@@ -1846,7 +2039,7 @@ var lintPackage = ({
|
|
|
1846
2039
|
fix2 ? "package-fix" : verbose ? "package-lint-verbose" : "package-lint"
|
|
1847
2040
|
]]
|
|
1848
2041
|
]);
|
|
1849
|
-
console.log(
|
|
2042
|
+
console.log(chalk24.gray(`${fix2 ? "Fixed in" : "Linted in"} [${chalk24.magenta(((Date.now() - start) / 1e3).toFixed(2))}] ${chalk24.gray("seconds")}`));
|
|
1850
2043
|
return result;
|
|
1851
2044
|
};
|
|
1852
2045
|
var lint = ({
|
|
@@ -1866,13 +2059,13 @@ var lint = ({
|
|
|
1866
2059
|
});
|
|
1867
2060
|
};
|
|
1868
2061
|
var lintAllPackages = ({ fix: fix2 = false } = {}) => {
|
|
1869
|
-
console.log(
|
|
2062
|
+
console.log(chalk24.gray(`${fix2 ? "Fix" : "Lint"} [All-Packages]`));
|
|
1870
2063
|
const start = Date.now();
|
|
1871
2064
|
const fixOptions = fix2 ? ["--fix"] : [];
|
|
1872
2065
|
const result = runSteps(`${fix2 ? "Fix" : "Lint"} [All-Packages]`, [
|
|
1873
2066
|
["yarn", ["eslint", "--cache", "--cache-location", ".eslintcache", "--cache-strategy", "content", ...fixOptions]]
|
|
1874
2067
|
]);
|
|
1875
|
-
console.log(
|
|
2068
|
+
console.log(chalk24.gray(`${fix2 ? "Fixed in" : "Linted in"} [${chalk24.magenta(((Date.now() - start) / 1e3).toFixed(2))}] ${chalk24.gray("seconds")}`));
|
|
1876
2069
|
return result;
|
|
1877
2070
|
};
|
|
1878
2071
|
|
|
@@ -1900,7 +2093,7 @@ var filename = ".gitignore";
|
|
|
1900
2093
|
var gitignoreGen = (pkg) => generateIgnoreFiles(filename, pkg);
|
|
1901
2094
|
|
|
1902
2095
|
// src/actions/gitlint.ts
|
|
1903
|
-
import
|
|
2096
|
+
import chalk25 from "chalk";
|
|
1904
2097
|
import ParseGitConfig from "parse-git-config";
|
|
1905
2098
|
var gitlint = () => {
|
|
1906
2099
|
console.log(`
|
|
@@ -1911,7 +2104,7 @@ Gitlint Start [${process.cwd()}]
|
|
|
1911
2104
|
const errors = 0;
|
|
1912
2105
|
const gitConfig = ParseGitConfig.sync();
|
|
1913
2106
|
const warn = (message) => {
|
|
1914
|
-
console.warn(
|
|
2107
|
+
console.warn(chalk25.yellow(`Warning: ${message}`));
|
|
1915
2108
|
warnings++;
|
|
1916
2109
|
};
|
|
1917
2110
|
if (gitConfig.core.ignorecase) {
|
|
@@ -1931,13 +2124,13 @@ Gitlint Start [${process.cwd()}]
|
|
|
1931
2124
|
}
|
|
1932
2125
|
const resultMessages = [];
|
|
1933
2126
|
if (valid > 0) {
|
|
1934
|
-
resultMessages.push(
|
|
2127
|
+
resultMessages.push(chalk25.green(`Passed: ${valid}`));
|
|
1935
2128
|
}
|
|
1936
2129
|
if (warnings > 0) {
|
|
1937
|
-
resultMessages.push(
|
|
2130
|
+
resultMessages.push(chalk25.yellow(`Warnings: ${warnings}`));
|
|
1938
2131
|
}
|
|
1939
2132
|
if (errors > 0) {
|
|
1940
|
-
resultMessages.push(
|
|
2133
|
+
resultMessages.push(chalk25.red(` Errors: ${errors}`));
|
|
1941
2134
|
}
|
|
1942
2135
|
console.warn(`Gitlint Finish [ ${resultMessages.join(" | ")} ]
|
|
1943
2136
|
`);
|
|
@@ -1946,7 +2139,7 @@ Gitlint Start [${process.cwd()}]
|
|
|
1946
2139
|
|
|
1947
2140
|
// src/actions/gitlint-fix.ts
|
|
1948
2141
|
import { execSync as execSync3 } from "child_process";
|
|
1949
|
-
import
|
|
2142
|
+
import chalk26 from "chalk";
|
|
1950
2143
|
import ParseGitConfig2 from "parse-git-config";
|
|
1951
2144
|
var gitlintFix = () => {
|
|
1952
2145
|
console.log(`
|
|
@@ -1955,15 +2148,15 @@ Gitlint Fix Start [${process.cwd()}]
|
|
|
1955
2148
|
const gitConfig = ParseGitConfig2.sync();
|
|
1956
2149
|
if (gitConfig.core.ignorecase) {
|
|
1957
2150
|
execSync3("git config core.ignorecase false", { stdio: "inherit" });
|
|
1958
|
-
console.warn(
|
|
2151
|
+
console.warn(chalk26.yellow("\nGitlint Fix: Updated core.ignorecase to be false\n"));
|
|
1959
2152
|
}
|
|
1960
2153
|
if (gitConfig.core.autocrlf !== false) {
|
|
1961
2154
|
execSync3("git config core.autocrlf false", { stdio: "inherit" });
|
|
1962
|
-
console.warn(
|
|
2155
|
+
console.warn(chalk26.yellow("\nGitlint Fix: Updated core.autocrlf to be false\n"));
|
|
1963
2156
|
}
|
|
1964
2157
|
if (gitConfig.core.eol !== "lf") {
|
|
1965
2158
|
execSync3("git config core.eol lf", { stdio: "inherit" });
|
|
1966
|
-
console.warn(
|
|
2159
|
+
console.warn(chalk26.yellow('\nGitlint Fix: Updated core.eol to be "lf"\n'));
|
|
1967
2160
|
}
|
|
1968
2161
|
return 1;
|
|
1969
2162
|
};
|
|
@@ -1974,7 +2167,7 @@ var knip = () => {
|
|
|
1974
2167
|
};
|
|
1975
2168
|
|
|
1976
2169
|
// src/actions/license.ts
|
|
1977
|
-
import
|
|
2170
|
+
import chalk27 from "chalk";
|
|
1978
2171
|
import { init } from "license-checker";
|
|
1979
2172
|
var license = async (pkg) => {
|
|
1980
2173
|
const workspaces = yarnWorkspaces();
|
|
@@ -1999,18 +2192,18 @@ var license = async (pkg) => {
|
|
|
1999
2192
|
"LGPL-3.0-or-later",
|
|
2000
2193
|
"Python-2.0"
|
|
2001
2194
|
]);
|
|
2002
|
-
console.log(
|
|
2195
|
+
console.log(chalk27.green("License Checker"));
|
|
2003
2196
|
return (await Promise.all(
|
|
2004
2197
|
workspaceList.map(({ location, name }) => {
|
|
2005
2198
|
return new Promise((resolve) => {
|
|
2006
2199
|
init({ production: true, start: location }, (error, packages) => {
|
|
2007
2200
|
if (error) {
|
|
2008
|
-
console.error(
|
|
2009
|
-
console.error(
|
|
2201
|
+
console.error(chalk27.red(`License Checker [${name}] Error`));
|
|
2202
|
+
console.error(chalk27.gray(error));
|
|
2010
2203
|
console.log("\n");
|
|
2011
2204
|
resolve(1);
|
|
2012
2205
|
} else {
|
|
2013
|
-
console.log(
|
|
2206
|
+
console.log(chalk27.green(`License Checker [${name}]`));
|
|
2014
2207
|
let count = 0;
|
|
2015
2208
|
for (const [name2, info] of Object.entries(packages)) {
|
|
2016
2209
|
const licenses = Array.isArray(info.licenses) ? info.licenses : [info.licenses];
|
|
@@ -2026,7 +2219,7 @@ var license = async (pkg) => {
|
|
|
2026
2219
|
}
|
|
2027
2220
|
if (!orLicenseFound) {
|
|
2028
2221
|
count++;
|
|
2029
|
-
console.warn(
|
|
2222
|
+
console.warn(chalk27.yellow(`${name2}: Package License not allowed [${license2}]`));
|
|
2030
2223
|
}
|
|
2031
2224
|
}
|
|
2032
2225
|
}
|
|
@@ -2068,7 +2261,10 @@ async function readmeGen({
|
|
|
2068
2261
|
typedoc,
|
|
2069
2262
|
verbose
|
|
2070
2263
|
}) {
|
|
2264
|
+
const config2 = await loadConfig();
|
|
2071
2265
|
return await generateReadmeFiles({
|
|
2266
|
+
logoLinkUrl: config2.readme?.logoLinkUrl,
|
|
2267
|
+
logoUrl: config2.readme?.logoUrl,
|
|
2072
2268
|
pkg,
|
|
2073
2269
|
templatePath,
|
|
2074
2270
|
typedoc,
|
|
@@ -2076,6 +2272,15 @@ async function readmeGen({
|
|
|
2076
2272
|
});
|
|
2077
2273
|
}
|
|
2078
2274
|
|
|
2275
|
+
// src/actions/readme-init.ts
|
|
2276
|
+
async function readmeInit({ templatePath }) {
|
|
2277
|
+
const config2 = await loadConfig();
|
|
2278
|
+
const template = applyLogoConfig(DEFAULT_README_TEMPLATE, config2.readme?.logoUrl, config2.readme?.logoLinkUrl);
|
|
2279
|
+
const resolvedTemplatePath = resolveTemplatePath(templatePath);
|
|
2280
|
+
await scaffoldTemplate(resolvedTemplatePath, template);
|
|
2281
|
+
return 0;
|
|
2282
|
+
}
|
|
2283
|
+
|
|
2079
2284
|
// src/actions/rebuild.ts
|
|
2080
2285
|
var rebuild = ({ target }) => {
|
|
2081
2286
|
return runSteps("Rebuild", [
|
|
@@ -2085,7 +2290,7 @@ var rebuild = ({ target }) => {
|
|
|
2085
2290
|
};
|
|
2086
2291
|
|
|
2087
2292
|
// src/actions/recompile.ts
|
|
2088
|
-
import
|
|
2293
|
+
import chalk28 from "chalk";
|
|
2089
2294
|
var recompile = async ({
|
|
2090
2295
|
verbose,
|
|
2091
2296
|
target,
|
|
@@ -2121,7 +2326,7 @@ var recompileAll = async ({
|
|
|
2121
2326
|
const incrementalOptions = incremental ? ["--since", "-Apt", "--topological-dev"] : ["--parallel", "-Apt", "--topological-dev"];
|
|
2122
2327
|
const jobsOptions = jobs ? ["-j", `${jobs}`] : [];
|
|
2123
2328
|
if (jobs) {
|
|
2124
|
-
console.log(
|
|
2329
|
+
console.log(chalk28.blue(`Jobs set to [${jobs}]`));
|
|
2125
2330
|
}
|
|
2126
2331
|
const result = await runStepsAsync(`Recompile${incremental ? "-Incremental" : ""} [All]`, [
|
|
2127
2332
|
[
|
|
@@ -2152,7 +2357,7 @@ var recompileAll = async ({
|
|
|
2152
2357
|
]
|
|
2153
2358
|
]);
|
|
2154
2359
|
console.log(
|
|
2155
|
-
`${
|
|
2360
|
+
`${chalk28.gray("Recompiled in")} [${chalk28.magenta(((Date.now() - start) / 1e3).toFixed(2))}] ${chalk28.gray("seconds")}`
|
|
2156
2361
|
);
|
|
2157
2362
|
return result;
|
|
2158
2363
|
};
|
|
@@ -2161,7 +2366,7 @@ var recompileAll = async ({
|
|
|
2161
2366
|
import {
|
|
2162
2367
|
closeSync,
|
|
2163
2368
|
openSync,
|
|
2164
|
-
rmSync
|
|
2369
|
+
rmSync as rmSync2
|
|
2165
2370
|
} from "fs";
|
|
2166
2371
|
var reinstall = () => {
|
|
2167
2372
|
console.log("Reinstall [Clear Lock File]");
|
|
@@ -2171,7 +2376,7 @@ var reinstall = () => {
|
|
|
2171
2376
|
const result = workspaces.map(({ location, name }) => {
|
|
2172
2377
|
const dist = `${location}/node_modules`;
|
|
2173
2378
|
try {
|
|
2174
|
-
|
|
2379
|
+
rmSync2(dist, { force: true, recursive: true });
|
|
2175
2380
|
return 0;
|
|
2176
2381
|
} catch (ex) {
|
|
2177
2382
|
const error = ex;
|
|
@@ -2183,13 +2388,13 @@ var reinstall = () => {
|
|
|
2183
2388
|
};
|
|
2184
2389
|
|
|
2185
2390
|
// src/actions/relint.ts
|
|
2186
|
-
import
|
|
2391
|
+
import chalk29 from "chalk";
|
|
2187
2392
|
var relintPackage = ({
|
|
2188
2393
|
pkg,
|
|
2189
2394
|
fix: fix2,
|
|
2190
2395
|
verbose
|
|
2191
2396
|
}) => {
|
|
2192
|
-
console.log(
|
|
2397
|
+
console.log(chalk29.gray(`${fix2 ? "Fix" : "Lint"} [${pkg}]`));
|
|
2193
2398
|
const start = Date.now();
|
|
2194
2399
|
const result = runSteps(`${fix2 ? "Fix" : "Lint"} [${pkg}]`, [
|
|
2195
2400
|
["yarn", [
|
|
@@ -2199,7 +2404,7 @@ var relintPackage = ({
|
|
|
2199
2404
|
fix2 ? "package-fix" : verbose ? "package-lint-verbose" : "package-lint"
|
|
2200
2405
|
]]
|
|
2201
2406
|
]);
|
|
2202
|
-
console.log(
|
|
2407
|
+
console.log(chalk29.gray(`${fix2 ? "Fixed in" : "Linted in"} [${chalk29.magenta(((Date.now() - start) / 1e3).toFixed(2))}] ${chalk29.gray("seconds")}`));
|
|
2203
2408
|
return result;
|
|
2204
2409
|
};
|
|
2205
2410
|
var relint = ({
|
|
@@ -2219,21 +2424,21 @@ var relint = ({
|
|
|
2219
2424
|
});
|
|
2220
2425
|
};
|
|
2221
2426
|
var relintAllPackages = ({ fix: fix2 = false } = {}) => {
|
|
2222
|
-
console.log(
|
|
2427
|
+
console.log(chalk29.gray(`${fix2 ? "Fix" : "Lint"} [All-Packages]`));
|
|
2223
2428
|
const start = Date.now();
|
|
2224
2429
|
const fixOptions = fix2 ? ["--fix"] : [];
|
|
2225
2430
|
const result = runSteps(`${fix2 ? "Fix" : "Lint"} [All-Packages]`, [
|
|
2226
2431
|
["yarn", ["eslint", ...fixOptions]]
|
|
2227
2432
|
]);
|
|
2228
|
-
console.log(
|
|
2433
|
+
console.log(chalk29.gray(`${fix2 ? "Fixed in" : "Linted in"} [${chalk29.magenta(((Date.now() - start) / 1e3).toFixed(2))}] ${chalk29.gray("seconds")}`));
|
|
2229
2434
|
return result;
|
|
2230
2435
|
};
|
|
2231
2436
|
|
|
2232
2437
|
// src/actions/retest.ts
|
|
2233
2438
|
var retest = () => {
|
|
2234
2439
|
return runSteps("Test", [
|
|
2235
|
-
["yarn", ["
|
|
2236
|
-
["yarn", ["
|
|
2440
|
+
["yarn", ["vitest", "--clearCache"]],
|
|
2441
|
+
["yarn", ["vitest", "."]]
|
|
2237
2442
|
]);
|
|
2238
2443
|
};
|
|
2239
2444
|
|
|
@@ -2243,10 +2448,10 @@ var sonar = () => {
|
|
|
2243
2448
|
};
|
|
2244
2449
|
|
|
2245
2450
|
// src/actions/statics.ts
|
|
2246
|
-
import
|
|
2451
|
+
import chalk30 from "chalk";
|
|
2247
2452
|
var DefaultDependencies = ["axios", "@xylabs/pixel", "react", "graphql", "react-router", "@mui/material", "@mui/system"];
|
|
2248
2453
|
var statics = () => {
|
|
2249
|
-
console.log(
|
|
2454
|
+
console.log(chalk30.green("Check Required Static Dependencies"));
|
|
2250
2455
|
const statics2 = parsedPackageJSON()?.xy?.deps?.statics;
|
|
2251
2456
|
return detectDuplicateDependencies(statics2, DefaultDependencies);
|
|
2252
2457
|
};
|
|
@@ -2294,556 +2499,691 @@ var yarn3Only = () => {
|
|
|
2294
2499
|
return 0;
|
|
2295
2500
|
};
|
|
2296
2501
|
|
|
2297
|
-
// src/xy/xyBuildCommands.ts
|
|
2298
|
-
var xyBuildCommands = (args) => {
|
|
2299
|
-
return args.command(
|
|
2300
|
-
"build [package]",
|
|
2301
|
-
"Build - Compile & Lint",
|
|
2302
|
-
(yargs2) => {
|
|
2303
|
-
return yargs2.positional("package", { describe: "Specific package to build" });
|
|
2304
|
-
},
|
|
2305
|
-
async (argv) => {
|
|
2306
|
-
if (argv.verbose) {
|
|
2307
|
-
console.log(`Building: ${argv.package ?? "all"}`);
|
|
2308
|
-
}
|
|
2309
|
-
process.exitCode = await build({
|
|
2310
|
-
incremental: !!argv.incremental,
|
|
2311
|
-
jobs: argv.jobs,
|
|
2312
|
-
pkg: argv.package,
|
|
2313
|
-
target: argv.target,
|
|
2314
|
-
verbose: !!argv.verbose
|
|
2315
|
-
});
|
|
2316
|
-
}
|
|
2317
|
-
).command(
|
|
2318
|
-
"compile [package]",
|
|
2319
|
-
"Compile with Typescript & Copy Images",
|
|
2320
|
-
(yargs2) => {
|
|
2321
|
-
return yargs2.positional("package", { describe: "Specific package to compile" });
|
|
2322
|
-
},
|
|
2323
|
-
(argv) => {
|
|
2324
|
-
if (argv.verbose) {
|
|
2325
|
-
console.log(`Compiling: ${argv.package ?? "all"}`);
|
|
2326
|
-
}
|
|
2327
|
-
process.exitCode = compile({
|
|
2328
|
-
incremental: !!argv.incremental,
|
|
2329
|
-
jobs: argv.jobs,
|
|
2330
|
-
pkg: argv.package,
|
|
2331
|
-
target: argv.target,
|
|
2332
|
-
verbose: !!argv.verbose
|
|
2333
|
-
});
|
|
2334
|
-
}
|
|
2335
|
-
).command(
|
|
2336
|
-
"compile-only [package]",
|
|
2337
|
-
"Compile with Typescript & Copy Images (No Publint)",
|
|
2338
|
-
(yargs2) => {
|
|
2339
|
-
return yargs2.positional("package", { describe: "Specific package to compile" });
|
|
2340
|
-
},
|
|
2341
|
-
(argv) => {
|
|
2342
|
-
if (argv.verbose) {
|
|
2343
|
-
console.log(`Compiling: ${argv.package ?? "all"}`);
|
|
2344
|
-
}
|
|
2345
|
-
process.exitCode = compile({
|
|
2346
|
-
incremental: !!argv.incremental,
|
|
2347
|
-
jobs: argv.jobs,
|
|
2348
|
-
pkg: argv.package,
|
|
2349
|
-
publint: false,
|
|
2350
|
-
target: argv.target,
|
|
2351
|
-
verbose: !!argv.verbose
|
|
2352
|
-
});
|
|
2353
|
-
}
|
|
2354
|
-
).command(
|
|
2355
|
-
"recompile [package]",
|
|
2356
|
-
"Re-compile with Typescript & Copy Images",
|
|
2357
|
-
(yargs2) => {
|
|
2358
|
-
return yargs2.positional("package", { describe: "Specific package to re-compile" });
|
|
2359
|
-
},
|
|
2360
|
-
async (argv) => {
|
|
2361
|
-
if (argv.verbose) {
|
|
2362
|
-
console.log(`Re-compiling: ${argv.package ?? "all"}`);
|
|
2363
|
-
}
|
|
2364
|
-
process.exitCode = await recompile({
|
|
2365
|
-
incremental: !!argv.incremental,
|
|
2366
|
-
jobs: argv.jobs,
|
|
2367
|
-
pkg: argv.package,
|
|
2368
|
-
target: argv.target,
|
|
2369
|
-
verbose: !!argv.verbose
|
|
2370
|
-
});
|
|
2371
|
-
}
|
|
2372
|
-
).command(
|
|
2373
|
-
"rebuild [package]",
|
|
2374
|
-
"Rebuild - Clean, Compile & Lint",
|
|
2375
|
-
(yargs2) => {
|
|
2376
|
-
return yargs2.positional("package", { describe: "Specific package to rebuild" });
|
|
2377
|
-
},
|
|
2378
|
-
(argv) => {
|
|
2379
|
-
if (argv.verbose) console.log(`Rebuilding: ${argv.package ?? "all"}`);
|
|
2380
|
-
process.exitCode = rebuild({ target: argv.target });
|
|
2381
|
-
}
|
|
2382
|
-
).command(
|
|
2383
|
-
"copy-assets [package]",
|
|
2384
|
-
"Copy Assets - Copy the assets from src to dist",
|
|
2385
|
-
(yargs2) => {
|
|
2386
|
-
return yargs2.positional("package", { describe: "Specific package to copy assets" });
|
|
2387
|
-
},
|
|
2388
|
-
async (argv) => {
|
|
2389
|
-
if (argv.verbose) console.log(`Copying Assets: ${argv.package ?? "all"}`);
|
|
2390
|
-
process.exitCode = await copyAssets({ target: argv.target });
|
|
2391
|
-
}
|
|
2392
|
-
);
|
|
2393
|
-
};
|
|
2394
|
-
|
|
2395
2502
|
// src/xy/param.ts
|
|
2396
2503
|
var packagePositionalParam = (yargs2) => {
|
|
2397
2504
|
return yargs2.positional("package", { describe: "Specific package to target", type: "string" });
|
|
2398
2505
|
};
|
|
2399
2506
|
|
|
2400
|
-
// src/xy/
|
|
2507
|
+
// src/xy/build-commands/build.ts
|
|
2508
|
+
var buildCommand = {
|
|
2509
|
+
builder: (yargs2) => {
|
|
2510
|
+
return packagePositionalParam(yargs2);
|
|
2511
|
+
},
|
|
2512
|
+
command: "build [package]",
|
|
2513
|
+
describe: "Build - Compile & Lint",
|
|
2514
|
+
handler: async (argv) => {
|
|
2515
|
+
if (argv.verbose) {
|
|
2516
|
+
console.log(`Building: ${argv.package ?? "all"}`);
|
|
2517
|
+
}
|
|
2518
|
+
process.exitCode = await build({
|
|
2519
|
+
incremental: !!argv.incremental,
|
|
2520
|
+
jobs: argv.jobs,
|
|
2521
|
+
pkg: argv.package,
|
|
2522
|
+
target: argv.target,
|
|
2523
|
+
verbose: !!argv.verbose
|
|
2524
|
+
});
|
|
2525
|
+
}
|
|
2526
|
+
};
|
|
2527
|
+
var compileCommand = {
|
|
2528
|
+
builder: (yargs2) => {
|
|
2529
|
+
return packagePositionalParam(yargs2);
|
|
2530
|
+
},
|
|
2531
|
+
command: "compile [package]",
|
|
2532
|
+
describe: "Compile with Typescript & Copy Images",
|
|
2533
|
+
handler: (argv) => {
|
|
2534
|
+
if (argv.verbose) {
|
|
2535
|
+
console.log(`Compiling: ${argv.package ?? "all"}`);
|
|
2536
|
+
}
|
|
2537
|
+
process.exitCode = compile({
|
|
2538
|
+
incremental: !!argv.incremental,
|
|
2539
|
+
jobs: argv.jobs,
|
|
2540
|
+
pkg: argv.package,
|
|
2541
|
+
target: argv.target,
|
|
2542
|
+
verbose: !!argv.verbose
|
|
2543
|
+
});
|
|
2544
|
+
}
|
|
2545
|
+
};
|
|
2546
|
+
var compileOnlyCommand = {
|
|
2547
|
+
builder: (yargs2) => {
|
|
2548
|
+
return packagePositionalParam(yargs2);
|
|
2549
|
+
},
|
|
2550
|
+
command: "compile-only [package]",
|
|
2551
|
+
describe: "Compile with Typescript & Copy Images (No Publint)",
|
|
2552
|
+
handler: (argv) => {
|
|
2553
|
+
if (argv.verbose) {
|
|
2554
|
+
console.log(`Compiling: ${argv.package ?? "all"}`);
|
|
2555
|
+
}
|
|
2556
|
+
process.exitCode = compile({
|
|
2557
|
+
incremental: !!argv.incremental,
|
|
2558
|
+
jobs: argv.jobs,
|
|
2559
|
+
pkg: argv.package,
|
|
2560
|
+
publint: false,
|
|
2561
|
+
target: argv.target,
|
|
2562
|
+
verbose: !!argv.verbose
|
|
2563
|
+
});
|
|
2564
|
+
}
|
|
2565
|
+
};
|
|
2566
|
+
var recompileCommand = {
|
|
2567
|
+
builder: (yargs2) => {
|
|
2568
|
+
return packagePositionalParam(yargs2);
|
|
2569
|
+
},
|
|
2570
|
+
command: "recompile [package]",
|
|
2571
|
+
describe: "Re-compile with Typescript & Copy Images",
|
|
2572
|
+
handler: async (argv) => {
|
|
2573
|
+
if (argv.verbose) {
|
|
2574
|
+
console.log(`Re-compiling: ${argv.package ?? "all"}`);
|
|
2575
|
+
}
|
|
2576
|
+
process.exitCode = await recompile({
|
|
2577
|
+
incremental: !!argv.incremental,
|
|
2578
|
+
jobs: argv.jobs,
|
|
2579
|
+
pkg: argv.package,
|
|
2580
|
+
target: argv.target,
|
|
2581
|
+
verbose: !!argv.verbose
|
|
2582
|
+
});
|
|
2583
|
+
}
|
|
2584
|
+
};
|
|
2585
|
+
var rebuildCommand = {
|
|
2586
|
+
builder: (yargs2) => {
|
|
2587
|
+
return packagePositionalParam(yargs2);
|
|
2588
|
+
},
|
|
2589
|
+
command: "rebuild [package]",
|
|
2590
|
+
describe: "Rebuild - Clean, Compile & Lint",
|
|
2591
|
+
handler: (argv) => {
|
|
2592
|
+
if (argv.verbose) console.log(`Rebuilding: ${argv.package ?? "all"}`);
|
|
2593
|
+
process.exitCode = rebuild({ target: argv.target });
|
|
2594
|
+
}
|
|
2595
|
+
};
|
|
2596
|
+
var copyAssetsCommand = {
|
|
2597
|
+
builder: (yargs2) => {
|
|
2598
|
+
return packagePositionalParam(yargs2);
|
|
2599
|
+
},
|
|
2600
|
+
command: "copy-assets [package]",
|
|
2601
|
+
describe: "Copy Assets - Copy the assets from src to dist",
|
|
2602
|
+
handler: async (argv) => {
|
|
2603
|
+
if (argv.verbose) console.log(`Copying Assets: ${argv.package ?? "all"}`);
|
|
2604
|
+
process.exitCode = await copyAssets({ target: argv.target });
|
|
2605
|
+
}
|
|
2606
|
+
};
|
|
2607
|
+
|
|
2608
|
+
// src/xy/build-commands/index.ts
|
|
2609
|
+
var xyBuildCommands = (args) => {
|
|
2610
|
+
return args.command(buildCommand).command(compileCommand).command(compileOnlyCommand).command(rebuildCommand).command(recompileCommand).command(copyAssetsCommand);
|
|
2611
|
+
};
|
|
2612
|
+
|
|
2613
|
+
// src/xy/common/claude/commandsCommand.ts
|
|
2614
|
+
var commandsCommand = {
|
|
2615
|
+
command: "commands",
|
|
2616
|
+
describe: "Sync XY Labs standard Claude slash commands to .claude/commands/",
|
|
2617
|
+
handler: (argv) => {
|
|
2618
|
+
if (argv.verbose) console.log("Claude Commands");
|
|
2619
|
+
process.exitCode = claudeCommands();
|
|
2620
|
+
}
|
|
2621
|
+
};
|
|
2622
|
+
|
|
2623
|
+
// src/xy/common/claude/initCommand.ts
|
|
2624
|
+
var initCommand = {
|
|
2625
|
+
builder: (yargs2) => {
|
|
2626
|
+
return yargs2.option("force", {
|
|
2627
|
+
alias: "f",
|
|
2628
|
+
default: false,
|
|
2629
|
+
description: "Overwrite existing CLAUDE.md",
|
|
2630
|
+
type: "boolean"
|
|
2631
|
+
});
|
|
2632
|
+
},
|
|
2633
|
+
command: "init",
|
|
2634
|
+
describe: "Initialize all Claude configuration (commands, rules, settings)",
|
|
2635
|
+
handler: async (argv) => {
|
|
2636
|
+
if (argv.verbose) console.log("Claude Init");
|
|
2637
|
+
const commandsResult = claudeCommands();
|
|
2638
|
+
const rulesResult = claudeRules({ force: argv.force });
|
|
2639
|
+
const settingsResult = await claudeSettings();
|
|
2640
|
+
process.exitCode = commandsResult || rulesResult || settingsResult;
|
|
2641
|
+
}
|
|
2642
|
+
};
|
|
2643
|
+
var initClaudeSkillsCommand = {
|
|
2644
|
+
command: "init:skills",
|
|
2645
|
+
describe: "Initialize Claude skills configuration",
|
|
2646
|
+
handler: () => {
|
|
2647
|
+
const result = claudeSkills();
|
|
2648
|
+
process.exitCode = result;
|
|
2649
|
+
}
|
|
2650
|
+
};
|
|
2651
|
+
|
|
2652
|
+
// src/xy/common/claude/rulesCommand.ts
|
|
2653
|
+
var rulesCommand = {
|
|
2654
|
+
builder: (yargs2) => {
|
|
2655
|
+
return yargs2.option("force", {
|
|
2656
|
+
alias: "f",
|
|
2657
|
+
default: false,
|
|
2658
|
+
description: "Overwrite existing CLAUDE.md",
|
|
2659
|
+
type: "boolean"
|
|
2660
|
+
});
|
|
2661
|
+
},
|
|
2662
|
+
command: "rules",
|
|
2663
|
+
describe: "Sync XY Labs standard Claude rules to .claude/rules/",
|
|
2664
|
+
handler: (argv) => {
|
|
2665
|
+
if (argv.verbose) console.log("Claude Rules");
|
|
2666
|
+
process.exitCode = claudeRules({ force: argv.force });
|
|
2667
|
+
}
|
|
2668
|
+
};
|
|
2669
|
+
|
|
2670
|
+
// src/xy/common/claude/settingsCommand.ts
|
|
2671
|
+
var settingsCommand = {
|
|
2672
|
+
command: "settings",
|
|
2673
|
+
describe: "Initialize .claude/settings.local.json with XY Labs defaults",
|
|
2674
|
+
handler: async (argv) => {
|
|
2675
|
+
if (argv.verbose) console.log("Claude Settings");
|
|
2676
|
+
process.exitCode = await claudeSettings();
|
|
2677
|
+
}
|
|
2678
|
+
};
|
|
2679
|
+
|
|
2680
|
+
// src/xy/common/claude/index.ts
|
|
2681
|
+
var claudeCommand = {
|
|
2682
|
+
builder: (yargs2) => {
|
|
2683
|
+
return yargs2.command(commandsCommand).command(initCommand).command(rulesCommand).command(settingsCommand).command(initClaudeSkillsCommand).demandCommand(1, "Please specify a claude subcommand");
|
|
2684
|
+
},
|
|
2685
|
+
command: "claude",
|
|
2686
|
+
describe: "Claude - Claude Code configuration utilities",
|
|
2687
|
+
handler: () => {
|
|
2688
|
+
}
|
|
2689
|
+
};
|
|
2690
|
+
|
|
2691
|
+
// src/xy/common/cleanDocsCommand.ts
|
|
2692
|
+
var cleanDocsCommand = {
|
|
2693
|
+
command: "clean-docs",
|
|
2694
|
+
describe: "CleanDocs - Clean TypeDocs",
|
|
2695
|
+
handler: (argv) => {
|
|
2696
|
+
if (argv.verbose) console.log("Cleaning TypeDocs: all");
|
|
2697
|
+
process.exitCode = cleanDocs();
|
|
2698
|
+
}
|
|
2699
|
+
};
|
|
2700
|
+
|
|
2701
|
+
// src/xy/common/deadCommand.ts
|
|
2702
|
+
var deadCommand = {
|
|
2703
|
+
builder: (yargs2) => {
|
|
2704
|
+
return packagePositionalParam(yargs2);
|
|
2705
|
+
},
|
|
2706
|
+
command: "dead [package]",
|
|
2707
|
+
describe: "Dead - Check for dead code",
|
|
2708
|
+
handler: (argv) => {
|
|
2709
|
+
if (argv.verbose) console.log("Dead");
|
|
2710
|
+
process.exitCode = dead();
|
|
2711
|
+
}
|
|
2712
|
+
};
|
|
2713
|
+
|
|
2714
|
+
// src/xy/common/genDocsCommand.ts
|
|
2715
|
+
var genDocsCommand = {
|
|
2716
|
+
builder: (yargs2) => {
|
|
2717
|
+
return packagePositionalParam(yargs2);
|
|
2718
|
+
},
|
|
2719
|
+
command: "gen-docs [package]",
|
|
2720
|
+
describe: "GenDocs - Generate TypeDocs",
|
|
2721
|
+
handler: (argv) => {
|
|
2722
|
+
if (argv.verbose) console.log(`Generating TypeDocs: ${argv.package ?? "all"}`);
|
|
2723
|
+
process.exitCode = genDocs({ incremental: !!argv.incremental, pkg: argv.package });
|
|
2724
|
+
}
|
|
2725
|
+
};
|
|
2726
|
+
|
|
2727
|
+
// src/xy/common/gitignoreGenCommand.ts
|
|
2728
|
+
var gitignoreGenCommand = {
|
|
2729
|
+
command: "gitignore-gen",
|
|
2730
|
+
describe: "GitIgnore Gen - Generate .gitignore files",
|
|
2731
|
+
handler: (argv) => {
|
|
2732
|
+
if (argv.verbose) console.log("GitIgnore Gen");
|
|
2733
|
+
process.exitCode = gitignoreGen();
|
|
2734
|
+
}
|
|
2735
|
+
};
|
|
2736
|
+
|
|
2737
|
+
// src/xy/common/gitlintCommand.ts
|
|
2738
|
+
var gitlintCommand = {
|
|
2739
|
+
command: "gitlint [package]",
|
|
2740
|
+
describe: "Gitlint - Lint your git config",
|
|
2741
|
+
handler: (argv) => {
|
|
2742
|
+
if (argv.verbose) console.log("Gitlint");
|
|
2743
|
+
process.exitCode = argv.fix ? gitlintFix() : gitlint();
|
|
2744
|
+
}
|
|
2745
|
+
};
|
|
2746
|
+
|
|
2747
|
+
// src/xy/common/licenseCommand.ts
|
|
2748
|
+
var licenseCommand = {
|
|
2749
|
+
builder: (yargs2) => {
|
|
2750
|
+
return packagePositionalParam(yargs2);
|
|
2751
|
+
},
|
|
2752
|
+
command: "license [package]",
|
|
2753
|
+
describe: "License - Check licenses of dependencies",
|
|
2754
|
+
handler: async (argv) => {
|
|
2755
|
+
if (argv.verbose) console.log(`License: ${argv.package ?? "all"}`);
|
|
2756
|
+
process.exitCode = await license();
|
|
2757
|
+
}
|
|
2758
|
+
};
|
|
2759
|
+
|
|
2760
|
+
// src/xy/common/npmignoreGenCommand.ts
|
|
2761
|
+
var npmignoreGenCommand = {
|
|
2762
|
+
command: "npmignore-gen",
|
|
2763
|
+
describe: "NpmIgnore Gen - Generate .npmignore files",
|
|
2764
|
+
handler: (argv) => {
|
|
2765
|
+
if (argv.verbose) console.log("NpmIgnore Gen");
|
|
2766
|
+
process.exitCode = npmignoreGen();
|
|
2767
|
+
}
|
|
2768
|
+
};
|
|
2769
|
+
|
|
2770
|
+
// src/xy/common/readme/genCommand.ts
|
|
2771
|
+
var genCommand = {
|
|
2772
|
+
builder: (yargs2) => {
|
|
2773
|
+
return packagePositionalParam(yargs2).option("template", {
|
|
2774
|
+
alias: "t",
|
|
2775
|
+
description: "Path to README.template.md",
|
|
2776
|
+
type: "string"
|
|
2777
|
+
}).option("typedoc", {
|
|
2778
|
+
default: false,
|
|
2779
|
+
description: "Generate TypeDoc reference sections",
|
|
2780
|
+
type: "boolean"
|
|
2781
|
+
});
|
|
2782
|
+
},
|
|
2783
|
+
aliases: ["$0"],
|
|
2784
|
+
command: "gen [package]",
|
|
2785
|
+
describe: "Generate README.md files from template",
|
|
2786
|
+
handler: async (argv) => {
|
|
2787
|
+
if (argv.verbose) console.log("Readme Gen");
|
|
2788
|
+
process.exitCode = await readmeGen({
|
|
2789
|
+
pkg: argv.package,
|
|
2790
|
+
templatePath: argv.template,
|
|
2791
|
+
typedoc: argv.typedoc,
|
|
2792
|
+
verbose: !!argv.verbose
|
|
2793
|
+
});
|
|
2794
|
+
}
|
|
2795
|
+
};
|
|
2796
|
+
|
|
2797
|
+
// src/xy/common/readme/initCommand.ts
|
|
2798
|
+
var initCommand2 = {
|
|
2799
|
+
builder: (yargs2) => {
|
|
2800
|
+
return yargs2.option("template", {
|
|
2801
|
+
alias: "t",
|
|
2802
|
+
description: "Path to README.template.md",
|
|
2803
|
+
type: "string"
|
|
2804
|
+
});
|
|
2805
|
+
},
|
|
2806
|
+
command: "init",
|
|
2807
|
+
describe: "Initialize README template and logo files",
|
|
2808
|
+
handler: async (argv) => {
|
|
2809
|
+
if (argv.verbose) console.log("Readme Init");
|
|
2810
|
+
process.exitCode = await readmeInit({
|
|
2811
|
+
templatePath: argv.template,
|
|
2812
|
+
verbose: !!argv.verbose
|
|
2813
|
+
});
|
|
2814
|
+
}
|
|
2815
|
+
};
|
|
2816
|
+
|
|
2817
|
+
// src/xy/common/readme/index.ts
|
|
2818
|
+
var readmeCommand = {
|
|
2819
|
+
builder: (yargs2) => {
|
|
2820
|
+
return yargs2.command(genCommand).command(initCommand2);
|
|
2821
|
+
},
|
|
2822
|
+
command: "readme",
|
|
2823
|
+
describe: "Readme - README file utilities",
|
|
2824
|
+
handler: () => {
|
|
2825
|
+
}
|
|
2826
|
+
};
|
|
2827
|
+
|
|
2828
|
+
// src/xy/common/retestCommand.ts
|
|
2829
|
+
var retestCommand = {
|
|
2830
|
+
command: "retest",
|
|
2831
|
+
describe: "Re-Test - Run Jest Tests with cleaned cache",
|
|
2832
|
+
handler: (argv) => {
|
|
2833
|
+
if (argv.verbose) console.log("Re-Testing");
|
|
2834
|
+
process.exitCode = retest();
|
|
2835
|
+
}
|
|
2836
|
+
};
|
|
2837
|
+
|
|
2838
|
+
// src/xy/common/testCommand.ts
|
|
2839
|
+
var testCommand = {
|
|
2840
|
+
command: "test",
|
|
2841
|
+
describe: "Test - Run Jest Tests",
|
|
2842
|
+
handler: (argv) => {
|
|
2843
|
+
if (argv.verbose) console.log("Testing");
|
|
2844
|
+
process.exitCode = test();
|
|
2845
|
+
}
|
|
2846
|
+
};
|
|
2847
|
+
|
|
2848
|
+
// src/xy/common/upplugCommand.ts
|
|
2849
|
+
var upplugCommand = {
|
|
2850
|
+
command: "upplug",
|
|
2851
|
+
describe: "UpPlug - Update Yarn Plugins",
|
|
2852
|
+
handler: (argv) => {
|
|
2853
|
+
if (argv.verbose) console.log("UpPlug");
|
|
2854
|
+
process.exitCode = updateYarnPlugins();
|
|
2855
|
+
}
|
|
2856
|
+
};
|
|
2857
|
+
|
|
2858
|
+
// src/xy/common/upyarnCommand.ts
|
|
2859
|
+
var upyarnCommand = {
|
|
2860
|
+
command: "upyarn",
|
|
2861
|
+
describe: "UpYarn - Update Yarn Version",
|
|
2862
|
+
handler: (argv) => {
|
|
2863
|
+
if (argv.verbose) console.log("UpYarn");
|
|
2864
|
+
process.exitCode = updateYarnVersion();
|
|
2865
|
+
}
|
|
2866
|
+
};
|
|
2867
|
+
|
|
2868
|
+
// src/xy/common/yarn3OnlyCommand.ts
|
|
2869
|
+
var yarn3OnlyCommand = {
|
|
2870
|
+
command: "yarn3only",
|
|
2871
|
+
describe: "Yarn3Only - Check if using Yarn v3",
|
|
2872
|
+
handler: (argv) => {
|
|
2873
|
+
if (argv.verbose) console.log("Yarn 3 Check");
|
|
2874
|
+
process.exitCode = yarn3Only();
|
|
2875
|
+
}
|
|
2876
|
+
};
|
|
2877
|
+
|
|
2878
|
+
// src/xy/common/index.ts
|
|
2401
2879
|
var xyCommonCommands = (args) => {
|
|
2402
|
-
return args.command(
|
|
2403
|
-
|
|
2404
|
-
|
|
2405
|
-
|
|
2406
|
-
|
|
2407
|
-
|
|
2408
|
-
|
|
2409
|
-
|
|
2410
|
-
|
|
2411
|
-
|
|
2412
|
-
|
|
2413
|
-
|
|
2414
|
-
|
|
2415
|
-
|
|
2416
|
-
|
|
2417
|
-
|
|
2418
|
-
|
|
2419
|
-
|
|
2420
|
-
|
|
2421
|
-
(
|
|
2422
|
-
|
|
2423
|
-
|
|
2424
|
-
|
|
2425
|
-
|
|
2426
|
-
|
|
2427
|
-
|
|
2428
|
-
|
|
2429
|
-
|
|
2430
|
-
|
|
2431
|
-
|
|
2432
|
-
|
|
2433
|
-
).command(
|
|
2434
|
-
"license [package]",
|
|
2435
|
-
"License - Check licenses of dependencies",
|
|
2436
|
-
(yargs2) => {
|
|
2437
|
-
return packagePositionalParam(yargs2);
|
|
2438
|
-
},
|
|
2439
|
-
async (argv) => {
|
|
2440
|
-
if (argv.verbose) console.log(`License: ${argv.package ?? "all"}`);
|
|
2441
|
-
process.exitCode = await license();
|
|
2442
|
-
}
|
|
2443
|
-
).command(
|
|
2444
|
-
"dead [package]",
|
|
2445
|
-
"Dead - Check for dead code",
|
|
2446
|
-
(yargs2) => {
|
|
2447
|
-
return packagePositionalParam(yargs2);
|
|
2448
|
-
},
|
|
2449
|
-
(argv) => {
|
|
2450
|
-
if (argv.verbose) console.log("Dead");
|
|
2451
|
-
process.exitCode = dead();
|
|
2452
|
-
}
|
|
2453
|
-
).command(
|
|
2454
|
-
"gen-docs [package]",
|
|
2455
|
-
"GenDocs - Generate TypeDocs",
|
|
2456
|
-
(yargs2) => {
|
|
2457
|
-
return packagePositionalParam(yargs2);
|
|
2458
|
-
},
|
|
2459
|
-
(argv) => {
|
|
2460
|
-
if (argv.verbose) console.log(`Generating TypeDocs: ${argv.package ?? "all"}`);
|
|
2461
|
-
process.exitCode = genDocs({ incremental: !!argv.incremental, pkg: argv.package });
|
|
2462
|
-
}
|
|
2463
|
-
).command(
|
|
2464
|
-
"clean-docs",
|
|
2465
|
-
"CleanDocs - Clean TypeDocs",
|
|
2466
|
-
(yargs2) => yargs2,
|
|
2467
|
-
(argv) => {
|
|
2468
|
-
if (argv.verbose) console.log("Cleaning TypeDocs: all");
|
|
2469
|
-
process.exitCode = cleanDocs();
|
|
2470
|
-
}
|
|
2471
|
-
).command(
|
|
2472
|
-
"gitlint [package]",
|
|
2473
|
-
"Gitlint - Lint your git config",
|
|
2474
|
-
(yargs2) => {
|
|
2475
|
-
return yargs2;
|
|
2476
|
-
},
|
|
2477
|
-
(argv) => {
|
|
2478
|
-
if (argv.verbose) console.log("Gitlint");
|
|
2479
|
-
process.exitCode = argv.fix ? gitlintFix() : gitlint();
|
|
2480
|
-
}
|
|
2481
|
-
).command(
|
|
2482
|
-
"gitignore-gen",
|
|
2483
|
-
"GitIgnore Gen - Generate .gitignore files",
|
|
2484
|
-
(yargs2) => {
|
|
2485
|
-
return yargs2;
|
|
2486
|
-
},
|
|
2487
|
-
(argv) => {
|
|
2488
|
-
if (argv.verbose) console.log("GitIgnore Gen");
|
|
2489
|
-
process.exitCode = gitignoreGen();
|
|
2490
|
-
}
|
|
2491
|
-
).command(
|
|
2492
|
-
"npmignore-gen",
|
|
2493
|
-
"NpmIgnore Gen - Generate .npmignore files",
|
|
2494
|
-
(yargs2) => {
|
|
2495
|
-
return yargs2;
|
|
2496
|
-
},
|
|
2497
|
-
(argv) => {
|
|
2498
|
-
if (argv.verbose) console.log("NpmIgnore Gen");
|
|
2499
|
-
process.exitCode = npmignoreGen();
|
|
2500
|
-
}
|
|
2501
|
-
).command(
|
|
2502
|
-
"readme-gen [package]",
|
|
2503
|
-
"Readme Gen - Generate README.md files from template",
|
|
2504
|
-
(yargs2) => {
|
|
2505
|
-
return packagePositionalParam(yargs2).option("template", {
|
|
2506
|
-
alias: "t",
|
|
2507
|
-
description: "Path to README.template.md",
|
|
2508
|
-
type: "string"
|
|
2509
|
-
}).option("typedoc", {
|
|
2510
|
-
default: false,
|
|
2511
|
-
description: "Generate TypeDoc reference sections",
|
|
2512
|
-
type: "boolean"
|
|
2513
|
-
});
|
|
2514
|
-
},
|
|
2515
|
-
async (argv) => {
|
|
2516
|
-
if (argv.verbose) console.log("Readme Gen");
|
|
2517
|
-
process.exitCode = await readmeGen({
|
|
2518
|
-
pkg: argv.package,
|
|
2519
|
-
templatePath: argv.template,
|
|
2520
|
-
typedoc: argv.typedoc,
|
|
2521
|
-
verbose: !!argv.verbose
|
|
2522
|
-
});
|
|
2523
|
-
}
|
|
2524
|
-
).command(
|
|
2525
|
-
"retest",
|
|
2526
|
-
"Re-Test - Run Jest Tests with cleaned cache",
|
|
2527
|
-
(yargs2) => {
|
|
2528
|
-
return yargs2;
|
|
2529
|
-
},
|
|
2530
|
-
(argv) => {
|
|
2531
|
-
if (argv.verbose) console.log("Re-Testing");
|
|
2532
|
-
process.exitCode = retest();
|
|
2533
|
-
}
|
|
2534
|
-
).command(
|
|
2535
|
-
"test",
|
|
2536
|
-
"Test - Run Jest Tests",
|
|
2537
|
-
(yargs2) => {
|
|
2538
|
-
return yargs2;
|
|
2539
|
-
},
|
|
2540
|
-
(argv) => {
|
|
2541
|
-
if (argv.verbose) console.log("Testing");
|
|
2542
|
-
process.exitCode = test();
|
|
2543
|
-
}
|
|
2544
|
-
).command(
|
|
2545
|
-
"upplug",
|
|
2546
|
-
"UpPlug - Update Yarn Plugins",
|
|
2547
|
-
(yargs2) => {
|
|
2548
|
-
return yargs2;
|
|
2549
|
-
},
|
|
2550
|
-
(argv) => {
|
|
2551
|
-
if (argv.verbose) console.log("UpPlug");
|
|
2552
|
-
process.exitCode = updateYarnPlugins();
|
|
2553
|
-
}
|
|
2554
|
-
).command(
|
|
2555
|
-
"upyarn",
|
|
2556
|
-
"UpYarn - Update Yarn Version",
|
|
2557
|
-
(yargs2) => {
|
|
2558
|
-
return yargs2;
|
|
2559
|
-
},
|
|
2560
|
-
(argv) => {
|
|
2561
|
-
if (argv.verbose) console.log("UpYarn");
|
|
2562
|
-
process.exitCode = updateYarnVersion();
|
|
2563
|
-
}
|
|
2564
|
-
).command(
|
|
2565
|
-
"yarn3only",
|
|
2566
|
-
"Yarn3Only - Check if using Yarn v3",
|
|
2567
|
-
(yargs2) => {
|
|
2568
|
-
return yargs2;
|
|
2569
|
-
},
|
|
2570
|
-
(argv) => {
|
|
2571
|
-
if (argv.verbose) console.log("Yarn 3 Check");
|
|
2572
|
-
process.exitCode = yarn3Only();
|
|
2573
|
-
}
|
|
2574
|
-
);
|
|
2880
|
+
return args.command(claudeCommand).command(licenseCommand).command(deadCommand).command(genDocsCommand).command(cleanDocsCommand).command(gitlintCommand).command(gitignoreGenCommand).command(npmignoreGenCommand).command(readmeCommand).command(retestCommand).command(testCommand).command(upplugCommand).command(upyarnCommand).command(yarn3OnlyCommand);
|
|
2881
|
+
};
|
|
2882
|
+
|
|
2883
|
+
// src/xy/deploy/deployCommand.ts
|
|
2884
|
+
var deployCommand = {
|
|
2885
|
+
command: "deploy",
|
|
2886
|
+
describe: "Deploy - Deploy patch",
|
|
2887
|
+
handler: (argv) => {
|
|
2888
|
+
if (argv.verbose) console.log("Deploy patch");
|
|
2889
|
+
process.exitCode = deploy();
|
|
2890
|
+
}
|
|
2891
|
+
};
|
|
2892
|
+
|
|
2893
|
+
// src/xy/deploy/deployMajorCommand.ts
|
|
2894
|
+
var deployMajorCommand = {
|
|
2895
|
+
command: "deploy-major",
|
|
2896
|
+
describe: "Deploy - Deploy major",
|
|
2897
|
+
handler: (argv) => {
|
|
2898
|
+
if (argv.verbose) console.log("Deploy major");
|
|
2899
|
+
process.exitCode = deployMajor();
|
|
2900
|
+
}
|
|
2901
|
+
};
|
|
2902
|
+
|
|
2903
|
+
// src/xy/deploy/deployMinorCommand.ts
|
|
2904
|
+
var deployMinorCommand = {
|
|
2905
|
+
command: "deploy-minor",
|
|
2906
|
+
describe: "Deploy - Deploy minor",
|
|
2907
|
+
handler: (argv) => {
|
|
2908
|
+
if (argv.verbose) console.log("Deploy minor");
|
|
2909
|
+
process.exitCode = deployMinor();
|
|
2910
|
+
}
|
|
2575
2911
|
};
|
|
2576
2912
|
|
|
2577
|
-
// src/xy/
|
|
2913
|
+
// src/xy/deploy/deployNextCommand.ts
|
|
2914
|
+
var deployNextCommand = {
|
|
2915
|
+
command: "deploy-next",
|
|
2916
|
+
describe: "Deploy - Deploy next",
|
|
2917
|
+
handler: (argv) => {
|
|
2918
|
+
if (argv.verbose) console.log("Deploy next");
|
|
2919
|
+
process.exitCode = deployNext();
|
|
2920
|
+
}
|
|
2921
|
+
};
|
|
2922
|
+
|
|
2923
|
+
// src/xy/deploy/publishCommand.ts
|
|
2924
|
+
var publishCommand = {
|
|
2925
|
+
command: "publish",
|
|
2926
|
+
describe: "Publish - Publish packages to npmjs",
|
|
2927
|
+
handler: (argv) => {
|
|
2928
|
+
if (argv.verbose) console.log("Publish packages to npmjs");
|
|
2929
|
+
process.exitCode = publish();
|
|
2930
|
+
}
|
|
2931
|
+
};
|
|
2932
|
+
|
|
2933
|
+
// src/xy/deploy/index.ts
|
|
2578
2934
|
var xyDeployCommands = (args) => {
|
|
2579
|
-
return args.command(
|
|
2580
|
-
|
|
2581
|
-
|
|
2582
|
-
|
|
2583
|
-
|
|
2584
|
-
|
|
2585
|
-
|
|
2586
|
-
|
|
2587
|
-
|
|
2588
|
-
|
|
2589
|
-
)
|
|
2590
|
-
|
|
2591
|
-
|
|
2592
|
-
(yargs2) => {
|
|
2593
|
-
return yargs2;
|
|
2594
|
-
},
|
|
2595
|
-
(argv) => {
|
|
2596
|
-
if (argv.verbose) console.log("Deploy minor");
|
|
2597
|
-
process.exitCode = deployMinor();
|
|
2598
|
-
}
|
|
2599
|
-
).command(
|
|
2600
|
-
"deploy-major",
|
|
2601
|
-
"Deploy - Deploy major",
|
|
2602
|
-
(yargs2) => {
|
|
2603
|
-
return yargs2;
|
|
2604
|
-
},
|
|
2605
|
-
(argv) => {
|
|
2606
|
-
if (argv.verbose) console.log("Deploy major");
|
|
2607
|
-
process.exitCode = deployMajor();
|
|
2608
|
-
}
|
|
2609
|
-
).command(
|
|
2610
|
-
"deploy-next",
|
|
2611
|
-
"Deploy - Deploy next",
|
|
2612
|
-
(yargs2) => {
|
|
2613
|
-
return yargs2;
|
|
2614
|
-
},
|
|
2615
|
-
(argv) => {
|
|
2616
|
-
if (argv.verbose) console.log("Deploy next");
|
|
2617
|
-
process.exitCode = deployNext();
|
|
2618
|
-
}
|
|
2619
|
-
).command(
|
|
2620
|
-
"publish",
|
|
2621
|
-
"Publish - Publish packages to npmjs",
|
|
2622
|
-
(yargs2) => {
|
|
2623
|
-
return yargs2;
|
|
2624
|
-
},
|
|
2625
|
-
(argv) => {
|
|
2626
|
-
if (argv.verbose) console.log("Publish packages to npmjs");
|
|
2627
|
-
process.exitCode = publish();
|
|
2935
|
+
return args.command(deployCommand).command(deployMinorCommand).command(deployMajorCommand).command(deployNextCommand).command(publishCommand);
|
|
2936
|
+
};
|
|
2937
|
+
|
|
2938
|
+
// src/xy/install/cleanCommand.ts
|
|
2939
|
+
var cleanCommand = {
|
|
2940
|
+
command: "clean [package]",
|
|
2941
|
+
describe: "Clean",
|
|
2942
|
+
builder: (yargs2) => {
|
|
2943
|
+
return yargs2.positional("package", { describe: "Specific package to clean" });
|
|
2944
|
+
},
|
|
2945
|
+
handler: async (argv) => {
|
|
2946
|
+
if (argv.verbose) {
|
|
2947
|
+
console.log(`Cleaning: ${argv.package ?? "all"}`);
|
|
2628
2948
|
}
|
|
2629
|
-
|
|
2949
|
+
process.exitCode = await clean({
|
|
2950
|
+
pkg: argv.package,
|
|
2951
|
+
verbose: !!argv.verbose
|
|
2952
|
+
});
|
|
2953
|
+
}
|
|
2954
|
+
};
|
|
2955
|
+
|
|
2956
|
+
// src/xy/install/dupdepsCommand.ts
|
|
2957
|
+
var dupdepsCommand = {
|
|
2958
|
+
command: "dupdeps",
|
|
2959
|
+
describe: "Dupdeps - Duplicate Dependencies in package.json",
|
|
2960
|
+
handler: (argv) => {
|
|
2961
|
+
if (argv.verbose) console.log("Dupdeps");
|
|
2962
|
+
process.exitCode = dupdeps();
|
|
2963
|
+
}
|
|
2964
|
+
};
|
|
2965
|
+
|
|
2966
|
+
// src/xy/install/reinstallCommand.ts
|
|
2967
|
+
var reinstallCommand = {
|
|
2968
|
+
command: "reinstall",
|
|
2969
|
+
describe: "Reinstall - Clean & Install",
|
|
2970
|
+
handler: (argv) => {
|
|
2971
|
+
if (argv.verbose) console.log("Reinstalling");
|
|
2972
|
+
process.exitCode = reinstall();
|
|
2973
|
+
}
|
|
2974
|
+
};
|
|
2975
|
+
|
|
2976
|
+
// src/xy/install/staticsCommand.ts
|
|
2977
|
+
var staticsCommand = {
|
|
2978
|
+
command: "statics",
|
|
2979
|
+
describe: "Statics - Confirming Static Packages",
|
|
2980
|
+
handler: (argv) => {
|
|
2981
|
+
if (argv.verbose) console.log("Statics");
|
|
2982
|
+
process.exitCode = statics();
|
|
2983
|
+
}
|
|
2984
|
+
};
|
|
2985
|
+
|
|
2986
|
+
// src/xy/install/upCommand.ts
|
|
2987
|
+
var upCommand = {
|
|
2988
|
+
command: "up",
|
|
2989
|
+
describe: "Up - Update dependencies",
|
|
2990
|
+
handler: (argv) => {
|
|
2991
|
+
if (argv.verbose) console.log("Up");
|
|
2992
|
+
process.exitCode = up();
|
|
2993
|
+
}
|
|
2630
2994
|
};
|
|
2631
2995
|
|
|
2632
|
-
// src/xy/
|
|
2996
|
+
// src/xy/install/updoCommand.ts
|
|
2997
|
+
var updoCommand = {
|
|
2998
|
+
command: "updo",
|
|
2999
|
+
describe: "Updo - Update dependencies [Interactive]",
|
|
3000
|
+
handler: (argv) => {
|
|
3001
|
+
if (argv.verbose) console.log("Updo");
|
|
3002
|
+
process.exitCode = updo();
|
|
3003
|
+
}
|
|
3004
|
+
};
|
|
3005
|
+
|
|
3006
|
+
// src/xy/install/index.ts
|
|
2633
3007
|
var xyInstallCommands = (args) => {
|
|
2634
|
-
return args.command(
|
|
2635
|
-
"clean [package]",
|
|
2636
|
-
"Clean",
|
|
2637
|
-
(yargs2) => {
|
|
2638
|
-
return yargs2.positional("package", { describe: "Specific package to clean" });
|
|
2639
|
-
},
|
|
2640
|
-
async (argv) => {
|
|
2641
|
-
if (argv.verbose) {
|
|
2642
|
-
console.log(`Cleaning: ${argv.package ?? "all"}`);
|
|
2643
|
-
}
|
|
2644
|
-
process.exitCode = await clean({
|
|
2645
|
-
pkg: argv.package,
|
|
2646
|
-
verbose: !!argv.verbose
|
|
2647
|
-
});
|
|
2648
|
-
}
|
|
2649
|
-
).command(
|
|
2650
|
-
"reinstall",
|
|
2651
|
-
"Reinstall - Clean & Install",
|
|
2652
|
-
(yargs2) => {
|
|
2653
|
-
return yargs2;
|
|
2654
|
-
},
|
|
2655
|
-
(argv) => {
|
|
2656
|
-
if (argv.verbose) console.log("Reinstalling");
|
|
2657
|
-
process.exitCode = reinstall();
|
|
2658
|
-
}
|
|
2659
|
-
).command(
|
|
2660
|
-
"up",
|
|
2661
|
-
"Up - Update dependencies",
|
|
2662
|
-
(yargs2) => {
|
|
2663
|
-
return yargs2;
|
|
2664
|
-
},
|
|
2665
|
-
(argv) => {
|
|
2666
|
-
if (argv.verbose) console.log("Up");
|
|
2667
|
-
process.exitCode = up();
|
|
2668
|
-
}
|
|
2669
|
-
).command(
|
|
2670
|
-
"updo",
|
|
2671
|
-
"Updo - Update dependencies [Interactive]",
|
|
2672
|
-
(yargs2) => {
|
|
2673
|
-
return yargs2;
|
|
2674
|
-
},
|
|
2675
|
-
(argv) => {
|
|
2676
|
-
if (argv.verbose) console.log("Updo");
|
|
2677
|
-
process.exitCode = updo();
|
|
2678
|
-
}
|
|
2679
|
-
).command(
|
|
2680
|
-
"statics",
|
|
2681
|
-
"Statics - Confirming Static Packages",
|
|
2682
|
-
(yargs2) => {
|
|
2683
|
-
return yargs2;
|
|
2684
|
-
},
|
|
2685
|
-
(argv) => {
|
|
2686
|
-
if (argv.verbose) console.log("Statics");
|
|
2687
|
-
process.exitCode = statics();
|
|
2688
|
-
}
|
|
2689
|
-
).command(
|
|
2690
|
-
"dupdeps",
|
|
2691
|
-
"Dupdeps - Duplicate Dependencies in package.json",
|
|
2692
|
-
(yargs2) => {
|
|
2693
|
-
return yargs2;
|
|
2694
|
-
},
|
|
2695
|
-
(argv) => {
|
|
2696
|
-
if (argv.verbose) console.log("Dupdeps");
|
|
2697
|
-
process.exitCode = dupdeps();
|
|
2698
|
-
}
|
|
2699
|
-
);
|
|
3008
|
+
return args.command(cleanCommand).command(reinstallCommand).command(upCommand).command(updoCommand).command(staticsCommand).command(dupdepsCommand);
|
|
2700
3009
|
};
|
|
2701
3010
|
|
|
2702
|
-
// src/xy/
|
|
2703
|
-
import
|
|
3011
|
+
// src/xy/lint/cycleCommand.ts
|
|
3012
|
+
import chalk31 from "chalk";
|
|
3013
|
+
var cycleCommand = {
|
|
3014
|
+
command: "cycle [package]",
|
|
3015
|
+
describe: "Cycle - Check for dependency cycles",
|
|
3016
|
+
builder: (yargs2) => {
|
|
3017
|
+
return packagePositionalParam(yargs2);
|
|
3018
|
+
},
|
|
3019
|
+
handler: async (argv) => {
|
|
3020
|
+
const start = Date.now();
|
|
3021
|
+
if (argv.verbose) console.log("Cycle");
|
|
3022
|
+
process.exitCode = await cycle({ pkg: argv.package });
|
|
3023
|
+
console.log(chalk31.blue(`Finished in ${Date.now() - start}ms`));
|
|
3024
|
+
}
|
|
3025
|
+
};
|
|
3026
|
+
|
|
3027
|
+
// src/xy/lint/deplintCommand.ts
|
|
3028
|
+
import chalk32 from "chalk";
|
|
3029
|
+
var deplintCommand = {
|
|
3030
|
+
command: "deplint [package]",
|
|
3031
|
+
describe: "Deplint - Run Deplint",
|
|
3032
|
+
builder: (yargs2) => {
|
|
3033
|
+
return packagePositionalParam(yargs2).option("deps", {
|
|
3034
|
+
alias: "d",
|
|
3035
|
+
default: false,
|
|
3036
|
+
description: "Check dependencies",
|
|
3037
|
+
type: "boolean"
|
|
3038
|
+
}).option("devDeps", {
|
|
3039
|
+
alias: "v",
|
|
3040
|
+
default: false,
|
|
3041
|
+
description: "Check devDependencies",
|
|
3042
|
+
type: "boolean"
|
|
3043
|
+
}).option("peerDeps", {
|
|
3044
|
+
alias: "p",
|
|
3045
|
+
default: false,
|
|
3046
|
+
description: "Check peerDependencies",
|
|
3047
|
+
type: "boolean"
|
|
3048
|
+
}).option("exclude", {
|
|
3049
|
+
alias: "e",
|
|
3050
|
+
description: "Package names to exclude from unused checks (comma-separated or repeated)",
|
|
3051
|
+
type: "array"
|
|
3052
|
+
});
|
|
3053
|
+
},
|
|
3054
|
+
handler: async (argv) => {
|
|
3055
|
+
if (argv.verbose) console.log("Deplint");
|
|
3056
|
+
const start = Date.now();
|
|
3057
|
+
const cliExclude = argv.exclude?.flatMap((v) => String(v).split(",")).map((v) => v.trim()).filter(Boolean);
|
|
3058
|
+
process.exitCode = await deplint({
|
|
3059
|
+
cliExclude,
|
|
3060
|
+
pkg: argv.package,
|
|
3061
|
+
deps: !!argv.deps,
|
|
3062
|
+
devDeps: !!argv.devDeps,
|
|
3063
|
+
peerDeps: !!argv.peerDeps,
|
|
3064
|
+
verbose: !!argv.verbose
|
|
3065
|
+
});
|
|
3066
|
+
console.log(chalk32.blue(`Finished in ${Date.now() - start}ms`));
|
|
3067
|
+
}
|
|
3068
|
+
};
|
|
3069
|
+
|
|
3070
|
+
// src/xy/lint/fixCommand.ts
|
|
3071
|
+
import chalk33 from "chalk";
|
|
3072
|
+
var fixCommand = {
|
|
3073
|
+
command: "fix [package]",
|
|
3074
|
+
describe: "Fix - Run Eslint w/fix",
|
|
3075
|
+
builder: (yargs2) => {
|
|
3076
|
+
return packagePositionalParam(yargs2);
|
|
3077
|
+
},
|
|
3078
|
+
handler: (argv) => {
|
|
3079
|
+
const start = Date.now();
|
|
3080
|
+
if (argv.verbose) console.log("Fix");
|
|
3081
|
+
process.exitCode = fix();
|
|
3082
|
+
console.log(chalk33.blue(`Finished in ${Date.now() - start}ms`));
|
|
3083
|
+
}
|
|
3084
|
+
};
|
|
3085
|
+
|
|
3086
|
+
// src/xy/lint/knipCommand.ts
|
|
3087
|
+
import chalk34 from "chalk";
|
|
3088
|
+
var knipCommand = {
|
|
3089
|
+
command: "knip",
|
|
3090
|
+
describe: "Knip - Run Knip",
|
|
3091
|
+
builder: (yargs2) => {
|
|
3092
|
+
return packagePositionalParam(yargs2);
|
|
3093
|
+
},
|
|
3094
|
+
handler: (argv) => {
|
|
3095
|
+
if (argv.verbose) console.log("Knip");
|
|
3096
|
+
const start = Date.now();
|
|
3097
|
+
process.exitCode = knip();
|
|
3098
|
+
console.log(chalk34.blue(`Knip finished in ${Date.now() - start}ms`));
|
|
3099
|
+
}
|
|
3100
|
+
};
|
|
3101
|
+
|
|
3102
|
+
// src/xy/lint/lintCommand.ts
|
|
3103
|
+
import chalk35 from "chalk";
|
|
3104
|
+
var lintCommand = {
|
|
3105
|
+
command: "lint [package]",
|
|
3106
|
+
describe: "Lint - Run Eslint",
|
|
3107
|
+
builder: (yargs2) => {
|
|
3108
|
+
return packagePositionalParam(yargs2).option("fix", {
|
|
3109
|
+
alias: "f",
|
|
3110
|
+
default: false,
|
|
3111
|
+
description: "Fix fixable issues",
|
|
3112
|
+
type: "boolean"
|
|
3113
|
+
}).option("cache", {
|
|
3114
|
+
alias: "c",
|
|
3115
|
+
default: false,
|
|
3116
|
+
description: "Use caching for performance",
|
|
3117
|
+
type: "boolean"
|
|
3118
|
+
});
|
|
3119
|
+
},
|
|
3120
|
+
handler: (argv) => {
|
|
3121
|
+
if (argv.verbose) console.log("Lint");
|
|
3122
|
+
const start = Date.now();
|
|
3123
|
+
process.exitCode = argv.fix ? fix({
|
|
3124
|
+
pkg: argv.package,
|
|
3125
|
+
cache: argv.cache,
|
|
3126
|
+
verbose: !!argv.verbose
|
|
3127
|
+
}) : lint({
|
|
3128
|
+
pkg: argv.package,
|
|
3129
|
+
cache: argv.cache,
|
|
3130
|
+
verbose: !!argv.verbose
|
|
3131
|
+
});
|
|
3132
|
+
console.log(chalk35.blue(`Finished in ${Date.now() - start}ms`));
|
|
3133
|
+
}
|
|
3134
|
+
};
|
|
3135
|
+
|
|
3136
|
+
// src/xy/lint/publintCommand.ts
|
|
3137
|
+
import chalk36 from "chalk";
|
|
3138
|
+
var publintCommand = {
|
|
3139
|
+
command: "publint [package]",
|
|
3140
|
+
describe: "Publint - Run Publint",
|
|
3141
|
+
builder: (yargs2) => {
|
|
3142
|
+
return packagePositionalParam(yargs2);
|
|
3143
|
+
},
|
|
3144
|
+
handler: async (argv) => {
|
|
3145
|
+
if (argv.verbose) console.log("Publint");
|
|
3146
|
+
const start = Date.now();
|
|
3147
|
+
process.exitCode = await publint({ pkg: argv.package, verbose: !!argv.verbose });
|
|
3148
|
+
console.log(chalk36.blue(`Finished in ${Date.now() - start}ms`));
|
|
3149
|
+
}
|
|
3150
|
+
};
|
|
3151
|
+
|
|
3152
|
+
// src/xy/lint/relintCommand.ts
|
|
3153
|
+
import chalk37 from "chalk";
|
|
3154
|
+
var relintCommand = {
|
|
3155
|
+
command: "relint [package]",
|
|
3156
|
+
describe: "Relint - Clean & Lint",
|
|
3157
|
+
builder: (yargs2) => {
|
|
3158
|
+
return packagePositionalParam(yargs2);
|
|
3159
|
+
},
|
|
3160
|
+
handler: (argv) => {
|
|
3161
|
+
if (argv.verbose) console.log("Relinting");
|
|
3162
|
+
const start = Date.now();
|
|
3163
|
+
process.exitCode = relint();
|
|
3164
|
+
console.log(chalk37.blue(`Finished in ${Date.now() - start}ms`));
|
|
3165
|
+
}
|
|
3166
|
+
};
|
|
3167
|
+
|
|
3168
|
+
// src/xy/lint/sonarCommand.ts
|
|
3169
|
+
import chalk38 from "chalk";
|
|
3170
|
+
var sonarCommand = {
|
|
3171
|
+
command: "sonar",
|
|
3172
|
+
describe: "Sonar - Run Sonar Check",
|
|
3173
|
+
builder: (yargs2) => {
|
|
3174
|
+
return packagePositionalParam(yargs2);
|
|
3175
|
+
},
|
|
3176
|
+
handler: (argv) => {
|
|
3177
|
+
const start = Date.now();
|
|
3178
|
+
if (argv.verbose) console.log("Sonar Check");
|
|
3179
|
+
process.exitCode = sonar();
|
|
3180
|
+
console.log(chalk38.blue(`Finished in ${Date.now() - start}ms`));
|
|
3181
|
+
}
|
|
3182
|
+
};
|
|
3183
|
+
|
|
3184
|
+
// src/xy/lint/index.ts
|
|
2704
3185
|
var xyLintCommands = (args) => {
|
|
2705
|
-
return args.command(
|
|
2706
|
-
"cycle [package]",
|
|
2707
|
-
"Cycle - Check for dependency cycles",
|
|
2708
|
-
(yargs2) => {
|
|
2709
|
-
return packagePositionalParam(yargs2);
|
|
2710
|
-
},
|
|
2711
|
-
async (argv) => {
|
|
2712
|
-
const start = Date.now();
|
|
2713
|
-
if (argv.verbose) console.log("Cycle");
|
|
2714
|
-
process.exitCode = await cycle({ pkg: argv.package });
|
|
2715
|
-
console.log(chalk30.blue(`Finished in ${Date.now() - start}ms`));
|
|
2716
|
-
}
|
|
2717
|
-
).command(
|
|
2718
|
-
"lint [package]",
|
|
2719
|
-
"Lint - Run Eslint",
|
|
2720
|
-
(yargs2) => {
|
|
2721
|
-
return packagePositionalParam(yargs2).option("fix", {
|
|
2722
|
-
alias: "f",
|
|
2723
|
-
default: false,
|
|
2724
|
-
description: "Fix fixable issues",
|
|
2725
|
-
type: "boolean"
|
|
2726
|
-
}).option("cache", {
|
|
2727
|
-
alias: "c",
|
|
2728
|
-
default: false,
|
|
2729
|
-
description: "Use caching for performance",
|
|
2730
|
-
type: "boolean"
|
|
2731
|
-
});
|
|
2732
|
-
},
|
|
2733
|
-
(argv) => {
|
|
2734
|
-
if (argv.verbose) console.log("Lint");
|
|
2735
|
-
const start = Date.now();
|
|
2736
|
-
process.exitCode = argv.fix ? fix({
|
|
2737
|
-
pkg: argv.package,
|
|
2738
|
-
cache: argv.cache,
|
|
2739
|
-
verbose: !!argv.verbose
|
|
2740
|
-
}) : lint({
|
|
2741
|
-
pkg: argv.package,
|
|
2742
|
-
cache: argv.cache,
|
|
2743
|
-
verbose: !!argv.verbose
|
|
2744
|
-
});
|
|
2745
|
-
console.log(chalk30.blue(`Finished in ${Date.now() - start}ms`));
|
|
2746
|
-
}
|
|
2747
|
-
).command(
|
|
2748
|
-
"deplint [package]",
|
|
2749
|
-
"Deplint - Run Deplint",
|
|
2750
|
-
(yargs2) => {
|
|
2751
|
-
return packagePositionalParam(yargs2).option("deps", {
|
|
2752
|
-
alias: "d",
|
|
2753
|
-
default: false,
|
|
2754
|
-
description: "Check dependencies",
|
|
2755
|
-
type: "boolean"
|
|
2756
|
-
}).option("devDeps", {
|
|
2757
|
-
alias: "v",
|
|
2758
|
-
default: false,
|
|
2759
|
-
description: "Check devDependencies",
|
|
2760
|
-
type: "boolean"
|
|
2761
|
-
}).option("peerDeps", {
|
|
2762
|
-
alias: "p",
|
|
2763
|
-
default: false,
|
|
2764
|
-
description: "Check peerDependencies",
|
|
2765
|
-
type: "boolean"
|
|
2766
|
-
}).option("exclude", {
|
|
2767
|
-
alias: "e",
|
|
2768
|
-
description: "Package names to exclude from unused checks (comma-separated or repeated)",
|
|
2769
|
-
type: "array"
|
|
2770
|
-
});
|
|
2771
|
-
},
|
|
2772
|
-
async (argv) => {
|
|
2773
|
-
if (argv.verbose) console.log("Deplint");
|
|
2774
|
-
const start = Date.now();
|
|
2775
|
-
const cliExclude = argv.exclude?.flatMap((v) => String(v).split(",")).map((v) => v.trim()).filter(Boolean);
|
|
2776
|
-
process.exitCode = await deplint({
|
|
2777
|
-
cliExclude,
|
|
2778
|
-
pkg: argv.package,
|
|
2779
|
-
deps: !!argv.deps,
|
|
2780
|
-
devDeps: !!argv.devDeps,
|
|
2781
|
-
peerDeps: !!argv.peerDeps,
|
|
2782
|
-
verbose: !!argv.verbose
|
|
2783
|
-
});
|
|
2784
|
-
console.log(chalk30.blue(`Finished in ${Date.now() - start}ms`));
|
|
2785
|
-
}
|
|
2786
|
-
).command(
|
|
2787
|
-
"fix [package]",
|
|
2788
|
-
"Fix - Run Eslint w/fix",
|
|
2789
|
-
(yargs2) => {
|
|
2790
|
-
return packagePositionalParam(yargs2);
|
|
2791
|
-
},
|
|
2792
|
-
(argv) => {
|
|
2793
|
-
const start = Date.now();
|
|
2794
|
-
if (argv.verbose) console.log("Fix");
|
|
2795
|
-
process.exitCode = fix();
|
|
2796
|
-
console.log(chalk30.blue(`Finished in ${Date.now() - start}ms`));
|
|
2797
|
-
}
|
|
2798
|
-
).command(
|
|
2799
|
-
"relint [package]",
|
|
2800
|
-
"Relint - Clean & Lint",
|
|
2801
|
-
(yargs2) => {
|
|
2802
|
-
return packagePositionalParam(yargs2);
|
|
2803
|
-
},
|
|
2804
|
-
(argv) => {
|
|
2805
|
-
if (argv.verbose) console.log("Relinting");
|
|
2806
|
-
const start = Date.now();
|
|
2807
|
-
process.exitCode = relint();
|
|
2808
|
-
console.log(chalk30.blue(`Finished in ${Date.now() - start}ms`));
|
|
2809
|
-
}
|
|
2810
|
-
).command(
|
|
2811
|
-
"publint [package]",
|
|
2812
|
-
"Publint - Run Publint",
|
|
2813
|
-
(yargs2) => {
|
|
2814
|
-
return packagePositionalParam(yargs2);
|
|
2815
|
-
},
|
|
2816
|
-
async (argv) => {
|
|
2817
|
-
if (argv.verbose) console.log("Publint");
|
|
2818
|
-
const start = Date.now();
|
|
2819
|
-
process.exitCode = await publint({ pkg: argv.package, verbose: !!argv.verbose });
|
|
2820
|
-
console.log(chalk30.blue(`Finished in ${Date.now() - start}ms`));
|
|
2821
|
-
}
|
|
2822
|
-
).command(
|
|
2823
|
-
"knip",
|
|
2824
|
-
"Knip - Run Knip",
|
|
2825
|
-
(yargs2) => {
|
|
2826
|
-
return packagePositionalParam(yargs2);
|
|
2827
|
-
},
|
|
2828
|
-
(argv) => {
|
|
2829
|
-
if (argv.verbose) console.log("Knip");
|
|
2830
|
-
const start = Date.now();
|
|
2831
|
-
process.exitCode = knip();
|
|
2832
|
-
console.log(chalk30.blue(`Knip finished in ${Date.now() - start}ms`));
|
|
2833
|
-
}
|
|
2834
|
-
).command(
|
|
2835
|
-
"sonar",
|
|
2836
|
-
"Sonar - Run Sonar Check",
|
|
2837
|
-
(yargs2) => {
|
|
2838
|
-
return packagePositionalParam(yargs2);
|
|
2839
|
-
},
|
|
2840
|
-
(argv) => {
|
|
2841
|
-
const start = Date.now();
|
|
2842
|
-
if (argv.verbose) console.log("Sonar Check");
|
|
2843
|
-
process.exitCode = sonar();
|
|
2844
|
-
console.log(chalk30.blue(`Finished in ${Date.now() - start}ms`));
|
|
2845
|
-
}
|
|
2846
|
-
);
|
|
3186
|
+
return args.command(cycleCommand).command(lintCommand).command(deplintCommand).command(fixCommand).command(relintCommand).command(publintCommand).command(knipCommand).command(sonarCommand);
|
|
2847
3187
|
};
|
|
2848
3188
|
|
|
2849
3189
|
// src/xy/xyParseOptions.ts
|
|
@@ -2877,8 +3217,8 @@ var xyParseOptions = () => {
|
|
|
2877
3217
|
var xy = async () => {
|
|
2878
3218
|
const options = xyParseOptions();
|
|
2879
3219
|
return await xyBuildCommands(xyCommonCommands(xyInstallCommands(xyDeployCommands(xyLintCommands(options))))).demandCommand(1).command("*", "", () => {
|
|
2880
|
-
console.error(
|
|
2881
|
-
console.log(
|
|
3220
|
+
console.error(chalk39.yellow(`Command not found [${chalk39.magenta(process.argv[2])}]`));
|
|
3221
|
+
console.log(chalk39.gray("Try 'yarn xy --help' for list of commands"));
|
|
2882
3222
|
}).version().help().argv;
|
|
2883
3223
|
};
|
|
2884
3224
|
export {
|