@naturalcycles/js-lib 14.188.0 → 14.188.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/enum.util.d.ts +7 -7
- package/package.json +1 -1
- package/src/enum.util.ts +10 -8
package/dist/enum.util.d.ts
CHANGED
|
@@ -2,15 +2,15 @@ import type { NumberEnum, StringEnum } from './types';
|
|
|
2
2
|
/**
|
|
3
3
|
* Returns all String keys of a number-enum.
|
|
4
4
|
*/
|
|
5
|
-
export declare function _numberEnumKeys(en:
|
|
5
|
+
export declare function _numberEnumKeys<T extends NumberEnum>(en: T): (keyof T)[];
|
|
6
6
|
/**
|
|
7
7
|
* Returns all Number values of a number-enum.
|
|
8
8
|
*/
|
|
9
|
-
export declare function _numberEnumValues(en:
|
|
9
|
+
export declare function _numberEnumValues<T extends NumberEnum>(en: T): T[keyof T][];
|
|
10
10
|
/**
|
|
11
11
|
* Returns all String keys of a string-enum.
|
|
12
12
|
*/
|
|
13
|
-
export declare function _stringEnumKeys(en:
|
|
13
|
+
export declare function _stringEnumKeys<T extends StringEnum>(en: T): (keyof T)[];
|
|
14
14
|
/**
|
|
15
15
|
* Returns all String values of a string-enum.
|
|
16
16
|
*/
|
|
@@ -21,22 +21,22 @@ export declare function _stringEnumValues<T extends StringEnum>(en: T): T[keyof
|
|
|
21
21
|
*
|
|
22
22
|
* Doesn't work on String-enums!
|
|
23
23
|
*/
|
|
24
|
-
export declare function _numberEnumEntries<T extends NumberEnum>(en: T): [k:
|
|
24
|
+
export declare function _numberEnumEntries<T extends NumberEnum>(en: T): [k: keyof T, v: T[keyof T]][];
|
|
25
25
|
/**
|
|
26
26
|
* Like _numberEnumEntries, but reversed.
|
|
27
27
|
* So, keys are Numbers, values are Strings.
|
|
28
28
|
*/
|
|
29
|
-
export declare function _numberEnumEntriesReversed<T extends NumberEnum>(en: T): [k:
|
|
29
|
+
export declare function _numberEnumEntriesReversed<T extends NumberEnum>(en: T): [k: T[keyof T], v: keyof T][];
|
|
30
30
|
/**
|
|
31
31
|
* Like _numberEnumEntries, but as a Map.
|
|
32
32
|
* Keys are Strings, values are Numbers.
|
|
33
33
|
*/
|
|
34
|
-
export declare function _numberEnumAsMap<T extends NumberEnum>(en: T): Map<
|
|
34
|
+
export declare function _numberEnumAsMap<T extends NumberEnum>(en: T): Map<keyof T, T[keyof T]>;
|
|
35
35
|
/**
|
|
36
36
|
* Like _numberEnumEntriesReversed, but as a Map.
|
|
37
37
|
* Keys are Numbers (actual Numbers, because it's a Map, not an Object), values are Strings.
|
|
38
38
|
*/
|
|
39
|
-
export declare function _numberEnumAsMapReversed<T extends NumberEnum>(en: T): Map<
|
|
39
|
+
export declare function _numberEnumAsMapReversed<T extends NumberEnum>(en: T): Map<T[keyof T], keyof T>;
|
|
40
40
|
/**
|
|
41
41
|
* Returns all string-enum "entries", where entry is a tuple of [key, value],
|
|
42
42
|
* where key is a String key, value is a String value, typed as Enum itself.
|
package/package.json
CHANGED
package/src/enum.util.ts
CHANGED
|
@@ -3,21 +3,21 @@ import type { NumberEnum, StringEnum } from './types'
|
|
|
3
3
|
/**
|
|
4
4
|
* Returns all String keys of a number-enum.
|
|
5
5
|
*/
|
|
6
|
-
export function _numberEnumKeys(en:
|
|
6
|
+
export function _numberEnumKeys<T extends NumberEnum>(en: T): (keyof T)[] {
|
|
7
7
|
return Object.values(en).filter(k => typeof k === 'string') as string[]
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* Returns all Number values of a number-enum.
|
|
12
12
|
*/
|
|
13
|
-
export function _numberEnumValues(en:
|
|
14
|
-
return Object.values(en).filter(k => typeof k === 'number') as
|
|
13
|
+
export function _numberEnumValues<T extends NumberEnum>(en: T): T[keyof T][] {
|
|
14
|
+
return Object.values(en).filter(k => typeof k === 'number') as any[]
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
18
|
* Returns all String keys of a string-enum.
|
|
19
19
|
*/
|
|
20
|
-
export function _stringEnumKeys(en:
|
|
20
|
+
export function _stringEnumKeys<T extends StringEnum>(en: T): (keyof T)[] {
|
|
21
21
|
return Object.keys(en)
|
|
22
22
|
}
|
|
23
23
|
|
|
@@ -35,7 +35,7 @@ export function _stringEnumValues<T extends StringEnum>(en: T): T[keyof T][] {
|
|
|
35
35
|
*
|
|
36
36
|
* Doesn't work on String-enums!
|
|
37
37
|
*/
|
|
38
|
-
export function _numberEnumEntries<T extends NumberEnum>(en: T): [k:
|
|
38
|
+
export function _numberEnumEntries<T extends NumberEnum>(en: T): [k: keyof T, v: T[keyof T]][] {
|
|
39
39
|
return Object.values(en)
|
|
40
40
|
.filter(k => typeof k === 'string')
|
|
41
41
|
.map(k => [k, en[k]]) as any
|
|
@@ -45,7 +45,9 @@ export function _numberEnumEntries<T extends NumberEnum>(en: T): [k: string, v:
|
|
|
45
45
|
* Like _numberEnumEntries, but reversed.
|
|
46
46
|
* So, keys are Numbers, values are Strings.
|
|
47
47
|
*/
|
|
48
|
-
export function _numberEnumEntriesReversed<T extends NumberEnum>(
|
|
48
|
+
export function _numberEnumEntriesReversed<T extends NumberEnum>(
|
|
49
|
+
en: T,
|
|
50
|
+
): [k: T[keyof T], v: keyof T][] {
|
|
49
51
|
return Object.values(en)
|
|
50
52
|
.filter(k => typeof k === 'string')
|
|
51
53
|
.map(k => [en[k], k]) as any
|
|
@@ -55,7 +57,7 @@ export function _numberEnumEntriesReversed<T extends NumberEnum>(en: T): [k: num
|
|
|
55
57
|
* Like _numberEnumEntries, but as a Map.
|
|
56
58
|
* Keys are Strings, values are Numbers.
|
|
57
59
|
*/
|
|
58
|
-
export function _numberEnumAsMap<T extends NumberEnum>(en: T): Map<
|
|
60
|
+
export function _numberEnumAsMap<T extends NumberEnum>(en: T): Map<keyof T, T[keyof T]> {
|
|
59
61
|
return new Map(
|
|
60
62
|
Object.values(en)
|
|
61
63
|
.filter(k => typeof k === 'string')
|
|
@@ -67,7 +69,7 @@ export function _numberEnumAsMap<T extends NumberEnum>(en: T): Map<string, T[key
|
|
|
67
69
|
* Like _numberEnumEntriesReversed, but as a Map.
|
|
68
70
|
* Keys are Numbers (actual Numbers, because it's a Map, not an Object), values are Strings.
|
|
69
71
|
*/
|
|
70
|
-
export function _numberEnumAsMapReversed<T extends NumberEnum>(en: T): Map<
|
|
72
|
+
export function _numberEnumAsMapReversed<T extends NumberEnum>(en: T): Map<T[keyof T], keyof T> {
|
|
71
73
|
return new Map(
|
|
72
74
|
Object.values(en)
|
|
73
75
|
.filter(k => typeof k === 'string')
|