oarepo-runtime 2.0.0.dev34__tar.gz → 2.0.0.dev35__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 (49) hide show
  1. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/PKG-INFO +1 -1
  2. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/__init__.py +1 -1
  3. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/records/systemfields/mapping.py +2 -11
  4. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/records/systemfields/publication_status.py +7 -7
  5. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/.gitignore +0 -0
  6. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/LICENSE +0 -0
  7. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/README.md +0 -0
  8. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/api.py +0 -0
  9. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/cli/__init__.py +0 -0
  10. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/cli/search.py +0 -0
  11. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/config.py +0 -0
  12. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/ext.py +0 -0
  13. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/info/__init__.py +0 -0
  14. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/info/views.py +0 -0
  15. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/proxies.py +0 -0
  16. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/py.typed +0 -0
  17. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/records/__init__.py +0 -0
  18. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/records/drafts.py +0 -0
  19. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/records/mapping.py +0 -0
  20. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/records/pid_providers.py +0 -0
  21. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/records/systemfields/__init__.py +0 -0
  22. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/records/systemfields/base.py +0 -0
  23. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/records/systemfields/custom_fields.py +0 -0
  24. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/records/systemfields/selectors.py +0 -0
  25. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/resources/__init__.py +0 -0
  26. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/resources/config.py +0 -0
  27. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/__init__.py +0 -0
  28. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/config/__init__.py +0 -0
  29. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/config/components.py +0 -0
  30. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/config/link_conditions.py +0 -0
  31. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/config/permissions.py +0 -0
  32. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/facets/__init__.py +0 -0
  33. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/facets/base.py +0 -0
  34. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/facets/date.py +0 -0
  35. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/facets/nested_facet.py +0 -0
  36. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/facets/params.py +0 -0
  37. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/facets/utils.py +0 -0
  38. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/generators.py +0 -0
  39. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/records/__init__.py +0 -0
  40. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/records/custom_fields.py +0 -0
  41. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/records/links.py +0 -0
  42. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/records/mapping.py +0 -0
  43. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/results.py +0 -0
  44. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/schema/__init__.py +0 -0
  45. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/schema/i18n.py +0 -0
  46. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/schema/i18n_ui.py +0 -0
  47. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/services/schema/ui.py +0 -0
  48. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/oarepo_runtime/typing.py +0 -0
  49. {oarepo_runtime-2.0.0.dev34 → oarepo_runtime-2.0.0.dev35}/pyproject.toml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: oarepo-runtime
3
- Version: 2.0.0.dev34
3
+ Version: 2.0.0.dev35
4
4
  Summary: A set of runtime extensions of Invenio repository
5
5
  Project-URL: Homepage, https://github.com/oarepo/oarepo-runtime
6
6
  License-Expression: MIT
@@ -19,6 +19,6 @@ from .api import Model
19
19
  from .ext import OARepoRuntime
20
20
  from .proxies import current_runtime
21
21
 
22
- __version__ = "2.0.0dev34"
22
+ __version__ = "2.0.0dev35"
23
23
 
24
24
  __all__ = ("Model", "OARepoRuntime", "__version__", "current_runtime")
@@ -10,20 +10,15 @@
10
10
 
11
11
  from __future__ import annotations
12
12
 
13
- from typing import TYPE_CHECKING, Any, override
13
+ from typing import TYPE_CHECKING
14
14
 
15
15
  from invenio_records.api import Record
16
16
 
17
- from .base import TypedSystemField
18
-
19
17
  if TYPE_CHECKING:
20
18
  from invenio_records.dumpers import Dumper
21
- from invenio_records.systemfields import SystemField
22
- else:
23
- SystemField = object
24
19
 
25
20
 
26
- class MappingSystemFieldMixin[R: Record = Record, V: Any = Any](TypedSystemField[R, V]):
21
+ class MappingSystemFieldMixin[R: Record = Record]:
27
22
  """Mixin class that provides default mapping, mapping settings, and dynamic templates for system fields."""
28
23
 
29
24
  @property
@@ -42,18 +37,14 @@ class MappingSystemFieldMixin[R: Record = Record, V: Any = Any](TypedSystemField
42
37
  return []
43
38
 
44
39
  # The following methods are added just for typing purposes.
45
- @override
46
40
  def pre_dump(self, record: R, data: dict, dumper: Dumper | None = None) -> None:
47
41
  """Dump record to the data - pre-dump phase."""
48
42
 
49
- @override
50
43
  def post_dump(self, record: R, data: dict, dumper: Dumper | None = None) -> None:
51
44
  """Dump record to the data - post-dump phase."""
52
45
 
53
- @override
54
46
  def pre_load(self, data: dict, loader: Dumper | None = None) -> None:
55
47
  """Load record from the data - pre-load phase."""
56
48
 
57
- @override
58
49
  def post_load(self, record: R, data: dict, loader: Dumper | None = None) -> None:
59
50
  """Load record from the data - post-load phase."""
@@ -10,17 +10,18 @@
10
10
 
11
11
  from __future__ import annotations
12
12
 
13
- from typing import TYPE_CHECKING, Any, override
13
+ from typing import TYPE_CHECKING, Self, override
14
14
 
15
15
  from invenio_records.api import Record
16
16
 
17
+ from .base import TypedSystemField
17
18
  from .mapping import MappingSystemFieldMixin
18
19
 
19
20
  if TYPE_CHECKING:
20
21
  from invenio_records.dumpers import Dumper
21
22
 
22
23
 
23
- class PublicationStatusSystemField(MappingSystemFieldMixin[Record, str]):
24
+ class PublicationStatusSystemField(MappingSystemFieldMixin, TypedSystemField[Record, str]):
24
25
  """A system field to track the status of a record (either 'draft' or 'published').
25
26
 
26
27
  The default key for this field is 'publication_status', but it can be customized.
@@ -45,16 +46,15 @@ class PublicationStatusSystemField(MappingSystemFieldMixin[Record, str]):
45
46
 
46
47
  @override
47
48
  def post_dump(self, record: Record, data: dict, dumper: Dumper | None = None) -> None:
48
- if self.key is None:
49
- return # pragma: no cover
50
49
  if not self.attr_name:
51
50
  raise ValueError( # pragma: no cover
52
51
  "attr_name must be set for PublicationStatusSystemField"
53
52
  )
54
53
  data[self.key] = getattr(record, self.attr_name)
55
54
 
56
- def __get__(self, record: Record | None, owner: Any = None) -> Any:
55
+ @override
56
+ def __get__(self, instance: Record | None, owner: type[Record]) -> Self | str: # type: ignore[override]
57
57
  """Access the attribute."""
58
- if record is None:
58
+ if instance is None:
59
59
  return self
60
- return "draft" if getattr(record, "is_draft", False) else "published"
60
+ return "draft" if getattr(instance, "is_draft", False) else "published"