elody 0.0.196__tar.gz → 0.0.197__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.
Files changed (51) hide show
  1. {elody-0.0.196 → elody-0.0.197}/PKG-INFO +1 -1
  2. {elody-0.0.196 → elody-0.0.197}/pyproject.toml +1 -1
  3. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/helpers.py +7 -0
  4. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/permission_handler.py +3 -10
  5. {elody-0.0.196 → elody-0.0.197}/src/elody.egg-info/PKG-INFO +1 -1
  6. {elody-0.0.196 → elody-0.0.197}/LICENSE +0 -0
  7. {elody-0.0.196 → elody-0.0.197}/README.md +0 -0
  8. {elody-0.0.196 → elody-0.0.197}/setup.cfg +0 -0
  9. {elody-0.0.196 → elody-0.0.197}/src/__init__.py +0 -0
  10. {elody-0.0.196 → elody-0.0.197}/src/elody/__init__.py +0 -0
  11. {elody-0.0.196 → elody-0.0.197}/src/elody/client.py +0 -0
  12. {elody-0.0.196 → elody-0.0.197}/src/elody/csv.py +0 -0
  13. {elody-0.0.196 → elody-0.0.197}/src/elody/error_codes.py +0 -0
  14. {elody-0.0.196 → elody-0.0.197}/src/elody/exceptions.py +0 -0
  15. {elody-0.0.196 → elody-0.0.197}/src/elody/job.py +0 -0
  16. {elody-0.0.196 → elody-0.0.197}/src/elody/loader.py +0 -0
  17. {elody-0.0.196 → elody-0.0.197}/src/elody/migration/__init__.py +0 -0
  18. {elody-0.0.196 → elody-0.0.197}/src/elody/migration/base_object_migrator.py +0 -0
  19. {elody-0.0.196 → elody-0.0.197}/src/elody/object_configurations/__init__.py +0 -0
  20. {elody-0.0.196 → elody-0.0.197}/src/elody/object_configurations/base_object_configuration.py +0 -0
  21. {elody-0.0.196 → elody-0.0.197}/src/elody/object_configurations/elody_configuration.py +0 -0
  22. {elody-0.0.196 → elody-0.0.197}/src/elody/object_configurations/job_configuration.py +0 -0
  23. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/__init__.py +0 -0
  24. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authentication/__init__.py +0 -0
  25. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authentication/base_user_tenant_validation_policy.py +0 -0
  26. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authentication/multi_tenant_policy.py +0 -0
  27. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authorization/__init__.py +0 -0
  28. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authorization/filter_generic_objects_policy.py +0 -0
  29. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authorization/filter_generic_objects_policy_v2.py +0 -0
  30. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authorization/generic_object_detail_policy.py +0 -0
  31. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authorization/generic_object_mediafiles_policy.py +0 -0
  32. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authorization/generic_object_metadata_policy.py +0 -0
  33. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authorization/generic_object_relations_policy.py +0 -0
  34. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authorization/generic_object_request_policy.py +0 -0
  35. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authorization/generic_object_request_policy_v2.py +0 -0
  36. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authorization/mediafile_derivatives_policy.py +0 -0
  37. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authorization/mediafile_download_policy.py +0 -0
  38. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authorization/multi_tenant_policy.py +0 -0
  39. {elody-0.0.196 → elody-0.0.197}/src/elody/policies/authorization/tenant_request_policy.py +0 -0
  40. {elody-0.0.196 → elody-0.0.197}/src/elody/schemas.py +0 -0
  41. {elody-0.0.196 → elody-0.0.197}/src/elody/util.py +0 -0
  42. {elody-0.0.196 → elody-0.0.197}/src/elody/validator.py +0 -0
  43. {elody-0.0.196 → elody-0.0.197}/src/elody.egg-info/SOURCES.txt +0 -0
  44. {elody-0.0.196 → elody-0.0.197}/src/elody.egg-info/dependency_links.txt +0 -0
  45. {elody-0.0.196 → elody-0.0.197}/src/elody.egg-info/requires.txt +0 -0
  46. {elody-0.0.196 → elody-0.0.197}/src/elody.egg-info/top_level.txt +0 -0
  47. {elody-0.0.196 → elody-0.0.197}/src/tests/__init_.py +0 -0
  48. {elody-0.0.196 → elody-0.0.197}/src/tests/data.py +0 -0
  49. {elody-0.0.196 → elody-0.0.197}/src/tests/unit/__init__.py +0 -0
  50. {elody-0.0.196 → elody-0.0.197}/src/tests/unit/test_csv.py +0 -0
  51. {elody-0.0.196 → elody-0.0.197}/src/tests/unit/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: elody
3
- Version: 0.0.196
3
+ Version: 0.0.197
4
4
  Summary: elody SDK for Python
5
5
  Author-email: Inuits <developers@inuits.eu>
6
6
  License: GNU GENERAL PUBLIC LICENSE
@@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"
6
6
 
7
7
  [project]
8
8
  name = "elody"
9
- version = "0.0.196"
9
+ version = "0.0.197"
10
10
  description = "elody SDK for Python"
11
11
  readme = "README.md"
12
12
  authors = [{ name = "Inuits", email = "developers@inuits.eu" }]
@@ -1,5 +1,6 @@
1
1
  from configuration import get_object_configuration_mapper # pyright: ignore
2
2
  from elody.error_codes import ErrorCode, get_error_code, get_read
3
+ from elody.util import flatten_dict
3
4
  from serialization.serialize import serialize # pyright: ignore
4
5
  from werkzeug.exceptions import NotFound
5
6
 
@@ -33,6 +34,12 @@ def get_content(item, request, content):
33
34
  )
34
35
 
35
36
 
37
+ def get_flat_item_and_object_lists(item):
38
+ config = get_object_configuration_mapper().get(item["type"])
39
+ object_lists = config.document_info().get("object_lists", {})
40
+ return flatten_dict(object_lists, item), object_lists
41
+
42
+
36
43
  def get_item(storage_manager, user_context_bag, view_args) -> dict:
37
44
  view_args = view_args or {}
38
45
  if id := view_args.get("id"):
@@ -1,9 +1,8 @@
1
1
  import re as regex
2
2
 
3
- from configuration import get_object_configuration_mapper # pyright: ignore
4
3
  from copy import deepcopy
5
4
  from elody.error_codes import ErrorCode, get_error_code, get_read
6
- from elody.policies.helpers import get_item
5
+ from elody.policies.helpers import get_flat_item_and_object_lists, get_item
7
6
  from elody.util import flatten_dict, interpret_flat_key
8
7
  from inuits_policy_based_auth.contexts.user_context import UserContext
9
8
  from logging_elody.log import log # pyright: ignore
@@ -133,7 +132,7 @@ def __prepare_item_for_permission_check(item, permissions, crud):
133
132
  if item.get("type", "") not in permissions[crud].keys():
134
133
  return item, None, None, None
135
134
 
136
- flat_item, object_lists = __get_flat_item_and_object_lists(item)
135
+ flat_item, object_lists = get_flat_item_and_object_lists(item)
137
136
  return (
138
137
  item,
139
138
  flat_item,
@@ -265,7 +264,7 @@ def __item_value_in_values(
265
264
  if isinstance(item_value, list):
266
265
  item_value = item_value[0]
267
266
  item = get_item(StorageManager(), user_context.bag, {"id": item_value})
268
- flat_item, _ = __get_flat_item_and_object_lists(item)
267
+ flat_item, _ = get_flat_item_and_object_lists(item)
269
268
  return __item_value_in_values(
270
269
  flat_item, key_of_relation, values, flat_request_body, user_context
271
270
  )
@@ -300,9 +299,3 @@ def __get_element_from_object_list_of_item(
300
299
  if element[object_lists[object_list]] == key:
301
300
  return element
302
301
  return {}
303
-
304
-
305
- def __get_flat_item_and_object_lists(item):
306
- config = get_object_configuration_mapper().get(item["type"])
307
- object_lists = config.document_info().get("object_lists", {})
308
- return flatten_dict(object_lists, item), object_lists
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: elody
3
- Version: 0.0.196
3
+ Version: 0.0.197
4
4
  Summary: elody SDK for Python
5
5
  Author-email: Inuits <developers@inuits.eu>
6
6
  License: GNU GENERAL PUBLIC LICENSE
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