@herb-tools/config 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export { Config } from "./config.js";
2
+ export { HerbConfigSchema } from "./config-schema.js";
3
+ export { addHerbExtensionRecommendation, getExtensionsJsonRelativePath } from "./vscode.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,8BAA8B,EAAE,6BAA6B,EAAE,MAAM,aAAa,CAAA"}
@@ -0,0 +1,41 @@
1
+ function isObject(item) {
2
+ return item !== null && typeof item === 'object' && !Array.isArray(item);
3
+ }
4
+ /**
5
+ * Deep merge two objects
6
+ * @param target - The base object (defaults)
7
+ * @param source - The object to merge in (user config)
8
+ * @returns Merged object
9
+ */
10
+ export function deepMerge(target, source) {
11
+ const output = { ...target };
12
+ for (const key in source) {
13
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
14
+ const sourceValue = source[key];
15
+ const targetValue = target[key];
16
+ if (sourceValue === undefined) {
17
+ continue;
18
+ }
19
+ if (Array.isArray(sourceValue)) {
20
+ if (key === 'include' && Array.isArray(targetValue)) {
21
+ ;
22
+ output[key] = [...targetValue, ...sourceValue];
23
+ }
24
+ else {
25
+ ;
26
+ output[key] = [...sourceValue];
27
+ }
28
+ continue;
29
+ }
30
+ if (isObject(sourceValue) && isObject(targetValue)) {
31
+ ;
32
+ output[key] = deepMerge(targetValue, sourceValue);
33
+ continue;
34
+ }
35
+ ;
36
+ output[key] = sourceValue;
37
+ }
38
+ }
39
+ return output;
40
+ }
41
+ //# sourceMappingURL=merge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/merge.ts"],"names":[],"mappings":"AAIA,SAAS,QAAQ,CAAC,IAAa;IAC7B,OAAO,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAC1E,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAgC,MAAS,EAAE,MAAsB;IACxF,MAAM,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,CAAA;IAE5B,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACzB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;YACtD,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;YAC/B,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;YAE/B,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC9B,SAAQ;YACV,CAAC;YAED,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC/B,IAAI,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;oBACpD,CAAC;oBAAC,MAAc,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,EAAE,GAAG,WAAW,CAAC,CAAA;gBAC1D,CAAC;qBAAM,CAAC;oBACN,CAAC;oBAAC,MAAc,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,CAAA;gBAC1C,CAAC;gBACD,SAAQ;YACV,CAAC;YAED,IAAI,QAAQ,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACnD,CAAC;gBAAC,MAAc,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,CAAA;gBAE3D,SAAQ;YACV,CAAC;YAED,CAAC;YAAC,MAAc,CAAC,GAAG,CAAC,GAAG,WAAW,CAAA;QACrC,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -0,0 +1,73 @@
1
+ import { join } from "path";
2
+ import { existsSync, readFileSync, writeFileSync, mkdirSync } from "fs";
3
+ const HERB_EXTENSION_ID = "marcoroth.herb-lsp";
4
+ const VSCODE_DIR = ".vscode";
5
+ const EXTENSIONS_FILE = "extensions.json";
6
+ /**
7
+ * Ensures the .vscode directory exists in the project
8
+ */
9
+ function ensureVSCodeDirectory(projectPath) {
10
+ const vscodeDir = join(projectPath, VSCODE_DIR);
11
+ if (!existsSync(vscodeDir)) {
12
+ mkdirSync(vscodeDir, { recursive: true });
13
+ }
14
+ return vscodeDir;
15
+ }
16
+ /**
17
+ * Gets the path to the VSCode extensions.json file
18
+ */
19
+ function getExtensionsJsonPath(projectPath) {
20
+ const vscodeDir = ensureVSCodeDirectory(projectPath);
21
+ return join(vscodeDir, EXTENSIONS_FILE);
22
+ }
23
+ /**
24
+ * Reads the current extensions.json file, or returns an empty structure
25
+ */
26
+ function readExtensionsJson(filePath) {
27
+ if (!existsSync(filePath)) {
28
+ return { recommendations: [] };
29
+ }
30
+ try {
31
+ const content = readFileSync(filePath, "utf-8");
32
+ const parsed = JSON.parse(content);
33
+ if (!Array.isArray(parsed.recommendations)) {
34
+ parsed.recommendations = [];
35
+ }
36
+ return parsed;
37
+ }
38
+ catch (error) {
39
+ console.warn(`Warning: Could not parse ${filePath}, creating new file`);
40
+ return { recommendations: [] };
41
+ }
42
+ }
43
+ /**
44
+ * Writes the extensions.json file with proper formatting
45
+ */
46
+ function writeExtensionsJson(filePath, data) {
47
+ const content = JSON.stringify(data, null, 2) + "\n";
48
+ writeFileSync(filePath, content, "utf-8");
49
+ }
50
+ /**
51
+ * Adds the Herb VSCode extension to the recommended extensions list
52
+ * Returns true if the extension was added, false if it was already present
53
+ */
54
+ export function addHerbExtensionRecommendation(projectPath) {
55
+ const extensionsPath = getExtensionsJsonPath(projectPath);
56
+ const extensions = readExtensionsJson(extensionsPath);
57
+ if (extensions.recommendations?.includes(HERB_EXTENSION_ID)) {
58
+ return false;
59
+ }
60
+ if (!extensions.recommendations) {
61
+ extensions.recommendations = [];
62
+ }
63
+ extensions.recommendations.push(HERB_EXTENSION_ID);
64
+ writeExtensionsJson(extensionsPath, extensions);
65
+ return true;
66
+ }
67
+ /**
68
+ * Gets the relative path to the extensions.json file from the project root
69
+ */
70
+ export function getExtensionsJsonRelativePath() {
71
+ return join(VSCODE_DIR, EXTENSIONS_FILE);
72
+ }
73
+ //# sourceMappingURL=vscode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vscode.js","sourceRoot":"","sources":["../../src/vscode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,IAAI,CAAA;AAOvE,MAAM,iBAAiB,GAAG,oBAAoB,CAAA;AAC9C,MAAM,UAAU,GAAG,SAAS,CAAA;AAC5B,MAAM,eAAe,GAAG,iBAAiB,CAAA;AAEzC;;GAEG;AACH,SAAS,qBAAqB,CAAC,WAAmB;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;IAE/C,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3B,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3C,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,WAAmB;IAChD,MAAM,SAAS,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAA;IAEpD,OAAO,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAA;AACzC,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,QAAgB;IAC1C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,CAAA;IAChC,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAElC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC;YAC3C,MAAM,CAAC,eAAe,GAAG,EAAE,CAAA;QAC7B,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,4BAA4B,QAAQ,qBAAqB,CAAC,CAAA;QAEvE,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,CAAA;IAChC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,QAAgB,EAAE,IAA0B;IACvE,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAA;IAEpD,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;AAC3C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,8BAA8B,CAAC,WAAmB;IAChE,MAAM,cAAc,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAA;IACzD,MAAM,UAAU,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAA;IAErD,IAAI,UAAU,CAAC,eAAe,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAC5D,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;QAChC,UAAU,CAAC,eAAe,GAAG,EAAE,CAAA;IACjC,CAAC;IAED,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;IAElD,mBAAmB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAA;IAE/C,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,6BAA6B;IAC3C,OAAO,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAA;AAC1C,CAAC"}
@@ -0,0 +1 @@
1
+ {"root":["../src/config-schema.ts","../src/config.ts","../src/index.ts","../src/merge.ts","../src/vscode.ts","../src/yaml.d.ts"],"version":"5.9.2"}
@@ -0,0 +1,90 @@
1
+ import { z } from "zod";
2
+ export declare const SeveritySchema: z.ZodEnum<{
3
+ error: "error";
4
+ warning: "warning";
5
+ info: "info";
6
+ hint: "hint";
7
+ }>;
8
+ export declare const FilesConfigSchema: z.ZodOptional<z.ZodObject<{
9
+ include: z.ZodOptional<z.ZodArray<z.ZodString>>;
10
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
11
+ }, z.core.$strict>>;
12
+ export declare const RuleConfigSchema: z.ZodOptional<z.ZodObject<{
13
+ enabled: z.ZodOptional<z.ZodBoolean>;
14
+ severity: z.ZodOptional<z.ZodEnum<{
15
+ error: "error";
16
+ warning: "warning";
17
+ info: "info";
18
+ hint: "hint";
19
+ }>>;
20
+ include: z.ZodOptional<z.ZodArray<z.ZodString>>;
21
+ only: z.ZodOptional<z.ZodArray<z.ZodString>>;
22
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
23
+ }, z.core.$strip>>;
24
+ export declare const LinterConfigSchema: z.ZodOptional<z.ZodObject<{
25
+ enabled: z.ZodOptional<z.ZodBoolean>;
26
+ include: z.ZodOptional<z.ZodArray<z.ZodString>>;
27
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
28
+ rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
29
+ enabled: z.ZodOptional<z.ZodBoolean>;
30
+ severity: z.ZodOptional<z.ZodEnum<{
31
+ error: "error";
32
+ warning: "warning";
33
+ info: "info";
34
+ hint: "hint";
35
+ }>>;
36
+ include: z.ZodOptional<z.ZodArray<z.ZodString>>;
37
+ only: z.ZodOptional<z.ZodArray<z.ZodString>>;
38
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
39
+ }, z.core.$strip>>>;
40
+ }, z.core.$strict>>;
41
+ export declare const FormatterConfigSchema: z.ZodOptional<z.ZodObject<{
42
+ enabled: z.ZodOptional<z.ZodBoolean>;
43
+ include: z.ZodOptional<z.ZodArray<z.ZodString>>;
44
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
45
+ indentWidth: z.ZodOptional<z.ZodNumber>;
46
+ maxLineLength: z.ZodOptional<z.ZodNumber>;
47
+ rewriter: z.ZodOptional<z.ZodObject<{
48
+ pre: z.ZodOptional<z.ZodArray<z.ZodString>>;
49
+ post: z.ZodOptional<z.ZodArray<z.ZodString>>;
50
+ }, z.core.$strict>>;
51
+ }, z.core.$strict>>;
52
+ export declare const HerbConfigSchema: z.ZodObject<{
53
+ version: z.ZodString;
54
+ files: z.ZodOptional<z.ZodObject<{
55
+ include: z.ZodOptional<z.ZodArray<z.ZodString>>;
56
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
57
+ }, z.core.$strict>>;
58
+ linter: z.ZodOptional<z.ZodObject<{
59
+ enabled: z.ZodOptional<z.ZodBoolean>;
60
+ include: z.ZodOptional<z.ZodArray<z.ZodString>>;
61
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
62
+ rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
63
+ enabled: z.ZodOptional<z.ZodBoolean>;
64
+ severity: z.ZodOptional<z.ZodEnum<{
65
+ error: "error";
66
+ warning: "warning";
67
+ info: "info";
68
+ hint: "hint";
69
+ }>>;
70
+ include: z.ZodOptional<z.ZodArray<z.ZodString>>;
71
+ only: z.ZodOptional<z.ZodArray<z.ZodString>>;
72
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
73
+ }, z.core.$strip>>>;
74
+ }, z.core.$strict>>;
75
+ formatter: z.ZodOptional<z.ZodObject<{
76
+ enabled: z.ZodOptional<z.ZodBoolean>;
77
+ include: z.ZodOptional<z.ZodArray<z.ZodString>>;
78
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
79
+ indentWidth: z.ZodOptional<z.ZodNumber>;
80
+ maxLineLength: z.ZodOptional<z.ZodNumber>;
81
+ rewriter: z.ZodOptional<z.ZodObject<{
82
+ pre: z.ZodOptional<z.ZodArray<z.ZodString>>;
83
+ post: z.ZodOptional<z.ZodArray<z.ZodString>>;
84
+ }, z.core.$strict>>;
85
+ }, z.core.$strict>>;
86
+ }, z.core.$strict>;
87
+ export type HerbConfigSchemaType = z.infer<typeof HerbConfigSchema>;
88
+ export type RuleConfigSchemaType = z.infer<typeof RuleConfigSchema>;
89
+ export type FilesConfigSchemaType = z.infer<typeof FilesConfigSchema>;
90
+ export type SeveritySchemaType = z.infer<typeof SeveritySchema>;
@@ -0,0 +1,348 @@
1
+ import { DiagnosticSeverity } from "@herb-tools/core";
2
+ export interface ConfigValidationError {
3
+ message: string;
4
+ path: (string | number | symbol)[];
5
+ code: string;
6
+ line?: number;
7
+ column?: number;
8
+ severity?: 'error' | 'warning';
9
+ }
10
+ export type FilesConfig = {
11
+ include?: string[];
12
+ exclude?: string[];
13
+ };
14
+ export type RuleConfig = {
15
+ enabled?: boolean;
16
+ severity?: DiagnosticSeverity;
17
+ autoCorrect?: boolean;
18
+ include?: string[];
19
+ only?: string[];
20
+ exclude?: string[];
21
+ };
22
+ export type LinterConfig = {
23
+ enabled?: boolean;
24
+ include?: string[];
25
+ exclude?: string[];
26
+ rules?: Record<string, RuleConfig>;
27
+ };
28
+ export type FormatterConfig = {
29
+ enabled?: boolean;
30
+ include?: string[];
31
+ exclude?: string[];
32
+ indentWidth?: number;
33
+ maxLineLength?: number;
34
+ rewriter?: {
35
+ pre?: string[];
36
+ post?: string[];
37
+ };
38
+ };
39
+ export type HerbConfigOptions = {
40
+ files?: FilesConfig;
41
+ linter?: LinterConfig;
42
+ formatter?: FormatterConfig;
43
+ };
44
+ export type HerbConfig = HerbConfigOptions & {
45
+ version: string;
46
+ };
47
+ export type LoadOptions = {
48
+ silent?: boolean;
49
+ version?: string;
50
+ createIfMissing?: boolean;
51
+ exitOnError?: boolean;
52
+ };
53
+ export type FromObjectOptions = {
54
+ projectPath?: string;
55
+ version?: string;
56
+ };
57
+ export declare class Config {
58
+ static configPath: string;
59
+ private static PROJECT_INDICATORS;
60
+ readonly path: string;
61
+ config: HerbConfig;
62
+ constructor(projectPath: string, config: HerbConfig);
63
+ get projectPath(): string;
64
+ get version(): string;
65
+ get options(): HerbConfigOptions;
66
+ get linter(): LinterConfig | undefined;
67
+ get formatter(): FormatterConfig | undefined;
68
+ toJSON(): string;
69
+ /**
70
+ * Check if the linter is enabled.
71
+ * @returns true if linter is enabled (default), false if explicitly disabled
72
+ */
73
+ get isLinterEnabled(): boolean;
74
+ /**
75
+ * Check if the formatter is enabled.
76
+ * @returns true if formatter is enabled (default), false if explicitly disabled
77
+ */
78
+ get isFormatterEnabled(): boolean;
79
+ /**
80
+ * Check if a specific rule is disabled.
81
+ * @param ruleName - The name of the rule to check
82
+ * @returns true if the rule is explicitly disabled, false otherwise
83
+ */
84
+ isRuleDisabled(ruleName: string): boolean;
85
+ /**
86
+ * Check if a specific rule is enabled.
87
+ * @param ruleName - The name of the rule to check
88
+ * @returns true if the rule is enabled, false otherwise
89
+ */
90
+ isRuleEnabled(ruleName: string): boolean;
91
+ /**
92
+ * Get the files configuration for a specific tool.
93
+ * Tool-specific file config takes precedence over top-level config.
94
+ * Include patterns are additive (defaults are already merged in this.config).
95
+ * @param tool - The tool to get files config for ('linter' or 'formatter')
96
+ * @returns The merged files configuration
97
+ */
98
+ getFilesConfigForTool(tool: 'linter' | 'formatter'): FilesConfig;
99
+ /**
100
+ * Get the files configuration for the linter.
101
+ * Linter-specific file config takes precedence over top-level config.
102
+ * @returns The merged files configuration for linter
103
+ */
104
+ get filesConfigForLinter(): FilesConfig;
105
+ /**
106
+ * Get the files configuration for the formatter.
107
+ * Formatter-specific file config takes precedence over top-level config.
108
+ * @returns The merged files configuration for formatter
109
+ */
110
+ get filesConfigForFormatter(): FilesConfig;
111
+ /**
112
+ * Find files for a specific tool based on its configuration.
113
+ * Uses include patterns from config, applies exclude patterns.
114
+ * @param tool - The tool to find files for ('linter' or 'formatter')
115
+ * @param cwd - The directory to search from (defaults to project path)
116
+ * @returns Promise resolving to array of absolute file paths
117
+ */
118
+ findFilesForTool(tool: 'linter' | 'formatter', cwd?: string): Promise<string[]>;
119
+ /**
120
+ * Find files for the linter based on linter configuration.
121
+ * @param cwd - The directory to search from (defaults to project path)
122
+ * @returns Promise resolving to array of absolute file paths
123
+ */
124
+ findFilesForLinter(cwd?: string): Promise<string[]>;
125
+ /**
126
+ * Find files for the formatter based on formatter configuration.
127
+ * @param cwd - The directory to search from (defaults to project path)
128
+ * @returns Promise resolving to array of absolute file paths
129
+ */
130
+ findFilesForFormatter(cwd?: string): Promise<string[]>;
131
+ /**
132
+ * Check if a file path is excluded by glob patterns.
133
+ * @param filePath - The file path to check
134
+ * @param excludePatterns - Array of glob patterns to check against
135
+ * @returns true if the path matches any exclude pattern
136
+ */
137
+ private isPathExcluded;
138
+ /**
139
+ * Check if a file path matches any of the include patterns.
140
+ * @param filePath - The file path to check
141
+ * @param includePatterns - Array of glob patterns to check against
142
+ * @returns true if the path matches any include pattern, or true if no patterns specified
143
+ */
144
+ private isPathIncluded;
145
+ /**
146
+ * Check if a tool (linter or formatter) is enabled for a specific file path.
147
+ * Respects both the tool's enabled state and its exclude patterns.
148
+ * @param filePath - The file path to check
149
+ * @param tool - The tool to check ('linter' or 'formatter')
150
+ * @returns true if the tool is enabled for this path
151
+ */
152
+ isEnabledForPath(filePath: string, tool: 'linter' | 'formatter'): boolean;
153
+ /**
154
+ * Check if the linter is enabled for a specific file path.
155
+ * Respects both linter.enabled and linter.exclude patterns.
156
+ * @param filePath - The file path to check
157
+ * @returns true if the linter is enabled for this path
158
+ */
159
+ isLinterEnabledForPath(filePath: string): boolean;
160
+ /**
161
+ * Check if the formatter is enabled for a specific file path.
162
+ * Respects both formatter.enabled and formatter.exclude patterns.
163
+ * @param filePath - The file path to check
164
+ * @returns true if the formatter is enabled for this path
165
+ */
166
+ isFormatterEnabledForPath(filePath: string): boolean;
167
+ /**
168
+ * Check if a specific rule is enabled for a specific file path.
169
+ * Respects linter.enabled, linter.exclude, rule.enabled, rule.include, rule.only, and rule.exclude patterns.
170
+ *
171
+ * Pattern precedence:
172
+ * - If rule.only is specified: Only files matching 'only' patterns (ignores all 'include' patterns)
173
+ * - If rule.only is NOT specified: Files matching 'include' patterns (if specified, additive)
174
+ * - rule.exclude is always applied regardless of 'only' or 'include'
175
+ *
176
+ * @param ruleName - The name of the rule to check
177
+ * @param filePath - The file path to check
178
+ * @returns true if the rule is enabled for this path
179
+ */
180
+ isRuleEnabledForPath(ruleName: string, filePath: string): boolean;
181
+ /**
182
+ * Apply configured severity overrides to a lint offense.
183
+ * Returns the configured severity if set, otherwise returns the original severity.
184
+ */
185
+ getConfiguredSeverity(ruleName: string, defaultSeverity: DiagnosticSeverity): DiagnosticSeverity;
186
+ /**
187
+ * Apply severity overrides from config to an array of offenses.
188
+ * Each offense must have a `rule` and `severity` property.
189
+ */
190
+ applySeverityOverrides<T extends {
191
+ rule: string;
192
+ severity: DiagnosticSeverity;
193
+ }>(offenses: T[]): T[];
194
+ static configPathFromProjectPath(projectPath: string): string;
195
+ /**
196
+ * Get the default file patterns that Herb recognizes.
197
+ * These are the default extensions/patterns used when no custom patterns are specified.
198
+ * @returns Array of glob patterns for HTML+ERB files
199
+ */
200
+ static getDefaultFilePatterns(): string[];
201
+ /**
202
+ * Check if a .herb.yml config file exists at the given path.
203
+ *
204
+ * @param pathOrFile - Path to directory or explicit config file path
205
+ * @returns True if .herb.yml exists at the location, false otherwise
206
+ */
207
+ static exists(pathOrFile: string): boolean;
208
+ /**
209
+ * Read raw YAML content from a config file.
210
+ * Handles both explicit .herb.yml paths and directory paths.
211
+ *
212
+ * @param pathOrFile - Path to .herb.yml file or directory containing it
213
+ * @returns string - The raw YAML content
214
+ */
215
+ static readRawYaml(pathOrFile: string): string;
216
+ /**
217
+ * Load Herb configuration from a file or directory
218
+ *
219
+ * This is the main entry point for loading configuration. It:
220
+ * 1. Discovers the config file by walking up the directory tree
221
+ * 2. Reads and validates the config
222
+ * 3. Merges with defaults for a fully resolved config
223
+ * 4. Auto-creates default config if createIfMissing option is true
224
+ * 5. Prints informative messages to console
225
+ *
226
+ * @param pathOrFile - File path, directory path, or any path to start search from
227
+ * @param options - Loading options
228
+ * @returns Promise<Config> - Fully resolved config instance
229
+ */
230
+ static load(pathOrFile: string, options?: LoadOptions): Promise<Config>;
231
+ /**
232
+ * Load config for editor/language server use (silent mode, no file creation).
233
+ * This is a convenience method for the common pattern used in editors.
234
+ *
235
+ * @param pathOrFile - Directory path or explicit .herb.yml file path
236
+ * @param version - Optional version string (defaults to package version)
237
+ * @returns Config instance or throws on errors
238
+ */
239
+ static loadForEditor(pathOrFile: string, version?: string): Promise<Config>;
240
+ /**
241
+ * Load config for CLI use (may create file, show errors).
242
+ * This is a convenience method for the common pattern used in CLI tools.
243
+ *
244
+ * @param pathOrFile - Directory path or explicit .herb.yml file path
245
+ * @param version - Optional version string (defaults to package version)
246
+ * @param createIfMissing - Whether to create config if missing (default: false)
247
+ * @returns Config instance or throws on errors
248
+ */
249
+ static loadForCLI(pathOrFile: string, version?: string, createIfMissing?: boolean): Promise<Config>;
250
+ /**
251
+ * Mutate an existing config file by reading it, validating, merging with a mutation, and writing back.
252
+ * This preserves the user's YAML file structure and only writes what's explicitly configured.
253
+ *
254
+ * @param configPath - Path to the .herb.yml file
255
+ * @param mutation - Partial config to merge (e.g., { linter: { rules: { "rule-name": { enabled: false } } } })
256
+ * @returns Promise<void>
257
+ *
258
+ * @example
259
+ * // Disable a rule in .herb.yml
260
+ * await Config.mutateConfigFile('/path/to/.herb.yml', {
261
+ * linter: {
262
+ * rules: {
263
+ * 'html-img-require-alt': { enabled: false }
264
+ * }
265
+ * }
266
+ * })
267
+ */
268
+ static mutateConfigFile(configPath: string, mutation: Partial<HerbConfigOptions>): Promise<void>;
269
+ /**
270
+ * Apply mutation to YAML content and return the mutated string (synchronous)
271
+ * Useful for code actions and other scenarios where you need the mutated content
272
+ * without writing to disk.
273
+ *
274
+ * @param yamlContent - The original YAML content (with comments)
275
+ * @param mutation - The mutation to apply
276
+ * @returns The mutated YAML content (with comments preserved)
277
+ */
278
+ static applyMutationToYamlString(yamlContent: string, mutation: Partial<HerbConfigOptions>): string;
279
+ /**
280
+ * Create a new config file content with a mutation applied
281
+ * Uses the default template with comments and applies the mutation
282
+ *
283
+ * @param mutation - The mutation to apply to the default config
284
+ * @param version - The version to use (defaults to package version)
285
+ * @returns The config file content as a YAML string
286
+ */
287
+ static createConfigYamlString(mutation: Partial<HerbConfigOptions>, version?: string): string;
288
+ /**
289
+ * Apply mutation to a YAML document while preserving comments
290
+ * Works recursively to handle nested objects
291
+ */
292
+ private static applyMutationToDocument;
293
+ /**
294
+ * Add spacing between top-level keys and nested rule keys in YAML
295
+ */
296
+ private static addYamlSpacing;
297
+ /**
298
+ * Create a Config instance from a partial config object
299
+ *
300
+ * Useful for testing and programmatic config creation.
301
+ * Deep merges the partial config with defaults.
302
+ *
303
+ * @param partial - Partial config object
304
+ * @param options - Options including projectPath and version
305
+ * @returns Config instance with fully resolved config
306
+ */
307
+ static fromObject(partial: Partial<HerbConfigOptions>, options?: FromObjectOptions): Config;
308
+ /**
309
+ * Find config file by walking up directory tree
310
+ *
311
+ * @param startPath - Path to start searching from (file or directory)
312
+ * @returns Object with configPath (if found) and projectRoot
313
+ */
314
+ private static findConfigFile;
315
+ /**
316
+ * Check if a directory is a project root
317
+ */
318
+ private static isProjectRoot;
319
+ /**
320
+ * Load config from explicit path (from --config-file argument)
321
+ */
322
+ private static loadFromExplicitPath;
323
+ /**
324
+ * Load config from discovered path
325
+ */
326
+ private static loadFromPath;
327
+ /**
328
+ * Create default config at project root
329
+ */
330
+ private static createDefaultConfig;
331
+ /**
332
+ * Validate config text without loading or exiting process
333
+ * Used by language servers to show diagnostics
334
+ * Returns empty array if valid, array of errors/warnings if invalid
335
+ */
336
+ static validateConfigText(text: string, options?: {
337
+ version?: string;
338
+ projectPath?: string;
339
+ }): Promise<ConfigValidationError[]>;
340
+ /**
341
+ * Read, parse, and validate config file
342
+ */
343
+ private static readAndValidateConfig;
344
+ /**
345
+ * Get default configuration object
346
+ */
347
+ private static getDefaultConfig;
348
+ }
@@ -0,0 +1,5 @@
1
+ export { Config } from "./config.js";
2
+ export { HerbConfigSchema } from "./config-schema.js";
3
+ export { addHerbExtensionRecommendation, getExtensionsJsonRelativePath } from "./vscode.js";
4
+ export type { HerbConfig, HerbConfigOptions, LinterConfig, FormatterConfig, RuleConfig, FilesConfig, LoadOptions, FromObjectOptions, ConfigValidationError } from "./config.js";
5
+ export type { VSCodeExtensionsJson } from "./vscode.js";
@@ -0,0 +1,11 @@
1
+ type DeepPartial<T> = T extends object ? {
2
+ [P in keyof T]?: DeepPartial<T[P]>;
3
+ } : T;
4
+ /**
5
+ * Deep merge two objects
6
+ * @param target - The base object (defaults)
7
+ * @param source - The object to merge in (user config)
8
+ * @returns Merged object
9
+ */
10
+ export declare function deepMerge<T extends Record<string, any>>(target: T, source: DeepPartial<T>): T;
11
+ export {};