@no-k/hermes 0.1.0 → 0.2.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/catalog.json CHANGED
@@ -1,10 +1,27 @@
1
1
  {
2
- "schemaVersion": 1,
3
- "version": "0.1.0",
2
+ "schemaVersion": 3,
3
+ "version": "0.2.0",
4
4
  "items": [
5
5
  {
6
6
  "name": "algorithm-geometry-ccw",
7
- "description": "세 점 `a -> b -> c`가 어떤 방향으로 꺾이는지 판정한다. 선분 교차, 볼록 껍질,",
7
+ "packageName": "@hermes/algorithm-geometry-ccw",
8
+ "version": "1.0.0",
9
+ "modules": [
10
+ {
11
+ "name": "algorithm-geometry-ccw",
12
+ "packageName": "@hermes/algorithm-geometry-ccw",
13
+ "version": "1.0.0",
14
+ "scope": "core",
15
+ "files": {
16
+ "algorithm/geometry/ccw/ccw.ts": "ba3acc225a9ff79b22cec728500cbdc07fb7a67b4a7f6a5e735db1557c5e6461",
17
+ "algorithm/geometry/ccw/index.ts": "50c3b0e0c5904455ec5ab46e7de542835b389acaf7dbdfb2a345076444fef1b9"
18
+ },
19
+ "requires": []
20
+ }
21
+ ],
22
+ "scope": "core",
23
+ "category": "core/algorithm",
24
+ "description": "세 점 `a -> b -> c`가 어떤 방향으로 꺾이는지 판정한다. 선분 교차, 볼록 껍질, 다각형 방향 판정의 기본 연산이다.",
8
25
  "dependencies": [],
9
26
  "files": [
10
27
  "algorithm/geometry/ccw/ccw.ts",
@@ -13,7 +30,43 @@
13
30
  },
14
31
  {
15
32
  "name": "algorithm-geometry-convex-hull",
16
- "description": "점 집합을 모두 감싸는 가장 작은 볼록 다각형의 꼭짓점을 구한다. 울타리 치기,",
33
+ "packageName": "@hermes/algorithm-geometry-convex-hull",
34
+ "version": "1.0.0",
35
+ "modules": [
36
+ {
37
+ "name": "algorithm-geometry-ccw",
38
+ "packageName": "@hermes/algorithm-geometry-ccw",
39
+ "version": "1.0.0",
40
+ "scope": "core",
41
+ "files": {
42
+ "algorithm/geometry/ccw/ccw.ts": "ba3acc225a9ff79b22cec728500cbdc07fb7a67b4a7f6a5e735db1557c5e6461",
43
+ "algorithm/geometry/ccw/index.ts": "50c3b0e0c5904455ec5ab46e7de542835b389acaf7dbdfb2a345076444fef1b9"
44
+ },
45
+ "requires": []
46
+ },
47
+ {
48
+ "name": "algorithm-geometry-convex-hull",
49
+ "packageName": "@hermes/algorithm-geometry-convex-hull",
50
+ "version": "1.0.0",
51
+ "scope": "core",
52
+ "files": {
53
+ "algorithm/geometry/convex-hull/convex-hull.ts": "4f74d51257ae88a9b8406f032b847c51cb5239e5337aaa97818436a5fca65a0b",
54
+ "algorithm/geometry/convex-hull/index.ts": "66e6930ed8d9d243030e45c5e70fd1a15b9ae0e45fdce6bee4687b740afaf9e5"
55
+ },
56
+ "requires": [
57
+ {
58
+ "packageName": "@hermes/algorithm-geometry-ccw",
59
+ "range": "^1.0.0",
60
+ "kind": "dependency",
61
+ "internal": true,
62
+ "optional": false
63
+ }
64
+ ]
65
+ }
66
+ ],
67
+ "scope": "core",
68
+ "category": "core/algorithm",
69
+ "description": "점 집합을 모두 감싸는 가장 작은 볼록 다각형의 꼭짓점을 구한다. 울타리 치기, 최외곽 점 찾기, 평면 점 집합의 외곽선 계산 문제에서 사용한다.",
17
70
  "dependencies": [],
18
71
  "files": [
19
72
  "algorithm/geometry/ccw/ccw.ts",
@@ -24,7 +77,43 @@
24
77
  },
25
78
  {
26
79
  "name": "algorithm-geometry-polygon-area",
27
- "description": "다각형 꼭짓점이 순서대로 주어졌을 때 넓이를 계산한다. 꼭짓점 방향은 시계/반시계",
80
+ "packageName": "@hermes/algorithm-geometry-polygon-area",
81
+ "version": "1.0.0",
82
+ "modules": [
83
+ {
84
+ "name": "algorithm-geometry-ccw",
85
+ "packageName": "@hermes/algorithm-geometry-ccw",
86
+ "version": "1.0.0",
87
+ "scope": "core",
88
+ "files": {
89
+ "algorithm/geometry/ccw/ccw.ts": "ba3acc225a9ff79b22cec728500cbdc07fb7a67b4a7f6a5e735db1557c5e6461",
90
+ "algorithm/geometry/ccw/index.ts": "50c3b0e0c5904455ec5ab46e7de542835b389acaf7dbdfb2a345076444fef1b9"
91
+ },
92
+ "requires": []
93
+ },
94
+ {
95
+ "name": "algorithm-geometry-polygon-area",
96
+ "packageName": "@hermes/algorithm-geometry-polygon-area",
97
+ "version": "1.0.0",
98
+ "scope": "core",
99
+ "files": {
100
+ "algorithm/geometry/polygon-area/index.ts": "70f13dc50ff1fbd90939923378928c98a0514edeb3782ccec1e3889c6bfad825",
101
+ "algorithm/geometry/polygon-area/polygon-area.ts": "68e79d3a87298482d536e5018ce3d4351147ddc312b85f8551b196117cd1cc29"
102
+ },
103
+ "requires": [
104
+ {
105
+ "packageName": "@hermes/algorithm-geometry-ccw",
106
+ "range": "^1.0.0",
107
+ "kind": "dependency",
108
+ "internal": true,
109
+ "optional": false
110
+ }
111
+ ]
112
+ }
113
+ ],
114
+ "scope": "core",
115
+ "category": "core/algorithm",
116
+ "description": "다각형 꼭짓점이 순서대로 주어졌을 때 넓이를 계산한다. 꼭짓점 방향은 시계/반시계 어느 쪽이어도 되고, 내부에서 절댓값을 취해 양수 넓이를 반환한다.",
28
117
  "dependencies": [],
29
118
  "files": [
30
119
  "algorithm/geometry/ccw/ccw.ts",
@@ -35,7 +124,24 @@
35
124
  },
36
125
  {
37
126
  "name": "algorithm-graph-bellman-ford",
38
- "description": "Bellman-Ford는 시작점 하나에서 모든 정점까지의 최단 거리를 구한다. 다익스트라와",
127
+ "packageName": "@hermes/algorithm-graph-bellman-ford",
128
+ "version": "1.0.0",
129
+ "modules": [
130
+ {
131
+ "name": "algorithm-graph-bellman-ford",
132
+ "packageName": "@hermes/algorithm-graph-bellman-ford",
133
+ "version": "1.0.0",
134
+ "scope": "core",
135
+ "files": {
136
+ "algorithm/graph/bellman-ford/bellman-ford.ts": "f35b591cf9fc6c4a5beb6d141a3381ae2521e9767e908a6d0d99157cf0054b41",
137
+ "algorithm/graph/bellman-ford/index.ts": "1e5d6e8e636333de6f4755e79789a7a15066c9160e8dbfae3770c28b8034e41d"
138
+ },
139
+ "requires": []
140
+ }
141
+ ],
142
+ "scope": "core",
143
+ "category": "core/algorithm",
144
+ "description": "Bellman-Ford는 시작점 하나에서 모든 정점까지의 최단 거리를 구한다. 다익스트라와 달리 음수 간선을 허용하고, 시작점에서 도달 가능한 음수 사이클이 있는지도 감지한다.",
39
145
  "dependencies": [],
40
146
  "files": [
41
147
  "algorithm/graph/bellman-ford/bellman-ford.ts",
@@ -44,7 +150,24 @@
44
150
  },
45
151
  {
46
152
  "name": "algorithm-graph-bfs",
47
- "description": "너비 우선 탐색(BFS). 시작 노드에서 가까운 순서로 방문한 노드 배열을 반환한다.",
153
+ "packageName": "@hermes/algorithm-graph-bfs",
154
+ "version": "1.0.0",
155
+ "modules": [
156
+ {
157
+ "name": "algorithm-graph-bfs",
158
+ "packageName": "@hermes/algorithm-graph-bfs",
159
+ "version": "1.0.0",
160
+ "scope": "core",
161
+ "files": {
162
+ "algorithm/graph/bfs/bfs.ts": "a7a4b5db5c82914b4f3c18edc74628771299d0289e4f5548032a780ba01cc1da",
163
+ "algorithm/graph/bfs/index.ts": "4d19f9d1a1ff2af9cec0f54dc69c08e9fd2249ff86d2ad923ad20d325f7a4af4"
164
+ },
165
+ "requires": []
166
+ }
167
+ ],
168
+ "scope": "core",
169
+ "category": "core/algorithm",
170
+ "description": "너비 우선 탐색(BFS). 시작 노드에서 가까운 순서로 방문한 노드 배열을 반환한다. 가중치가 없는 그래프에서 최단 간선 수 레벨을 훑거나, 연결 영역을 거리순으로 확장할 때 사용한다.",
48
171
  "dependencies": [],
49
172
  "files": [
50
173
  "algorithm/graph/bfs/bfs.ts",
@@ -53,7 +176,24 @@
53
176
  },
54
177
  {
55
178
  "name": "algorithm-graph-dfs",
56
- "description": "깊이 우선 탐색(DFS). 명시적 스택으로 구현해, 방문한 노드 배열을 반환한다.",
179
+ "packageName": "@hermes/algorithm-graph-dfs",
180
+ "version": "1.0.0",
181
+ "modules": [
182
+ {
183
+ "name": "algorithm-graph-dfs",
184
+ "packageName": "@hermes/algorithm-graph-dfs",
185
+ "version": "1.0.0",
186
+ "scope": "core",
187
+ "files": {
188
+ "algorithm/graph/dfs/dfs.ts": "1bfaa8798375c0101119f7f1f71db4b4ab2e93317df627cb799292b285b32c79",
189
+ "algorithm/graph/dfs/index.ts": "6a642193680d7fab7cebfb1713cfb7fa6f1223cb2038e4176954e4922a8af161"
190
+ },
191
+ "requires": []
192
+ }
193
+ ],
194
+ "scope": "core",
195
+ "category": "core/algorithm",
196
+ "description": "깊이 우선 탐색(DFS). 명시적 스택으로 구현해, 방문한 노드 배열을 반환한다. 재귀 깊이 제한을 피하면서 연결 영역 탐색, 경로 존재 여부 확인, 그래프 순회 기초 작업에 사용할 수 있다.",
57
197
  "dependencies": [],
58
198
  "files": [
59
199
  "algorithm/graph/dfs/dfs.ts",
@@ -62,19 +202,96 @@
62
202
  },
63
203
  {
64
204
  "name": "algorithm-graph-dijkstra",
65
- "description": "다익스트라 최단 경로. 음수 가중치가 없는 그래프에서 시작 노드로부터의 최단",
205
+ "packageName": "@hermes/algorithm-graph-dijkstra",
206
+ "version": "1.0.0",
207
+ "modules": [
208
+ {
209
+ "name": "algorithm-graph-dijkstra",
210
+ "packageName": "@hermes/algorithm-graph-dijkstra",
211
+ "version": "1.0.0",
212
+ "scope": "core",
213
+ "files": {
214
+ "algorithm/graph/dijkstra/dijkstra.ts": "97af39f93a4ba414d182c0f5a13d0ceca64da7debe342f04abd2fce069222b7f",
215
+ "algorithm/graph/dijkstra/index.ts": "d2b30722f39e1e9141c27f8e500de7e4cbccfee41a9d271744c3c33a1118deae"
216
+ },
217
+ "requires": [
218
+ {
219
+ "packageName": "@hermes/data-structure-priority-queue",
220
+ "range": "^1.0.0",
221
+ "kind": "dependency",
222
+ "internal": true,
223
+ "optional": false
224
+ }
225
+ ]
226
+ },
227
+ {
228
+ "name": "data-structure-heap",
229
+ "packageName": "@hermes/data-structure-heap",
230
+ "version": "1.0.0",
231
+ "scope": "core",
232
+ "files": {
233
+ "data-structure/heap/heap.ts": "68fc95274e5a2234fc3992cd1cba59e523050d55ae3a842bfbac30943b24f6f6",
234
+ "data-structure/heap/index.ts": "d84ec9b2413aa9020e3c6ab99b9589328ae543c89257b099bddefacd4640865b",
235
+ "data-structure/heap/max-heap.ts": "e11fff5efd124e2d636f0f42c475ae593091a416a11dad840c67ed2fa55a986c",
236
+ "data-structure/heap/min-heap.ts": "e4271b7630458178c4dd8b76f6fce5fa8f00f86370043f6adf1ae51828f1efb8"
237
+ },
238
+ "requires": []
239
+ },
240
+ {
241
+ "name": "data-structure-priority-queue",
242
+ "packageName": "@hermes/data-structure-priority-queue",
243
+ "version": "1.0.0",
244
+ "scope": "core",
245
+ "files": {
246
+ "data-structure/priority-queue/index.ts": "70ea451cc731c2201a617be3e8a00f30b4c6c34d40cddf1d6cb65371082365e9",
247
+ "data-structure/priority-queue/priority-queue.ts": "0ce8a7bd626cb435af32b02d960d8fb56689ad7600bea549ba4170f98c8dea42"
248
+ },
249
+ "requires": [
250
+ {
251
+ "packageName": "@hermes/data-structure-heap",
252
+ "range": "^1.0.0",
253
+ "kind": "dependency",
254
+ "internal": true,
255
+ "optional": false
256
+ }
257
+ ]
258
+ }
259
+ ],
260
+ "scope": "core",
261
+ "category": "core/algorithm",
262
+ "description": "다익스트라 최단 경로. 음수 가중치가 없는 그래프에서 시작 노드로부터의 최단 거리 `Map<T, number>`를 반환한다.",
66
263
  "dependencies": [],
67
264
  "files": [
68
265
  "algorithm/graph/dijkstra/dijkstra.ts",
69
266
  "algorithm/graph/dijkstra/index.ts",
70
267
  "data-structure/heap/heap.ts",
268
+ "data-structure/heap/index.ts",
269
+ "data-structure/heap/max-heap.ts",
270
+ "data-structure/heap/min-heap.ts",
71
271
  "data-structure/priority-queue/index.ts",
72
272
  "data-structure/priority-queue/priority-queue.ts"
73
273
  ]
74
274
  },
75
275
  {
76
276
  "name": "algorithm-graph-floyd-warshall",
77
- "description": "Floyd-Warshall은 모든 정점 쌍 사이의 최단 거리를 한 번에 구한다. 정점 수가",
277
+ "packageName": "@hermes/algorithm-graph-floyd-warshall",
278
+ "version": "1.0.0",
279
+ "modules": [
280
+ {
281
+ "name": "algorithm-graph-floyd-warshall",
282
+ "packageName": "@hermes/algorithm-graph-floyd-warshall",
283
+ "version": "1.0.0",
284
+ "scope": "core",
285
+ "files": {
286
+ "algorithm/graph/floyd-warshall/floyd-warshall.ts": "04e5db49785ce74b840b0b9f38699400dada9a7303f0d2ead5c85ff2d639c536",
287
+ "algorithm/graph/floyd-warshall/index.ts": "ca8d90e5838889eaca80868d3eee2b36ae5b75e3c07f27b6976bb990ef4b68fb"
288
+ },
289
+ "requires": []
290
+ }
291
+ ],
292
+ "scope": "core",
293
+ "category": "core/algorithm",
294
+ "description": "Floyd-Warshall은 모든 정점 쌍 사이의 최단 거리를 한 번에 구한다. 정점 수가 작고, “어떤 출발점에서 어떤 도착점으로 물어봐도 바로 답해야 하는” 문제에 맞다.",
78
295
  "dependencies": [],
79
296
  "files": [
80
297
  "algorithm/graph/floyd-warshall/floyd-warshall.ts",
@@ -83,7 +300,43 @@
83
300
  },
84
301
  {
85
302
  "name": "algorithm-graph-kruskal",
86
- "description": "Kruskal은 무방향 가중 그래프에서 전체 노드를 연결하는 간선 집합 중 총 가중치가",
303
+ "packageName": "@hermes/algorithm-graph-kruskal",
304
+ "version": "1.0.0",
305
+ "modules": [
306
+ {
307
+ "name": "algorithm-graph-kruskal",
308
+ "packageName": "@hermes/algorithm-graph-kruskal",
309
+ "version": "1.0.0",
310
+ "scope": "core",
311
+ "files": {
312
+ "algorithm/graph/kruskal/index.ts": "81c382e837dc954fb539e565878e8fb64cf4dc4331624a9e8281c2ca1134bb36",
313
+ "algorithm/graph/kruskal/kruskal.ts": "6265fdbefad25bde2e146a143db99fe84da47e073bcc919ac0920ce3f2187ee8"
314
+ },
315
+ "requires": [
316
+ {
317
+ "packageName": "@hermes/data-structure-union-find",
318
+ "range": "^1.0.0",
319
+ "kind": "dependency",
320
+ "internal": true,
321
+ "optional": false
322
+ }
323
+ ]
324
+ },
325
+ {
326
+ "name": "data-structure-union-find",
327
+ "packageName": "@hermes/data-structure-union-find",
328
+ "version": "1.0.0",
329
+ "scope": "core",
330
+ "files": {
331
+ "data-structure/union-find/index.ts": "024399647096d798a1263b9e2e8ca16c512e69f55d0799831445236f9186d8fa",
332
+ "data-structure/union-find/union-find.ts": "9a23ce526b297a8b7d477c06d0f10be9000014208a61d44955edfe2671064f21"
333
+ },
334
+ "requires": []
335
+ }
336
+ ],
337
+ "scope": "core",
338
+ "category": "core/algorithm",
339
+ "description": "Kruskal은 무방향 가중 그래프에서 전체 노드를 연결하는 간선 집합 중 총 가중치가 가장 작은 최소신장트리(MST)를 만든다. 간선을 가중치 오름차순으로 보면서, 사이클이 생기지 않는 간선만 [union-find](../../../data-structure/union-find)로 고른다.",
87
340
  "dependencies": [],
88
341
  "files": [
89
342
  "algorithm/graph/kruskal/index.ts",
@@ -94,7 +347,90 @@
94
347
  },
95
348
  {
96
349
  "name": "algorithm-graph-prim",
97
- "description": "Prim은 시작점에서 출발해 현재까지 연결된 정점 집합 밖으로 나가는 가장 싼 간선을",
350
+ "packageName": "@hermes/algorithm-graph-prim",
351
+ "version": "1.0.0",
352
+ "modules": [
353
+ {
354
+ "name": "algorithm-graph-dijkstra",
355
+ "packageName": "@hermes/algorithm-graph-dijkstra",
356
+ "version": "1.0.0",
357
+ "scope": "core",
358
+ "files": {
359
+ "algorithm/graph/dijkstra/dijkstra.ts": "97af39f93a4ba414d182c0f5a13d0ceca64da7debe342f04abd2fce069222b7f",
360
+ "algorithm/graph/dijkstra/index.ts": "d2b30722f39e1e9141c27f8e500de7e4cbccfee41a9d271744c3c33a1118deae"
361
+ },
362
+ "requires": [
363
+ {
364
+ "packageName": "@hermes/data-structure-priority-queue",
365
+ "range": "^1.0.0",
366
+ "kind": "dependency",
367
+ "internal": true,
368
+ "optional": false
369
+ }
370
+ ]
371
+ },
372
+ {
373
+ "name": "algorithm-graph-prim",
374
+ "packageName": "@hermes/algorithm-graph-prim",
375
+ "version": "1.0.0",
376
+ "scope": "core",
377
+ "files": {
378
+ "algorithm/graph/prim/index.ts": "48bcb6e04d1e9aa94559af28298081e232f576d06b920435646066be6355568c",
379
+ "algorithm/graph/prim/prim.ts": "1c4753dd7e21dc7b75dba95abac8e239de3ebb6bf7f878ab7d12cc80a9703499"
380
+ },
381
+ "requires": [
382
+ {
383
+ "packageName": "@hermes/algorithm-graph-dijkstra",
384
+ "range": "^1.0.0",
385
+ "kind": "dependency",
386
+ "internal": true,
387
+ "optional": false
388
+ },
389
+ {
390
+ "packageName": "@hermes/data-structure-priority-queue",
391
+ "range": "^1.0.0",
392
+ "kind": "dependency",
393
+ "internal": true,
394
+ "optional": false
395
+ }
396
+ ]
397
+ },
398
+ {
399
+ "name": "data-structure-heap",
400
+ "packageName": "@hermes/data-structure-heap",
401
+ "version": "1.0.0",
402
+ "scope": "core",
403
+ "files": {
404
+ "data-structure/heap/heap.ts": "68fc95274e5a2234fc3992cd1cba59e523050d55ae3a842bfbac30943b24f6f6",
405
+ "data-structure/heap/index.ts": "d84ec9b2413aa9020e3c6ab99b9589328ae543c89257b099bddefacd4640865b",
406
+ "data-structure/heap/max-heap.ts": "e11fff5efd124e2d636f0f42c475ae593091a416a11dad840c67ed2fa55a986c",
407
+ "data-structure/heap/min-heap.ts": "e4271b7630458178c4dd8b76f6fce5fa8f00f86370043f6adf1ae51828f1efb8"
408
+ },
409
+ "requires": []
410
+ },
411
+ {
412
+ "name": "data-structure-priority-queue",
413
+ "packageName": "@hermes/data-structure-priority-queue",
414
+ "version": "1.0.0",
415
+ "scope": "core",
416
+ "files": {
417
+ "data-structure/priority-queue/index.ts": "70ea451cc731c2201a617be3e8a00f30b4c6c34d40cddf1d6cb65371082365e9",
418
+ "data-structure/priority-queue/priority-queue.ts": "0ce8a7bd626cb435af32b02d960d8fb56689ad7600bea549ba4170f98c8dea42"
419
+ },
420
+ "requires": [
421
+ {
422
+ "packageName": "@hermes/data-structure-heap",
423
+ "range": "^1.0.0",
424
+ "kind": "dependency",
425
+ "internal": true,
426
+ "optional": false
427
+ }
428
+ ]
429
+ }
430
+ ],
431
+ "scope": "core",
432
+ "category": "core/algorithm",
433
+ "description": "Prim은 시작점에서 출발해 현재까지 연결된 정점 집합 밖으로 나가는 가장 싼 간선을 계속 고르는 최소신장트리(MST) 알고리즘이다. 인접 간선을 `getEdges(node)`로 받으므로, 간선 목록 전체를 먼저 만들기보다 인접 리스트 기반 그래프에 붙이기 좋다.",
98
434
  "dependencies": [],
99
435
  "files": [
100
436
  "algorithm/graph/dijkstra/dijkstra.ts",
@@ -102,13 +438,33 @@
102
438
  "algorithm/graph/prim/index.ts",
103
439
  "algorithm/graph/prim/prim.ts",
104
440
  "data-structure/heap/heap.ts",
441
+ "data-structure/heap/index.ts",
442
+ "data-structure/heap/max-heap.ts",
443
+ "data-structure/heap/min-heap.ts",
105
444
  "data-structure/priority-queue/index.ts",
106
445
  "data-structure/priority-queue/priority-queue.ts"
107
446
  ]
108
447
  },
109
448
  {
110
449
  "name": "algorithm-graph-topology-sort",
111
- "description": "위상 정렬(topological sort). 방향 비순환 그래프(DAG)에서 선행 순서를 지키는",
450
+ "packageName": "@hermes/algorithm-graph-topology-sort",
451
+ "version": "1.0.0",
452
+ "modules": [
453
+ {
454
+ "name": "algorithm-graph-topology-sort",
455
+ "packageName": "@hermes/algorithm-graph-topology-sort",
456
+ "version": "1.0.0",
457
+ "scope": "core",
458
+ "files": {
459
+ "algorithm/graph/topology-sort/index.ts": "a186bbbcadcc95a17f797d110a2ea7719eaa8411f3cc1a4c2f9b9acae03c4658",
460
+ "algorithm/graph/topology-sort/topology-sort.ts": "6741243f15778938f47513a02b2fad490b984c2dc6a43db89e193ac215ee2e67"
461
+ },
462
+ "requires": []
463
+ }
464
+ ],
465
+ "scope": "core",
466
+ "category": "core/algorithm",
467
+ "description": "위상 정렬(topological sort). 방향 비순환 그래프(DAG)에서 선행 순서를 지키는 정렬을 반환한다. 사이클이 있으면 `\"cycle detected\"`로 throw한다.",
112
468
  "dependencies": [],
113
469
  "files": [
114
470
  "algorithm/graph/topology-sort/index.ts",
@@ -117,7 +473,24 @@
117
473
  },
118
474
  {
119
475
  "name": "algorithm-search-binary-search",
120
- "description": "정렬 배열에서 값의 위치를 찾거나, `false ... false, true ... true`처럼 단조로",
476
+ "packageName": "@hermes/algorithm-search-binary-search",
477
+ "version": "1.0.0",
478
+ "modules": [
479
+ {
480
+ "name": "algorithm-search-binary-search",
481
+ "packageName": "@hermes/algorithm-search-binary-search",
482
+ "version": "1.0.0",
483
+ "scope": "core",
484
+ "files": {
485
+ "algorithm/search/binary-search/binary-search.ts": "8a3741375b9651549c019eafb2cfe528a287d1137f60110f0a5c1461ef37f3e6",
486
+ "algorithm/search/binary-search/index.ts": "4926dbc60fea8d4236d9ae01bda0584c44555551d080dc2ee1d0b926314a00d9"
487
+ },
488
+ "requires": []
489
+ }
490
+ ],
491
+ "scope": "core",
492
+ "category": "core/algorithm",
493
+ "description": "정렬 배열에서 값의 위치를 찾거나, `false ... false, true ... true`처럼 단조로 바뀌는 답 공간에서 첫 번째 `true`를 찾는다. 알고리즘 문제에서 “최소로 가능한 값”, “처음 조건을 만족하는 인덱스”를 찾을 때 쓰는 기본 도구다.",
121
494
  "dependencies": [],
122
495
  "files": [
123
496
  "algorithm/search/binary-search/binary-search.ts",
@@ -126,7 +499,24 @@
126
499
  },
127
500
  {
128
501
  "name": "algorithm-string-kmp",
129
- "description": "KMP는 패턴 내부의 접두사/접미사 정보를 미리 계산해, 검색 중 mismatch가 나도",
502
+ "packageName": "@hermes/algorithm-string-kmp",
503
+ "version": "1.0.0",
504
+ "modules": [
505
+ {
506
+ "name": "algorithm-string-kmp",
507
+ "packageName": "@hermes/algorithm-string-kmp",
508
+ "version": "1.0.0",
509
+ "scope": "core",
510
+ "files": {
511
+ "algorithm/string/kmp/index.ts": "d3d3282ae72c35bd70fa7b36a0561c4598ce8bcc739cf54d6d4ac0d6638a252c",
512
+ "algorithm/string/kmp/kmp.ts": "845dd63dc211d0c40cd34a7486864ba6a5dc0f6080a65e39369ea84996dd9c2c"
513
+ },
514
+ "requires": []
515
+ }
516
+ ],
517
+ "scope": "core",
518
+ "category": "core/algorithm",
519
+ "description": "KMP는 패턴 내부의 접두사/접미사 정보를 미리 계산해, 검색 중 mismatch가 나도 이미 확인한 문자를 다시 비교하지 않는 문자열 검색 알고리즘이다. 같은 패턴을 긴 텍스트에서 찾거나, 겹치는 패턴 위치까지 모두 찾아야 할 때 쓴다.",
130
520
  "dependencies": [],
131
521
  "files": [
132
522
  "algorithm/string/kmp/index.ts",
@@ -135,7 +525,24 @@
135
525
  },
136
526
  {
137
527
  "name": "algorithm-string-z-algorithm",
138
- "description": "Z algorithm은 문자열의 각 위치에서 “문자열 전체의 접두사와 몇 글자나 같은지”를",
528
+ "packageName": "@hermes/algorithm-string-z-algorithm",
529
+ "version": "1.0.0",
530
+ "modules": [
531
+ {
532
+ "name": "algorithm-string-z-algorithm",
533
+ "packageName": "@hermes/algorithm-string-z-algorithm",
534
+ "version": "1.0.0",
535
+ "scope": "core",
536
+ "files": {
537
+ "algorithm/string/z-algorithm/index.ts": "b2921d712e8a6b977773b8b9266dce189d85b5a91b51613b9bd56a7a4325edb1",
538
+ "algorithm/string/z-algorithm/z-algorithm.ts": "d65d296a173abf32629c96b0b254c308a431d1661289f5024fba1bf03abe0e2f"
539
+ },
540
+ "requires": []
541
+ }
542
+ ],
543
+ "scope": "core",
544
+ "category": "core/algorithm",
545
+ "description": "Z algorithm은 문자열의 각 위치에서 “문자열 전체의 접두사와 몇 글자나 같은지”를 계산한다. 결과 배열 `z[i]`는 `value.slice(i)`가 `value`의 접두사와 연속으로 일치하는 길이다.",
139
546
  "dependencies": [],
140
547
  "files": [
141
548
  "algorithm/string/z-algorithm/index.ts",
@@ -144,7 +551,24 @@
144
551
  },
145
552
  {
146
553
  "name": "algorithm-tree-avl-tree",
147
- "description": "삽입 시 자동으로 균형을 맞추는 AVL 트리. 중복 값은 삽입하지 않는다.",
554
+ "packageName": "@hermes/algorithm-tree-avl-tree",
555
+ "version": "1.0.0",
556
+ "modules": [
557
+ {
558
+ "name": "algorithm-tree-avl-tree",
559
+ "packageName": "@hermes/algorithm-tree-avl-tree",
560
+ "version": "1.0.0",
561
+ "scope": "core",
562
+ "files": {
563
+ "algorithm/tree/avl-tree/avl-tree.ts": "da08847994e4d1c1ab10863ed381dc008876429f47c28136c79ac88c3d531325",
564
+ "algorithm/tree/avl-tree/index.ts": "ce816726b40a95dd9f0ca58fd91d3d94b721362a2c04439204c7fdad2859b42b"
565
+ },
566
+ "requires": []
567
+ }
568
+ ],
569
+ "scope": "core",
570
+ "category": "core/algorithm",
571
+ "description": "삽입 시 자동으로 균형을 맞추는 AVL 트리. 중복 값은 삽입하지 않는다. 기본 BST와 달리 좌우 서브트리 높이 차이를 제한해, 정렬된 입력이 들어와도 탐색 성능이 크게 무너지지 않게 한다.",
148
572
  "dependencies": [],
149
573
  "files": [
150
574
  "algorithm/tree/avl-tree/avl-tree.ts",
@@ -153,7 +577,24 @@
153
577
  },
154
578
  {
155
579
  "name": "algorithm-tree-binary-search-tree",
156
- "description": "기본 이진 탐색 트리. 중복 값은 삽입하지 않고 `false`를 반환한다.",
580
+ "packageName": "@hermes/algorithm-tree-binary-search-tree",
581
+ "version": "1.0.0",
582
+ "modules": [
583
+ {
584
+ "name": "algorithm-tree-binary-search-tree",
585
+ "packageName": "@hermes/algorithm-tree-binary-search-tree",
586
+ "version": "1.0.0",
587
+ "scope": "core",
588
+ "files": {
589
+ "algorithm/tree/binary-search-tree/binary-search-tree.ts": "aac15f79bb8942ff1cd0407967d8f1a2745c66d7f74d6d7f4be6d65155f1b094",
590
+ "algorithm/tree/binary-search-tree/index.ts": "4ef11fb567ab277830a448f0f7760c1ca4b9b4f15743ff6c44591e24e85be80b"
591
+ },
592
+ "requires": []
593
+ }
594
+ ],
595
+ "scope": "core",
596
+ "category": "core/algorithm",
597
+ "description": "기본 이진 탐색 트리. 중복 값은 삽입하지 않고 `false`를 반환한다. 값을 삽입한 뒤 정렬 순회, 포함 여부, 최솟값/최댓값 조회가 필요할 때 사용한다.",
157
598
  "dependencies": [],
158
599
  "files": [
159
600
  "algorithm/tree/binary-search-tree/binary-search-tree.ts",
@@ -162,7 +603,24 @@
162
603
  },
163
604
  {
164
605
  "name": "algorithm-tree-lca",
165
- "description": "인접 리스트로 표현된 트리에서 binary lifting으로 최소 공통 조상과 거리를 구한다.",
606
+ "packageName": "@hermes/algorithm-tree-lca",
607
+ "version": "1.0.0",
608
+ "modules": [
609
+ {
610
+ "name": "algorithm-tree-lca",
611
+ "packageName": "@hermes/algorithm-tree-lca",
612
+ "version": "1.0.0",
613
+ "scope": "core",
614
+ "files": {
615
+ "algorithm/tree/lca/index.ts": "5e0ba044f2add09886baa6f91f014fc282dfc37a952af58a63683fa3269f3ffc",
616
+ "algorithm/tree/lca/lca.ts": "d3b17e5c9ac52c7c6e278b9d0f5d4011078597c14771fadd9582eb9ddeffdb37"
617
+ },
618
+ "requires": []
619
+ }
620
+ ],
621
+ "scope": "core",
622
+ "category": "core/algorithm",
623
+ "description": "인접 리스트로 표현된 트리에서 binary lifting으로 최소 공통 조상과 거리를 구한다. 루트가 있는 트리에서 `u`와 `v`의 가장 가까운 공통 조상, 두 노드 사이 간선 수, 각 노드 깊이를 빠르게 물어볼 때 사용한다.",
166
624
  "dependencies": [],
167
625
  "files": [
168
626
  "algorithm/tree/lca/index.ts",
@@ -171,7 +629,24 @@
171
629
  },
172
630
  {
173
631
  "name": "array-chunk",
174
- "description": "배열을 `size` 길이의 작은 배열들로 분할한다. 마지막 조각은 원소가 모자라면",
632
+ "packageName": "@hermes/array-chunk",
633
+ "version": "1.0.0",
634
+ "modules": [
635
+ {
636
+ "name": "array-chunk",
637
+ "packageName": "@hermes/array-chunk",
638
+ "version": "1.0.0",
639
+ "scope": "core",
640
+ "files": {
641
+ "array/chunk/chunk.ts": "26272e73b3b9b9948a3986a178f34b5200174d6c0b7fd15f7d569c4d35e486e7",
642
+ "array/chunk/index.ts": "2eef28154d4d894b5daff8b778f9fe860806c29216cac1137a7a0cb405e9f3c2"
643
+ },
644
+ "requires": []
645
+ }
646
+ ],
647
+ "scope": "core",
648
+ "category": "core/array",
649
+ "description": "배열을 `size` 길이의 작은 배열들로 분할한다. 마지막 조각은 원소가 모자라면 더 짧을 수 있다. 페이지네이션이나 배치 처리로 입력을 나눌 때 사용한다.",
175
650
  "dependencies": [],
176
651
  "files": [
177
652
  "array/chunk/chunk.ts",
@@ -180,7 +655,24 @@
180
655
  },
181
656
  {
182
657
  "name": "array-compact",
183
- "description": "배열에서 falsy 값(`false`, `null`, `undefined`, `0`, `\"\"`, `NaN`)을 모두 제거한",
658
+ "packageName": "@hermes/array-compact",
659
+ "version": "1.0.0",
660
+ "modules": [
661
+ {
662
+ "name": "array-compact",
663
+ "packageName": "@hermes/array-compact",
664
+ "version": "1.0.0",
665
+ "scope": "core",
666
+ "files": {
667
+ "array/compact/compact.ts": "def2b827ea3927443c18510c904cb223b3359fb6d17415abeb24f55ed0d0c014",
668
+ "array/compact/index.ts": "fb1e8a939663a1f9066619895e9563420ef5ee21efd1af86383f303b5e8ba2db"
669
+ },
670
+ "requires": []
671
+ }
672
+ ],
673
+ "scope": "core",
674
+ "category": "core/array",
675
+ "description": "배열에서 falsy 값(`false`, `null`, `undefined`, `0`, `\"\"`, `NaN`)을 모두 제거한 새 배열을 반환한다. 비어 있을 수 있는 값들을 한 번에 정리할 때 사용한다.",
184
676
  "dependencies": [],
185
677
  "files": [
186
678
  "array/compact/compact.ts",
@@ -189,7 +681,24 @@
189
681
  },
190
682
  {
191
683
  "name": "array-count-by",
192
- "description": "배열 항목을 `keyFn`이 돌려주는 키로 묶어 키별 개수를 센 `{ 키: 개수 }` 객체를",
684
+ "packageName": "@hermes/array-count-by",
685
+ "version": "1.0.0",
686
+ "modules": [
687
+ {
688
+ "name": "array-count-by",
689
+ "packageName": "@hermes/array-count-by",
690
+ "version": "1.0.0",
691
+ "scope": "core",
692
+ "files": {
693
+ "array/count-by/count-by.ts": "1c3708c08b26bab74ce0c9e936ba36f6ae303cf2f7457a831c03bf54b7b1a8c3",
694
+ "array/count-by/index.ts": "9b3a189ac0b034843b2a6ed3ff81f66b8f71ea1f0ec150ee3283a12075af6c28"
695
+ },
696
+ "requires": []
697
+ }
698
+ ],
699
+ "scope": "core",
700
+ "category": "core/array",
701
+ "description": "배열 항목을 `keyFn`이 돌려주는 키로 묶어 키별 개수를 센 `{ 키: 개수 }` 객체를 반환한다. 입력 배열은 변형하지 않는다.",
193
702
  "dependencies": [],
194
703
  "files": [
195
704
  "array/count-by/count-by.ts",
@@ -198,7 +707,24 @@
198
707
  },
199
708
  {
200
709
  "name": "array-difference",
201
- "description": "`a`에서 `b`에 포함된 원소를 모두 제거한 차집합을 반환한다. `a`의 등장 순서와",
710
+ "packageName": "@hermes/array-difference",
711
+ "version": "1.0.0",
712
+ "modules": [
713
+ {
714
+ "name": "array-difference",
715
+ "packageName": "@hermes/array-difference",
716
+ "version": "1.0.0",
717
+ "scope": "core",
718
+ "files": {
719
+ "array/difference/difference.ts": "dcda33ad4c7f0a2fedb20ed34ff45def3b1dd67ac42fb14f3682ae7d14e78f53",
720
+ "array/difference/index.ts": "0568237020c94492037c281d943f0d5102c38ade5621de10825c2d4830ee491d"
721
+ },
722
+ "requires": []
723
+ }
724
+ ],
725
+ "scope": "core",
726
+ "category": "core/array",
727
+ "description": "`a`에서 `b`에 포함된 원소를 모두 제거한 차집합을 반환한다. `a`의 등장 순서와 중복은 그대로 유지된다.",
202
728
  "dependencies": [],
203
729
  "files": [
204
730
  "array/difference/difference.ts",
@@ -207,7 +733,24 @@
207
733
  },
208
734
  {
209
735
  "name": "array-drop",
210
- "description": "배열 앞에서 n개를 제외한 나머지를 새 배열로 반환한다. 입력 배열은 변형하지",
736
+ "packageName": "@hermes/array-drop",
737
+ "version": "1.0.0",
738
+ "modules": [
739
+ {
740
+ "name": "array-drop",
741
+ "packageName": "@hermes/array-drop",
742
+ "version": "1.0.0",
743
+ "scope": "core",
744
+ "files": {
745
+ "array/drop/drop.ts": "3105fe493c357f79458ecb3a9cd19f4b4c75ed6e58e68b022547b70bb0c2074e",
746
+ "array/drop/index.ts": "2db3e4cf5f3451b12d9e0e6476dd3fd1e3c8ac98603f841e804b2fc3ccc3ab68"
747
+ },
748
+ "requires": []
749
+ }
750
+ ],
751
+ "scope": "core",
752
+ "category": "core/array",
753
+ "description": "배열 앞에서 n개를 제외한 나머지를 새 배열로 반환한다. 입력 배열은 변형하지 않으며 `n <= 0`이면 전체 복사본, `n`이 길이 이상이면 빈 배열을 돌려준다.",
211
754
  "dependencies": [],
212
755
  "files": [
213
756
  "array/drop/drop.ts",
@@ -216,7 +759,24 @@
216
759
  },
217
760
  {
218
761
  "name": "array-group-by",
219
- "description": "배열 항목을 `keyFn`이 돌려주는 키로 묶어 `{ 키: 항목 배열 }` 객체를 반환한다.",
762
+ "packageName": "@hermes/array-group-by",
763
+ "version": "1.0.0",
764
+ "modules": [
765
+ {
766
+ "name": "array-group-by",
767
+ "packageName": "@hermes/array-group-by",
768
+ "version": "1.0.0",
769
+ "scope": "core",
770
+ "files": {
771
+ "array/group-by/group-by.ts": "e404cba33f936b28716d2e0ccffa3a562cb5b6a2fb8eb0619c7162f86981c05b",
772
+ "array/group-by/index.ts": "09d7546402fb2975526253619cd2bb8461d751744b8ebe4d704988750fb307c0"
773
+ },
774
+ "requires": []
775
+ }
776
+ ],
777
+ "scope": "core",
778
+ "category": "core/array",
779
+ "description": "배열 항목을 `keyFn`이 돌려주는 키로 묶어 `{ 키: 항목 배열 }` 객체를 반환한다. 같은 키의 항목은 등장 순서를 보존하며 입력 배열은 변형하지 않는다.",
220
780
  "dependencies": [],
221
781
  "files": [
222
782
  "array/group-by/group-by.ts",
@@ -225,7 +785,24 @@
225
785
  },
226
786
  {
227
787
  "name": "array-intersection",
228
- "description": "두 배열에 모두 들어 있는 원소만 모은 교집합을 반환한다. 순서는 `a` 기준이고",
788
+ "packageName": "@hermes/array-intersection",
789
+ "version": "1.0.0",
790
+ "modules": [
791
+ {
792
+ "name": "array-intersection",
793
+ "packageName": "@hermes/array-intersection",
794
+ "version": "1.0.0",
795
+ "scope": "core",
796
+ "files": {
797
+ "array/intersection/index.ts": "4f7f2876eb6e961e0ff3be3c977ebb47e0c88f86b5f48f5b3230377ff86bc0a0",
798
+ "array/intersection/intersection.ts": "77fabbb1684d0ca30d0d2e87935ae3cc867da1e794803d9cd1e07d79231b407c"
799
+ },
800
+ "requires": []
801
+ }
802
+ ],
803
+ "scope": "core",
804
+ "category": "core/array",
805
+ "description": "두 배열에 모두 들어 있는 원소만 모은 교집합을 반환한다. 순서는 `a` 기준이고 중복은 제거된다.",
229
806
  "dependencies": [],
230
807
  "files": [
231
808
  "array/intersection/index.ts",
@@ -234,7 +811,24 @@
234
811
  },
235
812
  {
236
813
  "name": "array-key-by",
237
- "description": "배열을 `keyFn`이 돌려주는 키로 인덱싱해 `{ 키: 항목 }` 객체를 반환한다.",
814
+ "packageName": "@hermes/array-key-by",
815
+ "version": "1.0.0",
816
+ "modules": [
817
+ {
818
+ "name": "array-key-by",
819
+ "packageName": "@hermes/array-key-by",
820
+ "version": "1.0.0",
821
+ "scope": "core",
822
+ "files": {
823
+ "array/key-by/index.ts": "76e0de494e2a0cf8940f4d6e071b42e98d70dd05fcf59a83db2feebf0b12291a",
824
+ "array/key-by/key-by.ts": "cd3469628cf16f11d38390e729a8444dd321dcac037940f08b6208d699a05975"
825
+ },
826
+ "requires": []
827
+ }
828
+ ],
829
+ "scope": "core",
830
+ "category": "core/array",
831
+ "description": "배열을 `keyFn`이 돌려주는 키로 인덱싱해 `{ 키: 항목 }` 객체를 반환한다. 같은 키가 여러 번 나오면 마지막 항목이 우선하며 입력 배열은 변형하지 않는다.",
238
832
  "dependencies": [],
239
833
  "files": [
240
834
  "array/key-by/index.ts",
@@ -243,7 +837,24 @@
243
837
  },
244
838
  {
245
839
  "name": "array-max-by",
246
- "description": "`valueFn`으로 매핑한 값이 가장 큰 원소를 반환한다. 입력 배열은 변형하지 않으며,",
840
+ "packageName": "@hermes/array-max-by",
841
+ "version": "1.0.0",
842
+ "modules": [
843
+ {
844
+ "name": "array-max-by",
845
+ "packageName": "@hermes/array-max-by",
846
+ "version": "1.0.0",
847
+ "scope": "core",
848
+ "files": {
849
+ "array/max-by/index.ts": "cf5fc393a1599800b5d5c48a5d2dc1b134dd3136e20876f0c136860c196b09d4",
850
+ "array/max-by/max-by.ts": "5d579181698ac951cefccf082d6f1e5210d5db0c7914222184f6d55017f15adc"
851
+ },
852
+ "requires": []
853
+ }
854
+ ],
855
+ "scope": "core",
856
+ "category": "core/array",
857
+ "description": "`valueFn`으로 매핑한 값이 가장 큰 원소를 반환한다. 입력 배열은 변형하지 않으며, 값이 같으면 먼저 나온 원소를 유지한다. 빈 배열은 `null`을 반환한다.",
247
858
  "dependencies": [],
248
859
  "files": [
249
860
  "array/max-by/index.ts",
@@ -252,7 +863,24 @@
252
863
  },
253
864
  {
254
865
  "name": "array-min-by",
255
- "description": "`valueFn`으로 매핑한 값이 가장 작은 원소를 반환한다. 입력 배열은 변형하지 않으며,",
866
+ "packageName": "@hermes/array-min-by",
867
+ "version": "1.0.0",
868
+ "modules": [
869
+ {
870
+ "name": "array-min-by",
871
+ "packageName": "@hermes/array-min-by",
872
+ "version": "1.0.0",
873
+ "scope": "core",
874
+ "files": {
875
+ "array/min-by/index.ts": "270254f3f313d99f4cf267cad1d2ed4bffe4144a643441b853adfdc62d1e5323",
876
+ "array/min-by/min-by.ts": "d64400ecfd8d57209f35dce9e3d73d72d77a75c04852f253516ab926f4af0747"
877
+ },
878
+ "requires": []
879
+ }
880
+ ],
881
+ "scope": "core",
882
+ "category": "core/array",
883
+ "description": "`valueFn`으로 매핑한 값이 가장 작은 원소를 반환한다. 입력 배열은 변형하지 않으며, 값이 같으면 먼저 나온 원소를 유지한다. 빈 배열은 `null`을 반환한다.",
256
884
  "dependencies": [],
257
885
  "files": [
258
886
  "array/min-by/index.ts",
@@ -261,7 +889,24 @@
261
889
  },
262
890
  {
263
891
  "name": "array-partition",
264
- "description": "배열을 `predicate` 통과 여부로 나눠 `[통과한 항목, 실패한 항목]` 튜플을 반환한다.",
892
+ "packageName": "@hermes/array-partition",
893
+ "version": "1.0.0",
894
+ "modules": [
895
+ {
896
+ "name": "array-partition",
897
+ "packageName": "@hermes/array-partition",
898
+ "version": "1.0.0",
899
+ "scope": "core",
900
+ "files": {
901
+ "array/partition/index.ts": "c84a6433afc3daf796374f35b7b291006f405b0d82d923710c3efd839792bde7",
902
+ "array/partition/partition.ts": "31c82ba44a0c49be00a475c2cdab5c55277f69374447bb819c913e8a76cc05b3"
903
+ },
904
+ "requires": []
905
+ }
906
+ ],
907
+ "scope": "core",
908
+ "category": "core/array",
909
+ "description": "배열을 `predicate` 통과 여부로 나눠 `[통과한 항목, 실패한 항목]` 튜플을 반환한다. 각 그룹은 등장 순서를 보존하며 입력 배열은 변형하지 않는다.",
265
910
  "dependencies": [],
266
911
  "files": [
267
912
  "array/partition/index.ts",
@@ -270,7 +915,24 @@
270
915
  },
271
916
  {
272
917
  "name": "array-range",
273
- "description": "`[start, end)` 구간을 `step` 간격으로 채운 숫자 배열을 반환한다. `step`",
918
+ "packageName": "@hermes/array-range",
919
+ "version": "1.0.0",
920
+ "modules": [
921
+ {
922
+ "name": "array-range",
923
+ "packageName": "@hermes/array-range",
924
+ "version": "1.0.0",
925
+ "scope": "core",
926
+ "files": {
927
+ "array/range/index.ts": "d6a9fef981e652e34c9d57b4e325c1aaf2811bd6a85327f7c884de8ea99e6531",
928
+ "array/range/range.ts": "52a3233e7f8200cf6ad9a349199edcc21fbe85672ec1a42ec3e336e9bc844615"
929
+ },
930
+ "requires": []
931
+ }
932
+ ],
933
+ "scope": "core",
934
+ "category": "core/array",
935
+ "description": "`[start, end)` 구간을 `step` 간격으로 채운 숫자 배열을 반환한다. `step` 기본값은 1이며 0이면 빈 배열, 음수면 감소 수열을 만든다.",
274
936
  "dependencies": [],
275
937
  "files": [
276
938
  "array/range/index.ts",
@@ -279,7 +941,24 @@
279
941
  },
280
942
  {
281
943
  "name": "array-sample",
282
- "description": "배열에서 무작위로 원소 하나를 골라 반환한다. 빈 배열이면 `null`을 반환하며,",
944
+ "packageName": "@hermes/array-sample",
945
+ "version": "1.0.0",
946
+ "modules": [
947
+ {
948
+ "name": "array-sample",
949
+ "packageName": "@hermes/array-sample",
950
+ "version": "1.0.0",
951
+ "scope": "core",
952
+ "files": {
953
+ "array/sample/index.ts": "92cd264ab1ef750b0214c52d5f47e441b36f9a135eb34f1d832d4a15bbc34378",
954
+ "array/sample/sample.ts": "30b2429787b2a85497ee444dbbb6c57f3bf68b6b3484a7535e1bddb806dfb978"
955
+ },
956
+ "requires": []
957
+ }
958
+ ],
959
+ "scope": "core",
960
+ "category": "core/array",
961
+ "description": "배열에서 무작위로 원소 하나를 골라 반환한다. 빈 배열이면 `null`을 반환하며, 난수는 런타임의 `Math.random`을 사용한다.",
283
962
  "dependencies": [],
284
963
  "files": [
285
964
  "array/sample/index.ts",
@@ -288,7 +967,24 @@
288
967
  },
289
968
  {
290
969
  "name": "array-shuffle",
291
- "description": "Fisher-Yates 셔플로 원소 순서를 무작위로 섞은 새 배열을 반환한다. 입력 배열은",
970
+ "packageName": "@hermes/array-shuffle",
971
+ "version": "1.0.0",
972
+ "modules": [
973
+ {
974
+ "name": "array-shuffle",
975
+ "packageName": "@hermes/array-shuffle",
976
+ "version": "1.0.0",
977
+ "scope": "core",
978
+ "files": {
979
+ "array/shuffle/index.ts": "d1281f8e789826db34566283774ab4c9d505c05e526a628a0231923ee8b5e738",
980
+ "array/shuffle/shuffle.ts": "86c562c5fb5be6a6bb316e171ba96c01fa3ccea247faaca59cc4712bbee0536f"
981
+ },
982
+ "requires": []
983
+ }
984
+ ],
985
+ "scope": "core",
986
+ "category": "core/array",
987
+ "description": "Fisher-Yates 셔플로 원소 순서를 무작위로 섞은 새 배열을 반환한다. 입력 배열은 변형하지 않으며, 난수는 런타임의 `Math.random`을 사용한다.",
292
988
  "dependencies": [],
293
989
  "files": [
294
990
  "array/shuffle/index.ts",
@@ -297,7 +993,24 @@
297
993
  },
298
994
  {
299
995
  "name": "array-sort-by",
300
- "description": "`keyFn`이 돌려준 키 기준으로 오름차순 안정 정렬한 새 배열을 반환한다. 키가 같은",
996
+ "packageName": "@hermes/array-sort-by",
997
+ "version": "1.0.0",
998
+ "modules": [
999
+ {
1000
+ "name": "array-sort-by",
1001
+ "packageName": "@hermes/array-sort-by",
1002
+ "version": "1.0.0",
1003
+ "scope": "core",
1004
+ "files": {
1005
+ "array/sort-by/index.ts": "ce17855354d44e29c824d97fb41e692d60881547c1ab64014f509d0dfbe0ba29",
1006
+ "array/sort-by/sort-by.ts": "2aecbf87058a43cadd3266e32c20d88e3494021f4c0fbb2141d8c0c91ffa581f"
1007
+ },
1008
+ "requires": []
1009
+ }
1010
+ ],
1011
+ "scope": "core",
1012
+ "category": "core/array",
1013
+ "description": "`keyFn`이 돌려준 키 기준으로 오름차순 안정 정렬한 새 배열을 반환한다. 키가 같은 항목들은 원래 순서를 유지하며, 입력 배열은 변형하지 않는다.",
301
1014
  "dependencies": [],
302
1015
  "files": [
303
1016
  "array/sort-by/index.ts",
@@ -306,7 +1019,24 @@
306
1019
  },
307
1020
  {
308
1021
  "name": "array-sum-by",
309
- "description": "배열의 각 원소를 `valueFn`으로 수치화해 모두 더한 합을 반환한다. 입력 배열은",
1022
+ "packageName": "@hermes/array-sum-by",
1023
+ "version": "1.0.0",
1024
+ "modules": [
1025
+ {
1026
+ "name": "array-sum-by",
1027
+ "packageName": "@hermes/array-sum-by",
1028
+ "version": "1.0.0",
1029
+ "scope": "core",
1030
+ "files": {
1031
+ "array/sum-by/index.ts": "33a8ad679df880d5fbee32811baf97262c849d6efee0daa73b93f92af21e9882",
1032
+ "array/sum-by/sum-by.ts": "439169b9fba19bf0a5a850e64833dab95aaa3823d2816212a422c84224dde619"
1033
+ },
1034
+ "requires": []
1035
+ }
1036
+ ],
1037
+ "scope": "core",
1038
+ "category": "core/array",
1039
+ "description": "배열의 각 원소를 `valueFn`으로 수치화해 모두 더한 합을 반환한다. 입력 배열은 변형하지 않는다. 빈 배열은 `0`을 반환한다.",
310
1040
  "dependencies": [],
311
1041
  "files": [
312
1042
  "array/sum-by/index.ts",
@@ -315,7 +1045,24 @@
315
1045
  },
316
1046
  {
317
1047
  "name": "array-take",
318
- "description": "배열 앞에서 n개를 잘라 새 배열을 반환한다. 입력 배열은 변형하지 않으며",
1048
+ "packageName": "@hermes/array-take",
1049
+ "version": "1.0.0",
1050
+ "modules": [
1051
+ {
1052
+ "name": "array-take",
1053
+ "packageName": "@hermes/array-take",
1054
+ "version": "1.0.0",
1055
+ "scope": "core",
1056
+ "files": {
1057
+ "array/take/index.ts": "294f4bb7d383fbd4d4e3ab898f068e21d3d6bfa1407b747d6441ed214fa814f8",
1058
+ "array/take/take.ts": "66ef5a8167992feb048efc9b096b8676859f2df776324ba425f738eeb75853da"
1059
+ },
1060
+ "requires": []
1061
+ }
1062
+ ],
1063
+ "scope": "core",
1064
+ "category": "core/array",
1065
+ "description": "배열 앞에서 n개를 잘라 새 배열을 반환한다. 입력 배열은 변형하지 않으며 `n <= 0`이면 빈 배열, `n`이 길이보다 크면 전체 복사본을 돌려준다.",
319
1066
  "dependencies": [],
320
1067
  "files": [
321
1068
  "array/take/index.ts",
@@ -324,7 +1071,24 @@
324
1071
  },
325
1072
  {
326
1073
  "name": "array-union",
327
- "description": "두 배열을 합친 합집합을 반환한다. 중복은 제거되고, 처음 등장한 순서(`a`를",
1074
+ "packageName": "@hermes/array-union",
1075
+ "version": "1.0.0",
1076
+ "modules": [
1077
+ {
1078
+ "name": "array-union",
1079
+ "packageName": "@hermes/array-union",
1080
+ "version": "1.0.0",
1081
+ "scope": "core",
1082
+ "files": {
1083
+ "array/union/index.ts": "f6ee75934da5e2272e3a2516fcc54793160b860470ab4d1f580bb39573469005",
1084
+ "array/union/union.ts": "7d88f8a650d3e5c6882e7c984532d0685d7db3c4e54ef795069aab98f88e626f"
1085
+ },
1086
+ "requires": []
1087
+ }
1088
+ ],
1089
+ "scope": "core",
1090
+ "category": "core/array",
1091
+ "description": "두 배열을 합친 합집합을 반환한다. 중복은 제거되고, 처음 등장한 순서(`a`를 먼저, `b`를 다음)가 유지된다.",
328
1092
  "dependencies": [],
329
1093
  "files": [
330
1094
  "array/union/index.ts",
@@ -333,7 +1097,24 @@
333
1097
  },
334
1098
  {
335
1099
  "name": "array-unique",
336
- "description": "배열의 중복을 제거한 새 배열을 반환한다. 각 값의 첫 등장 순서를 보존하며",
1100
+ "packageName": "@hermes/array-unique",
1101
+ "version": "1.0.0",
1102
+ "modules": [
1103
+ {
1104
+ "name": "array-unique",
1105
+ "packageName": "@hermes/array-unique",
1106
+ "version": "1.0.0",
1107
+ "scope": "core",
1108
+ "files": {
1109
+ "array/unique/index.ts": "cda3fbe070f81682a29fa5628f67d77313072f68a03917ca4af2ab89a0439fe0",
1110
+ "array/unique/unique.ts": "63dcf503d9e2d5422f0ee7d0f938b6e62e195127b3f9c2aabee8f42dbc7680ac"
1111
+ },
1112
+ "requires": []
1113
+ }
1114
+ ],
1115
+ "scope": "core",
1116
+ "category": "core/array",
1117
+ "description": "배열의 중복을 제거한 새 배열을 반환한다. 각 값의 첫 등장 순서를 보존하며 입력 배열은 변형하지 않는다.",
337
1118
  "dependencies": [],
338
1119
  "files": [
339
1120
  "array/unique/index.ts",
@@ -342,7 +1123,24 @@
342
1123
  },
343
1124
  {
344
1125
  "name": "array-unique-by",
345
- "description": "`keyFn`이 돌려준 키를 기준으로 배열의 중복을 제거한 새 배열을 반환한다.",
1126
+ "packageName": "@hermes/array-unique-by",
1127
+ "version": "1.0.0",
1128
+ "modules": [
1129
+ {
1130
+ "name": "array-unique-by",
1131
+ "packageName": "@hermes/array-unique-by",
1132
+ "version": "1.0.0",
1133
+ "scope": "core",
1134
+ "files": {
1135
+ "array/unique-by/index.ts": "016e9acb90587289f602d8d64f69aace913da48c656f6f87bcedde8264ceb05c",
1136
+ "array/unique-by/unique-by.ts": "4fe8a57ffc16ddffceb7f51e3112579f12290ae3610e97782bb62f8bd4b66fcb"
1137
+ },
1138
+ "requires": []
1139
+ }
1140
+ ],
1141
+ "scope": "core",
1142
+ "category": "core/array",
1143
+ "description": "`keyFn`이 돌려준 키를 기준으로 배열의 중복을 제거한 새 배열을 반환한다. 같은 키가 처음 나온 항목만 남기고 첫 등장 순서를 보존하며, 입력 배열은 변형하지 않는다.",
346
1144
  "dependencies": [],
347
1145
  "files": [
348
1146
  "array/unique-by/index.ts",
@@ -351,7 +1149,24 @@
351
1149
  },
352
1150
  {
353
1151
  "name": "array-windowed",
354
- "description": "배열 위를 `size` 길이의 창으로 훑으며, 각 위치의 부분 배열을 모아 반환한다.",
1152
+ "packageName": "@hermes/array-windowed",
1153
+ "version": "1.0.0",
1154
+ "modules": [
1155
+ {
1156
+ "name": "array-windowed",
1157
+ "packageName": "@hermes/array-windowed",
1158
+ "version": "1.0.0",
1159
+ "scope": "core",
1160
+ "files": {
1161
+ "array/windowed/index.ts": "ec312f4f56df2a6ca3352bd272b9ad7390c51a72d2c6330be83a88b054cde2ae",
1162
+ "array/windowed/windowed.ts": "847464bc642e3b38c838fcfd00838059b7f0fe1251a3a9ff8983eab7d42f0e9f"
1163
+ },
1164
+ "requires": []
1165
+ }
1166
+ ],
1167
+ "scope": "core",
1168
+ "category": "core/array",
1169
+ "description": "배열 위를 `size` 길이의 창으로 훑으며, 각 위치의 부분 배열을 모아 반환한다. `step`만큼 창을 옮긴다(기본 1). 이동 평균이나 인접 원소 비교에 사용한다.",
355
1170
  "dependencies": [],
356
1171
  "files": [
357
1172
  "array/windowed/index.ts",
@@ -360,7 +1175,24 @@
360
1175
  },
361
1176
  {
362
1177
  "name": "array-zip",
363
- "description": "두 배열을 같은 인덱스끼리 `[A, B]` 튜플로 묶는다. 더 짧은 배열 길이까지만",
1178
+ "packageName": "@hermes/array-zip",
1179
+ "version": "1.0.0",
1180
+ "modules": [
1181
+ {
1182
+ "name": "array-zip",
1183
+ "packageName": "@hermes/array-zip",
1184
+ "version": "1.0.0",
1185
+ "scope": "core",
1186
+ "files": {
1187
+ "array/zip/index.ts": "5ffaf0268d688cb294db900b9d984b469afb39eb3933994cc128e20cef40839e",
1188
+ "array/zip/zip.ts": "0a619e86c9785b070e05967c04973b772a65da7ac61fa7c53413e695fa36e31e"
1189
+ },
1190
+ "requires": []
1191
+ }
1192
+ ],
1193
+ "scope": "core",
1194
+ "category": "core/array",
1195
+ "description": "두 배열을 같은 인덱스끼리 `[A, B]` 튜플로 묶는다. 더 짧은 배열 길이까지만 묶고 남는 원소는 버린다.",
364
1196
  "dependencies": [],
365
1197
  "files": [
366
1198
  "array/zip/index.ts",
@@ -369,6 +1201,23 @@
369
1201
  },
370
1202
  {
371
1203
  "name": "boolean-parse-boolean",
1204
+ "packageName": "@hermes/boolean-parse-boolean",
1205
+ "version": "1.0.0",
1206
+ "modules": [
1207
+ {
1208
+ "name": "boolean-parse-boolean",
1209
+ "packageName": "@hermes/boolean-parse-boolean",
1210
+ "version": "1.0.0",
1211
+ "scope": "core",
1212
+ "files": {
1213
+ "boolean/parse-boolean/index.ts": "e5b4d76c3edea464b2e46cdfba6515fefb404d0327cc9b54e73f013b2e5513ac",
1214
+ "boolean/parse-boolean/parse-boolean.ts": "2f599f2c6b39c04296e787a873cb949b657cb0623693df7058ca7bf3969d65b6"
1215
+ },
1216
+ "requires": []
1217
+ }
1218
+ ],
1219
+ "scope": "core",
1220
+ "category": "core/boolean",
372
1221
  "description": "다양한 입력을 boolean으로 해석한다.",
373
1222
  "dependencies": [],
374
1223
  "files": [
@@ -378,6 +1227,23 @@
378
1227
  },
379
1228
  {
380
1229
  "name": "boolean-toggle",
1230
+ "packageName": "@hermes/boolean-toggle",
1231
+ "version": "1.0.0",
1232
+ "modules": [
1233
+ {
1234
+ "name": "boolean-toggle",
1235
+ "packageName": "@hermes/boolean-toggle",
1236
+ "version": "1.0.0",
1237
+ "scope": "core",
1238
+ "files": {
1239
+ "boolean/toggle/index.ts": "baa0f9fabde8d6eab426db28dbf34408a138bf52879c3fa01c3822381810bfda",
1240
+ "boolean/toggle/toggle.ts": "56ea40f2935e6603e14d9ed08f5c66875f25373906f6015718f7c039f7080ac8"
1241
+ },
1242
+ "requires": []
1243
+ }
1244
+ ],
1245
+ "scope": "core",
1246
+ "category": "core/boolean",
381
1247
  "description": "boolean 값을 반전한다.",
382
1248
  "dependencies": [],
383
1249
  "files": [
@@ -387,6 +1253,23 @@
387
1253
  },
388
1254
  {
389
1255
  "name": "boolean-xor",
1256
+ "packageName": "@hermes/boolean-xor",
1257
+ "version": "1.0.0",
1258
+ "modules": [
1259
+ {
1260
+ "name": "boolean-xor",
1261
+ "packageName": "@hermes/boolean-xor",
1262
+ "version": "1.0.0",
1263
+ "scope": "core",
1264
+ "files": {
1265
+ "boolean/xor/index.ts": "0687b81ffcd7d555e4b2579b8817264a408ba2aea167e45f8e8ee08c34ed2612",
1266
+ "boolean/xor/xor.ts": "9f0f35949e05fa823394ff2957307443ccbc5df3718e4468a6b5fd4151e579d9"
1267
+ },
1268
+ "requires": []
1269
+ }
1270
+ ],
1271
+ "scope": "core",
1272
+ "category": "core/boolean",
390
1273
  "description": "배타적 논리합. 두 boolean 중 정확히 하나만 `true`일 때 `true`.",
391
1274
  "dependencies": [],
392
1275
  "files": [
@@ -396,7 +1279,24 @@
396
1279
  },
397
1280
  {
398
1281
  "name": "data-structure-deque",
399
- "description": "양끝에서 삽입·삭제가 모두 O(1)인 덱(double-ended queue). `Map`과 head/tail",
1282
+ "packageName": "@hermes/data-structure-deque",
1283
+ "version": "1.0.0",
1284
+ "modules": [
1285
+ {
1286
+ "name": "data-structure-deque",
1287
+ "packageName": "@hermes/data-structure-deque",
1288
+ "version": "1.0.0",
1289
+ "scope": "core",
1290
+ "files": {
1291
+ "data-structure/deque/deque.ts": "1b9884ef801a2c204d4b5e249ef19a072ae52c37d99717374332886ae69d70a1",
1292
+ "data-structure/deque/index.ts": "581808b1065657e439d0e6257c7ba9c415bb3b82d202882430d2b6e5044042c8"
1293
+ },
1294
+ "requires": []
1295
+ }
1296
+ ],
1297
+ "scope": "core",
1298
+ "category": "core/data-structure",
1299
+ "description": "양끝에서 삽입·삭제가 모두 O(1)인 덱(double-ended queue). `Map`과 head/tail 인덱스로 구현했다.",
400
1300
  "dependencies": [],
401
1301
  "files": [
402
1302
  "data-structure/deque/deque.ts",
@@ -405,7 +1305,24 @@
405
1305
  },
406
1306
  {
407
1307
  "name": "data-structure-fenwick-tree",
408
- "description": "Fenwick Tree(Binary Indexed Tree). 점 갱신과 접두합·구간합을 모두 O(log n)에",
1308
+ "packageName": "@hermes/data-structure-fenwick-tree",
1309
+ "version": "1.0.0",
1310
+ "modules": [
1311
+ {
1312
+ "name": "data-structure-fenwick-tree",
1313
+ "packageName": "@hermes/data-structure-fenwick-tree",
1314
+ "version": "1.0.0",
1315
+ "scope": "core",
1316
+ "files": {
1317
+ "data-structure/fenwick-tree/fenwick-tree.ts": "67c88c2f39bc9fa94732eb6b24f4886ef65fd42029bd62d6e26cc5d6581ac1f9",
1318
+ "data-structure/fenwick-tree/index.ts": "1c2a996d4b9ab9deda5d0725244344befae5b65f19d162981662b68305de8084"
1319
+ },
1320
+ "requires": []
1321
+ }
1322
+ ],
1323
+ "scope": "core",
1324
+ "category": "core/data-structure",
1325
+ "description": "Fenwick Tree(Binary Indexed Tree). 점 갱신과 접두합·구간합을 모두 O(log n)에 처리하는 `number` 배열 누적합 구조.",
409
1326
  "dependencies": [],
410
1327
  "files": [
411
1328
  "data-structure/fenwick-tree/fenwick-tree.ts",
@@ -414,7 +1331,26 @@
414
1331
  },
415
1332
  {
416
1333
  "name": "data-structure-heap",
417
- "description": "비교 함수(`compareBy`)로 우선순위를 정하는 이진 힙. 추상 베이스 `Heap`에서",
1334
+ "packageName": "@hermes/data-structure-heap",
1335
+ "version": "1.0.0",
1336
+ "modules": [
1337
+ {
1338
+ "name": "data-structure-heap",
1339
+ "packageName": "@hermes/data-structure-heap",
1340
+ "version": "1.0.0",
1341
+ "scope": "core",
1342
+ "files": {
1343
+ "data-structure/heap/heap.ts": "68fc95274e5a2234fc3992cd1cba59e523050d55ae3a842bfbac30943b24f6f6",
1344
+ "data-structure/heap/index.ts": "d84ec9b2413aa9020e3c6ab99b9589328ae543c89257b099bddefacd4640865b",
1345
+ "data-structure/heap/max-heap.ts": "e11fff5efd124e2d636f0f42c475ae593091a416a11dad840c67ed2fa55a986c",
1346
+ "data-structure/heap/min-heap.ts": "e4271b7630458178c4dd8b76f6fce5fa8f00f86370043f6adf1ae51828f1efb8"
1347
+ },
1348
+ "requires": []
1349
+ }
1350
+ ],
1351
+ "scope": "core",
1352
+ "category": "core/data-structure",
1353
+ "description": "비교 함수(`compareBy`)로 우선순위를 정하는 이진 힙. 추상 베이스 `Heap`에서 `MinHeap`·`MaxHeap`이 파생된다.",
418
1354
  "dependencies": [],
419
1355
  "files": [
420
1356
  "data-structure/heap/heap.ts",
@@ -425,16 +1361,74 @@
425
1361
  },
426
1362
  {
427
1363
  "name": "data-structure-priority-queue",
1364
+ "packageName": "@hermes/data-structure-priority-queue",
1365
+ "version": "1.0.0",
1366
+ "modules": [
1367
+ {
1368
+ "name": "data-structure-heap",
1369
+ "packageName": "@hermes/data-structure-heap",
1370
+ "version": "1.0.0",
1371
+ "scope": "core",
1372
+ "files": {
1373
+ "data-structure/heap/heap.ts": "68fc95274e5a2234fc3992cd1cba59e523050d55ae3a842bfbac30943b24f6f6",
1374
+ "data-structure/heap/index.ts": "d84ec9b2413aa9020e3c6ab99b9589328ae543c89257b099bddefacd4640865b",
1375
+ "data-structure/heap/max-heap.ts": "e11fff5efd124e2d636f0f42c475ae593091a416a11dad840c67ed2fa55a986c",
1376
+ "data-structure/heap/min-heap.ts": "e4271b7630458178c4dd8b76f6fce5fa8f00f86370043f6adf1ae51828f1efb8"
1377
+ },
1378
+ "requires": []
1379
+ },
1380
+ {
1381
+ "name": "data-structure-priority-queue",
1382
+ "packageName": "@hermes/data-structure-priority-queue",
1383
+ "version": "1.0.0",
1384
+ "scope": "core",
1385
+ "files": {
1386
+ "data-structure/priority-queue/index.ts": "70ea451cc731c2201a617be3e8a00f30b4c6c34d40cddf1d6cb65371082365e9",
1387
+ "data-structure/priority-queue/priority-queue.ts": "0ce8a7bd626cb435af32b02d960d8fb56689ad7600bea549ba4170f98c8dea42"
1388
+ },
1389
+ "requires": [
1390
+ {
1391
+ "packageName": "@hermes/data-structure-heap",
1392
+ "range": "^1.0.0",
1393
+ "kind": "dependency",
1394
+ "internal": true,
1395
+ "optional": false
1396
+ }
1397
+ ]
1398
+ }
1399
+ ],
1400
+ "scope": "core",
1401
+ "category": "core/data-structure",
428
1402
  "description": "[heap](../../heap) 위에 큐 API를 얹은 우선순위 큐. 요소 비교 함수를 직접 주입한다.",
429
1403
  "dependencies": [],
430
1404
  "files": [
431
1405
  "data-structure/heap/heap.ts",
1406
+ "data-structure/heap/index.ts",
1407
+ "data-structure/heap/max-heap.ts",
1408
+ "data-structure/heap/min-heap.ts",
432
1409
  "data-structure/priority-queue/index.ts",
433
1410
  "data-structure/priority-queue/priority-queue.ts"
434
1411
  ]
435
1412
  },
436
1413
  {
437
1414
  "name": "data-structure-queue",
1415
+ "packageName": "@hermes/data-structure-queue",
1416
+ "version": "1.0.0",
1417
+ "modules": [
1418
+ {
1419
+ "name": "data-structure-queue",
1420
+ "packageName": "@hermes/data-structure-queue",
1421
+ "version": "1.0.0",
1422
+ "scope": "core",
1423
+ "files": {
1424
+ "data-structure/queue/index.ts": "5449262477397ff04d1248c5b2fd488b7f582aea4f75029544c99b3ff331796e",
1425
+ "data-structure/queue/queue.ts": "bdbe6a42bde34b0ddcd9a65c15fc562919eb0d68bff18e8c7162f76d3fcf9119"
1426
+ },
1427
+ "requires": []
1428
+ }
1429
+ ],
1430
+ "scope": "core",
1431
+ "category": "core/data-structure",
438
1432
  "description": "단일 연결 리스트 기반 FIFO 큐. 모든 핵심 연산이 O(1)이다.",
439
1433
  "dependencies": [],
440
1434
  "files": [
@@ -444,7 +1438,24 @@
444
1438
  },
445
1439
  {
446
1440
  "name": "data-structure-segment-tree",
447
- "description": "점 갱신과 임의 결합 연산의 구간 질의를 O(log n)에 처리하는 세그먼트 트리.",
1441
+ "packageName": "@hermes/data-structure-segment-tree",
1442
+ "version": "1.0.0",
1443
+ "modules": [
1444
+ {
1445
+ "name": "data-structure-segment-tree",
1446
+ "packageName": "@hermes/data-structure-segment-tree",
1447
+ "version": "1.0.0",
1448
+ "scope": "core",
1449
+ "files": {
1450
+ "data-structure/segment-tree/index.ts": "3b908606aceb4cc3b15bda6e2102b0e63e94cc3b9b2d87a2a170968ea9fd59c7",
1451
+ "data-structure/segment-tree/segment-tree.ts": "205bb812ccefa143ecaf72e863209d74231b5c4b1e065dd2c5ae64a1081daf68"
1452
+ },
1453
+ "requires": []
1454
+ }
1455
+ ],
1456
+ "scope": "core",
1457
+ "category": "core/data-structure",
1458
+ "description": "점 갱신과 임의 결합 연산의 구간 질의를 O(log n)에 처리하는 세그먼트 트리. `identity`/`combine`만 바꾸면 합·최소·최대 등 어떤 모노이드에도 쓴다.",
448
1459
  "dependencies": [],
449
1460
  "files": [
450
1461
  "data-structure/segment-tree/index.ts",
@@ -453,6 +1464,23 @@
453
1464
  },
454
1465
  {
455
1466
  "name": "data-structure-trie",
1467
+ "packageName": "@hermes/data-structure-trie",
1468
+ "version": "1.0.0",
1469
+ "modules": [
1470
+ {
1471
+ "name": "data-structure-trie",
1472
+ "packageName": "@hermes/data-structure-trie",
1473
+ "version": "1.0.0",
1474
+ "scope": "core",
1475
+ "files": {
1476
+ "data-structure/trie/index.ts": "fff54fa5b0b25225ff37d8627396902a67bd6949524c362068da2013cdd0af2e",
1477
+ "data-structure/trie/trie.ts": "e3befa9733eaef3cc6d72702f8c6b02f60935e2c82085f76fd65b097945412f9"
1478
+ },
1479
+ "requires": []
1480
+ }
1481
+ ],
1482
+ "scope": "core",
1483
+ "category": "core/data-structure",
456
1484
  "description": "접두사 트리(prefix tree). 문자열 집합 저장과 접두사 검색·자동완성에 쓴다.",
457
1485
  "dependencies": [],
458
1486
  "files": [
@@ -462,7 +1490,24 @@
462
1490
  },
463
1491
  {
464
1492
  "name": "data-structure-union-find",
465
- "description": "서로소 집합(Disjoint Set Union). 원소들을 그룹으로 합치고 같은 그룹인지",
1493
+ "packageName": "@hermes/data-structure-union-find",
1494
+ "version": "1.0.0",
1495
+ "modules": [
1496
+ {
1497
+ "name": "data-structure-union-find",
1498
+ "packageName": "@hermes/data-structure-union-find",
1499
+ "version": "1.0.0",
1500
+ "scope": "core",
1501
+ "files": {
1502
+ "data-structure/union-find/index.ts": "024399647096d798a1263b9e2e8ca16c512e69f55d0799831445236f9186d8fa",
1503
+ "data-structure/union-find/union-find.ts": "9a23ce526b297a8b7d477c06d0f10be9000014208a61d44955edfe2671064f21"
1504
+ },
1505
+ "requires": []
1506
+ }
1507
+ ],
1508
+ "scope": "core",
1509
+ "category": "core/data-structure",
1510
+ "description": "서로소 집합(Disjoint Set Union). 원소들을 그룹으로 합치고 같은 그룹인지 거의 상수 시간에 묻는다.",
466
1511
  "dependencies": [],
467
1512
  "files": [
468
1513
  "data-structure/union-find/index.ts",
@@ -471,7 +1516,24 @@
471
1516
  },
472
1517
  {
473
1518
  "name": "dom-attribute",
474
- "description": "DOM 요소의 attribute 값을 읽고 설정하는 유틸을 제공한다. `null`과 `undefined`는",
1519
+ "packageName": "@hermes/dom-attribute",
1520
+ "version": "1.0.0",
1521
+ "modules": [
1522
+ {
1523
+ "name": "dom-attribute",
1524
+ "packageName": "@hermes/dom-attribute",
1525
+ "version": "1.0.0",
1526
+ "scope": "core",
1527
+ "files": {
1528
+ "dom/attribute/attribute.ts": "0ffa49b8a742f14a05683304d12661d71d228f2a29cb0203e047f82ac3c66e36",
1529
+ "dom/attribute/index.ts": "b58ef7a3bf98ab8447c32980d5cd2d906231f7f772fa18ac802a97a47a658204"
1530
+ },
1531
+ "requires": []
1532
+ }
1533
+ ],
1534
+ "scope": "core",
1535
+ "category": "core/dom",
1536
+ "description": "DOM 요소의 attribute 값을 읽고 설정하는 유틸을 제공한다. `null`과 `undefined`는 attribute 제거로 처리하고, 그 외 값은 문자열로 변환해 설정한다.",
475
1537
  "dependencies": [],
476
1538
  "runtime": "dom",
477
1539
  "files": [
@@ -481,7 +1543,24 @@
481
1543
  },
482
1544
  {
483
1545
  "name": "dom-class-name",
484
- "description": "DOM 요소의 `classList`를 다루는 작은 유틸을 제공한다. 공백으로 이어진 문자열이나",
1546
+ "packageName": "@hermes/dom-class-name",
1547
+ "version": "1.0.0",
1548
+ "modules": [
1549
+ {
1550
+ "name": "dom-class-name",
1551
+ "packageName": "@hermes/dom-class-name",
1552
+ "version": "1.0.0",
1553
+ "scope": "core",
1554
+ "files": {
1555
+ "dom/class-name/class-name.ts": "895ce7b801e0ffc63d1346b6d420d6bc8a26a20e8f6917cf78ddf5c45a02120a",
1556
+ "dom/class-name/index.ts": "406840891f7e3defafe0b2536db55c6381e1a9b7bae876936358f75679351b08"
1557
+ },
1558
+ "requires": []
1559
+ }
1560
+ ],
1561
+ "scope": "core",
1562
+ "category": "core/dom",
1563
+ "description": "DOM 요소의 `classList`를 다루는 작은 유틸을 제공한다. 공백으로 이어진 문자열이나 문자열 배열을 받아 비어 있는 class token은 건너뛴다.",
485
1564
  "dependencies": [],
486
1565
  "runtime": "dom",
487
1566
  "files": [
@@ -491,7 +1570,24 @@
491
1570
  },
492
1571
  {
493
1572
  "name": "dom-is-element",
494
- "description": "값이 DOM `Element`처럼 보이는지 판별한다. 다른 window/iframe에서 온 요소도",
1573
+ "packageName": "@hermes/dom-is-element",
1574
+ "version": "1.0.0",
1575
+ "modules": [
1576
+ {
1577
+ "name": "dom-is-element",
1578
+ "packageName": "@hermes/dom-is-element",
1579
+ "version": "1.0.0",
1580
+ "scope": "core",
1581
+ "files": {
1582
+ "dom/is-element/index.ts": "aca97e18d76d39334305850065a580d6f6c67a770095476e04bea7c97fbd95ad",
1583
+ "dom/is-element/is-element.ts": "15a86226d933e3d1198547defc304c395223cd1caa1c02ae25ff3b6b1294da5e"
1584
+ },
1585
+ "requires": []
1586
+ }
1587
+ ],
1588
+ "scope": "core",
1589
+ "category": "core/dom",
1590
+ "description": "값이 DOM `Element`처럼 보이는지 판별한다. 다른 window/iframe에서 온 요소도 처리할 수 있도록 `instanceof Element` 대신 `nodeType`과 `nodeName`을 확인한다.",
495
1591
  "dependencies": [],
496
1592
  "runtime": "dom",
497
1593
  "files": [
@@ -501,6 +1597,23 @@
501
1597
  },
502
1598
  {
503
1599
  "name": "dom-query",
1600
+ "packageName": "@hermes/dom-query",
1601
+ "version": "1.0.0",
1602
+ "modules": [
1603
+ {
1604
+ "name": "dom-query",
1605
+ "packageName": "@hermes/dom-query",
1606
+ "version": "1.0.0",
1607
+ "scope": "core",
1608
+ "files": {
1609
+ "dom/query/index.ts": "4c39b9f6920a9b265b02974e4c349f9e778fc038198e04a6cedc9432fa256ff5",
1610
+ "dom/query/query.ts": "5c04b31518f33f14a1c5c366916d6602e930c0814d0d135c0ced3ed4837ffec2"
1611
+ },
1612
+ "requires": []
1613
+ }
1614
+ ],
1615
+ "scope": "core",
1616
+ "category": "core/dom",
504
1617
  "description": "DOM query 결과를 `null` 대신 `undefined`와 배열로 다루기 위한 작은 래퍼를 제공한다.",
505
1618
  "dependencies": [],
506
1619
  "runtime": "dom",
@@ -511,7 +1624,24 @@
511
1624
  },
512
1625
  {
513
1626
  "name": "http-content-type",
514
- "description": "`Content-Type` 헤더 값을 MIME 타입과 파라미터로 파싱하고 JSON 계열 MIME 타입을",
1627
+ "packageName": "@hermes/http-content-type",
1628
+ "version": "1.0.0",
1629
+ "modules": [
1630
+ {
1631
+ "name": "http-content-type",
1632
+ "packageName": "@hermes/http-content-type",
1633
+ "version": "1.0.0",
1634
+ "scope": "core",
1635
+ "files": {
1636
+ "http/content-type/content-type.ts": "e3e13194fa873ab134876d92274bdd0ddd83f3cf8e4746973186d50194327f91",
1637
+ "http/content-type/index.ts": "fb74c0d566bf7e3d44a4ba91a11ecd1c30f36466776930b2fba5e8d0b5c1c277"
1638
+ },
1639
+ "requires": []
1640
+ }
1641
+ ],
1642
+ "scope": "core",
1643
+ "category": "core/http",
1644
+ "description": "`Content-Type` 헤더 값을 MIME 타입과 파라미터로 파싱하고 JSON 계열 MIME 타입을 판별한다.",
515
1645
  "dependencies": [],
516
1646
  "files": [
517
1647
  "http/content-type/content-type.ts",
@@ -520,6 +1650,23 @@
520
1650
  },
521
1651
  {
522
1652
  "name": "http-header",
1653
+ "packageName": "@hermes/http-header",
1654
+ "version": "1.0.0",
1655
+ "modules": [
1656
+ {
1657
+ "name": "http-header",
1658
+ "packageName": "@hermes/http-header",
1659
+ "version": "1.0.0",
1660
+ "scope": "core",
1661
+ "files": {
1662
+ "http/header/header.ts": "a9234ae918fc017872ffac0b8e24c39da8ca88a9815a56acdb75aa2beb8906a7",
1663
+ "http/header/index.ts": "90037599f35339e06a966b75f6bc71394fcc11014d1fbf3d0851043975e610b1"
1664
+ },
1665
+ "requires": []
1666
+ }
1667
+ ],
1668
+ "scope": "core",
1669
+ "category": "core/http",
523
1670
  "description": "자주 쓰는 HTTP 헤더명 상수와 헤더명 판별/정규화 함수를 제공한다.",
524
1671
  "dependencies": [],
525
1672
  "files": [
@@ -529,6 +1676,23 @@
529
1676
  },
530
1677
  {
531
1678
  "name": "http-method",
1679
+ "packageName": "@hermes/http-method",
1680
+ "version": "1.0.0",
1681
+ "modules": [
1682
+ {
1683
+ "name": "http-method",
1684
+ "packageName": "@hermes/http-method",
1685
+ "version": "1.0.0",
1686
+ "scope": "core",
1687
+ "files": {
1688
+ "http/method/index.ts": "f204bf411474904f91e8ceaf66bbe62baeac55561c76e97cec009c83ef729eec",
1689
+ "http/method/method.ts": "5328a01b43db83e4de30129625e3ff34c4cda6fbb776a919c1563e9f9bfda32a"
1690
+ },
1691
+ "requires": []
1692
+ }
1693
+ ],
1694
+ "scope": "core",
1695
+ "category": "core/http",
532
1696
  "description": "HTTP 메서드 상수와 메서드 판별/정규화 함수를 제공한다.",
533
1697
  "dependencies": [],
534
1698
  "files": [
@@ -538,7 +1702,24 @@
538
1702
  },
539
1703
  {
540
1704
  "name": "http-status",
541
- "description": "HTTP 상태 코드 상수와 상태 코드 범위 판별 함수를 제공한다. 등록된 상태 코드인지와",
1705
+ "packageName": "@hermes/http-status",
1706
+ "version": "1.0.0",
1707
+ "modules": [
1708
+ {
1709
+ "name": "http-status",
1710
+ "packageName": "@hermes/http-status",
1711
+ "version": "1.0.0",
1712
+ "scope": "core",
1713
+ "files": {
1714
+ "http/status/index.ts": "8715413232bc8d2c753f38920706d1c1a354ce9c9fb3da94abfd8eb43313c083",
1715
+ "http/status/status.ts": "9123ab8816da2758aaf43bf92971d6bb1bc2b4a464de6d005cdcc86701f3710e"
1716
+ },
1717
+ "requires": []
1718
+ }
1719
+ ],
1720
+ "scope": "core",
1721
+ "category": "core/http",
1722
+ "description": "HTTP 상태 코드 상수와 상태 코드 범위 판별 함수를 제공한다. 등록된 상태 코드인지와 HTTP 상태 코드 범위(`100`-`599`)에 들어오는지는 분리해서 판단한다.",
542
1723
  "dependencies": [],
543
1724
  "files": [
544
1725
  "http/status/index.ts",
@@ -547,6 +1728,23 @@
547
1728
  },
548
1729
  {
549
1730
  "name": "number-clamp",
1731
+ "packageName": "@hermes/number-clamp",
1732
+ "version": "1.0.0",
1733
+ "modules": [
1734
+ {
1735
+ "name": "number-clamp",
1736
+ "packageName": "@hermes/number-clamp",
1737
+ "version": "1.0.0",
1738
+ "scope": "core",
1739
+ "files": {
1740
+ "number/clamp/clamp.ts": "000ac9ec190fb9f8b9a65e909b9e2fe50bde32f85f7b4c21de35e1780a7daffa",
1741
+ "number/clamp/index.ts": "0de3fa17ad88dca5cfc51f3666204872706e1fb7d781e56ca7689974c3b359bc"
1742
+ },
1743
+ "requires": []
1744
+ }
1745
+ ],
1746
+ "scope": "core",
1747
+ "category": "core/number",
550
1748
  "description": "값을 `[min, max]` 범위로 자른다. 범위를 벗어나면 가까운 경계값으로 고정한다.",
551
1749
  "dependencies": [],
552
1750
  "files": [
@@ -556,7 +1754,24 @@
556
1754
  },
557
1755
  {
558
1756
  "name": "number-factorial",
559
- "description": "음이 아닌 정수의 계승(`n!`)을 구한다. `0! = 1`이고, 음수 입력은 정의되지 않아",
1757
+ "packageName": "@hermes/number-factorial",
1758
+ "version": "1.0.0",
1759
+ "modules": [
1760
+ {
1761
+ "name": "number-factorial",
1762
+ "packageName": "@hermes/number-factorial",
1763
+ "version": "1.0.0",
1764
+ "scope": "core",
1765
+ "files": {
1766
+ "number/factorial/factorial.ts": "5bef26f5cc95b392d41b3dd9d90adb71abbaadbb937cc635e2363087d4fe3c6f",
1767
+ "number/factorial/index.ts": "22a334c45ff5c3c936bd4625ab14507bb03a81c663eb2ee28d8d7e3f31e11016"
1768
+ },
1769
+ "requires": []
1770
+ }
1771
+ ],
1772
+ "scope": "core",
1773
+ "category": "core/number",
1774
+ "description": "음이 아닌 정수의 계승(`n!`)을 구한다. `0! = 1`이고, 음수 입력은 정의되지 않아 `RangeError`를 던진다.",
560
1775
  "dependencies": [],
561
1776
  "files": [
562
1777
  "number/factorial/factorial.ts",
@@ -565,7 +1780,24 @@
565
1780
  },
566
1781
  {
567
1782
  "name": "number-format-thousands",
568
- "description": "정수부에 천 단위 콤마를 넣는다. 소수부와 음수 부호는 그대로 보존한다.",
1783
+ "packageName": "@hermes/number-format-thousands",
1784
+ "version": "1.0.0",
1785
+ "modules": [
1786
+ {
1787
+ "name": "number-format-thousands",
1788
+ "packageName": "@hermes/number-format-thousands",
1789
+ "version": "1.0.0",
1790
+ "scope": "core",
1791
+ "files": {
1792
+ "number/format-thousands/format-thousands.ts": "83b7d751965dc53f49f9ea586256121900e521bebbc3f5f7d531d1c6c75552c1",
1793
+ "number/format-thousands/index.ts": "db1caaa9da5c0521b8c142ab1ccde6e4cda73bce800d1e6d2172518e01501dd8"
1794
+ },
1795
+ "requires": []
1796
+ }
1797
+ ],
1798
+ "scope": "core",
1799
+ "category": "core/number",
1800
+ "description": "정수부에 천 단위 콤마를 넣는다. 소수부와 음수 부호는 그대로 보존한다. `Intl.NumberFormat`의 로케일 의존(구분자·소수부 절단)을 피하려 문자열을 직접 가공해 콤마 고정 + 소수부 완전 보존을 보장한다.",
569
1801
  "dependencies": [],
570
1802
  "files": [
571
1803
  "number/format-thousands/format-thousands.ts",
@@ -574,7 +1806,24 @@
574
1806
  },
575
1807
  {
576
1808
  "name": "number-gcd",
577
- "description": "두 정수의 최대공약수(GCD)를 유클리드 호제법으로 구한다. 부호는 결과에",
1809
+ "packageName": "@hermes/number-gcd",
1810
+ "version": "1.0.0",
1811
+ "modules": [
1812
+ {
1813
+ "name": "number-gcd",
1814
+ "packageName": "@hermes/number-gcd",
1815
+ "version": "1.0.0",
1816
+ "scope": "core",
1817
+ "files": {
1818
+ "number/gcd/gcd.ts": "579f7d54694397850732238739e15acc259bae77ea646a3ed7a26d1cdfc01213",
1819
+ "number/gcd/index.ts": "3aecb144406fca328275ad15ab1e7bfb2d63a643e977e5cdf5dc5c190412cfd4"
1820
+ },
1821
+ "requires": []
1822
+ }
1823
+ ],
1824
+ "scope": "core",
1825
+ "category": "core/number",
1826
+ "description": "두 정수의 최대공약수(GCD)를 유클리드 호제법으로 구한다. 부호는 결과에 영향을 주지 않으므로 입력을 절댓값 기준으로 계산한다.",
578
1827
  "dependencies": [],
579
1828
  "files": [
580
1829
  "number/gcd/gcd.ts",
@@ -583,6 +1832,23 @@
583
1832
  },
584
1833
  {
585
1834
  "name": "number-in-range",
1835
+ "packageName": "@hermes/number-in-range",
1836
+ "version": "1.0.0",
1837
+ "modules": [
1838
+ {
1839
+ "name": "number-in-range",
1840
+ "packageName": "@hermes/number-in-range",
1841
+ "version": "1.0.0",
1842
+ "scope": "core",
1843
+ "files": {
1844
+ "number/in-range/in-range.ts": "9f60a04ad7147f477009050e126c9670a62180002b532d34c49f59b446da1696",
1845
+ "number/in-range/index.ts": "1311311a22fe33372e50252624cf6802b4675e1cf6752ebbcf67c866e5951b5c"
1846
+ },
1847
+ "requires": []
1848
+ }
1849
+ ],
1850
+ "scope": "core",
1851
+ "category": "core/number",
586
1852
  "description": "값이 `[min, max)` 범위 안에 있는지 검사한다. 하한 `min`은 포함하고 상한 `max`는 제외한다.",
587
1853
  "dependencies": [],
588
1854
  "files": [
@@ -592,6 +1858,23 @@
592
1858
  },
593
1859
  {
594
1860
  "name": "number-is-even",
1861
+ "packageName": "@hermes/number-is-even",
1862
+ "version": "1.0.0",
1863
+ "modules": [
1864
+ {
1865
+ "name": "number-is-even",
1866
+ "packageName": "@hermes/number-is-even",
1867
+ "version": "1.0.0",
1868
+ "scope": "core",
1869
+ "files": {
1870
+ "number/is-even/index.ts": "dc73dba12fba3e24351e813fa6bcadc40f0f477c0c3a9eef7b49e31fa18156e8",
1871
+ "number/is-even/is-even.ts": "1f95d2931cfcbd6e8f78f82316306ddae1086d1ad21c607153f3e5fe8616fc99"
1872
+ },
1873
+ "requires": []
1874
+ }
1875
+ ],
1876
+ "scope": "core",
1877
+ "category": "core/number",
595
1878
  "description": "정수의 짝수 여부를 판정한다. 음수와 0도 동일한 규칙으로 처리한다(`0`은 짝수).",
596
1879
  "dependencies": [],
597
1880
  "files": [
@@ -601,6 +1884,42 @@
601
1884
  },
602
1885
  {
603
1886
  "name": "number-is-odd",
1887
+ "packageName": "@hermes/number-is-odd",
1888
+ "version": "1.0.0",
1889
+ "modules": [
1890
+ {
1891
+ "name": "number-is-even",
1892
+ "packageName": "@hermes/number-is-even",
1893
+ "version": "1.0.0",
1894
+ "scope": "core",
1895
+ "files": {
1896
+ "number/is-even/index.ts": "dc73dba12fba3e24351e813fa6bcadc40f0f477c0c3a9eef7b49e31fa18156e8",
1897
+ "number/is-even/is-even.ts": "1f95d2931cfcbd6e8f78f82316306ddae1086d1ad21c607153f3e5fe8616fc99"
1898
+ },
1899
+ "requires": []
1900
+ },
1901
+ {
1902
+ "name": "number-is-odd",
1903
+ "packageName": "@hermes/number-is-odd",
1904
+ "version": "1.0.0",
1905
+ "scope": "core",
1906
+ "files": {
1907
+ "number/is-odd/index.ts": "375994897f4b212ba122f8434bd0fdc896d0a1b6f7a2cff4acbb194b36b9fb33",
1908
+ "number/is-odd/is-odd.ts": "d65b50053bbf248b59812eb937fc14ccb83807241757c73ab53a1cc17ee4a960"
1909
+ },
1910
+ "requires": [
1911
+ {
1912
+ "packageName": "@hermes/number-is-even",
1913
+ "range": "^1.0.0",
1914
+ "kind": "dependency",
1915
+ "internal": true,
1916
+ "optional": false
1917
+ }
1918
+ ]
1919
+ }
1920
+ ],
1921
+ "scope": "core",
1922
+ "category": "core/number",
604
1923
  "description": "정수의 홀수 여부를 판정한다. 음수와 0도 동일한 규칙으로 처리한다(`0`은 홀수가 아님).",
605
1924
  "dependencies": [],
606
1925
  "files": [
@@ -612,7 +1931,43 @@
612
1931
  },
613
1932
  {
614
1933
  "name": "number-lcm",
615
- "description": "두 정수의 최소공배수(LCM)를 구한다. `|a * b| / gcd(a, b)` 로 계산하되,",
1934
+ "packageName": "@hermes/number-lcm",
1935
+ "version": "1.0.0",
1936
+ "modules": [
1937
+ {
1938
+ "name": "number-gcd",
1939
+ "packageName": "@hermes/number-gcd",
1940
+ "version": "1.0.0",
1941
+ "scope": "core",
1942
+ "files": {
1943
+ "number/gcd/gcd.ts": "579f7d54694397850732238739e15acc259bae77ea646a3ed7a26d1cdfc01213",
1944
+ "number/gcd/index.ts": "3aecb144406fca328275ad15ab1e7bfb2d63a643e977e5cdf5dc5c190412cfd4"
1945
+ },
1946
+ "requires": []
1947
+ },
1948
+ {
1949
+ "name": "number-lcm",
1950
+ "packageName": "@hermes/number-lcm",
1951
+ "version": "1.0.0",
1952
+ "scope": "core",
1953
+ "files": {
1954
+ "number/lcm/index.ts": "1c8a6ce3a0131513975fc8824dec32baca68d88c2d045eb41c2bc79a59cbb341",
1955
+ "number/lcm/lcm.ts": "5b9e702164941ae3d750758a1db52a3321e0912e7aa1d58d68fdbb546e5b8803"
1956
+ },
1957
+ "requires": [
1958
+ {
1959
+ "packageName": "@hermes/number-gcd",
1960
+ "range": "^1.0.0",
1961
+ "kind": "dependency",
1962
+ "internal": true,
1963
+ "optional": false
1964
+ }
1965
+ ]
1966
+ }
1967
+ ],
1968
+ "scope": "core",
1969
+ "category": "core/number",
1970
+ "description": "두 정수의 최소공배수(LCM)를 구한다. `|a * b| / gcd(a, b)` 로 계산하되, 오버플로를 줄이려 먼저 나누고 곱한다. 부호는 절댓값 기준으로 정규화한다.",
616
1971
  "dependencies": [],
617
1972
  "files": [
618
1973
  "number/gcd/gcd.ts",
@@ -623,6 +1978,23 @@
623
1978
  },
624
1979
  {
625
1980
  "name": "number-lerp",
1981
+ "packageName": "@hermes/number-lerp",
1982
+ "version": "1.0.0",
1983
+ "modules": [
1984
+ {
1985
+ "name": "number-lerp",
1986
+ "packageName": "@hermes/number-lerp",
1987
+ "version": "1.0.0",
1988
+ "scope": "core",
1989
+ "files": {
1990
+ "number/lerp/index.ts": "1151705220066be99c40d4ced01bb77afcc6d16220840a3363dda25b9ef9d12a",
1991
+ "number/lerp/lerp.ts": "b6fe38921b7e1e43185543f17d103ebb8aea0ce5f46767f9c3f0f21b4503cea8"
1992
+ },
1993
+ "requires": []
1994
+ }
1995
+ ],
1996
+ "scope": "core",
1997
+ "category": "core/number",
626
1998
  "description": "두 값 사이를 선형 보간(linear interpolation)한다. `t=0`이면 `start`, `t=1`이면 `end`를 돌려준다.",
627
1999
  "dependencies": [],
628
2000
  "files": [
@@ -632,7 +2004,24 @@
632
2004
  },
633
2005
  {
634
2006
  "name": "number-percentage",
635
- "description": "`value`가 `total`에서 차지하는 비율을 백분율(`value / total * 100`)로 계산한다.",
2007
+ "packageName": "@hermes/number-percentage",
2008
+ "version": "1.0.0",
2009
+ "modules": [
2010
+ {
2011
+ "name": "number-percentage",
2012
+ "packageName": "@hermes/number-percentage",
2013
+ "version": "1.0.0",
2014
+ "scope": "core",
2015
+ "files": {
2016
+ "number/percentage/index.ts": "67c16c541bafcb72247993dcb35407fda6a222ed926b547f0b5a24031e225ec6",
2017
+ "number/percentage/percentage.ts": "9517b5f15e862fc23b5a3599a9da06b6315ca45a0642cec1e7dd10baa7f198d2"
2018
+ },
2019
+ "requires": []
2020
+ }
2021
+ ],
2022
+ "scope": "core",
2023
+ "category": "core/number",
2024
+ "description": "`value`가 `total`에서 차지하는 비율을 백분율(`value / total * 100`)로 계산한다. `total`이 `0`이면 나눗셈 대신 `0`을 돌려준다.",
636
2025
  "dependencies": [],
637
2026
  "files": [
638
2027
  "number/percentage/index.ts",
@@ -641,7 +2030,24 @@
641
2030
  },
642
2031
  {
643
2032
  "name": "number-random",
644
- "description": "`[min, max)` 구간의 실수 난수를 반환한다. `min`은 포함하고 `max`는 제외한다.",
2033
+ "packageName": "@hermes/number-random",
2034
+ "version": "1.0.0",
2035
+ "modules": [
2036
+ {
2037
+ "name": "number-random",
2038
+ "packageName": "@hermes/number-random",
2039
+ "version": "1.0.0",
2040
+ "scope": "core",
2041
+ "files": {
2042
+ "number/random/index.ts": "4695c157714c4f0baf3647241c3d9f1d012d1203bb4b0184ad4590267a3952b8",
2043
+ "number/random/random.ts": "fcf432b2b85cb208c754426f3949362e12b1abcbe348347997927b47b3116b98"
2044
+ },
2045
+ "requires": []
2046
+ }
2047
+ ],
2048
+ "scope": "core",
2049
+ "category": "core/number",
2050
+ "description": "`[min, max)` 구간의 실수 난수를 반환한다. `min`은 포함하고 `max`는 제외한다. 난수원은 `Math.random`이라 암호학적으로 안전하지 않다.",
645
2051
  "dependencies": [],
646
2052
  "files": [
647
2053
  "number/random/index.ts",
@@ -650,7 +2056,24 @@
650
2056
  },
651
2057
  {
652
2058
  "name": "number-random-int",
653
- "description": "`[min, max]` 구간의 정수 난수를 반환한다. `min`과 `max` 양끝을 모두 포함한다.",
2059
+ "packageName": "@hermes/number-random-int",
2060
+ "version": "1.0.0",
2061
+ "modules": [
2062
+ {
2063
+ "name": "number-random-int",
2064
+ "packageName": "@hermes/number-random-int",
2065
+ "version": "1.0.0",
2066
+ "scope": "core",
2067
+ "files": {
2068
+ "number/random-int/index.ts": "0b652e1777dc7df6bd4112b063aa939ff71daf656fcde14363a3d6294837fe70",
2069
+ "number/random-int/random-int.ts": "befcfb7a411e9c403186c5191fd4c84d812ba089b4fa66b87a0ea1626fbb1c92"
2070
+ },
2071
+ "requires": []
2072
+ }
2073
+ ],
2074
+ "scope": "core",
2075
+ "category": "core/number",
2076
+ "description": "`[min, max]` 구간의 정수 난수를 반환한다. `min`과 `max` 양끝을 모두 포함한다. 난수원은 `Math.random`이라 암호학적으로 안전하지 않다.",
654
2077
  "dependencies": [],
655
2078
  "files": [
656
2079
  "number/random-int/index.ts",
@@ -659,7 +2082,24 @@
659
2082
  },
660
2083
  {
661
2084
  "name": "number-round",
662
- "description": "`value`를 `digits` 자리수로 반올림한다. 곱셈식 대신 지수 표기로 자리를 옮겨",
2085
+ "packageName": "@hermes/number-round",
2086
+ "version": "1.0.0",
2087
+ "modules": [
2088
+ {
2089
+ "name": "number-round",
2090
+ "packageName": "@hermes/number-round",
2091
+ "version": "1.0.0",
2092
+ "scope": "core",
2093
+ "files": {
2094
+ "number/round/index.ts": "9a823a5d74c726ea33e6a5f814996f38646230956e7a39363595e02878429c8d",
2095
+ "number/round/round.ts": "be4323d11408ee6a9bda444f786a3d2808a65289ce7febcb0e741ebddd3dc437"
2096
+ },
2097
+ "requires": []
2098
+ }
2099
+ ],
2100
+ "scope": "core",
2101
+ "category": "core/number",
2102
+ "description": "`value`를 `digits` 자리수로 반올림한다. 곱셈식 대신 지수 표기로 자리를 옮겨 `1.005` 같은 경계값이 부동소수점 오차 없이 기대대로 반올림되게 한다.",
663
2103
  "dependencies": [],
664
2104
  "files": [
665
2105
  "number/round/index.ts",
@@ -668,7 +2108,24 @@
668
2108
  },
669
2109
  {
670
2110
  "name": "number-safe-parse-number",
671
- "description": "임의의 입력을 숫자로 안전하게 파싱한다. 빈 문자열·`NaN`·`null`·boolean·배열",
2111
+ "packageName": "@hermes/number-safe-parse-number",
2112
+ "version": "1.0.0",
2113
+ "modules": [
2114
+ {
2115
+ "name": "number-safe-parse-number",
2116
+ "packageName": "@hermes/number-safe-parse-number",
2117
+ "version": "1.0.0",
2118
+ "scope": "core",
2119
+ "files": {
2120
+ "number/safe-parse-number/index.ts": "50e853837f309dc8afa46070598360823120e9ce5be7983da47e9f1e42f5fed5",
2121
+ "number/safe-parse-number/safe-parse-number.ts": "d7b0c3291ec2e35b4a4f90cdc19fc1fcb5c535794ddbdb5460d48bfe91f9af74"
2122
+ },
2123
+ "requires": []
2124
+ }
2125
+ ],
2126
+ "scope": "core",
2127
+ "category": "core/number",
2128
+ "description": "임의의 입력을 숫자로 안전하게 파싱한다. 빈 문자열·`NaN`·`null`·boolean·배열 처럼 숫자로 볼 수 없는 값은 `Number()`의 함정을 피해 `fallback`(기본 0)으로 돌려준다.",
672
2129
  "dependencies": [],
673
2130
  "files": [
674
2131
  "number/safe-parse-number/index.ts",
@@ -677,7 +2134,24 @@
677
2134
  },
678
2135
  {
679
2136
  "name": "number-to-ordinal",
680
- "description": "정수를 영어 서수 문자열로 바꾼다. `1 -> \"1st\"`, `2 -> \"2nd\"`, `3 -> \"3rd\"`,",
2137
+ "packageName": "@hermes/number-to-ordinal",
2138
+ "version": "1.0.0",
2139
+ "modules": [
2140
+ {
2141
+ "name": "number-to-ordinal",
2142
+ "packageName": "@hermes/number-to-ordinal",
2143
+ "version": "1.0.0",
2144
+ "scope": "core",
2145
+ "files": {
2146
+ "number/to-ordinal/index.ts": "9031d2ae96bc961c9e242fce4ec8dae50eb80d68e24afd959093fe2fcd879f86",
2147
+ "number/to-ordinal/to-ordinal.ts": "a58a8a368cd12c8e34534ef0f6f59f7788638be00636182f1fd09879ed1c6289"
2148
+ },
2149
+ "requires": []
2150
+ }
2151
+ ],
2152
+ "scope": "core",
2153
+ "category": "core/number",
2154
+ "description": "정수를 영어 서수 문자열로 바꾼다. `1 -> \"1st\"`, `2 -> \"2nd\"`, `3 -> \"3rd\"`, 그 외 `\"th\"`. 끝자리가 1·2·3이어도 11·12·13은 예외로 `\"th\"`다.",
681
2155
  "dependencies": [],
682
2156
  "files": [
683
2157
  "number/to-ordinal/index.ts",
@@ -686,7 +2160,24 @@
686
2160
  },
687
2161
  {
688
2162
  "name": "object-deep-clone",
689
- "description": "plain object와 array를 재귀 복제해 입력과 구조를 공유하지 않는 새 값을 만든다.",
2163
+ "packageName": "@hermes/object-deep-clone",
2164
+ "version": "1.0.0",
2165
+ "modules": [
2166
+ {
2167
+ "name": "object-deep-clone",
2168
+ "packageName": "@hermes/object-deep-clone",
2169
+ "version": "1.0.0",
2170
+ "scope": "core",
2171
+ "files": {
2172
+ "object/deep-clone/deep-clone.ts": "e6c017cff7cebd681730b7ca42f58849a029be87e7265078c0601a8885e70050",
2173
+ "object/deep-clone/index.ts": "3f404d12d062eeedc253a7ebca0db8e6b5586a390336b331f1aedfd4e4d38fd0"
2174
+ },
2175
+ "requires": []
2176
+ }
2177
+ ],
2178
+ "scope": "core",
2179
+ "category": "core/object",
2180
+ "description": "plain object와 array를 재귀 복제해 입력과 구조를 공유하지 않는 새 값을 만든다. `Date`는 같은 시각의 새 인스턴스로 복제하고, 원시·함수는 참조를 그대로 유지한다. 순환 참조는 고려하지 않는다.",
690
2181
  "dependencies": [],
691
2182
  "files": [
692
2183
  "object/deep-clone/deep-clone.ts",
@@ -695,7 +2186,24 @@
695
2186
  },
696
2187
  {
697
2188
  "name": "object-deep-equal",
698
- "description": "두 값의 깊은 동등성을 판정한다. plain object와 array는 구조를 재귀 비교하고,",
2189
+ "packageName": "@hermes/object-deep-equal",
2190
+ "version": "1.0.0",
2191
+ "modules": [
2192
+ {
2193
+ "name": "object-deep-equal",
2194
+ "packageName": "@hermes/object-deep-equal",
2195
+ "version": "1.0.0",
2196
+ "scope": "core",
2197
+ "files": {
2198
+ "object/deep-equal/deep-equal.ts": "cc5ae9f52a11194d8d1bcf1eea2970cc961df5b901a16aa72b3870246a078b02",
2199
+ "object/deep-equal/index.ts": "eea901126ad422f8b851168f681c79910da8916fe3ce46c5647883a073389cd6"
2200
+ },
2201
+ "requires": []
2202
+ }
2203
+ ],
2204
+ "scope": "core",
2205
+ "category": "core/object",
2206
+ "description": "두 값의 깊은 동등성을 판정한다. plain object와 array는 구조를 재귀 비교하고, 그 외(원시·Date)는 값으로 비교한다. 순환 참조는 고려하지 않는다.",
699
2207
  "dependencies": [],
700
2208
  "files": [
701
2209
  "object/deep-equal/deep-equal.ts",
@@ -704,7 +2212,24 @@
704
2212
  },
705
2213
  {
706
2214
  "name": "object-deep-merge",
707
- "description": "중첩 plain object를 재귀 병합한다. 양쪽이 모두 plain object인 키만 더 깊이 들어가고,",
2215
+ "packageName": "@hermes/object-deep-merge",
2216
+ "version": "1.0.0",
2217
+ "modules": [
2218
+ {
2219
+ "name": "object-deep-merge",
2220
+ "packageName": "@hermes/object-deep-merge",
2221
+ "version": "1.0.0",
2222
+ "scope": "core",
2223
+ "files": {
2224
+ "object/deep-merge/deep-merge.ts": "08158a4c9027d36ad1a5f7e479b041b383e104a737506fb247513ddd1d561ae8",
2225
+ "object/deep-merge/index.ts": "ae91da4157821ce34de00323e1e204b64305ae456e47e9f08f1981cbfcd58f1c"
2226
+ },
2227
+ "requires": []
2228
+ }
2229
+ ],
2230
+ "scope": "core",
2231
+ "category": "core/object",
2232
+ "description": "중첩 plain object를 재귀 병합한다. 양쪽이 모두 plain object인 키만 더 깊이 들어가고, 배열·원시·Date 등은 `source` 값으로 통째 교체한다. 입력을 변형하지 않고 새 객체를 반환한다.",
708
2233
  "dependencies": [],
709
2234
  "files": [
710
2235
  "object/deep-merge/deep-merge.ts",
@@ -713,7 +2238,24 @@
713
2238
  },
714
2239
  {
715
2240
  "name": "object-defaults",
716
- "description": "`obj`에서 값이 없는(undefined) 키를 `defaultValues`로 채운 새 객체를 반환한다.",
2241
+ "packageName": "@hermes/object-defaults",
2242
+ "version": "1.0.0",
2243
+ "modules": [
2244
+ {
2245
+ "name": "object-defaults",
2246
+ "packageName": "@hermes/object-defaults",
2247
+ "version": "1.0.0",
2248
+ "scope": "core",
2249
+ "files": {
2250
+ "object/defaults/defaults.ts": "7c5f9b72145fd0bcea248ee7d477162676078b4fb50bfc9fc4ce873a6d750df6",
2251
+ "object/defaults/index.ts": "daefdb58272ad9e4e44aedc046297adfc3b12f8d541c00a1e07d7f291c3b372b"
2252
+ },
2253
+ "requires": []
2254
+ }
2255
+ ],
2256
+ "scope": "core",
2257
+ "category": "core/object",
2258
+ "description": "`obj`에서 값이 없는(undefined) 키를 `defaultValues`로 채운 새 객체를 반환한다. `obj`에 이미 값이 있으면(undefined가 아니면) 그 값을 유지하며, 두 입력 객체는 변형하지 않는다. `0`, `\"\"`, `false` 같은 falsy 값은 존재하는 값으로 보고 덮어쓰지 않는다.",
717
2259
  "dependencies": [],
718
2260
  "files": [
719
2261
  "object/defaults/defaults.ts",
@@ -722,7 +2264,43 @@
722
2264
  },
723
2265
  {
724
2266
  "name": "object-filter-object",
725
- "description": "객체 값의 런타임 타입을 판별해, `filterTypes`에 든 타입의 엔트리를 제거한",
2267
+ "packageName": "@hermes/object-filter-object",
2268
+ "version": "1.0.0",
2269
+ "modules": [
2270
+ {
2271
+ "name": "object-filter-object",
2272
+ "packageName": "@hermes/object-filter-object",
2273
+ "version": "1.0.0",
2274
+ "scope": "core",
2275
+ "files": {
2276
+ "object/filter-object/filter-object.ts": "df08661785354560ec27f4c80bb0e056fa02a6886338469dc58790900f3b613a",
2277
+ "object/filter-object/index.ts": "701d75767700e46dc4c20be5d3fb4b78cae4df981fe24b42ff6b6918f8ce3b14"
2278
+ },
2279
+ "requires": [
2280
+ {
2281
+ "packageName": "@hermes/type-get-type",
2282
+ "range": "^1.0.0",
2283
+ "kind": "dependency",
2284
+ "internal": true,
2285
+ "optional": false
2286
+ }
2287
+ ]
2288
+ },
2289
+ {
2290
+ "name": "type-get-type",
2291
+ "packageName": "@hermes/type-get-type",
2292
+ "version": "1.0.0",
2293
+ "scope": "core",
2294
+ "files": {
2295
+ "type/get-type/get-type.ts": "a7b20a1fadb5d11a188075c1ce7b2cbb2f413a8e34c5a5d23f4de70d61d23067",
2296
+ "type/get-type/index.ts": "0fa1d66782d578c8395c77110000c62c1d14c156863eda96e3d8f5dd53bfa330"
2297
+ },
2298
+ "requires": []
2299
+ }
2300
+ ],
2301
+ "scope": "core",
2302
+ "category": "core/object",
2303
+ "description": "객체 값의 런타임 타입을 판별해, `filterTypes`에 든 타입의 엔트리를 제거한 새 객체를 반환한다.",
726
2304
  "dependencies": [],
727
2305
  "files": [
728
2306
  "object/filter-object/filter-object.ts",
@@ -733,7 +2311,24 @@
733
2311
  },
734
2312
  {
735
2313
  "name": "object-get",
736
- "description": "경로 문자열로 중첩 객체/배열 값에 안전하게 접근한다. 중간 경로가 끊겨도",
2314
+ "packageName": "@hermes/object-get",
2315
+ "version": "1.0.0",
2316
+ "modules": [
2317
+ {
2318
+ "name": "object-get",
2319
+ "packageName": "@hermes/object-get",
2320
+ "version": "1.0.0",
2321
+ "scope": "core",
2322
+ "files": {
2323
+ "object/get/get.ts": "db23b21c02892de3175e8fd97a249618f4cec536a95b88e0d026144bd4d8b811",
2324
+ "object/get/index.ts": "d98169ccb9128829f4234b7310e00eea377929b208137419c3e28e5f98bec011"
2325
+ },
2326
+ "requires": []
2327
+ }
2328
+ ],
2329
+ "scope": "core",
2330
+ "category": "core/object",
2331
+ "description": "경로 문자열로 중첩 객체/배열 값에 안전하게 접근한다. 중간 경로가 끊겨도 예외 없이 `defaultValue`(없으면 `undefined`)를 반환한다.",
737
2332
  "dependencies": [],
738
2333
  "files": [
739
2334
  "object/get/get.ts",
@@ -742,7 +2337,24 @@
742
2337
  },
743
2338
  {
744
2339
  "name": "object-has",
745
- "description": "경로 문자열로 중첩 객체/배열에 해당 키가 존재하는지 판정한다. 값이 아니라",
2340
+ "packageName": "@hermes/object-has",
2341
+ "version": "1.0.0",
2342
+ "modules": [
2343
+ {
2344
+ "name": "object-has",
2345
+ "packageName": "@hermes/object-has",
2346
+ "version": "1.0.0",
2347
+ "scope": "core",
2348
+ "files": {
2349
+ "object/has/has.ts": "377a2155e72327e40d55ce8e7a819708728bf1ba28732804f98b5e1b1d657428",
2350
+ "object/has/index.ts": "7c4648b49a5d8d2e101672d324d73116af3aed4a9ae3f88543cf8805f6ba3a2b"
2351
+ },
2352
+ "requires": []
2353
+ }
2354
+ ],
2355
+ "scope": "core",
2356
+ "category": "core/object",
2357
+ "description": "경로 문자열로 중첩 객체/배열에 해당 키가 존재하는지 판정한다. 값이 아니라 키 소유 여부만 보므로, 값이 `undefined`라도 키가 있으면 `true`다.",
746
2358
  "dependencies": [],
747
2359
  "files": [
748
2360
  "object/has/has.ts",
@@ -751,7 +2363,24 @@
751
2363
  },
752
2364
  {
753
2365
  "name": "object-invert",
754
- "description": "객체의 키와 값을 뒤집은 새 객체를 반환한다. 값이 새 키가 되고 키가 새 값이",
2366
+ "packageName": "@hermes/object-invert",
2367
+ "version": "1.0.0",
2368
+ "modules": [
2369
+ {
2370
+ "name": "object-invert",
2371
+ "packageName": "@hermes/object-invert",
2372
+ "version": "1.0.0",
2373
+ "scope": "core",
2374
+ "files": {
2375
+ "object/invert/index.ts": "3487587f421ea15e7d827e71157612619e7a3663342b90dbde36e4b4565a506e",
2376
+ "object/invert/invert.ts": "f25cbb3c832a9fa782171533788d464203683364803c8e6897df665ced9d1ae9"
2377
+ },
2378
+ "requires": []
2379
+ }
2380
+ ],
2381
+ "scope": "core",
2382
+ "category": "core/object",
2383
+ "description": "객체의 키와 값을 뒤집은 새 객체를 반환한다. 값이 새 키가 되고 키가 새 값이 된다. 객체 키는 문자열로 강제되므로 결과는 `Record<string, string>`이다. 서로 다른 키가 같은 값을 가리키면 마지막 키가 우선하며 입력 객체는 변형하지 않는다.",
755
2384
  "dependencies": [],
756
2385
  "files": [
757
2386
  "object/invert/index.ts",
@@ -760,7 +2389,24 @@
760
2389
  },
761
2390
  {
762
2391
  "name": "object-map-keys",
763
- "description": "객체의 각 키를 `keyFn`으로 변환한 새 객체를 반환한다. 값은 그대로 옮기며",
2392
+ "packageName": "@hermes/object-map-keys",
2393
+ "version": "1.0.0",
2394
+ "modules": [
2395
+ {
2396
+ "name": "object-map-keys",
2397
+ "packageName": "@hermes/object-map-keys",
2398
+ "version": "1.0.0",
2399
+ "scope": "core",
2400
+ "files": {
2401
+ "object/map-keys/index.ts": "84b2ea11e3c274edaf702157a23d2032a856fe9de580bdfa2a38000e918b5b33",
2402
+ "object/map-keys/map-keys.ts": "53259e6a74d1a8f1603eaa97d3c093b6ef443e339ea02ac08c29b7e5ea38caf6"
2403
+ },
2404
+ "requires": []
2405
+ }
2406
+ ],
2407
+ "scope": "core",
2408
+ "category": "core/object",
2409
+ "description": "객체의 각 키를 `keyFn`으로 변환한 새 객체를 반환한다. 값은 그대로 옮기며 입력 객체는 변형하지 않는다. 변환된 키가 겹치면 나중 항목이 우선한다.",
764
2410
  "dependencies": [],
765
2411
  "files": [
766
2412
  "object/map-keys/index.ts",
@@ -769,7 +2415,24 @@
769
2415
  },
770
2416
  {
771
2417
  "name": "object-map-values",
772
- "description": "객체의 각 값을 `valueFn`으로 변환한 새 객체를 반환한다. 키는 그대로 보존하며",
2418
+ "packageName": "@hermes/object-map-values",
2419
+ "version": "1.0.0",
2420
+ "modules": [
2421
+ {
2422
+ "name": "object-map-values",
2423
+ "packageName": "@hermes/object-map-values",
2424
+ "version": "1.0.0",
2425
+ "scope": "core",
2426
+ "files": {
2427
+ "object/map-values/index.ts": "0e043d168c485567574df59096842a9779b9e78dc0cddb6455f510a6fcc91f2b",
2428
+ "object/map-values/map-values.ts": "259e842e3750a7ee33d4d10bee74bbf36ffe41a131df433f139922b48aa76523"
2429
+ },
2430
+ "requires": []
2431
+ }
2432
+ ],
2433
+ "scope": "core",
2434
+ "category": "core/object",
2435
+ "description": "객체의 각 값을 `valueFn`으로 변환한 새 객체를 반환한다. 키는 그대로 보존하며 입력 객체는 변형하지 않는다.",
773
2436
  "dependencies": [],
774
2437
  "files": [
775
2438
  "object/map-values/index.ts",
@@ -778,7 +2441,24 @@
778
2441
  },
779
2442
  {
780
2443
  "name": "object-omit",
781
- "description": "객체에서 지정한 키를 제외한 새 객체를 반환한다. 원본은 변형하지 않으며 남은",
2444
+ "packageName": "@hermes/object-omit",
2445
+ "version": "1.0.0",
2446
+ "modules": [
2447
+ {
2448
+ "name": "object-omit",
2449
+ "packageName": "@hermes/object-omit",
2450
+ "version": "1.0.0",
2451
+ "scope": "core",
2452
+ "files": {
2453
+ "object/omit/index.ts": "efb74fd90271734d2b12bcb22fa7f36372fea78ee4828815ff309d5bdde8224a",
2454
+ "object/omit/omit.ts": "6d82d1eccead2b78eef3f13e27b8f52177a7be41c4ec71e6afeda2ce41c168c5"
2455
+ },
2456
+ "requires": []
2457
+ }
2458
+ ],
2459
+ "scope": "core",
2460
+ "category": "core/object",
2461
+ "description": "객체에서 지정한 키를 제외한 새 객체를 반환한다. 원본은 변형하지 않으며 남은 값은 얕게 복사한다. `pick`의 반대 동작이다.",
782
2462
  "dependencies": [],
783
2463
  "files": [
784
2464
  "object/omit/index.ts",
@@ -787,7 +2467,24 @@
787
2467
  },
788
2468
  {
789
2469
  "name": "object-omit-by",
790
- "description": "`predicate`가 참을 반환한 엔트리를 제외한 새 객체를 반환한다. `pickBy`의 반대",
2470
+ "packageName": "@hermes/object-omit-by",
2471
+ "version": "1.0.0",
2472
+ "modules": [
2473
+ {
2474
+ "name": "object-omit-by",
2475
+ "packageName": "@hermes/object-omit-by",
2476
+ "version": "1.0.0",
2477
+ "scope": "core",
2478
+ "files": {
2479
+ "object/omit-by/index.ts": "231c854737a066b50feb1e651c303d4712c9c86d8ca41d8602c42bdbb4f47739",
2480
+ "object/omit-by/omit-by.ts": "1e8118ef8835d4ce61cba36a933f1cd90b036e12a2466d9485ed6b81d241f3cd"
2481
+ },
2482
+ "requires": []
2483
+ }
2484
+ ],
2485
+ "scope": "core",
2486
+ "category": "core/object",
2487
+ "description": "`predicate`가 참을 반환한 엔트리를 제외한 새 객체를 반환한다. `pickBy`의 반대 동작으로, 값과 키 조건으로 버릴 엔트리를 고른다. 원본은 변형하지 않으며 반환 타입은 `Partial<T>`다.",
791
2488
  "dependencies": [],
792
2489
  "files": [
793
2490
  "object/omit-by/index.ts",
@@ -796,7 +2493,24 @@
796
2493
  },
797
2494
  {
798
2495
  "name": "object-pick",
799
- "description": "객체에서 지정한 키만 골라 새 객체를 반환한다. 원본은 변형하지 않으며 선택된",
2496
+ "packageName": "@hermes/object-pick",
2497
+ "version": "1.0.0",
2498
+ "modules": [
2499
+ {
2500
+ "name": "object-pick",
2501
+ "packageName": "@hermes/object-pick",
2502
+ "version": "1.0.0",
2503
+ "scope": "core",
2504
+ "files": {
2505
+ "object/pick/index.ts": "c71413ea3026d40b535c76095f7c0c6e567e720b701b95f21783c669aa27b2ef",
2506
+ "object/pick/pick.ts": "5afeb645fb83f44408cb8b04f21a1aa2b2681b94cb4cd8f489b007f9953259ca"
2507
+ },
2508
+ "requires": []
2509
+ }
2510
+ ],
2511
+ "scope": "core",
2512
+ "category": "core/object",
2513
+ "description": "객체에서 지정한 키만 골라 새 객체를 반환한다. 원본은 변형하지 않으며 선택된 값은 얕게 복사한다. keys에 있어도 객체에 없는 키는 결과에 담지 않는다.",
800
2514
  "dependencies": [],
801
2515
  "files": [
802
2516
  "object/pick/index.ts",
@@ -805,7 +2519,24 @@
805
2519
  },
806
2520
  {
807
2521
  "name": "object-pick-by",
808
- "description": "`predicate`가 참을 반환한 엔트리만 골라 새 객체를 반환한다. 키가 아니라 값과",
2522
+ "packageName": "@hermes/object-pick-by",
2523
+ "version": "1.0.0",
2524
+ "modules": [
2525
+ {
2526
+ "name": "object-pick-by",
2527
+ "packageName": "@hermes/object-pick-by",
2528
+ "version": "1.0.0",
2529
+ "scope": "core",
2530
+ "files": {
2531
+ "object/pick-by/index.ts": "9b95ed85686e43cb521f001965449ed5876f87023201b8ffded84e197fd1e9ba",
2532
+ "object/pick-by/pick-by.ts": "3818173dc5cd52266988d7d3f8b35f0395988180e3ab861ca7b93aee57d79a5e"
2533
+ },
2534
+ "requires": []
2535
+ }
2536
+ ],
2537
+ "scope": "core",
2538
+ "category": "core/object",
2539
+ "description": "`predicate`가 참을 반환한 엔트리만 골라 새 객체를 반환한다. 키가 아니라 값과 키 조건으로 거르며, 원본은 변형하지 않는다. 어떤 키가 남을지 정적으로 알 수 없어 반환 타입은 `Partial<T>`다.",
809
2540
  "dependencies": [],
810
2541
  "files": [
811
2542
  "object/pick-by/index.ts",
@@ -814,7 +2545,24 @@
814
2545
  },
815
2546
  {
816
2547
  "name": "object-set",
817
- "description": "경로 문자열 위치에 값을 설정한 **새** 객체를 반환하는 불변 유틸. 입력 객체는",
2548
+ "packageName": "@hermes/object-set",
2549
+ "version": "1.0.0",
2550
+ "modules": [
2551
+ {
2552
+ "name": "object-set",
2553
+ "packageName": "@hermes/object-set",
2554
+ "version": "1.0.0",
2555
+ "scope": "core",
2556
+ "files": {
2557
+ "object/set/index.ts": "93efd87d33d4e53399e635b8793d41e2e0487a75a9fbb9441253518f4a2176a0",
2558
+ "object/set/set.ts": "fcfe51592f66bf4a988295492afb4da00813b7b5cfa7b44a08523b96976d70b8"
2559
+ },
2560
+ "requires": []
2561
+ }
2562
+ ],
2563
+ "scope": "core",
2564
+ "category": "core/object",
2565
+ "description": "경로 문자열 위치에 값을 설정한 **새** 객체를 반환하는 불변 유틸. 입력 객체는 변형하지 않고, 경로상의 컨테이너만 얕은 복사로 교체한다(경로 밖 가지는 공유).",
818
2566
  "dependencies": [],
819
2567
  "files": [
820
2568
  "object/set/index.ts",
@@ -823,7 +2571,24 @@
823
2571
  },
824
2572
  {
825
2573
  "name": "string-capitalize",
826
- "description": "문자열의 첫 글자만 대문자로 만들고 나머지는 그대로 둔다. 빈 문자열은 빈",
2574
+ "packageName": "@hermes/string-capitalize",
2575
+ "version": "1.0.0",
2576
+ "modules": [
2577
+ {
2578
+ "name": "string-capitalize",
2579
+ "packageName": "@hermes/string-capitalize",
2580
+ "version": "1.0.0",
2581
+ "scope": "core",
2582
+ "files": {
2583
+ "string/capitalize/capitalize.ts": "5a0e0be0791fca90d9bff52caa6332aaba68b28b9c3a13a509edeb4eaacfdf42",
2584
+ "string/capitalize/index.ts": "b7459d66815642143de2052c5beae645838c5c209c7c284434d2e563ae48f592"
2585
+ },
2586
+ "requires": []
2587
+ }
2588
+ ],
2589
+ "scope": "core",
2590
+ "category": "core/string",
2591
+ "description": "문자열의 첫 글자만 대문자로 만들고 나머지는 그대로 둔다. 빈 문자열은 빈 문자열 그대로 반환한다.",
827
2592
  "dependencies": [],
828
2593
  "files": [
829
2594
  "string/capitalize/capitalize.ts",
@@ -832,7 +2597,61 @@
832
2597
  },
833
2598
  {
834
2599
  "name": "string-change-case",
835
- "description": "케이스 변환 유틸 모음. `splitWords`가 어떤 케이스든 소문자 단어 배열로 쪼개고,",
2600
+ "packageName": "@hermes/string-change-case",
2601
+ "version": "1.0.0",
2602
+ "modules": [
2603
+ {
2604
+ "name": "string-capitalize",
2605
+ "packageName": "@hermes/string-capitalize",
2606
+ "version": "1.0.0",
2607
+ "scope": "core",
2608
+ "files": {
2609
+ "string/capitalize/capitalize.ts": "5a0e0be0791fca90d9bff52caa6332aaba68b28b9c3a13a509edeb4eaacfdf42",
2610
+ "string/capitalize/index.ts": "b7459d66815642143de2052c5beae645838c5c209c7c284434d2e563ae48f592"
2611
+ },
2612
+ "requires": []
2613
+ },
2614
+ {
2615
+ "name": "string-change-case",
2616
+ "packageName": "@hermes/string-change-case",
2617
+ "version": "1.0.0",
2618
+ "scope": "core",
2619
+ "files": {
2620
+ "string/change-case/change-case.ts": "17226a9862e60a042053c95e95c4f7569b52dab204a202cc33e2873656fc612b",
2621
+ "string/change-case/index.ts": "38f2d282ebf908ff1bb47c4a05018fc4dc918364f4792c749aad43ddab2794ec"
2622
+ },
2623
+ "requires": [
2624
+ {
2625
+ "packageName": "@hermes/string-capitalize",
2626
+ "range": "^1.0.0",
2627
+ "kind": "dependency",
2628
+ "internal": true,
2629
+ "optional": false
2630
+ },
2631
+ {
2632
+ "packageName": "@hermes/string-char",
2633
+ "range": "^1.0.0",
2634
+ "kind": "dependency",
2635
+ "internal": true,
2636
+ "optional": false
2637
+ }
2638
+ ]
2639
+ },
2640
+ {
2641
+ "name": "string-char",
2642
+ "packageName": "@hermes/string-char",
2643
+ "version": "1.0.0",
2644
+ "scope": "core",
2645
+ "files": {
2646
+ "string/char/char.ts": "5df12fd4b8f6d39e2bcdee7f373775ee94a15bf8e49026d9354f59554267277b",
2647
+ "string/char/index.ts": "7c99a1bd333a3ca48e5f8fb6f1f631d5517d0cbc74cbafe249a7d46d4a396766"
2648
+ },
2649
+ "requires": []
2650
+ }
2651
+ ],
2652
+ "scope": "core",
2653
+ "category": "core/string",
2654
+ "description": "케이스 변환 유틸 모음. `splitWords`가 어떤 케이스든 소문자 단어 배열로 쪼개고, 각 `toXxxCase` 조립기가 타깃 케이스로 다시 합친다. 짝마다 함수를 두지 않아 모든 케이스 조합(kebab->Pascal, snake->camel, ...)이 자동으로 동작한다.",
836
2655
  "dependencies": [],
837
2656
  "files": [
838
2657
  "string/capitalize/capitalize.ts",
@@ -845,7 +2664,24 @@
845
2664
  },
846
2665
  {
847
2666
  "name": "string-char",
848
- "description": "ASCII 문자 분류 술어. 단일 문자를 받아 종류를 판별한다. 로캘/유니코드 영향",
2667
+ "packageName": "@hermes/string-char",
2668
+ "version": "1.0.0",
2669
+ "modules": [
2670
+ {
2671
+ "name": "string-char",
2672
+ "packageName": "@hermes/string-char",
2673
+ "version": "1.0.0",
2674
+ "scope": "core",
2675
+ "files": {
2676
+ "string/char/char.ts": "5df12fd4b8f6d39e2bcdee7f373775ee94a15bf8e49026d9354f59554267277b",
2677
+ "string/char/index.ts": "7c99a1bd333a3ca48e5f8fb6f1f631d5517d0cbc74cbafe249a7d46d4a396766"
2678
+ },
2679
+ "requires": []
2680
+ }
2681
+ ],
2682
+ "scope": "core",
2683
+ "category": "core/string",
2684
+ "description": "ASCII 문자 분류 술어. 단일 문자를 받아 종류를 판별한다. 로캘/유니코드 영향 없이 항상 같은 결과를 주는 결정론적 분류용이라, 파싱·토크나이즈 같은 곳에서 정규식보다 가볍게 재사용한다. 빈 자리나 범위 밖 문자에는 `false`를 돌려줘 경계에서 안전하다.",
849
2685
  "dependencies": [],
850
2686
  "files": [
851
2687
  "string/char/char.ts",
@@ -854,7 +2690,24 @@
854
2690
  },
855
2691
  {
856
2692
  "name": "string-count-occurrences",
857
- "description": "`str` 안에서 `search`가 **겹치지 않게** 등장하는 횟수를 센다. 매칭한 만큼",
2693
+ "packageName": "@hermes/string-count-occurrences",
2694
+ "version": "1.0.0",
2695
+ "modules": [
2696
+ {
2697
+ "name": "string-count-occurrences",
2698
+ "packageName": "@hermes/string-count-occurrences",
2699
+ "version": "1.0.0",
2700
+ "scope": "core",
2701
+ "files": {
2702
+ "string/count-occurrences/count-occurrences.ts": "42bbe6d6387e737f66c850426fcff5fa96c0d0b8ea03c80494f8f40a79034df6",
2703
+ "string/count-occurrences/index.ts": "1f180f215aa44599210ef13ef85f0424ae18cb295ccb201e4482bcf006782034"
2704
+ },
2705
+ "requires": []
2706
+ }
2707
+ ],
2708
+ "scope": "core",
2709
+ "category": "core/string",
2710
+ "description": "`str` 안에서 `search`가 **겹치지 않게** 등장하는 횟수를 센다. 매칭한 만큼 인덱스를 건너뛰므로 `\"aaaa\"`에서 `\"aa\"`는 2번이다. `search`가 `\"\"`이면 0.",
858
2711
  "dependencies": [],
859
2712
  "files": [
860
2713
  "string/count-occurrences/count-occurrences.ts",
@@ -863,7 +2716,24 @@
863
2716
  },
864
2717
  {
865
2718
  "name": "string-escape-html",
866
- "description": "HTML 특수문자를 엔티티로 치환한다. 사용자 입력 등 텍스트를 마크업에 안전하게",
2719
+ "packageName": "@hermes/string-escape-html",
2720
+ "version": "1.0.0",
2721
+ "modules": [
2722
+ {
2723
+ "name": "string-escape-html",
2724
+ "packageName": "@hermes/string-escape-html",
2725
+ "version": "1.0.0",
2726
+ "scope": "core",
2727
+ "files": {
2728
+ "string/escape-html/escape-html.ts": "06663d46950d408101e190344dede3eeb98808a96e0804dcfe2b73c5ae3f8f18",
2729
+ "string/escape-html/index.ts": "b3c2a104e2965c1d8a833c80346443ccb06e4d8edcb9bc48d61d1616fe2a0956"
2730
+ },
2731
+ "requires": []
2732
+ }
2733
+ ],
2734
+ "scope": "core",
2735
+ "category": "core/string",
2736
+ "description": "HTML 특수문자를 엔티티로 치환한다. 사용자 입력 등 텍스트를 마크업에 안전하게 끼워 넣을 때 사용한다.",
867
2737
  "dependencies": [],
868
2738
  "files": [
869
2739
  "string/escape-html/escape-html.ts",
@@ -872,7 +2742,24 @@
872
2742
  },
873
2743
  {
874
2744
  "name": "string-get-decorated-string",
875
- "description": "`___FORMAT___` 자리표시자를 `target` 값으로 치환한다. 포맷 문자열 안의 모든",
2745
+ "packageName": "@hermes/string-get-decorated-string",
2746
+ "version": "1.0.0",
2747
+ "modules": [
2748
+ {
2749
+ "name": "string-get-decorated-string",
2750
+ "packageName": "@hermes/string-get-decorated-string",
2751
+ "version": "1.0.0",
2752
+ "scope": "core",
2753
+ "files": {
2754
+ "string/get-decorated-string/get-decorated-string.ts": "c976bf8847bac53119f866519031e20b3e32b04a46f15d2b919877242a10cd1e",
2755
+ "string/get-decorated-string/index.ts": "58fe99926268097c5d719417482bf1cb80c807ffe9994c0e371c2f364299b456"
2756
+ },
2757
+ "requires": []
2758
+ }
2759
+ ],
2760
+ "scope": "core",
2761
+ "category": "core/string",
2762
+ "description": "`___FORMAT___` 자리표시자를 `target` 값으로 치환한다. 포맷 문자열 안의 모든 자리표시자가 한 번에 바뀐다. 자리표시자 토큰은 `getDecoratedString.selection` 으로 노출된다.",
876
2763
  "dependencies": [],
877
2764
  "files": [
878
2765
  "string/get-decorated-string/get-decorated-string.ts",
@@ -881,7 +2768,24 @@
881
2768
  },
882
2769
  {
883
2770
  "name": "string-is-blank",
884
- "description": "문자열이 비어 있거나 공백 문자만으로 이루어졌으면 `true`를 반환한다.",
2771
+ "packageName": "@hermes/string-is-blank",
2772
+ "version": "1.0.0",
2773
+ "modules": [
2774
+ {
2775
+ "name": "string-is-blank",
2776
+ "packageName": "@hermes/string-is-blank",
2777
+ "version": "1.0.0",
2778
+ "scope": "core",
2779
+ "files": {
2780
+ "string/is-blank/index.ts": "e719cb17185b5d628b6448761d943d749c91f39bb2a798f0b1cfd03aa7f1c901",
2781
+ "string/is-blank/is-blank.ts": "505db33613c3c26332fb7dacefd0b014b70150f16d96745a1ff9b741e6d6d866"
2782
+ },
2783
+ "requires": []
2784
+ }
2785
+ ],
2786
+ "scope": "core",
2787
+ "category": "core/string",
2788
+ "description": "문자열이 비어 있거나 공백 문자만으로 이루어졌으면 `true`를 반환한다. 보이는 글자가 하나라도 있으면 `false`.",
885
2789
  "dependencies": [],
886
2790
  "files": [
887
2791
  "string/is-blank/index.ts",
@@ -890,7 +2794,24 @@
890
2794
  },
891
2795
  {
892
2796
  "name": "string-mask",
893
- "description": "앞 `start`글자와 뒤 `end`글자만 남기고 가운데를 `char`로 가린다. 입력은",
2797
+ "packageName": "@hermes/string-mask",
2798
+ "version": "1.0.0",
2799
+ "modules": [
2800
+ {
2801
+ "name": "string-mask",
2802
+ "packageName": "@hermes/string-mask",
2803
+ "version": "1.0.0",
2804
+ "scope": "core",
2805
+ "files": {
2806
+ "string/mask/index.ts": "419092da22c4bf9bcf9df16ce918d9503b0eef97d1931ef7eecc187745b96d1f",
2807
+ "string/mask/mask.ts": "43edab9f34be4a5dd57bce2de88549f107b8b6b13c16955d44c56f5ad1c38846"
2808
+ },
2809
+ "requires": []
2810
+ }
2811
+ ],
2812
+ "scope": "core",
2813
+ "category": "core/string",
2814
+ "description": "앞 `start`글자와 뒤 `end`글자만 남기고 가운데를 `char`로 가린다. 입력은 변형하지 않는다. 비밀번호, 카드번호, 이메일 등 일부만 노출할 때 쓴다. `start + end`가 길이 이상이면 가릴 가운데가 없으므로 원문을 그대로 반환한다.",
894
2815
  "dependencies": [],
895
2816
  "files": [
896
2817
  "string/mask/index.ts",
@@ -899,7 +2820,24 @@
899
2820
  },
900
2821
  {
901
2822
  "name": "string-pad",
902
- "description": "문자열 양쪽을 `char`로 균등하게 채워 가운데 정렬한다. `length` 이하면 그대로",
2823
+ "packageName": "@hermes/string-pad",
2824
+ "version": "1.0.0",
2825
+ "modules": [
2826
+ {
2827
+ "name": "string-pad",
2828
+ "packageName": "@hermes/string-pad",
2829
+ "version": "1.0.0",
2830
+ "scope": "core",
2831
+ "files": {
2832
+ "string/pad/index.ts": "4400f7f65a5f3c3125174c2a9a28e7861c506e2c3cc45278fcca7010f806ebfc",
2833
+ "string/pad/pad.ts": "426118b827374f211a520646a400d2ca890fec2d844dad96e881132781813721"
2834
+ },
2835
+ "requires": []
2836
+ }
2837
+ ],
2838
+ "scope": "core",
2839
+ "category": "core/string",
2840
+ "description": "문자열 양쪽을 `char`로 균등하게 채워 가운데 정렬한다. `length` 이하면 그대로 둔다. 채울 총량을 좌우로 나누되 홀수 잔여는 오른쪽에 더한다.",
903
2841
  "dependencies": [],
904
2842
  "files": [
905
2843
  "string/pad/index.ts",
@@ -908,7 +2846,24 @@
908
2846
  },
909
2847
  {
910
2848
  "name": "string-random-string",
911
- "description": "`alphabet`에서 `length` 글자를 런타임 난수로 뽑아 무작위 문자열을 만든다.",
2849
+ "packageName": "@hermes/string-random-string",
2850
+ "version": "1.0.0",
2851
+ "modules": [
2852
+ {
2853
+ "name": "string-random-string",
2854
+ "packageName": "@hermes/string-random-string",
2855
+ "version": "1.0.0",
2856
+ "scope": "core",
2857
+ "files": {
2858
+ "string/random-string/index.ts": "dd9c104708b59d5a969688fa5b30b1b4f4fc0b47d5d79ad4938cbdad490b0a39",
2859
+ "string/random-string/random-string.ts": "d95810906421aca5454a2c33a367a4b0a3d09ef64b89285764e81d926c52e925"
2860
+ },
2861
+ "requires": []
2862
+ }
2863
+ ],
2864
+ "scope": "core",
2865
+ "category": "core/string",
2866
+ "description": "`alphabet`에서 `length` 글자를 런타임 난수로 뽑아 무작위 문자열을 만든다. `alphabet` 기본값은 영숫자(A-Z, a-z, 0-9). `length`가 0 이하면 빈 문자열을 반환한다. 호출마다 새 문자열을 반환한다.",
912
2867
  "dependencies": [],
913
2868
  "files": [
914
2869
  "string/random-string/index.ts",
@@ -917,7 +2872,24 @@
917
2872
  },
918
2873
  {
919
2874
  "name": "string-reverse",
920
- "description": "문자 순서를 뒤집어 새 문자열을 반환한다. 입력은 변형하지 않는다.",
2875
+ "packageName": "@hermes/string-reverse",
2876
+ "version": "1.0.0",
2877
+ "modules": [
2878
+ {
2879
+ "name": "string-reverse",
2880
+ "packageName": "@hermes/string-reverse",
2881
+ "version": "1.0.0",
2882
+ "scope": "core",
2883
+ "files": {
2884
+ "string/reverse/index.ts": "4c9e3729a9b99528e64fb565510bf9e70ba6ebc59ff20a726316fffd1a21a617",
2885
+ "string/reverse/reverse.ts": "eb05516d272bbf316b2d341a5b998440ca8fd2ed5dbc97c52f7146038c0dc56a"
2886
+ },
2887
+ "requires": []
2888
+ }
2889
+ ],
2890
+ "scope": "core",
2891
+ "category": "core/string",
2892
+ "description": "문자 순서를 뒤집어 새 문자열을 반환한다. 입력은 변형하지 않는다. 서로게이트 쌍(이모지 등)을 깨뜨리지 않도록 코드포인트 단위로 뒤집는다.",
921
2893
  "dependencies": [],
922
2894
  "files": [
923
2895
  "string/reverse/index.ts",
@@ -926,7 +2898,24 @@
926
2898
  },
927
2899
  {
928
2900
  "name": "string-slugify",
929
- "description": "문자열을 URL/식별자용 슬러그로 바꾼다. 소문자로 내린 뒤 ASCII 영숫자가 아닌",
2901
+ "packageName": "@hermes/string-slugify",
2902
+ "version": "1.0.0",
2903
+ "modules": [
2904
+ {
2905
+ "name": "string-slugify",
2906
+ "packageName": "@hermes/string-slugify",
2907
+ "version": "1.0.0",
2908
+ "scope": "core",
2909
+ "files": {
2910
+ "string/slugify/index.ts": "1eeede3438da1ea25bab282a82006ba183d9bb474bab7deae52cd838f3993075",
2911
+ "string/slugify/slugify.ts": "7a5e1a4a15fe890b243d9ba173b458c5827a0197f5186e1f4cc97b32c2ccb7cb"
2912
+ },
2913
+ "requires": []
2914
+ }
2915
+ ],
2916
+ "scope": "core",
2917
+ "category": "core/string",
2918
+ "description": "문자열을 URL/식별자용 슬러그로 바꾼다. 소문자로 내린 뒤 ASCII 영숫자가 아닌 연속 문자를 `-` 하나로 합치고 양끝의 `-`를 제거한다(ASCII 기준).",
930
2919
  "dependencies": [],
931
2920
  "files": [
932
2921
  "string/slugify/index.ts",
@@ -935,6 +2924,23 @@
935
2924
  },
936
2925
  {
937
2926
  "name": "string-strip-tags",
2927
+ "packageName": "@hermes/string-strip-tags",
2928
+ "version": "1.0.0",
2929
+ "modules": [
2930
+ {
2931
+ "name": "string-strip-tags",
2932
+ "packageName": "@hermes/string-strip-tags",
2933
+ "version": "1.0.0",
2934
+ "scope": "core",
2935
+ "files": {
2936
+ "string/strip-tags/index.ts": "d67517bc76e5372a67dd117b0e1506b0c5d4e5e8d4d4197f319137460054ad8e",
2937
+ "string/strip-tags/strip-tags.ts": "a6acd2474c1e31db5373b7f2aca9a5d67e3300b3caf0a27832171f5cef94d998"
2938
+ },
2939
+ "requires": []
2940
+ }
2941
+ ],
2942
+ "scope": "core",
2943
+ "category": "core/string",
938
2944
  "description": "`<...>` 형태의 HTML 태그를 제거하고 태그 사이의 텍스트만 남긴다.",
939
2945
  "dependencies": [],
940
2946
  "files": [
@@ -944,7 +2950,24 @@
944
2950
  },
945
2951
  {
946
2952
  "name": "string-template",
947
- "description": "문자열 안의 `{key}` 자리표시자를 `data[key]` 값으로 치환한다. `data`에 없는",
2953
+ "packageName": "@hermes/string-template",
2954
+ "version": "1.0.0",
2955
+ "modules": [
2956
+ {
2957
+ "name": "string-template",
2958
+ "packageName": "@hermes/string-template",
2959
+ "version": "1.0.0",
2960
+ "scope": "core",
2961
+ "files": {
2962
+ "string/template/index.ts": "9833d97b9d9b4011da60f02cd7ca29b102881a09f2d126852fa0cbe488391217",
2963
+ "string/template/template.ts": "8c90431f1f415f3119b70e0d3ee12cd971e91250664d0ee8fe7c0df2f03f9e37"
2964
+ },
2965
+ "requires": []
2966
+ }
2967
+ ],
2968
+ "scope": "core",
2969
+ "category": "core/string",
2970
+ "description": "문자열 안의 `{key}` 자리표시자를 `data[key]` 값으로 치환한다. `data`에 없는 `{key}`는 그대로 남긴다. 원본 문자열은 바꾸지 않고 새 문자열을 반환한다.",
948
2971
  "dependencies": [],
949
2972
  "files": [
950
2973
  "string/template/index.ts",
@@ -953,7 +2976,24 @@
953
2976
  },
954
2977
  {
955
2978
  "name": "string-truncate",
956
- "description": "문자열이 `length` 이하면 그대로 두고, 넘으면 뒤를 잘라 `suffix`를 붙인다.",
2979
+ "packageName": "@hermes/string-truncate",
2980
+ "version": "1.0.0",
2981
+ "modules": [
2982
+ {
2983
+ "name": "string-truncate",
2984
+ "packageName": "@hermes/string-truncate",
2985
+ "version": "1.0.0",
2986
+ "scope": "core",
2987
+ "files": {
2988
+ "string/truncate/index.ts": "e833d58d595a50861200693e0c89d150bd9581d1bedda19e9a51a651d0c1a603",
2989
+ "string/truncate/truncate.ts": "2d2612b386412f766a8dd4976bd288a93066412c156aa83e37c4d5682ce557bd"
2990
+ },
2991
+ "requires": []
2992
+ }
2993
+ ],
2994
+ "scope": "core",
2995
+ "category": "core/string",
2996
+ "description": "문자열이 `length` 이하면 그대로 두고, 넘으면 뒤를 잘라 `suffix`를 붙인다. 결과 전체 길이가 정확히 `length`가 되도록 본문에서 `suffix` 자리를 미리 비운다.",
957
2997
  "dependencies": [],
958
2998
  "files": [
959
2999
  "string/truncate/index.ts",
@@ -962,7 +3002,24 @@
962
3002
  },
963
3003
  {
964
3004
  "name": "string-truncate-middle",
965
- "description": "가운데를 잘라 양끝을 보존한다. 긴 파일명이나 경로를 `\"long….txt\"`처럼 줄일 때",
3005
+ "packageName": "@hermes/string-truncate-middle",
3006
+ "version": "1.0.0",
3007
+ "modules": [
3008
+ {
3009
+ "name": "string-truncate-middle",
3010
+ "packageName": "@hermes/string-truncate-middle",
3011
+ "version": "1.0.0",
3012
+ "scope": "core",
3013
+ "files": {
3014
+ "string/truncate-middle/index.ts": "005a3e1db5a9a1e7d85a5c507f902a8971a88d58f960e0ef5a9b72895369c8a5",
3015
+ "string/truncate-middle/truncate-middle.ts": "7303b2901c7c4175af83fc795b98453b99e014d520a232cf41784f490dc6ff9b"
3016
+ },
3017
+ "requires": []
3018
+ }
3019
+ ],
3020
+ "scope": "core",
3021
+ "category": "core/string",
3022
+ "description": "가운데를 잘라 양끝을 보존한다. 긴 파일명이나 경로를 `\"long….txt\"`처럼 줄일 때 쓴다. `length` 이하면 그대로 두고, 넘으면 결과 전체 길이가 `length`가 되도록 `suffix` 자리를 빼고 남은 길이를 앞뒤로 나눈다.",
966
3023
  "dependencies": [],
967
3024
  "files": [
968
3025
  "string/truncate-middle/index.ts",
@@ -971,7 +3028,24 @@
971
3028
  },
972
3029
  {
973
3030
  "name": "string-uuid",
974
- "description": "UUID 문자열을 생성한다. `globalThis.crypto.randomUUID`가 있으면 그것을 쓰고,",
3031
+ "packageName": "@hermes/string-uuid",
3032
+ "version": "1.0.0",
3033
+ "modules": [
3034
+ {
3035
+ "name": "string-uuid",
3036
+ "packageName": "@hermes/string-uuid",
3037
+ "version": "1.0.0",
3038
+ "scope": "core",
3039
+ "files": {
3040
+ "string/uuid/index.ts": "c763e01667ec6011d5dbec4544fc4e66cb5506497f4186a2b6d6c37bd306b5c3",
3041
+ "string/uuid/uuid.ts": "67760191f9abaf10c3128392ab62bc6528db9d79b3509de60d98b82b9baf2d20"
3042
+ },
3043
+ "requires": []
3044
+ }
3045
+ ],
3046
+ "scope": "core",
3047
+ "category": "core/string",
3048
+ "description": "UUID 문자열을 생성한다. `globalThis.crypto.randomUUID`가 있으면 그것을 쓰고, 없으면(Node 18 이하 등) `node:crypto`의 `randomUUID`로 폴백한다.",
975
3049
  "dependencies": [],
976
3050
  "runtime": "node",
977
3051
  "devDependencies": [
@@ -984,7 +3058,72 @@
984
3058
  },
985
3059
  {
986
3060
  "name": "tailwindcss-class-variant",
987
- "description": "`tailwind-variants`의 `tv`를 감싸 variant 기반 className 빌더를 만든다. `cn`과",
3061
+ "packageName": "@hermes/tailwindcss-class-variant",
3062
+ "version": "1.0.0",
3063
+ "modules": [
3064
+ {
3065
+ "name": "tailwindcss-class-variant",
3066
+ "packageName": "@hermes/tailwindcss-class-variant",
3067
+ "version": "1.0.0",
3068
+ "scope": "lib",
3069
+ "files": {
3070
+ "tailwindcss/class-variant/class-variant.ts": "81597cbd255de9e81ca2a7c9a9ce7bdb0784edc00e5d532f9365380f64167b3b",
3071
+ "tailwindcss/class-variant/index.ts": "d81d51825e3a1828a2eb035c601a0e086f75721cec25934f215a5bea24cf78b8"
3072
+ },
3073
+ "requires": [
3074
+ {
3075
+ "packageName": "@hermes/tailwindcss-tw-merge-config",
3076
+ "range": "^1.0.0",
3077
+ "kind": "dependency",
3078
+ "internal": true,
3079
+ "optional": false
3080
+ },
3081
+ {
3082
+ "packageName": "tailwind-variants",
3083
+ "range": "^3.2.2",
3084
+ "kind": "dependency",
3085
+ "internal": false,
3086
+ "optional": false
3087
+ },
3088
+ {
3089
+ "packageName": "tailwindcss",
3090
+ "range": "^4.0.0",
3091
+ "kind": "peer",
3092
+ "internal": false,
3093
+ "optional": true
3094
+ }
3095
+ ]
3096
+ },
3097
+ {
3098
+ "name": "tailwindcss-tw-merge-config",
3099
+ "packageName": "@hermes/tailwindcss-tw-merge-config",
3100
+ "version": "1.0.0",
3101
+ "scope": "lib",
3102
+ "files": {
3103
+ "tailwindcss/tw-merge-config/index.ts": "f46c44a9ae58123fb0f77ebba87264a958be681e5a6409c53553cf14bc541c8a",
3104
+ "tailwindcss/tw-merge-config/tw-merge-config.ts": "63f0b9488ee1ad67b0e18be74e3efd059e932b33be438c58149097566ea0c1bd"
3105
+ },
3106
+ "requires": [
3107
+ {
3108
+ "packageName": "tailwind-variants",
3109
+ "range": "^3.2.2",
3110
+ "kind": "dependency",
3111
+ "internal": false,
3112
+ "optional": false
3113
+ },
3114
+ {
3115
+ "packageName": "tailwindcss",
3116
+ "range": "^4.0.0",
3117
+ "kind": "peer",
3118
+ "internal": false,
3119
+ "optional": true
3120
+ }
3121
+ ]
3122
+ }
3123
+ ],
3124
+ "scope": "lib",
3125
+ "category": "lib/tailwindcss",
3126
+ "description": "`tailwind-variants`의 `tv`를 감싸 variant 기반 className 빌더를 만든다. `cn`과 같은 [`twMergeConfig`](../tw-merge-config/README.md)를 공유하므로 variant를 병합할 때도 동일한 Tailwind 충돌 규칙이 적용된다.",
988
3127
  "dependencies": [
989
3128
  "tailwind-variants@^3.2.2"
990
3129
  ],
@@ -997,7 +3136,79 @@
997
3136
  },
998
3137
  {
999
3138
  "name": "tailwindcss-cn",
1000
- "description": "`clsx`와 `tailwind-merge`를 합쳐 조건부 className을 만들고 충돌하는 Tailwind",
3139
+ "packageName": "@hermes/tailwindcss-cn",
3140
+ "version": "1.0.0",
3141
+ "modules": [
3142
+ {
3143
+ "name": "tailwindcss-cn",
3144
+ "packageName": "@hermes/tailwindcss-cn",
3145
+ "version": "1.0.0",
3146
+ "scope": "lib",
3147
+ "files": {
3148
+ "tailwindcss/cn/cn.ts": "9cadaedde5edafbc1a8614f22706a4935a7fd60a68511fefaa245b48fb736f6c",
3149
+ "tailwindcss/cn/index.ts": "5b26e10388463d639143e754687fe4faf2ffc7c61c9271d760eb22bcd8ddf26f"
3150
+ },
3151
+ "requires": [
3152
+ {
3153
+ "packageName": "@hermes/tailwindcss-tw-merge-config",
3154
+ "range": "^1.0.0",
3155
+ "kind": "dependency",
3156
+ "internal": true,
3157
+ "optional": false
3158
+ },
3159
+ {
3160
+ "packageName": "clsx",
3161
+ "range": "^2.1.1",
3162
+ "kind": "dependency",
3163
+ "internal": false,
3164
+ "optional": false
3165
+ },
3166
+ {
3167
+ "packageName": "tailwind-merge",
3168
+ "range": "^3.6.0",
3169
+ "kind": "dependency",
3170
+ "internal": false,
3171
+ "optional": false
3172
+ },
3173
+ {
3174
+ "packageName": "tailwindcss",
3175
+ "range": "^4.0.0",
3176
+ "kind": "peer",
3177
+ "internal": false,
3178
+ "optional": true
3179
+ }
3180
+ ]
3181
+ },
3182
+ {
3183
+ "name": "tailwindcss-tw-merge-config",
3184
+ "packageName": "@hermes/tailwindcss-tw-merge-config",
3185
+ "version": "1.0.0",
3186
+ "scope": "lib",
3187
+ "files": {
3188
+ "tailwindcss/tw-merge-config/index.ts": "f46c44a9ae58123fb0f77ebba87264a958be681e5a6409c53553cf14bc541c8a",
3189
+ "tailwindcss/tw-merge-config/tw-merge-config.ts": "63f0b9488ee1ad67b0e18be74e3efd059e932b33be438c58149097566ea0c1bd"
3190
+ },
3191
+ "requires": [
3192
+ {
3193
+ "packageName": "tailwind-variants",
3194
+ "range": "^3.2.2",
3195
+ "kind": "dependency",
3196
+ "internal": false,
3197
+ "optional": false
3198
+ },
3199
+ {
3200
+ "packageName": "tailwindcss",
3201
+ "range": "^4.0.0",
3202
+ "kind": "peer",
3203
+ "internal": false,
3204
+ "optional": true
3205
+ }
3206
+ ]
3207
+ }
3208
+ ],
3209
+ "scope": "lib",
3210
+ "category": "lib/tailwindcss",
3211
+ "description": "`clsx`와 `tailwind-merge`를 합쳐 조건부 className을 만들고 충돌하는 Tailwind 클래스를 자동으로 정리하는 함수를 제공한다. 병합 설정은 `classVariant`와 공유하는 [`twMergeConfig`](../tw-merge-config/README.md)를 따른다.",
1001
3212
  "dependencies": [
1002
3213
  "clsx@^2.1.1",
1003
3214
  "tailwind-merge@^3.6.0",
@@ -1012,7 +3223,152 @@
1012
3223
  },
1013
3224
  {
1014
3225
  "name": "tailwindcss-create-tailwind-css",
1015
- "description": "전달한 `twMergeConfig`를 공유하는 `cn`과 `classVariant` 세트를 만든다. 패키지의",
3226
+ "packageName": "@hermes/tailwindcss-create-tailwind-css",
3227
+ "version": "1.0.0",
3228
+ "modules": [
3229
+ {
3230
+ "name": "tailwindcss-class-variant",
3231
+ "packageName": "@hermes/tailwindcss-class-variant",
3232
+ "version": "1.0.0",
3233
+ "scope": "lib",
3234
+ "files": {
3235
+ "tailwindcss/class-variant/class-variant.ts": "81597cbd255de9e81ca2a7c9a9ce7bdb0784edc00e5d532f9365380f64167b3b",
3236
+ "tailwindcss/class-variant/index.ts": "d81d51825e3a1828a2eb035c601a0e086f75721cec25934f215a5bea24cf78b8"
3237
+ },
3238
+ "requires": [
3239
+ {
3240
+ "packageName": "@hermes/tailwindcss-tw-merge-config",
3241
+ "range": "^1.0.0",
3242
+ "kind": "dependency",
3243
+ "internal": true,
3244
+ "optional": false
3245
+ },
3246
+ {
3247
+ "packageName": "tailwind-variants",
3248
+ "range": "^3.2.2",
3249
+ "kind": "dependency",
3250
+ "internal": false,
3251
+ "optional": false
3252
+ },
3253
+ {
3254
+ "packageName": "tailwindcss",
3255
+ "range": "^4.0.0",
3256
+ "kind": "peer",
3257
+ "internal": false,
3258
+ "optional": true
3259
+ }
3260
+ ]
3261
+ },
3262
+ {
3263
+ "name": "tailwindcss-cn",
3264
+ "packageName": "@hermes/tailwindcss-cn",
3265
+ "version": "1.0.0",
3266
+ "scope": "lib",
3267
+ "files": {
3268
+ "tailwindcss/cn/cn.ts": "9cadaedde5edafbc1a8614f22706a4935a7fd60a68511fefaa245b48fb736f6c",
3269
+ "tailwindcss/cn/index.ts": "5b26e10388463d639143e754687fe4faf2ffc7c61c9271d760eb22bcd8ddf26f"
3270
+ },
3271
+ "requires": [
3272
+ {
3273
+ "packageName": "@hermes/tailwindcss-tw-merge-config",
3274
+ "range": "^1.0.0",
3275
+ "kind": "dependency",
3276
+ "internal": true,
3277
+ "optional": false
3278
+ },
3279
+ {
3280
+ "packageName": "clsx",
3281
+ "range": "^2.1.1",
3282
+ "kind": "dependency",
3283
+ "internal": false,
3284
+ "optional": false
3285
+ },
3286
+ {
3287
+ "packageName": "tailwind-merge",
3288
+ "range": "^3.6.0",
3289
+ "kind": "dependency",
3290
+ "internal": false,
3291
+ "optional": false
3292
+ },
3293
+ {
3294
+ "packageName": "tailwindcss",
3295
+ "range": "^4.0.0",
3296
+ "kind": "peer",
3297
+ "internal": false,
3298
+ "optional": true
3299
+ }
3300
+ ]
3301
+ },
3302
+ {
3303
+ "name": "tailwindcss-create-tailwind-css",
3304
+ "packageName": "@hermes/tailwindcss-create-tailwind-css",
3305
+ "version": "1.0.0",
3306
+ "scope": "lib",
3307
+ "files": {
3308
+ "tailwindcss/create-tailwind-css/create-tailwind-css.ts": "71bc860e4b2812016b460096b923d7898ba9d841e1f2c7a3f969b6dd6a875bd5",
3309
+ "tailwindcss/create-tailwind-css/index.ts": "26518a78f0665fe5f8dac13ff5b7467e1b4978d285141a5203ef63da2626a748"
3310
+ },
3311
+ "requires": [
3312
+ {
3313
+ "packageName": "@hermes/tailwindcss-class-variant",
3314
+ "range": "^1.0.0",
3315
+ "kind": "dependency",
3316
+ "internal": true,
3317
+ "optional": false
3318
+ },
3319
+ {
3320
+ "packageName": "@hermes/tailwindcss-cn",
3321
+ "range": "^1.0.0",
3322
+ "kind": "dependency",
3323
+ "internal": true,
3324
+ "optional": false
3325
+ },
3326
+ {
3327
+ "packageName": "@hermes/tailwindcss-tw-merge-config",
3328
+ "range": "^1.0.0",
3329
+ "kind": "dependency",
3330
+ "internal": true,
3331
+ "optional": false
3332
+ },
3333
+ {
3334
+ "packageName": "tailwindcss",
3335
+ "range": "^4.0.0",
3336
+ "kind": "peer",
3337
+ "internal": false,
3338
+ "optional": true
3339
+ }
3340
+ ]
3341
+ },
3342
+ {
3343
+ "name": "tailwindcss-tw-merge-config",
3344
+ "packageName": "@hermes/tailwindcss-tw-merge-config",
3345
+ "version": "1.0.0",
3346
+ "scope": "lib",
3347
+ "files": {
3348
+ "tailwindcss/tw-merge-config/index.ts": "f46c44a9ae58123fb0f77ebba87264a958be681e5a6409c53553cf14bc541c8a",
3349
+ "tailwindcss/tw-merge-config/tw-merge-config.ts": "63f0b9488ee1ad67b0e18be74e3efd059e932b33be438c58149097566ea0c1bd"
3350
+ },
3351
+ "requires": [
3352
+ {
3353
+ "packageName": "tailwind-variants",
3354
+ "range": "^3.2.2",
3355
+ "kind": "dependency",
3356
+ "internal": false,
3357
+ "optional": false
3358
+ },
3359
+ {
3360
+ "packageName": "tailwindcss",
3361
+ "range": "^4.0.0",
3362
+ "kind": "peer",
3363
+ "internal": false,
3364
+ "optional": true
3365
+ }
3366
+ ]
3367
+ }
3368
+ ],
3369
+ "scope": "lib",
3370
+ "category": "lib/tailwindcss",
3371
+ "description": "전달한 `twMergeConfig`를 공유하는 `cn`과 `classVariant` 세트를 만든다. 패키지의 기본 설정을 수정하지 않고 앱이나 제품별 Tailwind 충돌 규칙을 주입할 때 사용한다.",
1016
3372
  "dependencies": [
1017
3373
  "clsx@^2.1.1",
1018
3374
  "tailwind-merge@^3.6.0",
@@ -1031,7 +3387,39 @@
1031
3387
  },
1032
3388
  {
1033
3389
  "name": "tailwindcss-tw-merge-config",
1034
- "description": "`cn`과 `classVariant`가 공유하는 tailwind-merge 설정을 한곳에서 관리한다. 두 함수가",
3390
+ "packageName": "@hermes/tailwindcss-tw-merge-config",
3391
+ "version": "1.0.0",
3392
+ "modules": [
3393
+ {
3394
+ "name": "tailwindcss-tw-merge-config",
3395
+ "packageName": "@hermes/tailwindcss-tw-merge-config",
3396
+ "version": "1.0.0",
3397
+ "scope": "lib",
3398
+ "files": {
3399
+ "tailwindcss/tw-merge-config/index.ts": "f46c44a9ae58123fb0f77ebba87264a958be681e5a6409c53553cf14bc541c8a",
3400
+ "tailwindcss/tw-merge-config/tw-merge-config.ts": "63f0b9488ee1ad67b0e18be74e3efd059e932b33be438c58149097566ea0c1bd"
3401
+ },
3402
+ "requires": [
3403
+ {
3404
+ "packageName": "tailwind-variants",
3405
+ "range": "^3.2.2",
3406
+ "kind": "dependency",
3407
+ "internal": false,
3408
+ "optional": false
3409
+ },
3410
+ {
3411
+ "packageName": "tailwindcss",
3412
+ "range": "^4.0.0",
3413
+ "kind": "peer",
3414
+ "internal": false,
3415
+ "optional": true
3416
+ }
3417
+ ]
3418
+ }
3419
+ ],
3420
+ "scope": "lib",
3421
+ "category": "lib/tailwindcss",
3422
+ "description": "`cn`과 `classVariant`가 공유하는 tailwind-merge 설정을 한곳에서 관리한다. 두 함수가 같은 설정 객체를 참조하므로, 커스텀 Tailwind 토큰을 한 번만 정의하면 className 병합과 variant 병합이 일관되게 동작한다.",
1035
3423
  "dependencies": [
1036
3424
  "tailwind-variants@^3.2.2"
1037
3425
  ],
@@ -1042,6 +3430,23 @@
1042
3430
  },
1043
3431
  {
1044
3432
  "name": "type-get-type",
3433
+ "packageName": "@hermes/type-get-type",
3434
+ "version": "1.0.0",
3435
+ "modules": [
3436
+ {
3437
+ "name": "type-get-type",
3438
+ "packageName": "@hermes/type-get-type",
3439
+ "version": "1.0.0",
3440
+ "scope": "core",
3441
+ "files": {
3442
+ "type/get-type/get-type.ts": "a7b20a1fadb5d11a188075c1ce7b2cbb2f413a8e34c5a5d23f4de70d61d23067",
3443
+ "type/get-type/index.ts": "0fa1d66782d578c8395c77110000c62c1d14c156863eda96e3d8f5dd53bfa330"
3444
+ },
3445
+ "requires": []
3446
+ }
3447
+ ],
3448
+ "scope": "core",
3449
+ "category": "core/type",
1045
3450
  "description": "`typeof`가 못 가르는 `null`·`array`까지 구분해 정규화된 타입 문자열을 돌려준다.",
1046
3451
  "dependencies": [],
1047
3452
  "files": [
@@ -1051,7 +3456,43 @@
1051
3456
  },
1052
3457
  {
1053
3458
  "name": "type-is-type-of",
1054
- "description": "값이 기대한 타입과 일치하는지 판별한다. [get-type](../get-type)의 정규화된",
3459
+ "packageName": "@hermes/type-is-type-of",
3460
+ "version": "1.0.0",
3461
+ "modules": [
3462
+ {
3463
+ "name": "type-get-type",
3464
+ "packageName": "@hermes/type-get-type",
3465
+ "version": "1.0.0",
3466
+ "scope": "core",
3467
+ "files": {
3468
+ "type/get-type/get-type.ts": "a7b20a1fadb5d11a188075c1ce7b2cbb2f413a8e34c5a5d23f4de70d61d23067",
3469
+ "type/get-type/index.ts": "0fa1d66782d578c8395c77110000c62c1d14c156863eda96e3d8f5dd53bfa330"
3470
+ },
3471
+ "requires": []
3472
+ },
3473
+ {
3474
+ "name": "type-is-type-of",
3475
+ "packageName": "@hermes/type-is-type-of",
3476
+ "version": "1.0.0",
3477
+ "scope": "core",
3478
+ "files": {
3479
+ "type/is-type-of/index.ts": "7f61ae1bf13ca97d83b95f883028849196c1d6b51d4945adca9ecc48a5d24bc3",
3480
+ "type/is-type-of/is-type-of.ts": "7759f8033af3a4efe735cdab3a4396086df378117fe8f63ec3dafe66348ca59f"
3481
+ },
3482
+ "requires": [
3483
+ {
3484
+ "packageName": "@hermes/type-get-type",
3485
+ "range": "^1.0.0",
3486
+ "kind": "dependency",
3487
+ "internal": true,
3488
+ "optional": false
3489
+ }
3490
+ ]
3491
+ }
3492
+ ],
3493
+ "scope": "core",
3494
+ "category": "core/type",
3495
+ "description": "값이 기대한 타입과 일치하는지 판별한다. [get-type](../get-type)의 정규화된 타입 문자열을 기준으로 비교한다.",
1055
3496
  "dependencies": [],
1056
3497
  "files": [
1057
3498
  "type/get-type/get-type.ts",
@@ -1062,7 +3503,43 @@
1062
3503
  },
1063
3504
  {
1064
3505
  "name": "util-mutex",
1065
- "description": "비동기 상호 배제(mutual exclusion) 락. 임계 구역을 한 번에 하나의 작업만",
3506
+ "packageName": "@hermes/util-mutex",
3507
+ "version": "1.0.0",
3508
+ "modules": [
3509
+ {
3510
+ "name": "data-structure-queue",
3511
+ "packageName": "@hermes/data-structure-queue",
3512
+ "version": "1.0.0",
3513
+ "scope": "core",
3514
+ "files": {
3515
+ "data-structure/queue/index.ts": "5449262477397ff04d1248c5b2fd488b7f582aea4f75029544c99b3ff331796e",
3516
+ "data-structure/queue/queue.ts": "bdbe6a42bde34b0ddcd9a65c15fc562919eb0d68bff18e8c7162f76d3fcf9119"
3517
+ },
3518
+ "requires": []
3519
+ },
3520
+ {
3521
+ "name": "util-mutex",
3522
+ "packageName": "@hermes/util-mutex",
3523
+ "version": "1.0.0",
3524
+ "scope": "core",
3525
+ "files": {
3526
+ "util/mutex/index.ts": "feccec2ce1467fe3aff1351ac0fd353fcb3f7a3f429ee1d82957a4c4be5dad18",
3527
+ "util/mutex/mutex.ts": "939e603cfb3c5657f8f18b1c0e9d9d88d1cb25699d055e9b237a63945071133a"
3528
+ },
3529
+ "requires": [
3530
+ {
3531
+ "packageName": "@hermes/data-structure-queue",
3532
+ "range": "^1.0.0",
3533
+ "kind": "dependency",
3534
+ "internal": true,
3535
+ "optional": false
3536
+ }
3537
+ ]
3538
+ }
3539
+ ],
3540
+ "scope": "core",
3541
+ "category": "core/util",
3542
+ "description": "비동기 상호 배제(mutual exclusion) 락. 임계 구역을 한 번에 하나의 작업만 실행하도록 직렬화한다.",
1066
3543
  "dependencies": [],
1067
3544
  "files": [
1068
3545
  "data-structure/queue/index.ts",
@@ -1073,6 +3550,23 @@
1073
3550
  },
1074
3551
  {
1075
3552
  "name": "util-url-parser",
3553
+ "packageName": "@hermes/util-url-parser",
3554
+ "version": "1.0.0",
3555
+ "modules": [
3556
+ {
3557
+ "name": "util-url-parser",
3558
+ "packageName": "@hermes/util-url-parser",
3559
+ "version": "1.0.0",
3560
+ "scope": "core",
3561
+ "files": {
3562
+ "util/url-parser/index.ts": "212d7ca53bb77b78ba4e9999d7d667cfe6ff19f8d99ff5619bf409bf9799a111",
3563
+ "util/url-parser/url-parser.ts": "36920cad52f128516f07d4d2d6e504050e5faa315767d108e849363fdc97d6ed"
3564
+ },
3565
+ "requires": []
3566
+ }
3567
+ ],
3568
+ "scope": "core",
3569
+ "category": "core/util",
1076
3570
  "description": "표준 `URL` API 기반 URL 파서. 쿼리·프래그먼트·오리진을 안전하게 뽑는다.",
1077
3571
  "dependencies": [],
1078
3572
  "files": [