invenio-banners 5.1.0__py2.py3-none-any.whl → 5.2.0__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.

Potentially problematic release.


This version of invenio-banners might be problematic. Click here for more details.

Files changed (41) hide show
  1. invenio_banners/__init__.py +1 -1
  2. invenio_banners/records/models.py +7 -7
  3. invenio_banners/resources/config.py +3 -1
  4. invenio_banners/services/schemas.py +1 -1
  5. invenio_banners/services/service.py +26 -12
  6. invenio_banners/translations/ar/LC_MESSAGES/messages.mo +0 -0
  7. invenio_banners/translations/bg/LC_MESSAGES/messages.mo +0 -0
  8. invenio_banners/translations/ca/LC_MESSAGES/messages.mo +0 -0
  9. invenio_banners/translations/cs/LC_MESSAGES/messages.mo +0 -0
  10. invenio_banners/translations/da/LC_MESSAGES/messages.mo +0 -0
  11. invenio_banners/translations/de/LC_MESSAGES/messages.mo +0 -0
  12. invenio_banners/translations/el/LC_MESSAGES/messages.mo +0 -0
  13. invenio_banners/translations/es/LC_MESSAGES/messages.mo +0 -0
  14. invenio_banners/translations/et/LC_MESSAGES/messages.mo +0 -0
  15. invenio_banners/translations/fa/LC_MESSAGES/messages.mo +0 -0
  16. invenio_banners/translations/fr/LC_MESSAGES/messages.mo +0 -0
  17. invenio_banners/translations/hr/LC_MESSAGES/messages.mo +0 -0
  18. invenio_banners/translations/hu/LC_MESSAGES/messages.mo +0 -0
  19. invenio_banners/translations/it/LC_MESSAGES/messages.mo +0 -0
  20. invenio_banners/translations/ja/LC_MESSAGES/messages.mo +0 -0
  21. invenio_banners/translations/ka/LC_MESSAGES/messages.mo +0 -0
  22. invenio_banners/translations/ko/LC_MESSAGES/messages.mo +0 -0
  23. invenio_banners/translations/lt/LC_MESSAGES/messages.mo +0 -0
  24. invenio_banners/translations/no/LC_MESSAGES/messages.mo +0 -0
  25. invenio_banners/translations/pl/LC_MESSAGES/messages.mo +0 -0
  26. invenio_banners/translations/pt/LC_MESSAGES/messages.mo +0 -0
  27. invenio_banners/translations/ro/LC_MESSAGES/messages.mo +0 -0
  28. invenio_banners/translations/ru/LC_MESSAGES/messages.mo +0 -0
  29. invenio_banners/translations/sk/LC_MESSAGES/messages.mo +0 -0
  30. invenio_banners/translations/sv/LC_MESSAGES/messages.mo +0 -0
  31. invenio_banners/translations/tr/LC_MESSAGES/messages.mo +0 -0
  32. invenio_banners/translations/uk/LC_MESSAGES/messages.mo +0 -0
  33. invenio_banners/translations/zh_CN/LC_MESSAGES/messages.mo +0 -0
  34. invenio_banners/translations/zh_TW/LC_MESSAGES/messages.mo +0 -0
  35. {invenio_banners-5.1.0.dist-info → invenio_banners-5.2.0.dist-info}/METADATA +10 -1
  36. {invenio_banners-5.1.0.dist-info → invenio_banners-5.2.0.dist-info}/RECORD +41 -12
  37. {invenio_banners-5.1.0.dist-info → invenio_banners-5.2.0.dist-info}/WHEEL +0 -0
  38. {invenio_banners-5.1.0.dist-info → invenio_banners-5.2.0.dist-info}/entry_points.txt +0 -0
  39. {invenio_banners-5.1.0.dist-info → invenio_banners-5.2.0.dist-info}/licenses/AUTHORS.rst +0 -0
  40. {invenio_banners-5.1.0.dist-info → invenio_banners-5.2.0.dist-info}/licenses/LICENSE +0 -0
  41. {invenio_banners-5.1.0.dist-info → invenio_banners-5.2.0.dist-info}/top_level.txt +0 -0
@@ -10,6 +10,6 @@
10
10
 
11
11
  from .ext import InvenioBanners
12
12
 
13
- __version__ = "5.1.0"
13
+ __version__ = "5.2.0"
14
14
 
15
15
  __all__ = ("__version__", "InvenioBanners")
@@ -8,7 +8,7 @@
8
8
 
9
9
  """Models."""
10
10
 
11
- from datetime import datetime
11
+ from datetime import datetime, timezone
12
12
 
13
13
  import sqlalchemy as sa
14
14
  from flask import current_app
@@ -90,7 +90,7 @@ class BannerModel(db.Model, Timestamp):
90
90
  @classmethod
91
91
  def get_active(cls, url_path):
92
92
  """Return active banners."""
93
- now = datetime.utcnow()
93
+ now = datetime.now(timezone.utc).replace(tzinfo=None)
94
94
 
95
95
  query = (
96
96
  db.session.query(cls)
@@ -110,12 +110,12 @@ class BannerModel(db.Model, Timestamp):
110
110
  return active_banners.all()
111
111
 
112
112
  @classmethod
113
- def search(cls, search_params, filters):
113
+ def search(cls, search_params, filters=None):
114
114
  """Filter banners accordingly to query params."""
115
- if filters == []:
116
- filtered = db.session.query(BannerModel).filter()
117
- else:
115
+ if filters:
118
116
  filtered = db.session.query(BannerModel).filter(or_(*filters))
117
+ else:
118
+ filtered = db.session.query(BannerModel).filter()
119
119
 
120
120
  banners = filtered.order_by(
121
121
  search_params["sort_direction"](text(",".join(search_params["sort"])))
@@ -130,7 +130,7 @@ class BannerModel(db.Model, Timestamp):
130
130
  @classmethod
131
131
  def disable_expired(cls):
132
132
  """Disable any old still active messages to keep everything clean."""
133
- now = datetime.utcnow()
133
+ now = datetime.now(timezone.utc).replace(tzinfo=None)
134
134
 
135
135
  query = (
136
136
  db.session.query(cls)
@@ -1,6 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
- # Copyright (C) 2022-2024 CERN.
3
+ # Copyright (C) 2022-2025 CERN.
4
4
  #
5
5
  # Invenio-Banners is free software; you can redistribute it and/or modify it
6
6
  # under the terms of the MIT License; see LICENSE file for more details.
@@ -19,6 +19,8 @@ class BannerServerSearchRequestArgsSchema(SearchRequestArgsSchema):
19
19
  """Banner request parameters."""
20
20
 
21
21
  sort_direction = ma.fields.Str()
22
+ active = ma.fields.Bool()
23
+ url_path = ma.fields.Str()
22
24
 
23
25
 
24
26
  class BannerResourceConfig(RecordResourceConfig):
@@ -22,7 +22,7 @@ class BannerSchema(BaseRecordSchema):
22
22
  category = fields.String(required=True, metadata={"default": "info"})
23
23
  start_datetime = fields.DateTime(
24
24
  required=True,
25
- metadata={"default": datetime.utcnow().strftime("%Y-%m-%d %H:%M:%S")},
25
+ metadata={"default": datetime.now(timezone.utc).strftime("%Y-%m-%d %H:%M:%S")},
26
26
  )
27
27
  end_datetime = fields.DateTime(allow_none=True)
28
28
  active = fields.Boolean(required=True, metadata={"default": True})
@@ -1,6 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  #
3
- # Copyright (C) 2022-2023 CERN.
3
+ # Copyright (C) 2022-2025 CERN.
4
4
  # Copyright (C) 2024 Graz University of Technology.
5
5
  #
6
6
  # Invenio-Banners is free software; you can redistribute it and/or modify it
@@ -15,7 +15,7 @@ from invenio_db.uow import unit_of_work
15
15
  from invenio_records_resources.services import RecordService
16
16
  from invenio_records_resources.services.base import LinksTemplate
17
17
  from invenio_records_resources.services.base.utils import map_search_params
18
- from sqlalchemy import func
18
+ from sqlalchemy import and_, func, literal, or_
19
19
 
20
20
  from ..records.models import BannerModel
21
21
 
@@ -37,14 +37,35 @@ class BannerService(RecordService):
37
37
  )
38
38
 
39
39
  def search(self, identity, params):
40
- """Search for banners matching the querystring."""
40
+ """Search for banners with multiple filter options.
41
+
42
+ Supports filtering by:
43
+ - active: boolean filter
44
+ - url_path: prefix matching (empty paths match all, specific paths match as prefixes)
45
+ - q: text or date search across multiple fields
46
+
47
+ active and url_path filters are combined with AND logic, while OR is used while combining them with the q filters.
48
+ """
41
49
  self.require_permission(identity, "search")
42
50
 
51
+ active_filter_param = params.pop("active", None)
52
+ url_path_filter_param = params.pop("url_path", None)
43
53
  search_params = map_search_params(self.config.search, params)
44
54
 
45
- query_param = search_params["q"]
46
- filters = []
55
+ and_filters = []
56
+ if active_filter_param is not None:
57
+ and_filters.append(BannerModel.active.is_(active_filter_param))
58
+
59
+ if url_path_filter_param is not None:
60
+ and_filters.append(
61
+ or_(
62
+ BannerModel.url_path == "",
63
+ literal(url_path_filter_param).like(BannerModel.url_path + "%"),
64
+ )
65
+ )
47
66
 
67
+ filters = [and_(*and_filters)] if and_filters else []
68
+ query_param = search_params["q"]
48
69
  if query_param:
49
70
  filters.extend(
50
71
  [
@@ -53,13 +74,6 @@ class BannerService(RecordService):
53
74
  BannerModel.category.ilike(f"%{query_param}%"),
54
75
  ]
55
76
  )
56
- bool_value = self._validate_bool(query_param)
57
- if bool_value is not None:
58
- filters.extend(
59
- [
60
- BannerModel.active.is_(bool_value),
61
- ]
62
- )
63
77
 
64
78
  datetime_value = self._validate_datetime(query_param)
65
79
  if datetime_value is not None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: invenio-banners
3
- Version: 5.1.0
3
+ Version: 5.2.0
4
4
  Summary: Invenio-Banners is a module used to create and show banners with useful messages to users.
5
5
  Home-page: https://github.com/inveniosoftware/invenio-banners
6
6
  Author: CERN
@@ -66,6 +66,15 @@ https://invenio-banners.readthedocs.io/
66
66
  Changes
67
67
  =======
68
68
 
69
+ Version v5.2.0 (released 2025-08-06)
70
+
71
+ - search: add query params active and url_path for search, add None as default value for filters
72
+ - global: replace deprecated datetime utcnow() with now(timezone.utc)
73
+
74
+ Version v5.1.1 (released 2025-07-22)
75
+
76
+ - fix: mo files not included into build
77
+
69
78
  Version v5.1.0 (released 2025-07-17)
70
79
 
71
80
  - i18n: pulled translations
@@ -1,4 +1,4 @@
1
- invenio_banners/__init__.py,sha256=QIdhctRxNnzvvwA5fPCYfKQ6CJZTiYFReKfhe-uPCjA,430
1
+ invenio_banners/__init__.py,sha256=zU3w6wJxTF6TfiuRsQhMsCLALwApY56lh1utoLp-Zvk,430
2
2
  invenio_banners/config.py,sha256=csFr0XWaYh05hAjvY44pA6taQFDUmocQ08mX4e5jiEY,1364
3
3
  invenio_banners/ext.py,sha256=rRIgDgZIyGhm2M8WHWApMPRcBVe3eHkaHzTOt-YH6aw,1836
4
4
  invenio_banners/proxies.py,sha256=nfACfpSgfCHiixSy2cO4G9y_lHFQj6onOeBLifYY6IQ,638
@@ -9,9 +9,9 @@ invenio_banners/administration/banners.py,sha256=N-7iBxyp6LRuDXSlktXqncmPnISGHTm
9
9
  invenio_banners/alembic/5e02314da32e_create_invenio_banners_db_table.py,sha256=FZ5Z8RsrbrlN8vr43LW0ukVRFTj2DV7B7JgVjnk0zp8,1446
10
10
  invenio_banners/alembic/e40d93d99040_create_invenio_banners_branch.py,sha256=KoEbAzpNneVNBwegW3FfMIW_XTH6im0GXz2DvIF6DwA,562
11
11
  invenio_banners/records/__init__.py,sha256=-A_Q-oZyJuV2lcgLfqXWeMuTlmv6IrEbcMqs_58PHuE,298
12
- invenio_banners/records/models.py,sha256=iKlk4dOMRJKVmr5BT1TpgSjXY2D8V16L92Sj3ggnOKA,4427
12
+ invenio_banners/records/models.py,sha256=vK3lTr7qocSC9LWviOXqQhAbdmq_4y2BlOrWVrlc43U,4496
13
13
  invenio_banners/resources/__init__.py,sha256=bQbqlVhQKjJXiiNmqsf_Z1R_4PqmmNTb-Kwj-2lEfQQ,402
14
- invenio_banners/resources/config.py,sha256=Ng0TowZk3GCG1tOv0TKtUpeDwY8RIK6adEUYCVVnKZg,1435
14
+ invenio_banners/resources/config.py,sha256=FuNDsM_WWJoo_DX2ibM6SO2GPvlCwYxbBaH_SvqRc94,1496
15
15
  invenio_banners/resources/errors.py,sha256=H-qs9L10KSFaGKq_yDLu7QEiD2WB4JCKV8Xp_jJ4yEM,1231
16
16
  invenio_banners/resources/resource.py,sha256=lHTqkX7coKG0gXkgCdL7MEcsutGZ5rYSOEidiXHOztE,2924
17
17
  invenio_banners/services/__init__.py,sha256=9URKgFgYq2yUgj-eTB6_jE_ifZNQR9_E9sLP-1UIB1s,484
@@ -19,43 +19,72 @@ invenio_banners/services/config.py,sha256=uzKWmgPIGHAG00Zs5BHlp1Y6WzbNzfS_tkXA3l
19
19
  invenio_banners/services/errors.py,sha256=1suJcPwdLyK3hqK0gicgTMUX2OAk_Y8TaqancnkXyEA,542
20
20
  invenio_banners/services/permissions.py,sha256=EbC4oeFaBHCYTPnDMrtoS9Cgo4skhjz694qhGEnZYHs,830
21
21
  invenio_banners/services/results.py,sha256=sg2z1zPKD8mWgUigwqdFWJqdnA7wOtmf6yKfa3AeUek,3082
22
- invenio_banners/services/schemas.py,sha256=rWh1WSQR4ps_Ii7RWd82FUMk4_aHbdwd5kYh5gCxlJU,1442
23
- invenio_banners/services/service.py,sha256=7KdwwrmqvtBsmEschL-i_ydPsijH7RjzLzMFogrKYeQ,4770
22
+ invenio_banners/services/schemas.py,sha256=34oIXNmIU2pkkL3AOGhTkwaUgh9yUFCdJQ4Dp6jClfw,1451
23
+ invenio_banners/services/service.py,sha256=l7AZuH85Xr4He4vORw-pxtVRk3VoKxOOBMXAo43U0eY,5460
24
24
  invenio_banners/templates/semantic-ui/invenio_banners/banner.html,sha256=mOPfWsxRMIftoCyU82WeHlEhHFvy56BTF4wDJHpzX-o,811
25
25
  invenio_banners/translations/messages.pot,sha256=uqnF8VA0glId6_gSPuRFnOpmH8vspCOX9b6emJw3Gf4,4672
26
+ invenio_banners/translations/ar/LC_MESSAGES/messages.mo,sha256=lneRS0Vp0D7yGmsZUiD2ZThZUvgymnzupcrfPMs9nn8,4395
26
27
  invenio_banners/translations/ar/LC_MESSAGES/messages.po,sha256=J87aJD2AnVQRVQbOWUIHEa8zXPDfWkwt0OGoSn4xGBg,7092
28
+ invenio_banners/translations/bg/LC_MESSAGES/messages.mo,sha256=uWy-pdTl_5ByeoyRKNly-lD3T5j7aVLM6OLT9c2jTFc,606
27
29
  invenio_banners/translations/bg/LC_MESSAGES/messages.po,sha256=vxvxaXBx8bjqXv96YonzEt1FAKqLJ3T0xunGO7hB1Ic,4886
30
+ invenio_banners/translations/ca/LC_MESSAGES/messages.mo,sha256=0TR6FQaB6QBSbhtnZbb7hE6PoMe1eXnSaYFJfjoF6cw,657
28
31
  invenio_banners/translations/ca/LC_MESSAGES/messages.po,sha256=EhUdP8hR04x9DuorL4Wu1YRIx0BbT1ZmIWAkyloSwaY,4932
32
+ invenio_banners/translations/cs/LC_MESSAGES/messages.mo,sha256=33LXSGODz2p7ShvyRtJlnz70Dz6jxt2I6V5h3m7T71M,3981
29
33
  invenio_banners/translations/cs/LC_MESSAGES/messages.po,sha256=Ue2kxmgTQJCktReYOUD0ukl8qOh7KlhuRAiuwENaH0I,6704
34
+ invenio_banners/translations/da/LC_MESSAGES/messages.mo,sha256=geDtbmFTp_jNxyVHM2vepyYHBbQHKMQ3XAwSWaoyixw,514
30
35
  invenio_banners/translations/da/LC_MESSAGES/messages.po,sha256=_BSzM1CmglebY-fXozpw0bMpqeZZGZs-8_KdijqAqtA,4732
36
+ invenio_banners/translations/de/LC_MESSAGES/messages.mo,sha256=QSY3a_FQAb49Shs6FSrh1D6vgZwJ1cBfVrlEP5R6Stc,3755
31
37
  invenio_banners/translations/de/LC_MESSAGES/messages.po,sha256=oH-Ku9hNrlFv6eV0JAShmHqdsQRX_-606jDio0ZH9JE,6538
38
+ invenio_banners/translations/el/LC_MESSAGES/messages.mo,sha256=6lUD9ImjP5cn5xeFEvG8fbVf96UlZC6bI9kkWyodCQY,688
32
39
  invenio_banners/translations/el/LC_MESSAGES/messages.po,sha256=jKjZuzD8pItkaBI8kwQXilGM7o3JQpRjtNHCQLCQ7Wc,4960
40
+ invenio_banners/translations/es/LC_MESSAGES/messages.mo,sha256=RiDkONCGl5l7ddY_Hl9zjlypGpf1SBEPwx4Ib0tJE6s,3830
33
41
  invenio_banners/translations/es/LC_MESSAGES/messages.po,sha256=tubroc9nzcIDDrcUrY0VrSnjuU_8gikMJypLldRaywo,6585
42
+ invenio_banners/translations/et/LC_MESSAGES/messages.mo,sha256=XIxu8BsGRXV7a7RowJd_EMhceR1MVrImLApU8JKb3tE,1101
34
43
  invenio_banners/translations/et/LC_MESSAGES/messages.po,sha256=_Xg-VpMcmUiJRr2hA_-7-GEnlTJWQcUax0cjclj_I_Q,5005
44
+ invenio_banners/translations/fa/LC_MESSAGES/messages.mo,sha256=U4LFgWSa0xcmMAqUhFf0ajNb41McNL7rcFNrA26Tm1Q,514
35
45
  invenio_banners/translations/fa/LC_MESSAGES/messages.po,sha256=mTB2R3EqzuYlSz5CdwdLF88EHJiGrWpEoWgJod3FBA0,4732
46
+ invenio_banners/translations/fr/LC_MESSAGES/messages.mo,sha256=lkPn1GateQUMEtOkaT4WgY3YzaP3pCag_Ii90GqlShM,1532
36
47
  invenio_banners/translations/fr/LC_MESSAGES/messages.po,sha256=WBGd0i8lvQrY4E0tASYxujXuGVqIOEmhh7NGHa4sSuU,5292
48
+ invenio_banners/translations/hr/LC_MESSAGES/messages.mo,sha256=gdQN-PWbrHKXeTfoXL9OJgJ43FoyTk6gC8CW_qB6AL4,659
37
49
  invenio_banners/translations/hr/LC_MESSAGES/messages.po,sha256=rdmW83CLH2jcwGde-Xek4_3dCU3TjN13Hwu--TSHJMc,4939
50
+ invenio_banners/translations/hu/LC_MESSAGES/messages.mo,sha256=XJICgOlxTzmxNVGvFTgiXDnPXrA6xVtss-Xbu8EB6F0,3916
38
51
  invenio_banners/translations/hu/LC_MESSAGES/messages.po,sha256=D0D8kMuGEdcHLfeMTgxjPPUhh2-jyObBoWKhPH7S59o,6549
52
+ invenio_banners/translations/it/LC_MESSAGES/messages.mo,sha256=jpqLCE2wJp2DgftNuQfZloRpavvfLa1hDms8UbFz_uQ,720
39
53
  invenio_banners/translations/it/LC_MESSAGES/messages.po,sha256=zJkZA7ANM0XCw4XtAWTJYBTqcaA-QdIelWsQfFybLrQ,5005
54
+ invenio_banners/translations/ja/LC_MESSAGES/messages.mo,sha256=x5H6vZPhlqaHA0Sewgb7PIc7qyjrD1tyr7TKvb6XdQs,580
40
55
  invenio_banners/translations/ja/LC_MESSAGES/messages.po,sha256=nFN3pCH6vsxFm_MFgvkBv3IiPuWEhyTpQX1auIXppiQ,4860
56
+ invenio_banners/translations/ka/LC_MESSAGES/messages.mo,sha256=Tm7K5fJqeN75uMMGH2pvZoM5DcCVmIBfqBxursVE6oI,700
41
57
  invenio_banners/translations/ka/LC_MESSAGES/messages.po,sha256=HubPkI0ELBbld7MlXnwBmbwR_j0szt3CV1VR4E5znrg,4955
58
+ invenio_banners/translations/ko/LC_MESSAGES/messages.mo,sha256=vu5VegCsfB59KRg4RynLMux87gjs8Hd_LzoJRT4_UMI,507
42
59
  invenio_banners/translations/ko/LC_MESSAGES/messages.po,sha256=0CtsU6vr-W5lSk80fvfV4H20ayofDgRTq-EShHyiaTs,4725
60
+ invenio_banners/translations/lt/LC_MESSAGES/messages.mo,sha256=Y2DX-5_4W0DB2Ngr1RWQv8ZfNJClKiR0ZXpDswbwSzM,754
43
61
  invenio_banners/translations/lt/LC_MESSAGES/messages.po,sha256=6aEWRjmndBTO61drIL4GIz7gwrAW-DYEJWpreuOUcaE,5009
62
+ invenio_banners/translations/no/LC_MESSAGES/messages.mo,sha256=gES5HDdfLYX-qJ6MHwghhCRBTvCJMIGviCol_YECfNk,586
44
63
  invenio_banners/translations/no/LC_MESSAGES/messages.po,sha256=jPow_SX5eYyvPkvyyFj5MQHJr50a4lvTaCxv_bTzlps,4866
64
+ invenio_banners/translations/pl/LC_MESSAGES/messages.mo,sha256=PCHfiUQxkfL9yAOUF8Z2fu2aTyJp8NwhgUAHqbJg1X8,733
45
65
  invenio_banners/translations/pl/LC_MESSAGES/messages.po,sha256=dOIMEM3pD4UvlhdktO7VP2GSCSSanIfxivdTVRVAtAA,5013
66
+ invenio_banners/translations/pt/LC_MESSAGES/messages.mo,sha256=Ujhh3DmRoqQhM1rh_nAmyOziv-xyws9NeaDqt9m8E0A,635
46
67
  invenio_banners/translations/pt/LC_MESSAGES/messages.po,sha256=XndG02-skYuUfO7BYsk65NynEXdvnw29xopvMz3ZJak,4915
68
+ invenio_banners/translations/ro/LC_MESSAGES/messages.mo,sha256=_YorLCkqqAisv8qXrnEoa26UxP9_Mipg2i_Y7_QaNcI,1506
47
69
  invenio_banners/translations/ro/LC_MESSAGES/messages.po,sha256=32ccnxXCprFOfqKlobtoo-jUrK8kRj7HuNxrOq5X-Lg,5271
70
+ invenio_banners/translations/ru/LC_MESSAGES/messages.mo,sha256=scIhfV545I8EZw8YQeXVTEoHFT3nAlEwCqLqt3PiqTk,1910
48
71
  invenio_banners/translations/ru/LC_MESSAGES/messages.po,sha256=XU1YiDwG-RkH8OFR-GuyUKYOw7po6y3xFB_9t3uwu0s,5625
72
+ invenio_banners/translations/sk/LC_MESSAGES/messages.mo,sha256=o7UKjZkHLjW-FAjX-O7lvI4u2NJwPnuH1_xbCPqrEPo,693
49
73
  invenio_banners/translations/sk/LC_MESSAGES/messages.po,sha256=EElyOFL6K44ZuxsKhv_a42bS930sB4wA6BabwDzD2xo,4990
74
+ invenio_banners/translations/sv/LC_MESSAGES/messages.mo,sha256=gCbaibdquXf17qJJ3K068VbdFQbC_xP3OQwhZgFPUog,3723
50
75
  invenio_banners/translations/sv/LC_MESSAGES/messages.po,sha256=i5MyKHQ-SkHmleQWYdM5XcljmNswCMl-9a4TavmNckk,6404
76
+ invenio_banners/translations/tr/LC_MESSAGES/messages.mo,sha256=G88N9glKATziXOY5pXnS-Sq4Fn5Zej2IokOj7oh7CzA,1506
51
77
  invenio_banners/translations/tr/LC_MESSAGES/messages.po,sha256=B6pi9Uri4hHvhaR93-FeKppIRIYPtX0bECaRTIczoSI,5248
78
+ invenio_banners/translations/uk/LC_MESSAGES/messages.mo,sha256=6MHu9dW8ueYr9Wu20a25G00cU-_CD8uYseG6E6tqhGY,847
52
79
  invenio_banners/translations/uk/LC_MESSAGES/messages.po,sha256=oqaBLptQ3mCxj305EpupldHmmEHY8kxyArIrPFJa5_I,5126
80
+ invenio_banners/translations/zh_CN/LC_MESSAGES/messages.mo,sha256=NfQYcvNS44LX_kXgyRBVMq89XAk529-_bIX_cu33f24,817
53
81
  invenio_banners/translations/zh_CN/LC_MESSAGES/messages.po,sha256=JHhsMcsmSd8saIK5mOECFBHbfHcWpmYjVk_8elm7whs,4962
82
+ invenio_banners/translations/zh_TW/LC_MESSAGES/messages.mo,sha256=4nTza7lSLzUOcZh19Kmwym0-2xhslmUgsKqRHhFkSnw,590
54
83
  invenio_banners/translations/zh_TW/LC_MESSAGES/messages.po,sha256=aqhqHPr0Q6dc_eCGBtn9sqFVpfyd81uPS3_SWGOlPXw,4870
55
- invenio_banners-5.1.0.dist-info/licenses/AUTHORS.rst,sha256=fQsy2e1bLnwt_a89-kO6CwBwN7o58Ix9F9195b2iTJo,295
56
- invenio_banners-5.1.0.dist-info/licenses/LICENSE,sha256=UvI8pR8jGWqe0sTkb_hRG6eIrozzWwWzyCGEpuXX4KE,1062
57
- invenio_banners-5.1.0.dist-info/METADATA,sha256=25wCmGFY-sPQLkv0sy0KoluFckGcGS8O_E2tLr_tcnI,4330
58
- invenio_banners-5.1.0.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
59
- invenio_banners-5.1.0.dist-info/entry_points.txt,sha256=A6LQWHkrQXiid3LGWKIz2C4eZfaHSGne3mkcy00j2Fg,782
60
- invenio_banners-5.1.0.dist-info/top_level.txt,sha256=ENJP1dEZ93e4ImCi7AHaVooTUV-6fQnRJ106wHitg5g,16
61
- invenio_banners-5.1.0.dist-info/RECORD,,
84
+ invenio_banners-5.2.0.dist-info/licenses/AUTHORS.rst,sha256=fQsy2e1bLnwt_a89-kO6CwBwN7o58Ix9F9195b2iTJo,295
85
+ invenio_banners-5.2.0.dist-info/licenses/LICENSE,sha256=UvI8pR8jGWqe0sTkb_hRG6eIrozzWwWzyCGEpuXX4KE,1062
86
+ invenio_banners-5.2.0.dist-info/METADATA,sha256=SZ4a51ARhvG_XbHTdqswHJ3mbpTW_OsgBTt1n2H7by8,4615
87
+ invenio_banners-5.2.0.dist-info/WHEEL,sha256=JNWh1Fm1UdwIQV075glCn4MVuCRs0sotJIq-J6rbxCU,109
88
+ invenio_banners-5.2.0.dist-info/entry_points.txt,sha256=A6LQWHkrQXiid3LGWKIz2C4eZfaHSGne3mkcy00j2Fg,782
89
+ invenio_banners-5.2.0.dist-info/top_level.txt,sha256=ENJP1dEZ93e4ImCi7AHaVooTUV-6fQnRJ106wHitg5g,16
90
+ invenio_banners-5.2.0.dist-info/RECORD,,