@monstermann/set 0.2.0 → 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 +776 -0
- package/dist/Set/add.d.mts +12 -4
- package/dist/Set/add.mjs +12 -4
- package/dist/Set/addAll.d.mts +12 -4
- package/dist/Set/addAll.mjs +12 -4
- package/dist/Set/clone.d.mts +9 -4
- package/dist/Set/clone.mjs +9 -4
- package/dist/Set/compact.d.mts +11 -4
- package/dist/Set/compact.mjs +11 -4
- package/dist/Set/create.d.mts +9 -2
- package/dist/Set/create.mjs +9 -2
- package/dist/Set/difference.d.mts +12 -4
- package/dist/Set/difference.mjs +12 -4
- package/dist/Set/forEach.d.mts +15 -4
- package/dist/Set/forEach.mjs +15 -4
- package/dist/Set/has.d.mts +12 -4
- package/dist/Set/has.mjs +12 -4
- package/dist/Set/hasAll.d.mts +12 -4
- package/dist/Set/hasAll.mjs +12 -4
- package/dist/Set/hasAny.d.mts +12 -4
- package/dist/Set/hasAny.mjs +12 -4
- package/dist/Set/hasNone.d.mts +12 -4
- package/dist/Set/hasNone.mjs +12 -4
- package/dist/Set/index.d.mts +1 -7
- package/dist/Set/index.mjs +0 -12
- package/dist/Set/intersection.d.mts +12 -4
- package/dist/Set/intersection.mjs +12 -4
- package/dist/Set/is.d.mts +9 -4
- package/dist/Set/is.mjs +9 -4
- package/dist/Set/isDisjointFrom.d.mts +12 -4
- package/dist/Set/isDisjointFrom.mjs +12 -4
- package/dist/Set/isEmpty.d.mts +11 -4
- package/dist/Set/isEmpty.mjs +11 -4
- package/dist/Set/isShallowEqual.d.mts +12 -4
- package/dist/Set/isShallowEqual.mjs +12 -4
- package/dist/Set/isSubsetOf.d.mts +12 -4
- package/dist/Set/isSubsetOf.mjs +12 -4
- package/dist/Set/isSupersetOf.d.mts +12 -4
- package/dist/Set/isSupersetOf.mjs +12 -4
- package/dist/Set/mapEach.d.mts +15 -4
- package/dist/Set/mapEach.mjs +15 -4
- package/dist/Set/remove.d.mts +12 -4
- package/dist/Set/remove.mjs +12 -4
- package/dist/Set/removeAll.d.mts +12 -4
- package/dist/Set/removeAll.mjs +12 -4
- package/dist/Set/size.d.mts +11 -4
- package/dist/Set/size.mjs +11 -4
- package/dist/Set/symmetricDifference.d.mts +12 -4
- package/dist/Set/symmetricDifference.mjs +12 -4
- package/dist/Set/toArray.d.mts +9 -4
- package/dist/Set/toArray.mjs +9 -4
- package/dist/Set/union.d.mts +12 -4
- package/dist/Set/union.mjs +12 -4
- package/package.json +2 -2
- package/dist/Set/addOr.d.mts +0 -28
- package/dist/Set/addOr.mjs +0 -34
- package/dist/Set/addOrElse.d.mts +0 -35
- package/dist/Set/addOrElse.mjs +0 -41
- package/dist/Set/addOrThrow.d.mts +0 -28
- package/dist/Set/addOrThrow.mjs +0 -34
- package/dist/Set/removeOr.d.mts +0 -28
- package/dist/Set/removeOr.mjs +0 -34
- package/dist/Set/removeOrElse.d.mts +0 -35
- package/dist/Set/removeOrElse.mjs +0 -41
- package/dist/Set/removeOrThrow.d.mts +0 -28
- package/dist/Set/removeOrThrow.mjs +0 -34
package/dist/Set/addOr.mjs
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { dfdlT } from "@monstermann/dfdl";
|
|
2
|
-
import { cloneSet } from "@monstermann/remmi";
|
|
3
|
-
|
|
4
|
-
//#region src/Set/addOr.ts
|
|
5
|
-
/**
|
|
6
|
-
* ```ts
|
|
7
|
-
* function Set.addOr(target, value, or)
|
|
8
|
-
* ```
|
|
9
|
-
*
|
|
10
|
-
* Example
|
|
11
|
-
*
|
|
12
|
-
* ```ts
|
|
13
|
-
* import { Set } from "@monstermann/set";
|
|
14
|
-
*
|
|
15
|
-
* Set.addOr(Set.create([1, 2]), 3, null); // Set([1, 2, 3])
|
|
16
|
-
* Set.addOr(Set.create([1, 2]), 2, null); // null
|
|
17
|
-
* ```
|
|
18
|
-
*
|
|
19
|
-
* ```ts
|
|
20
|
-
* import { Set } from "@monstermann/set";
|
|
21
|
-
*
|
|
22
|
-
* pipe(Set.create([1, 2]), Set.addOr(3, null)); // Set([1, 2, 3])
|
|
23
|
-
* pipe(Set.create([1, 2]), Set.addOr(2, null)); // null
|
|
24
|
-
* ```
|
|
25
|
-
*/
|
|
26
|
-
const addOr = dfdlT((target, value, or) => {
|
|
27
|
-
if (target.has(value)) return or;
|
|
28
|
-
const result = cloneSet(target);
|
|
29
|
-
result.add(value);
|
|
30
|
-
return result;
|
|
31
|
-
}, 3);
|
|
32
|
-
|
|
33
|
-
//#endregion
|
|
34
|
-
export { addOr };
|
package/dist/Set/addOrElse.d.mts
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
//#region src/Set/addOrElse.d.ts
|
|
2
|
-
/**
|
|
3
|
-
* ```ts
|
|
4
|
-
* function Set.addOrElse(target, value, orElse)
|
|
5
|
-
* ```
|
|
6
|
-
*
|
|
7
|
-
* Example
|
|
8
|
-
*
|
|
9
|
-
* ```ts
|
|
10
|
-
* import { Set } from "@monstermann/set";
|
|
11
|
-
*
|
|
12
|
-
* Set.addOrElse(Set.create([1, 2]), 3, (set) => set.size); // Set([1, 2, 3])
|
|
13
|
-
* Set.addOrElse(Set.create([1, 2]), 2, (set) => set.size); // 2
|
|
14
|
-
* ```
|
|
15
|
-
*
|
|
16
|
-
* ```ts
|
|
17
|
-
* import { Set } from "@monstermann/set";
|
|
18
|
-
*
|
|
19
|
-
* pipe(
|
|
20
|
-
* Set.create([1, 2]),
|
|
21
|
-
* Set.addOrElse(3, (set) => set.size),
|
|
22
|
-
* ); // Set([1, 2, 3])
|
|
23
|
-
*
|
|
24
|
-
* pipe(
|
|
25
|
-
* Set.create([1, 2]),
|
|
26
|
-
* Set.addOrElse(2, (set) => set.size),
|
|
27
|
-
* ); // 2
|
|
28
|
-
* ```
|
|
29
|
-
*/
|
|
30
|
-
declare const addOrElse: {
|
|
31
|
-
<T, U>(value: NoInfer<T>, orElse: (target: ReadonlySet<NoInfer<T>>) => U): (target: ReadonlySet<T>) => Set<T> | U;
|
|
32
|
-
<T, U>(target: ReadonlySet<T>, value: NoInfer<T>, orElse: (target: ReadonlySet<NoInfer<T>>) => U): Set<T> | U;
|
|
33
|
-
};
|
|
34
|
-
//#endregion
|
|
35
|
-
export { addOrElse };
|
package/dist/Set/addOrElse.mjs
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { dfdlT } from "@monstermann/dfdl";
|
|
2
|
-
import { cloneSet } from "@monstermann/remmi";
|
|
3
|
-
|
|
4
|
-
//#region src/Set/addOrElse.ts
|
|
5
|
-
/**
|
|
6
|
-
* ```ts
|
|
7
|
-
* function Set.addOrElse(target, value, orElse)
|
|
8
|
-
* ```
|
|
9
|
-
*
|
|
10
|
-
* Example
|
|
11
|
-
*
|
|
12
|
-
* ```ts
|
|
13
|
-
* import { Set } from "@monstermann/set";
|
|
14
|
-
*
|
|
15
|
-
* Set.addOrElse(Set.create([1, 2]), 3, (set) => set.size); // Set([1, 2, 3])
|
|
16
|
-
* Set.addOrElse(Set.create([1, 2]), 2, (set) => set.size); // 2
|
|
17
|
-
* ```
|
|
18
|
-
*
|
|
19
|
-
* ```ts
|
|
20
|
-
* import { Set } from "@monstermann/set";
|
|
21
|
-
*
|
|
22
|
-
* pipe(
|
|
23
|
-
* Set.create([1, 2]),
|
|
24
|
-
* Set.addOrElse(3, (set) => set.size),
|
|
25
|
-
* ); // Set([1, 2, 3])
|
|
26
|
-
*
|
|
27
|
-
* pipe(
|
|
28
|
-
* Set.create([1, 2]),
|
|
29
|
-
* Set.addOrElse(2, (set) => set.size),
|
|
30
|
-
* ); // 2
|
|
31
|
-
* ```
|
|
32
|
-
*/
|
|
33
|
-
const addOrElse = dfdlT((target, value, orElse) => {
|
|
34
|
-
if (target.has(value)) return orElse(target);
|
|
35
|
-
const result = cloneSet(target);
|
|
36
|
-
result.add(value);
|
|
37
|
-
return result;
|
|
38
|
-
}, 3);
|
|
39
|
-
|
|
40
|
-
//#endregion
|
|
41
|
-
export { addOrElse };
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
//#region src/Set/addOrThrow.d.ts
|
|
2
|
-
/**
|
|
3
|
-
* ```ts
|
|
4
|
-
* function Set.addOrThrow(target, value)
|
|
5
|
-
* ```
|
|
6
|
-
*
|
|
7
|
-
* Example
|
|
8
|
-
*
|
|
9
|
-
* ```ts
|
|
10
|
-
* import { Set } from "@monstermann/set";
|
|
11
|
-
*
|
|
12
|
-
* Set.addOrThrow(Set.create([1, 2]), 3); // Set([1, 2, 3])
|
|
13
|
-
* Set.addOrThrow(Set.create([1, 2]), 2); // throws FnError
|
|
14
|
-
* ```
|
|
15
|
-
*
|
|
16
|
-
* ```ts
|
|
17
|
-
* import { Set } from "@monstermann/set";
|
|
18
|
-
*
|
|
19
|
-
* pipe(Set.create([1, 2]), Set.addOrThrow(3)); // Set([1, 2, 3])
|
|
20
|
-
* pipe(Set.create([1, 2]), Set.addOrThrow(2)); // throws FnError
|
|
21
|
-
* ```
|
|
22
|
-
*/
|
|
23
|
-
declare const addOrThrow: {
|
|
24
|
-
<T>(value: NoInfer<T>): (target: ReadonlySet<T>) => Set<T>;
|
|
25
|
-
<T>(target: ReadonlySet<T>, value: NoInfer<T>): Set<T>;
|
|
26
|
-
};
|
|
27
|
-
//#endregion
|
|
28
|
-
export { addOrThrow };
|
package/dist/Set/addOrThrow.mjs
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { dfdlT } from "@monstermann/dfdl";
|
|
2
|
-
import { cloneSet } from "@monstermann/remmi";
|
|
3
|
-
|
|
4
|
-
//#region src/Set/addOrThrow.ts
|
|
5
|
-
/**
|
|
6
|
-
* ```ts
|
|
7
|
-
* function Set.addOrThrow(target, value)
|
|
8
|
-
* ```
|
|
9
|
-
*
|
|
10
|
-
* Example
|
|
11
|
-
*
|
|
12
|
-
* ```ts
|
|
13
|
-
* import { Set } from "@monstermann/set";
|
|
14
|
-
*
|
|
15
|
-
* Set.addOrThrow(Set.create([1, 2]), 3); // Set([1, 2, 3])
|
|
16
|
-
* Set.addOrThrow(Set.create([1, 2]), 2); // throws FnError
|
|
17
|
-
* ```
|
|
18
|
-
*
|
|
19
|
-
* ```ts
|
|
20
|
-
* import { Set } from "@monstermann/set";
|
|
21
|
-
*
|
|
22
|
-
* pipe(Set.create([1, 2]), Set.addOrThrow(3)); // Set([1, 2, 3])
|
|
23
|
-
* pipe(Set.create([1, 2]), Set.addOrThrow(2)); // throws FnError
|
|
24
|
-
* ```
|
|
25
|
-
*/
|
|
26
|
-
const addOrThrow = dfdlT((target, value) => {
|
|
27
|
-
if (target.has(value)) throw new Error("Set.addOrThrow: Value already exists.");
|
|
28
|
-
const result = cloneSet(target);
|
|
29
|
-
result.add(value);
|
|
30
|
-
return result;
|
|
31
|
-
}, 2);
|
|
32
|
-
|
|
33
|
-
//#endregion
|
|
34
|
-
export { addOrThrow };
|
package/dist/Set/removeOr.d.mts
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
//#region src/Set/removeOr.d.ts
|
|
2
|
-
/**
|
|
3
|
-
* ```ts
|
|
4
|
-
* function Set.removeOr(target, value, or)
|
|
5
|
-
* ```
|
|
6
|
-
*
|
|
7
|
-
* Example
|
|
8
|
-
*
|
|
9
|
-
* ```ts
|
|
10
|
-
* import { Set } from "@monstermann/set";
|
|
11
|
-
*
|
|
12
|
-
* Set.removeOr(Set.create([1, 2, 3]), 2, null); // Set([1, 3])
|
|
13
|
-
* Set.removeOr(Set.create([1, 2, 3]), 4, null); // null
|
|
14
|
-
* ```
|
|
15
|
-
*
|
|
16
|
-
* ```ts
|
|
17
|
-
* import { Set } from "@monstermann/set";
|
|
18
|
-
*
|
|
19
|
-
* pipe(Set.create([1, 2, 3]), Set.removeOr(2, null)); // Set([1, 3])
|
|
20
|
-
* pipe(Set.create([1, 2, 3]), Set.removeOr(4, null)); // null
|
|
21
|
-
* ```
|
|
22
|
-
*/
|
|
23
|
-
declare const removeOr: {
|
|
24
|
-
<T, U>(value: NoInfer<T>, or: U): (target: ReadonlySet<T>) => Set<T> | U;
|
|
25
|
-
<T, U>(target: ReadonlySet<T>, value: NoInfer<T>, or: U): Set<T> | U;
|
|
26
|
-
};
|
|
27
|
-
//#endregion
|
|
28
|
-
export { removeOr };
|
package/dist/Set/removeOr.mjs
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { dfdlT } from "@monstermann/dfdl";
|
|
2
|
-
import { cloneSet } from "@monstermann/remmi";
|
|
3
|
-
|
|
4
|
-
//#region src/Set/removeOr.ts
|
|
5
|
-
/**
|
|
6
|
-
* ```ts
|
|
7
|
-
* function Set.removeOr(target, value, or)
|
|
8
|
-
* ```
|
|
9
|
-
*
|
|
10
|
-
* Example
|
|
11
|
-
*
|
|
12
|
-
* ```ts
|
|
13
|
-
* import { Set } from "@monstermann/set";
|
|
14
|
-
*
|
|
15
|
-
* Set.removeOr(Set.create([1, 2, 3]), 2, null); // Set([1, 3])
|
|
16
|
-
* Set.removeOr(Set.create([1, 2, 3]), 4, null); // null
|
|
17
|
-
* ```
|
|
18
|
-
*
|
|
19
|
-
* ```ts
|
|
20
|
-
* import { Set } from "@monstermann/set";
|
|
21
|
-
*
|
|
22
|
-
* pipe(Set.create([1, 2, 3]), Set.removeOr(2, null)); // Set([1, 3])
|
|
23
|
-
* pipe(Set.create([1, 2, 3]), Set.removeOr(4, null)); // null
|
|
24
|
-
* ```
|
|
25
|
-
*/
|
|
26
|
-
const removeOr = dfdlT((target, value, or) => {
|
|
27
|
-
if (!target.has(value)) return or;
|
|
28
|
-
const result = cloneSet(target);
|
|
29
|
-
result.delete(value);
|
|
30
|
-
return result;
|
|
31
|
-
}, 3);
|
|
32
|
-
|
|
33
|
-
//#endregion
|
|
34
|
-
export { removeOr };
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
//#region src/Set/removeOrElse.d.ts
|
|
2
|
-
/**
|
|
3
|
-
* ```ts
|
|
4
|
-
* function Set.removeOrElse(target, value, orElse)
|
|
5
|
-
* ```
|
|
6
|
-
*
|
|
7
|
-
* Example
|
|
8
|
-
*
|
|
9
|
-
* ```ts
|
|
10
|
-
* import { Set } from "@monstermann/set";
|
|
11
|
-
*
|
|
12
|
-
* Set.removeOrElse(Set.create([1, 2, 3]), 2, (set) => set.size); // Set([1, 3])
|
|
13
|
-
* Set.removeOrElse(Set.create([1, 2, 3]), 4, (set) => set.size); // 3
|
|
14
|
-
* ```
|
|
15
|
-
*
|
|
16
|
-
* ```ts
|
|
17
|
-
* import { Set } from "@monstermann/set";
|
|
18
|
-
*
|
|
19
|
-
* pipe(
|
|
20
|
-
* Set.create([1, 2, 3]),
|
|
21
|
-
* Set.removeOrElse(2, (set) => set.size),
|
|
22
|
-
* ); // Set([1, 3])
|
|
23
|
-
*
|
|
24
|
-
* pipe(
|
|
25
|
-
* Set.create([1, 2, 3]),
|
|
26
|
-
* Set.removeOrElse(4, (set) => set.size),
|
|
27
|
-
* ); // 3
|
|
28
|
-
* ```
|
|
29
|
-
*/
|
|
30
|
-
declare const removeOrElse: {
|
|
31
|
-
<T, U>(value: NoInfer<T>, orElse: (target: ReadonlySet<NoInfer<T>>) => U): (target: ReadonlySet<T>) => Set<T> | U;
|
|
32
|
-
<T, U>(target: ReadonlySet<T>, value: NoInfer<T>, orElse: (target: ReadonlySet<NoInfer<T>>) => U): Set<T> | U;
|
|
33
|
-
};
|
|
34
|
-
//#endregion
|
|
35
|
-
export { removeOrElse };
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { dfdlT } from "@monstermann/dfdl";
|
|
2
|
-
import { cloneSet } from "@monstermann/remmi";
|
|
3
|
-
|
|
4
|
-
//#region src/Set/removeOrElse.ts
|
|
5
|
-
/**
|
|
6
|
-
* ```ts
|
|
7
|
-
* function Set.removeOrElse(target, value, orElse)
|
|
8
|
-
* ```
|
|
9
|
-
*
|
|
10
|
-
* Example
|
|
11
|
-
*
|
|
12
|
-
* ```ts
|
|
13
|
-
* import { Set } from "@monstermann/set";
|
|
14
|
-
*
|
|
15
|
-
* Set.removeOrElse(Set.create([1, 2, 3]), 2, (set) => set.size); // Set([1, 3])
|
|
16
|
-
* Set.removeOrElse(Set.create([1, 2, 3]), 4, (set) => set.size); // 3
|
|
17
|
-
* ```
|
|
18
|
-
*
|
|
19
|
-
* ```ts
|
|
20
|
-
* import { Set } from "@monstermann/set";
|
|
21
|
-
*
|
|
22
|
-
* pipe(
|
|
23
|
-
* Set.create([1, 2, 3]),
|
|
24
|
-
* Set.removeOrElse(2, (set) => set.size),
|
|
25
|
-
* ); // Set([1, 3])
|
|
26
|
-
*
|
|
27
|
-
* pipe(
|
|
28
|
-
* Set.create([1, 2, 3]),
|
|
29
|
-
* Set.removeOrElse(4, (set) => set.size),
|
|
30
|
-
* ); // 3
|
|
31
|
-
* ```
|
|
32
|
-
*/
|
|
33
|
-
const removeOrElse = dfdlT((target, value, orElse) => {
|
|
34
|
-
if (!target.has(value)) return orElse(target);
|
|
35
|
-
const result = cloneSet(target);
|
|
36
|
-
result.delete(value);
|
|
37
|
-
return result;
|
|
38
|
-
}, 3);
|
|
39
|
-
|
|
40
|
-
//#endregion
|
|
41
|
-
export { removeOrElse };
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
//#region src/Set/removeOrThrow.d.ts
|
|
2
|
-
/**
|
|
3
|
-
* ```ts
|
|
4
|
-
* function Set.removeOrThrow(target, value)
|
|
5
|
-
* ```
|
|
6
|
-
*
|
|
7
|
-
* Example
|
|
8
|
-
*
|
|
9
|
-
* ```ts
|
|
10
|
-
* import { Set } from "@monstermann/set";
|
|
11
|
-
*
|
|
12
|
-
* Set.removeOrThrow(Set.create([1, 2, 3]), 2); // Set([1, 3])
|
|
13
|
-
* Set.removeOrThrow(Set.create([1, 2, 3]), 4); // throws FnError
|
|
14
|
-
* ```
|
|
15
|
-
*
|
|
16
|
-
* ```ts
|
|
17
|
-
* import { Set } from "@monstermann/set";
|
|
18
|
-
*
|
|
19
|
-
* pipe(Set.create([1, 2, 3]), Set.removeOrThrow(2)); // Set([1, 3])
|
|
20
|
-
* pipe(Set.create([1, 2, 3]), Set.removeOrThrow(4)); // throws FnError
|
|
21
|
-
* ```
|
|
22
|
-
*/
|
|
23
|
-
declare const removeOrThrow: {
|
|
24
|
-
<T>(value: NoInfer<T>): (target: ReadonlySet<T>) => Set<T>;
|
|
25
|
-
<T>(target: ReadonlySet<T>, value: NoInfer<T>): Set<T>;
|
|
26
|
-
};
|
|
27
|
-
//#endregion
|
|
28
|
-
export { removeOrThrow };
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { dfdlT } from "@monstermann/dfdl";
|
|
2
|
-
import { cloneSet } from "@monstermann/remmi";
|
|
3
|
-
|
|
4
|
-
//#region src/Set/removeOrThrow.ts
|
|
5
|
-
/**
|
|
6
|
-
* ```ts
|
|
7
|
-
* function Set.removeOrThrow(target, value)
|
|
8
|
-
* ```
|
|
9
|
-
*
|
|
10
|
-
* Example
|
|
11
|
-
*
|
|
12
|
-
* ```ts
|
|
13
|
-
* import { Set } from "@monstermann/set";
|
|
14
|
-
*
|
|
15
|
-
* Set.removeOrThrow(Set.create([1, 2, 3]), 2); // Set([1, 3])
|
|
16
|
-
* Set.removeOrThrow(Set.create([1, 2, 3]), 4); // throws FnError
|
|
17
|
-
* ```
|
|
18
|
-
*
|
|
19
|
-
* ```ts
|
|
20
|
-
* import { Set } from "@monstermann/set";
|
|
21
|
-
*
|
|
22
|
-
* pipe(Set.create([1, 2, 3]), Set.removeOrThrow(2)); // Set([1, 3])
|
|
23
|
-
* pipe(Set.create([1, 2, 3]), Set.removeOrThrow(4)); // throws FnError
|
|
24
|
-
* ```
|
|
25
|
-
*/
|
|
26
|
-
const removeOrThrow = dfdlT((target, value) => {
|
|
27
|
-
if (!target.has(value)) throw new Error("Set.removeOrThrow: Value does not exist.");
|
|
28
|
-
const result = cloneSet(target);
|
|
29
|
-
result.delete(value);
|
|
30
|
-
return result;
|
|
31
|
-
}, 2);
|
|
32
|
-
|
|
33
|
-
//#endregion
|
|
34
|
-
export { removeOrThrow };
|