invenio-app-rdm 14.0.0b2.dev2__py2.py3-none-any.whl → 14.0.0b2.dev4__py2.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.
Files changed (18) hide show
  1. invenio_app_rdm/__init__.py +1 -1
  2. invenio_app_rdm/config.py +4 -4
  3. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/deposit.html +3 -0
  4. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/detail.html +5 -2
  5. invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/creatibutors.html +1 -1
  6. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/deposit/RDMDepositForm.js +7 -1
  7. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/CreateAccessLink.js +15 -2
  8. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/LinksSearchResultContainer.js +21 -1
  9. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/LinksTab.js +3 -1
  10. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessRequests/AccessRequestsTab.js +11 -2
  11. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/ShareModal.js +14 -0
  12. invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/AccessRequestExpiration.js +8 -3
  13. {invenio_app_rdm-14.0.0b2.dev2.dist-info → invenio_app_rdm-14.0.0b2.dev4.dist-info}/METADATA +10 -1
  14. {invenio_app_rdm-14.0.0b2.dev2.dist-info → invenio_app_rdm-14.0.0b2.dev4.dist-info}/RECORD +18 -18
  15. {invenio_app_rdm-14.0.0b2.dev2.dist-info → invenio_app_rdm-14.0.0b2.dev4.dist-info}/WHEEL +0 -0
  16. {invenio_app_rdm-14.0.0b2.dev2.dist-info → invenio_app_rdm-14.0.0b2.dev4.dist-info}/entry_points.txt +0 -0
  17. {invenio_app_rdm-14.0.0b2.dev2.dist-info → invenio_app_rdm-14.0.0b2.dev4.dist-info}/licenses/LICENSE +0 -0
  18. {invenio_app_rdm-14.0.0b2.dev2.dist-info → invenio_app_rdm-14.0.0b2.dev4.dist-info}/top_level.txt +0 -0
@@ -17,6 +17,6 @@
17
17
  #
18
18
  # See PEP 0440 for details - https://www.python.org/dev/peps/pep-0440
19
19
 
20
- __version__ = "14.0.0b2.dev2"
20
+ __version__ = "14.0.0b2.dev4"
21
21
 
22
22
  __all__ = ("__version__",)
invenio_app_rdm/config.py CHANGED
@@ -651,7 +651,7 @@ OAISERVER_METADATA_FORMATS = {
651
651
  },
652
652
  "datacite": {
653
653
  "serializer": "invenio_rdm_records.oai:datacite_etree",
654
- "schema": "http://schema.datacite.org/meta/kernel-4.3/metadata.xsd",
654
+ "schema": "http://schema.datacite.org/meta/kernel-4.5/metadata.xsd",
655
655
  "namespace": "http://datacite.org/schema/kernel-4",
656
656
  },
657
657
  "oai_datacite": {
@@ -661,7 +661,7 @@ OAISERVER_METADATA_FORMATS = {
661
661
  },
662
662
  "datacite4": {
663
663
  "serializer": "invenio_rdm_records.oai:datacite_etree",
664
- "schema": "http://schema.datacite.org/meta/kernel-4.3/metadata.xsd",
664
+ "schema": "http://schema.datacite.org/meta/kernel-4.5/metadata.xsd",
665
665
  "namespace": "http://datacite.org/schema/kernel-4",
666
666
  },
667
667
  "oai_datacite4": {
@@ -840,7 +840,7 @@ APP_RDM_RECORD_EXPORTERS = {
840
840
  "datacite-json": {
841
841
  "name": _("DataCite JSON"),
842
842
  "serializer": (
843
- "invenio_rdm_records.resources.serializers:DataCite43JSONSerializer"
843
+ "invenio_rdm_records.resources.serializers:DataCite45JSONSerializer"
844
844
  ),
845
845
  "params": {"options": {"indent": 2, "sort_keys": True}},
846
846
  "content-type": "application/vnd.datacite.datacite+json",
@@ -849,7 +849,7 @@ APP_RDM_RECORD_EXPORTERS = {
849
849
  "datacite-xml": {
850
850
  "name": _("DataCite XML"),
851
851
  "serializer": (
852
- "invenio_rdm_records.resources.serializers:DataCite43XMLSerializer"
852
+ "invenio_rdm_records.resources.serializers:DataCite45XMLSerializer"
853
853
  ),
854
854
  "params": {},
855
855
  "content-type": "application/vnd.datacite.datacite+xml",
@@ -69,6 +69,9 @@
69
69
  value='{{ permissions | tojson }}'>
70
70
  {%- endif %}
71
71
 
72
+ <input type="hidden" id="deposits-share-btn-require-link-expiration"
73
+ data-share-btn-require-link-expiration='{{ config.RDM_RECORDS_REQUIRE_SECRET_LINKS_EXPIRATION | tojson }}'>
74
+
72
75
  <div id="deposit-form"></div>
73
76
 
74
77
  {%- endblock page_body %}
@@ -48,6 +48,9 @@
48
48
 
49
49
 
50
50
  {%- block page_body %}
51
+ <span id="detail-share-btn-require-link-expiration"
52
+ data-share-btn-require-link-expiration='{{ config.RDM_RECORDS_REQUIRE_SECRET_LINKS_EXPIRATION | tojson }}'>
53
+
51
54
  <section id="banners" class="banners" aria-label="{{ _('Information banner') }}">
52
55
  <!-- COMMUNITY HEADER: hide it when displaying the submission request -->
53
56
  {% if not is_preview_submission_request %}
@@ -262,13 +265,13 @@
262
265
  {# Title #}
263
266
  {%- block record_title -%}
264
267
  <section id="record-title-section"
265
- aria-label="{{ _('Record title and creators') }}">
268
+ aria-label="{{ _('Record title, authors and contributors') }}">
266
269
  <h1 id="record-title"
267
270
  class="wrap-overflowing-text">{{ metadata.title }}</h1>
268
271
 
269
272
  {% if record_ui["ui"]["creators"] or record_ui["ui"]["contributors"] %}
270
273
  <section id="creatibutors"
271
- aria-label="{{ _('Creators and contributors') }}">
274
+ aria-label="{{ _('Authors and contributors') }}">
272
275
  {%- include "invenio_app_rdm/records/details/creatibutors.html" %}
273
276
  </section>
274
277
  {% endif %}
@@ -13,7 +13,7 @@
13
13
  {% if record_ui["ui"]["creators"] and record_ui["ui"]["creators"]["creators"] %}
14
14
  <div class="row ui accordion affiliations">
15
15
  <div class="sixteen wide mobile twelve wide tablet thirteen wide computer column">
16
- <h3 class="sr-only">{{ _('Creators') }}</h3>
16
+ <h3 class="sr-only">{{ _('Authors/Creators') }}</h3>
17
17
  <ul class="creatibutors">
18
18
  {{ show_creatibutors(record_ui["ui"]["creators"]["creators"], show_affiliations=True, show_role=True) }}
19
19
  </ul>
@@ -303,8 +303,11 @@ export class RDMDepositForm extends Component {
303
303
  fieldPath="metadata.creators"
304
304
  >
305
305
  <CreatibutorsField
306
- label={i18next.t("Creators")}
306
+ label={i18next.t("Authors/Creators")}
307
307
  labelIcon="user"
308
+ addButtonHelpText={i18next.t(
309
+ "Use the Authors/Creators field for names that should appear in the citation. Use the Contributors field below for other names."
310
+ )}
308
311
  fieldPath="metadata.creators"
309
312
  roleOptions={this.vocabularies.metadata.creators.role}
310
313
  schema="creators"
@@ -423,6 +426,9 @@ export class RDMDepositForm extends Component {
423
426
  >
424
427
  <CreatibutorsField
425
428
  addButtonLabel={i18next.t("Add contributor")}
429
+ addButtonHelpText={i18next.t(
430
+ "Contributors are not included in the citation, but are shown on the record page."
431
+ )}
426
432
  label={i18next.t("Contributors")}
427
433
  labelIcon="user plus"
428
434
  fieldPath="metadata.contributors"
@@ -25,7 +25,17 @@ export class CreateAccessLink extends Component {
25
25
 
26
26
  render() {
27
27
  const { permission, expiresAt, description } = this.state;
28
- const { handleCreation, loading, dropdownOptions } = this.props;
28
+ const {
29
+ hasLinkExpirationError,
30
+ handleCreation,
31
+ loading,
32
+ dropdownOptions,
33
+ isAccessLinksExpirationRequired,
34
+ } = this.props;
35
+ const linkExpirationDateHelptext =
36
+ isAccessLinksExpirationRequired === true
37
+ ? i18next.t("Expiration date: YYYY-MM-DD (required).")
38
+ : i18next.t("Expiration date: YYYY-MM-DD or never if blank (optional).");
29
39
  return (
30
40
  <Table.Row>
31
41
  <Table.Cell width={16}>
@@ -45,6 +55,7 @@ export class CreateAccessLink extends Component {
45
55
  </Grid.Column>
46
56
  <Grid.Column width={4}>
47
57
  <Input
58
+ className={`${hasLinkExpirationError ? "error" : ""}`}
48
59
  id="access-request-expires-at"
49
60
  onChange={(e, data) => {
50
61
  this.setState({ expiresAt: data.value });
@@ -56,7 +67,7 @@ export class CreateAccessLink extends Component {
56
67
  htmlFor="access-request-expires-at"
57
68
  className="helptext mb-0 mt-10"
58
69
  >
59
- {i18next.t("Expiration date: YYYY-MM-DD or never if blank (optional).")}
70
+ {linkExpirationDateHelptext}
60
71
  </label>
61
72
  </Grid.Column>
62
73
  <Grid.Column width={4}>
@@ -95,4 +106,6 @@ CreateAccessLink.propTypes = {
95
106
  loading: PropTypes.bool.isRequired,
96
107
  dropdownOptions: PropTypes.array.isRequired,
97
108
  record: PropTypes.object.isRequired,
109
+ hasLinkExpirationError: PropTypes.bool.isRequired,
110
+ isAccessLinksExpirationRequired: PropTypes.bool.isRequired,
98
111
  };
@@ -140,9 +140,26 @@ export class LinksSearchResultContainer extends Component {
140
140
  return options;
141
141
  };
142
142
 
143
+ checkIfLinkExpirationError = (error) => {
144
+ const response = error?.response;
145
+ const data = response?.data;
146
+ const errors = data?.errors;
147
+ const hasExpirationError = errors?.some(
148
+ (errorObject) => errorObject?.field === "expires_at"
149
+ );
150
+ return hasExpirationError;
151
+ };
152
+
143
153
  render() {
144
- const { results, record, onItemAddedOrDeleted, onPermissionChanged } = this.props;
154
+ const {
155
+ results,
156
+ record,
157
+ onItemAddedOrDeleted,
158
+ onPermissionChanged,
159
+ isAccessLinksExpirationRequired,
160
+ } = this.props;
145
161
  const { loading, error } = this.state;
162
+ const hasLinkExpirationDateError = this.checkIfLinkExpirationError(error);
146
163
  return (
147
164
  <>
148
165
  {error && this.errorMessage()}
@@ -197,10 +214,12 @@ export class LinksSearchResultContainer extends Component {
197
214
 
198
215
  <Table color="green">
199
216
  <CreateAccessLink
217
+ hasLinkExpirationError={hasLinkExpirationDateError}
200
218
  handleCreation={this.handleCreation}
201
219
  loading={loading}
202
220
  record={record}
203
221
  dropdownOptions={this.generateDropdownOptions()}
222
+ isAccessLinksExpirationRequired={isAccessLinksExpirationRequired}
204
223
  />
205
224
  </Table>
206
225
  </>
@@ -213,4 +232,5 @@ LinksSearchResultContainer.propTypes = {
213
232
  record: PropTypes.object.isRequired,
214
233
  onItemAddedOrDeleted: PropTypes.func.isRequired,
215
234
  onPermissionChanged: PropTypes.func.isRequired,
235
+ isAccessLinksExpirationRequired: PropTypes.bool.isRequired,
216
236
  };
@@ -68,7 +68,7 @@ export class LinksTab extends Component {
68
68
  };
69
69
 
70
70
  render() {
71
- const { record, results } = this.props;
71
+ const { record, results, isAccessLinksExpirationRequired } = this.props;
72
72
  const { loading, error } = this.state;
73
73
  return (
74
74
  <>
@@ -89,6 +89,7 @@ export class LinksTab extends Component {
89
89
  record={record}
90
90
  onItemAddedOrDeleted={this.onLinksAddedOrDeleted}
91
91
  onPermissionChanged={this.onPermissionChanged}
92
+ isAccessLinksExpirationRequired={isAccessLinksExpirationRequired}
92
93
  />
93
94
  )}
94
95
  </Modal.Content>
@@ -101,4 +102,5 @@ LinksTab.propTypes = {
101
102
  record: PropTypes.string.isRequired,
102
103
  results: PropTypes.array.isRequired,
103
104
  updateLinksState: PropTypes.func.isRequired,
105
+ isAccessLinksExpirationRequired: PropTypes.bool.isRequired,
104
106
  };
@@ -72,19 +72,24 @@ export class AccessRequestsTab extends Component {
72
72
  };
73
73
 
74
74
  initFormValues = () => {
75
- const { record } = this.props;
75
+ const { record, isAccessLinksExpirationRequired } = this.props;
76
76
 
77
77
  const settings = record.parent.access.settings;
78
78
 
79
79
  if (!_has(settings, "secret_link_expiration")) {
80
80
  settings["secret_link_expiration"] = 0;
81
+ } else if (
82
+ settings["secret_link_expiration"] === 0 &&
83
+ isAccessLinksExpirationRequired
84
+ ) {
85
+ settings["secret_link_expiration"] = 30;
81
86
  }
82
87
  return { ...settings };
83
88
  };
84
89
 
85
90
  render() {
86
91
  const { loading, error, actionSuccess } = this.state;
87
- const { handleClose } = this.props;
92
+ const { handleClose, isAccessLinksExpirationRequired } = this.props;
88
93
  return (
89
94
  <Formik
90
95
  onSubmit={this.handleSubmit}
@@ -175,6 +180,9 @@ export class AccessRequestsTab extends Component {
175
180
  <AccessRequestExpirationSelect
176
181
  inline
177
182
  value={values.secret_link_expiration}
183
+ isAccessLinksExpirationRequired={
184
+ isAccessLinksExpirationRequired
185
+ }
178
186
  />
179
187
  </Form.Field>
180
188
  </Grid.Column>
@@ -227,4 +235,5 @@ AccessRequestsTab.propTypes = {
227
235
  record: PropTypes.string.isRequired,
228
236
  successCallback: PropTypes.func.isRequired,
229
237
  handleClose: PropTypes.func.isRequired,
238
+ isAccessLinksExpirationRequired: PropTypes.bool.isRequired,
230
239
  };
@@ -85,9 +85,21 @@ export class ShareModal extends Component {
85
85
  this.setState({ record: updatedRecord });
86
86
  };
87
87
 
88
+ checkIfIsAccessLinksExpirationRequired = () => {
89
+ return (
90
+ document.getElementById("deposits-share-btn-require-link-expiration")?.dataset
91
+ ?.shareBtnRequireLinkExpiration === "true" ||
92
+ document.getElementById("detail-share-btn-require-link-expiration")?.dataset
93
+ ?.shareBtnRequireLinkExpiration === "true" ||
94
+ false
95
+ );
96
+ };
97
+
88
98
  panes = (record, permissions) => {
89
99
  const { handleClose, groupsEnabled } = this.props;
90
100
  const { linksResults, groupsResults, usersResults } = this.state;
101
+ const isAccessLinksExpirationRequired =
102
+ this.checkIfIsAccessLinksExpirationRequired();
91
103
 
92
104
  let numUsers = 0;
93
105
  let numGroups = 0;
@@ -161,6 +173,7 @@ export class ShareModal extends Component {
161
173
  results={linksResults}
162
174
  record={record}
163
175
  updateLinksState={this.updateLinksState}
176
+ isAccessLinksExpirationRequired={isAccessLinksExpirationRequired}
164
177
  />
165
178
  </Tab.Pane>
166
179
  ),
@@ -178,6 +191,7 @@ export class ShareModal extends Component {
178
191
  record={record}
179
192
  handleClose={handleClose}
180
193
  successCallback={this.handleRecordUpdate}
194
+ isAccessLinksExpirationRequired={isAccessLinksExpirationRequired}
181
195
  />
182
196
  </Tab.Pane>
183
197
  ),
@@ -6,8 +6,10 @@ import { SelectField } from "react-invenio-forms";
6
6
  export class AccessRequestExpirationSelect extends Component {
7
7
  constructor(props) {
8
8
  super(props);
9
- const { expirationOptions } = props;
10
- this.expirationOptions = expirationOptions;
9
+ const { expirationOptions, isAccessLinksExpirationRequired } = props;
10
+ this.expirationOptions = isAccessLinksExpirationRequired
11
+ ? expirationOptions.filter((option) => option.value !== "0")
12
+ : expirationOptions;
11
13
  }
12
14
 
13
15
  handleOnChange = ({ data, formikProps }) => {
@@ -16,7 +18,9 @@ export class AccessRequestExpirationSelect extends Component {
16
18
 
17
19
  render() {
18
20
  const { inline, expirationOptions, value } = this.props;
19
- const expirationSetting = value ? value.toString() : expirationOptions[0].value;
21
+ const expirationSetting = value
22
+ ? value.toString()
23
+ : this.expirationOptions[0].value;
20
24
  return (
21
25
  <SelectField
22
26
  label={i18next.t("Link expiration")}
@@ -41,6 +45,7 @@ AccessRequestExpirationSelect.propTypes = {
41
45
  ),
42
46
  inline: PropTypes.bool,
43
47
  value: PropTypes.string,
48
+ isAccessLinksExpirationRequired: PropTypes.bool.isRequired,
44
49
  };
45
50
 
46
51
  AccessRequestExpirationSelect.defaultProps = {
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: invenio-app-rdm
3
- Version: 14.0.0b2.dev2
3
+ Version: 14.0.0b2.dev4
4
4
  Summary: Invenio Research Data Management.
5
5
  Home-page: https://github.com/inveniosoftware/invenio-app-rdm
6
6
  Author: CERN
@@ -101,6 +101,15 @@ https://inveniordm.docs.cern.ch
101
101
  Changes
102
102
  =======
103
103
 
104
+ Version v14.0.0b2.dev4 (released 2025-11-05)
105
+
106
+ - refactor(config): Update DataCite serializer for schema v4.5
107
+
108
+ Version v14.0.0b2.dev3 (released 2025-11-04)
109
+
110
+ - feat(share links): handle optional/required expiration date
111
+ - feat(form): rename creators to authors and help text
112
+
104
113
  Version v14.0.0b2.dev2 (released 2025-10-24)
105
114
 
106
115
  - upgrade_scripts: v14: optimize scan to avoid scroll context overhead
@@ -1,6 +1,6 @@
1
- invenio_app_rdm/__init__.py,sha256=_vvW0mLU8A2mkHzDXnANLUM4PlYFMn68veC_cQZKYCs,704
1
+ invenio_app_rdm/__init__.py,sha256=L-KTUnHxrn_j8CKdH8hLSeku3OQ1clYsbichPl_bebM,704
2
2
  invenio_app_rdm/cli.py,sha256=G6QqNU2W6n6ICtTMnpeKFXIsdorncDmVXwwwsGH5F2k,2746
3
- invenio_app_rdm/config.py,sha256=kxAliLtzXLRysO8qxWxoSt1FhOjuDfzUi8xr40BBIYE,53632
3
+ invenio_app_rdm/config.py,sha256=pigyCXGUMru2krv-ZJ15iosbm3UBk9dmiAQauYvzWbk,53632
4
4
  invenio_app_rdm/ext.py,sha256=K7syn5CU5If7yOclFeNOCZX_u5q6VB7NJEQVm41mlng,5286
5
5
  invenio_app_rdm/tasks.py,sha256=FyrIQXVuPjms-dNEnLrVmmdwrX_IykJ87gcSNgOR6O0,1373
6
6
  invenio_app_rdm/views.py,sha256=SDr9NwZEWQcgT_3GFRYdDf6eUaK9DfnoafIkhUf9nSI,785
@@ -50,8 +50,8 @@ invenio_app_rdm/records_ui/sitemap.py,sha256=erWpwi8lx17ATicBo3dTwMiEEwHTilL8xTA
50
50
  invenio_app_rdm/records_ui/utils.py,sha256=04Q_mI3SvfuNlmSziIJldr94UI2EKXZIdHAm4qHrEN0,3469
51
51
  invenio_app_rdm/records_ui/previewer/__init__.py,sha256=T32i_ssGKONDpNB3gECpn20ubHvGYYVrNuIgCADioOM,267
52
52
  invenio_app_rdm/records_ui/previewer/iiif_simple.py,sha256=lGxB3g0hNVJDWnq5jV_KrKPwC-LR1C51DMjas1-UpBM,1589
53
- invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/deposit.html,sha256=jdtme926G943raYhGa-evTK9NfWdyDOWEoONLtb-o2Q,2791
54
- invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/detail.html,sha256=RXUfOAKKEcljINo1b6irPgHqmnNDt0BNWpTk6lTs_nY,20865
53
+ invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/deposit.html,sha256=vCz8EJsitKPFpEqp1yR2uPC97QpMvc941dK2Bgujj2c,2977
54
+ invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/detail.html,sha256=pyyAjZ8eW_HS9Pajoiw1c1n4P0EcLdx6Phh8ZHPZkUE,21046
55
55
  invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/draft_not_found.html,sha256=_FPflgqVZ556Xw349mHPSFb0FOhxYkIHfmUUTX53_LU,624
56
56
  invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/export.html,sha256=2h-FGJvNKS9ASZ0mErL2vz5jXQYiLL8u8rTO2_D3FVQ,1166
57
57
  invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/iiif_preview.html,sha256=RningdsVBXsJ8qnQjzurf0Ty8R5Tq08eS31s53c3DNE,444
@@ -61,7 +61,7 @@ invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/tombsto
61
61
  invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/access-form.html,sha256=rLkoNmouAMV8S6fAU3_PtGuqDjFTACniyiosGAKjcN0,2317
62
62
  invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/citation.html,sha256=QBbRNCBBdE7JJirLrIdCWlhcmR37qh_2QXg7AnTtwdw,576
63
63
  invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/contact.html,sha256=czuC-Ec5zJaKzFOaqhz7JqhWiCS3U3NKaQmPw9-rzks,403
64
- invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/creatibutors.html,sha256=43fnhdtCdec6d3s9B__7biS4vp0opvcMYh-1_jncYbA,2231
64
+ invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/creatibutors.html,sha256=2IKZ9dCJxcWiC80vL10qED6ajFJZ-YUDGlCui_8GmiM,2239
65
65
  invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/description.html,sha256=UGUy-EOWggvBRCZT-H418yMW4PzYgn-5QFcmgZx1P8U,930
66
66
  invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/details.html,sha256=6hWOr-iRzGnIqlVUC_ZZd7JHbp5e4LNHYNXhK-rPoeg,12289
67
67
  invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/details/doi.html,sha256=bveXC9JvZVjPKQrtZ8FFUV-fIHEN4nB1VSyomR_obxA,473
@@ -181,7 +181,7 @@ invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/components/RecordDel
181
181
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/components/RecordsResultsListItem.js,sha256=RTSQBlGQY7ww7fVGHDvDfWQNyJ07mnEoyboTGIcCgD4,6694
182
182
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/components/RecordDeletion/DeletionModal.js,sha256=kXME7Lr51ygS6PdA355Q2gh7bVcHLOBBW1ZClI_R4_E,12131
183
183
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/components/RecordDeletion/DeletionRadioGroup.js,sha256=qMFdPQkVQQsaS0P9KdPyFcuunZmGlEALjfABPueuoVU,1227
184
- invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/deposit/RDMDepositForm.js,sha256=nCr9aLp8jUZSvGUjn2lhQizf8X6qIFGDMrMJQ7pCnDE,34480
184
+ invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/deposit/RDMDepositForm.js,sha256=wC3-MSDufkBkj3C1tDkuppzTpUaizhJNGe71dcnOQNw,34914
185
185
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/deposit/ShareDraftButton.js,sha256=ICMV4Ixe-nTe6q7COZ0oyAQf2nVp2cez_-iUZobwUD0,1998
186
186
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/deposit/config.js,sha256=rd2wqiwmYOkh4kWe8AiGWJar2kA8R8TkGMnX5XZvihs,1473
187
187
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/deposit/index.js,sha256=r9MvsucIXEyW7Bbb8vuEP2ZTRMzA-GJCn7GEpvqO0tY,1710
@@ -211,13 +211,13 @@ invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/RecordC
211
211
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/RecordCommunitySubmission/RecordCommunitySubmissionModal.js,sha256=LM1RACmC3PS_o4txek-czaLvWD8OgjOM76aVK5jk8oE,5117
212
212
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/RemoveFromCommunity/RemoveFromCommunityAction.js,sha256=O5aHzH-oQsagurnU0e4pFc4B_4BRTbPuk0Ifk_T_WFw,5859
213
213
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/ShareButton.js,sha256=TKa1b_NUGD-DUqrqvQE2SwDI6Gr-HP246ymhDvQtj3A,1785
214
- invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/ShareModal.js,sha256=5Gq2TGsOlkvrwg2fURyv7wOaO2QH22_ZWzrjE2nCDiY,6627
214
+ invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/ShareModal.js,sha256=pmHn5MQnQ41cuHt6iUWxloimkpZILzm4-TE_eqgwcuw,7249
215
215
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/AccessDropdown.js,sha256=0-Fune91rH-7B57kYvZxNlIemg-xLgxZ5LIbHGJY2PE,3068
216
- invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/CreateAccessLink.js,sha256=2Lmc9dCjv-83cagHUjdi_SGZkheRTGdywQUZGJxkihg,3368
216
+ invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/CreateAccessLink.js,sha256=-YESwT_KpCnjGUUvVr8q5v4L_mIkH_GTORhPfdsK_cM,3833
217
217
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/LinksSearchItem.js,sha256=Ay_A5zeLSCCo7x-9b1R9rV-XkbJmAP0w5MdmK182Lls,5272
218
- invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/LinksSearchResultContainer.js,sha256=xr5dfml-v7NU2PzCKIB2_BeYFnFghnsqwKMgLErONQI,6786
219
- invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/LinksTab.js,sha256=Ki1HN02B4_xFNy3YdPp3Mz2YLO-LxUhmNqRKKrvtVlQ,2883
220
- invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessRequests/AccessRequestsTab.js,sha256=tbSeqk7tnApZqLFi7NEegrwAGFKJ0sficF_3DB1Ld-0,8405
218
+ invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/LinksSearchResultContainer.js,sha256=-F5DdibhLVfKoXFoSkBS79CurQo9v4WkIhoIilL1VM4,7433
219
+ invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessLinks/LinksTab.js,sha256=XoGy-bjp6dPyUygfzd3HCV5BMBds0tQPxiriudpNUrQ,3058
220
+ invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessRequests/AccessRequestsTab.js,sha256=pGP7pMEEEgNgEHY0zk69Sc4C7YQxq4D0DSxu4gUpACg,8852
221
221
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessUsersGroups/AccessUsersGroups.js,sha256=tqUTVCNmfTZqY6aqDvZ3FOFl13EwT23AUWASpccdwMY,6886
222
222
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessUsersGroups/AddUserGroupAccessModal.js,sha256=qpaeKpIX2FUhztkBJtD03WlZ_YOziE0_1CF4cGwMb6Y,5839
223
223
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/AccessUsersGroups/GroupsTab.js,sha256=ZqiuZjjr1SZnTs3cBhX7ZckixAVa2KErEZXKY00A3oE,2358
@@ -226,7 +226,7 @@ invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOp
226
226
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/landing_page/ShareOptions/api/api.js,sha256=WpRWWdlN_8TqeaMdB7RV2rQJSluetA91qIuJcAddfLY,926
227
227
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/overridableRegistry/index.js,sha256=xktX9vqs7xPTrKmGD93T-faSmg07LNsmK3GepA9F6j0,424
228
228
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/overridableRegistry/mapping.js,sha256=kRIVYx1pkzq6kNry3M6Cn5hykDkNJAaG7sQ0BdwGSj8,434
229
- invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/AccessRequestExpiration.js,sha256=rakfZqfulHvuW60i3oTF0ptQvFChDoacPEw5iJkMq9U,1721
229
+ invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/AccessRequestExpiration.js,sha256=1h-Vkn-34-D3d-nfvg0de7-yi29NAifc2BJ-D4Z0kbQ,1940
230
230
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/index.js,sha256=FZ_XVB-5V7k_wOYeiI06RXQn3aIeh7beyBhcK5AIvCg,75
231
231
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/timeline/AccessRequestTimelineEdit.js,sha256=xd0uVbKLC23Y3RHlHDs0NdQ2vq9PNhimPwANkEtLSJ8,5727
232
232
  invenio_app_rdm/theme/assets/semantic-ui/js/invenio_app_rdm/requests/timeline/AccessRequestTimelineRead.js,sha256=CN_IIXwIeMDFxBxsal070uPVrpDH1_Rh7DSJi4hSjXA,1404
@@ -496,9 +496,9 @@ invenio_app_rdm/users_ui/views/__init__.py,sha256=SMdY2NJj9GICfr3Xuok7qdNYVtA2bJ
496
496
  invenio_app_rdm/users_ui/views/dashboard.py,sha256=iUn2PrODAwb8ugmMosJKAjPhUzjCiWiAWoXQr9RUFuc,1793
497
497
  invenio_app_rdm/users_ui/views/ui.py,sha256=W_eXM8dLVIrNHQB2UEh37C9BYoHauft6RyvcDNFHovA,1742
498
498
  invenio_app_rdm/utils/files.py,sha256=CruDyO2gDVadSlWEJD-WHpWHeOQ0juh-Ei9jz3D9yjc,3923
499
- invenio_app_rdm-14.0.0b2.dev2.dist-info/licenses/LICENSE,sha256=AZXFHRrZa5s4m9DV7zZr4bPGTMUvcEPCodeV_AmFI8k,1204
500
- invenio_app_rdm-14.0.0b2.dev2.dist-info/METADATA,sha256=0hlSvkdwVNB33JLqW1cdDKSQ75MdsYT0wjIsERoreJY,19463
501
- invenio_app_rdm-14.0.0b2.dev2.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
502
- invenio_app_rdm-14.0.0b2.dev2.dist-info/entry_points.txt,sha256=MwtT1SN5saWOgTYhNb5y0YGA9VGAi0kXN0cykIfsb4U,2405
503
- invenio_app_rdm-14.0.0b2.dev2.dist-info/top_level.txt,sha256=quZejDUw2vLfKQboNIuVLJ9fxZifdnCT_s2PNf1dfmk,16
504
- invenio_app_rdm-14.0.0b2.dev2.dist-info/RECORD,,
499
+ invenio_app_rdm-14.0.0b2.dev4.dist-info/licenses/LICENSE,sha256=AZXFHRrZa5s4m9DV7zZr4bPGTMUvcEPCodeV_AmFI8k,1204
500
+ invenio_app_rdm-14.0.0b2.dev4.dist-info/METADATA,sha256=zgGEIcnup8IgzO2OpK3IoYv1KJcPxi-KGN-BsqtZhhs,19737
501
+ invenio_app_rdm-14.0.0b2.dev4.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
502
+ invenio_app_rdm-14.0.0b2.dev4.dist-info/entry_points.txt,sha256=MwtT1SN5saWOgTYhNb5y0YGA9VGAi0kXN0cykIfsb4U,2405
503
+ invenio_app_rdm-14.0.0b2.dev4.dist-info/top_level.txt,sha256=quZejDUw2vLfKQboNIuVLJ9fxZifdnCT_s2PNf1dfmk,16
504
+ invenio_app_rdm-14.0.0b2.dev4.dist-info/RECORD,,