@gantryland/task-cache 0.2.3 → 0.3.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/README.md +76 -279
- package/dist/index.d.ts +161 -24
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +137 -19
- package/dist/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -12
package/README.md
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
# @gantryland/task-cache
|
|
2
2
|
|
|
3
|
-
Cache primitives and combinators for `@gantryland/task`.
|
|
3
|
+
Cache primitives and combinators for `@gantryland/task`.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
- Built-in in-memory store with tag invalidation and events.
|
|
7
|
-
- Stale-while-revalidate and dedupe support out of the box.
|
|
8
|
-
- Works in browser and Node.js with no dependencies.
|
|
5
|
+
Use this package when you want explicit caching at the `TaskFn` layer: predictable TTL behavior, optional stale-while-revalidate, and clear invalidation.
|
|
9
6
|
|
|
10
7
|
## Installation
|
|
11
8
|
|
|
@@ -13,20 +10,6 @@ Cache primitives and combinators for `@gantryland/task`. Compose caching into Ta
|
|
|
13
10
|
npm install @gantryland/task-cache
|
|
14
11
|
```
|
|
15
12
|
|
|
16
|
-
## Contents
|
|
17
|
-
|
|
18
|
-
- [Quick start](#quick-start)
|
|
19
|
-
- [Design goals](#design-goals)
|
|
20
|
-
- [When to use task-cache](#when-to-use-task-cache)
|
|
21
|
-
- [When not to use task-cache](#when-not-to-use-task-cache)
|
|
22
|
-
- [Core concepts](#core-concepts)
|
|
23
|
-
- [Flow](#flow)
|
|
24
|
-
- [API](#api)
|
|
25
|
-
- [Common patterns](#common-patterns)
|
|
26
|
-
- [Integrations](#integrations)
|
|
27
|
-
- [Related packages](#related-packages)
|
|
28
|
-
- [Tests](#tests)
|
|
29
|
-
|
|
30
13
|
## Quick start
|
|
31
14
|
|
|
32
15
|
```typescript
|
|
@@ -34,254 +17,97 @@ import { Task } from "@gantryland/task";
|
|
|
34
17
|
import { MemoryCacheStore, cache } from "@gantryland/task-cache";
|
|
35
18
|
import { pipe } from "@gantryland/task-combinators";
|
|
36
19
|
|
|
20
|
+
type User = { id: string; name: string };
|
|
21
|
+
|
|
37
22
|
const store = new MemoryCacheStore();
|
|
38
23
|
|
|
39
|
-
const usersTask = new Task(
|
|
24
|
+
const usersTask = new Task<User[]>(
|
|
40
25
|
pipe(
|
|
41
26
|
(signal) => fetch("/api/users", { signal }).then((r) => r.json()),
|
|
42
27
|
cache("users", store, { ttl: 60_000, tags: ["users"] })
|
|
43
28
|
)
|
|
44
29
|
);
|
|
45
30
|
|
|
46
|
-
await usersTask.run(); //
|
|
47
|
-
await usersTask.run(); //
|
|
31
|
+
await usersTask.run(); // miss -> fetch -> set
|
|
32
|
+
await usersTask.run(); // hit
|
|
48
33
|
```
|
|
49
34
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
## Design goals
|
|
53
|
-
|
|
54
|
-
- Make caching explicit and composable at the TaskFn level.
|
|
55
|
-
- Keep stores minimal so you can swap implementations.
|
|
56
|
-
- Provide deterministic cache semantics and clear invalidation paths.
|
|
57
|
-
|
|
58
|
-
## When to use task-cache
|
|
59
|
-
|
|
60
|
-
- You want reuse across TaskFn calls with TTLs.
|
|
61
|
-
- You need stale-while-revalidate behavior.
|
|
62
|
-
- You want tag-based invalidation or cache events.
|
|
63
|
-
|
|
64
|
-
## When not to use task-cache
|
|
35
|
+
## When to use
|
|
65
36
|
|
|
66
|
-
- You
|
|
67
|
-
- You
|
|
37
|
+
- You want cache behavior close to task execution, not hidden in global framework config.
|
|
38
|
+
- You need per-key TTL, dedupe, and tag/key invalidation.
|
|
39
|
+
- You want a simple in-memory default store that can be replaced.
|
|
68
40
|
|
|
69
|
-
##
|
|
41
|
+
## When not to use
|
|
70
42
|
|
|
71
|
-
|
|
43
|
+
- You need a full normalized client cache/data framework.
|
|
44
|
+
- You cannot tolerate stale reads at all.
|
|
72
45
|
|
|
73
|
-
|
|
46
|
+
## Core types
|
|
74
47
|
|
|
75
48
|
```typescript
|
|
76
|
-
type
|
|
77
|
-
get<T>(key: CacheKey): CacheEntry<T> | undefined
|
|
78
|
-
set<T>(key: CacheKey, entry: CacheEntry<T>): void
|
|
79
|
-
delete(key: CacheKey): void
|
|
80
|
-
clear(): void
|
|
81
|
-
has(key: CacheKey): boolean
|
|
82
|
-
keys?(): Iterable<CacheKey>
|
|
83
|
-
subscribe?(listener: (event: CacheEvent) => void): () => void
|
|
84
|
-
emit?(event: CacheEvent): void
|
|
85
|
-
invalidateTags?(tags: string[]): void
|
|
86
|
-
}
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
### CacheEntry
|
|
49
|
+
type CacheKey = string | number | symbol;
|
|
90
50
|
|
|
91
|
-
```typescript
|
|
92
51
|
type CacheEntry<T> = {
|
|
93
|
-
value: T
|
|
94
|
-
createdAt: number
|
|
95
|
-
updatedAt: number
|
|
96
|
-
tags?: string[]
|
|
97
|
-
}
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
### CacheEvent
|
|
101
|
-
|
|
102
|
-
Stores can emit events to power analytics, logging, or invalidation tracing.
|
|
103
|
-
|
|
104
|
-
Event types: `hit`, `miss`, `stale`, `set`, `invalidate`, `clear`, `revalidate`.
|
|
105
|
-
|
|
106
|
-
### CacheKey
|
|
52
|
+
value: T;
|
|
53
|
+
createdAt: number;
|
|
54
|
+
updatedAt: number;
|
|
55
|
+
tags?: string[];
|
|
56
|
+
};
|
|
107
57
|
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
58
|
+
type CacheOptions = {
|
|
59
|
+
ttl?: number;
|
|
60
|
+
staleTtl?: number;
|
|
61
|
+
tags?: string[];
|
|
62
|
+
dedupe?: boolean;
|
|
63
|
+
};
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
`createdAt` and `updatedAt` are epoch milliseconds.
|
|
67
|
+
|
|
68
|
+
## Semantics
|
|
69
|
+
|
|
70
|
+
- `cache(...)`
|
|
71
|
+
- Fresh entry returns immediately.
|
|
72
|
+
- Miss/stale executes source task and stores on success.
|
|
73
|
+
- Rejections (including `AbortError`) do not update cache.
|
|
74
|
+
- `staleWhileRevalidate(...)`
|
|
75
|
+
- Fresh entry returns immediately.
|
|
76
|
+
- Stale-within-window returns stale value and triggers background revalidation.
|
|
77
|
+
- Background revalidation errors are ignored and emitted as `revalidateError`.
|
|
78
|
+
- Dedupe is enabled by default (`dedupe !== false`).
|
|
79
|
+
- Concurrent calls for the same key share one in-flight promise.
|
|
80
|
+
- In deduped mode, only the first caller signal is used for that shared request.
|
|
81
|
+
- `invalidateOnResolve(...)`
|
|
82
|
+
- Invalidates keys/tags only after successful resolution.
|
|
83
|
+
- Failures do not invalidate.
|
|
120
84
|
|
|
121
85
|
## API
|
|
122
86
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
| Member | Purpose | Returns |
|
|
87
|
+
| Export | Purpose | Return |
|
|
126
88
|
| --- | --- | --- |
|
|
127
|
-
|
|
|
128
|
-
|
|
|
129
|
-
|
|
|
130
|
-
|
|
|
131
|
-
| [`staleWhileRevalidate`](#stalewhilerevalidate) | Serve stale and refresh in background | `(taskFn) => TaskFn` |
|
|
132
|
-
| [`invalidateOnResolve`](#invalidateonresolve) | Invalidate after TaskFn resolves | `(taskFn) => TaskFn` |
|
|
133
|
-
| **Helpers** | | |
|
|
134
|
-
| [`cacheKey`](#cachekey) | Build consistent cache keys | `string` |
|
|
135
|
-
|
|
136
|
-
### MemoryCacheStore
|
|
137
|
-
|
|
138
|
-
In-memory CacheStore with tag invalidation and event emission.
|
|
139
|
-
|
|
140
|
-
```typescript
|
|
141
|
-
const store = new MemoryCacheStore();
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
#### store.get
|
|
145
|
-
|
|
146
|
-
```typescript
|
|
147
|
-
store.get<T>(key: CacheKey): CacheEntry<T> | undefined
|
|
148
|
-
```
|
|
149
|
-
|
|
150
|
-
Read an entry by key.
|
|
151
|
-
|
|
152
|
-
#### store.set
|
|
153
|
-
|
|
154
|
-
```typescript
|
|
155
|
-
store.set<T>(key: CacheKey, entry: CacheEntry<T>): void
|
|
156
|
-
```
|
|
157
|
-
|
|
158
|
-
Write an entry by key and emit a `set` event.
|
|
159
|
-
|
|
160
|
-
#### store.delete
|
|
161
|
-
|
|
162
|
-
```typescript
|
|
163
|
-
store.delete(key: CacheKey): void
|
|
164
|
-
```
|
|
165
|
-
|
|
166
|
-
Delete an entry by key and emit an `invalidate` event.
|
|
167
|
-
|
|
168
|
-
#### store.clear
|
|
169
|
-
|
|
170
|
-
```typescript
|
|
171
|
-
store.clear(): void
|
|
172
|
-
```
|
|
173
|
-
|
|
174
|
-
Clear all entries and emit a `clear` event.
|
|
175
|
-
|
|
176
|
-
#### store.has
|
|
177
|
-
|
|
178
|
-
```typescript
|
|
179
|
-
store.has(key: CacheKey): boolean
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
Check whether a key exists.
|
|
183
|
-
|
|
184
|
-
#### store.keys
|
|
185
|
-
|
|
186
|
-
```typescript
|
|
187
|
-
store.keys(): Iterable<CacheKey>
|
|
188
|
-
```
|
|
189
|
-
|
|
190
|
-
Return all keys.
|
|
191
|
-
|
|
192
|
-
#### store.subscribe
|
|
193
|
-
|
|
194
|
-
```typescript
|
|
195
|
-
store.subscribe(listener: (event: CacheEvent) => void): () => void
|
|
196
|
-
```
|
|
197
|
-
|
|
198
|
-
Listen to cache events. Returns an unsubscribe function.
|
|
89
|
+
| `new MemoryCacheStore()` | In-memory cache store with tag invalidation and events | `MemoryCacheStore` |
|
|
90
|
+
| `cache(key, store, options?)` | TTL cache combinator | `(taskFn) => TaskFn` |
|
|
91
|
+
| `staleWhileRevalidate(key, store, options?)` | Serve stale, refresh in background | `(taskFn) => TaskFn` |
|
|
92
|
+
| `invalidateOnResolve(target, store)` | Invalidate keys/tags after success | `(taskFn) => TaskFn` |
|
|
199
93
|
|
|
200
|
-
|
|
94
|
+
### MemoryCacheStore methods
|
|
201
95
|
|
|
202
96
|
```typescript
|
|
203
|
-
store.
|
|
97
|
+
store.get(key)
|
|
98
|
+
store.set(key, entry)
|
|
99
|
+
store.delete(key)
|
|
100
|
+
store.clear()
|
|
101
|
+
store.has(key)
|
|
102
|
+
store.keys()
|
|
103
|
+
store.subscribe((event) => {})
|
|
104
|
+
store.emit(event)
|
|
105
|
+
store.invalidateTags(tags)
|
|
204
106
|
```
|
|
205
107
|
|
|
206
|
-
|
|
108
|
+
## Patterns
|
|
207
109
|
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
```typescript
|
|
211
|
-
store.invalidateTags(tags: string[]): void
|
|
212
|
-
```
|
|
213
|
-
|
|
214
|
-
Invalidate all entries matching any tag.
|
|
215
|
-
|
|
216
|
-
### cache
|
|
217
|
-
|
|
218
|
-
Return cached data if fresh; otherwise fetch and cache. Dedupe is enabled by default.
|
|
219
|
-
|
|
220
|
-
```typescript
|
|
221
|
-
cache("users", store, { ttl: 60_000, tags: ["users"], dedupe: true })
|
|
222
|
-
```
|
|
223
|
-
|
|
224
|
-
#### CacheOptions
|
|
225
|
-
|
|
226
|
-
```typescript
|
|
227
|
-
type CacheOptions = {
|
|
228
|
-
ttl?: number
|
|
229
|
-
staleTtl?: number
|
|
230
|
-
tags?: string[]
|
|
231
|
-
dedupe?: boolean
|
|
232
|
-
}
|
|
233
|
-
```
|
|
234
|
-
|
|
235
|
-
### staleWhileRevalidate
|
|
236
|
-
|
|
237
|
-
Return stale data (if within the stale window) and refresh in the background.
|
|
238
|
-
|
|
239
|
-
```typescript
|
|
240
|
-
staleWhileRevalidate("users", store, { ttl: 30_000, staleTtl: 60_000 })
|
|
241
|
-
```
|
|
242
|
-
|
|
243
|
-
### invalidateOnResolve
|
|
244
|
-
|
|
245
|
-
Invalidate keys or tags after a TaskFn resolves.
|
|
246
|
-
|
|
247
|
-
```typescript
|
|
248
|
-
invalidateOnResolve("users", store)
|
|
249
|
-
invalidateOnResolve({ tags: ["users"] }, store)
|
|
250
|
-
invalidateOnResolve((result) => ["users", `user:${result.id}`], store)
|
|
251
|
-
```
|
|
252
|
-
|
|
253
|
-
### cacheKey
|
|
254
|
-
|
|
255
|
-
Helper for consistent cache keys.
|
|
256
|
-
|
|
257
|
-
```typescript
|
|
258
|
-
cacheKey("user", userId)
|
|
259
|
-
```
|
|
260
|
-
|
|
261
|
-
## Common patterns
|
|
262
|
-
|
|
263
|
-
Use these patterns for most usage.
|
|
264
|
-
|
|
265
|
-
### Cache with Task and pipe
|
|
266
|
-
|
|
267
|
-
```typescript
|
|
268
|
-
import { Task } from "@gantryland/task";
|
|
269
|
-
import { MemoryCacheStore, cache } from "@gantryland/task-cache";
|
|
270
|
-
import { pipe } from "@gantryland/task-combinators";
|
|
271
|
-
|
|
272
|
-
const store = new MemoryCacheStore();
|
|
273
|
-
|
|
274
|
-
const task = new Task(
|
|
275
|
-
pipe(
|
|
276
|
-
(signal) => fetch("/api/projects", { signal }).then((r) => r.json()),
|
|
277
|
-
cache("projects", store, { ttl: 15_000 })
|
|
278
|
-
)
|
|
279
|
-
);
|
|
280
|
-
|
|
281
|
-
await task.run();
|
|
282
|
-
```
|
|
283
|
-
|
|
284
|
-
### Stale-while-revalidate for fast UI
|
|
110
|
+
### 1) Stale-while-revalidate for fast UI
|
|
285
111
|
|
|
286
112
|
```typescript
|
|
287
113
|
import { Task } from "@gantryland/task";
|
|
@@ -300,7 +126,7 @@ const feedTask = new Task(
|
|
|
300
126
|
await feedTask.run();
|
|
301
127
|
```
|
|
302
128
|
|
|
303
|
-
###
|
|
129
|
+
### 2) Invalidate tagged entries after write
|
|
304
130
|
|
|
305
131
|
```typescript
|
|
306
132
|
import { Task } from "@gantryland/task";
|
|
@@ -322,61 +148,32 @@ const createTask = new Task(
|
|
|
322
148
|
invalidateOnResolve({ tags: ["posts"] }, store)
|
|
323
149
|
)
|
|
324
150
|
);
|
|
325
|
-
```
|
|
326
|
-
|
|
327
|
-
### In-flight dedupe
|
|
328
151
|
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
cache("users", store, { ttl: 10_000, dedupe: false });
|
|
152
|
+
await listTask.run();
|
|
153
|
+
await createTask.run();
|
|
332
154
|
```
|
|
333
155
|
|
|
334
|
-
### Observe cache events
|
|
156
|
+
### 3) Observe cache events
|
|
335
157
|
|
|
336
158
|
```typescript
|
|
159
|
+
import { MemoryCacheStore } from "@gantryland/task-cache";
|
|
160
|
+
|
|
337
161
|
const store = new MemoryCacheStore();
|
|
338
162
|
|
|
339
|
-
const
|
|
340
|
-
console.log(event.type, event.key
|
|
163
|
+
const unsubscribe = store.subscribe((event) => {
|
|
164
|
+
console.log(event.type, event.key);
|
|
341
165
|
});
|
|
342
166
|
|
|
343
|
-
|
|
344
|
-
unsub();
|
|
345
|
-
```
|
|
346
|
-
|
|
347
|
-
## Integrations
|
|
348
|
-
|
|
349
|
-
Compose with other Gantryland utilities. This section shows common pairings.
|
|
350
|
-
|
|
351
|
-
### Persist cache with task-storage
|
|
352
|
-
|
|
353
|
-
```typescript
|
|
354
|
-
import { Task } from "@gantryland/task";
|
|
355
|
-
import { cache } from "@gantryland/task-cache";
|
|
356
|
-
import { StorageCacheStore } from "@gantryland/task-storage";
|
|
357
|
-
import { pipe } from "@gantryland/task-combinators";
|
|
358
|
-
|
|
359
|
-
const store = new StorageCacheStore(localStorage, { prefix: "gantry:" });
|
|
360
|
-
|
|
361
|
-
const task = new Task(
|
|
362
|
-
pipe(
|
|
363
|
-
(signal) => fetch("/api/settings", { signal }).then((r) => r.json()),
|
|
364
|
-
cache("settings", store, { ttl: 60_000 })
|
|
365
|
-
)
|
|
366
|
-
);
|
|
167
|
+
unsubscribe();
|
|
367
168
|
```
|
|
368
169
|
|
|
369
170
|
## Related packages
|
|
370
171
|
|
|
371
|
-
- [@gantryland/task](../task/) -
|
|
372
|
-
- [@gantryland/task-combinators](../task-combinators/) -
|
|
373
|
-
- [@gantryland/task-storage](../task-storage/) - Persistent CacheStore implementations
|
|
374
|
-
- [@gantryland/task-hooks](../task-hooks/) - React bindings
|
|
375
|
-
- [@gantryland/task-logger](../task-logger/) - Logging utilities
|
|
172
|
+
- [@gantryland/task](../task/) - Task execution and state primitive
|
|
173
|
+
- [@gantryland/task-combinators](../task-combinators/) - TaskFn composition and control-flow operators
|
|
376
174
|
|
|
377
|
-
##
|
|
175
|
+
## Test this package
|
|
378
176
|
|
|
379
177
|
```bash
|
|
380
|
-
npm test
|
|
381
178
|
npx vitest packages/task-cache/test
|
|
382
179
|
```
|
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
import type { TaskFn } from "@gantryland/task";
|
|
2
|
-
/**
|
|
3
|
-
* Supported cache key types.
|
|
4
|
-
*/
|
|
2
|
+
/** Supported cache key types. */
|
|
5
3
|
export type CacheKey = string | number | symbol;
|
|
6
4
|
/**
|
|
7
5
|
* Cache entry payload with metadata.
|
|
6
|
+
*
|
|
7
|
+
* Timestamps use epoch milliseconds.
|
|
8
|
+
*
|
|
9
|
+
* @template T - Cached value type
|
|
10
|
+
*
|
|
11
|
+
* @property value - Cached value
|
|
12
|
+
* @property createdAt - Epoch timestamp of initial write
|
|
13
|
+
* @property updatedAt - Epoch timestamp of last update
|
|
14
|
+
* @property tags - Optional tags for invalidation
|
|
8
15
|
*/
|
|
9
16
|
export type CacheEntry<T> = {
|
|
10
17
|
value: T;
|
|
@@ -12,20 +19,36 @@ export type CacheEntry<T> = {
|
|
|
12
19
|
updatedAt: number;
|
|
13
20
|
tags?: string[];
|
|
14
21
|
};
|
|
15
|
-
/**
|
|
16
|
-
* Cache event names emitted by stores.
|
|
17
|
-
*/
|
|
18
|
-
export type CacheEventType = "hit" | "miss" | "stale" | "set" | "invalidate" | "clear" | "revalidate";
|
|
19
22
|
/**
|
|
20
23
|
* Cache event payload.
|
|
24
|
+
*
|
|
25
|
+
* `error` is set for `revalidateError` events.
|
|
26
|
+
*
|
|
27
|
+
* @property type - Event type
|
|
28
|
+
* @property key - Cache key involved in the event
|
|
29
|
+
* @property entry - Cache entry involved in the event
|
|
30
|
+
* @property error - Error for `revalidateError` events
|
|
21
31
|
*/
|
|
22
32
|
export type CacheEvent = {
|
|
23
|
-
type:
|
|
33
|
+
type: "hit" | "miss" | "stale" | "set" | "invalidate" | "clear" | "revalidate" | "revalidateError";
|
|
24
34
|
key?: CacheKey;
|
|
25
35
|
entry?: CacheEntry<unknown>;
|
|
36
|
+
error?: unknown;
|
|
26
37
|
};
|
|
27
38
|
/**
|
|
28
39
|
* Minimal cache store interface.
|
|
40
|
+
*
|
|
41
|
+
* Optional methods enable eventing and tag invalidation.
|
|
42
|
+
*
|
|
43
|
+
* @property get - Return a cache entry by key
|
|
44
|
+
* @property set - Store a cache entry by key
|
|
45
|
+
* @property delete - Remove a cache entry by key
|
|
46
|
+
* @property clear - Remove all cache entries
|
|
47
|
+
* @property has - Check whether a key exists
|
|
48
|
+
* @property keys - Return all cache keys
|
|
49
|
+
* @property subscribe - Subscribe to cache events
|
|
50
|
+
* @property emit - Emit a cache event to subscribers
|
|
51
|
+
* @property invalidateTags - Remove entries matching tags
|
|
29
52
|
*/
|
|
30
53
|
export type CacheStore = {
|
|
31
54
|
get<T>(key: CacheKey): CacheEntry<T> | undefined;
|
|
@@ -40,6 +63,16 @@ export type CacheStore = {
|
|
|
40
63
|
};
|
|
41
64
|
/**
|
|
42
65
|
* In-memory CacheStore with tag support.
|
|
66
|
+
*
|
|
67
|
+
* Emits cache events on set, delete, clear, and tag invalidation.
|
|
68
|
+
* Listener errors are caught and logged.
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* ```typescript
|
|
72
|
+
* const store = new MemoryCacheStore();
|
|
73
|
+
* store.set("user:1", { value: { id: 1 }, createdAt: Date.now(), updatedAt: Date.now() });
|
|
74
|
+
* const entry = store.get<{ id: number }>("user:1");
|
|
75
|
+
* ```
|
|
43
76
|
*/
|
|
44
77
|
export declare class MemoryCacheStore implements CacheStore {
|
|
45
78
|
private store;
|
|
@@ -47,38 +80,68 @@ export declare class MemoryCacheStore implements CacheStore {
|
|
|
47
80
|
private listeners;
|
|
48
81
|
/**
|
|
49
82
|
* Get a cache entry by key.
|
|
83
|
+
*
|
|
84
|
+
* @template T - Cached value type
|
|
85
|
+
* @param key - Cache key
|
|
86
|
+
* @returns The cache entry, or undefined when missing
|
|
50
87
|
*/
|
|
51
88
|
get<T>(key: CacheKey): CacheEntry<T> | undefined;
|
|
52
89
|
/**
|
|
53
90
|
* Set a cache entry by key.
|
|
91
|
+
*
|
|
92
|
+
* Replaces any existing entry and updates tag indices.
|
|
93
|
+
*
|
|
94
|
+
* @template T - Cached value type
|
|
95
|
+
* @param key - Cache key
|
|
96
|
+
* @param entry - Entry to store
|
|
54
97
|
*/
|
|
55
98
|
set<T>(key: CacheKey, entry: CacheEntry<T>): void;
|
|
56
99
|
/**
|
|
57
100
|
* Delete a cache entry by key.
|
|
101
|
+
*
|
|
102
|
+
* Emits an `invalidate` event with the previous entry when present.
|
|
103
|
+
*
|
|
104
|
+
* @param key - Cache key
|
|
58
105
|
*/
|
|
59
106
|
delete(key: CacheKey): void;
|
|
60
107
|
/**
|
|
61
108
|
* Clear all entries.
|
|
109
|
+
*
|
|
110
|
+
* @returns Returns nothing.
|
|
62
111
|
*/
|
|
63
112
|
clear(): void;
|
|
64
113
|
/**
|
|
65
114
|
* Check whether a key exists.
|
|
115
|
+
*
|
|
116
|
+
* @param key - Cache key
|
|
117
|
+
* @returns True when the key exists
|
|
66
118
|
*/
|
|
67
119
|
has(key: CacheKey): boolean;
|
|
68
120
|
/**
|
|
69
121
|
* List all keys.
|
|
122
|
+
*
|
|
123
|
+
* @returns Iterable of cache keys
|
|
70
124
|
*/
|
|
71
125
|
keys(): Iterable<CacheKey>;
|
|
72
126
|
/**
|
|
73
127
|
* Subscribe to cache events.
|
|
128
|
+
*
|
|
129
|
+
* @param listener - Event listener
|
|
130
|
+
* @returns Unsubscribe function
|
|
74
131
|
*/
|
|
75
132
|
subscribe(listener: (event: CacheEvent) => void): () => void;
|
|
76
133
|
/**
|
|
77
134
|
* Emit a cache event to listeners.
|
|
135
|
+
*
|
|
136
|
+
* Listener errors are caught and logged to `console.error`.
|
|
137
|
+
*
|
|
138
|
+
* @param event - Cache event payload
|
|
78
139
|
*/
|
|
79
140
|
emit(event: CacheEvent): void;
|
|
80
141
|
/**
|
|
81
142
|
* Invalidate entries matching any tag.
|
|
143
|
+
*
|
|
144
|
+
* @param tags - Tags to invalidate
|
|
82
145
|
*/
|
|
83
146
|
invalidateTags(tags: string[]): void;
|
|
84
147
|
private addTags;
|
|
@@ -86,36 +149,110 @@ export declare class MemoryCacheStore implements CacheStore {
|
|
|
86
149
|
}
|
|
87
150
|
/**
|
|
88
151
|
* Options for cache and stale-while-revalidate.
|
|
152
|
+
*
|
|
153
|
+
* @property ttl - Time-to-live in milliseconds (fresh window)
|
|
154
|
+
* @property staleTtl - Additional stale window after ttl expires
|
|
155
|
+
* @property tags - Tags to associate with stored entries
|
|
156
|
+
* @property dedupe - Share in-flight requests for the same key
|
|
89
157
|
*/
|
|
90
158
|
export type CacheOptions = {
|
|
159
|
+
/**
|
|
160
|
+
* Time-to-live in milliseconds. When undefined, entries are always fresh.
|
|
161
|
+
*/
|
|
91
162
|
ttl?: number;
|
|
163
|
+
/**
|
|
164
|
+
* Additional stale window after ttl expires.
|
|
165
|
+
*/
|
|
92
166
|
staleTtl?: number;
|
|
167
|
+
/**
|
|
168
|
+
* Tags to associate with stored entries.
|
|
169
|
+
*/
|
|
93
170
|
tags?: string[];
|
|
171
|
+
/**
|
|
172
|
+
* Dedupe in-flight requests for the same key. Defaults to true.
|
|
173
|
+
*/
|
|
94
174
|
dedupe?: boolean;
|
|
95
175
|
};
|
|
96
176
|
/**
|
|
97
|
-
* Cache
|
|
177
|
+
* Cache TaskFn results by key and store.
|
|
178
|
+
*
|
|
179
|
+
* Returns cached data when fresh; otherwise runs the TaskFn and stores the result.
|
|
180
|
+
* If the TaskFn rejects (including AbortError), the cache is not updated.
|
|
181
|
+
* Dedupe is enabled by default; when deduped, only the first caller's AbortSignal is used.
|
|
182
|
+
* The returned TaskFn rejects when the underlying TaskFn rejects.
|
|
183
|
+
*
|
|
184
|
+
* @template T - Resolved data type
|
|
185
|
+
* @template Args - TaskFn argument tuple
|
|
186
|
+
* @param key - Cache key for the entry
|
|
187
|
+
* @param store - CacheStore implementation
|
|
188
|
+
* @param options - Cache behavior options
|
|
189
|
+
* @returns A combinator that returns a TaskFn resolving to cached or fresh data
|
|
190
|
+
*
|
|
191
|
+
* @example
|
|
192
|
+
* ```typescript
|
|
193
|
+
* const store = new MemoryCacheStore();
|
|
194
|
+
* const taskFn = pipe(
|
|
195
|
+
* (signal) => fetch("/api/users", { signal }).then((r) => r.json()),
|
|
196
|
+
* cache("users", store, { ttl: 10_000 })
|
|
197
|
+
* );
|
|
198
|
+
* const users = await taskFn();
|
|
199
|
+
* ```
|
|
98
200
|
*/
|
|
99
|
-
export declare const cache: <T>(key: CacheKey, store: CacheStore, options?: CacheOptions) => (taskFn: TaskFn<T>) => TaskFn<T>;
|
|
201
|
+
export declare const cache: <T, Args extends unknown[] = []>(key: CacheKey, store: CacheStore, options?: CacheOptions) => (taskFn: TaskFn<T, Args>) => TaskFn<T, Args>;
|
|
100
202
|
/**
|
|
101
|
-
*
|
|
102
|
-
*
|
|
203
|
+
* Return cached data and refresh in the background when stale.
|
|
204
|
+
*
|
|
205
|
+
* Returns cached data when fresh, or when within the stale window.
|
|
206
|
+
* If the TaskFn rejects (including AbortError), the cache is not updated.
|
|
207
|
+
* Dedupe is enabled by default; when deduped, only the first caller's AbortSignal is used.
|
|
208
|
+
* Background revalidation does not use the caller's AbortSignal.
|
|
209
|
+
* Background errors emit `revalidateError`, are ignored, and do not update the cache.
|
|
210
|
+
* The returned TaskFn rejects when the underlying TaskFn rejects.
|
|
211
|
+
*
|
|
212
|
+
* @template T - Resolved data type
|
|
213
|
+
* @template Args - TaskFn argument tuple
|
|
214
|
+
* @param key - Cache key for the entry
|
|
215
|
+
* @param store - CacheStore implementation
|
|
216
|
+
* @param options - Cache behavior options
|
|
217
|
+
* @returns A combinator that returns a TaskFn resolving to cached or fresh data
|
|
218
|
+
*
|
|
219
|
+
* @example
|
|
220
|
+
* ```typescript
|
|
221
|
+
* const store = new MemoryCacheStore();
|
|
222
|
+
* const taskFn = pipe(
|
|
223
|
+
* (signal) => fetch("/api/feed", { signal }).then((r) => r.json()),
|
|
224
|
+
* staleWhileRevalidate("feed", store, { ttl: 5_000, staleTtl: 30_000 })
|
|
225
|
+
* );
|
|
226
|
+
* const feed = await taskFn();
|
|
227
|
+
* ```
|
|
103
228
|
*/
|
|
104
|
-
export declare const staleWhileRevalidate: <T>(key: CacheKey, store: CacheStore, options?: CacheOptions) => (taskFn: TaskFn<T>) => TaskFn<T>;
|
|
229
|
+
export declare const staleWhileRevalidate: <T, Args extends unknown[] = []>(key: CacheKey, store: CacheStore, options?: CacheOptions) => (taskFn: TaskFn<T, Args>) => TaskFn<T, Args>;
|
|
105
230
|
/**
|
|
106
|
-
*
|
|
231
|
+
* Invalidate cache entries after a TaskFn resolves.
|
|
232
|
+
*
|
|
233
|
+
* Supports keys, key arrays, tags, or a resolver function.
|
|
234
|
+
* If the TaskFn rejects (including AbortError), no invalidation happens.
|
|
235
|
+
* The returned TaskFn rejects when the underlying TaskFn rejects.
|
|
236
|
+
*
|
|
237
|
+
* @template T - Resolved data type
|
|
238
|
+
* @template Args - TaskFn argument tuple
|
|
239
|
+
* @param target - Keys, tags, or resolver for invalidation
|
|
240
|
+
* @param store - CacheStore implementation
|
|
241
|
+
* @returns A combinator that returns a TaskFn resolving to the original result
|
|
242
|
+
*
|
|
243
|
+
* @example
|
|
244
|
+
* ```typescript
|
|
245
|
+
* const store = new MemoryCacheStore();
|
|
246
|
+
* const taskFn = pipe(
|
|
247
|
+
* (signal) => fetch("/api/posts", { method: "POST", signal }).then((r) => r.json()),
|
|
248
|
+
* invalidateOnResolve({ tags: ["posts"] }, store)
|
|
249
|
+
* );
|
|
250
|
+
* await taskFn();
|
|
251
|
+
* ```
|
|
107
252
|
*/
|
|
108
|
-
export
|
|
253
|
+
export declare const invalidateOnResolve: <T, Args extends unknown[] = []>(target: CacheKey | CacheKey[] | {
|
|
109
254
|
tags: string[];
|
|
110
255
|
} | ((result: T) => CacheKey | CacheKey[] | {
|
|
111
256
|
tags: string[];
|
|
112
|
-
})
|
|
113
|
-
/**
|
|
114
|
-
* Invalidates cache entries after a TaskFn resolves.
|
|
115
|
-
*/
|
|
116
|
-
export declare const invalidateOnResolve: <T>(target: InvalidateTarget<T>, store: CacheStore) => (taskFn: TaskFn<T>) => TaskFn<T>;
|
|
117
|
-
/**
|
|
118
|
-
* Helper for consistent cache keys.
|
|
119
|
-
*/
|
|
120
|
-
export declare const cacheKey: (...parts: Array<string | number | boolean | null | undefined>) => string;
|
|
257
|
+
}), store: CacheStore) => (taskFn: TaskFn<T, Args>) => TaskFn<T, Args>;
|
|
121
258
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* In-memory CacheStore with tag support.
|
|
3
|
+
*
|
|
4
|
+
* Emits cache events on set, delete, clear, and tag invalidation.
|
|
5
|
+
* Listener errors are caught and logged.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* const store = new MemoryCacheStore();
|
|
10
|
+
* store.set("user:1", { value: { id: 1 }, createdAt: Date.now(), updatedAt: Date.now() });
|
|
11
|
+
* const entry = store.get<{ id: number }>("user:1");
|
|
12
|
+
* ```
|
|
3
13
|
*/
|
|
4
14
|
export class MemoryCacheStore {
|
|
5
15
|
constructor() {
|
|
@@ -9,12 +19,22 @@ export class MemoryCacheStore {
|
|
|
9
19
|
}
|
|
10
20
|
/**
|
|
11
21
|
* Get a cache entry by key.
|
|
22
|
+
*
|
|
23
|
+
* @template T - Cached value type
|
|
24
|
+
* @param key - Cache key
|
|
25
|
+
* @returns The cache entry, or undefined when missing
|
|
12
26
|
*/
|
|
13
27
|
get(key) {
|
|
14
28
|
return this.store.get(key);
|
|
15
29
|
}
|
|
16
30
|
/**
|
|
17
31
|
* Set a cache entry by key.
|
|
32
|
+
*
|
|
33
|
+
* Replaces any existing entry and updates tag indices.
|
|
34
|
+
*
|
|
35
|
+
* @template T - Cached value type
|
|
36
|
+
* @param key - Cache key
|
|
37
|
+
* @param entry - Entry to store
|
|
18
38
|
*/
|
|
19
39
|
set(key, entry) {
|
|
20
40
|
const existing = this.store.get(key);
|
|
@@ -27,6 +47,10 @@ export class MemoryCacheStore {
|
|
|
27
47
|
}
|
|
28
48
|
/**
|
|
29
49
|
* Delete a cache entry by key.
|
|
50
|
+
*
|
|
51
|
+
* Emits an `invalidate` event with the previous entry when present.
|
|
52
|
+
*
|
|
53
|
+
* @param key - Cache key
|
|
30
54
|
*/
|
|
31
55
|
delete(key) {
|
|
32
56
|
const existing = this.store.get(key);
|
|
@@ -37,6 +61,8 @@ export class MemoryCacheStore {
|
|
|
37
61
|
}
|
|
38
62
|
/**
|
|
39
63
|
* Clear all entries.
|
|
64
|
+
*
|
|
65
|
+
* @returns Returns nothing.
|
|
40
66
|
*/
|
|
41
67
|
clear() {
|
|
42
68
|
this.store.clear();
|
|
@@ -45,18 +71,26 @@ export class MemoryCacheStore {
|
|
|
45
71
|
}
|
|
46
72
|
/**
|
|
47
73
|
* Check whether a key exists.
|
|
74
|
+
*
|
|
75
|
+
* @param key - Cache key
|
|
76
|
+
* @returns True when the key exists
|
|
48
77
|
*/
|
|
49
78
|
has(key) {
|
|
50
79
|
return this.store.has(key);
|
|
51
80
|
}
|
|
52
81
|
/**
|
|
53
82
|
* List all keys.
|
|
83
|
+
*
|
|
84
|
+
* @returns Iterable of cache keys
|
|
54
85
|
*/
|
|
55
86
|
keys() {
|
|
56
87
|
return this.store.keys();
|
|
57
88
|
}
|
|
58
89
|
/**
|
|
59
90
|
* Subscribe to cache events.
|
|
91
|
+
*
|
|
92
|
+
* @param listener - Event listener
|
|
93
|
+
* @returns Unsubscribe function
|
|
60
94
|
*/
|
|
61
95
|
subscribe(listener) {
|
|
62
96
|
this.listeners.add(listener);
|
|
@@ -64,6 +98,10 @@ export class MemoryCacheStore {
|
|
|
64
98
|
}
|
|
65
99
|
/**
|
|
66
100
|
* Emit a cache event to listeners.
|
|
101
|
+
*
|
|
102
|
+
* Listener errors are caught and logged to `console.error`.
|
|
103
|
+
*
|
|
104
|
+
* @param event - Cache event payload
|
|
67
105
|
*/
|
|
68
106
|
emit(event) {
|
|
69
107
|
for (const listener of this.listeners) {
|
|
@@ -77,6 +115,8 @@ export class MemoryCacheStore {
|
|
|
77
115
|
}
|
|
78
116
|
/**
|
|
79
117
|
* Invalidate entries matching any tag.
|
|
118
|
+
*
|
|
119
|
+
* @param tags - Tags to invalidate
|
|
80
120
|
*/
|
|
81
121
|
invalidateTags(tags) {
|
|
82
122
|
for (const tag of tags) {
|
|
@@ -137,18 +177,29 @@ const setEntry = (store, key, value, tags, previous) => {
|
|
|
137
177
|
store.set(key, entry);
|
|
138
178
|
return entry;
|
|
139
179
|
};
|
|
140
|
-
const resolveWithDedupe = async (key, store, taskFn, signal, options = {}, previous) => {
|
|
180
|
+
const resolveWithDedupe = async (key, store, taskFn, signal, args, options = {}, previous, onError) => {
|
|
141
181
|
const dedupe = options.dedupe !== false;
|
|
142
182
|
const pending = dedupe ? getPendingMap(store) : undefined;
|
|
143
183
|
if (pending) {
|
|
144
184
|
const inFlight = pending.get(key);
|
|
145
|
-
if (inFlight)
|
|
185
|
+
if (inFlight) {
|
|
186
|
+
if (onError) {
|
|
187
|
+
inFlight.catch((error) => {
|
|
188
|
+
onError(error);
|
|
189
|
+
});
|
|
190
|
+
}
|
|
146
191
|
return inFlight;
|
|
192
|
+
}
|
|
147
193
|
}
|
|
148
|
-
const promise =
|
|
194
|
+
const promise = Promise.resolve()
|
|
195
|
+
.then(() => taskFn(signal, ...args))
|
|
149
196
|
.then((value) => {
|
|
150
197
|
setEntry(store, key, value, options.tags, previous);
|
|
151
198
|
return value;
|
|
199
|
+
})
|
|
200
|
+
.catch((error) => {
|
|
201
|
+
onError?.(error);
|
|
202
|
+
throw error;
|
|
152
203
|
})
|
|
153
204
|
.finally(() => {
|
|
154
205
|
pending?.delete(key);
|
|
@@ -157,22 +208,67 @@ const resolveWithDedupe = async (key, store, taskFn, signal, options = {}, previ
|
|
|
157
208
|
return promise;
|
|
158
209
|
};
|
|
159
210
|
/**
|
|
160
|
-
* Cache
|
|
211
|
+
* Cache TaskFn results by key and store.
|
|
212
|
+
*
|
|
213
|
+
* Returns cached data when fresh; otherwise runs the TaskFn and stores the result.
|
|
214
|
+
* If the TaskFn rejects (including AbortError), the cache is not updated.
|
|
215
|
+
* Dedupe is enabled by default; when deduped, only the first caller's AbortSignal is used.
|
|
216
|
+
* The returned TaskFn rejects when the underlying TaskFn rejects.
|
|
217
|
+
*
|
|
218
|
+
* @template T - Resolved data type
|
|
219
|
+
* @template Args - TaskFn argument tuple
|
|
220
|
+
* @param key - Cache key for the entry
|
|
221
|
+
* @param store - CacheStore implementation
|
|
222
|
+
* @param options - Cache behavior options
|
|
223
|
+
* @returns A combinator that returns a TaskFn resolving to cached or fresh data
|
|
224
|
+
*
|
|
225
|
+
* @example
|
|
226
|
+
* ```typescript
|
|
227
|
+
* const store = new MemoryCacheStore();
|
|
228
|
+
* const taskFn = pipe(
|
|
229
|
+
* (signal) => fetch("/api/users", { signal }).then((r) => r.json()),
|
|
230
|
+
* cache("users", store, { ttl: 10_000 })
|
|
231
|
+
* );
|
|
232
|
+
* const users = await taskFn();
|
|
233
|
+
* ```
|
|
161
234
|
*/
|
|
162
|
-
export const cache = (key, store, options = {}) => (taskFn) => async (signal) => {
|
|
235
|
+
export const cache = (key, store, options = {}) => (taskFn) => async (signal, ...args) => {
|
|
163
236
|
const entry = store.get(key);
|
|
164
237
|
if (entry && isFresh(entry, options.ttl)) {
|
|
165
238
|
store.emit?.({ type: "hit", key, entry });
|
|
166
239
|
return entry.value;
|
|
167
240
|
}
|
|
168
241
|
store.emit?.({ type: entry ? "stale" : "miss", key, entry });
|
|
169
|
-
return resolveWithDedupe(key, store, taskFn, signal, options, entry);
|
|
242
|
+
return resolveWithDedupe(key, store, taskFn, signal, args, options, entry);
|
|
170
243
|
};
|
|
171
244
|
/**
|
|
172
|
-
*
|
|
173
|
-
*
|
|
245
|
+
* Return cached data and refresh in the background when stale.
|
|
246
|
+
*
|
|
247
|
+
* Returns cached data when fresh, or when within the stale window.
|
|
248
|
+
* If the TaskFn rejects (including AbortError), the cache is not updated.
|
|
249
|
+
* Dedupe is enabled by default; when deduped, only the first caller's AbortSignal is used.
|
|
250
|
+
* Background revalidation does not use the caller's AbortSignal.
|
|
251
|
+
* Background errors emit `revalidateError`, are ignored, and do not update the cache.
|
|
252
|
+
* The returned TaskFn rejects when the underlying TaskFn rejects.
|
|
253
|
+
*
|
|
254
|
+
* @template T - Resolved data type
|
|
255
|
+
* @template Args - TaskFn argument tuple
|
|
256
|
+
* @param key - Cache key for the entry
|
|
257
|
+
* @param store - CacheStore implementation
|
|
258
|
+
* @param options - Cache behavior options
|
|
259
|
+
* @returns A combinator that returns a TaskFn resolving to cached or fresh data
|
|
260
|
+
*
|
|
261
|
+
* @example
|
|
262
|
+
* ```typescript
|
|
263
|
+
* const store = new MemoryCacheStore();
|
|
264
|
+
* const taskFn = pipe(
|
|
265
|
+
* (signal) => fetch("/api/feed", { signal }).then((r) => r.json()),
|
|
266
|
+
* staleWhileRevalidate("feed", store, { ttl: 5_000, staleTtl: 30_000 })
|
|
267
|
+
* );
|
|
268
|
+
* const feed = await taskFn();
|
|
269
|
+
* ```
|
|
174
270
|
*/
|
|
175
|
-
export const staleWhileRevalidate = (key, store, options = {}) => (taskFn) => async (signal) => {
|
|
271
|
+
export const staleWhileRevalidate = (key, store, options = {}) => (taskFn) => async (signal, ...args) => {
|
|
176
272
|
const entry = store.get(key);
|
|
177
273
|
if (entry && isFresh(entry, options.ttl)) {
|
|
178
274
|
store.emit?.({ type: "hit", key, entry });
|
|
@@ -181,19 +277,45 @@ export const staleWhileRevalidate = (key, store, options = {}) => (taskFn) => as
|
|
|
181
277
|
if (entry && isWithinStale(entry, options.ttl, options.staleTtl)) {
|
|
182
278
|
store.emit?.({ type: "stale", key, entry });
|
|
183
279
|
store.emit?.({ type: "revalidate", key, entry });
|
|
184
|
-
void resolveWithDedupe(key, store, taskFn, undefined, options, entry)
|
|
280
|
+
void resolveWithDedupe(key, store, taskFn, undefined, args, options, entry, (error) => {
|
|
281
|
+
store.emit?.({ type: "revalidateError", key, entry, error });
|
|
282
|
+
}).catch(() => {
|
|
283
|
+
// Background revalidation errors are ignored.
|
|
284
|
+
});
|
|
185
285
|
return entry.value;
|
|
186
286
|
}
|
|
187
287
|
store.emit?.({ type: "miss", key, entry });
|
|
188
|
-
return resolveWithDedupe(key, store, taskFn, signal, options, entry);
|
|
288
|
+
return resolveWithDedupe(key, store, taskFn, signal, args, options, entry);
|
|
189
289
|
};
|
|
190
290
|
/**
|
|
191
|
-
*
|
|
291
|
+
* Invalidate cache entries after a TaskFn resolves.
|
|
292
|
+
*
|
|
293
|
+
* Supports keys, key arrays, tags, or a resolver function.
|
|
294
|
+
* If the TaskFn rejects (including AbortError), no invalidation happens.
|
|
295
|
+
* The returned TaskFn rejects when the underlying TaskFn rejects.
|
|
296
|
+
*
|
|
297
|
+
* @template T - Resolved data type
|
|
298
|
+
* @template Args - TaskFn argument tuple
|
|
299
|
+
* @param target - Keys, tags, or resolver for invalidation
|
|
300
|
+
* @param store - CacheStore implementation
|
|
301
|
+
* @returns A combinator that returns a TaskFn resolving to the original result
|
|
302
|
+
*
|
|
303
|
+
* @example
|
|
304
|
+
* ```typescript
|
|
305
|
+
* const store = new MemoryCacheStore();
|
|
306
|
+
* const taskFn = pipe(
|
|
307
|
+
* (signal) => fetch("/api/posts", { method: "POST", signal }).then((r) => r.json()),
|
|
308
|
+
* invalidateOnResolve({ tags: ["posts"] }, store)
|
|
309
|
+
* );
|
|
310
|
+
* await taskFn();
|
|
311
|
+
* ```
|
|
192
312
|
*/
|
|
193
|
-
export const invalidateOnResolve = (target, store) => (taskFn) => async (signal) => {
|
|
194
|
-
const result = await taskFn(signal);
|
|
313
|
+
export const invalidateOnResolve = (target, store) => (taskFn) => async (signal, ...args) => {
|
|
314
|
+
const result = await taskFn(signal, ...args);
|
|
195
315
|
const resolved = typeof target === "function" ? target(result) : target;
|
|
196
|
-
if (typeof resolved === "object" &&
|
|
316
|
+
if (typeof resolved === "object" &&
|
|
317
|
+
!Array.isArray(resolved) &&
|
|
318
|
+
"tags" in resolved) {
|
|
197
319
|
store.invalidateTags?.(resolved.tags);
|
|
198
320
|
return result;
|
|
199
321
|
}
|
|
@@ -202,8 +324,4 @@ export const invalidateOnResolve = (target, store) => (taskFn) => async (signal)
|
|
|
202
324
|
store.delete(key);
|
|
203
325
|
return result;
|
|
204
326
|
};
|
|
205
|
-
/**
|
|
206
|
-
* Helper for consistent cache keys.
|
|
207
|
-
*/
|
|
208
|
-
export const cacheKey = (...parts) => parts.map((part) => String(part)).join(":");
|
|
209
327
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../node_modules/typescript/lib/lib.scripthost.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/typescript/lib/lib.es2020.full.d.ts","../../task/dist/index.d.ts","../index.ts","../../../node_modules/@types/aria-query/index.d.ts","../../../node_modules/@types/estree/index.d.ts","../../../node_modules/@types/node/compatibility/disposable.d.ts","../../../node_modules/@types/node/compatibility/indexable.d.ts","../../../node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/@types/node/compatibility/index.d.ts","../../../node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../node_modules/@types/node/web-globals/domexception.d.ts","../../../node_modules/@types/node/web-globals/events.d.ts","../../../node_modules/undici-types/header.d.ts","../../../node_modules/undici-types/readable.d.ts","../../../node_modules/undici-types/file.d.ts","../../../node_modules/undici-types/fetch.d.ts","../../../node_modules/undici-types/formdata.d.ts","../../../node_modules/undici-types/connector.d.ts","../../../node_modules/undici-types/client.d.ts","../../../node_modules/undici-types/errors.d.ts","../../../node_modules/undici-types/dispatcher.d.ts","../../../node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/undici-types/global-origin.d.ts","../../../node_modules/undici-types/pool-stats.d.ts","../../../node_modules/undici-types/pool.d.ts","../../../node_modules/undici-types/handlers.d.ts","../../../node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/undici-types/agent.d.ts","../../../node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/undici-types/mock-agent.d.ts","../../../node_modules/undici-types/mock-client.d.ts","../../../node_modules/undici-types/mock-pool.d.ts","../../../node_modules/undici-types/mock-errors.d.ts","../../../node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/undici-types/retry-handler.d.ts","../../../node_modules/undici-types/retry-agent.d.ts","../../../node_modules/undici-types/api.d.ts","../../../node_modules/undici-types/interceptors.d.ts","../../../node_modules/undici-types/util.d.ts","../../../node_modules/undici-types/cookies.d.ts","../../../node_modules/undici-types/patch.d.ts","../../../node_modules/undici-types/websocket.d.ts","../../../node_modules/undici-types/eventsource.d.ts","../../../node_modules/undici-types/filereader.d.ts","../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/undici-types/content-type.d.ts","../../../node_modules/undici-types/cache.d.ts","../../../node_modules/undici-types/index.d.ts","../../../node_modules/@types/node/web-globals/fetch.d.ts","../../../node_modules/@types/node/web-globals/navigator.d.ts","../../../node_modules/@types/node/web-globals/storage.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/inspector.generated.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/readline/promises.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/sea.d.ts","../../../node_modules/@types/node/sqlite.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/@types/node/stream/web.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/test.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/index.d.ts","../../../node_modules/@types/prop-types/index.d.ts","../../../node_modules/@types/react/global.d.ts","../../../node_modules/csstype/index.d.ts","../../../node_modules/@types/react/index.d.ts"],"fileIdsList":[[61,109,126,127],[61,106,107,109,126,127],[61,108,109,126,127],[109,126,127],[61,109,114,126,127,144],[61,109,110,115,120,126,127,129,141,152],[61,109,110,111,120,126,127,129],[56,57,58,61,109,126,127],[61,109,112,126,127,153],[61,109,113,114,121,126,127,130],[61,109,114,126,127,141,149],[61,109,115,117,120,126,127,129],[61,108,109,116,126,127],[61,109,117,118,126,127],[61,109,119,120,126,127],[61,108,109,120,126,127],[61,109,120,121,122,126,127,141,152],[61,109,120,121,122,126,127,136,141,144],[61,102,109,117,120,123,126,127,129,141,152],[61,109,120,121,123,124,126,127,129,141,149,152],[61,109,123,125,126,127,141,149,152],[59,60,61,62,63,64,65,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158],[61,109,120,126,127],[61,109,126,127,128,152],[61,109,117,120,126,127,129,141],[61,109,126,127,130],[61,109,126,127,131],[61,108,109,126,127,132],[61,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158],[61,109,126,127,134],[61,109,126,127,135],[61,109,120,126,127,136,137],[61,109,126,127,136,138,153,155],[61,109,121,126,127],[61,109,120,126,127,141,142,144],[61,109,126,127,143,144],[61,109,126,127,141,142],[61,109,126,127,144],[61,109,126,127,145],[61,106,109,126,127,141,146],[61,109,120,126,127,147,148],[61,109,126,127,147,148],[61,109,114,126,127,129,141,149],[61,109,126,127,150],[61,109,126,127,129,151],[61,109,123,126,127,135,152],[61,109,114,126,127,153],[61,109,126,127,141,154],[61,109,126,127,128,155],[61,109,126,127,156],[61,102,109,126,127],[61,102,109,120,122,126,127,132,141,144,152,154,155,157],[61,109,126,127,141,158],[61,109,126,127,160,161,162],[61,74,78,109,126,127,152],[61,74,109,126,127,141,152],[61,69,109,126,127],[61,71,74,109,126,127,149,152],[61,109,126,127,129,149],[61,109,126,127,159],[61,69,109,126,127,159],[61,71,74,109,126,127,129,152],[61,66,67,70,73,109,120,126,127,141,152],[61,74,81,109,126,127],[61,66,72,109,126,127],[61,74,95,96,109,126,127],[61,70,74,109,126,127,144,152,159],[61,95,109,126,127,159],[61,68,69,109,126,127,159],[61,74,109,126,127],[61,68,69,70,71,72,73,74,75,76,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,96,97,98,99,100,101,109,126,127],[61,74,89,109,126,127],[61,74,81,82,109,126,127],[61,72,74,82,83,109,126,127],[61,73,109,126,127],[61,66,69,74,109,126,127],[61,74,78,82,83,109,126,127],[61,78,109,126,127],[61,72,74,77,109,126,127,152],[61,66,71,74,81,109,126,127],[61,109,126,127,141],[61,69,74,95,109,126,127,157,159],[52,61,109,126,127]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7a3c8b952931daebdfc7a2897c53c0a1c73624593fa070e46bd537e64dcd20a","affectsGlobalScope":true,"impliedFormat":1},{"version":"80e18897e5884b6723488d4f5652167e7bb5024f946743134ecc4aa4ee731f89","affectsGlobalScope":true,"impliedFormat":1},{"version":"cd034f499c6cdca722b60c04b5b1b78e058487a7085a8e0d6fb50809947ee573","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"1305d1e76ca44e30fb8b2b8075fa522b83f60c0bcf5d4326a9d2cf79b53724f8","impliedFormat":1},{"version":"8aa45bb914d435792b66feeda81b8aac9fd988d1972873073247aff26c0baf6e","impliedFormat":99},{"version":"e32ee05b55e05bf7ac299287adb2c79a0d6fac8a3b4fac16c0aafb4f5cd392f2","signature":"6fc95e9a3d190c86735a0c2d5c806004e04f5893ee1d60877a733976418dded4","impliedFormat":99},{"version":"ae77d81a5541a8abb938a0efedf9ac4bea36fb3a24cc28cfa11c598863aba571","impliedFormat":1},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1},{"version":"6c7176368037af28cb72f2392010fa1cef295d6d6744bca8cfb54985f3a18c3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"437e20f2ba32abaeb7985e0afe0002de1917bc74e949ba585e49feba65da6ca1","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"808069bba06b6768b62fd22429b53362e7af342da4a236ed2d2e1c89fcca3b4a","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"2cbe0621042e2a68c7cbce5dfed3906a1862a16a7d496010636cdbdb91341c0f","affectsGlobalScope":true,"impliedFormat":1},{"version":"f9501cc13ce624c72b61f12b3963e84fad210fbdf0ffbc4590e08460a3f04eba","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0fa06ada475b910e2106c98c68b10483dc8811d0c14a8a8dd36efb2672485b29","impliedFormat":1},{"version":"33e5e9aba62c3193d10d1d33ae1fa75c46a1171cf76fef750777377d53b0303f","impliedFormat":1},{"version":"2b06b93fd01bcd49d1a6bd1f9b65ddcae6480b9a86e9061634d6f8e354c1468f","impliedFormat":1},{"version":"6a0cd27e5dc2cfbe039e731cf879d12b0e2dded06d1b1dedad07f7712de0d7f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"13f5c844119c43e51ce777c509267f14d6aaf31eafb2c2b002ca35584cd13b29","impliedFormat":1},{"version":"e60477649d6ad21542bd2dc7e3d9ff6853d0797ba9f689ba2f6653818999c264","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"4c829ab315f57c5442c6667b53769975acbf92003a66aef19bce151987675bd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"b2ade7657e2db96d18315694789eff2ddd3d8aea7215b181f8a0b303277cc579","impliedFormat":1},{"version":"9855e02d837744303391e5623a531734443a5f8e6e8755e018c41d63ad797db2","impliedFormat":1},{"version":"4d631b81fa2f07a0e63a9a143d6a82c25c5f051298651a9b69176ba28930756d","impliedFormat":1},{"version":"836a356aae992ff3c28a0212e3eabcb76dd4b0cc06bcb9607aeef560661b860d","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"41670ee38943d9cbb4924e436f56fc19ee94232bc96108562de1a734af20dc2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c906fb15bd2aabc9ed1e3f44eb6a8661199d6c320b3aa196b826121552cb3695","impliedFormat":1},{"version":"22295e8103f1d6d8ea4b5d6211e43421fe4564e34d0dd8e09e520e452d89e659","impliedFormat":1},{"version":"bb45cd435da536500f1d9692a9b49d0c570b763ccbf00473248b777f5c1f353b","impliedFormat":1},{"version":"6b4e081d55ac24fc8a4631d5dd77fe249fa25900abd7d046abb87d90e3b45645","impliedFormat":1},{"version":"a10f0e1854f3316d7ee437b79649e5a6ae3ae14ffe6322b02d4987071a95362e","impliedFormat":1},{"version":"e208f73ef6a980104304b0d2ca5f6bf1b85de6009d2c7e404028b875020fa8f2","impliedFormat":1},{"version":"d163b6bc2372b4f07260747cbc6c0a6405ab3fbcea3852305e98ac43ca59f5bc","impliedFormat":1},{"version":"e6fa9ad47c5f71ff733744a029d1dc472c618de53804eae08ffc243b936f87ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"83e63d6ccf8ec004a3bb6d58b9bb0104f60e002754b1e968024b320730cc5311","impliedFormat":1},{"version":"24826ed94a78d5c64bd857570fdbd96229ad41b5cb654c08d75a9845e3ab7dde","impliedFormat":1},{"version":"8b479a130ccb62e98f11f136d3ac80f2984fdc07616516d29881f3061f2dd472","impliedFormat":1},{"version":"928af3d90454bf656a52a48679f199f64c1435247d6189d1caf4c68f2eaf921f","affectsGlobalScope":true,"impliedFormat":1},{"version":"d2bc7425ef40526650d6db7e072c1ff4a51101c3ac2cc4b666623b19496a6e27","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"933921f0bb0ec12ef45d1062a1fc0f27635318f4d294e4d99de9a5493e618ca2","impliedFormat":1},{"version":"71a0f3ad612c123b57239a7749770017ecfe6b66411488000aba83e4546fde25","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"4f9d8ca0c417b67b69eeb54c7ca1bedd7b56034bb9bfd27c5d4f3bc4692daca7","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"a3fc63c0d7b031693f665f5494412ba4b551fe644ededccc0ab5922401079c95","impliedFormat":1},{"version":"f27524f4bef4b6519c604bdb23bf4465bddcccbf3f003abb901acbd0d7404d99","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"6b039f55681caaf111d5eb84d292b9bee9e0131d0db1ad0871eef0964f533c73","affectsGlobalScope":true,"impliedFormat":1},{"version":"18fd40412d102c5564136f29735e5d1c3b455b8a37f920da79561f1fde068208","impliedFormat":1},{"version":"c959a391a75be9789b43c8468f71e3fa06488b4d691d5729dde1416dcd38225b","impliedFormat":1},{"version":"f0be1b8078cd549d91f37c30c222c2a187ac1cf981d994fb476a1adc61387b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"0aaed1d72199b01234152f7a60046bc947f1f37d78d182e9ae09c4289e06a592","impliedFormat":1},{"version":"0dba70b3fb0dcd713fda33c2df64fa6751fff6460e536971cee917260fb17882","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"5b7aa3c4c1a5d81b411e8cb302b45507fea9358d3569196b27eb1a27ae3a90ef","affectsGlobalScope":true,"impliedFormat":1},{"version":"5987a903da92c7462e0b35704ce7da94d7fdc4b89a984871c0e2b87a8aae9e69","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea08a0345023ade2b47fbff5a76d0d0ed8bff10bc9d22b83f40858a8e941501c","impliedFormat":1},{"version":"47613031a5a31510831304405af561b0ffaedb734437c595256bb61a90f9311b","impliedFormat":1},{"version":"ae062ce7d9510060c5d7e7952ae379224fb3f8f2dd74e88959878af2057c143b","impliedFormat":1},{"version":"8a1a0d0a4a06a8d278947fcb66bf684f117bf147f89b06e50662d79a53be3e9f","affectsGlobalScope":true,"impliedFormat":1},{"version":"9f663c2f91127ef7024e8ca4b3b4383ff2770e5f826696005de382282794b127","impliedFormat":1},{"version":"9f55299850d4f0921e79b6bf344b47c420ce0f507b9dcf593e532b09ea7eeea1","impliedFormat":1},{"version":"87d9d29dbc745f182683f63187bf3d53fd8673e5fca38ad5eaab69798ed29fbc","impliedFormat":1},{"version":"eb5b19b86227ace1d29ea4cf81387279d04bb34051e944bc53df69f58914b788","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac51dd7d31333793807a6abaa5ae168512b6131bd41d9c5b98477fc3b7800f9f","impliedFormat":1},{"version":"7a3aa194cfd5919c4da251ef04ea051077e22702638d4edcb9579e9101653519","affectsGlobalScope":true,"impliedFormat":1}],"root":[53],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":199,"outDir":"./","rootDir":"..","skipLibCheck":true,"sourceMap":true,"strict":true,"target":7},"referencedMap":[[54,1],[55,1],[106,2],[107,2],[108,3],[61,4],[109,5],[110,6],[111,7],[56,1],[59,8],[57,1],[58,1],[112,9],[113,10],[114,11],[115,12],[116,13],[117,14],[118,14],[119,15],[120,16],[121,17],[122,18],[62,1],[60,1],[123,19],[124,20],[125,21],[159,22],[126,23],[127,1],[128,24],[129,25],[130,26],[131,27],[132,28],[133,29],[134,30],[135,31],[136,32],[137,32],[138,33],[139,1],[140,34],[141,35],[143,36],[142,37],[144,38],[145,39],[146,40],[147,41],[148,42],[149,43],[150,44],[151,45],[152,46],[153,47],[154,48],[155,49],[156,50],[63,1],[64,1],[65,1],[103,51],[104,1],[105,1],[157,52],[158,53],[160,1],[161,1],[163,54],[162,1],[49,1],[50,1],[10,1],[8,1],[9,1],[14,1],[13,1],[2,1],[15,1],[16,1],[17,1],[18,1],[19,1],[20,1],[21,1],[22,1],[3,1],[23,1],[24,1],[4,1],[25,1],[29,1],[26,1],[27,1],[28,1],[30,1],[31,1],[32,1],[5,1],[33,1],[34,1],[35,1],[36,1],[6,1],[40,1],[37,1],[38,1],[39,1],[41,1],[7,1],[42,1],[51,1],[47,1],[48,1],[43,1],[44,1],[45,1],[46,1],[1,1],[12,1],[11,1],[81,55],[91,56],[80,55],[101,57],[72,58],[71,59],[100,60],[94,61],[99,62],[74,63],[88,64],[73,65],[97,66],[69,67],[68,60],[98,68],[70,69],[75,70],[76,1],[79,70],[66,1],[102,71],[92,72],[83,73],[84,74],[86,75],[82,76],[85,77],[95,60],[77,78],[78,79],[87,80],[67,81],[90,72],[89,70],[93,1],[96,82],[53,83],[52,1]],"latestChangedDtsFile":"./index.d.ts","version":"5.9.3"}
|
|
1
|
+
{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../node_modules/typescript/lib/lib.scripthost.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/typescript/lib/lib.es2020.full.d.ts","../../task/dist/index.d.ts","../index.ts","../../../node_modules/@types/estree/index.d.ts","../../../node_modules/@types/node/compatibility/disposable.d.ts","../../../node_modules/@types/node/compatibility/indexable.d.ts","../../../node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/@types/node/compatibility/index.d.ts","../../../node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../node_modules/@types/node/web-globals/domexception.d.ts","../../../node_modules/@types/node/web-globals/events.d.ts","../../../node_modules/undici-types/header.d.ts","../../../node_modules/undici-types/readable.d.ts","../../../node_modules/undici-types/file.d.ts","../../../node_modules/undici-types/fetch.d.ts","../../../node_modules/undici-types/formdata.d.ts","../../../node_modules/undici-types/connector.d.ts","../../../node_modules/undici-types/client.d.ts","../../../node_modules/undici-types/errors.d.ts","../../../node_modules/undici-types/dispatcher.d.ts","../../../node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/undici-types/global-origin.d.ts","../../../node_modules/undici-types/pool-stats.d.ts","../../../node_modules/undici-types/pool.d.ts","../../../node_modules/undici-types/handlers.d.ts","../../../node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/undici-types/agent.d.ts","../../../node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/undici-types/mock-agent.d.ts","../../../node_modules/undici-types/mock-client.d.ts","../../../node_modules/undici-types/mock-pool.d.ts","../../../node_modules/undici-types/mock-errors.d.ts","../../../node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/undici-types/retry-handler.d.ts","../../../node_modules/undici-types/retry-agent.d.ts","../../../node_modules/undici-types/api.d.ts","../../../node_modules/undici-types/interceptors.d.ts","../../../node_modules/undici-types/util.d.ts","../../../node_modules/undici-types/cookies.d.ts","../../../node_modules/undici-types/patch.d.ts","../../../node_modules/undici-types/websocket.d.ts","../../../node_modules/undici-types/eventsource.d.ts","../../../node_modules/undici-types/filereader.d.ts","../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/undici-types/content-type.d.ts","../../../node_modules/undici-types/cache.d.ts","../../../node_modules/undici-types/index.d.ts","../../../node_modules/@types/node/web-globals/fetch.d.ts","../../../node_modules/@types/node/web-globals/navigator.d.ts","../../../node_modules/@types/node/web-globals/storage.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/inspector.generated.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/readline/promises.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/sea.d.ts","../../../node_modules/@types/node/sqlite.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/@types/node/stream/web.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/test.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/index.d.ts","../../../node_modules/@types/prop-types/index.d.ts","../../../node_modules/@types/react/global.d.ts","../../../node_modules/csstype/index.d.ts","../../../node_modules/@types/react/index.d.ts","../../../node_modules/@types/react-test-renderer/index.d.ts"],"fileIdsList":[[60,108,125,126],[60,105,106,108,125,126],[60,107,108,125,126],[108,125,126],[60,108,113,125,126,143],[60,108,109,114,119,125,126,128,140,151],[60,108,109,110,119,125,126,128],[55,56,57,60,108,125,126],[60,108,111,125,126,152],[60,108,112,113,120,125,126,129],[60,108,113,125,126,140,148],[60,108,114,116,119,125,126,128],[60,107,108,115,125,126],[60,108,116,117,125,126],[60,108,118,119,125,126],[60,107,108,119,125,126],[60,108,119,120,121,125,126,140,151],[60,108,119,120,121,125,126,135,140,143],[60,101,108,116,119,122,125,126,128,140,151],[60,108,119,120,122,123,125,126,128,140,148,151],[60,108,122,124,125,126,140,148,151],[58,59,60,61,62,63,64,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157],[60,108,119,125,126],[60,108,125,126,127,151],[60,108,116,119,125,126,128,140],[60,108,125,126,129],[60,108,125,126,130],[60,107,108,125,126,131],[60,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157],[60,108,125,126,133],[60,108,125,126,134],[60,108,119,125,126,135,136],[60,108,125,126,135,137,152,154],[60,108,120,125,126],[60,108,119,125,126,140,141,143],[60,108,125,126,142,143],[60,108,125,126,140,141],[60,108,125,126,143],[60,108,125,126,144],[60,105,108,125,126,140,145],[60,108,119,125,126,146,147],[60,108,125,126,146,147],[60,108,113,125,126,128,140,148],[60,108,125,126,149],[60,108,125,126,128,150],[60,108,122,125,126,134,151],[60,108,113,125,126,152],[60,108,125,126,140,153],[60,108,125,126,127,154],[60,108,125,126,155],[60,101,108,125,126],[60,101,108,119,121,125,126,131,140,143,151,153,154,156],[60,108,125,126,140,157],[60,108,125,126,162],[60,108,125,126,159,160,161],[60,73,77,108,125,126,151],[60,73,108,125,126,140,151],[60,68,108,125,126],[60,70,73,108,125,126,148,151],[60,108,125,126,128,148],[60,108,125,126,158],[60,68,108,125,126,158],[60,70,73,108,125,126,128,151],[60,65,66,69,72,108,119,125,126,140,151],[60,73,80,108,125,126],[60,65,71,108,125,126],[60,73,94,95,108,125,126],[60,69,73,108,125,126,143,151,158],[60,94,108,125,126,158],[60,67,68,108,125,126,158],[60,73,108,125,126],[60,67,68,69,70,71,72,73,74,75,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,95,96,97,98,99,100,108,125,126],[60,73,88,108,125,126],[60,73,80,81,108,125,126],[60,71,73,81,82,108,125,126],[60,72,108,125,126],[60,65,68,73,108,125,126],[60,73,77,81,82,108,125,126],[60,77,108,125,126],[60,71,73,76,108,125,126,151],[60,65,70,73,80,108,125,126],[60,108,125,126,140],[60,68,73,94,108,125,126,156,158],[52,60,108,125,126]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7a3c8b952931daebdfc7a2897c53c0a1c73624593fa070e46bd537e64dcd20a","affectsGlobalScope":true,"impliedFormat":1},{"version":"80e18897e5884b6723488d4f5652167e7bb5024f946743134ecc4aa4ee731f89","affectsGlobalScope":true,"impliedFormat":1},{"version":"cd034f499c6cdca722b60c04b5b1b78e058487a7085a8e0d6fb50809947ee573","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"1305d1e76ca44e30fb8b2b8075fa522b83f60c0bcf5d4326a9d2cf79b53724f8","impliedFormat":1},{"version":"dafe6ade5bf79ad163c589ac03e0d21f760c432e34df45f5bada14f7b5ceb4d3","impliedFormat":99},{"version":"c14c3b8da5ce3cfc4ef06f40a05c3778d06d5eda5819809c28831448f37ad81f","signature":"577c83c5f7de9dc8331661550b506aa81546dadede4f2a5aaed92086df18f6e5","impliedFormat":99},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1},{"version":"6c7176368037af28cb72f2392010fa1cef295d6d6744bca8cfb54985f3a18c3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"437e20f2ba32abaeb7985e0afe0002de1917bc74e949ba585e49feba65da6ca1","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"808069bba06b6768b62fd22429b53362e7af342da4a236ed2d2e1c89fcca3b4a","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"2cbe0621042e2a68c7cbce5dfed3906a1862a16a7d496010636cdbdb91341c0f","affectsGlobalScope":true,"impliedFormat":1},{"version":"f9501cc13ce624c72b61f12b3963e84fad210fbdf0ffbc4590e08460a3f04eba","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0fa06ada475b910e2106c98c68b10483dc8811d0c14a8a8dd36efb2672485b29","impliedFormat":1},{"version":"33e5e9aba62c3193d10d1d33ae1fa75c46a1171cf76fef750777377d53b0303f","impliedFormat":1},{"version":"2b06b93fd01bcd49d1a6bd1f9b65ddcae6480b9a86e9061634d6f8e354c1468f","impliedFormat":1},{"version":"6a0cd27e5dc2cfbe039e731cf879d12b0e2dded06d1b1dedad07f7712de0d7f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"13f5c844119c43e51ce777c509267f14d6aaf31eafb2c2b002ca35584cd13b29","impliedFormat":1},{"version":"e60477649d6ad21542bd2dc7e3d9ff6853d0797ba9f689ba2f6653818999c264","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"4c829ab315f57c5442c6667b53769975acbf92003a66aef19bce151987675bd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"b2ade7657e2db96d18315694789eff2ddd3d8aea7215b181f8a0b303277cc579","impliedFormat":1},{"version":"9855e02d837744303391e5623a531734443a5f8e6e8755e018c41d63ad797db2","impliedFormat":1},{"version":"4d631b81fa2f07a0e63a9a143d6a82c25c5f051298651a9b69176ba28930756d","impliedFormat":1},{"version":"836a356aae992ff3c28a0212e3eabcb76dd4b0cc06bcb9607aeef560661b860d","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"41670ee38943d9cbb4924e436f56fc19ee94232bc96108562de1a734af20dc2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c906fb15bd2aabc9ed1e3f44eb6a8661199d6c320b3aa196b826121552cb3695","impliedFormat":1},{"version":"22295e8103f1d6d8ea4b5d6211e43421fe4564e34d0dd8e09e520e452d89e659","impliedFormat":1},{"version":"bb45cd435da536500f1d9692a9b49d0c570b763ccbf00473248b777f5c1f353b","impliedFormat":1},{"version":"6b4e081d55ac24fc8a4631d5dd77fe249fa25900abd7d046abb87d90e3b45645","impliedFormat":1},{"version":"a10f0e1854f3316d7ee437b79649e5a6ae3ae14ffe6322b02d4987071a95362e","impliedFormat":1},{"version":"e208f73ef6a980104304b0d2ca5f6bf1b85de6009d2c7e404028b875020fa8f2","impliedFormat":1},{"version":"d163b6bc2372b4f07260747cbc6c0a6405ab3fbcea3852305e98ac43ca59f5bc","impliedFormat":1},{"version":"e6fa9ad47c5f71ff733744a029d1dc472c618de53804eae08ffc243b936f87ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"83e63d6ccf8ec004a3bb6d58b9bb0104f60e002754b1e968024b320730cc5311","impliedFormat":1},{"version":"24826ed94a78d5c64bd857570fdbd96229ad41b5cb654c08d75a9845e3ab7dde","impliedFormat":1},{"version":"8b479a130ccb62e98f11f136d3ac80f2984fdc07616516d29881f3061f2dd472","impliedFormat":1},{"version":"928af3d90454bf656a52a48679f199f64c1435247d6189d1caf4c68f2eaf921f","affectsGlobalScope":true,"impliedFormat":1},{"version":"d2bc7425ef40526650d6db7e072c1ff4a51101c3ac2cc4b666623b19496a6e27","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"933921f0bb0ec12ef45d1062a1fc0f27635318f4d294e4d99de9a5493e618ca2","impliedFormat":1},{"version":"71a0f3ad612c123b57239a7749770017ecfe6b66411488000aba83e4546fde25","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"4f9d8ca0c417b67b69eeb54c7ca1bedd7b56034bb9bfd27c5d4f3bc4692daca7","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"a3fc63c0d7b031693f665f5494412ba4b551fe644ededccc0ab5922401079c95","impliedFormat":1},{"version":"f27524f4bef4b6519c604bdb23bf4465bddcccbf3f003abb901acbd0d7404d99","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"6b039f55681caaf111d5eb84d292b9bee9e0131d0db1ad0871eef0964f533c73","affectsGlobalScope":true,"impliedFormat":1},{"version":"18fd40412d102c5564136f29735e5d1c3b455b8a37f920da79561f1fde068208","impliedFormat":1},{"version":"c959a391a75be9789b43c8468f71e3fa06488b4d691d5729dde1416dcd38225b","impliedFormat":1},{"version":"f0be1b8078cd549d91f37c30c222c2a187ac1cf981d994fb476a1adc61387b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"0aaed1d72199b01234152f7a60046bc947f1f37d78d182e9ae09c4289e06a592","impliedFormat":1},{"version":"0dba70b3fb0dcd713fda33c2df64fa6751fff6460e536971cee917260fb17882","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"5b7aa3c4c1a5d81b411e8cb302b45507fea9358d3569196b27eb1a27ae3a90ef","affectsGlobalScope":true,"impliedFormat":1},{"version":"5987a903da92c7462e0b35704ce7da94d7fdc4b89a984871c0e2b87a8aae9e69","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea08a0345023ade2b47fbff5a76d0d0ed8bff10bc9d22b83f40858a8e941501c","impliedFormat":1},{"version":"47613031a5a31510831304405af561b0ffaedb734437c595256bb61a90f9311b","impliedFormat":1},{"version":"ae062ce7d9510060c5d7e7952ae379224fb3f8f2dd74e88959878af2057c143b","impliedFormat":1},{"version":"8a1a0d0a4a06a8d278947fcb66bf684f117bf147f89b06e50662d79a53be3e9f","affectsGlobalScope":true,"impliedFormat":1},{"version":"9f663c2f91127ef7024e8ca4b3b4383ff2770e5f826696005de382282794b127","impliedFormat":1},{"version":"9f55299850d4f0921e79b6bf344b47c420ce0f507b9dcf593e532b09ea7eeea1","impliedFormat":1},{"version":"87d9d29dbc745f182683f63187bf3d53fd8673e5fca38ad5eaab69798ed29fbc","impliedFormat":1},{"version":"eb5b19b86227ace1d29ea4cf81387279d04bb34051e944bc53df69f58914b788","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac51dd7d31333793807a6abaa5ae168512b6131bd41d9c5b98477fc3b7800f9f","impliedFormat":1},{"version":"035312d4945d13efa134ae482f6dc56a1a9346f7ac3be7ccbad5741058ce87f3","affectsGlobalScope":true,"impliedFormat":1},{"version":"a370e617fd7ec5ff8c99f3582001f7c9ebf03e3c5be4113d3a504d321aff48fd","impliedFormat":1}],"root":[53],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":199,"noFallthroughCasesInSwitch":true,"noImplicitOverride":true,"noUncheckedIndexedAccess":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","rootDir":"..","skipLibCheck":true,"sourceMap":true,"strict":true,"target":7},"referencedMap":[[54,1],[105,2],[106,2],[107,3],[60,4],[108,5],[109,6],[110,7],[55,1],[58,8],[56,1],[57,1],[111,9],[112,10],[113,11],[114,12],[115,13],[116,14],[117,14],[118,15],[119,16],[120,17],[121,18],[61,1],[59,1],[122,19],[123,20],[124,21],[158,22],[125,23],[126,1],[127,24],[128,25],[129,26],[130,27],[131,28],[132,29],[133,30],[134,31],[135,32],[136,32],[137,33],[138,1],[139,34],[140,35],[142,36],[141,37],[143,38],[144,39],[145,40],[146,41],[147,42],[148,43],[149,44],[150,45],[151,46],[152,47],[153,48],[154,49],[155,50],[62,1],[63,1],[64,1],[102,51],[103,1],[104,1],[156,52],[157,53],[159,1],[163,54],[160,1],[162,55],[161,1],[49,1],[50,1],[10,1],[8,1],[9,1],[14,1],[13,1],[2,1],[15,1],[16,1],[17,1],[18,1],[19,1],[20,1],[21,1],[22,1],[3,1],[23,1],[24,1],[4,1],[25,1],[29,1],[26,1],[27,1],[28,1],[30,1],[31,1],[32,1],[5,1],[33,1],[34,1],[35,1],[36,1],[6,1],[40,1],[37,1],[38,1],[39,1],[41,1],[7,1],[42,1],[51,1],[47,1],[48,1],[43,1],[44,1],[45,1],[46,1],[1,1],[12,1],[11,1],[80,56],[90,57],[79,56],[100,58],[71,59],[70,60],[99,61],[93,62],[98,63],[73,64],[87,65],[72,66],[96,67],[68,68],[67,61],[97,69],[69,70],[74,71],[75,1],[78,71],[65,1],[101,72],[91,73],[82,74],[83,75],[85,76],[81,77],[84,78],[94,61],[76,79],[77,80],[86,81],[66,82],[89,73],[88,71],[92,1],[95,83],[53,84],[52,1]],"latestChangedDtsFile":"./index.d.ts","version":"5.9.3"}
|
package/package.json
CHANGED
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gantryland/task-cache",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Cache store and combinator for @gantryland/task",
|
|
5
|
-
"keywords": [
|
|
6
|
-
"task",
|
|
7
|
-
"cache",
|
|
8
|
-
"memoize",
|
|
9
|
-
"async"
|
|
10
|
-
],
|
|
5
|
+
"keywords": ["task", "cache", "memoize", "async"],
|
|
11
6
|
"type": "module",
|
|
12
7
|
"main": "./dist/index.js",
|
|
13
8
|
"types": "./dist/index.d.ts",
|
|
@@ -18,11 +13,14 @@
|
|
|
18
13
|
},
|
|
19
14
|
"./package.json": "./package.json"
|
|
20
15
|
},
|
|
21
|
-
"files": [
|
|
22
|
-
|
|
23
|
-
"
|
|
24
|
-
|
|
16
|
+
"files": ["dist", "README.md"],
|
|
17
|
+
"scripts": {
|
|
18
|
+
"prepack": "tsc -b"
|
|
19
|
+
},
|
|
25
20
|
"sideEffects": false,
|
|
21
|
+
"engines": {
|
|
22
|
+
"node": ">=20"
|
|
23
|
+
},
|
|
26
24
|
"license": "MIT",
|
|
27
25
|
"publishConfig": {
|
|
28
26
|
"access": "public"
|
|
@@ -36,6 +34,6 @@
|
|
|
36
34
|
},
|
|
37
35
|
"homepage": "https://github.com/joehoot/gantryland/tree/main/packages/task-cache#readme",
|
|
38
36
|
"dependencies": {
|
|
39
|
-
"@gantryland/task": "^0.
|
|
37
|
+
"@gantryland/task": "^0.3.0"
|
|
40
38
|
}
|
|
41
39
|
}
|