oarepo-runtime 2.0.0.dev19__py3-none-any.whl → 2.0.0.dev20__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.
@@ -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.0dev19"
22
+ __version__ = "2.0.0dev20"
23
23
 
24
24
  __all__ = ("Model", "OARepoRuntime", "__version__", "current_runtime")
oarepo_runtime/api.py CHANGED
@@ -126,16 +126,17 @@ class Model[
126
126
  exports: list[Export] | None = None,
127
127
  records_alias_enabled: bool = True,
128
128
  model_metadata: ModelMetadata | None = None,
129
+ features: Mapping[str, Any] | None = None,
129
130
  ):
130
131
  """Initialize the model configuration.
131
132
 
132
- :param name: Name of the model, human readable.
133
- :param version: Version of the model, should be a valid semantic version.
134
- :param description: Description of the model, human readable.
133
+ :param name: Name of the model, human-readable.
134
+ :param version: Version of the model should be a valid semantic version.
135
+ :param description: Description of the model, human-readable.
135
136
  :param service: Name of the service inside the `current_service_registry` or
136
137
  a configured service instance.
137
138
  :param service_config: Service configuration, if not provided,
138
- if will be taken from the service.
139
+ it will be taken from the service.
139
140
  :param record: Record class, if not provided, it will be taken from the service
140
141
  configuration.
141
142
  :param draft: Draft class, if not provided, it will be taken from the service
@@ -146,9 +147,10 @@ class Model[
146
147
  taken from the resource class.
147
148
  :param exports: List of export formats that can be used to export the record.
148
149
  If not provided, no exports are available.
149
- :param records_alias_enabled: Whether the records alias is enabled for this model.
150
+ :param records_alias_enabled: Whether the record alias is enabled for this model.
150
151
  Such models will be searchable via the `/api/records` endpoint.
151
152
  :param model_metadata: Metadata of the model.
153
+ :param features: Features of the model. Filled by the feature presets themselves during registration.
152
154
  """
153
155
  self._code = code
154
156
  self._name = name
@@ -171,6 +173,7 @@ class Model[
171
173
  self._resource_config = resource_config
172
174
  self._exports = exports or []
173
175
  self._model_metadata = model_metadata
176
+ self._features = features
174
177
 
175
178
  @property
176
179
  def code(self) -> str:
@@ -342,3 +345,8 @@ class Model[
342
345
  def response_handlers(self) -> dict[str, ResponseHandler]:
343
346
  """Get all response handlers from the resource configuration."""
344
347
  return cast("dict[str, ResponseHandler]", self.resource_config.response_handlers)
348
+
349
+ @property
350
+ def features(self) -> Mapping[str, Any] | None:
351
+ """Get a mapping of features."""
352
+ return self._features
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: oarepo-runtime
3
- Version: 2.0.0.dev19
3
+ Version: 2.0.0.dev20
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
@@ -1,5 +1,5 @@
1
- oarepo_runtime/__init__.py,sha256=ELfuJkeP59PnlRE7L7YZP4hwKX8EcHdzurXJYP3b2xs,686
2
- oarepo_runtime/api.py,sha256=7gPeRS66moT1lIedPRmuK0EnB8PpGO7iD5eRCQOty4U,12552
1
+ oarepo_runtime/__init__.py,sha256=nO0-3kAX6FNfJkweQPUytZrPz_xFWAL-klPgG6pvcZs,686
2
+ oarepo_runtime/api.py,sha256=R2el3Oam0XV4gPANvJQ5pglIaEWTIY_RXLlPygCs5Xk,12883
3
3
  oarepo_runtime/config.py,sha256=RUEPFn_5bKp9Wb0OY-Fb3VK30m35vF5IsLjYaQHhP3g,3838
4
4
  oarepo_runtime/ext.py,sha256=G9j5IgnVPdE656qaiN4RllpOkdyToP8v9uwas3DdpTY,8451
5
5
  oarepo_runtime/proxies.py,sha256=PXaRiBh5qs5-h8M81cJOgtqypFQcYUSjiSn2TLSujRw,648
@@ -34,8 +34,8 @@ oarepo_runtime/services/records/mapping.py,sha256=y3oeToKEnaRYpMV3q2-2cXNzyzyL3X
34
34
  oarepo_runtime/services/schema/__init__.py,sha256=jgAPI_uKC6Ug4KQWnwQVg3-aNaw-eHja323AUFo5ELo,351
35
35
  oarepo_runtime/services/schema/i18n.py,sha256=9D1zOQaPKAnYzejB0vO-m2BJYnam0N0Lrq4jID7twfE,3174
36
36
  oarepo_runtime/services/schema/i18n_ui.py,sha256=DbusphhGDeaobTt4nuwNgKZ6Houlu4Sv3SuMGkdjRRY,3582
37
- oarepo_runtime-2.0.0.dev19.dist-info/METADATA,sha256=5XpM4niZTzcf6Hb-bFN_HeoDQPh7ci-u43PNYw9GleE,4495
38
- oarepo_runtime-2.0.0.dev19.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
39
- oarepo_runtime-2.0.0.dev19.dist-info/entry_points.txt,sha256=rOfs8R1oXFN_dLH9zAZ6ydkvr83mDajegc6NBIRsCMQ,318
40
- oarepo_runtime-2.0.0.dev19.dist-info/licenses/LICENSE,sha256=h2uWz0OaB3EN-J1ImdGJZzc7yvfQjvHVYdUhQ-H7ypY,1064
41
- oarepo_runtime-2.0.0.dev19.dist-info/RECORD,,
37
+ oarepo_runtime-2.0.0.dev20.dist-info/METADATA,sha256=tc0eRZ5cy3Q39i4vuTYkIS_54AaGsl9W6COPQZQp6fo,4495
38
+ oarepo_runtime-2.0.0.dev20.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
39
+ oarepo_runtime-2.0.0.dev20.dist-info/entry_points.txt,sha256=rOfs8R1oXFN_dLH9zAZ6ydkvr83mDajegc6NBIRsCMQ,318
40
+ oarepo_runtime-2.0.0.dev20.dist-info/licenses/LICENSE,sha256=h2uWz0OaB3EN-J1ImdGJZzc7yvfQjvHVYdUhQ-H7ypY,1064
41
+ oarepo_runtime-2.0.0.dev20.dist-info/RECORD,,