@isdk/util 0.3.6 → 0.3.8

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.
Files changed (64) hide show
  1. package/dist/index.d.mts +147 -23
  2. package/dist/index.d.ts +147 -23
  3. package/dist/index.js +1 -1
  4. package/dist/index.mjs +1 -1
  5. package/docs/classes/BinarySemaphore.md +25 -25
  6. package/docs/classes/ConfigFile.md +6 -6
  7. package/docs/classes/Deque.md +13 -13
  8. package/docs/classes/IntSet.md +12 -12
  9. package/docs/classes/Semaphore.md +26 -26
  10. package/docs/classes/SignalGate.md +9 -9
  11. package/docs/functions/RateLimit.md +1 -1
  12. package/docs/functions/arrayHasAll.md +1 -1
  13. package/docs/functions/extNameLevel.md +1 -1
  14. package/docs/functions/extractCodeBlock.md +51 -0
  15. package/docs/functions/extractTopLevelCodeBlocks.md +37 -0
  16. package/docs/functions/filenameReservedRegex.md +1 -1
  17. package/docs/functions/findPort.md +1 -1
  18. package/docs/functions/getMultiLevelExtname.md +1 -1
  19. package/docs/functions/glob.md +1 -1
  20. package/docs/functions/isStringIn.md +1 -1
  21. package/docs/functions/isValidFilename.md +1 -1
  22. package/docs/functions/isValidFilepath.md +1 -1
  23. package/docs/functions/normalizeIncludeFiles.md +1 -1
  24. package/docs/functions/omitDeepBy.md +1 -1
  25. package/docs/functions/omitEmptyDeep.md +1 -1
  26. package/docs/functions/parseCodeBlockSelector.md +34 -0
  27. package/docs/functions/parseFrontMatter.md +1 -1
  28. package/docs/functions/parseYaml.md +1 -1
  29. package/docs/functions/reControlCharsRegex.md +1 -1
  30. package/docs/functions/registerYamlTag.md +1 -1
  31. package/docs/functions/removeLeadingEmptyLines.md +1 -1
  32. package/docs/functions/sanitizeFilename.md +1 -1
  33. package/docs/functions/sanitizeFilepath.md +1 -1
  34. package/docs/functions/sleep.md +1 -1
  35. package/docs/functions/stringifyYaml.md +1 -1
  36. package/docs/functions/toCamelCase.md +1 -1
  37. package/docs/functions/toCapitalCase.md +1 -1
  38. package/docs/functions/toPascalCase.md +1 -1
  39. package/docs/functions/traverseFolder.md +1 -1
  40. package/docs/functions/traverseFolderSync.md +1 -1
  41. package/docs/functions/yieldExec.md +1 -1
  42. package/docs/globals.md +7 -0
  43. package/docs/interfaces/BinarySemaphoreAcquireOptions.md +2 -2
  44. package/docs/interfaces/BinarySemaphoreOptions.md +5 -5
  45. package/docs/interfaces/BinarySemaphoreReleaseOptions.md +2 -2
  46. package/docs/interfaces/BinarySemaphoreReleaserFunc.md +3 -3
  47. package/docs/interfaces/CodeBlockSelectorPart.md +36 -0
  48. package/docs/interfaces/CodeString.md +1712 -0
  49. package/docs/interfaces/ExtractCodeBlockOptions.md +64 -0
  50. package/docs/interfaces/IncludeFiles.md +3 -3
  51. package/docs/interfaces/LoadConfigFileOptions.md +3 -3
  52. package/docs/interfaces/SanitizeFilenameOptions.md +3 -3
  53. package/docs/interfaces/SemaphoreOptions.md +7 -7
  54. package/docs/interfaces/SemaphoreTaskItem.md +5 -5
  55. package/docs/type-aliases/CodeBlockCombinator.md +18 -0
  56. package/docs/type-aliases/SemaphoreIsReadyFuncType.md +1 -1
  57. package/docs/type-aliases/StringifyFunc.md +1 -1
  58. package/docs/type-aliases/TraverseFolderHandler.md +1 -1
  59. package/docs/type-aliases/TraverseFolderSyncHandler.md +1 -1
  60. package/docs/variables/DefaultAllTextFiles.md +1 -1
  61. package/docs/variables/DefaultAsyncSemaphoreCapacity.md +1 -1
  62. package/docs/variables/FilenameReservedRegex.md +1 -1
  63. package/docs/variables/WindowsReservedNameRegex.md +1 -1
  64. package/package.json +2 -1
@@ -8,7 +8,7 @@
8
8
 
9
9
  > **sleep**(`ms`): `Promise`\<`void`\>
10
10
 
11
- Defined in: [src/sleep.ts:12](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/sleep.ts#L12)
11
+ Defined in: [src/sleep.ts:12](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/sleep.ts#L12)
12
12
 
13
13
  Suspends execution for a specified number of milliseconds
14
14
 
@@ -8,7 +8,7 @@
8
8
 
9
9
  > **stringifyYaml**(`content`, `options?`): `string`
10
10
 
11
- Defined in: [src/yaml.ts:85](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/yaml.ts#L85)
11
+ Defined in: [src/yaml.ts:103](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/yaml.ts#L103)
12
12
 
13
13
  Converts a JavaScript object into a YAML string with optional custom tags.
14
14
 
@@ -8,7 +8,7 @@
8
8
 
9
9
  > **toCamelCase**(`str`): `string`
10
10
 
11
- Defined in: [src/to-camel-case.ts:17](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/to-camel-case.ts#L17)
11
+ Defined in: [src/to-camel-case.ts:17](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/to-camel-case.ts#L17)
12
12
 
13
13
  Converts a string to camelCase.
14
14
 
@@ -8,7 +8,7 @@
8
8
 
9
9
  > **toCapitalCase**(`str`): `string`
10
10
 
11
- Defined in: [src/to-capital-case.ts:17](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/to-capital-case.ts#L17)
11
+ Defined in: [src/to-capital-case.ts:17](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/to-capital-case.ts#L17)
12
12
 
13
13
  Converts a string to capital case, where the first letter of each word is capitalized
14
14
  and the rest are in lowercase. Words are separated by spaces, hyphens, or underscores.
@@ -8,7 +8,7 @@
8
8
 
9
9
  > **toPascalCase**(`str`): `string`
10
10
 
11
- Defined in: [src/to-pascal-case.ts:16](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/to-pascal-case.ts#L16)
11
+ Defined in: [src/to-pascal-case.ts:16](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/to-pascal-case.ts#L16)
12
12
 
13
13
  Converts a string to PascalCase.
14
14
 
@@ -8,7 +8,7 @@
8
8
 
9
9
  > **traverseFolder**(`directoryPath`, `fileHandler`): `Promise`\<`void`\>
10
10
 
11
- Defined in: [src/traverse-folder.ts:38](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/traverse-folder.ts#L38)
11
+ Defined in: [src/traverse-folder.ts:44](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/traverse-folder.ts#L44)
12
12
 
13
13
  Traverses a folder asynchronously and applies a handler to each file or directory.
14
14
 
@@ -8,7 +8,7 @@
8
8
 
9
9
  > **traverseFolderSync**(`directoryPath`, `fileHandler`): `void`
10
10
 
11
- Defined in: [src/traverse-folder.ts:76](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/traverse-folder.ts#L76)
11
+ Defined in: [src/traverse-folder.ts:89](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/traverse-folder.ts#L89)
12
12
 
13
13
  Traverses a folder synchronously and applies a handler to each file or directory.
14
14
 
@@ -8,7 +8,7 @@
8
8
 
9
9
  > **yieldExec**(): `Promise`\<`void`\>
10
10
 
11
- Defined in: [src/sleep.ts:28](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/sleep.ts#L28)
11
+ Defined in: [src/sleep.ts:28](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/sleep.ts#L28)
12
12
 
13
13
  Yields execution control to the event loop, allowing pending I/O operations
14
14
  and scheduled tasks to run before continuing.
package/docs/globals.md CHANGED
@@ -19,6 +19,9 @@
19
19
  - [BinarySemaphoreOptions](interfaces/BinarySemaphoreOptions.md)
20
20
  - [BinarySemaphoreReleaseOptions](interfaces/BinarySemaphoreReleaseOptions.md)
21
21
  - [BinarySemaphoreReleaserFunc](interfaces/BinarySemaphoreReleaserFunc.md)
22
+ - [CodeBlockSelectorPart](interfaces/CodeBlockSelectorPart.md)
23
+ - [CodeString](interfaces/CodeString.md)
24
+ - [ExtractCodeBlockOptions](interfaces/ExtractCodeBlockOptions.md)
22
25
  - [IncludeFiles](interfaces/IncludeFiles.md)
23
26
  - [LoadConfigFileOptions](interfaces/LoadConfigFileOptions.md)
24
27
  - [SanitizeFilenameOptions](interfaces/SanitizeFilenameOptions.md)
@@ -27,6 +30,7 @@
27
30
 
28
31
  ## Type Aliases
29
32
 
33
+ - [CodeBlockCombinator](type-aliases/CodeBlockCombinator.md)
30
34
  - [SemaphoreIsReadyFuncType](type-aliases/SemaphoreIsReadyFuncType.md)
31
35
  - [StringifyFunc](type-aliases/StringifyFunc.md)
32
36
  - [TraverseFolderHandler](type-aliases/TraverseFolderHandler.md)
@@ -43,6 +47,8 @@
43
47
 
44
48
  - [arrayHasAll](functions/arrayHasAll.md)
45
49
  - [extNameLevel](functions/extNameLevel.md)
50
+ - [extractCodeBlock](functions/extractCodeBlock.md)
51
+ - [extractTopLevelCodeBlocks](functions/extractTopLevelCodeBlocks.md)
46
52
  - [filenameReservedRegex](functions/filenameReservedRegex.md)
47
53
  - [findPort](functions/findPort.md)
48
54
  - [getMultiLevelExtname](functions/getMultiLevelExtname.md)
@@ -53,6 +59,7 @@
53
59
  - [normalizeIncludeFiles](functions/normalizeIncludeFiles.md)
54
60
  - [omitDeepBy](functions/omitDeepBy.md)
55
61
  - [omitEmptyDeep](functions/omitEmptyDeep.md)
62
+ - [parseCodeBlockSelector](functions/parseCodeBlockSelector.md)
56
63
  - [parseFrontMatter](functions/parseFrontMatter.md)
57
64
  - [parseYaml](functions/parseYaml.md)
58
65
  - [RateLimit](functions/RateLimit.md)
@@ -6,7 +6,7 @@
6
6
 
7
7
  # Interface: BinarySemaphoreAcquireOptions
8
8
 
9
- Defined in: [src/async-semaphore.ts:28](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/async-semaphore.ts#L28)
9
+ Defined in: [src/async-semaphore.ts:28](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/async-semaphore.ts#L28)
10
10
 
11
11
  ## Extended by
12
12
 
@@ -22,4 +22,4 @@ Defined in: [src/async-semaphore.ts:28](https://github.com/isdk/util.js/blob/618
22
22
 
23
23
  > `optional` **signal**: `AbortSignal`
24
24
 
25
- Defined in: [src/async-semaphore.ts:29](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/async-semaphore.ts#L29)
25
+ Defined in: [src/async-semaphore.ts:29](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/async-semaphore.ts#L29)
@@ -6,7 +6,7 @@
6
6
 
7
7
  # Interface: BinarySemaphoreOptions
8
8
 
9
- Defined in: [src/async-semaphore.ts:21](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/async-semaphore.ts#L21)
9
+ Defined in: [src/async-semaphore.ts:21](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/async-semaphore.ts#L21)
10
10
 
11
11
  ## Extended by
12
12
 
@@ -18,7 +18,7 @@ Defined in: [src/async-semaphore.ts:21](https://github.com/isdk/util.js/blob/618
18
18
 
19
19
  > `optional` **capacity**: `number`
20
20
 
21
- Defined in: [src/async-semaphore.ts:25](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/async-semaphore.ts#L25)
21
+ Defined in: [src/async-semaphore.ts:25](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/async-semaphore.ts#L25)
22
22
 
23
23
  ***
24
24
 
@@ -26,7 +26,7 @@ Defined in: [src/async-semaphore.ts:25](https://github.com/isdk/util.js/blob/618
26
26
 
27
27
  > `optional` **initFn**: () => `any`
28
28
 
29
- Defined in: [src/async-semaphore.ts:22](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/async-semaphore.ts#L22)
29
+ Defined in: [src/async-semaphore.ts:22](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/async-semaphore.ts#L22)
30
30
 
31
31
  #### Returns
32
32
 
@@ -38,7 +38,7 @@ Defined in: [src/async-semaphore.ts:22](https://github.com/isdk/util.js/blob/618
38
38
 
39
39
  > `optional` **pauseFn**: () => `void`
40
40
 
41
- Defined in: [src/async-semaphore.ts:23](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/async-semaphore.ts#L23)
41
+ Defined in: [src/async-semaphore.ts:23](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/async-semaphore.ts#L23)
42
42
 
43
43
  #### Returns
44
44
 
@@ -50,7 +50,7 @@ Defined in: [src/async-semaphore.ts:23](https://github.com/isdk/util.js/blob/618
50
50
 
51
51
  > `optional` **resumeFn**: () => `void`
52
52
 
53
- Defined in: [src/async-semaphore.ts:24](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/async-semaphore.ts#L24)
53
+ Defined in: [src/async-semaphore.ts:24](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/async-semaphore.ts#L24)
54
54
 
55
55
  #### Returns
56
56
 
@@ -6,7 +6,7 @@
6
6
 
7
7
  # Interface: BinarySemaphoreReleaseOptions
8
8
 
9
- Defined in: [src/async-semaphore.ts:33](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/async-semaphore.ts#L33)
9
+ Defined in: [src/async-semaphore.ts:33](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/async-semaphore.ts#L33)
10
10
 
11
11
  ## Extended by
12
12
 
@@ -22,4 +22,4 @@ Defined in: [src/async-semaphore.ts:33](https://github.com/isdk/util.js/blob/618
22
22
 
23
23
  > `optional` **token**: `any`
24
24
 
25
- Defined in: [src/async-semaphore.ts:34](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/async-semaphore.ts#L34)
25
+ Defined in: [src/async-semaphore.ts:34](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/async-semaphore.ts#L34)
@@ -6,7 +6,7 @@
6
6
 
7
7
  # Interface: BinarySemaphoreReleaserFunc()
8
8
 
9
- Defined in: [src/async-semaphore.ts:38](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/async-semaphore.ts#L38)
9
+ Defined in: [src/async-semaphore.ts:38](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/async-semaphore.ts#L38)
10
10
 
11
11
  ## Extends
12
12
 
@@ -14,7 +14,7 @@ Defined in: [src/async-semaphore.ts:38](https://github.com/isdk/util.js/blob/618
14
14
 
15
15
  > **BinarySemaphoreReleaserFunc**(): `void`
16
16
 
17
- Defined in: [src/async-semaphore.ts:39](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/async-semaphore.ts#L39)
17
+ Defined in: [src/async-semaphore.ts:39](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/async-semaphore.ts#L39)
18
18
 
19
19
  ## Returns
20
20
 
@@ -30,7 +30,7 @@ Defined in: [src/async-semaphore.ts:39](https://github.com/isdk/util.js/blob/618
30
30
 
31
31
  > `optional` **token**: `any`
32
32
 
33
- Defined in: [src/async-semaphore.ts:34](https://github.com/isdk/util.js/blob/61856e5b1bbb9d976eeb1fdfe1a4d88a26997dec/src/async-semaphore.ts#L34)
33
+ Defined in: [src/async-semaphore.ts:34](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/async-semaphore.ts#L34)
34
34
 
35
35
  #### Inherited from
36
36
 
@@ -0,0 +1,36 @@
1
+ [**@isdk/util**](../README.md)
2
+
3
+ ***
4
+
5
+ [@isdk/util](../globals.md) / CodeBlockSelectorPart
6
+
7
+ # Interface: CodeBlockSelectorPart
8
+
9
+ Defined in: [src/extract-code-block.ts:38](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/extract-code-block.ts#L38)
10
+
11
+ Represents a single segment in a code block selector path.
12
+
13
+ A path like `md > ts` is parsed into two parts:
14
+ 1. `{ combinator: ' ', lang: 'md' }`
15
+ 2. `{ combinator: '>', lang: 'ts' }`
16
+
17
+ ## Properties
18
+
19
+ ### combinator
20
+
21
+ > **combinator**: [`CodeBlockCombinator`](../type-aliases/CodeBlockCombinator.md)
22
+
23
+ Defined in: [src/extract-code-block.ts:43](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/extract-code-block.ts#L43)
24
+
25
+ The relationship to the previous segment in the path.
26
+ For the first segment, ' ' usually implies a search in the root context.
27
+
28
+ ***
29
+
30
+ ### lang
31
+
32
+ > **lang**: `string`
33
+
34
+ Defined in: [src/extract-code-block.ts:47](https://github.com/isdk/util.js/blob/2279f0b4363625d4cd214e9bab0415d49b594498/src/extract-code-block.ts#L47)
35
+
36
+ The target language identifier or alias to match.