@cspell/cspell-types 9.6.4 → 9.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.
package/dist/index.mjs CHANGED
@@ -44,6 +44,8 @@ const ConfigFields = {
44
44
  reporters: "reporters",
45
45
  showStatus: "showStatus",
46
46
  spellCheckDelayMs: "spellCheckDelayMs",
47
+ substitutionDefinitions: "substitutionDefinitions",
48
+ substitutions: "substitutions",
47
49
  suggestionNumChanges: "suggestionNumChanges",
48
50
  suggestionsTimeout: "suggestionsTimeout",
49
51
  suggestWords: "suggestWords",
@@ -56,7 +58,6 @@ const ConfigFields = {
56
58
  words: "words",
57
59
  parser: "parser"
58
60
  };
59
-
60
61
  //#endregion
61
62
  //#region src/CSpellReporter.ts
62
63
  let IssueType = /* @__PURE__ */ function(IssueType) {
@@ -75,20 +76,130 @@ const unknownWordsChoices = {
75
76
  ReportCommonTypos: "report-common-typos",
76
77
  ReportFlagged: "report-flagged"
77
78
  };
78
-
79
79
  //#endregion
80
80
  //#region src/defaultConfigSettings.ts
81
81
  const defaultCSpellSettings = {
82
82
  ignoreRandomStrings: true,
83
83
  minRandomLength: 40
84
84
  };
85
-
86
85
  //#endregion
87
86
  //#region src/defineConfig.ts
88
87
  function defineConfig(config) {
89
88
  return config;
90
89
  }
91
-
92
90
  //#endregion
93
- export { ConfigFields, IssueType, MessageTypes, defaultCSpellSettings, defineConfig, unknownWordsChoices };
91
+ //#region src/merge.ts
92
+ const mArr = mergeAppendArrays;
93
+ const mRec = mergeRecords;
94
+ const exKV = extractKeyValues;
95
+ const mergeDefinitionFunctions = {
96
+ $schema: (key) => recKV(key, void 0),
97
+ allowCompoundWords: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
98
+ cache: (key, settings) => recKV(key, mRec(exKV(key, settings))),
99
+ caseSensitive: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
100
+ description: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
101
+ dictionaries: (key, settings) => recKV(key, mArr(exKV(key, settings))),
102
+ dictionaryDefinitions: (key, settings) => recKV(key, mArr(exKV(key, settings))),
103
+ enabled: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
104
+ enabledFileTypes: (key, settings) => recKV(key, mRec(exKV(key, settings))),
105
+ enabledLanguageIds: (key, settings) => recKV(key, mArr(exKV(key, settings))),
106
+ enableFiletypes: (key, settings) => recKV(key, mArr(exKV(key, settings))),
107
+ enableGlobDot: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
108
+ engines: (key, settings) => recKV(key, mRec(exKV(key, settings))),
109
+ failFast: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
110
+ features: (key, settings) => recKV(key, mRec(exKV(key, settings))),
111
+ files: (key, settings) => recKV(key, mArr(exKV(key, settings))),
112
+ flagWords: (key, settings) => recKV(key, mArr(exKV(key, settings))),
113
+ gitignoreRoot: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
114
+ globRoot: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
115
+ id: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
116
+ ignorePaths: (key, settings) => recKV(key, mArr(exKV(key, settings))),
117
+ ignoreRandomStrings: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
118
+ ignoreRegExpList: (key, settings) => recKV(key, mArr(exKV(key, settings))),
119
+ ignoreWords: (key, settings) => recKV(key, mArr(exKV(key, settings))),
120
+ import: (key, settings) => recKV(key, mArr(exKV(key, settings).map(strArrToArr))),
121
+ includeRegExpList: (key, settings) => recKV(key, mArr(exKV(key, settings))),
122
+ language: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
123
+ languageId: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
124
+ languageSettings: (key, settings) => recKV(key, mArr(exKV(key, settings))),
125
+ loadDefaultConfiguration: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
126
+ maxDuplicateProblems: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
127
+ maxFileSize: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
128
+ maxNumberOfProblems: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
129
+ minRandomLength: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
130
+ minWordLength: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
131
+ name: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
132
+ noConfigSearch: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
133
+ noSuggestDictionaries: (key, settings) => recKV(key, mArr(exKV(key, settings))),
134
+ numSuggestions: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
135
+ overrides: (key, settings) => recKV(key, mArr(exKV(key, settings))),
136
+ parser: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
137
+ patterns: (key, settings) => recKV(key, mArr(exKV(key, settings))),
138
+ pnpFiles: (key, settings) => recKV(key, mArr(exKV(key, settings))),
139
+ readonly: (key, settings) => recKV(key, orValue(exKV(key, settings))),
140
+ reporters: (key, settings) => recKV(key, mArr(exKV(key, settings))),
141
+ showStatus: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
142
+ spellCheckDelayMs: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
143
+ substitutionDefinitions: (key, settings) => recKV(key, mArr(exKV(key, settings))),
144
+ substitutions: (key, settings) => recKV(key, mArr(exKV(key, settings))),
145
+ suggestionNumChanges: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
146
+ suggestionsTimeout: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
147
+ suggestWords: (key, settings) => recKV(key, mArr(exKV(key, settings))),
148
+ unknownWords: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
149
+ useGitignore: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
150
+ usePnP: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
151
+ userWords: (key, settings) => recKV(key, mArr(exKV(key, settings))),
152
+ validateDirectives: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
153
+ version: (key, settings) => recKV(key, lastValue(exKV(key, settings))),
154
+ vfs: (key, settings) => recKV(key, mRec(exKV(key, settings))),
155
+ words: (key, settings) => recKV(key, mArr(exKV(key, settings)))
156
+ };
157
+ function makeMergeFn(key) {
158
+ const fn = mergeDefinitionFunctions[key];
159
+ return (settings) => fn(key, settings);
160
+ }
161
+ const mergeIndividualSettingsFns = Object.keys(mergeDefinitionFunctions).map((k) => makeMergeFn(k));
162
+ function mergeConfig(first, ...configs) {
163
+ const settings = [first, ...configs].flat();
164
+ if (settings.length === 1) return settings[0];
165
+ const result = Object.assign(Object.create(null), ...settings);
166
+ Object.assign(result, ...mergeIndividualSettingsFns.map((fn) => fn(settings)));
167
+ return result;
168
+ }
169
+ function orValue(values) {
170
+ let v = void 0;
171
+ for (const value of values) v ||= value;
172
+ return v;
173
+ }
174
+ function lastValue(values) {
175
+ for (let i = values.length - 1; i >= 0; i--) {
176
+ const value = values[i];
177
+ if (value !== void 0) return value;
178
+ }
179
+ }
180
+ function strArrToArr(value) {
181
+ return Array.isArray(value) ? value : [value];
182
+ }
183
+ function mergeAppendArrays(arrays) {
184
+ const values = arrays.filter((a) => !!a);
185
+ if (values.length === 1) return values[0];
186
+ const merged = values.flat();
187
+ return merged.length ? merged : void 0;
188
+ }
189
+ function mergeRecords(records) {
190
+ const values = records.filter((r) => !!r);
191
+ if (!values.length) return void 0;
192
+ if (values.length === 1) return values[0];
193
+ return Object.assign(Object.create(null), ...values);
194
+ }
195
+ function extractKeyValues(key, records) {
196
+ return records.filter((r) => !!r).map((r) => r[key]).filter((v) => v !== void 0);
197
+ }
198
+ function recKV(key, value) {
199
+ if (value === void 0) return void 0;
200
+ return { [key]: value };
201
+ }
202
+ //#endregion
203
+ export { ConfigFields, IssueType, MessageTypes, defaultCSpellSettings, defineConfig, mergeConfig, unknownWordsChoices };
204
+
94
205
  //# sourceMappingURL=index.mjs.map
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public",
5
5
  "provenance": true
6
6
  },
7
- "version": "9.6.4",
7
+ "version": "9.8.0",
8
8
  "description": "Types for cspell and cspell-lib",
9
9
  "type": "commonjs",
10
10
  "sideEffects": false,
@@ -85,5 +85,5 @@
85
85
  "node": ">=20"
86
86
  },
87
87
  "homepage": "https://github.com/streetsidesoftware/cspell/tree/main/packages/cspell-types#readme",
88
- "gitHead": "e126c7f5708d4258ada35ba1d29d18952d7f0886"
88
+ "gitHead": "c822013ce676dffb5fa5544567c25a3ae666718f"
89
89
  }