@isdk/util 0.3.8 → 0.3.10
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.d.mts +260 -144
- package/dist/index.d.ts +260 -144
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/docs/classes/BinarySemaphore.md +145 -64
- package/docs/classes/ConfigFile.md +8 -8
- package/docs/classes/Deque.md +109 -105
- package/docs/classes/IntSet.md +12 -12
- package/docs/classes/Semaphore.md +149 -77
- package/docs/classes/SignalGate.md +11 -11
- package/docs/functions/RateLimit.md +30 -7
- package/docs/functions/arrayHasAll.md +1 -1
- package/docs/functions/extNameLevel.md +1 -1
- package/docs/functions/extractCodeBlock.md +3 -3
- package/docs/functions/extractTopLevelCodeBlocks.md +1 -1
- package/docs/functions/filenameReservedRegex.md +1 -1
- package/docs/functions/findPort.md +13 -5
- package/docs/functions/getMultiLevelExtname.md +1 -1
- package/docs/functions/glob.md +1 -1
- package/docs/functions/isStringIn.md +3 -3
- package/docs/functions/isValidFilename.md +1 -1
- package/docs/functions/isValidFilepath.md +1 -1
- package/docs/functions/normalizeIncludeFiles.md +3 -3
- package/docs/functions/omitDeepBy.md +1 -1
- package/docs/functions/omitEmptyDeep.md +1 -1
- package/docs/functions/parseCodeBlockSelector.md +2 -2
- package/docs/functions/parseFrontMatter.md +1 -1
- package/docs/functions/parseYaml.md +1 -1
- package/docs/functions/reControlCharsRegex.md +1 -1
- package/docs/functions/registerYamlTag.md +3 -3
- package/docs/functions/removeLeadingEmptyLines.md +1 -1
- package/docs/functions/sanitizeFilename.md +1 -1
- package/docs/functions/sanitizeFilepath.md +1 -1
- package/docs/functions/sleep.md +1 -1
- package/docs/functions/stringifyYaml.md +1 -1
- package/docs/functions/toCamelCase.md +1 -1
- package/docs/functions/toCapitalCase.md +1 -1
- package/docs/functions/toPascalCase.md +1 -1
- package/docs/functions/traverseFolder.md +1 -1
- package/docs/functions/traverseFolderSync.md +1 -1
- package/docs/functions/yieldExec.md +1 -1
- package/docs/globals.md +1 -0
- package/docs/interfaces/BinarySemaphoreAcquireOptions.md +11 -4
- package/docs/interfaces/BinarySemaphoreOptions.md +29 -12
- package/docs/interfaces/BinarySemaphoreReleaseOptions.md +10 -4
- package/docs/interfaces/BinarySemaphoreReleaserFunc.md +14 -5
- package/docs/interfaces/CodeBlockSelectorPart.md +4 -4
- package/docs/interfaces/CodeString.md +89 -89
- package/docs/interfaces/ExtractCodeBlockOptions.md +9 -9
- package/docs/interfaces/FindPortOptions.md +25 -0
- package/docs/interfaces/IncludeFiles.md +5 -5
- package/docs/interfaces/LoadConfigFileOptions.md +5 -5
- package/docs/interfaces/SanitizeFilenameOptions.md +5 -5
- package/docs/interfaces/SemaphoreOptions.md +39 -16
- package/docs/interfaces/SemaphoreTaskItem.md +23 -10
- package/docs/type-aliases/CodeBlockCombinator.md +1 -1
- package/docs/type-aliases/SemaphoreIsReadyFuncType.md +5 -2
- package/docs/type-aliases/StringifyFunc.md +2 -2
- package/docs/type-aliases/TraverseFolderHandler.md +2 -2
- package/docs/type-aliases/TraverseFolderSyncHandler.md +2 -2
- package/docs/variables/DefaultAllTextFiles.md +1 -1
- package/docs/variables/DefaultAsyncSemaphoreCapacity.md +4 -1
- package/docs/variables/FilenameReservedRegex.md +1 -1
- package/docs/variables/WindowsReservedNameRegex.md +1 -1
- package/package.json +20 -17
|
@@ -6,7 +6,9 @@
|
|
|
6
6
|
|
|
7
7
|
# Interface: BinarySemaphoreOptions
|
|
8
8
|
|
|
9
|
-
Defined in: [src/async-semaphore.ts:
|
|
9
|
+
Defined in: [src/async-semaphore.ts:41](https://github.com/isdk/util.js/blob/c98bd1bf94d1b1dc8d01c6b9a6fc50b4beec5c62/src/async-semaphore.ts#L41)
|
|
10
|
+
|
|
11
|
+
二进制信号量的配置选项。
|
|
10
12
|
|
|
11
13
|
## Extended by
|
|
12
14
|
|
|
@@ -16,17 +18,24 @@ Defined in: [src/async-semaphore.ts:21](https://github.com/isdk/util.js/blob/227
|
|
|
16
18
|
|
|
17
19
|
### capacity?
|
|
18
20
|
|
|
19
|
-
> `optional` **capacity
|
|
21
|
+
> `optional` **capacity?**: `number`
|
|
22
|
+
|
|
23
|
+
Defined in: [src/async-semaphore.ts:64](https://github.com/isdk/util.js/blob/c98bd1bf94d1b1dc8d01c6b9a6fc50b4beec5c62/src/async-semaphore.ts#L64)
|
|
20
24
|
|
|
21
|
-
|
|
25
|
+
内部等待队列的初始预分配容量。
|
|
26
|
+
适用于高性能场景,开发者可以根据并发规模预估此值以减少动态扩容。
|
|
22
27
|
|
|
23
28
|
***
|
|
24
29
|
|
|
25
|
-
### initFn
|
|
30
|
+
### initFn?
|
|
31
|
+
|
|
32
|
+
> `optional` **initFn?**: () => `any`
|
|
26
33
|
|
|
27
|
-
|
|
34
|
+
Defined in: [src/async-semaphore.ts:47](https://github.com/isdk/util.js/blob/c98bd1bf94d1b1dc8d01c6b9a6fc50b4beec5c62/src/async-semaphore.ts#L47)
|
|
28
35
|
|
|
29
|
-
|
|
36
|
+
用于初始化令牌的函数。
|
|
37
|
+
当信号量释放且没有等待任务时,如果未提供令牌,将调用此函数生成新令牌。
|
|
38
|
+
默认为 `() => '1'`。
|
|
30
39
|
|
|
31
40
|
#### Returns
|
|
32
41
|
|
|
@@ -34,11 +43,15 @@ Defined in: [src/async-semaphore.ts:22](https://github.com/isdk/util.js/blob/227
|
|
|
34
43
|
|
|
35
44
|
***
|
|
36
45
|
|
|
37
|
-
### pauseFn
|
|
46
|
+
### pauseFn?
|
|
38
47
|
|
|
39
|
-
> `optional` **pauseFn
|
|
48
|
+
> `optional` **pauseFn?**: () => `void`
|
|
40
49
|
|
|
41
|
-
Defined in: [src/async-semaphore.ts:
|
|
50
|
+
Defined in: [src/async-semaphore.ts:53](https://github.com/isdk/util.js/blob/c98bd1bf94d1b1dc8d01c6b9a6fc50b4beec5c62/src/async-semaphore.ts#L53)
|
|
51
|
+
|
|
52
|
+
可选的暂停函数。
|
|
53
|
+
当等待队列开始积压(第一个任务进入队列)时调用,用于通知上游停止发送数据,
|
|
54
|
+
以避免产生过多的等待 Promise 导致内存溢出。
|
|
42
55
|
|
|
43
56
|
#### Returns
|
|
44
57
|
|
|
@@ -46,11 +59,15 @@ Defined in: [src/async-semaphore.ts:23](https://github.com/isdk/util.js/blob/227
|
|
|
46
59
|
|
|
47
60
|
***
|
|
48
61
|
|
|
49
|
-
### resumeFn
|
|
62
|
+
### resumeFn?
|
|
63
|
+
|
|
64
|
+
> `optional` **resumeFn?**: () => `void`
|
|
50
65
|
|
|
51
|
-
|
|
66
|
+
Defined in: [src/async-semaphore.ts:59](https://github.com/isdk/util.js/blob/c98bd1bf94d1b1dc8d01c6b9a6fc50b4beec5c62/src/async-semaphore.ts#L59)
|
|
52
67
|
|
|
53
|
-
|
|
68
|
+
可选的恢复函数。
|
|
69
|
+
当信号量有空闲槽位且之前已调用过 `pauseFn` 时调用。
|
|
70
|
+
如果定义了 `pauseFn`,则必须同时定义此函数。
|
|
54
71
|
|
|
55
72
|
#### Returns
|
|
56
73
|
|
|
@@ -6,7 +6,9 @@
|
|
|
6
6
|
|
|
7
7
|
# Interface: BinarySemaphoreReleaseOptions
|
|
8
8
|
|
|
9
|
-
Defined in: [src/async-semaphore.ts:
|
|
9
|
+
Defined in: [src/async-semaphore.ts:85](https://github.com/isdk/util.js/blob/c98bd1bf94d1b1dc8d01c6b9a6fc50b4beec5c62/src/async-semaphore.ts#L85)
|
|
10
|
+
|
|
11
|
+
释放信号量时的选项。
|
|
10
12
|
|
|
11
13
|
## Extended by
|
|
12
14
|
|
|
@@ -14,12 +16,16 @@ Defined in: [src/async-semaphore.ts:33](https://github.com/isdk/util.js/blob/227
|
|
|
14
16
|
|
|
15
17
|
## Indexable
|
|
16
18
|
|
|
17
|
-
\[`n`: `string`\]: `any`
|
|
19
|
+
> \[`n`: `string`\]: `any`
|
|
20
|
+
|
|
21
|
+
允许扩展其他自定义选项。
|
|
18
22
|
|
|
19
23
|
## Properties
|
|
20
24
|
|
|
21
25
|
### token?
|
|
22
26
|
|
|
23
|
-
> `optional` **token
|
|
27
|
+
> `optional` **token?**: `any`
|
|
28
|
+
|
|
29
|
+
Defined in: [src/async-semaphore.ts:89](https://github.com/isdk/util.js/blob/c98bd1bf94d1b1dc8d01c6b9a6fc50b4beec5c62/src/async-semaphore.ts#L89)
|
|
24
30
|
|
|
25
|
-
|
|
31
|
+
可选的令牌。如果使用了自定义的 `initFn`,释放时应归还对应的令牌。
|
|
@@ -6,7 +6,10 @@
|
|
|
6
6
|
|
|
7
7
|
# Interface: BinarySemaphoreReleaserFunc()
|
|
8
8
|
|
|
9
|
-
Defined in: [src/async-semaphore.ts:
|
|
9
|
+
Defined in: [src/async-semaphore.ts:100](https://github.com/isdk/util.js/blob/c98bd1bf94d1b1dc8d01c6b9a6fc50b4beec5c62/src/async-semaphore.ts#L100)
|
|
10
|
+
|
|
11
|
+
信号量释放函数的接口定义。
|
|
12
|
+
它本身是一个函数,同时也包含释放选项作为属性。
|
|
10
13
|
|
|
11
14
|
## Extends
|
|
12
15
|
|
|
@@ -14,7 +17,9 @@ Defined in: [src/async-semaphore.ts:38](https://github.com/isdk/util.js/blob/227
|
|
|
14
17
|
|
|
15
18
|
> **BinarySemaphoreReleaserFunc**(): `void`
|
|
16
19
|
|
|
17
|
-
Defined in: [src/async-semaphore.ts:
|
|
20
|
+
Defined in: [src/async-semaphore.ts:104](https://github.com/isdk/util.js/blob/c98bd1bf94d1b1dc8d01c6b9a6fc50b4beec5c62/src/async-semaphore.ts#L104)
|
|
21
|
+
|
|
22
|
+
调用此函数以释放信号量。
|
|
18
23
|
|
|
19
24
|
## Returns
|
|
20
25
|
|
|
@@ -22,15 +27,19 @@ Defined in: [src/async-semaphore.ts:39](https://github.com/isdk/util.js/blob/227
|
|
|
22
27
|
|
|
23
28
|
## Indexable
|
|
24
29
|
|
|
25
|
-
\[`n`: `string`\]: `any`
|
|
30
|
+
> \[`n`: `string`\]: `any`
|
|
31
|
+
|
|
32
|
+
允许扩展其他自定义选项。
|
|
26
33
|
|
|
27
34
|
## Properties
|
|
28
35
|
|
|
29
36
|
### token?
|
|
30
37
|
|
|
31
|
-
> `optional` **token
|
|
38
|
+
> `optional` **token?**: `any`
|
|
39
|
+
|
|
40
|
+
Defined in: [src/async-semaphore.ts:89](https://github.com/isdk/util.js/blob/c98bd1bf94d1b1dc8d01c6b9a6fc50b4beec5c62/src/async-semaphore.ts#L89)
|
|
32
41
|
|
|
33
|
-
|
|
42
|
+
可选的令牌。如果使用了自定义的 `initFn`,释放时应归还对应的令牌。
|
|
34
43
|
|
|
35
44
|
#### Inherited from
|
|
36
45
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
# Interface: CodeBlockSelectorPart
|
|
8
8
|
|
|
9
|
-
Defined in: [src/extract-code-block.ts:38](https://github.com/isdk/util.js/blob/
|
|
9
|
+
Defined in: [src/extract-code-block.ts:38](https://github.com/isdk/util.js/blob/c98bd1bf94d1b1dc8d01c6b9a6fc50b4beec5c62/src/extract-code-block.ts#L38)
|
|
10
10
|
|
|
11
11
|
Represents a single segment in a code block selector path.
|
|
12
12
|
|
|
@@ -20,7 +20,7 @@ A path like `md > ts` is parsed into two parts:
|
|
|
20
20
|
|
|
21
21
|
> **combinator**: [`CodeBlockCombinator`](../type-aliases/CodeBlockCombinator.md)
|
|
22
22
|
|
|
23
|
-
Defined in: [src/extract-code-block.ts:43](https://github.com/isdk/util.js/blob/
|
|
23
|
+
Defined in: [src/extract-code-block.ts:43](https://github.com/isdk/util.js/blob/c98bd1bf94d1b1dc8d01c6b9a6fc50b4beec5c62/src/extract-code-block.ts#L43)
|
|
24
24
|
|
|
25
25
|
The relationship to the previous segment in the path.
|
|
26
26
|
For the first segment, ' ' usually implies a search in the root context.
|
|
@@ -29,8 +29,8 @@ For the first segment, ' ' usually implies a search in the root context.
|
|
|
29
29
|
|
|
30
30
|
### lang
|
|
31
31
|
|
|
32
|
-
> **lang**: `string`
|
|
32
|
+
> **lang**: `string` \| `string`[]
|
|
33
33
|
|
|
34
|
-
Defined in: [src/extract-code-block.ts:47](https://github.com/isdk/util.js/blob/
|
|
34
|
+
Defined in: [src/extract-code-block.ts:47](https://github.com/isdk/util.js/blob/c98bd1bf94d1b1dc8d01c6b9a6fc50b4beec5c62/src/extract-code-block.ts#L47)
|
|
35
35
|
|
|
36
36
|
The target language identifier or alias to match.
|