ipulse-shared-core-ftredge 6.6.1__py3-none-any.whl → 6.7.1__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.
@@ -20,7 +20,7 @@ class UserStatus(BaseDataModel):
20
20
  VERSION: ClassVar[float] = 4.1
21
21
  DOMAIN: ClassVar[str] = "_".join(list_as_lower_strings(Layer.PULSE_APP, Module.CORE.name, Subject.USER.name))
22
22
  OBJ_REF: ClassVar[str] = "userstatus"
23
-
23
+
24
24
  # Default values as class variables
25
25
  DEFAULT_IAM_GROUPS: ClassVar[Dict[str, List[str]]] = {"pulseroot": ["full_open_read"]}
26
26
  DEFAULT_SUBSCRIPTION_PLAN: ClassVar[str] = "subscription_free"
@@ -28,7 +28,7 @@ class UserStatus(BaseDataModel):
28
28
  DEFAULT_SUBSCRIPTION_INSIGHT_CREDITS: ClassVar[int] = 10
29
29
  DEFAULT_VOTING_CREDITS: ClassVar[int] = 0
30
30
  DEFAULT_EXTRA_INSIGHT_CREDITS: ClassVar[int] = 0
31
-
31
+
32
32
 
33
33
  # System-managed fields
34
34
  schema_version: float = Field(
@@ -52,7 +52,7 @@ class UserStatus(BaseDataModel):
52
52
  default_factory=lambda: UserStatus.DEFAULT_IAM_GROUPS,
53
53
  description="User's Groups, with a default one for all authenticated Pulse users"
54
54
  )
55
-
55
+
56
56
  # Subscription Management
57
57
  subscriptions: Dict[str, Subscription] = Field(
58
58
  default_factory=dict,
@@ -79,13 +79,13 @@ class UserStatus(BaseDataModel):
79
79
  )
80
80
 
81
81
  voting_credits: int = Field(
82
- default=lambda : UserStatus.DEFAULT_VOTING_CREDITS,
82
+ default_factory=lambda: UserStatus.DEFAULT_VOTING_CREDITS, # Changed default to default_factory
83
83
  description="Voting credits for user"
84
84
  )
85
-
85
+
86
86
  # Optional fields
87
87
  payment_refs_uids: Optional[Set[str]] = None
88
-
88
+
89
89
  # Remove audit fields as they're inherited from BaseDataModel
90
90
 
91
91
  @field_validator('id', mode='before')
@@ -97,7 +97,7 @@ class UserStatus(BaseDataModel):
97
97
  # If id is already provided (Firebase Auth case), return it
98
98
  if v:
99
99
  return v
100
-
100
+
101
101
  # Fallback: generate from user_uid if needed
102
102
  values = info.data
103
103
  user_uid = values.get('user_uid')
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: ipulse_shared_core_ftredge
3
- Version: 6.6.1
3
+ Version: 6.7.1
4
4
  Summary: Shared Core models and Logger util for the Pulse platform project. Using AI for financial advisory and investment management.
5
5
  Home-page: https://github.com/TheFutureEdge/ipulse_shared_core
6
6
  Author: Russlan Ramdowar
@@ -9,7 +9,7 @@ Requires-Dist: pydantic[email]~=2.5
9
9
  Requires-Dist: python-dateutil~=2.8
10
10
  Requires-Dist: fastapi~=0.115.8
11
11
  Requires-Dist: pytest~=7.1
12
- Requires-Dist: ipulse_shared_base_ftredge>=5.2.1
12
+ Requires-Dist: ipulse_shared_base_ftredge>=5.6.1
13
13
  Dynamic: author
14
14
  Dynamic: home-page
15
15
  Dynamic: requires-dist
@@ -13,7 +13,7 @@ ipulse_shared_core_ftredge/models/subscription.py,sha256=pd8YQ_i5imhi8T6j2R0ZlmY
13
13
  ipulse_shared_core_ftredge/models/user_auth.py,sha256=YgCeK0uJ-JOkPavwzogl4wGC3RpA8PVfl-5MPS4Kxhk,432
14
14
  ipulse_shared_core_ftredge/models/user_profile.py,sha256=lHDRLIIMq-79NLCFStAk1CayQor3i2yaAjNZOPr69qE,3064
15
15
  ipulse_shared_core_ftredge/models/user_profile_update.py,sha256=3BqAAqnVKXPKhAcfV_aOERe8GyIkX0NU_LJcQa02aLw,1319
16
- ipulse_shared_core_ftredge/models/user_status.py,sha256=kdsen9c-tQUrMEjqUqoXCUPVbPrrhvg4ccjNNZooW7I,3916
16
+ ipulse_shared_core_ftredge/models/user_status.py,sha256=J9XTxssWR0qvDwet1LCxH_OXK5wkHwJT4yYCaqfkD2k,3929
17
17
  ipulse_shared_core_ftredge/services/__init__.py,sha256=JUyskKmzvBJdTwKCdPiPRVPZgXpYw7cWU6fthYfDNjI,296
18
18
  ipulse_shared_core_ftredge/services/base_exceptions.py,sha256=vQPNBSMyu-nP-nR6iT5Ls9eGNeeQ8E0FShmi6dnxaS8,4346
19
19
  ipulse_shared_core_ftredge/services/base_firestore_service.py,sha256=NEhBqsXCmSx8P9k6HSx2jPQVVtTjPGtEw8hSi0Ny5Kc,6743
@@ -21,8 +21,8 @@ ipulse_shared_core_ftredge/services/fastapiservicemon.py,sha256=27clTZXH32mbju8o
21
21
  ipulse_shared_core_ftredge/services/servicemon.py,sha256=wWhsLwU1_07emaEyCNziZA1bDQVLxcfvQj0OseTLSTI,7969
22
22
  ipulse_shared_core_ftredge/utils/__init__.py,sha256=TeiidwpuZ2YTVOYBd2kUS2iG6UxZcV99Do38enLL2RU,43
23
23
  ipulse_shared_core_ftredge/utils/json_encoder.py,sha256=gBX6npueUyeOq1BSLs6s0SpqsCwelzJKxUOUzHnNZmE,540
24
- ipulse_shared_core_ftredge-6.6.1.dist-info/LICENCE,sha256=YBtYAXNqCCOo9Mr2hfkbSPAM9CeAr2j1VZBSwQTrNwE,1060
25
- ipulse_shared_core_ftredge-6.6.1.dist-info/METADATA,sha256=TZHuiVdLNiekPPoRTt_6cfv9dEeddCPmNpZNINjGzf8,570
26
- ipulse_shared_core_ftredge-6.6.1.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
27
- ipulse_shared_core_ftredge-6.6.1.dist-info/top_level.txt,sha256=8sgYrptpexkA_6_HyGvho26cVFH9kmtGvaK8tHbsGHk,27
28
- ipulse_shared_core_ftredge-6.6.1.dist-info/RECORD,,
24
+ ipulse_shared_core_ftredge-6.7.1.dist-info/LICENCE,sha256=YBtYAXNqCCOo9Mr2hfkbSPAM9CeAr2j1VZBSwQTrNwE,1060
25
+ ipulse_shared_core_ftredge-6.7.1.dist-info/METADATA,sha256=zfJ7EUbl0DCDZraLdDSE2CsOBVAoVXSjVKP39XprbxU,570
26
+ ipulse_shared_core_ftredge-6.7.1.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
27
+ ipulse_shared_core_ftredge-6.7.1.dist-info/top_level.txt,sha256=8sgYrptpexkA_6_HyGvho26cVFH9kmtGvaK8tHbsGHk,27
28
+ ipulse_shared_core_ftredge-6.7.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.8.0)
2
+ Generator: setuptools (75.8.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5