@coinagerie/vocabulary 0.0.12 β†’ 0.0.14

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/CHANGELOG.md CHANGED
@@ -1,3 +1,21 @@
1
+ ## 0.0.14 (2026-11-10)
2
+
3
+ ### 🧱 Updated Dependencies
4
+
5
+ - Updated coinagerie-configuration to 0.0.14
6
+ - Updated coinagerie-languages to 0.0.14
7
+
8
+ ## 0.0.13 (2026-11-10)
9
+
10
+ ### πŸš€ Features
11
+
12
+ - **callidescope,codependix,codometer,coinagerie,configuration:** ✨ write tool markdown to adjacent files ([#2225](https://github.com/organizzolini/codebase/pull/2225), [#2224](https://github.com/organizzolini/codebase/issues/2224))
13
+
14
+ ### 🧱 Updated Dependencies
15
+
16
+ - Updated coinagerie-configuration to 0.0.13
17
+ - Updated coinagerie-languages to 0.0.13
18
+
1
19
  ## 0.0.12 (2026-11-09)
2
20
 
3
21
  ### 🧱 Updated Dependencies
package/README.md CHANGED
@@ -17,428 +17,3 @@ nx run coinagerie-vocabulary:vitest
17
17
  ## πŸ‘” Conformetry
18
18
 
19
19
  This project was generated from the [nestjs-service-project](../../configuration/conformetry-templates/nestjs-service-project) conformetry template.
20
-
21
- <!-- coinagerie:start -->
22
-
23
- ## πŸͺ™ Coinagerie
24
-
25
- The words this package uses that the root glossary does not define, regenerated with `nx run coinagerie-vocabulary:coinagerie-check:write`.
26
-
27
- - **aspect**: Example word in folding tests, where aspects folds into the singular aspect; also a fixture file name.
28
- - **breadth**: The maximumBreadth limit, set to seven in this project's callidescope configuration, bounding callees per function.
29
- - **bundle**: Fixture path dist/bundle.js that discovery tests use to check an exclude list drops the dist folder.
30
- - **glossary**: The GLOSSARY.md file discovery skips so a glossary's own headwords never count as codebase vocabulary.
31
- - **headword**: The single form a word folds into, which the glossary lists once and exclusion compares against.
32
- - **phase**: A word split from the fixture file aspect-phase-emoji.service.ts, testing that hyphenated names split into words.
33
- - **term**: A word of at least two code points that counts toward the vocabulary, as defined by TERM_LENGTH_PATTERN.
34
- - **verb**: Lemmatizer step from wink-lemmatizer reducing an inflected verb form to its base, as configuring to configure.
35
- - **vocabulary**: The sorted list of every word the codebase uses, produced by VocabularyService.collect after folding and exclusion.
36
-
37
- <!-- coinagerie:end -->
38
-
39
- <!-- callidescope:start -->
40
-
41
- ## πŸ”­ Callidescope
42
-
43
- Call stacks traced through `projects/ic-suite/coinagerie/coinagerie-vocabulary`, deepest first. Each frame shows what it takes, what it returns, and what its documentation says.
44
-
45
- | Measure | Value |
46
- | --- | --- |
47
- | Callables | 42 |
48
- | Files | 25 |
49
- | Calls traced | 44 |
50
- | Call stacks | 0 |
51
- | Deepest stack | 0 |
52
- | Stacks through recursion | 0 |
53
- | Unfollowable calls | 1 |
54
-
55
- ### Limits
56
-
57
- What this project is judged against, as declared in its own `callidescope.config.ts`.
58
-
59
- | Limit | Value |
60
- | --- | --- |
61
- | `maximumDepth` | 7 |
62
- | `maximumBreadth` | 7 |
63
-
64
- ### Call stacks (depth)
65
-
66
- None.
67
-
68
- ### Breadth
69
-
70
- | Callable | Breadth | Calls directly | Location |
71
- | --- | --- | --- | --- |
72
- | `DiscoveryService.discover` | 7 | `DiscoveryService.findRepositoryRoot`, `DiscoveryService.map(…)`, `DiscoveryService.filter(…)`, `DiscoveryService.map(…)`, `DiscoveryService.filter(…)`, `DiscoveryService.walk`, `DiscoveryService.readAncestorScopes` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/discovery/discovery.service.ts:152` |
73
- | `VocabularyService.collect` | 7 | `DiscoveryService.discover`, `VocabularyService.map(…)`, `VocabularyService.excludedHeadwords`, `VocabularyService.collectFile`, `FoldingService.headword`, `VocabularyService.matchesPattern`, `VocabularyService.filter(…)` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/vocabulary/vocabulary.service.ts:108` |
74
- | `DiscoveryService.walk` | 4 | `DiscoveryService.toPosix`, `IgnoreRulesService.readScope`, `DiscoveryService.flatMap(…)`, `DiscoveryService.filter(…)` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/discovery/discovery.service.ts:107` |
75
-
76
- <details>
77
- <summary>16 more callables</summary>
78
-
79
- | Callable | Breadth | Calls directly | Location |
80
- | --- | --- | --- | --- |
81
- | `DiscoveryService.readAncestorScopes` | 3 | `DiscoveryService.filter(…)`, `DiscoveryService.toPosix`, `DiscoveryService.flatMap(…)` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/discovery/discovery.service.ts:78` |
82
- | `DiscoveryService.flatMap(…)` | 3 | `IgnoreRulesService.isIgnored`, `DiscoveryService.isExcludedFolder`, `DiscoveryService.walk` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/discovery/discovery.service.ts:122` |
83
- | `WordsService.splitIdentifier` | 3 | `WordsService.filter(…)`, `WordsService.map(…)`, `WordsService.flatMap(…)` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/words/words.service.ts:43` |
84
- | `VocabularyService.collectFile` | 3 | `WordsService.splitPath`, `LanguagesService.tokenizerFor`, `VocabularyService.flatMap(…)` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/vocabulary/vocabulary.service.ts:42` |
85
- | `DiscoveryService.isExcludedFolder` | 2 | `DiscoveryService.toPosix`, `DiscoveryService.some(…)` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/discovery/discovery.service.ts:56` |
86
- | `DiscoveryService.isSelected` | 2 | `DiscoveryService.some(…)`, `DiscoveryService.some(…)` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/discovery/discovery.service.ts:67` |
87
- | `IgnoreRulesService.isIgnored` | 1 | `IgnoreRulesService.toScopedPath` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/discovery/ignore-rules.service.ts:49` |
88
- | `DiscoveryService.flatMap(…)` | 1 | `IgnoreRulesService.readScope` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/discovery/discovery.service.ts:86` |
89
- | `DiscoveryService.map(…)` | 1 | `DiscoveryService.toPosix` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/discovery/discovery.service.ts:163` |
90
- | `DiscoveryService.filter(…)` | 1 | `DiscoveryService.isSelected` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/discovery/discovery.service.ts:166` |
91
- | `FoldingService.headword` | 1 | `FoldingService.fold` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/folding/folding.service.ts:49` |
92
- | `WordsService.filter(…)` | 1 | `WordsService.isTerm` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/words/words.service.ts:48` |
93
- | `WordsService.splitPath` | 1 | `WordsService.splitIdentifier` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/words/words.service.ts:56` |
94
- | `VocabularyService.flatMap(…)` | 1 | `WordsService.splitIdentifier` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/vocabulary/vocabulary.service.ts:57` |
95
- | `VocabularyService.excludedHeadwords` | 1 | `FoldingService.headword` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/vocabulary/vocabulary.service.ts:70` |
96
- | `VocabularyService.matchesPattern` | 1 | `VocabularyService.some(…)` | `projects/ic-suite/coinagerie/coinagerie-vocabulary/src/modules/vocabulary/vocabulary.service.ts:88` |
97
-
98
- </details>
99
- <!-- callidescope:end -->
100
-
101
- ## πŸ•ΈοΈ Codependix
102
-
103
- Dependency graphs exported by [codependix](https://github.com/Organizzolini/codebase/tree/main/projects/ic-suite/codependix/codependix-cli), regenerated by `nx run configuration:codependix:write`.
104
-
105
- ### Nx Neighborhood
106
-
107
- <!-- codependix:start name="codependix-nx-projects" -->
108
- ```mermaid
109
- graph LR
110
- coinagerie_cli["coinagerie-cli"]
111
- coinagerie_configuration["coinagerie-configuration"]
112
- coinagerie_languages["coinagerie-languages"]
113
- coinagerie_vocabulary["coinagerie-vocabulary"]
114
- coinagerie_cli --> coinagerie_vocabulary
115
- coinagerie_vocabulary --> coinagerie_configuration
116
- coinagerie_vocabulary --> coinagerie_languages
117
- classDef subject fill:#7c3aed,color:#fff,stroke:#4c1d95,stroke-width:2px
118
- class coinagerie_vocabulary subject
119
- ```
120
- <!-- codependix:end name="codependix-nx-projects" -->
121
-
122
- ### NestJS Module Graph
123
-
124
- <!-- codependix:start name="codependix-nestjs-modules" -->
125
- ```mermaid
126
- flowchart LR
127
- CssModule
128
- DiscoveryModule
129
- FoldingModule
130
- HclModule
131
- JsonModule
132
- LanguagesModule
133
- PythonModule
134
- ScannerModule
135
- ShellModule
136
- SqlModule
137
- TomlModule
138
- TypescriptModule
139
- VocabularyModule
140
- WordsModule
141
- YamlModule
142
- CssModule --> ScannerModule
143
- HclModule --> ScannerModule
144
- JsonModule --> ScannerModule
145
- LanguagesModule --> CssModule
146
- LanguagesModule --> HclModule
147
- LanguagesModule --> JsonModule
148
- LanguagesModule --> PythonModule
149
- LanguagesModule --> ShellModule
150
- LanguagesModule --> SqlModule
151
- LanguagesModule --> TomlModule
152
- LanguagesModule --> TypescriptModule
153
- LanguagesModule --> YamlModule
154
- PythonModule --> ScannerModule
155
- ShellModule --> ScannerModule
156
- SqlModule --> ScannerModule
157
- TomlModule --> ScannerModule
158
- VocabularyModule --> DiscoveryModule
159
- VocabularyModule --> FoldingModule
160
- VocabularyModule --> LanguagesModule
161
- VocabularyModule --> WordsModule
162
- ```
163
- <!-- codependix:end name="codependix-nestjs-modules" -->
164
-
165
- ### File Imports
166
-
167
- <!-- codependix:start name="codependix-file-imports" -->
168
- ```mermaid
169
- graph LR
170
- file_callidescope_config_ts["callidescope.config.ts"]
171
- file_codependix_config_ts["codependix.config.ts"]
172
- file_codometer_config_ts["codometer.config.ts"]
173
- file_coinagerie_config_ts["coinagerie.config.ts"]
174
- file_eslint_config_ts["eslint.config.ts"]
175
- file_src_index_ts["src/index.ts"]
176
- file_src_index_unit_test_ts["src/index.unit.test.ts"]
177
- file_src_modules_discovery_discovery_constants_ts["src/modules/discovery/discovery.constants.ts"]
178
- file_src_modules_discovery_discovery_module_ts["src/modules/discovery/discovery.module.ts"]
179
- file_src_modules_discovery_discovery_service_ts["src/modules/discovery/discovery.service.ts"]
180
- file_src_modules_discovery_discovery_service_unit_test_ts["src/modules/discovery/discovery.service.unit.test.ts"]
181
- file_src_modules_discovery_discovery_types_ts["src/modules/discovery/discovery.types.ts"]
182
- file_src_modules_discovery_ignore_rules_service_ts["src/modules/discovery/ignore-rules.service.ts"]
183
- file_src_modules_discovery_ignore_rules_service_unit_test_ts["src/modules/discovery/ignore-rules.service.unit.test.ts"]
184
- file_src_modules_folding_folding_constants_ts["src/modules/folding/folding.constants.ts"]
185
- file_src_modules_folding_folding_module_ts["src/modules/folding/folding.module.ts"]
186
- file_src_modules_folding_folding_service_ts["src/modules/folding/folding.service.ts"]
187
- file_src_modules_folding_folding_service_unit_test_ts["src/modules/folding/folding.service.unit.test.ts"]
188
- file_src_modules_folding_folding_types_ts["src/modules/folding/folding.types.ts"]
189
- file_src_modules_vocabulary_vocabulary_constants_ts["src/modules/vocabulary/vocabulary.constants.ts"]
190
- file_src_modules_vocabulary_vocabulary_module_ts["src/modules/vocabulary/vocabulary.module.ts"]
191
- file_src_modules_vocabulary_vocabulary_service_ts["src/modules/vocabulary/vocabulary.service.ts"]
192
- file_src_modules_vocabulary_vocabulary_service_unit_test_ts["src/modules/vocabulary/vocabulary.service.unit.test.ts"]
193
- file_src_modules_vocabulary_vocabulary_types_ts["src/modules/vocabulary/vocabulary.types.ts"]
194
- file_src_modules_words_words_constants_ts["src/modules/words/words.constants.ts"]
195
- file_src_modules_words_words_module_ts["src/modules/words/words.module.ts"]
196
- file_src_modules_words_words_service_ts["src/modules/words/words.service.ts"]
197
- file_src_modules_words_words_service_unit_test_ts["src/modules/words/words.service.unit.test.ts"]
198
- file_src_modules_words_words_types_ts["src/modules/words/words.types.ts"]
199
- file_testing_mocks_ts["testing/mocks.ts"]
200
- file_testing_setup_ts["testing/setup.ts"]
201
- file_vite_config_ts["vite.config.ts"]
202
- file_vitest_config_ts["vitest.config.ts"]
203
- file_src_index_unit_test_ts --> file_src_index_ts
204
- file_src_modules_discovery_discovery_module_ts --> file_src_modules_discovery_discovery_service_ts
205
- file_src_modules_discovery_discovery_module_ts --> file_src_modules_discovery_ignore_rules_service_ts
206
- file_src_modules_discovery_discovery_service_ts --> file_src_modules_discovery_discovery_constants_ts
207
- file_src_modules_discovery_discovery_service_ts --> file_src_modules_discovery_discovery_types_ts
208
- file_src_modules_discovery_discovery_service_ts --> file_src_modules_discovery_ignore_rules_service_ts
209
- file_src_modules_discovery_discovery_service_unit_test_ts --> file_src_modules_discovery_discovery_service_ts
210
- file_src_modules_discovery_discovery_service_unit_test_ts --> file_src_modules_discovery_ignore_rules_service_ts
211
- file_src_modules_discovery_ignore_rules_service_ts --> file_src_modules_discovery_discovery_types_ts
212
- file_src_modules_discovery_ignore_rules_service_unit_test_ts --> file_src_modules_discovery_discovery_types_ts
213
- file_src_modules_discovery_ignore_rules_service_unit_test_ts --> file_src_modules_discovery_ignore_rules_service_ts
214
- file_src_modules_folding_folding_module_ts --> file_src_modules_folding_folding_service_ts
215
- file_src_modules_folding_folding_service_ts --> file_src_modules_words_words_constants_ts
216
- file_src_modules_folding_folding_service_unit_test_ts --> file_src_modules_folding_folding_service_ts
217
- file_src_modules_vocabulary_vocabulary_module_ts --> file_src_modules_discovery_discovery_module_ts
218
- file_src_modules_vocabulary_vocabulary_module_ts --> file_src_modules_folding_folding_module_ts
219
- file_src_modules_vocabulary_vocabulary_module_ts --> file_src_modules_vocabulary_vocabulary_service_ts
220
- file_src_modules_vocabulary_vocabulary_module_ts --> file_src_modules_words_words_module_ts
221
- file_src_modules_vocabulary_vocabulary_service_ts --> file_src_modules_discovery_discovery_service_ts
222
- file_src_modules_vocabulary_vocabulary_service_ts --> file_src_modules_folding_folding_service_ts
223
- file_src_modules_vocabulary_vocabulary_service_ts --> file_src_modules_words_words_service_ts
224
- file_src_modules_vocabulary_vocabulary_service_unit_test_ts --> file_src_modules_discovery_discovery_module_ts
225
- file_src_modules_vocabulary_vocabulary_service_unit_test_ts --> file_src_modules_folding_folding_module_ts
226
- file_src_modules_vocabulary_vocabulary_service_unit_test_ts --> file_src_modules_vocabulary_vocabulary_service_ts
227
- file_src_modules_vocabulary_vocabulary_service_unit_test_ts --> file_src_modules_words_words_module_ts
228
- file_src_modules_words_words_module_ts --> file_src_modules_words_words_service_ts
229
- file_src_modules_words_words_service_ts --> file_src_modules_words_words_constants_ts
230
- file_src_modules_words_words_service_unit_test_ts --> file_src_modules_words_words_service_ts
231
- ```
232
- <!-- codependix:end name="codependix-file-imports" -->
233
-
234
- <!-- codometer:start -->
235
-
236
- ## ⏲️ Codometer
237
-
238
- ### Project
239
-
240
- ![Lines of Code](https://img.shields.io/badge/Lines_of_Code-1700-22c55e?style=flat-square)
241
- ![Repository Size](https://img.shields.io/badge/Repository_Size-64.43_kB-6b7280?style=flat-square)
242
- ![Folders](https://img.shields.io/badge/Folders-7-4a4a4a?style=flat-square)
243
- ![Source Files](https://img.shields.io/badge/Source_Files-33-3178c6?style=flat-square)
244
-
245
- ### TypeScript
246
-
247
- ![TypeScript Files](https://img.shields.io/badge/TypeScript_Files-33-3178c6?style=flat-square)
248
- ![Interfaces](https://img.shields.io/badge/Interfaces-4-0ea5e9?style=flat-square)
249
- ![Generic Declarations](https://img.shields.io/badge/Generic_Declarations-0-0369a1?style=flat-square)
250
- ![Enums](https://img.shields.io/badge/Enums-0-f97316?style=flat-square)
251
- ![Decorators](https://img.shields.io/badge/Decorators-9-db2777?style=flat-square)
252
- ![Doc Comments](https://img.shields.io/badge/Doc_Comments-46-6366f1?style=flat-square)
253
- ![Static Methods](https://img.shields.io/badge/Static_Methods-0-166534?style=flat-square)
254
-
255
- ### JavaScript
256
-
257
- ![JavaScript Files](https://img.shields.io/badge/JavaScript_Files-0-f7df1e?style=flat-square)
258
- ![Test Files](https://img.shields.io/badge/Test_Files-6-10b981?style=flat-square)
259
- ![External Packages](https://img.shields.io/badge/External_Packages-13-8b5cf6?style=flat-square)
260
- ![Classes](https://img.shields.io/badge/Classes-9-7c3aed?style=flat-square)
261
- ![Functions](https://img.shields.io/badge/Functions-85-16a34a?style=flat-square)
262
- ![Methods](https://img.shields.io/badge/Methods-37-15803d?style=flat-square)
263
- ![Sync Functions](https://img.shields.io/badge/Sync_Functions-98-4ade80?style=flat-square)
264
- ![Async Functions](https://img.shields.io/badge/Async_Functions-24-059669?style=flat-square)
265
- ![Constants](https://img.shields.io/badge/Constants-55-dc2626?style=flat-square)
266
- ![Imports](https://img.shields.io/badge/Imports-89-0284c7?style=flat-square)
267
- ![Exported Symbols](https://img.shields.io/badge/Exported_Symbols-21-ea580c?style=flat-square)
268
- ![Comments](https://img.shields.io/badge/Comments-94-64748b?style=flat-square)
269
- ![Comment Lines](https://img.shields.io/badge/Comment_Lines-208-475569?style=flat-square)
270
- ![TODO Comments](https://img.shields.io/badge/TODO_Comments-0-ca8a04?style=flat-square)
271
-
272
- ### Python
273
-
274
- ![Python Files](https://img.shields.io/badge/Python_Files-0-3776ab?style=flat-square)
275
- ![Python Lines](https://img.shields.io/badge/Python_Lines-0-4b8bbe?style=flat-square)
276
- ![Python Classes](https://img.shields.io/badge/Python_Classes-0-7c3aed?style=flat-square)
277
- ![Python Functions](https://img.shields.io/badge/Python_Functions-0-16a34a?style=flat-square)
278
- ![Python Protocols](https://img.shields.io/badge/Python_Protocols-0-0ea5e9?style=flat-square)
279
- ![Python Constants](https://img.shields.io/badge/Python_Constants-0-dc2626?style=flat-square)
280
- ![Python Imports](https://img.shields.io/badge/Python_Imports-0-0284c7?style=flat-square)
281
- ![Python Decorators](https://img.shields.io/badge/Python_Decorators-0-db2777?style=flat-square)
282
- ![Docstrings](https://img.shields.io/badge/Docstrings-0-6366f1?style=flat-square)
283
- ![Docstring Lines](https://img.shields.io/badge/Docstring_Lines-0-818cf8?style=flat-square)
284
- ![Python Comments](https://img.shields.io/badge/Python_Comments-0-64748b?style=flat-square)
285
- ![Python Comment Lines](https://img.shields.io/badge/Python_Comment_Lines-0-475569?style=flat-square)
286
-
287
- ### JSON
288
-
289
- ![JSON Files](https://img.shields.io/badge/JSON_Files-4-a16207?style=flat-square)
290
- ![JSON Lines](https://img.shields.io/badge/JSON_Lines-159-ca8a04?style=flat-square)
291
- ![JSON Objects](https://img.shields.io/badge/JSON_Objects-37-7c3aed?style=flat-square)
292
- ![JSON Arrays](https://img.shields.io/badge/JSON_Arrays-12-8b5cf6?style=flat-square)
293
- ![JSON Properties](https://img.shields.io/badge/JSON_Properties-98-0284c7?style=flat-square)
294
- ![JSON Strings](https://img.shields.io/badge/JSON_Strings-88-16a34a?style=flat-square)
295
- ![JSON Numbers](https://img.shields.io/badge/JSON_Numbers-1-059669?style=flat-square)
296
- ![JSON Booleans](https://img.shields.io/badge/JSON_Booleans-6-0ea5e9?style=flat-square)
297
- ![JSON Nulls](https://img.shields.io/badge/JSON_Nulls-0-64748b?style=flat-square)
298
- ![JSON Items](https://img.shields.io/badge/JSON_Items-42-475569?style=flat-square)
299
- ![JSON Nodes](https://img.shields.io/badge/JSON_Nodes-144-dc2626?style=flat-square)
300
- ![JSON Max Depth](https://img.shields.io/badge/JSON_Max_Depth-5-ea580c?style=flat-square)
301
-
302
- ### YAML
303
-
304
- ![YAML Files](https://img.shields.io/badge/YAML_Files-0-cb171e?style=flat-square)
305
- ![YAML Lines](https://img.shields.io/badge/YAML_Lines-0-e34c26?style=flat-square)
306
- ![YAML Documents](https://img.shields.io/badge/YAML_Documents-0-f97316?style=flat-square)
307
- ![YAML Mappings](https://img.shields.io/badge/YAML_Mappings-0-7c3aed?style=flat-square)
308
- ![YAML Sequences](https://img.shields.io/badge/YAML_Sequences-0-8b5cf6?style=flat-square)
309
- ![YAML Keys](https://img.shields.io/badge/YAML_Keys-0-0284c7?style=flat-square)
310
- ![YAML Scalars](https://img.shields.io/badge/YAML_Scalars-0-16a34a?style=flat-square)
311
- ![YAML Anchors](https://img.shields.io/badge/YAML_Anchors-0-059669?style=flat-square)
312
- ![YAML Aliases](https://img.shields.io/badge/YAML_Aliases-0-10b981?style=flat-square)
313
- ![YAML Comments](https://img.shields.io/badge/YAML_Comments-0-64748b?style=flat-square)
314
- ![YAML Max Depth](https://img.shields.io/badge/YAML_Max_Depth-0-ea580c?style=flat-square)
315
-
316
- ### TOML
317
-
318
- ![TOML Files](https://img.shields.io/badge/TOML_Files-0-9c4221?style=flat-square)
319
- ![TOML Lines](https://img.shields.io/badge/TOML_Lines-0-b45309?style=flat-square)
320
- ![TOML Tables](https://img.shields.io/badge/TOML_Tables-0-7c3aed?style=flat-square)
321
- ![TOML Array Tables](https://img.shields.io/badge/TOML_Array_Tables-0-8b5cf6?style=flat-square)
322
- ![TOML Keys](https://img.shields.io/badge/TOML_Keys-0-0284c7?style=flat-square)
323
- ![TOML Arrays](https://img.shields.io/badge/TOML_Arrays-0-16a34a?style=flat-square)
324
- ![TOML Comments](https://img.shields.io/badge/TOML_Comments-0-64748b?style=flat-square)
325
-
326
- ### Shell
327
-
328
- ![Shell Files](https://img.shields.io/badge/Shell_Files-0-89e051?style=flat-square)
329
- ![Shell Lines](https://img.shields.io/badge/Shell_Lines-0-4eaa25?style=flat-square)
330
- ![Shell Functions](https://img.shields.io/badge/Shell_Functions-0-16a34a?style=flat-square)
331
- ![Shell Variables](https://img.shields.io/badge/Shell_Variables-0-0284c7?style=flat-square)
332
- ![Shell Exports](https://img.shields.io/badge/Shell_Exports-0-ea580c?style=flat-square)
333
- ![Shell Conditionals](https://img.shields.io/badge/Shell_Conditionals-0-7c3aed?style=flat-square)
334
- ![Shell Loops](https://img.shields.io/badge/Shell_Loops-0-8b5cf6?style=flat-square)
335
- ![Shell Pipelines](https://img.shields.io/badge/Shell_Pipelines-0-059669?style=flat-square)
336
- ![Shebangs](https://img.shields.io/badge/Shebangs-0-6b7280?style=flat-square)
337
- ![Shell Comments](https://img.shields.io/badge/Shell_Comments-0-64748b?style=flat-square)
338
- ![Shell Comment Lines](https://img.shields.io/badge/Shell_Comment_Lines-0-475569?style=flat-square)
339
-
340
- ### SQL
341
-
342
- ![SQL Files](https://img.shields.io/badge/SQL_Files-0-e38c00?style=flat-square)
343
- ![SQL Lines](https://img.shields.io/badge/SQL_Lines-0-f29111?style=flat-square)
344
- ![SQL Statements](https://img.shields.io/badge/SQL_Statements-0-7c3aed?style=flat-square)
345
- ![SQL Selects](https://img.shields.io/badge/SQL_Selects-0-16a34a?style=flat-square)
346
- ![SQL Inserts](https://img.shields.io/badge/SQL_Inserts-0-22c55e?style=flat-square)
347
- ![SQL Updates](https://img.shields.io/badge/SQL_Updates-0-0ea5e9?style=flat-square)
348
- ![SQL Deletes](https://img.shields.io/badge/SQL_Deletes-0-dc2626?style=flat-square)
349
- ![SQL Creates](https://img.shields.io/badge/SQL_Creates-0-0284c7?style=flat-square)
350
- ![SQL Joins](https://img.shields.io/badge/SQL_Joins-0-8b5cf6?style=flat-square)
351
- ![SQL CTEs](https://img.shields.io/badge/SQL_CTEs-0-059669?style=flat-square)
352
- ![SQL Comments](https://img.shields.io/badge/SQL_Comments-0-64748b?style=flat-square)
353
-
354
- ### HCL
355
-
356
- ![HCL Files](https://img.shields.io/badge/HCL_Files-0-844fba?style=flat-square)
357
- ![HCL Lines](https://img.shields.io/badge/HCL_Lines-0-a78bfa?style=flat-square)
358
- ![HCL Blocks](https://img.shields.io/badge/HCL_Blocks-0-7c3aed?style=flat-square)
359
- ![HCL Resources](https://img.shields.io/badge/HCL_Resources-0-0284c7?style=flat-square)
360
- ![HCL Variables](https://img.shields.io/badge/HCL_Variables-0-16a34a?style=flat-square)
361
- ![HCL Outputs](https://img.shields.io/badge/HCL_Outputs-0-059669?style=flat-square)
362
- ![HCL Attributes](https://img.shields.io/badge/HCL_Attributes-0-0ea5e9?style=flat-square)
363
- ![HCL Interpolations](https://img.shields.io/badge/HCL_Interpolations-0-db2777?style=flat-square)
364
- ![HCL Comments](https://img.shields.io/badge/HCL_Comments-0-64748b?style=flat-square)
365
-
366
- ### CSS
367
-
368
- ![CSS Files](https://img.shields.io/badge/CSS_Files-0-264de4?style=flat-square)
369
- ![CSS Lines](https://img.shields.io/badge/CSS_Lines-0-2965f1?style=flat-square)
370
- ![CSS Rules](https://img.shields.io/badge/CSS_Rules-0-7c3aed?style=flat-square)
371
- ![CSS Selectors](https://img.shields.io/badge/CSS_Selectors-0-8b5cf6?style=flat-square)
372
- ![CSS Declarations](https://img.shields.io/badge/CSS_Declarations-0-0284c7?style=flat-square)
373
- ![CSS At Rules](https://img.shields.io/badge/CSS_At_Rules-0-f97316?style=flat-square)
374
- ![CSS Media Queries](https://img.shields.io/badge/CSS_Media_Queries-0-ea580c?style=flat-square)
375
- ![CSS Custom Properties](https://img.shields.io/badge/CSS_Custom_Properties-0-16a34a?style=flat-square)
376
- ![CSS Comments](https://img.shields.io/badge/CSS_Comments-0-64748b?style=flat-square)
377
-
378
- ### Conventions
379
-
380
- ![Module Files](https://img.shields.io/badge/Module_Files-4-7c3aed?style=flat-square)
381
- ![Service Files](https://img.shields.io/badge/Service_Files-5-0284c7?style=flat-square)
382
- ![Command Files](https://img.shields.io/badge/Command_Files-0-16a34a?style=flat-square)
383
- ![Constants Files](https://img.shields.io/badge/Constants_Files-4-ea580c?style=flat-square)
384
- ![Types Files](https://img.shields.io/badge/Types_Files-4-db2777?style=flat-square)
385
- ![Utilities Files](https://img.shields.io/badge/Utilities_Files-0-0ea5e9?style=flat-square)
386
- ![TypeORM Entities](https://img.shields.io/badge/TypeORM_Entities-0-059669?style=flat-square)
387
- ![Unit Tests](https://img.shields.io/badge/Unit_Tests-6-ca8a04?style=flat-square)
388
- ![Integration Tests](https://img.shields.io/badge/Integration_Tests-0-7c3aed?style=flat-square)
389
- ![End To End Tests](https://img.shields.io/badge/End_To_End_Tests-0-0284c7?style=flat-square)
390
- ![CSS Comment Budget](https://img.shields.io/badge/CSS_Comment_Budget-0-16a34a?style=flat-square)
391
- ![HCL Comment Budget](https://img.shields.io/badge/HCL_Comment_Budget-0-ea580c?style=flat-square)
392
- ![Python Comment Budget](https://img.shields.io/badge/Python_Comment_Budget-0-db2777?style=flat-square)
393
- ![SQL Comment Budget](https://img.shields.io/badge/SQL_Comment_Budget-0-0ea5e9?style=flat-square)
394
- ![TOML Comment Budget](https://img.shields.io/badge/TOML_Comment_Budget-0-059669?style=flat-square)
395
- ![TypeScript Comment Budget](https://img.shields.io/badge/TypeScript_Comment_Budget-0-ca8a04?style=flat-square)
396
- ![YAML Comment Budget](https://img.shields.io/badge/YAML_Comment_Budget-0-7c3aed?style=flat-square)
397
- ![Shell Comment Budget](https://img.shields.io/badge/Shell_Comment_Budget-0-0284c7?style=flat-square)
398
-
399
- ### Jupyter
400
-
401
- ![Notebooks](https://img.shields.io/badge/Notebooks-0-f37626?style=flat-square)
402
- ![Notebook Cells](https://img.shields.io/badge/Notebook_Cells-0-e8a33d?style=flat-square)
403
- ![Code Cells](https://img.shields.io/badge/Code_Cells-0-3776ab?style=flat-square)
404
- ![Markdown Cells](https://img.shields.io/badge/Markdown_Cells-0-083fa1?style=flat-square)
405
- ![Raw Cells](https://img.shields.io/badge/Raw_Cells-0-9ca3af?style=flat-square)
406
- ![Executed Cells](https://img.shields.io/badge/Executed_Cells-0-16a34a?style=flat-square)
407
- ![Cell Outputs](https://img.shields.io/badge/Cell_Outputs-0-059669?style=flat-square)
408
- ![Notebook Code Lines](https://img.shields.io/badge/Notebook_Code_Lines-0-4b8bbe?style=flat-square)
409
- ![Notebook Classes](https://img.shields.io/badge/Notebook_Classes-0-7c3aed?style=flat-square)
410
- ![Notebook Functions](https://img.shields.io/badge/Notebook_Functions-0-22c55e?style=flat-square)
411
- ![Notebook Imports](https://img.shields.io/badge/Notebook_Imports-0-0284c7?style=flat-square)
412
- ![Notebook Decorators](https://img.shields.io/badge/Notebook_Decorators-0-db2777?style=flat-square)
413
- ![Notebook Prose Lines](https://img.shields.io/badge/Notebook_Prose_Lines-0-1f6feb?style=flat-square)
414
- ![Notebook Headings](https://img.shields.io/badge/Notebook_Headings-0-a78bfa?style=flat-square)
415
- ![Notebook Links](https://img.shields.io/badge/Notebook_Links-0-10b981?style=flat-square)
416
- ![Notebook Images](https://img.shields.io/badge/Notebook_Images-0-34d399?style=flat-square)
417
- ![Notebook Code Blocks](https://img.shields.io/badge/Notebook_Code_Blocks-0-dc2626?style=flat-square)
418
- ![Notebook Properties](https://img.shields.io/badge/Notebook_Properties-0-ca8a04?style=flat-square)
419
- ![Notebook Nodes](https://img.shields.io/badge/Notebook_Nodes-0-a16207?style=flat-square)
420
- ![Notebook Max Depth](https://img.shields.io/badge/Notebook_Max_Depth-0-ea580c?style=flat-square)
421
-
422
- ### Markdown
423
-
424
- ![Markdown Files](https://img.shields.io/badge/Markdown_Files-2-083fa1?style=flat-square)
425
- ![Markdown Lines](https://img.shields.io/badge/Markdown_Lines-316-1f6feb?style=flat-square)
426
- ![H1](https://img.shields.io/badge/H1-1-7c3aed?style=flat-square)
427
- ![H2](https://img.shields.io/badge/H2-19-8b5cf6?style=flat-square)
428
- ![H3](https://img.shields.io/badge/H3-26-a78bfa?style=flat-square)
429
- ![H4](https://img.shields.io/badge/H4-0-c4b5fd?style=flat-square)
430
- ![H5](https://img.shields.io/badge/H5-0-ddd6fe?style=flat-square)
431
- ![H6](https://img.shields.io/badge/H6-0-ede9fe?style=flat-square)
432
- ![Paragraphs](https://img.shields.io/badge/Paragraphs-74-64748b?style=flat-square)
433
- ![Lists](https://img.shields.io/badge/Lists-20-16a34a?style=flat-square)
434
- ![List Items](https://img.shields.io/badge/List_Items-54-22c55e?style=flat-square)
435
- ![Task List Items](https://img.shields.io/badge/Task_List_Items-0-4ade80?style=flat-square)
436
- ![Tables](https://img.shields.io/badge/Tables-2-0284c7?style=flat-square)
437
- ![Table Rows](https://img.shields.io/badge/Table_Rows-10-0ea5e9?style=flat-square)
438
- ![Links](https://img.shields.io/badge/Links-18-059669?style=flat-square)
439
- ![Images](https://img.shields.io/badge/Images-0-10b981?style=flat-square)
440
- ![Code Blocks](https://img.shields.io/badge/Code_Blocks-11-dc2626?style=flat-square)
441
- ![Inline Code](https://img.shields.io/badge/Inline_Code-72-ef4444?style=flat-square)
442
- ![Block Quotes](https://img.shields.io/badge/Block_Quotes-0-ca8a04?style=flat-square)
443
- ![Thematic Breaks](https://img.shields.io/badge/Thematic_Breaks-0-a16207?style=flat-square)
444
- <!-- codometer:end -->
package/dist/src/index.js CHANGED
@@ -8,11 +8,11 @@ import { LanguagesModule as l, LanguagesService as u } from "@coinagerie/languag
8
8
  import { readFile as d } from "node:fs/promises";
9
9
  // \0rolldown/runtime.js
10
10
  var f = ".gitignore";
11
- // \0@oxc-project+runtime@0.155.0/helpers/esm/decorateMetadata.js
11
+ // \0@oxc-project+runtime@0.156.0/helpers/esm/decorateMetadata.js
12
12
  function __decorateMetadata(e, t) {
13
13
  if (typeof Reflect == "object" && typeof Reflect.metadata == "function") return Reflect.metadata(e, t);
14
14
  }
15
- // \0@oxc-project+runtime@0.155.0/helpers/esm/decorate.js
15
+ // \0@oxc-project+runtime@0.156.0/helpers/esm/decorate.js
16
16
  function __decorate(e, t, n, r) {
17
17
  var i = arguments.length, a = i < 3 ? t : r === null ? r = Object.getOwnPropertyDescriptor(t, n) : r, o;
18
18
  if (typeof Reflect == "object" && typeof Reflect.decorate == "function") a = Reflect.decorate(e, t, n, r);
package/package.json CHANGED
@@ -4,16 +4,16 @@
4
4
  "url": "https://github.com/organizzolini/codebase/issues"
5
5
  },
6
6
  "dependencies": {
7
- "@coinagerie/configuration": "0.0.12",
8
- "@coinagerie/languages": "0.0.12",
7
+ "@coinagerie/configuration": "0.0.14",
8
+ "@coinagerie/languages": "0.0.14",
9
9
  "@nestjs/common": "^11.1.21 || ^12.0.1",
10
10
  "ignore": "7.0.14",
11
11
  "pluralize": "^8.0.0",
12
- "reflect-metadata": "^0.2.2",
13
12
  "wink-lemmatizer": "^3.0.4"
14
13
  },
15
14
  "description": "File discovery, word splitting, folding, and exclusion that turn a codebase into a sorted list of headwords",
16
15
  "devDependencies": {
16
+ "@codebase/testing": "0.0.1",
17
17
  "@golevelup/ts-vitest": "^4.0.0",
18
18
  "@nestjs/testing": "^12.0.1",
19
19
  "@nx/eslint-plugin": "^24.0.0",
@@ -21,6 +21,7 @@
21
21
  "@types/node": "^26.5.1",
22
22
  "@types/pluralize": "^0.0.33",
23
23
  "@vitest/coverage-v8": "^5.0.0",
24
+ "reflect-metadata": "^0.2.2",
24
25
  "vitest": "^5.0.0"
25
26
  },
26
27
  "exports": {
@@ -61,5 +62,5 @@
61
62
  "strict": true
62
63
  },
63
64
  "types": "./dist/src/index.d.ts",
64
- "version": "0.0.12"
65
+ "version": "0.0.14"
65
66
  }