passphera-core 0.28.0__py3-none-any.whl → 0.30.0__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,5 +1,3 @@
1
- from uuid import UUID
2
-
3
1
  from passphera_core.entities import Generator
4
2
  from passphera_core.interfaces import GeneratorRepository
5
3
 
@@ -8,24 +6,24 @@ class GetGeneratorUseCase:
8
6
  def __init__(self, generator_repository: GeneratorRepository):
9
7
  self.generator_repository: GeneratorRepository = generator_repository
10
8
 
11
- def __call__(self, generator_id: UUID) -> Generator:
12
- return self.generator_repository.get(generator_id)
9
+ def __call__(self) -> Generator:
10
+ return self.generator_repository.get()
13
11
 
14
12
 
15
13
  class GetPropertiesUseCase:
16
14
  def __init__(self, generator_repository: GeneratorRepository):
17
15
  self.generator_repository: GeneratorRepository = generator_repository
18
16
 
19
- def __call__(self, generator_id: UUID) -> dict:
20
- return self.generator_repository.get(generator_id).get_properties()
17
+ def __call__(self) -> dict:
18
+ return self.generator_repository.get().get_properties()
21
19
 
22
20
 
23
21
  class SetPropertyUseCase:
24
22
  def __init__(self, generator_repository: GeneratorRepository):
25
23
  self.generator_repository: GeneratorRepository = generator_repository
26
24
 
27
- def __call__(self, generator_id: UUID, prop: str, value: str) -> Generator:
28
- generator_entity: Generator = self.generator_repository.get(generator_id)
25
+ def __call__(self, prop: str, value: str) -> Generator:
26
+ generator_entity: Generator = self.generator_repository.get()
29
27
  generator_entity.set_property(prop, value)
30
28
  self.generator_repository.update(generator_entity)
31
29
  return generator_entity
@@ -35,8 +33,8 @@ class ResetPropertyUseCase:
35
33
  def __init__(self, generator_repository: GeneratorRepository):
36
34
  self.generator_repository: GeneratorRepository = generator_repository
37
35
 
38
- def __call__(self, generator_id: UUID, prop: str) -> Generator:
39
- generator_entity: Generator = self.generator_repository.get(generator_id)
36
+ def __call__(self, prop: str) -> Generator:
37
+ generator_entity: Generator = self.generator_repository.get()
40
38
  generator_entity.reset_property(prop)
41
39
  self.generator_repository.update(generator_entity)
42
40
  return generator_entity
@@ -46,27 +44,27 @@ class GetCharacterReplacementUseCase:
46
44
  def __init__(self, generator_repository: GeneratorRepository):
47
45
  self.generator_repository: GeneratorRepository = generator_repository
48
46
 
49
- def __call__(self, generator_id: UUID, character: str) -> str:
50
- return self.generator_repository.get(generator_id).get_character_replacement(character)
47
+ def __call__(self, character: str) -> str:
48
+ return self.generator_repository.get().get_character_replacement(character)
51
49
 
52
50
 
53
51
  class SetCharacterReplacementUseCase:
54
52
  def __init__(self, generator_repository: GeneratorRepository):
55
53
  self.generator_repository: GeneratorRepository = generator_repository
56
54
 
57
- def __call__(self, generator_id: UUID, character: str, replacement: str) -> Generator:
58
- generator_entity: Generator = self.generator_repository.get(generator_id)
55
+ def __call__(self, character: str, replacement: str) -> Generator:
56
+ generator_entity: Generator = self.generator_repository.get()
59
57
  generator_entity.replace_character(character, replacement)
60
58
  self.generator_repository.update(generator_entity)
61
59
  return generator_entity
62
60
 
63
61
 
64
62
  class ResetCharacterReplacementUseCase:
65
- def __init__(self, generator_repository: GeneratorRepository):
63
+ def __init__(self, generator_repository: GeneratorRepository,):
66
64
  self.generator_repository: GeneratorRepository = generator_repository
67
65
 
68
- def __call__(self, generator_id: UUID, character: str) -> Generator:
69
- generator_entity: Generator = self.generator_repository.get(generator_id)
66
+ def __call__(self, character: str) -> Generator:
67
+ generator_entity: Generator = self.generator_repository.get()
70
68
  generator_entity.reset_character(character)
71
69
  self.generator_repository.update(generator_entity)
72
70
  return generator_entity
@@ -1,5 +1,3 @@
1
- from uuid import UUID
2
-
3
1
  from passphera_core.entities import Password, Generator
4
2
  from passphera_core.exceptions import DuplicatePasswordException
5
3
  from passphera_core.interfaces import VaultRepository, GeneratorRepository
@@ -15,12 +13,12 @@ class GeneratePasswordUseCase:
15
13
  self.password_repository: VaultRepository = password_repository
16
14
  self.generator_repository: GeneratorRepository = generator_repository
17
15
 
18
- def __call__(self, generator_id: UUID, context: str, text: str) -> Password:
16
+ def __call__(self, context: str, text: str) -> Password:
19
17
  password_entity: Password = self.password_repository.get(context)
20
18
  if password_entity:
21
19
  raise DuplicatePasswordException(password_entity)
22
20
  password_entity: Password = Password(context=context, text=text)
23
- generator_entity: Generator = self.generator_repository.get(generator_id)
21
+ generator_entity: Generator = self.generator_repository.get()
24
22
  generate_password(password_entity, generator_entity)
25
23
  self.password_repository.save(password_entity)
26
24
  return password_entity
@@ -43,9 +41,9 @@ class UpdatePasswordUseCase:
43
41
  self.password_repository: VaultRepository = password_repository
44
42
  self.generator_repository: GeneratorRepository = generator_repository
45
43
 
46
- def __call__(self, generator_id: UUID, context: str, text: str) -> Password:
44
+ def __call__(self, context: str, text: str) -> Password:
47
45
  password_entity: Password = get_password(self.password_repository, context)
48
- generator_entity: Generator = self.generator_repository.get(generator_id)
46
+ generator_entity: Generator = self.generator_repository.get()
49
47
  generate_password(password_entity, generator_entity)
50
48
  self.password_repository.update(password_entity)
51
49
  return password_entity
@@ -30,8 +30,8 @@ _default_properties: dict[str, str] = {
30
30
  @dataclass
31
31
  class Password:
32
32
  id: UUID = field(default_factory=uuid4)
33
- created_at: datetime = field(default_factory=lambda: datetime.now(timezone.utc))
34
- updated_at: datetime = field(default_factory=lambda: datetime.now(timezone.utc))
33
+ created_at: datetime = field(default_factory=lambda: datetime.now(timezone.utc).isoformat())
34
+ updated_at: datetime = field(default_factory=lambda: datetime.now(timezone.utc).isoformat())
35
35
  context: str = field(default_factory=str)
36
36
  text: str = field(default_factory=str)
37
37
  password: str = field(default_factory=str)
@@ -82,8 +82,8 @@ class Password:
82
82
  @dataclass
83
83
  class Generator:
84
84
  id: UUID = field(default_factory=uuid4)
85
- created_at: datetime = field(default_factory=datetime.now)
86
- updated_at: datetime = field(default_factory=datetime.now)
85
+ created_at: datetime = field(default_factory=lambda: datetime.now(timezone.utc).isoformat())
86
+ updated_at: datetime = field(default_factory=lambda: datetime.now(timezone.utc).isoformat())
87
87
  shift: int = field(default=_default_properties["shift"])
88
88
  multiplier: int = field(default=_default_properties["multiplier"])
89
89
  key: str = field(default=_default_properties["key"])
@@ -1,5 +1,4 @@
1
1
  from abc import ABC, abstractmethod
2
- from uuid import UUID
3
2
 
4
3
  from passphera_core.entities import Password, Generator
5
4
 
@@ -36,7 +35,7 @@ class GeneratorRepository(ABC):
36
35
  pass
37
36
 
38
37
  @abstractmethod
39
- def get(self, id: UUID) -> Generator:
38
+ def get(self) -> Generator:
40
39
  pass
41
40
 
42
41
  @abstractmethod
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: passphera-core
3
- Version: 0.28.0
3
+ Version: 0.30.0
4
4
  Summary: The core system of passphera project
5
5
  Home-page: https://github.com/passphera/core
6
6
  Author: Fathi Abdelmalek
@@ -0,0 +1,12 @@
1
+ passphera_core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ passphera_core/entities.py,sha256=7lrwEauShCq3OTdgW-r047dNrK0WUavKJ2KSq9xeu5w,8824
3
+ passphera_core/exceptions.py,sha256=Tqb-FKJ1_JfX5gSC8Wc0CP84AhwouvnP2gkg83xAlUY,786
4
+ passphera_core/interfaces.py,sha256=DpHFh_vnamORf69P1dwLrZ8AYZPcYIol0Lq_VKRBkXc,855
5
+ passphera_core/utilities.py,sha256=n7cAVox-yGd60595RjLvrGKSGqFQRm279YqKS3-R1X0,748
6
+ passphera_core/application/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
+ passphera_core/application/generator.py,sha256=hBSk6vktJ2KPxzKSRnH_WVnCvg7vOHVzN-TQ5GdgXEQ,2769
8
+ passphera_core/application/password.py,sha256=9wsSz3uMWEZCgfnX5V7WYiWp2OqjSmsn6OSWK4HIIfo,2876
9
+ passphera_core-0.30.0.dist-info/METADATA,sha256=TBO2PeD-C1-E0CLOpksAJc_yWl1kFPCorfzKw67wc5E,868
10
+ passphera_core-0.30.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
11
+ passphera_core-0.30.0.dist-info/top_level.txt,sha256=aDUX2iWGOyfzyf6XakLWTbgeWqNrypMHO074Qratyds,15
12
+ passphera_core-0.30.0.dist-info/RECORD,,
@@ -1,12 +0,0 @@
1
- passphera_core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- passphera_core/entities.py,sha256=LnIMQ5xbVP59Cn96AmQ6BY358VJ-Vcx01pvhj919iJk,8732
3
- passphera_core/exceptions.py,sha256=Tqb-FKJ1_JfX5gSC8Wc0CP84AhwouvnP2gkg83xAlUY,786
4
- passphera_core/interfaces.py,sha256=IlOdJANE0g0WNB6Gw93WHnGwAN-RM5Gqe9lU5zh2Dbs,887
5
- passphera_core/utilities.py,sha256=n7cAVox-yGd60595RjLvrGKSGqFQRm279YqKS3-R1X0,748
6
- passphera_core/application/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- passphera_core/application/generator.py,sha256=7zScBddle1cQMccO_hg2lHBerVvX0z5n1mI4EyUUZkU,3015
8
- passphera_core/application/password.py,sha256=gKqrB4fiF-4eT7tlOKpalFClhPClUavWkmPF6abO3fk,2963
9
- passphera_core-0.28.0.dist-info/METADATA,sha256=rgDkvNX7p4Ib-VSkY-6zs8qgW9ywIV45GCBldF5nH9A,868
10
- passphera_core-0.28.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
11
- passphera_core-0.28.0.dist-info/top_level.txt,sha256=aDUX2iWGOyfzyf6XakLWTbgeWqNrypMHO074Qratyds,15
12
- passphera_core-0.28.0.dist-info/RECORD,,