GeneralManager 0.13.1__py3-none-any.whl → 0.14.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.
- general_manager/api/graphql.py +162 -67
- general_manager/api/mutation.py +15 -7
- general_manager/api/property.py +95 -10
- general_manager/apps.py +14 -11
- general_manager/bucket/calculationBucket.py +203 -45
- general_manager/bucket/databaseBucket.py +149 -17
- general_manager/interface/baseInterface.py +32 -10
- general_manager/permission/mutationPermission.py +3 -1
- general_manager/utils/argsToKwargs.py +7 -7
- {generalmanager-0.13.1.dist-info → generalmanager-0.14.0.dist-info}/METADATA +1 -1
- {generalmanager-0.13.1.dist-info → generalmanager-0.14.0.dist-info}/RECORD +14 -14
- {generalmanager-0.13.1.dist-info → generalmanager-0.14.0.dist-info}/WHEEL +0 -0
- {generalmanager-0.13.1.dist-info → generalmanager-0.14.0.dist-info}/licenses/LICENSE +0 -0
- {generalmanager-0.13.1.dist-info → generalmanager-0.14.0.dist-info}/top_level.txt +0 -0
@@ -48,7 +48,9 @@ class MutationPermission:
|
|
48
48
|
PermissionError: If the user does not have permission.
|
49
49
|
"""
|
50
50
|
errors = []
|
51
|
-
|
51
|
+
if not isinstance(request_user, (AbstractUser, AnonymousUser)):
|
52
|
+
request_user = BasePermission.getUserWithId(request_user)
|
53
|
+
Permission = cls(data, request_user)
|
52
54
|
for key in data:
|
53
55
|
if not Permission.checkPermission(key):
|
54
56
|
errors.append(
|
@@ -5,20 +5,20 @@ def args_to_kwargs(
|
|
5
5
|
args: tuple[Any, ...], keys: Iterable[Any], existing_kwargs: dict | None = None
|
6
6
|
):
|
7
7
|
"""
|
8
|
-
|
8
|
+
Converts *args into **kwargs and combines them with existing **kwargs.
|
9
9
|
|
10
|
-
:param args: Tuple
|
11
|
-
:param keys:
|
12
|
-
:param existing_kwargs:
|
13
|
-
:return: Dictionary
|
10
|
+
:param args: Tuple of positional arguments (e.g., *args).
|
11
|
+
:param keys: List of keys to associate with the arguments.
|
12
|
+
:param existing_kwargs: Optional dictionary of already existing key-value mappings.
|
13
|
+
:return: Dictionary of combined **kwargs.
|
14
14
|
"""
|
15
15
|
keys = list(keys)
|
16
16
|
if len(args) > len(keys):
|
17
|
-
raise
|
17
|
+
raise TypeError("More positional arguments than keys provided.")
|
18
18
|
|
19
19
|
kwargs = {key: value for key, value in zip(keys, args)}
|
20
20
|
if existing_kwargs and any(key in kwargs for key in existing_kwargs):
|
21
|
-
raise
|
21
|
+
raise TypeError("Conflicts in existing kwargs.")
|
22
22
|
if existing_kwargs:
|
23
23
|
kwargs.update(existing_kwargs)
|
24
24
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: GeneralManager
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.14.0
|
4
4
|
Summary: Modular Django-based data management framework with ORM, GraphQL, fine-grained permissions, rule validation, calculations and caching.
|
5
5
|
Author-email: Tim Kleindick <tkleindick@yahoo.de>
|
6
6
|
License-Expression: MIT
|
@@ -1,11 +1,11 @@
|
|
1
1
|
general_manager/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
2
|
-
general_manager/apps.py,sha256=
|
3
|
-
general_manager/api/graphql.py,sha256=
|
4
|
-
general_manager/api/mutation.py,sha256=
|
5
|
-
general_manager/api/property.py,sha256=
|
2
|
+
general_manager/apps.py,sha256=9wmfr2jw9kzIx41fNByAUmte_67s3R_CEM90eX9jcao,10087
|
3
|
+
general_manager/api/graphql.py,sha256=tcQPiUBfTsBSf5iqllPhFE1nMhFof6ql9m3tfxwLEEY,43016
|
4
|
+
general_manager/api/mutation.py,sha256=ExUizC5EJ1u_CyXi-i8WTY0Qh3w4X6dr-0XUq_n1sgM,6978
|
5
|
+
general_manager/api/property.py,sha256=6tLW7E74S57K3vUv1xWhxAqn2L_3qi73VhTNs9YbnKw,3104
|
6
6
|
general_manager/bucket/baseBucket.py,sha256=RdEaUhbCVPGI9l9B3l9lC9Ma2pGjQx6NL1rlCEIPXEc,8243
|
7
|
-
general_manager/bucket/calculationBucket.py,sha256=
|
8
|
-
general_manager/bucket/databaseBucket.py,sha256=
|
7
|
+
general_manager/bucket/calculationBucket.py,sha256=y8xIQLAIWPN6e7zO0__M2vP0ynOjrBLRrr2MzcVUBsc,24978
|
8
|
+
general_manager/bucket/databaseBucket.py,sha256=n9JaJm6qrd18Y7IGK6x700Z30qtw35VH7zOf1O6nvOs,15007
|
9
9
|
general_manager/bucket/groupBucket.py,sha256=CoXQoHtXcNa_KLnvUOMG1j1TcCNeenlIMb-ORrK08LQ,11381
|
10
10
|
general_manager/cache/cacheDecorator.py,sha256=XQvs322lDDafecS6osPKmf7DyuZgDq8kuQaYpMeXXYg,3264
|
11
11
|
general_manager/cache/cacheTracker.py,sha256=rRw3OhBDf86hTC2Xbt1ocRgZqwu8_kXk4lczamcADFg,2955
|
@@ -17,7 +17,7 @@ general_manager/factory/autoFactory.py,sha256=Lf3E9qi3mggIGK6ww_JxdZbK5BzWPWIEMv
|
|
17
17
|
general_manager/factory/factories.py,sha256=cJEV79SRHNNqtBXgE0ix5KOxdAkmPmq_8YlwJ_IJ_CM,8295
|
18
18
|
general_manager/factory/factoryMethods.py,sha256=9Bag891j0XHe3dUBAFi7gUKcKeUwcBZN3cDLBobyBiI,3225
|
19
19
|
general_manager/interface/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
20
|
-
general_manager/interface/baseInterface.py,sha256=
|
20
|
+
general_manager/interface/baseInterface.py,sha256=DPBIljlmoOQqsKBf0jy-nC9RlrHz98tBru-iaibaDFc,9562
|
21
21
|
general_manager/interface/calculationInterface.py,sha256=fTD3WQpsn3ImaxGW5S-JwVJyJJPoPp2mR6lAambdB8U,4755
|
22
22
|
general_manager/interface/databaseBasedInterface.py,sha256=uB4_kJ1kNSK-QnUrFKR0zrDP-UulBKeeHIslXqEdU4Q,23058
|
23
23
|
general_manager/interface/databaseInterface.py,sha256=NHXOJycY40pywzE1d_5Fi-pLVnmLR4OQwhAIHsgkM_g,7249
|
@@ -35,7 +35,7 @@ general_manager/permission/__init__.py,sha256=5UlDERN60Vn8obGVkT-cOM8kHjzmoxgK5w
|
|
35
35
|
general_manager/permission/basePermission.py,sha256=DeiAX2sQQhtdquO13jys2MSkp0kPdg2oo7PSqB9q5Bw,5653
|
36
36
|
general_manager/permission/fileBasedPermission.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
37
37
|
general_manager/permission/managerBasedPermission.py,sha256=CANZu5sU-GhzoFdR87aJ0rX0_rC4a38nqV76IpzIPQQ,7893
|
38
|
-
general_manager/permission/mutationPermission.py,sha256=
|
38
|
+
general_manager/permission/mutationPermission.py,sha256=qaawnyuqmnGKOcgkZuaCKK6rawEiVRxLdZbWEZFM1d4,3084
|
39
39
|
general_manager/permission/permissionChecks.py,sha256=s4XBQtfWK_6_AByVRFbEE3_UD4rXU_9y58L5oeSPXLM,1876
|
40
40
|
general_manager/permission/permissionDataManager.py,sha256=EzF-XKJZKvKdNpF77ATYJ_VXSF09L-HTFe8h8p-JdB4,1784
|
41
41
|
general_manager/permission/utils.py,sha256=_cznQLk-wmK35pqs3dtgY6I94Ahyz_bTSmpkT0-MQnI,1277
|
@@ -43,7 +43,7 @@ general_manager/rule/__init__.py,sha256=4Har5cfPD1fmOsilTDod-ZUz3Com-tkl58jz7yY4
|
|
43
43
|
general_manager/rule/handler.py,sha256=z8SFHTIZ0LbLh3fV56Mud0V4_OvWkqJjlHvFqau7Qfk,7334
|
44
44
|
general_manager/rule/rule.py,sha256=3FVCKGL7BTVoStdgOTdWQwuoVRIxAIAilV4VOzouDpc,10759
|
45
45
|
general_manager/utils/__init__.py,sha256=4IwKJzsNxGduF-Ej0u1BNHVaMhkql8PjHbVtx9DOTSY,76
|
46
|
-
general_manager/utils/argsToKwargs.py,sha256=
|
46
|
+
general_manager/utils/argsToKwargs.py,sha256=l_yJCan6UhwKpTBpIwG3FvOKXt4pJeD6rZuYP47U9Ss,892
|
47
47
|
general_manager/utils/filterParser.py,sha256=wmR4YzsnYgjI2Co5eyvCFROldotAraHx_GiCDJo79IY,5410
|
48
48
|
general_manager/utils/formatString.py,sha256=gZSbsKvpywBmf5bIx6YW43LmNJcqsCP7ZfrB7YPvaFo,1436
|
49
49
|
general_manager/utils/jsonEncoder.py,sha256=TDsgFQvheITHZgdmn-m8tk1_QCzpT0XwEHo7bY3Qe-M,638
|
@@ -51,8 +51,8 @@ general_manager/utils/makeCacheKey.py,sha256=UlFsxHXgsYy69AAelkF6GDvY4h7AImT2bBn
|
|
51
51
|
general_manager/utils/noneToZero.py,sha256=KfQtMQnrT6vsYST0K7lv6pVujkDcK3XL8czHYOhgqKQ,539
|
52
52
|
general_manager/utils/pathMapping.py,sha256=pswtxZbvj4MdDN6o-y1qTjl6XFHvjDTe-H3NZyFTrPQ,6926
|
53
53
|
general_manager/utils/testing.py,sha256=ElZ8p4iZHxsHjDN8Lm5TmI6527CW747ltDOmtY6gAhk,11872
|
54
|
-
generalmanager-0.
|
55
|
-
generalmanager-0.
|
56
|
-
generalmanager-0.
|
57
|
-
generalmanager-0.
|
58
|
-
generalmanager-0.
|
54
|
+
generalmanager-0.14.0.dist-info/licenses/LICENSE,sha256=YGFm0ieb4KpkMRRt2qnWue6uFh0cUMtobwEBkHwajhc,1450
|
55
|
+
generalmanager-0.14.0.dist-info/METADATA,sha256=m97npJkvWWGb0fm2MFxzWjcyAv-LYxdSkCRuor8F33E,6206
|
56
|
+
generalmanager-0.14.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
57
|
+
generalmanager-0.14.0.dist-info/top_level.txt,sha256=sTDtExP9ga-YP3h3h42yivUY-A2Q23C2nw6LNKOho4I,16
|
58
|
+
generalmanager-0.14.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|