maleo-enums 0.0.17__py3-none-any.whl → 0.0.20__py3-none-any.whl

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.
@@ -1,11 +1,16 @@
1
1
  from enum import StrEnum
2
2
  from typing import List, Optional, Sequence
3
+ from maleo.types.string import ListOfStrings
3
4
 
4
5
 
5
6
  class Cardinality(StrEnum):
6
7
  MULTIPLE = "multiple"
7
8
  SINGLE = "single"
8
9
 
10
+ @classmethod
11
+ def choices(cls) -> ListOfStrings:
12
+ return [e.value for e in cls]
13
+
9
14
 
10
15
  OptionalCardinality = Optional[Cardinality]
11
16
  ListOfCardinalities = List[Cardinality]
@@ -36,6 +41,10 @@ class Relationship(StrEnum):
36
41
  OPTIONAL_MANY_TO_MANY = "optional_many_to_many"
37
42
  OPTIONAL_MANY_TO_OPTIONAL_MANY = "optional_many_to_optional_many"
38
43
 
44
+ @classmethod
45
+ def choices(cls) -> ListOfStrings:
46
+ return [e.value for e in cls]
47
+
39
48
 
40
49
  OptionalRelationship = Optional[Relationship]
41
50
  ListOfRelationships = List[Relationship]
maleo/enums/connection.py CHANGED
@@ -1,5 +1,6 @@
1
1
  from enum import StrEnum
2
2
  from typing import List, Optional, Sequence, TypeVar, Union
3
+ from maleo.types.string import ListOfStrings
3
4
 
4
5
 
5
6
  class Scheme(StrEnum):
@@ -8,6 +9,10 @@ class Scheme(StrEnum):
8
9
  WS = "ws"
9
10
  WSS = "wss"
10
11
 
12
+ @classmethod
13
+ def choices(cls) -> ListOfStrings:
14
+ return [e.value for e in cls]
15
+
11
16
 
12
17
  SchemeT = TypeVar("SchemeT", bound=Scheme)
13
18
  OptionalScheme = Optional[Scheme]
@@ -22,6 +27,10 @@ class Protocol(StrEnum):
22
27
  HTTP = "http"
23
28
  WEBSOCKET = "websocket"
24
29
 
30
+ @classmethod
31
+ def choices(cls) -> ListOfStrings:
32
+ return [e.value for e in cls]
33
+
25
34
  @classmethod
26
35
  def from_scheme(cls, scheme: Union[Scheme, str]) -> "Protocol":
27
36
  # Normalize to Scheme if it's a string
@@ -46,6 +55,10 @@ class Method(StrEnum):
46
55
  DELETE = "DELETE"
47
56
  OPTIONS = "OPTIONS"
48
57
 
58
+ @classmethod
59
+ def choices(cls) -> ListOfStrings:
60
+ return [e.value for e in cls]
61
+
49
62
 
50
63
  MethodT = TypeVar("MethodT", bound=Method)
51
64
  OptionalMethod = Optional[Method]
@@ -139,6 +152,10 @@ class Header(StrEnum):
139
152
  # --- Experimental / Misc ---
140
153
  X_NEW_AUTHORIZATION = "x-new-authorization"
141
154
 
155
+ @classmethod
156
+ def choices(cls) -> ListOfStrings:
157
+ return [e.value for e in cls]
158
+
142
159
 
143
160
  HeaderT = TypeVar("HeaderT", bound=Header)
144
161
  OptionalHeader = Optional[Header]
@@ -1,5 +1,6 @@
1
1
  from enum import StrEnum
2
2
  from typing import List, Optional, Sequence
3
+ from maleo.types.string import ListOfStrings
3
4
 
4
5
 
5
6
  class Environment(StrEnum):
@@ -7,6 +8,10 @@ class Environment(StrEnum):
7
8
  STAGING = "staging"
8
9
  PRODUCTION = "production"
9
10
 
11
+ @classmethod
12
+ def choices(cls) -> ListOfStrings:
13
+ return [e.value for e in cls]
14
+
10
15
 
11
16
  OptionalEnvironment = Optional[Environment]
12
17
  ListOfEnvironments = List[Environment]
maleo/enums/expiration.py CHANGED
@@ -1,5 +1,6 @@
1
1
  from enum import IntEnum
2
2
  from typing import List, Optional, Sequence
3
+ from maleo.types.integer import ListOfIntegers
3
4
 
4
5
 
5
6
  class Expiration(IntEnum):
@@ -19,6 +20,10 @@ class Expiration(IntEnum):
19
20
  EXP_2WK = int(2 * 7 * 24 * 60 * 60)
20
21
  EXP_1MO = int(1 * 30 * 24 * 60 * 60)
21
22
 
23
+ @classmethod
24
+ def choices(cls) -> ListOfIntegers:
25
+ return [e.value for e in cls]
26
+
22
27
 
23
28
  OptionalExpiration = Optional[Expiration]
24
29
  ListOfExpirations = List[Expiration]
maleo/enums/order.py CHANGED
@@ -1,11 +1,16 @@
1
1
  from enum import StrEnum
2
2
  from typing import List, Optional, Sequence
3
+ from maleo.types.string import ListOfStrings
3
4
 
4
5
 
5
6
  class Order(StrEnum):
6
7
  ASC = "asc"
7
8
  DESC = "desc"
8
9
 
10
+ @classmethod
11
+ def choices(cls) -> ListOfStrings:
12
+ return [e.value for e in cls]
13
+
9
14
 
10
15
  OptionalOrder = Optional[Order]
11
16
  ListOfOrders = List[Order]
maleo/enums/service.py CHANGED
@@ -1,11 +1,16 @@
1
1
  from enum import StrEnum
2
2
  from typing import List, Optional, Sequence
3
+ from maleo.types.string import ListOfStrings
3
4
 
4
5
 
5
6
  class ServiceType(StrEnum):
6
7
  BACKEND = "backend"
7
8
  FRONTEND = "frontend"
8
9
 
10
+ @classmethod
11
+ def choices(cls) -> ListOfStrings:
12
+ return [e.value for e in cls]
13
+
9
14
 
10
15
  OptionalServiceType = Optional[ServiceType]
11
16
  ListOfServiceTypes = List[ServiceType]
@@ -18,6 +23,10 @@ class Category(StrEnum):
18
23
  CORE = "core"
19
24
  AI = "ai"
20
25
 
26
+ @classmethod
27
+ def choices(cls) -> ListOfStrings:
28
+ return [e.value for e in cls]
29
+
21
30
 
22
31
  OptionalCategory = Optional[Category]
23
32
  ListOfCategories = List[Category]
@@ -43,6 +52,10 @@ class SimpleKey(StrEnum):
43
52
  IMAGING = "imaging"
44
53
  MCU = "mcu"
45
54
 
55
+ @classmethod
56
+ def choices(cls) -> ListOfStrings:
57
+ return [e.value for e in cls]
58
+
46
59
 
47
60
  OptionalSimpleKey = Optional[SimpleKey]
48
61
  ListOfSimpleKeys = List[SimpleKey]
@@ -68,6 +81,10 @@ class Key(StrEnum):
68
81
  IMAGING = "maleo-imaging"
69
82
  MCU = "maleo-mcu"
70
83
 
84
+ @classmethod
85
+ def choices(cls) -> ListOfStrings:
86
+ return [e.value for e in cls]
87
+
71
88
 
72
89
  OptionalKey = Optional[Key]
73
90
  ListOfKeys = List[Key]
@@ -93,6 +110,10 @@ class SimpleName(StrEnum):
93
110
  IMAGING = "Imaging"
94
111
  MCU = "MCU"
95
112
 
113
+ @classmethod
114
+ def choices(cls) -> ListOfStrings:
115
+ return [e.value for e in cls]
116
+
96
117
 
97
118
  OptionalSimpleName = Optional[SimpleName]
98
119
  ListOfSimpleNames = List[SimpleName]
@@ -118,6 +139,10 @@ class Name(StrEnum):
118
139
  IMAGING = "MaleoImaging"
119
140
  MCU = "MaleoMCU"
120
141
 
142
+ @classmethod
143
+ def choices(cls) -> ListOfStrings:
144
+ return [e.value for e in cls]
145
+
121
146
 
122
147
  OptionalName = Optional[Name]
123
148
  ListOfNames = List[Name]
maleo/enums/status.py CHANGED
@@ -1,5 +1,6 @@
1
1
  from enum import StrEnum
2
2
  from typing import List, Optional, Sequence
3
+ from maleo.types.string import ListOfStrings
3
4
 
4
5
 
5
6
  class DataStatus(StrEnum):
@@ -7,6 +8,10 @@ class DataStatus(StrEnum):
7
8
  INACTIVE = "inactive"
8
9
  ACTIVE = "active"
9
10
 
11
+ @classmethod
12
+ def choices(cls) -> ListOfStrings:
13
+ return [e.value for e in cls]
14
+
10
15
 
11
16
  OptionalDataStatus = Optional[DataStatus]
12
17
  ListOfDataStatuses = List[DataStatus]
@@ -0,0 +1,18 @@
1
+ from enum import StrEnum
2
+ from maleo.types.string import ListOfStrings
3
+
4
+
5
+ class Key(StrEnum):
6
+ ADMINISTRATOR = "administrator"
7
+ ANALYST = "analyst"
8
+ ENGINEER = "engineer"
9
+ SUPPORT = "support"
10
+ MANAGER = "manager"
11
+ OFFICER = "officer"
12
+ OPERATIONS = "operations"
13
+ SECURITY = "security"
14
+ TESTER = "tester"
15
+
16
+ @classmethod
17
+ def choices(cls) -> ListOfStrings:
18
+ return [e.value for e in cls]
@@ -1,26 +1,28 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: maleo-enums
3
- Version: 0.0.17
3
+ Version: 0.0.20
4
4
  Summary: Enums package for MaleoSuite
5
5
  Author-email: Agra Bima Yuda <agra@nexmedis.com>
6
6
  License: Proprietary
7
7
  Requires-Python: >=3.12
8
8
  Description-Content-Type: text/markdown
9
9
  License-File: LICENSE
10
- Requires-Dist: black>=25.1.0
11
- Requires-Dist: cfgv>=3.4.0
12
- Requires-Dist: click>=8.2.1
13
- Requires-Dist: distlib>=0.4.0
14
- Requires-Dist: filelock>=3.19.1
15
- Requires-Dist: identify>=2.6.13
16
- Requires-Dist: mypy_extensions>=1.1.0
17
- Requires-Dist: nodeenv>=1.9.1
18
- Requires-Dist: packaging>=25.0
19
- Requires-Dist: pathspec>=0.12.1
20
- Requires-Dist: platformdirs>=4.4.0
21
- Requires-Dist: pre_commit>=4.3.0
22
- Requires-Dist: PyYAML>=6.0.2
23
- Requires-Dist: virtualenv>=20.34.0
10
+ Requires-Dist: black==25.1.0
11
+ Requires-Dist: cfgv==3.4.0
12
+ Requires-Dist: click==8.2.1
13
+ Requires-Dist: colorama==0.4.6
14
+ Requires-Dist: distlib==0.4.0
15
+ Requires-Dist: filelock==3.19.1
16
+ Requires-Dist: identify==2.6.13
17
+ Requires-Dist: maleo-types==0.0.4
18
+ Requires-Dist: mypy_extensions==1.1.0
19
+ Requires-Dist: nodeenv==1.9.1
20
+ Requires-Dist: packaging==25.0
21
+ Requires-Dist: pathspec==0.12.1
22
+ Requires-Dist: platformdirs==4.4.0
23
+ Requires-Dist: pre_commit==4.3.0
24
+ Requires-Dist: PyYAML==6.0.2
25
+ Requires-Dist: virtualenv==20.34.0
24
26
  Dynamic: license-file
25
27
 
26
28
  # README #
@@ -0,0 +1,14 @@
1
+ maleo/enums/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ maleo/enums/cardinality.py,sha256=XTf3li1y9i5HUSDYyYntaOT8AN7nFMjFWBFiyQIyODc,1829
3
+ maleo/enums/connection.py,sha256=jXww92ACMyvVPn1fGte7tbpj64LuyjzWKCeu835x2o0,4793
4
+ maleo/enums/environment.py,sha256=uyHMsJIGTujJ_d_maM3RO6A79W9uhhScRlgWiT48R40,569
5
+ maleo/enums/expiration.py,sha256=G7iDMQIOTQzUkx_nQFe04p-nwGz2OYqZJo98H63AO6U,957
6
+ maleo/enums/order.py,sha256=XxwsoKnptfetEu-R0SQNqFsJPCP8qrhYycRFZE43b74,463
7
+ maleo/enums/service.py,sha256=gyVmRDe5L05XD07OnPn3ZgdUyme7Ie2g3-WdffmiMCI,3766
8
+ maleo/enums/status.py,sha256=qWT5pcJ-29Jd6FUs_vlUThGHzMXRQV1sfqGzVx_ExIM,784
9
+ maleo/enums/system_role.py,sha256=WSpyNGNuJ4yQBHLyRv8_J1DtYdd2h-1HwVOv1gU1QM8,423
10
+ maleo_enums-0.0.20.dist-info/licenses/LICENSE,sha256=aftGsecnk7TWVX-7KW94FqK4Syy6YSZ8PZEF7EcIp3M,2621
11
+ maleo_enums-0.0.20.dist-info/METADATA,sha256=PwedYAThZ7EFKVLo95bukewNSBqc5Lhxr0BI-N-qP0g,1345
12
+ maleo_enums-0.0.20.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
13
+ maleo_enums-0.0.20.dist-info/top_level.txt,sha256=3Tpd1siVsfYoeI9FEOJNYnffx_shzZ3wsPpTvz5bljc,6
14
+ maleo_enums-0.0.20.dist-info/RECORD,,
@@ -1,13 +0,0 @@
1
- maleo/enums/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- maleo/enums/cardinality.py,sha256=VWqMB6j8gxe5VtyUyLJIr_B0vzIRU144HuujHlujRHI,1594
3
- maleo/enums/connection.py,sha256=zxqcqf2qjGBr-iQYrl7laQqngoEfCy8A24OLjboLvgw,4368
4
- maleo/enums/environment.py,sha256=1deZOMXcrRuLc9kZTeciU0QhlGaUXbG56DSdQ40LqqQ,429
5
- maleo/enums/expiration.py,sha256=Jld9-BYA0K4zTfUwdXKXmnPyi_YLA-39uamiVLNJeJw,814
6
- maleo/enums/order.py,sha256=x4p5--jIcHHixdDTlXy04u_Xja7DnEFhGnxAjT6uI_0,323
7
- maleo/enums/service.py,sha256=TGm4gGvZmPFSf-DSu2b1t04fxsDTIUqu4g7PyovBx18,3151
8
- maleo/enums/status.py,sha256=2puZRw8fafKxyNtr5xn69UMU2jFKnAVuyJPE5KVGSxQ,644
9
- maleo_enums-0.0.17.dist-info/licenses/LICENSE,sha256=aftGsecnk7TWVX-7KW94FqK4Syy6YSZ8PZEF7EcIp3M,2621
10
- maleo_enums-0.0.17.dist-info/METADATA,sha256=-FAT34-uEoG-wsNoQxsP3R10KrChnAwfQzgtJR1pGoc,1280
11
- maleo_enums-0.0.17.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
12
- maleo_enums-0.0.17.dist-info/top_level.txt,sha256=3Tpd1siVsfYoeI9FEOJNYnffx_shzZ3wsPpTvz5bljc,6
13
- maleo_enums-0.0.17.dist-info/RECORD,,