wagtail-cjkcms 24.8.1__py2.py3-none-any.whl → 24.9.1__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.
cjkcms/__init__.py CHANGED
@@ -1,4 +1,4 @@
1
- VERSION = (24, 8, 1, "")
1
+ VERSION = (24, 9, 1, "")
2
2
 
3
3
  __version_info__ = VERSION
4
4
  __version__ = ".".join(map(str, VERSION[:3])) + (f"-{VERSION[3]}" if VERSION[3] else "")
@@ -0,0 +1,23 @@
1
+ # Generated by Django 5.0.6 on 2024-09-02 12:44
2
+
3
+ from django.db import migrations, models
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+
8
+ dependencies = [
9
+ ('cjkcms', '0021_remove_layoutsettings_navbar_color_scheme_and_more'),
10
+ ]
11
+
12
+ operations = [
13
+ migrations.AddField(
14
+ model_name='cjkcmspage',
15
+ name='breadcrumb_label',
16
+ field=models.CharField(blank=True, help_text='If empty, page title will be used.', max_length=128, verbose_name='Breadcrumb label'),
17
+ ),
18
+ migrations.AddField(
19
+ model_name='cjkcmspage',
20
+ name='breadcrumbs_visible',
21
+ field=models.BooleanField(default=True, help_text='Show breadcrumbs in this page header. For global change, see Settings->Layout', verbose_name='Breadcrumbs'),
22
+ ),
23
+ ]
@@ -208,6 +208,25 @@ class CjkcmsPage(WagtailCacheMixin, SeoMixin, Page, metaclass=CjkcmsPageMeta):
208
208
  blank=True, max_length=255, choices=None, verbose_name=_("Template") # type: ignore # noqa: E501
209
209
  )
210
210
 
211
+ ###############
212
+ # Breadcrumbs fields (on layout tab)
213
+ ###############
214
+
215
+ breadcrumbs_visible = models.BooleanField(
216
+ default=True,
217
+ verbose_name=_("Breadcrumbs"),
218
+ help_text=_(
219
+ "Show breadcrumbs in this page header. For global change, see Settings->Layout"
220
+ ),
221
+ )
222
+
223
+ breadcrumb_label = models.CharField(
224
+ blank=True,
225
+ max_length=128,
226
+ verbose_name=_("Breadcrumb label"),
227
+ help_text=_("If empty, page title will be used."),
228
+ )
229
+
211
230
  ###############
212
231
  # SEO overrides
213
232
  ###############
@@ -269,6 +288,13 @@ class CjkcmsPage(WagtailCacheMixin, SeoMixin, Page, metaclass=CjkcmsPageMeta):
269
288
 
270
289
  layout_panels = [
271
290
  MultiFieldPanel([FieldPanel("custom_template")], heading=_("Visual Design")),
291
+ MultiFieldPanel(
292
+ [
293
+ FieldPanel("breadcrumbs_visible"),
294
+ FieldPanel("breadcrumb_label"),
295
+ ],
296
+ heading=_("Breadcrumbs settings"),
297
+ ),
272
298
  MultiFieldPanel(
273
299
  [
274
300
  FieldPanel("index_show_subpages"),
@@ -347,6 +373,13 @@ class CjkcmsPage(WagtailCacheMixin, SeoMixin, Page, metaclass=CjkcmsPageMeta):
347
373
  edit_handler = TabbedInterface(panels)
348
374
  return edit_handler.bind_to_model(cls)
349
375
 
376
+ @property
377
+ def breadcrumb_title(self) -> str:
378
+ """
379
+ Gets breadcrumb title, or page title if not set.
380
+ """
381
+ return self.breadcrumb_label or self.title # type: ignore
382
+
350
383
  @property
351
384
  def default_seo_image(self) -> "Optional[AbstractImage]":
352
385
  """
@@ -261,6 +261,22 @@ class LayoutSettings(ClusterableModel, BaseSiteSetting):
261
261
  help_text=_("Show breadcrumbs in page header"),
262
262
  )
263
263
 
264
+ # # defines layout for the breadcrumb: full, shortened
265
+ # breadcrumb_layout_default = "full"
266
+ # breadcrumb_layout_choices = (
267
+ # ("full", _("Display full")),
268
+ # ("shortened_dots", _("Shortened with dots in middle levels")),
269
+ # ("shortened_mobile_dots", _("Shortened with dots on mobile view")),
270
+ # )
271
+
272
+ # breadcrumb_layout = models.CharField(
273
+ # max_length=255,
274
+ # choices=breadcrumb_layout_choices,
275
+ # default=breadcrumb_layout_default,
276
+ # blank=True,
277
+ # verbose_name=_("Breadcrumbs layout"),
278
+ # )
279
+
264
280
  breadcrumb_icon = models.CharField(
265
281
  blank=True,
266
282
  max_length=32,
@@ -92,7 +92,7 @@
92
92
  {% endif %}
93
93
  {% endblock %}
94
94
 
95
- {% if settings.cjkcms.LayoutSettings.breadcrumbs %}
95
+ {% if settings.cjkcms.LayoutSettings.breadcrumbs and page.breadcrumbs_visible %}
96
96
  {% block breadcrumbs %}{% endblock %}
97
97
  {% endif %}
98
98
 
@@ -3,4 +3,4 @@ Disallow: /backend/
3
3
  Disallow: /django-backend/
4
4
  Allow: /
5
5
 
6
- Sitemap: https://yourdomain.com/sitemap.xml
6
+ Sitemap: /sitemap.xml
@@ -10,7 +10,7 @@
10
10
  <li class="none">
11
11
  <object type="image/svg+xml" data="{% static 'cjkcms/images/icons/'|add:settings.cjkcms.LayoutSettings.breadcrumb_icon|add:'.svg' %}"
12
12
  class="opacity-75" style="margin-bottom:-2px;"></object>
13
- <a href="{{ p.url }}">{{ p.title }}</a>
13
+ <a href="{{ p.url }}">{{ p.specific.breadcrumb_title }}</a>
14
14
  </li>
15
15
 
16
16
  {% endif %}
@@ -18,7 +18,7 @@
18
18
  <li class="breadcrumb-item active ms-1" aria-current="page">
19
19
  <object type="image/svg+xml" data="{% static 'cjkcms/images/icons/'|add:settings.cjkcms.LayoutSettings.breadcrumb_icon|add:'.svg' %}"
20
20
  class="opacity-75" style="margin-bottom:-2px;"></object>
21
- {{ page.title }}</li>
21
+ {{ page.breadcrumb_title }}</li>
22
22
  {% endblock %}
23
23
  </ol>
24
24
  </nav>
@@ -301,3 +301,14 @@ def is_in_past(the_date):
301
301
  datetime_date = datetime(the_date.year, the_date.month, the_date.day)
302
302
  return datetime_date < datetime.now()
303
303
  return False
304
+
305
+
306
+ @register.simple_tag
307
+ def first_non_empty(*args):
308
+ """
309
+ Returns the first non-empty argument.
310
+ """
311
+ for arg in args:
312
+ if arg:
313
+ return arg
314
+ return ""
@@ -7,7 +7,7 @@ from cjkcms.models import AdobeApiSettings
7
7
  from datetime import datetime, timedelta
8
8
  from django.test import TestCase
9
9
  from django.template import Template, Context
10
- from cjkcms.templatetags.cjkcms_tags import is_in_future, is_in_past
10
+ from cjkcms.templatetags.cjkcms_tags import is_in_future, is_in_past, first_non_empty
11
11
 
12
12
 
13
13
  django_engine = engines["django"]
@@ -142,3 +142,21 @@ class TemplateTagTests(TestCase):
142
142
  context = Context({"the_date": datetime.now() - timedelta(days=1)})
143
143
  result = template.render(context)
144
144
  self.assertEqual(result, "past")
145
+
146
+ def test_all_empty(self):
147
+ self.assertEqual(first_non_empty("", None, False, 0), "")
148
+
149
+ def test_first_non_empty(self):
150
+ self.assertEqual(first_non_empty("", None, "first", "second"), "first")
151
+
152
+ def test_middle_non_empty(self):
153
+ self.assertEqual(first_non_empty("", None, "first", "second"), "first")
154
+
155
+ def test_last_non_empty(self):
156
+ self.assertEqual(first_non_empty("", None, "", "last"), "last")
157
+
158
+ def test_all_non_empty(self):
159
+ self.assertEqual(first_non_empty("first", "second", "third"), "first")
160
+
161
+ def test_no_arguments(self):
162
+ self.assertEqual(first_non_empty(), "")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: wagtail-cjkcms
3
- Version: 24.8.1
3
+ Version: 24.9.1
4
4
  Summary: Wagtail Content Management System, installable as a Django app into any Wagtail 4.1.x/5.x/6.x site.
5
5
  Author-email: Grzegorz Krol <gk@cjk.pl>
6
6
  License: BSD-3-Clause
@@ -1,4 +1,4 @@
1
- cjkcms/__init__.py,sha256=SgMT7Zs_-ZNaOqpA0rxgl7wwkic5edW6lZVl43pKAZk,272
1
+ cjkcms/__init__.py,sha256=4D9a_2NzNWo4xFQqMdyqNNW_QbrmXsmL3cnNF97-Wog,272
2
2
  cjkcms/apps.py,sha256=VA5Z1YerImetvN8KsjPTMSn1fSo6O1JkBJdK5y5ubJY,173
3
3
  cjkcms/fields.py,sha256=dE0DuNIjX7jhA-5GjSmR2l66EDH2kq3vuxL9WyRALCY,3191
4
4
  cjkcms/forms.py,sha256=_uu_FR8odz40lD-Rmw0tlK7-xxxa8THHfV2-1ZJYsIM,361
@@ -53,14 +53,15 @@ cjkcms/migrations/0018_layoutsettings_search_format.py,sha256=NURMUoMyg20hSM_IDc
53
53
  cjkcms/migrations/0019_layoutsettings_searchbox_input_class_and_more.py,sha256=SeA-oN5r9uePXOfPv57ETfGF_ZzNpv9vnkA_rmATXUY,1504
54
54
  cjkcms/migrations/0020_socialmediasettings_github_and_more.py,sha256=flCSiw6wB32wsxSln2NA66zWkxrJLhNfL1O3UInH2to,1044
55
55
  cjkcms/migrations/0021_remove_layoutsettings_navbar_color_scheme_and_more.py,sha256=lOOyu3QHjnjZY3HwXWCvUBxngm-t_sk4TvuxZ2Cq_j4,2723
56
+ cjkcms/migrations/0022_cjkcmspage_breadcrumb_label_and_more.py,sha256=UqXcsDPMsJOewtU3aTl1R4ZE5I45ykiIEepQBALzno0,812
56
57
  cjkcms/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
57
58
  cjkcms/models/__init__.py,sha256=f99GmxfFxGtQl8JvZFz8rAtklCIesLoSccyhhi2xgPU,232
58
59
  cjkcms/models/admin_sidebar.py,sha256=R3gtDUfbtdVPLNb-__XZWYk9Ap5k9WkHc-u6XDhesdc,665
59
60
  cjkcms/models/cms_models.py,sha256=9U46xwPidQfUlXnuVUW5IbtphXX_8djJD4CohoP3NbU,2356
60
61
  cjkcms/models/integration_models.py,sha256=L29OBwLH8DfHtDplu218UGbbvL94Erk3J_R7n365zQM,6302
61
- cjkcms/models/page_models.py,sha256=cV5Q5Xc3CORB5bXXxQ8ODTZwUYWq5LlUTYaIIUpJkdw,24525
62
+ cjkcms/models/page_models.py,sha256=-9SLMKA5KI2gMMOTaAtpr4pE2RhidilaRRzF7nnE0WI,25454
62
63
  cjkcms/models/snippet_models.py,sha256=BQeq3Bqr3c0DRKExGqz4VlQhoTnTKjEjOTYuwJ2wqU8,16837
63
- cjkcms/models/wagtailsettings_models.py,sha256=WBEAo5fK9BxLPHRBUKA3KQBZm-QqbKdkqv3gGR4nBrA,22467
64
+ cjkcms/models/wagtailsettings_models.py,sha256=ntgbGOquVmgbMehgV36KEiS25olqr_m5Ff7Ce7Pq61Y,23041
64
65
  cjkcms/project_template/basic/.editorconfig,sha256=1wgq7hgAUSHLfuy4Jh9BJ4ysyQL0si5UBbCu_OMz9hg,722
65
66
  cjkcms/project_template/basic/.gitattributes,sha256=TXzwnsENJoG4wiS2LEREDeZ0JI_vRGA6EEijwUCVJvE,364
66
67
  cjkcms/project_template/basic/.gitignore,sha256=EBotJhW2lEZ9u6nXwClkSq9rVawXsCh6h4u38g3lM_I,275
@@ -172,7 +173,7 @@ cjkcms/static/vendor/mdb/js/mdb.umd.min.js,sha256=6ExxHAv6V4GggQXwu1gkXc4MHtdiqK
172
173
  cjkcms/static/vendor/mdb/js/mdb.umd.min.js.map,sha256=1k9rRQNB3hrVj47Anhg19MtXioMnuffFMh34NEyrBcY,502496
173
174
  cjkcms/templates/404.html,sha256=GnIFZoXMcFzz_UTMChOgbO6-IIWQZKaAom7OJXn6dao,3245
174
175
  cjkcms/templates/500.html,sha256=YWYel2g2SDKLwSv8C9VLPzVvkcRLo6X9WYwWjxnfz0U,4802
175
- cjkcms/templates/cjkcms/robots.txt,sha256=UvpkMM2JFcYA-igs8t37RtQgYSqRkyl1GSgiCHhb8aw,114
176
+ cjkcms/templates/cjkcms/robots.txt,sha256=669-RWM9DZYUfyxUvl2Fxn6pcZ_7Efbb7HeZYoR0DWo,92
176
177
  cjkcms/templates/cjkcms/blocks/accordion_block.html,sha256=9gsMZMflXqdYcFVqf8YOsyb3YYHgC26Sug_tzGvc6N8,1443
177
178
  cjkcms/templates/cjkcms/blocks/article_block_card.html,sha256=37Xb0XNGVSyWP8gXVGh742eZmW-3hFSmEAfCe5QOrvo,974
178
179
  cjkcms/templates/cjkcms/blocks/article_masonry_card.html,sha256=rW1fDJrERAw_1u391An7F8mvqmrvM2xLcXS9gAgfwuM,1132
@@ -271,7 +272,7 @@ cjkcms/templates/cjkcms/includes/stream_forms/render_field.html,sha256=F3FHztOTG
271
272
  cjkcms/templates/cjkcms/pages/article_index_page.html,sha256=K_5xM-d2EPDJ961LLqiOLompzSoJz1cHQbwvRNDZfH4,2002
272
273
  cjkcms/templates/cjkcms/pages/article_page.html,sha256=jXOAOznaiSPULcZQB-A8AYmeTU9-xEWcyAgnrYAJ74Y,2031
273
274
  cjkcms/templates/cjkcms/pages/article_page.search.html,sha256=0L4zGoqu1SP1F2BIIYeD9IMaxpjIsqawpIzEN8e94kY,1018
274
- cjkcms/templates/cjkcms/pages/base.html,sha256=CBBRV4PLVhj85rk055mWgSPj6uTx2YaxkWjkjWQn7tw,9574
275
+ cjkcms/templates/cjkcms/pages/base.html,sha256=cdr1wUFE74HztUT1RpIKay7lhg8RGo99u-Rfdkm6zlY,9603
275
276
  cjkcms/templates/cjkcms/pages/form_page_landing.html,sha256=zdySSHOWF10-x2MFLH9XMjeFSeNTMRM-VpvZ1tM8kw0,248
276
277
  cjkcms/templates/cjkcms/pages/home_page.html,sha256=67h2o3EVXsrivMqM26OZV-7-H_9vv1clFJ4MFMknIMU,50
277
278
  cjkcms/templates/cjkcms/pages/page.mini.html,sha256=VR3lTCUgHPXTd2HAlNrxQAmNjS_0VGzfQccUV5IeDXc,506
@@ -281,7 +282,7 @@ cjkcms/templates/cjkcms/pages/web_page.html,sha256=floOVzOyPYvTMKfWd3pY0vyrqG7jt
281
282
  cjkcms/templates/cjkcms/pages/web_page_notitle.html,sha256=HjwzN8NpJBOVjKM6_cLtPfUllotFMkvQPLXL2aoB6A0,378
282
283
  cjkcms/templates/cjkcms/snippets/actionbar.html,sha256=gI_fVpM7InInvEOaqb1Xs5a0NHQVE8MKKeE2PI_eXLs,31
283
284
  cjkcms/templates/cjkcms/snippets/bottom_corner_lang_selector.html,sha256=_gcHmob1tMeT3_KppsozcWw4F1ocyF3YiOunUmBesjs,1943
284
- cjkcms/templates/cjkcms/snippets/breadcrumbs.html,sha256=zvugWh1kS2Eobn1T4eq1XEngn49z1ME7IlEwrmXUxyo,1311
285
+ cjkcms/templates/cjkcms/snippets/breadcrumbs.html,sha256=3flWNTJ568V4l9HTuYK5vZ7Mm6L1S0Qk8dKmQP0boDM,1342
285
286
  cjkcms/templates/cjkcms/snippets/footer.html,sha256=_QUtV_LHgGjh-XLzw5Fd_Lxdrx9on5G0luFaa6oirB0,430
286
287
  cjkcms/templates/cjkcms/snippets/frontend_assets.html,sha256=2q24FFzOiM2USJiI1tuNTdJZGvRQnMPjAwTA0AlGNiU,1656
287
288
  cjkcms/templates/cjkcms/snippets/frontend_scripts.html,sha256=kO3lpKZylriXj27ff6ubtDXkpqOwqSZM256iM6cCuHM,510
@@ -302,7 +303,7 @@ cjkcms/templates/wagtailadmin/shared/cr_main_nav_2fix.html,sha256=BAhkDE8_8KbhUO
302
303
  cjkcms/templates/wagtailadmin/tables/thumbnail_cell.html,sha256=RzMT-tBnnDOgL-zexKanZTTpCEX1bMybFL2p_zvOEV4,578
303
304
  cjkcms/templatetags/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
304
305
  cjkcms/templatetags/auth_extras.py,sha256=IIxQ5n9FaQVZmhW-yW1XM5p2OjIemtqVoX-O-UcCns8,327
305
- cjkcms/templatetags/cjkcms_tags.py,sha256=OE42fZ8_IoadhVKTXxoNuRB00D_W7Xg-7RxWWxMZAgk,8721
306
+ cjkcms/templatetags/cjkcms_tags.py,sha256=BLLtgWnzvzHvuDZlvcJMSZaXo5EjPtk1J7_94J0aZUg,8904
306
307
  cjkcms/templatetags/friendly_loader.py,sha256=Zwopb9NNNN6IuDJCMFlwKuhmJC0hi4uTPEZSAxeakYY,4962
307
308
  cjkcms/templatetags/gravatar.py,sha256=JG5MB6HUFso15J8gZ_te5FTMYAuo4km8rzMKKvLLh-E,1127
308
309
  cjkcms/templatetags/txtutils_tags.py,sha256=UMojdiLt6Jpijc-2QLusPc-qXX9bqFZf0JbqqPsfnWQ,1223
@@ -317,19 +318,21 @@ cjkcms/tests/test_finders_oembed.py,sha256=J-dG3aTsO2KXnUA0o4yKHh_r5Za9v_8gcXJQG
317
318
  cjkcms/tests/test_gravatar.py,sha256=UWu1cVi3Gj96yqeQu795gw6FVPbZ44eCkkH1NGEGgBo,2629
318
319
  cjkcms/tests/test_search_blocks.py,sha256=0ARZwVOgAkoAZQFo99adt4ZpogfPwaYms6ZbbluSbmw,4919
319
320
  cjkcms/tests/test_settings.py,sha256=n2B-qtaSdMJC4KuMGGx6qo5HIU73aaImbMkI_o7tK8A,2665
320
- cjkcms/tests/test_templatetags.py,sha256=deNuZtSlr29hokn7azTyB2FhwnG3x0L13bjdHGA4jrw,5313
321
+ cjkcms/tests/test_templatetags.py,sha256=RHaIn93G8Aa2lG3JTHSPhFOTLBa4AWXJnwXa9Us5iqI,5966
321
322
  cjkcms/tests/test_urls.py,sha256=v0MnVUzJmUcpnPQ0jTkslUqsj0gfbCEmyQw7_zualWk,2832
322
323
  cjkcms/tests/test_webpage.py,sha256=PvXeXbawigObsdi_YpQNuHFx3Lqi6wM3ktVHZsxYbr4,1520
323
324
  cjkcms/tests/urls.py,sha256=_ksKz7HBHJtQK3HxC9cmJMX_dt6n4alx3FXjcL-cu28,850
325
+ cjkcms/tests/media/images/test.original.png,sha256=nLMtadXZhXXbt6DTm5enrysKX7cfWiUudtbS2X7mSzI,1938
326
+ cjkcms/tests/media/original_images/test.png,sha256=xJDvcufuQ-AM1HT-zgMxYEORko4rdK_8MSHU-puJNW8,2306
324
327
  cjkcms/tests/testapp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
325
328
  cjkcms/tests/testapp/apps.py,sha256=EwyrkWTu-_OoLoERBTlqkqfPIIrEsbHY3kbCxgrv_7I,169
326
329
  cjkcms/tests/testapp/models.py,sha256=Rkn9KHrGbLzrKjP4y_gwtXma1_fJOZNU7ekb689fJEU,488
327
330
  cjkcms/tests/testapp/migrations/0001_initial.py,sha256=hxr-r-42IQEGr_OsZkxXXCW7wbxAHuI_OLOkn-seJUU,4942
328
331
  cjkcms/tests/testapp/migrations/0002_create_homepage.py,sha256=EfsxHh1oyqwahW9RVpTvaRDx_CHtFSJQahKEr7XC5Gg,1999
329
332
  cjkcms/tests/testapp/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
330
- wagtail_cjkcms-24.8.1.dist-info/LICENSE,sha256=KHsCh1fKOZzvcKe1a9h3FlDjTjK_UurO3wHK55TnHHo,1538
331
- wagtail_cjkcms-24.8.1.dist-info/METADATA,sha256=Z-HbKBHoViO1zl1u8-M9fZtWe4msFkUqZzIiB5ygUkU,3106
332
- wagtail_cjkcms-24.8.1.dist-info/WHEEL,sha256=GUeE9LxUgRABPG7YM0jCNs9cBsAIx0YAkzCB88PMLgc,109
333
- wagtail_cjkcms-24.8.1.dist-info/entry_points.txt,sha256=FzoiFENdZ1uebNztyz6GlswkumQspd5VjWbR9MUIH_8,50
334
- wagtail_cjkcms-24.8.1.dist-info/top_level.txt,sha256=8wJGOGo1pG5nO5akfcMzA7i3ndj5868I8w35vTT0JJM,7
335
- wagtail_cjkcms-24.8.1.dist-info/RECORD,,
333
+ wagtail_cjkcms-24.9.1.dist-info/LICENSE,sha256=KHsCh1fKOZzvcKe1a9h3FlDjTjK_UurO3wHK55TnHHo,1538
334
+ wagtail_cjkcms-24.9.1.dist-info/METADATA,sha256=6tGGR3pFPV_FztoU7z6hQhaq-t828M0b1EvbqjLx-mc,3106
335
+ wagtail_cjkcms-24.9.1.dist-info/WHEEL,sha256=WDDPHYzpiOIm6GP1C2_8y8W6q16ICddAgOHlhTje9Qc,109
336
+ wagtail_cjkcms-24.9.1.dist-info/entry_points.txt,sha256=FzoiFENdZ1uebNztyz6GlswkumQspd5VjWbR9MUIH_8,50
337
+ wagtail_cjkcms-24.9.1.dist-info/top_level.txt,sha256=8wJGOGo1pG5nO5akfcMzA7i3ndj5868I8w35vTT0JJM,7
338
+ wagtail_cjkcms-24.9.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (73.0.1)
2
+ Generator: setuptools (74.0.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py2-none-any
5
5
  Tag: py3-none-any