@shakerquiz/utilities 0.5.99 → 0.5.100

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "@shakerquiz/utilities",
4
- "version": "0.5.99",
4
+ "version": "0.5.100",
5
5
  "author": "yurkimus <yurkimus@gmail.com>",
6
6
  "license": "ISC",
7
7
  "repository": {
@@ -1,32 +1,43 @@
1
1
  export var VenueStatus = /** @type {const} */ ({
2
2
  'ACTIVE': 'ACTIVE',
3
3
  'ARCHIVE': 'ARCHIVE',
4
+ 'UNKNOWN': 'UNKNOWN',
4
5
  })
5
6
 
6
7
  export var VenueStatuses = Object.values(VenueStatus)
7
8
 
8
9
  export var VenueStatusWeight = {
9
- [VenueStatus.ACTIVE]: 0,
10
- [VenueStatus.ARCHIVE]: 1,
10
+ [VenueStatus['ACTIVE']]: 0,
11
+ [VenueStatus['ARCHIVE']]: 1,
11
12
  }
12
13
 
13
14
  export var VenueStatusTitle = {
14
- [VenueStatus.ACTIVE]: 'Активно',
15
- [VenueStatus.ARCHIVE]: 'Архив',
15
+ [VenueStatus['ACTIVE']]: 'Активно',
16
+ [VenueStatus['ARCHIVE']]: 'Архив',
17
+ [VenueStatus['UNKNOWN']]: 'Неизвестно',
16
18
  }
17
19
 
18
- export var VenueStatusColor = {
19
- [VenueStatus.ACTIVE]: 'success',
20
- [VenueStatus.ARCHIVE]: 'current',
20
+ /** @type {Record<VenueStatus, Icon>} */
21
+ export var VenueStatusIcon = {
22
+ [VenueStatus['ACTIVE']]: 'hero/outline/check',
23
+ [VenueStatus['ARCHIVE']]: 'hero/outline/archive-box',
24
+ [VenueStatus['UNKNOWN']]: 'hero/outline/no-symbol',
21
25
  }
22
26
 
23
- export var VenueStatusTextColor = {
24
- [VenueStatus.ACTIVE]: 'text-success',
25
- [VenueStatus.ARCHIVE]: 'text-current',
26
- }
27
+ var get = value =>
28
+ value in VenueStatus
29
+ ? value
30
+ : VenueStatus['UNKNOWN']
27
31
 
28
- /** @type {Record<VenueStatus, Icon>} */
29
- export var VenueStatusIcon = {
30
- [VenueStatus.ACTIVE]: 'hero/outline/check',
31
- [VenueStatus.ARCHIVE]: 'hero/outline/archive-box',
32
+ export var getVenueStatus = value => {
33
+ switch (typeof value) {
34
+ case 'string':
35
+ return get(value)
36
+
37
+ case 'object':
38
+ return get(value?.status)
39
+
40
+ default:
41
+ return get(undefined)
42
+ }
32
43
  }