@shakerquiz/utilities 0.5.137 → 0.5.139
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 -1
- package/source/enumerations/method.js +0 -20
- package/source/enumerations/network.js +0 -20
- package/source/enumerations/route.js +0 -96
- package/source/enumerations/service.js +0 -20
- package/source/enumerations/store.js +0 -2
- package/source/functions/infer.js +27 -0
- package/source/index.js +1 -0
package/package.json
CHANGED
|
@@ -22,23 +22,3 @@ export var Methods = [
|
|
|
22
22
|
Method['PATCH'],
|
|
23
23
|
Method['DELETE'],
|
|
24
24
|
]
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* @returns {typeof Method[keyof typeof Method] | typeof Mode['Unknown']}
|
|
28
|
-
*/
|
|
29
|
-
export var inferMethod = value =>
|
|
30
|
-
value in Method
|
|
31
|
-
? Method[value]
|
|
32
|
-
: Mode['Unknown']
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* @throws {TypeError}
|
|
36
|
-
*/
|
|
37
|
-
export var guardMethod = value => {
|
|
38
|
-
var method = inferMethod(value)
|
|
39
|
-
|
|
40
|
-
if (method === Mode['Unknown'])
|
|
41
|
-
throw TypeError(`Cannot infer Method for '${value}'.`)
|
|
42
|
-
|
|
43
|
-
return method
|
|
44
|
-
}
|
|
@@ -9,23 +9,3 @@ export var Networks = [
|
|
|
9
9
|
Network['Docker'],
|
|
10
10
|
Network['Public'],
|
|
11
11
|
]
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* @returns {typeof Network[keyof typeof Network] | typeof Mode['Unknown']}
|
|
15
|
-
*/
|
|
16
|
-
export var inferNetwork = value =>
|
|
17
|
-
value in Method
|
|
18
|
-
? Method[value]
|
|
19
|
-
: Mode['Unknown']
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* @throws {TypeError}
|
|
23
|
-
*/
|
|
24
|
-
export var guardNetwork = value => {
|
|
25
|
-
var network = inferNetwork(value)
|
|
26
|
-
|
|
27
|
-
if (network === Mode['Unknown'])
|
|
28
|
-
throw TypeError(`Cannot infer Network for '${value}'.`)
|
|
29
|
-
|
|
30
|
-
return network
|
|
31
|
-
}
|
|
@@ -463,99 +463,3 @@ export var ServiceRoutes = {
|
|
|
463
463
|
|
|
464
464
|
[Service['Vkma']]: [],
|
|
465
465
|
}
|
|
466
|
-
|
|
467
|
-
/**
|
|
468
|
-
* @returns {typeof Route[keyof typeof Route] | typeof Mode['Unknown']}
|
|
469
|
-
*/
|
|
470
|
-
export var inferRoute = value =>
|
|
471
|
-
value in Route
|
|
472
|
-
? Route[value]
|
|
473
|
-
: Mode['Unknown']
|
|
474
|
-
|
|
475
|
-
/**
|
|
476
|
-
* @throws {TypeError}
|
|
477
|
-
*/
|
|
478
|
-
export var guardRoute = value => {
|
|
479
|
-
var route = inferRoute(value)
|
|
480
|
-
|
|
481
|
-
if (route === Mode['Unknown'])
|
|
482
|
-
throw TypeError(`Cannot infer Route for '${value}'.`)
|
|
483
|
-
|
|
484
|
-
return route
|
|
485
|
-
}
|
|
486
|
-
|
|
487
|
-
/**
|
|
488
|
-
* @returns {typeof RouteNumerosity[keyof typeof RouteNumerosity] | typeof Mode['Unknown']}
|
|
489
|
-
*/
|
|
490
|
-
export var inferRouteNumerosity = value =>
|
|
491
|
-
value in RouteNumerosity
|
|
492
|
-
? RouteNumerosity[value]
|
|
493
|
-
: Mode['Unknown']
|
|
494
|
-
|
|
495
|
-
/**
|
|
496
|
-
* @returns {typeof RouteService[keyof typeof RouteService] | typeof Mode['Unknown']}
|
|
497
|
-
*/
|
|
498
|
-
export var inferRouteService = value =>
|
|
499
|
-
value in RouteService
|
|
500
|
-
? RouteService[value]
|
|
501
|
-
: Mode['Unknown']
|
|
502
|
-
|
|
503
|
-
/**
|
|
504
|
-
* @throws {TypeError}
|
|
505
|
-
*/
|
|
506
|
-
export var guardRouteService = value => {
|
|
507
|
-
var service = inferRouteService(value)
|
|
508
|
-
|
|
509
|
-
if (service === Mode['Unknown'])
|
|
510
|
-
throw TypeError(`Cannot infer RouteService for '${value}'.`)
|
|
511
|
-
|
|
512
|
-
return service
|
|
513
|
-
}
|
|
514
|
-
|
|
515
|
-
/**
|
|
516
|
-
* @returns {typeof RouteRelation[keyof typeof RouteRelation] | typeof Mode['Unknown']}
|
|
517
|
-
*/
|
|
518
|
-
export var inferRouteRelation = value =>
|
|
519
|
-
value in RouteRelation
|
|
520
|
-
? RouteRelation[value]
|
|
521
|
-
: Mode['Unknown']
|
|
522
|
-
|
|
523
|
-
/**
|
|
524
|
-
* @returns {typeof RoutePathname[keyof typeof RoutePathname] | typeof Mode['Unknown']}
|
|
525
|
-
*/
|
|
526
|
-
export var inferRoutePathname = value =>
|
|
527
|
-
value in RoutePathname
|
|
528
|
-
? RoutePathname[value]
|
|
529
|
-
: Mode['Unknown']
|
|
530
|
-
|
|
531
|
-
/**
|
|
532
|
-
* @throws {TypeError}
|
|
533
|
-
*/
|
|
534
|
-
export var guardRoutePathname = value => {
|
|
535
|
-
var pathname = inferRoutePathname(value)
|
|
536
|
-
|
|
537
|
-
if (pathname === Mode['Unknown'])
|
|
538
|
-
throw TypeError(`Cannot infer RoutePathname for '${value}'.`)
|
|
539
|
-
|
|
540
|
-
return pathname
|
|
541
|
-
}
|
|
542
|
-
|
|
543
|
-
/**
|
|
544
|
-
* @returns {typeof RouteParams[keyof typeof RouteParams] | typeof Mode['Unknown']}
|
|
545
|
-
*/
|
|
546
|
-
export var inferRouteParams = value =>
|
|
547
|
-
value in RouteParams
|
|
548
|
-
? RouteParams[value]
|
|
549
|
-
: Mode['Unknown']
|
|
550
|
-
|
|
551
|
-
/**
|
|
552
|
-
* @throws {TypeError}
|
|
553
|
-
*/
|
|
554
|
-
export var guardRouteParams = value => {
|
|
555
|
-
var params = inferRouteParams(value)
|
|
556
|
-
|
|
557
|
-
if (params === Mode['Unknown'])
|
|
558
|
-
throw TypeError(`Cannot infer RouteParams for '${value}'.`)
|
|
559
|
-
|
|
560
|
-
return params
|
|
561
|
-
}
|
|
@@ -39,23 +39,3 @@ export var Services = [
|
|
|
39
39
|
Service['Vkma'],
|
|
40
40
|
Service['Minio'],
|
|
41
41
|
]
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* @returns {typeof Service[keyof typeof Service] | typeof Mode['Unknown']}
|
|
45
|
-
*/
|
|
46
|
-
export var inferService = value =>
|
|
47
|
-
value in Service
|
|
48
|
-
? Service[value]
|
|
49
|
-
: Mode['Unknown']
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* @throws {TypeError}
|
|
53
|
-
*/
|
|
54
|
-
export var guardService = value => {
|
|
55
|
-
var service = inferService(value)
|
|
56
|
-
|
|
57
|
-
if (service === Mode['Unknown'])
|
|
58
|
-
throw TypeError(`Cannot infer Service for '${value}'.`)
|
|
59
|
-
|
|
60
|
-
return service
|
|
61
|
-
}
|
|
@@ -6,8 +6,6 @@ export var StoreKey = {
|
|
|
6
6
|
'currency': /^GET\/currency\/.+$/,
|
|
7
7
|
'timezone': /^GET\/timezone\/[A-Za-z_]+\/[A-Za-z_]+$/,
|
|
8
8
|
'city': /^GET\/city\/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/,
|
|
9
|
-
'city/venue':
|
|
10
|
-
/^GET\/city\/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\/venues\/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/,
|
|
11
9
|
'venue': /^GET\/venue\/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/,
|
|
12
10
|
'theme': /^GET\/theme\/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/,
|
|
13
11
|
'game': /^GET\/game\/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/,
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Mode } from '../enumerations/mode.js'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @template {*} E
|
|
5
|
+
*
|
|
6
|
+
* @param {E} Enumeration
|
|
7
|
+
* @param {E[keyof E]} value
|
|
8
|
+
*/
|
|
9
|
+
export var inferKey = (Enumeration, value) =>
|
|
10
|
+
value in Enumeration
|
|
11
|
+
? Enumeration[value]
|
|
12
|
+
: Mode['Unknown']
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* @template {*} E
|
|
16
|
+
*
|
|
17
|
+
* @param {E} Enumeration
|
|
18
|
+
* @param {E[keyof E]} value
|
|
19
|
+
*/
|
|
20
|
+
export var guardKey = (Enumeration, value) => {
|
|
21
|
+
var key = inferKey(Enumeration, value)
|
|
22
|
+
|
|
23
|
+
if (key === Mode['Unknown'])
|
|
24
|
+
throw TypeError(`Cannot infer enum key '${value}'.`)
|
|
25
|
+
|
|
26
|
+
return key
|
|
27
|
+
}
|
package/source/index.js
CHANGED
|
@@ -32,5 +32,6 @@ export * from './enumerations/venue/city-mode.js'
|
|
|
32
32
|
export * from './enumerations/venue/status.js'
|
|
33
33
|
|
|
34
34
|
export * from './functions/hydrate-route-pathname.js'
|
|
35
|
+
export * from './functions/infer.js'
|
|
35
36
|
export * from './functions/route-key.js'
|
|
36
37
|
export * from './functions/tag.js'
|