uilint 0.2.45 → 0.2.47
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/{chunk-KNZVCCXM.js → chunk-5536ROOI.js} +3 -3
- package/dist/{chunk-KNZVCCXM.js.map → chunk-5536ROOI.js.map} +1 -1
- package/dist/{chunk-TWUDB36F.js → chunk-VSBVUS56.js} +3 -3
- package/dist/chunk-VSBVUS56.js.map +1 -0
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/{install-ui-5KY5YGLX.js → init-ui-RQKFF33G.js} +31 -31
- package/dist/init-ui-RQKFF33G.js.map +1 -0
- package/dist/{plan-N453UW4O.js → plan-ZWGKTWQ3.js} +3 -3
- package/dist/plan-ZWGKTWQ3.js.map +1 -0
- package/package.json +5 -5
- package/skills/ui-consistency-enforcer/references/REGISTRY-ENTRY.md +2 -2
- package/dist/chunk-TWUDB36F.js.map +0 -1
- package/dist/install-ui-5KY5YGLX.js.map +0 -1
- package/dist/plan-N453UW4O.js.map +0 -1
|
@@ -9,12 +9,12 @@ import {
|
|
|
9
9
|
injectCoverageConfig,
|
|
10
10
|
installEslintPlugin,
|
|
11
11
|
uninstallEslintPlugin
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-5536ROOI.js";
|
|
13
13
|
import {
|
|
14
14
|
GENSTYLEGUIDE_COMMAND_MD,
|
|
15
15
|
loadSkill,
|
|
16
16
|
toInstallSpecifier
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-VSBVUS56.js";
|
|
18
18
|
import {
|
|
19
19
|
updateManifestRule
|
|
20
20
|
} from "./chunk-ZDSDZNIB.js";
|
|
@@ -33,14 +33,14 @@ import {
|
|
|
33
33
|
runTestsWithCoverage
|
|
34
34
|
} from "./chunk-JPE27ROY.js";
|
|
35
35
|
|
|
36
|
-
// src/commands/
|
|
36
|
+
// src/commands/init-ui.tsx
|
|
37
37
|
import { render } from "ink";
|
|
38
38
|
|
|
39
|
-
// src/commands/
|
|
39
|
+
// src/commands/init/components/InstallApp.tsx
|
|
40
40
|
import { useState as useState7, useEffect as useEffect2 } from "react";
|
|
41
41
|
import { Box as Box6, Text as Text7, useApp as useApp5, useInput as useInput6 } from "ink";
|
|
42
42
|
|
|
43
|
-
// src/commands/
|
|
43
|
+
// src/commands/init/components/Spinner.tsx
|
|
44
44
|
import { useState, useEffect } from "react";
|
|
45
45
|
import { Text } from "ink";
|
|
46
46
|
import { jsx } from "react/jsx-runtime";
|
|
@@ -58,7 +58,7 @@ function Spinner() {
|
|
|
58
58
|
return /* @__PURE__ */ jsx(Text, { color: "cyan", children: frames[frame] });
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
-
// src/commands/
|
|
61
|
+
// src/commands/init/components/ProjectSelector.tsx
|
|
62
62
|
import { useState as useState2 } from "react";
|
|
63
63
|
import { Box, Text as Text2, useInput, useApp } from "ink";
|
|
64
64
|
import { jsx as jsx2, jsxs } from "react/jsx-runtime";
|
|
@@ -151,7 +151,7 @@ function ProjectSelector({
|
|
|
151
151
|
] });
|
|
152
152
|
}
|
|
153
153
|
|
|
154
|
-
// src/commands/
|
|
154
|
+
// src/commands/init/components/MultiSelect.tsx
|
|
155
155
|
import { useState as useState3, useCallback } from "react";
|
|
156
156
|
import { Box as Box2, Text as Text3, useInput as useInput2, useApp as useApp2 } from "ink";
|
|
157
157
|
import { Fragment, jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
@@ -321,12 +321,12 @@ function ConfigSelector({
|
|
|
321
321
|
] });
|
|
322
322
|
}
|
|
323
323
|
|
|
324
|
-
// src/commands/
|
|
324
|
+
// src/commands/init/components/RuleSelector.tsx
|
|
325
325
|
import { useState as useState5, useMemo } from "react";
|
|
326
326
|
import { Box as Box4, Text as Text5, useInput as useInput4, useApp as useApp3 } from "ink";
|
|
327
327
|
import { getRulesByCategory, getCategoryMeta } from "uilint-eslint";
|
|
328
328
|
|
|
329
|
-
// src/commands/
|
|
329
|
+
// src/commands/init/components/OptionField.tsx
|
|
330
330
|
import { useState as useState4 } from "react";
|
|
331
331
|
import { Box as Box3, Text as Text4, useInput as useInput3 } from "ink";
|
|
332
332
|
import { jsx as jsx4, jsxs as jsxs3 } from "react/jsx-runtime";
|
|
@@ -577,7 +577,7 @@ function convertFieldValue(value, field, defaultValue) {
|
|
|
577
577
|
return value;
|
|
578
578
|
}
|
|
579
579
|
|
|
580
|
-
// src/commands/
|
|
580
|
+
// src/commands/init/components/RuleSelector.tsx
|
|
581
581
|
import { Fragment as Fragment2, jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
582
582
|
function SeverityBadge({ severity }) {
|
|
583
583
|
if (severity === "error") {
|
|
@@ -1018,7 +1018,7 @@ function RuleSelector({
|
|
|
1018
1018
|
] });
|
|
1019
1019
|
}
|
|
1020
1020
|
|
|
1021
|
-
// src/commands/
|
|
1021
|
+
// src/commands/init/components/InjectionPointSelector.tsx
|
|
1022
1022
|
import { useState as useState6 } from "react";
|
|
1023
1023
|
import { Box as Box5, Text as Text6, useInput as useInput5, useApp as useApp4 } from "ink";
|
|
1024
1024
|
import { jsx as jsx6, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
@@ -1081,7 +1081,7 @@ function InjectionPointSelector({
|
|
|
1081
1081
|
] });
|
|
1082
1082
|
}
|
|
1083
1083
|
|
|
1084
|
-
// src/commands/
|
|
1084
|
+
// src/commands/init/installers/registry.ts
|
|
1085
1085
|
var installers = [];
|
|
1086
1086
|
function registerInstaller(installer) {
|
|
1087
1087
|
if (installers.some((i) => i.id === installer.id)) {
|
|
@@ -1240,7 +1240,7 @@ function providersFileExists(projectPath, appRoot) {
|
|
|
1240
1240
|
return null;
|
|
1241
1241
|
}
|
|
1242
1242
|
|
|
1243
|
-
// src/commands/
|
|
1243
|
+
// src/commands/init/installers/next-overlay.ts
|
|
1244
1244
|
function getInjectionPoints(projectPath, appRoot) {
|
|
1245
1245
|
const points = [];
|
|
1246
1246
|
const traceResult = traceClientBoundaries(projectPath, appRoot);
|
|
@@ -1439,7 +1439,7 @@ var nextOverlayInstaller = {
|
|
|
1439
1439
|
}
|
|
1440
1440
|
};
|
|
1441
1441
|
|
|
1442
|
-
// src/commands/
|
|
1442
|
+
// src/commands/init/components/InstallApp.tsx
|
|
1443
1443
|
import { jsx as jsx7, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
1444
1444
|
function getTargetStatus(target) {
|
|
1445
1445
|
if (!target.isInstalled) {
|
|
@@ -1846,7 +1846,7 @@ function InstallApp({
|
|
|
1846
1846
|
] });
|
|
1847
1847
|
}
|
|
1848
1848
|
|
|
1849
|
-
// src/commands/
|
|
1849
|
+
// src/commands/init/analyze.ts
|
|
1850
1850
|
import { existsSync as existsSync4, readFileSync as readFileSync4 } from "fs";
|
|
1851
1851
|
import { join as join4 } from "path";
|
|
1852
1852
|
import { findWorkspaceRoot } from "uilint-core/node";
|
|
@@ -2092,7 +2092,7 @@ function findPackages(rootDir, options) {
|
|
|
2092
2092
|
});
|
|
2093
2093
|
}
|
|
2094
2094
|
|
|
2095
|
-
// src/commands/
|
|
2095
|
+
// src/commands/init/analyze.ts
|
|
2096
2096
|
function safeParseJson(filePath) {
|
|
2097
2097
|
try {
|
|
2098
2098
|
const content = readFileSync4(filePath, "utf-8");
|
|
@@ -2201,7 +2201,7 @@ async function analyze(projectPath = process.cwd()) {
|
|
|
2201
2201
|
};
|
|
2202
2202
|
}
|
|
2203
2203
|
|
|
2204
|
-
// src/commands/
|
|
2204
|
+
// src/commands/init/execute.ts
|
|
2205
2205
|
import {
|
|
2206
2206
|
existsSync as existsSync11,
|
|
2207
2207
|
mkdirSync,
|
|
@@ -3777,7 +3777,7 @@ function touchFiles(filePaths) {
|
|
|
3777
3777
|
}
|
|
3778
3778
|
}
|
|
3779
3779
|
|
|
3780
|
-
// src/commands/
|
|
3780
|
+
// src/commands/init/execute.ts
|
|
3781
3781
|
import { findWorkspaceRoot as findWorkspaceRoot2 } from "uilint-core/node";
|
|
3782
3782
|
|
|
3783
3783
|
// src/utils/tsconfig-inject.ts
|
|
@@ -3807,7 +3807,7 @@ function injectTsconfigExclusion(projectPath) {
|
|
|
3807
3807
|
}
|
|
3808
3808
|
}
|
|
3809
3809
|
|
|
3810
|
-
// src/commands/
|
|
3810
|
+
// src/commands/init/execute.ts
|
|
3811
3811
|
async function executeAction(action, options) {
|
|
3812
3812
|
const { dryRun = false } = options;
|
|
3813
3813
|
try {
|
|
@@ -4510,10 +4510,10 @@ async function execute(plan, options = {}) {
|
|
|
4510
4510
|
};
|
|
4511
4511
|
}
|
|
4512
4512
|
|
|
4513
|
-
// src/commands/
|
|
4513
|
+
// src/commands/init-ui.tsx
|
|
4514
4514
|
import { ruleRegistry as ruleRegistry2 } from "uilint-eslint";
|
|
4515
4515
|
|
|
4516
|
-
// src/commands/
|
|
4516
|
+
// src/commands/init/installers/genstyleguide.ts
|
|
4517
4517
|
import { join as join12 } from "path";
|
|
4518
4518
|
var genstyleguideInstaller = {
|
|
4519
4519
|
id: "genstyleguide",
|
|
@@ -4588,7 +4588,7 @@ var genstyleguideInstaller = {
|
|
|
4588
4588
|
}
|
|
4589
4589
|
};
|
|
4590
4590
|
|
|
4591
|
-
// src/commands/
|
|
4591
|
+
// src/commands/init/installers/skill.ts
|
|
4592
4592
|
import { existsSync as existsSync12 } from "fs";
|
|
4593
4593
|
import { join as join13 } from "path";
|
|
4594
4594
|
var skillInstaller = {
|
|
@@ -4700,7 +4700,7 @@ var skillInstaller = {
|
|
|
4700
4700
|
}
|
|
4701
4701
|
};
|
|
4702
4702
|
|
|
4703
|
-
// src/commands/
|
|
4703
|
+
// src/commands/init/installers/eslint.ts
|
|
4704
4704
|
import { join as join14 } from "path";
|
|
4705
4705
|
import { ruleRegistry, getRulesByCategory as getRulesByCategory2, getCategoryMeta as getCategoryMeta2 } from "uilint-eslint";
|
|
4706
4706
|
async function promptForField(field, currentValue) {
|
|
@@ -5083,7 +5083,7 @@ ${semanticCat?.icon ?? "\u{1F9E0}"} ${semanticCat?.name ?? "Semantic rules"} (${
|
|
|
5083
5083
|
}
|
|
5084
5084
|
};
|
|
5085
5085
|
|
|
5086
|
-
// src/commands/
|
|
5086
|
+
// src/commands/init/installers/vite-overlay.ts
|
|
5087
5087
|
var viteOverlayInstaller = {
|
|
5088
5088
|
id: "vite",
|
|
5089
5089
|
name: "Vite overlay",
|
|
@@ -5195,14 +5195,14 @@ var viteOverlayInstaller = {
|
|
|
5195
5195
|
}
|
|
5196
5196
|
};
|
|
5197
5197
|
|
|
5198
|
-
// src/commands/
|
|
5198
|
+
// src/commands/init/installers/index.ts
|
|
5199
5199
|
registerInstaller(genstyleguideInstaller);
|
|
5200
5200
|
registerInstaller(skillInstaller);
|
|
5201
5201
|
registerInstaller(eslintInstaller);
|
|
5202
5202
|
registerInstaller(nextOverlayInstaller);
|
|
5203
5203
|
registerInstaller(viteOverlayInstaller);
|
|
5204
5204
|
|
|
5205
|
-
// src/commands/
|
|
5205
|
+
// src/commands/init-ui.tsx
|
|
5206
5206
|
import { jsx as jsx8 } from "react/jsx-runtime";
|
|
5207
5207
|
function limitList(items, max) {
|
|
5208
5208
|
if (items.length <= max) return items;
|
|
@@ -5359,11 +5359,11 @@ function selectionsToUserChoices(selections, project, eslintRules, injectionPoin
|
|
|
5359
5359
|
function isInteractiveTerminal() {
|
|
5360
5360
|
return Boolean(process.stdin.isTTY && process.stdout.isTTY);
|
|
5361
5361
|
}
|
|
5362
|
-
async function
|
|
5362
|
+
async function initUI(options = {}, executeOptions = {}) {
|
|
5363
5363
|
const projectPath = process.cwd();
|
|
5364
5364
|
if (!isInteractiveTerminal()) {
|
|
5365
5365
|
console.error("\n\u2717 Interactive mode requires a TTY terminal.");
|
|
5366
|
-
console.error("Run uilint
|
|
5366
|
+
console.error("Run uilint init in an interactive terminal.\n");
|
|
5367
5367
|
process.exit(1);
|
|
5368
5368
|
}
|
|
5369
5369
|
const projectPromise = analyze(projectPath);
|
|
@@ -5381,7 +5381,7 @@ async function installUI(options = {}, executeOptions = {}) {
|
|
|
5381
5381
|
console.log("\nNo changes selected");
|
|
5382
5382
|
process.exit(0);
|
|
5383
5383
|
}
|
|
5384
|
-
const { createPlan } = await import("./plan-
|
|
5384
|
+
const { createPlan } = await import("./plan-ZWGKTWQ3.js");
|
|
5385
5385
|
const plan = createPlan(project, choices, { force: options.force });
|
|
5386
5386
|
if (hasUninstalls && uninstallSelections) {
|
|
5387
5387
|
for (const selection of uninstallSelections) {
|
|
@@ -5431,6 +5431,6 @@ ${pc.blue("Running tests with coverage...")}`);
|
|
|
5431
5431
|
await waitUntilExit();
|
|
5432
5432
|
}
|
|
5433
5433
|
export {
|
|
5434
|
-
|
|
5434
|
+
initUI
|
|
5435
5435
|
};
|
|
5436
|
-
//# sourceMappingURL=
|
|
5436
|
+
//# sourceMappingURL=init-ui-RQKFF33G.js.map
|