@e280/stz 0.3.11 → 0.3.13
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/package.json +1 -2
- package/s/disposer.ts +9 -1
- package/s/utensils/map.ts +5 -2
- package/x/disposer.d.ts +1 -0
- package/x/disposer.js +7 -2
- package/x/disposer.js.map +1 -1
- package/x/utensils/map.d.ts +4 -3
- package/x/utensils/map.js +3 -1
- package/x/utensils/map.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@e280/stz",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.13",
|
|
4
4
|
"description": "everyday ts fns for everything",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Chase Moskal <chasemoskal@gmail.com>",
|
|
@@ -23,7 +23,6 @@
|
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"@e280/science": "^0.1.12",
|
|
26
|
-
"@types/node": "^26.2.0",
|
|
27
26
|
"typescript": "^7.0.2"
|
|
28
27
|
},
|
|
29
28
|
"keywords": [
|
package/s/disposer.ts
CHANGED
|
@@ -2,14 +2,17 @@
|
|
|
2
2
|
export type Disposer = {
|
|
3
3
|
(): void
|
|
4
4
|
schedule: (...fns: (() => void)[]) => Disposer
|
|
5
|
+
own: <X>(x: X, fn: (x: X) => void) => X
|
|
5
6
|
}
|
|
6
7
|
|
|
7
8
|
export function disposer(): Disposer {
|
|
8
9
|
let fns: (() => void)[] = []
|
|
9
10
|
|
|
10
11
|
function d() {
|
|
11
|
-
|
|
12
|
+
const doomed = fns
|
|
12
13
|
fns = []
|
|
14
|
+
for (let i = doomed.length - 1; i >= 0; i--)
|
|
15
|
+
doomed[i]()
|
|
13
16
|
}
|
|
14
17
|
|
|
15
18
|
d.schedule = (...newFns: (() => void)[]) => {
|
|
@@ -17,6 +20,11 @@ export function disposer(): Disposer {
|
|
|
17
20
|
return d
|
|
18
21
|
}
|
|
19
22
|
|
|
23
|
+
d.own = <X>(x: X, fn: (x: X) => void) => {
|
|
24
|
+
fns.push(() => fn(x))
|
|
25
|
+
return x
|
|
26
|
+
}
|
|
27
|
+
|
|
20
28
|
return d
|
|
21
29
|
}
|
|
22
30
|
|
package/s/utensils/map.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
type MapLike<K, V> = {
|
|
2
|
+
export type MapLike<K, V> = {
|
|
3
3
|
has(key: K): boolean
|
|
4
4
|
get(key: K): V | undefined
|
|
5
5
|
set(key: K, value: V): unknown
|
|
@@ -26,9 +26,12 @@ export function guarantee<K, V>(map: MapLike<K, V>, key: K, make: () => V) {
|
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
export function
|
|
29
|
+
export function setEntries<K, V, M extends Pick<MapLike<K, V>, "set">>(map: M, entries: Iterable<[K, V]>) {
|
|
30
30
|
for (const [key, value] of entries)
|
|
31
31
|
map.set(key, value)
|
|
32
32
|
return map
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
+
/** @deprecated renamed to `setEntries` */
|
|
36
|
+
export const inserts = setEntries
|
|
37
|
+
|
package/x/disposer.d.ts
CHANGED
package/x/disposer.js
CHANGED
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
export function disposer() {
|
|
2
2
|
let fns = [];
|
|
3
3
|
function d() {
|
|
4
|
-
|
|
5
|
-
fn();
|
|
4
|
+
const doomed = fns;
|
|
6
5
|
fns = [];
|
|
6
|
+
for (let i = doomed.length - 1; i >= 0; i--)
|
|
7
|
+
doomed[i]();
|
|
7
8
|
}
|
|
8
9
|
d.schedule = (...newFns) => {
|
|
9
10
|
fns.push(...newFns);
|
|
10
11
|
return d;
|
|
11
12
|
};
|
|
13
|
+
d.own = (x, fn) => {
|
|
14
|
+
fns.push(() => fn(x));
|
|
15
|
+
return x;
|
|
16
|
+
};
|
|
12
17
|
return d;
|
|
13
18
|
}
|
|
14
19
|
//# sourceMappingURL=disposer.js.map
|
package/x/disposer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"disposer.js","sourceRoot":"","sources":["../s/disposer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"disposer.js","sourceRoot":"","sources":["../s/disposer.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,QAAQ;IACvB,IAAI,GAAG,GAAmB,EAAE,CAAA;IAE5B,SAAS,CAAC;QACT,MAAM,MAAM,GAAG,GAAG,CAAA;QAClB,GAAG,GAAG,EAAE,CAAA;QACR,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YAC1C,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;IACb,CAAC;IAED,CAAC,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAsB,EAAE,EAAE;QAC1C,GAAG,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAA;QACnB,OAAO,CAAC,CAAA;IACT,CAAC,CAAA;IAED,CAAC,CAAC,GAAG,GAAG,CAAI,CAAI,EAAE,EAAkB,EAAE,EAAE;QACvC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QACrB,OAAO,CAAC,CAAA;IACT,CAAC,CAAA;IAED,OAAO,CAAC,CAAA;AACT,CAAC"}
|
package/x/utensils/map.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
type MapLike<K, V> = {
|
|
1
|
+
export type MapLike<K, V> = {
|
|
2
2
|
has(key: K): boolean;
|
|
3
3
|
get(key: K): V | undefined;
|
|
4
4
|
set(key: K, value: V): unknown;
|
|
5
5
|
};
|
|
6
6
|
export declare function need<K, V>(map: Pick<MapLike<K, V>, "has" | "get">, key: K, err?: string): V;
|
|
7
7
|
export declare function guarantee<K, V>(map: MapLike<K, V>, key: K, make: () => V): V;
|
|
8
|
-
export declare function
|
|
9
|
-
|
|
8
|
+
export declare function setEntries<K, V, M extends Pick<MapLike<K, V>, "set">>(map: M, entries: Iterable<[K, V]>): M;
|
|
9
|
+
/** @deprecated renamed to `setEntries` */
|
|
10
|
+
export declare const inserts: typeof setEntries;
|
package/x/utensils/map.js
CHANGED
|
@@ -13,9 +13,11 @@ export function guarantee(map, key, make) {
|
|
|
13
13
|
return value;
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
|
-
export function
|
|
16
|
+
export function setEntries(map, entries) {
|
|
17
17
|
for (const [key, value] of entries)
|
|
18
18
|
map.set(key, value);
|
|
19
19
|
return map;
|
|
20
20
|
}
|
|
21
|
+
/** @deprecated renamed to `setEntries` */
|
|
22
|
+
export const inserts = setEntries;
|
|
21
23
|
//# sourceMappingURL=map.js.map
|
package/x/utensils/map.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map.js","sourceRoot":"","sources":["../../s/utensils/map.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,IAAI,CAClB,GAAuC,EACvC,GAAM,EACN,GAAG,GAAG,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,yBAAyB,GAAG,GAAG,CAAC,CAAC,CAAC,sBAAsB,CAAC;IAE3F,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QACf,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAM,CAAA;;QAExB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;AACtB,CAAC;AAED,MAAM,UAAU,SAAS,CAAO,GAAkB,EAAE,GAAM,EAAE,IAAa;IACxE,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QACf,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAE,CAAA;SAChB,CAAC;QACL,MAAM,KAAK,GAAG,IAAI,EAAE,CAAA;QACpB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACnB,OAAO,KAAK,CAAA;IACb,CAAC;AACF,CAAC;AAED,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"map.js","sourceRoot":"","sources":["../../s/utensils/map.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,IAAI,CAClB,GAAuC,EACvC,GAAM,EACN,GAAG,GAAG,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,yBAAyB,GAAG,GAAG,CAAC,CAAC,CAAC,sBAAsB,CAAC;IAE3F,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QACf,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAM,CAAA;;QAExB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;AACtB,CAAC;AAED,MAAM,UAAU,SAAS,CAAO,GAAkB,EAAE,GAAM,EAAE,IAAa;IACxE,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QACf,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAE,CAAA;SAChB,CAAC;QACL,MAAM,KAAK,GAAG,IAAI,EAAE,CAAA;QACpB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACnB,OAAO,KAAK,CAAA;IACb,CAAC;AACF,CAAC;AAED,MAAM,UAAU,UAAU,CAA6C,GAAM,EAAE,OAAyB;IACvG,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO;QACjC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IACpB,OAAO,GAAG,CAAA;AACX,CAAC;AAED,0CAA0C;AAC1C,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,CAAA"}
|