ipulse-shared-core-ftredge 9.1.1__tar.gz → 10.1.1__tar.gz
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.
Potentially problematic release.
This version of ipulse-shared-core-ftredge might be problematic. Click here for more details.
- {ipulse_shared_core_ftredge-9.1.1/src/ipulse_shared_core_ftredge.egg-info → ipulse_shared_core_ftredge-10.1.1}/PKG-INFO +1 -1
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/setup.py +1 -1
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/models/subscription.py +1 -1
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/models/user_profile.py +5 -5
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/models/user_status.py +9 -9
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1/src/ipulse_shared_core_ftredge.egg-info}/PKG-INFO +1 -1
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/LICENCE +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/README.md +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/pyproject.toml +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/setup.cfg +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/__init__.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/dependencies/__init__.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/dependencies/auth_firebase_token_validation.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/dependencies/auth_protected_router.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/dependencies/authz_for_apis.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/dependencies/firestore_client.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/models/__init__.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/models/base_api_response.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/models/base_data_model.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/models/organization_profile.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/models/user_auth.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/models/user_profile_update.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/services/__init__.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/services/base_firestore_service.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/services/base_service_exceptions.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/services/fastapiservicemon.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/services/servicemon.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/utils/__init__.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/utils/custom_json_encoder.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge/utils/json_encoder.py +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge.egg-info/SOURCES.txt +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge.egg-info/dependency_links.txt +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge.egg-info/requires.txt +0 -0
- {ipulse_shared_core_ftredge-9.1.1 → ipulse_shared_core_ftredge-10.1.1}/src/ipulse_shared_core_ftredge.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ipulse_shared_core_ftredge
|
|
3
|
-
Version:
|
|
3
|
+
Version: 10.1.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
|
|
@@ -3,7 +3,7 @@ from setuptools import setup, find_packages
|
|
|
3
3
|
|
|
4
4
|
setup(
|
|
5
5
|
name='ipulse_shared_core_ftredge',
|
|
6
|
-
version='
|
|
6
|
+
version='10.1.1',
|
|
7
7
|
package_dir={'': 'src'}, # Specify the source directory
|
|
8
8
|
packages=find_packages(where='src'), # Look for packages in 'src'
|
|
9
9
|
install_requires=[
|
|
@@ -90,7 +90,7 @@ class Subscription(BaseDataModel):
|
|
|
90
90
|
)
|
|
91
91
|
|
|
92
92
|
# IAM permissions structure
|
|
93
|
-
|
|
93
|
+
default_iam_domain_permissions: Dict[str, Dict[str, List[str]]] = Field(
|
|
94
94
|
..., # Required field, no default
|
|
95
95
|
description="IAM domain permissions granted by this subscription (domain -> IAM unit type -> list of unit references)"
|
|
96
96
|
)
|
|
@@ -16,7 +16,7 @@ class UserProfile(BaseDataModel):
|
|
|
16
16
|
model_config = ConfigDict(frozen=False, extra="forbid") # Allow field modification
|
|
17
17
|
|
|
18
18
|
# Class constants
|
|
19
|
-
VERSION: ClassVar[float] = 5.0 # Incremented version for
|
|
19
|
+
VERSION: ClassVar[float] = 5.0 # Incremented version for primary_usertype addition
|
|
20
20
|
DOMAIN: ClassVar[str] = "_".join(list_as_lower_strings(Layer.PULSE_APP, Module.CORE.name, Subject.USER.name))
|
|
21
21
|
OBJ_REF: ClassVar[str] = "userprofile"
|
|
22
22
|
|
|
@@ -36,14 +36,14 @@ class UserProfile(BaseDataModel):
|
|
|
36
36
|
description="User UID from Firebase Auth"
|
|
37
37
|
)
|
|
38
38
|
|
|
39
|
-
# Added
|
|
40
|
-
|
|
39
|
+
# Added primary_usertype field for main role categorization
|
|
40
|
+
primary_usertype: str = Field(
|
|
41
41
|
...,
|
|
42
42
|
description="Primary user type (e.g., customer, internal, admin, superadmin)"
|
|
43
43
|
)
|
|
44
44
|
|
|
45
|
-
# Renamed user_types to
|
|
46
|
-
|
|
45
|
+
# Renamed user_types to secondary_usertypes
|
|
46
|
+
secondary_usertypes: List[str] = Field(
|
|
47
47
|
default_factory=list,
|
|
48
48
|
description="List of secondary user types"
|
|
49
49
|
)
|
|
@@ -68,14 +68,14 @@ class UserStatus(BaseDataModel):
|
|
|
68
68
|
description="User UID from Firebase Auth"
|
|
69
69
|
)
|
|
70
70
|
|
|
71
|
-
# Added
|
|
72
|
-
|
|
71
|
+
# Added primary_usertype field for main role categorization
|
|
72
|
+
primary_usertype: str = Field(
|
|
73
73
|
...,
|
|
74
74
|
description="Primary user type (e.g., customer, internal, admin, superadmin)"
|
|
75
75
|
)
|
|
76
76
|
|
|
77
|
-
# Renamed user_types to
|
|
78
|
-
|
|
77
|
+
# Renamed user_types to secondary_usertypes
|
|
78
|
+
secondary_usertypes: List[str] = Field(
|
|
79
79
|
default_factory=list,
|
|
80
80
|
description="List of secondary user types/roles"
|
|
81
81
|
)
|
|
@@ -321,7 +321,7 @@ class UserStatus(BaseDataModel):
|
|
|
321
321
|
"""
|
|
322
322
|
added_count = 0
|
|
323
323
|
|
|
324
|
-
for domain, permissions_by_type in subscription.
|
|
324
|
+
for domain, permissions_by_type in subscription.default_iam_domain_permissions.items():
|
|
325
325
|
for iam_unit_type_str, iam_unit_refs in permissions_by_type.items():
|
|
326
326
|
# Convert string to enum if needed for internal processing
|
|
327
327
|
try:
|
|
@@ -484,7 +484,7 @@ class UserStatus(BaseDataModel):
|
|
|
484
484
|
validity_time_unit=validity_time_unit,
|
|
485
485
|
auto_renew=plan_data.get("plan_auto_renewal", False),
|
|
486
486
|
status=SubscriptionStatus.ACTIVE,
|
|
487
|
-
|
|
487
|
+
default_iam_domain_permissions=iam_domain_permissions,
|
|
488
488
|
fallback_plan_id=plan_data.get("fallback_plan_id_if_current_plan_expired"),
|
|
489
489
|
price_paid_usd=plan_data.get("plan_per_cycle_price_usd") or 0.0,
|
|
490
490
|
created_by=source,
|
|
@@ -501,14 +501,14 @@ class UserStatus(BaseDataModel):
|
|
|
501
501
|
|
|
502
502
|
@staticmethod
|
|
503
503
|
def fetch_user_status_defaults(firestore_client,
|
|
504
|
-
|
|
504
|
+
primary_usertype: str,
|
|
505
505
|
collection: str = "papp_core_configs_user") -> Dict[str, Any]:
|
|
506
506
|
"""
|
|
507
507
|
Fetch user status defaults from Firestore.
|
|
508
508
|
|
|
509
509
|
Args:
|
|
510
510
|
firestore_client: Initialized Firestore client
|
|
511
|
-
|
|
511
|
+
primary_usertype: Primary type of user (customer, internal, admin, etc)
|
|
512
512
|
collection: Collection name for user status defaults
|
|
513
513
|
|
|
514
514
|
Returns:
|
|
@@ -531,7 +531,7 @@ class UserStatus(BaseDataModel):
|
|
|
531
531
|
|
|
532
532
|
# Look for defaults with format "{user_type}_defaults_{version}"
|
|
533
533
|
for key in data.keys():
|
|
534
|
-
if key.startswith(f"{
|
|
534
|
+
if key.startswith(f"{primary_usertype}_defaults_"):
|
|
535
535
|
try:
|
|
536
536
|
version = int(key.split("_")[-1])
|
|
537
537
|
if version > latest_version:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ipulse_shared_core_ftredge
|
|
3
|
-
Version:
|
|
3
|
+
Version: 10.1.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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|