oarepo-workflows 2.0.0.dev8__tar.gz → 2.0.0.dev10__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 (54) hide show
  1. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/PKG-INFO +1 -1
  2. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/__init__.py +1 -1
  3. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/services/permissions/generators.py +2 -0
  4. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/services/permissions/record_permission_policy.py +6 -2
  5. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/.gitignore +0 -0
  6. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/LICENSE +0 -0
  7. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/README.md +0 -0
  8. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/base.py +0 -0
  9. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/errors.py +0 -0
  10. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/ext.py +0 -0
  11. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/ext_config.py +0 -0
  12. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/initial_config.py +0 -0
  13. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/__init__.py +0 -0
  14. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/presets/__init__.py +0 -0
  15. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/presets/records/__init__.py +0 -0
  16. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/presets/records/draft_record.py +0 -0
  17. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/presets/records/parent_record.py +0 -0
  18. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/presets/records/parent_record_metadata.py +0 -0
  19. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/presets/records/record.py +0 -0
  20. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/presets/records/workflows_mapping.py +0 -0
  21. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/presets/services/__init__.py +0 -0
  22. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/presets/services/records/__init__.py +0 -0
  23. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/presets/services/records/parent_record_schema.py +0 -0
  24. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/presets/services/records/permission_policy.py +0 -0
  25. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/presets/services/records/record_schema.py +0 -0
  26. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/model/presets/services/records/service_config.py +0 -0
  27. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/proxies.py +0 -0
  28. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/records/__init__.py +0 -0
  29. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/records/systemfields/__init__.py +0 -0
  30. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/records/systemfields/state.py +0 -0
  31. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/records/systemfields/workflow.py +0 -0
  32. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/requests/__init__.py +0 -0
  33. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/requests/events.py +0 -0
  34. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/requests/generators/__init__.py +0 -0
  35. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/requests/generators/auto.py +0 -0
  36. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/requests/generators/conditionals.py +0 -0
  37. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/requests/generators/multiple_entities.py +0 -0
  38. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/requests/generators/recipient_generator.py +0 -0
  39. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/requests/permissions.py +0 -0
  40. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/requests/policy.py +0 -0
  41. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/requests/requests.py +0 -0
  42. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/resolvers/__init__.py +0 -0
  43. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/resolvers/auto_approve/__init__.py +0 -0
  44. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/resolvers/multiple_entities/__init__.py +0 -0
  45. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/services/__init__.py +0 -0
  46. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/services/auto_approve/__init__.py +0 -0
  47. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/services/components/__init__.py +0 -0
  48. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/services/components/workflow.py +0 -0
  49. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/services/multiple_entities/__init__.py +0 -0
  50. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/services/permissions/__init__.py +0 -0
  51. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/services/permissions/workflow_permissions.py +0 -0
  52. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/services/results.py +0 -0
  53. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/oarepo_workflows/services/uow.py +0 -0
  54. {oarepo_workflows-2.0.0.dev8 → oarepo_workflows-2.0.0.dev10}/pyproject.toml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: oarepo-workflows
3
- Version: 2.0.0.dev8
3
+ Version: 2.0.0.dev10
4
4
  Summary: OARepo module allowing record workflow functionality
5
5
  Project-URL: Homepage, https://github.com/oarepo/oarepo-workflows
6
6
  Author-email: Ronald Krist <krist@cesnet.cz>
@@ -27,7 +27,7 @@ from .requests import (
27
27
  WorkflowTransitions,
28
28
  )
29
29
 
30
- __version__ = "2.0.0dev8"
30
+ __version__ = "2.0.0dev10"
31
31
  """Version of the library."""
32
32
 
33
33
 
@@ -43,6 +43,8 @@ def query_filters_from_all_workflows(action: str, **context: Any) -> list[dsl.qu
43
43
  queries = []
44
44
  for workflow in workflows:
45
45
  q_in_workflow = dsl.Q("term", **{"parent.workflow": workflow.code})
46
+ if workflow.code == current_oarepo_workflows.default_workflow.code:
47
+ q_in_workflow = q_in_workflow | ~dsl.Q("exists", field="parent.workflow")
46
48
  workflow_filters = workflow.permissions(action, **context).query_filters
47
49
  if not workflow_filters:
48
50
  workflow_filters = [dsl.Q("match_none")]
@@ -13,10 +13,11 @@ from typing import TYPE_CHECKING
13
13
 
14
14
  from invenio_records_permissions.generators import (
15
15
  AnyUser,
16
+ AuthenticatedUser,
16
17
  SystemProcess,
17
18
  )
18
19
 
19
- from .generators import FromRecordWorkflow, InAnyWorkflow, SameAs, query_filters_from_all_workflows
20
+ from .generators import FromRecordWorkflow, SameAs, query_filters_from_all_workflows
20
21
 
21
22
  if TYPE_CHECKING:
22
23
  from invenio_records_permissions import RecordPermissionPolicy as InvenioRecordPermissionPolicy
@@ -32,7 +33,10 @@ class WorkflowRecordPermissionPolicyMixin(InvenioRecordPermissionPolicy):
32
33
  """
33
34
 
34
35
  can_commit_files = (FromRecordWorkflow("commit_files"),)
35
- can_create = (InAnyWorkflow("create"),)
36
+ can_create = (
37
+ SystemProcess(),
38
+ AuthenticatedUser(),
39
+ )
36
40
  can_create_files = (FromRecordWorkflow("create_files"),)
37
41
  can_delete = (FromRecordWorkflow("delete"),)
38
42
  can_delete_draft = (FromRecordWorkflow("delete_draft"),)