@shakerquiz/utilities 0.5.37 → 0.5.38

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.37",
4
+ "version": "0.5.38",
5
5
  "author": "yurkimus <yurkimus@gmail.com>",
6
6
  "license": "ISC",
7
7
  "scripts": {
@@ -13,7 +13,7 @@ export var CitiesModeTitle = {
13
13
  [CitiesMode.many]: 'Несколько городов',
14
14
  [CitiesMode.single]: 'Один город',
15
15
  [CitiesMode.none]: 'Нет городов',
16
- [CitiesMode.unknown]: 'Неизвестное состояние',
16
+ [CitiesMode.unknown]: 'Неизвестно',
17
17
  }
18
18
 
19
19
  /**
@@ -25,10 +25,8 @@ export var getCitiesMode = value => {
25
25
  return value
26
26
 
27
27
  case 'object':
28
- if (value?.length === 1)
29
- return CitiesMode.single
30
- else if (value?.length > 1)
31
- return CitiesMode.many
28
+ if (typeof value?.mode === 'string')
29
+ return value.mode
32
30
  else
33
31
  return CitiesMode.unknown
34
32
 
@@ -6,6 +6,7 @@ export var Role = /** @type {const} */ ({
6
6
  'user': 'user',
7
7
  'manager': 'manager',
8
8
  'default': 'default',
9
+ 'unknown': 'unknown',
9
10
  })
10
11
 
11
12
  export var Roles = Object.values(Role)
@@ -18,6 +19,7 @@ export var RoleWeight = {
18
19
  [Role.user]: 4,
19
20
  [Role.manager]: 5,
20
21
  [Role.default]: 6,
22
+ [Role.unknown]: 7,
21
23
  }
22
24
 
23
25
  export var RoleTitle = {
@@ -28,6 +30,7 @@ export var RoleTitle = {
28
30
  [Role.user]: 'Пользователь',
29
31
  [Role.manager]: 'Менеджер',
30
32
  [Role.default]: 'Неавторизован',
33
+ [Role.unknown]: 'Неизвестно',
31
34
  }
32
35
 
33
36
  export var RoleActionTitle = {
@@ -38,6 +41,7 @@ export var RoleActionTitle = {
38
41
  [Role.user]: 'Сделать пользователем',
39
42
  [Role.manager]: 'Сделать менеджером',
40
43
  [Role.default]: 'Сделать неавторизованым',
44
+ [Role.unknown]: 'Неизвестно',
41
45
  }
42
46
 
43
47
  export var RoleActionDescription = {
@@ -48,6 +52,7 @@ export var RoleActionDescription = {
48
52
  [Role.user]: 'Назначить роль: Пользователь',
49
53
  [Role.manager]: 'Назначить роль: Менеджер',
50
54
  [Role.default]: 'Назначить роль: Неавторизован',
55
+ [Role.unknown]: 'Неизвестно',
51
56
  }
52
57
 
53
58
  export var RoleColor = {
@@ -58,6 +63,7 @@ export var RoleColor = {
58
63
  [Role.user]: 'default',
59
64
  [Role.manager]: 'default',
60
65
  [Role.default]: 'default',
66
+ [Role.unknown]: 'danger',
61
67
  }
62
68
 
63
69
  export var RoleTextColor = {
@@ -68,6 +74,7 @@ export var RoleTextColor = {
68
74
  [Role.user]: 'text-default',
69
75
  [Role.manager]: 'text-default',
70
76
  [Role.default]: 'text-default',
77
+ [Role.unknown]: 'text-danger',
71
78
  }
72
79
 
73
80
  /** @type {Record<Role, Icon>} */
@@ -79,4 +86,24 @@ export var RoleIcon = {
79
86
  [Role.user]: 'hero/outline/user',
80
87
  [Role.manager]: 'hero/outline/user',
81
88
  [Role.default]: 'hero/outline/user',
89
+ [Role.unknown]: 'hero/outline/no-symbol',
90
+ }
91
+
92
+ /**
93
+ * @param {*} value
94
+ */
95
+ export var getRoleMode = value => {
96
+ switch (typeof value) {
97
+ case 'string':
98
+ return value
99
+
100
+ case 'object':
101
+ if (typeof value?.mode === 'string')
102
+ return value.mode
103
+ else
104
+ return Role.unknown
105
+
106
+ default:
107
+ return Role.unknown
108
+ }
82
109
  }