django-unfold 0.33.0__py3-none-any.whl → 0.34.0__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (68) hide show
  1. {django_unfold-0.33.0.dist-info → django_unfold-0.34.0.dist-info}/METADATA +17 -1
  2. {django_unfold-0.33.0.dist-info → django_unfold-0.34.0.dist-info}/RECORD +68 -68
  3. unfold/admin.py +5 -9
  4. unfold/contrib/filters/templates/unfold/filters/filters_date_range.html +1 -1
  5. unfold/contrib/filters/templates/unfold/filters/filters_datetime_range.html +1 -1
  6. unfold/contrib/filters/templates/unfold/filters/filters_numeric_range.html +1 -1
  7. unfold/contrib/filters/templates/unfold/filters/filters_numeric_single.html +1 -1
  8. unfold/contrib/filters/templates/unfold/filters/filters_numeric_slider.html +1 -1
  9. unfold/contrib/guardian/templates/unfold/guardian/group_form.html +10 -10
  10. unfold/contrib/guardian/templates/unfold/guardian/user_form.html +10 -10
  11. unfold/contrib/import_export/templates/admin/import_export/import_confirm.html +1 -1
  12. unfold/contrib/import_export/templates/admin/import_export/import_errors.html +3 -3
  13. unfold/contrib/import_export/templates/admin/import_export/import_preview.html +6 -6
  14. unfold/contrib/import_export/templates/admin/import_export/import_validation.html +8 -8
  15. unfold/contrib/simple_history/templates/simple_history/object_history_list.html +18 -18
  16. unfold/fields.py +2 -2
  17. unfold/forms.py +2 -1
  18. unfold/static/unfold/css/styles.css +1 -1
  19. unfold/styles.css +6 -10
  20. unfold/templates/admin/actions.html +14 -12
  21. unfold/templates/admin/app_list.html +3 -5
  22. unfold/templates/admin/change_list.html +4 -4
  23. unfold/templates/admin/change_list_results.html +4 -4
  24. unfold/templates/admin/delete_confirmation.html +9 -9
  25. unfold/templates/admin/delete_selected_confirmation.html +9 -9
  26. unfold/templates/admin/edit_inline/stacked.html +64 -58
  27. unfold/templates/admin/edit_inline/tabular.html +11 -11
  28. unfold/templates/admin/filter.html +5 -5
  29. unfold/templates/admin/includes/object_delete_summary.html +2 -2
  30. unfold/templates/admin/object_history.html +9 -9
  31. unfold/templates/admin/pagination.html +3 -3
  32. unfold/templates/admin/submit_line.html +7 -7
  33. unfold/templates/unfold/change_list_filter.html +3 -3
  34. unfold/templates/unfold/components/progress.html +1 -1
  35. unfold/templates/unfold/components/table.html +4 -4
  36. unfold/templates/unfold/components/title.html +1 -1
  37. unfold/templates/unfold/helpers/account_links.html +2 -2
  38. unfold/templates/unfold/helpers/actions_row.html +14 -12
  39. unfold/templates/unfold/helpers/add_link.html +2 -2
  40. unfold/templates/unfold/helpers/app_list.html +7 -7
  41. unfold/templates/unfold/helpers/app_list_default.html +7 -7
  42. unfold/templates/unfold/helpers/breadcrumb_item.html +1 -1
  43. unfold/templates/unfold/helpers/display_header.html +4 -2
  44. unfold/templates/unfold/helpers/field_readonly_value.html +1 -1
  45. unfold/templates/unfold/helpers/fieldset_row.html +1 -1
  46. unfold/templates/unfold/helpers/fieldsets_tabs.html +1 -1
  47. unfold/templates/unfold/helpers/help_text.html +1 -1
  48. unfold/templates/unfold/helpers/history.html +3 -3
  49. unfold/templates/unfold/helpers/label.html +6 -6
  50. unfold/templates/unfold/helpers/messages.html +12 -1
  51. unfold/templates/unfold/helpers/navigation.html +1 -1
  52. unfold/templates/unfold/helpers/search_results.html +2 -2
  53. unfold/templates/unfold/helpers/site_icon.html +1 -1
  54. unfold/templates/unfold/helpers/tab_action.html +1 -1
  55. unfold/templates/unfold/helpers/tab_list.html +9 -5
  56. unfold/templates/unfold/helpers/theme_switch.html +2 -2
  57. unfold/templates/unfold/helpers/welcomemsg.html +5 -3
  58. unfold/templates/unfold/layouts/skeleton.html +2 -2
  59. unfold/templates/unfold/widgets/clearable_file_input.html +2 -2
  60. unfold/templates/unfold/widgets/clearable_file_input_small.html +2 -2
  61. unfold/templates/unfold/widgets/foreign_key_raw_id.html +8 -4
  62. unfold/templates/unfold/widgets/radio_option.html +1 -1
  63. unfold/templates/unfold/widgets/split_datetime.html +2 -2
  64. unfold/templates/unfold/widgets/split_datetime_vertical.html +2 -2
  65. unfold/templatetags/unfold_list.py +6 -7
  66. unfold/widgets.py +10 -5
  67. {django_unfold-0.33.0.dist-info → django_unfold-0.34.0.dist-info}/LICENSE.md +0 -0
  68. {django_unfold-0.33.0.dist-info → django_unfold-0.34.0.dist-info}/WHEEL +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: django-unfold
3
- Version: 0.33.0
3
+ Version: 0.34.0
4
4
  Summary: Modern Django admin theme for seamless interface development
5
5
  Home-page: https://unfoldadmin.com
6
6
  License: MIT
@@ -111,6 +111,7 @@ Did you decide to start using Unfold but you don't have time to make the switch
111
111
  - [Pre-commit](#pre-commit)
112
112
  - [Poetry configuration](#poetry-configuration)
113
113
  - [Compiling Tailwind](#compiling-tailwind)
114
+ - [Design system](#design-system)
114
115
  - [Using VS Code with containers](#using-vs-code-with-containers)
115
116
  - [Development server](#development-server)
116
117
  - [Compiling Tailwind in devcontainer](#compiling-tailwind-in-devcontainer)
@@ -374,6 +375,9 @@ class CustomAdminClass(ModelAdmin):
374
375
  # Position horizontal scrollbar in changelist at the top
375
376
  list_horizontal_scrollbar_top = False
376
377
 
378
+ # Dsable select all action in changelist
379
+ list_disable_select_all = False
380
+
377
381
  # Custom actions
378
382
  actions_list = [] # Displayed above the results list
379
383
  actions_row = [] # Displayed in a table row in results list
@@ -1402,6 +1406,17 @@ Some components like datepickers, calendars or selectors in admin was not possib
1402
1406
 
1403
1407
  **Note:** most of the custom styles located in style.css are created via `@apply some-tailwind-class;` as is not possible to manually add CSS class to element which are for example created via jQuery.
1404
1408
 
1409
+
1410
+ ### Design system
1411
+
1412
+ | Component | Classes |
1413
+ | --------------------------------- | ------------------------------------------------------ |
1414
+ | Regular text | text-gray-600 dark:text-gray-300 |
1415
+ | Hover regular text | text-gray-700 dark:text-gray-200 |
1416
+ | Headings | font-semibold text-gray-900 dark:text-gray-100 |
1417
+ | Icon | text-gray-400 dark:text-gray-500 |
1418
+ | Hover icon | hover:text-gray-500 dark:hover:text-gray-400 |
1419
+
1405
1420
  ### Using VS Code with containers
1406
1421
 
1407
1422
  Unfold already contains prepared support for VS Code development. After cloning the project locally, open the main folder in VS Code (in terminal `code .`). Immediately, you would see a message from VS Code **Folder contains a Dev Container configuration file. Reopen folder to develop in a container** which will inform you that the support for containers is prepared. Confirm the message by clicking on **Reopen in Container**. If the message is not there, you can still manually open the project in a container by running the command **Dev Containers: Reopen in Container**.
@@ -1424,4 +1439,5 @@ The container has already a node preinstalled so it is possible to compile a new
1424
1439
  - [Material Icons](https://fonts.google.com/icons) - Icons from Google Fonts
1425
1440
  - [Trix](https://trix-editor.org/) - WYSIWYG editor
1426
1441
  - [Alpine.js](https://alpinejs.dev/) - JavaScript interactions
1442
+ - [Chart.js](https://github.com/chartjs/Chart.js/) - Chart components
1427
1443
 
@@ -1,5 +1,5 @@
1
1
  unfold/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- unfold/admin.py,sha256=pTftvCeukl-tsnOhQf8JJT59CcpTnpQafn7IkWqfW3U,19580
2
+ unfold/admin.py,sha256=3yBehQeJIt9JbNJMhBdnGFyovYmTr-JPFBpoCiUWpeE,19404
3
3
  unfold/apps.py,sha256=SlBXPYrUd2uXn67qFbRvbXSUk3XFWrF4-5WELgDCvho,381
4
4
  unfold/checks.py,sha256=Smgji9w19hnYjJElJ_FJnnyTEAE-E-OUB6otHu7lasY,1670
5
5
  unfold/contrib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -12,12 +12,12 @@ unfold/contrib/filters/static/unfold/filters/js/DateTimeShortcuts.js,sha256=jgFN
12
12
  unfold/contrib/filters/static/unfold/filters/js/admin-numeric-filter.js,sha256=nTkiiJk4Abn9d6KigxPSEsereFhFq-v5n_boiiY1eII,1668
13
13
  unfold/contrib/filters/static/unfold/filters/js/nouislider.min.js,sha256=aIEt5UlLNnEv4-HPyxcLqu9dTS7gXiMm35Mm0rFmQ0Q,26683
14
14
  unfold/contrib/filters/static/unfold/filters/js/wNumb.min.js,sha256=gayD3el5iizhy0DlsyKfZvfOfOZHDmb7BPvOcT97GSg,2236
15
- unfold/contrib/filters/templates/unfold/filters/filters_date_range.html,sha256=BVUsF4vCtDpxpXxevf--y3n8kO1FH3FMFbLG1qEUe6g,661
16
- unfold/contrib/filters/templates/unfold/filters/filters_datetime_range.html,sha256=BVUsF4vCtDpxpXxevf--y3n8kO1FH3FMFbLG1qEUe6g,661
15
+ unfold/contrib/filters/templates/unfold/filters/filters_date_range.html,sha256=dZESgm60-nS469z4T9PZ8W8g98NqIcCHl2vWQgtk164,655
16
+ unfold/contrib/filters/templates/unfold/filters/filters_datetime_range.html,sha256=dZESgm60-nS469z4T9PZ8W8g98NqIcCHl2vWQgtk164,655
17
17
  unfold/contrib/filters/templates/unfold/filters/filters_field.html,sha256=UTlSZlpg-gAc_a-EJLLF0NI_ofuSHQ2kMMoAs99nL2E,164
18
- unfold/contrib/filters/templates/unfold/filters/filters_numeric_range.html,sha256=NoJwm36x1J65Pq8cLk_g_qJ0Cil3CtDwja9dqZgRX8g,639
19
- unfold/contrib/filters/templates/unfold/filters/filters_numeric_single.html,sha256=EeQv2fHYX6MK9wwM0lgGkKGfmyDo82VLtx_E0M9MUtI,576
20
- unfold/contrib/filters/templates/unfold/filters/filters_numeric_slider.html,sha256=3MKISUpYX-A5gp-ILshnj0s-DCmL7NDdVcqGJ5NyHRQ,1681
18
+ unfold/contrib/filters/templates/unfold/filters/filters_numeric_range.html,sha256=n8WkxAd2qlmcLh_s5ToUul8LlbC3b8csP5gRwfAq8u8,633
19
+ unfold/contrib/filters/templates/unfold/filters/filters_numeric_single.html,sha256=I89EqKtIrus5pUeQc6APoovwogYua2-cA5QmQ6hNpHc,570
20
+ unfold/contrib/filters/templates/unfold/filters/filters_numeric_slider.html,sha256=yChI6vo111DTHfDENQO1b2Wixed21oNpH9bbTbFLGqY,1675
21
21
  unfold/contrib/forms/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
22
22
  unfold/contrib/forms/apps.py,sha256=Di0TMzVuRpVxLG-8Bjdq5ALCSf5r7u2xVhD0jU6H5Sc,132
23
23
  unfold/contrib/forms/static/unfold/forms/css/trix.css,sha256=TH9WdnaZrmwI8hAEydwjobdrBzSw_KYdRTSQDuD-8hE,20027
@@ -34,8 +34,8 @@ unfold/contrib/guardian/templates/admin/guardian/model/field.html,sha256=V9ZgmYi
34
34
  unfold/contrib/guardian/templates/admin/guardian/model/obj_perms_manage.html,sha256=p7GmZOyDqj1urDAh9pyZhatnSpe-G6gXtQ_DpRK-J8k,1426
35
35
  unfold/contrib/guardian/templates/admin/guardian/model/obj_perms_manage_group.html,sha256=TOXgGhNqujwl4XUYMXOMfPmTPszNkY4Sb3-7oRAy158,2318
36
36
  unfold/contrib/guardian/templates/admin/guardian/model/obj_perms_manage_user.html,sha256=drAeEnr6lh6SgDPC-bkaGtLkd_DxOtcHBSbgb_zaV00,2316
37
- unfold/contrib/guardian/templates/unfold/guardian/group_form.html,sha256=DsewzbWXXqJHPX8xLY57kxf9LrqrQ6HJF_3heXKJO1Q,4145
38
- unfold/contrib/guardian/templates/unfold/guardian/user_form.html,sha256=lnhZNYUDKF_5vj0s15R8mRiJ1WmNehyRbe3y2kNINH0,4132
37
+ unfold/contrib/guardian/templates/unfold/guardian/group_form.html,sha256=erYUME-MViHHx3i2mVm3LpaOVNccNmep7PshPRU7tlg,3874
38
+ unfold/contrib/guardian/templates/unfold/guardian/user_form.html,sha256=tKYI6cnaZ2cGmq6DnGvuAq0o52R6PEg3lxpH5AM30o4,3862
39
39
  unfold/contrib/import_export/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
40
40
  unfold/contrib/import_export/apps.py,sha256=SdJu6Qh90VqGWY19FSDhhpUqhTbaIYsJKny3zX5baHI,149
41
41
  unfold/contrib/import_export/forms.py,sha256=O8BBKJIdqLg3-uUFQyDV9-L6EoJ7EVSX3LJBP1zegGw,2037
@@ -47,11 +47,11 @@ unfold/contrib/import_export/templates/admin/import_export/change_list_import_ex
47
47
  unfold/contrib/import_export/templates/admin/import_export/change_list_import_item.html,sha256=XUuRxnsx9YQbKvW-E_JGl_ha7kpTSGSoRefOTTizuX0,233
48
48
  unfold/contrib/import_export/templates/admin/import_export/export.html,sha256=NZ2bZ0yvskp_twIjX9LSROMmicXAU8dDXemxdII9_K0,3447
49
49
  unfold/contrib/import_export/templates/admin/import_export/import.html,sha256=P54_f3s96PV87Bo-FCZfmsn9DkRXLOB36r7HYF6y7GM,2075
50
- unfold/contrib/import_export/templates/admin/import_export/import_confirm.html,sha256=M-acK4XSLHuPFD_NJashGYvPPeJrJsC-3LMvHs3lRis,867
51
- unfold/contrib/import_export/templates/admin/import_export/import_errors.html,sha256=lV01ICc0mUzPzR0TbrOI1dM7j4sDjgSQa89kNJpEBGI,1422
50
+ unfold/contrib/import_export/templates/admin/import_export/import_confirm.html,sha256=9DpqVW2TcrC8UrAawBP-6KIzKf0bZDNhpYIWduGTnVc,869
51
+ unfold/contrib/import_export/templates/admin/import_export/import_errors.html,sha256=JxY2An8aVZaWYK-uQz1eq1lvutRp-4PQgbKtYpCc1Fw,1413
52
52
  unfold/contrib/import_export/templates/admin/import_export/import_form.html,sha256=mMuMTAbgMbJ1IyCQPBkzmob4m5lJmZ69_QSo3GvvSiY,990
53
- unfold/contrib/import_export/templates/admin/import_export/import_preview.html,sha256=nUuzDhMN7EBVbNsiCjQMJJokuAHE3nbK29JODE5tbOk,2413
54
- unfold/contrib/import_export/templates/admin/import_export/import_validation.html,sha256=gt8My-0bCkjTEUpc1p8XZBpmNpDmCXrvJSN1sksLCtI,4880
53
+ unfold/contrib/import_export/templates/admin/import_export/import_preview.html,sha256=UZG5ep4BRbq3K9g3Yv0sNJdVRYmEi4luHi51IHNGNU8,2263
54
+ unfold/contrib/import_export/templates/admin/import_export/import_validation.html,sha256=iOjwNDSQQHN6XVUZemYbsWI_wYeYEXTGc3T181Wg5NA,4635
55
55
  unfold/contrib/import_export/templates/admin/import_export/resource_fields_list.html,sha256=7LzgBiT73c4GHVZx3-ap_cuMz57EnIJ1ESGA5xR31mM,871
56
56
  unfold/contrib/inlines/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
57
57
  unfold/contrib/inlines/admin.py,sha256=p55cNAFOwEFToyFdXUtGl6Vt6j89s9i42V4kHYSZ5Ws,5928
@@ -62,17 +62,17 @@ unfold/contrib/simple_history/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5N
62
62
  unfold/contrib/simple_history/apps.py,sha256=eF_KVYb60CAnGgWk2Z1YKYGfgA3TJBMr229qI7e2pgU,153
63
63
  unfold/contrib/simple_history/templates/simple_history/object_history.html,sha256=ioBkepWc9-PQe4Kfy32RKOt_zf4fntz5XUfFeV3yQVw,771
64
64
  unfold/contrib/simple_history/templates/simple_history/object_history_form.html,sha256=MOL3Tw3Nk3Rnq1koRV7yeCev4CP06_4xqAIOQk1M7FU,2290
65
- unfold/contrib/simple_history/templates/simple_history/object_history_list.html,sha256=ydMWblJ74Uyd-sx34bO1mcEgCPPcIQZVL6neBoOllwk,7449
65
+ unfold/contrib/simple_history/templates/simple_history/object_history_list.html,sha256=f0RxTiPfC957uQzNfSkKoyMUzu8LRw4-MS6d3xZ2gew,6821
66
66
  unfold/contrib/simple_history/templates/simple_history/submit_line.html,sha256=9v7PfS8M6N0NccTEb_9QyTG28NgDBiIkjuBOfWGIQ18,1703
67
67
  unfold/dataclasses.py,sha256=4PAWLVlUhyGMq1Mwai7afCgrRO0Inulw0opFUKVEOBk,483
68
68
  unfold/decorators.py,sha256=6E4vPVwK0IQDAiDPg9pgyypRqciX_gR0jwITDcrSc8U,3367
69
69
  unfold/exceptions.py,sha256=gcCj1ox61E137bk_0Cqy4YC3SttdPgB-fiJUqpmyHSE,43
70
- unfold/fields.py,sha256=7sXZDYnXbGKQ9KJtkageVVGNejoAbqoDpzK-mW0TuLw,7448
71
- unfold/forms.py,sha256=_HDCPoFUGMGvURIDMh1ut6VrhjkonIPxarYRGn0gi_A,4071
70
+ unfold/fields.py,sha256=yhtpDfqycpOxqdQlbncCg9qhELxGk3AtXizkZyzzH0g,7410
71
+ unfold/forms.py,sha256=8-IoFZLwUNJKTNdev_oJwdxm-_xekvrn_84IXKse4Q8,4100
72
72
  unfold/settings.py,sha256=uUl9WtHmYQF-BM_yCohGB5pGHjMWpZ0tUZOSki47gMA,1233
73
73
  unfold/sites.py,sha256=yr66aXr1UYSZw9I9VRKpmkQxUtUP9336zs1GZJWJqis,13505
74
74
  unfold/static/unfold/css/simplebar.css,sha256=5LLaEM11pKi6JFCOLt4XKuZxTpT9rpdq_tNlaQytFlU,4647
75
- unfold/static/unfold/css/styles.css,sha256=5fTnLC-aW-jSgwy5oBi0QZqUurBXsDCPDTin059_2Sg,95266
75
+ unfold/static/unfold/css/styles.css,sha256=2fhp571FdpPkyZA04XsP8uaTySEPGnC4sGZ4dT3ruHg,96866
76
76
  unfold/static/unfold/fonts/inter/Inter-Bold.woff2,sha256=O88EyjAeRPE_QEyKBKpK5wf2epUOEu8wwjj5bnhCZqE,46552
77
77
  unfold/static/unfold/fonts/inter/Inter-Medium.woff2,sha256=O88EyjAeRPE_QEyKBKpK5wf2epUOEu8wwjj5bnhCZqE,46552
78
78
  unfold/static/unfold/fonts/inter/Inter-Regular.woff2,sha256=O88EyjAeRPE_QEyKBKpK5wf2epUOEu8wwjj5bnhCZqE,46552
@@ -87,39 +87,39 @@ unfold/static/unfold/js/app.js,sha256=2-56Kc20KH69Prjcj6ezURAKID3U8V2mHgbhPjeH6H
87
87
  unfold/static/unfold/js/chart.js,sha256=22W6cFERR-CElMOKRgMMicueMVP0Vf7FBEBYH8Z8tCk,200633
88
88
  unfold/static/unfold/js/htmx.js,sha256=XOLqvnZiyEx46EW9vaJTBUaaWg8CGVVfXJkVsUmJbpI,42820
89
89
  unfold/static/unfold/js/simplebar.js,sha256=t-uG1FAD6ZoiMeN--wac0XRS7SxoDVG6zvRnGuEp7X8,27176
90
- unfold/styles.css,sha256=oWQMIFvTtU80auJaw1kYzQQxslHhbvwZ9BrtFxvHaYk,18350
91
- unfold/templates/admin/actions.html,sha256=n_Z2dJv2h7DUkz7HjshJDgHMOdTcLEr2M2GIZjoKVTA,2647
90
+ unfold/styles.css,sha256=egNdWhCzaGS5Y_tCiceIU6BTNn1MkrMMooX5zDv_r6I,18223
91
+ unfold/templates/admin/actions.html,sha256=8GqELAxzywGyfQJiQeuhGIQUakdK_WeneILY06C7mEo,2746
92
92
  unfold/templates/admin/app_index.html,sha256=lVjMIFsspHQ09LGHKfdfg7TlqlL39AX5LbwoeoZjFhk,1335
93
- unfold/templates/admin/app_list.html,sha256=ZTUCZMEnaK5JJ-HQfoEyWi36luEiaTiBwuUOtCdyaQ0,3060
93
+ unfold/templates/admin/app_list.html,sha256=GumHcXTFGrZ4PpW7eHkbduR1eILk7CVYWzSJNy6PGEY,2802
94
94
  unfold/templates/admin/auth/user/add_form.html,sha256=iLig-vd2YExXsj0xGBwYhZ4kGUihwYtLtNVhzObgSzg,478
95
95
  unfold/templates/admin/auth/user/change_password.html,sha256=-Wa9ml3yss-kDz0YQxCiwoxs91KQD8eetCt5l6xekWM,2892
96
96
  unfold/templates/admin/base.html,sha256=RptiEpgXZ6seYrPu-1Stoe8ECHpi9PjkJjFheGecYF0,2358
97
97
  unfold/templates/admin/base_site.html,sha256=3ckWrcAdd7Pw1hk6Zwyknab_Qb-rteV9-mXhMnfo6VI,361
98
98
  unfold/templates/admin/change_form.html,sha256=oWK5wr0qv6QMJrFQ9Veacozg_CN1DwmBqbzPOuDtiA4,4443
99
99
  unfold/templates/admin/change_form_object_tools.html,sha256=eyeH-i2HgEM0Yi-OJA2D1VnKJyC19A_my1IDGxxoP8Y,593
100
- unfold/templates/admin/change_list.html,sha256=QgpUsMibQRy8g7o7JbB2VZnOemmQuJ9oEYv0gJYXCX0,5155
100
+ unfold/templates/admin/change_list.html,sha256=o8XnKa1xFot53-BxGeB8afJ0TF8N7TcJhyTA4vPnop0,5124
101
101
  unfold/templates/admin/change_list_object_tools.html,sha256=cmMiT2nT20Ph5yfpj9aHPr76Z-JP4aSXp0o-Rnad28s,147
102
- unfold/templates/admin/change_list_results.html,sha256=Hls_hFPFMoAmt-PZF9rY9dpG_J52lvuLy4oJ19S3DF0,5494
102
+ unfold/templates/admin/change_list_results.html,sha256=6PbAraLQ910cI1-03IT-yEHRwNIS07xoNyaqPAqEW6M,5520
103
103
  unfold/templates/admin/date_hierarchy.html,sha256=BfUPbsLpHZVa40BHBahz1H9RSVuz36Jc3yrlobOiIpw,1306
104
- unfold/templates/admin/delete_confirmation.html,sha256=n4KcDWPwGtoS_E0osakTuUTHfy5qsPG_LxAAMQHZ_Qw,5166
105
- unfold/templates/admin/delete_selected_confirmation.html,sha256=Jhu8r3KiIIPtPYVxSLuES87PN4Vgg5Xi17QU4gG2PPo,4941
106
- unfold/templates/admin/edit_inline/stacked.html,sha256=LcxB_0zX4EtzIurEfEFmDM2JdW-nVZrAgvkAJVusjEM,6641
107
- unfold/templates/admin/edit_inline/tabular.html,sha256=BsGwm6KEjdsGo0sJHjG9m5yhDSlRIjxl5Gy15MCBUOg,14465
108
- unfold/templates/admin/filter.html,sha256=G7h_8yIRidSQORzL503E3UtlF-73u6JLf5So0wAYw-w,1752
104
+ unfold/templates/admin/delete_confirmation.html,sha256=x0azTK-swC1WaN1J382QmR0D1zqsk0h11Zq03U6E9xo,4982
105
+ unfold/templates/admin/delete_selected_confirmation.html,sha256=nQpJ1_hBr-BgY-xgLU6vvj51_CEYyPq2Bd3iitkA-UQ,4764
106
+ unfold/templates/admin/edit_inline/stacked.html,sha256=fnzTEffWouBc05Ti8LwrLvLPXKe85VLMAvnNfuL8ZbA,7032
107
+ unfold/templates/admin/edit_inline/tabular.html,sha256=MxGI96FXhIP4wMxJQHqsYGZ_wYJJVQjDsBqRgABtr48,14122
108
+ unfold/templates/admin/filter.html,sha256=F2Gqb7GdGq41P-ZAp_JDKVKAbtaOjXx-Wb7oBZHV8NI,1617
109
109
  unfold/templates/admin/includes/fieldset.html,sha256=R9DCaOQsFkNUZBPSI9OuhBx0VYmNG-GQ88BTsHpZh94,952
110
- unfold/templates/admin/includes/object_delete_summary.html,sha256=o57knP7uUUY6GeBUnhAb0c9s2oW_aIhInUmR_TN5QAI,468
110
+ unfold/templates/admin/includes/object_delete_summary.html,sha256=G0MgYyjl7MPi2OM7j1ZbOMAD-sQ4eNZZB9E8iexD8rY,421
111
111
  unfold/templates/admin/index.html,sha256=pkGdKWdD3zzOvkRdELvdb15sleSpfl4eHPA14PAh7z0,684
112
112
  unfold/templates/admin/login.html,sha256=MI6LOulHm1929UAwPzKCWZRRkvdzbwA6MuTBbg7XGjg,4076
113
113
  unfold/templates/admin/nav_sidebar.html,sha256=cKuC28XU9NT17lrCVugn2cHf39kgkoX499axJt29L3s,1162
114
- unfold/templates/admin/object_history.html,sha256=gXg72ygzFxsVZ5Aej9U5Kh-9mDi0gSxM50TK2IMNNLk,5069
115
- unfold/templates/admin/pagination.html,sha256=KWTPV7_hVSZ1374a-pqHXhnOueNQKu1UnSUYirrWtCk,1173
114
+ unfold/templates/admin/object_history.html,sha256=mRD6nbIVmnsz2OG6UsuXdI55bflY3Vs8zbIE9X-Oi74,4816
115
+ unfold/templates/admin/pagination.html,sha256=KrwOM6gRizfpTMP59TESQaNGcQzkga2k02opl_7BxLo,1130
116
116
  unfold/templates/admin/search_form.html,sha256=vKuruVUEMarx8FPrBp86yqqFtUXfFPzR_9GxhnOCs4U,1173
117
- unfold/templates/admin/submit_line.html,sha256=5ji4NVEg_aN22B6OWB5ptFpulpihaPeROXEUszwNdQY,4439
117
+ unfold/templates/admin/submit_line.html,sha256=JpD8HhRxtEIlWsGvpUGbLeKYJd_X7Rm_IBzFIcgeq6M,4222
118
118
  unfold/templates/auth/widgets/read_only_password_hash.html,sha256=I08wFPcDr0Gjrg64nlcKiB12Tz2g_nnJXemiy8tkoZg,785
119
119
  unfold/templates/registration/logged_out.html,sha256=4rjAazcxt8ZCqA5bConKRgAk4VrljNTksdtg7D_btrU,1028
120
120
  unfold/templates/registration/password_change_done.html,sha256=i1ZzfTwZHWNWoN9_xHZDdcgLdTOVbTFFD1HUSuG0LkY,1062
121
121
  unfold/templates/registration/password_change_form.html,sha256=zzmqFHfMExS7czgEBdEtetXk2Ae_7jzaID7CpE_xlgo,2225
122
- unfold/templates/unfold/change_list_filter.html,sha256=dwSpZkhhDvDsYJXO_0PybZdquZKUIQmZkDaIyyIXisE,2507
122
+ unfold/templates/unfold/change_list_filter.html,sha256=XcufnmOwceEhf6dQ-Oy19lORlCwulqqVFwBvSilOsh8,2499
123
123
  unfold/templates/unfold/components/button.html,sha256=M_kn5fJPadvBfTUdN56-LMkouvfpUMga7orRJoVifgc,178
124
124
  unfold/templates/unfold/components/card.html,sha256=9Qpu74wRAmhW2fu3AJTVs9IexJjBf3tnLD8PNSi1ZKc,1071
125
125
  unfold/templates/unfold/components/chart/bar.html,sha256=nDdDCUXvFd793OpNgNPQo0vBmvYngMsQyPHVTf1vfOw,297
@@ -128,74 +128,74 @@ unfold/templates/unfold/components/container.html,sha256=WBk1rGHnTsObi3pJCpL3dfF
128
128
  unfold/templates/unfold/components/flex.html,sha256=_hBsQLJ6-7MfEfXNp5Wy-ykNtPMnnNg_io2IMGegn3s,134
129
129
  unfold/templates/unfold/components/icon.html,sha256=Qlhcf41FOwNVJ-nvA0RJ_Dn6JW6PUFXO6tOR3Xtf6e8,99
130
130
  unfold/templates/unfold/components/navigation.html,sha256=LzmcT8_SdmEp4XlqV0xjHhxxvfr_puG5-kAfzphw7YM,872
131
- unfold/templates/unfold/components/progress.html,sha256=pfdSjZD17IK4L5kGO8tRYikpGQnLQK11XAp4PG-tfh8,664
131
+ unfold/templates/unfold/components/progress.html,sha256=Dh8Q5rW5oVoRFrAxCcTbId3qI_SeA7V5V8KsmLgA8Bc,631
132
132
  unfold/templates/unfold/components/separator.html,sha256=IuQQu_kMgZY9D9w9-l6PHuVF0cX0bJuxcJHGXWswEhU,168
133
- unfold/templates/unfold/components/table.html,sha256=umX_Wh-kVkRqEdu-nxFYpPqSrlzRljVg7yBjd4vO6cc,2120
133
+ unfold/templates/unfold/components/table.html,sha256=iC7mhLlPLRgCaV0sVjEkxIR7A4NLV2-rSHqEbmwpaHw,2028
134
134
  unfold/templates/unfold/components/text.html,sha256=-GjxvdiaBQIaNfPSzT6SSIwnc3R27FkSDQMoF3FDPso,102
135
- unfold/templates/unfold/components/title.html,sha256=PSiNK-s8jUJfu6f9zCcGOOyLiKxS-dsAFu3aR-yjNdU,131
136
- unfold/templates/unfold/helpers/account_links.html,sha256=JCm4z_jZSshn8k812xdRx3ZHt_wdHgZngQKZXTSK0tc,1939
137
- unfold/templates/unfold/helpers/actions_row.html,sha256=X_s1C6vA0mTexXsbOnKpEPdA5qQgzbJ8jUHsddt-aW0,1722
138
- unfold/templates/unfold/helpers/add_link.html,sha256=mIgpKrwqBO1oJ4cwPQWSX1oUHBwHJmy5-2TxUHf-1bo,808
139
- unfold/templates/unfold/helpers/app_list.html,sha256=C4UIaUtI-DEGH8N-tSrzVXPcBzyrS8sBcHuuthW0KF4,5757
140
- unfold/templates/unfold/helpers/app_list_default.html,sha256=LjnBSEd7tsVLWWa-hvbP00CcPtgafOzy4kgWXhAUY2E,4102
135
+ unfold/templates/unfold/components/title.html,sha256=FyIpxJa8fLDyLNyfcTkTxQDTyHNHOByfQIZ445KUdW8,131
136
+ unfold/templates/unfold/helpers/account_links.html,sha256=Vd80PCa91D5v3gJJKKuEJ7ycL80n54XJEo-039ELsRU,1879
137
+ unfold/templates/unfold/helpers/actions_row.html,sha256=kjRxDPe-XinDTYjkhLGHFo0jfEzdc7bFK-zd2TlUtiU,1782
138
+ unfold/templates/unfold/helpers/add_link.html,sha256=CUFZ3quvp1JMAPmTkFRjpUXSy9GVXnIWNcRzv_gpq1A,810
139
+ unfold/templates/unfold/helpers/app_list.html,sha256=RBFGn5A985AkZpQm0r0SXr2nUJ2IvxQF35d94wmOdKc,5515
140
+ unfold/templates/unfold/helpers/app_list_default.html,sha256=T8xXI0LsEZCyttxXZGomGMkqEd8Wxj61RCYQ4YDxlHE,3908
141
141
  unfold/templates/unfold/helpers/attrs.html,sha256=Mwpj72kuwYj8hOT3J2T8qx6f1r_4xwwaS1slHA-82jI,166
142
142
  unfold/templates/unfold/helpers/boolean.html,sha256=6gXAMEJcNVB14je9uN32dxImXP3KMCiWPeKU5EAnawA,569
143
- unfold/templates/unfold/helpers/breadcrumb_item.html,sha256=QSosg4GdgYSJIfVkBamHxuNwtRu5WQZAn6YNcCnwaFA,234
144
- unfold/templates/unfold/helpers/display_header.html,sha256=HiuaIJ6Y8DSM99OFypLO_2uQadZIw7tSg1aJJpFEXkM,1161
143
+ unfold/templates/unfold/helpers/breadcrumb_item.html,sha256=Q9Usvwz2iGI9AYlNgyN0OZ9ZPftcoaXk37nxsFmCJSE,201
144
+ unfold/templates/unfold/helpers/display_header.html,sha256=99odsL1oUX0uiT2nEboXFPsm9IEetc1GbWReqJsPTRo,1248
145
145
  unfold/templates/unfold/helpers/display_label.html,sha256=LS9DWzYjHkYLV27sZDwyXlg2sLJ0AlId9FbjnXpsbfg,317
146
146
  unfold/templates/unfold/helpers/field.html,sha256=Ds-zUHkdyxamfUCVNhxvtM0XoJg9OCA0QcsLbLWv4oo,882
147
147
  unfold/templates/unfold/helpers/field_readonly.html,sha256=O0gHEW46OWt1oUUk0lZiyR-mztWv_7IH6GpKRm2wUw4,235
148
- unfold/templates/unfold/helpers/field_readonly_value.html,sha256=eAQcLZc2YpWOwOmKZQVP60oDRp4Zpo4fZJBEo9nLwNo,442
149
- unfold/templates/unfold/helpers/fieldset_row.html,sha256=Pg0qqHXlKzzECeJxJ_0PlPdHZUK-MrIxY-vvvJZeHX0,4125
150
- unfold/templates/unfold/helpers/fieldsets_tabs.html,sha256=YDIiO-f5Hn__o9fEyhQXPD_Pf7jklhUAsxQy_qH7k3Y,1477
148
+ unfold/templates/unfold/helpers/field_readonly_value.html,sha256=z-tAWjbXpRLRmbpZezxg5t9uylV2AVFLUIPDSsH8dcs,409
149
+ unfold/templates/unfold/helpers/fieldset_row.html,sha256=-X2L-0JK9ztnXWieV9FKDI232XB2cGRc6pgaRJKjcTg,4142
150
+ unfold/templates/unfold/helpers/fieldsets_tabs.html,sha256=dOHTr05uKYeBqiQPWaCd8_qMayZaVKXfxmrcb3iqix4,1477
151
151
  unfold/templates/unfold/helpers/form_errors.html,sha256=EwerIJptSCWXvtAJ1IZKfEn98qlShBIGavsTThbklAs,266
152
152
  unfold/templates/unfold/helpers/form_label.html,sha256=SR4U6iK9w4oels6iGY_Da-yN4BbXQVN9zCDlBGGXcw8,310
153
153
  unfold/templates/unfold/helpers/header.html,sha256=-wEd5_REov-lU6Od_BaZbvfQCFBZMtRGB4rQwCBWcDc,1051
154
- unfold/templates/unfold/helpers/help_text.html,sha256=GAKDPqM-70JRwvS_T748VumWrZqhOLz63KCuitBwen8,146
155
- unfold/templates/unfold/helpers/history.html,sha256=PI7qMI6W-3-3uV7oR-1WmUiitpC85USSy7U9o3AuNy4,2017
156
- unfold/templates/unfold/helpers/label.html,sha256=IstpON3T4LrWsLH70-Hj_E0qyA_1Xq9j6NnIgbowrWQ,683
154
+ unfold/templates/unfold/helpers/help_text.html,sha256=o-2_hyruIr_Xt0fo38aGgrpptPJFhddnVMPOVQOYhE4,113
155
+ unfold/templates/unfold/helpers/history.html,sha256=tfpOWNDzo2k7orcb7avfFBWVFe8Z5yVxtMkshD2C42E,1927
156
+ unfold/templates/unfold/helpers/label.html,sha256=w6bzLOyvbdz-pxOTo5wJ4KDDFtxpH4rxn7wzaod5FsI,783
157
157
  unfold/templates/unfold/helpers/messages/error.html,sha256=mlHVdfpG2ycsKIDBJB9CZs6fM4bMGkpmJvtxHjEApjE,558
158
158
  unfold/templates/unfold/helpers/messages/errornote.html,sha256=5ChxoVYkF4jI-cw72gVHh0CRxDnG9ME_U6UQOArax2k,404
159
159
  unfold/templates/unfold/helpers/messages/info.html,sha256=js95Hm3CzqpP6_XJpnA2vG7qt8eyHmJJJcDF0e5PLtQ,143
160
- unfold/templates/unfold/helpers/messages.html,sha256=axUkgdYQySOTKEuRBDkohXFf8dM1ioQt5m6iAR7Ls18,701
161
- unfold/templates/unfold/helpers/navigation.html,sha256=TdBm-7YM6B9qpCAKT1tN6CfPFM6pob6Xz5oojYkcAVA,1185
160
+ unfold/templates/unfold/helpers/messages.html,sha256=x06-ZXZe6l_n04h_CdoUkfYjsO8qu6xWR3dRhYuf2ww,927
161
+ unfold/templates/unfold/helpers/navigation.html,sha256=6qy1hPaLcCqujUfB3-iCSsXXUN54fW0RhxuA_XTsbA8,1213
162
162
  unfold/templates/unfold/helpers/pagination_current_item.html,sha256=4cZ2KLVcP0Y7xuGyXgexDQ07r94cgM5Gnmtv11dkRPQ,69
163
163
  unfold/templates/unfold/helpers/pagination_ellipsis.html,sha256=Ar9Ntf2I_79mIVW5Hadwkn1Kx1Lj3d8eIXNXI1IIBfg,56
164
164
  unfold/templates/unfold/helpers/search.html,sha256=tCJLkG3qYDTOsgkaCer0y4cNo_ubw9fQXIt0w_72uCo,1588
165
- unfold/templates/unfold/helpers/search_results.html,sha256=Ki-NoM_Gj5eJ4dMTqiVtyhQIdHPRS_77R7VJZikv83I,774
166
- unfold/templates/unfold/helpers/site_icon.html,sha256=RO-R5yRt6yOx41Z8dpDP4lzwMXFdz8Dp5j8vGUtHzh0,789
165
+ unfold/templates/unfold/helpers/search_results.html,sha256=liLy0JnKaDUKhVpsvPM6PKqqLO_rwuBf6whMo0QYMFg,637
166
+ unfold/templates/unfold/helpers/site_icon.html,sha256=MWGECpFsRJcBJiLLxDbUUKTYLNR1wMn8gOlvUPN5ugo,788
167
167
  unfold/templates/unfold/helpers/site_logo.html,sha256=05tqXzHy--pluceRQ2jDUZCFX9DjPHdBqGaieUv9sXk,424
168
168
  unfold/templates/unfold/helpers/submit.html,sha256=oSzq85LRLhdOlbFtFZFhYm6ucT95u6LunTeSTDClszQ,206
169
- unfold/templates/unfold/helpers/tab_action.html,sha256=jsEtb3umg4H3qx1F9WkWpg78GllzmNKEOB9asFcs_2c,403
170
- unfold/templates/unfold/helpers/tab_list.html,sha256=_f59XxqsccYk2NuJBigWzDcwjB7IJUpFFhGD9_mnrMw,4075
171
- unfold/templates/unfold/helpers/theme_switch.html,sha256=s5ZeWbx8Ynaq777EU8tGzCoX-09JMKt4l4qpxxX8dMQ,2271
169
+ unfold/templates/unfold/helpers/tab_action.html,sha256=QRsJq6MIY7hlCOaTfScTcCfv0sUZs3iM2tMFe4vjpAA,370
170
+ unfold/templates/unfold/helpers/tab_list.html,sha256=gpDVnMMJFP-AiWsf53LJUatT_Yy_locpMYLmnlc5yuU,4368
171
+ unfold/templates/unfold/helpers/theme_switch.html,sha256=21r_6v7rdpv1favvw5-5uwkRMUWwsAxcghdqDP38HYw,2212
172
172
  unfold/templates/unfold/helpers/userlinks.html,sha256=qWjtBt9Q_tU8a874ii0Qqg8t_d-SSYBTB_3QZfNlx9g,634
173
- unfold/templates/unfold/helpers/welcomemsg.html,sha256=noRysgSENef4_53pXaTiBCy2or6lQm1ZtmCQVODAB1c,1120
173
+ unfold/templates/unfold/helpers/welcomemsg.html,sha256=mZ9qHGKrtCgv8t39s7Fz97kVRfNT9t0S9ODpbNCGH74,1221
174
174
  unfold/templates/unfold/layouts/base.html,sha256=bAXZDbyiyxNiE-49mqr7pHUFhC2mHZQzIDUY-js_yZ0,379
175
175
  unfold/templates/unfold/layouts/base_simple.html,sha256=T37-ncKZBLNnOlsUQq90rGl3sLdRjFaxWCPG399pkbE,1179
176
- unfold/templates/unfold/layouts/skeleton.html,sha256=DCfXXG5ZKw6up2ZTBta2TL1ZcuGlnZOfJWUh5ltzBz0,3821
177
- unfold/templates/unfold/widgets/clearable_file_input.html,sha256=Pa3qK7aHhTA66HYpbeeCfiV8cj2fbQa5gClxebbdsQQ,2234
178
- unfold/templates/unfold/widgets/clearable_file_input_small.html,sha256=5gR3OrAQc3PabIB0HaIAmMBqdr3SRNcxmLPPmMkVBas,2512
176
+ unfold/templates/unfold/layouts/skeleton.html,sha256=wVbJntYS2cHbIzxDZXC3tD1aXAHzHI-0rtfHG-DP_nw,3792
177
+ unfold/templates/unfold/widgets/clearable_file_input.html,sha256=HNc93_OKFYWCc-TZhGfRlkN_ao9NRqUTGGZLFy-XnF0,2250
178
+ unfold/templates/unfold/widgets/clearable_file_input_small.html,sha256=DVDVTOpb9G9l06Y5A5d3QUeEoNfz4XZXvBn1yGqefO0,2528
179
179
  unfold/templates/unfold/widgets/date.html,sha256=WXo2LG1v_gBZBSg-zocj7oujMKI0MWLYCIFfB04HMLQ,122
180
- unfold/templates/unfold/widgets/foreign_key_raw_id.html,sha256=VyJjnN0v75-NFb_O25smszKzlRXwl_H9zyPsrBLb11g,1036
180
+ unfold/templates/unfold/widgets/foreign_key_raw_id.html,sha256=Ud6qyEfLCuZjwcvnJ-rQia1DrhU-Te9uZqv2cKbDpFk,1006
181
181
  unfold/templates/unfold/widgets/radio.html,sha256=3WcmclQNg7R_pRjEHL1dHkGjAzWlWNYnhHkAirC4nuA,646
182
- unfold/templates/unfold/widgets/radio_option.html,sha256=IZgPx-aWKJuxrSalJ3K50RFd1vwSpb9Qk0yZwfV78_A,368
182
+ unfold/templates/unfold/widgets/radio_option.html,sha256=ZlzyAaGcJjPJbmjjLHqsMgB0kiBSxWJGS-7wSKaIscY,319
183
183
  unfold/templates/unfold/widgets/range.html,sha256=28FBtSUgUcG82vpk_I27Lbs5oWZOV_oMzVhx4wj3-Ik,262
184
184
  unfold/templates/unfold/widgets/related_widget_wrapper.html,sha256=0I6wSu8z_sJPqmX6uZev4mQGIIM336d6kvHdHj36ny4,3831
185
- unfold/templates/unfold/widgets/split_datetime.html,sha256=75gpnx5pF5PaoLfj-e3XOdNEBDWvEdzLK85cawUDjRQ,1688
186
- unfold/templates/unfold/widgets/split_datetime_vertical.html,sha256=xinCH4kkQ-yKUqcSI7-m-_UEzOEKWqvLTjUa3i-e8EM,881
185
+ unfold/templates/unfold/widgets/split_datetime.html,sha256=-3nXwdQitkG_QtMXtQx76kO2_Z1F6xwPYmnjybBDLBo,1606
186
+ unfold/templates/unfold/widgets/split_datetime_vertical.html,sha256=xqDpC57CrYUrQhY7sPCBU4I8qriA4Ay-TXfbVGurPgY,799
187
187
  unfold/templates/unfold/widgets/split_money.html,sha256=AFLUBmzGbY-RXgsfz7gaDxVRhplaIPhXjg_hWYo9xcY,352
188
188
  unfold/templates/unfold/widgets/textarea.html,sha256=-ZLDGrtASero7L-J3VvTNq_KjPAZh_kLVw0Ow3awqXM,144
189
189
  unfold/templates/unfold/widgets/textarea_expandable.html,sha256=4xIGWb20DuwiwumndByrAyh7xF-ReXKLulSpDImX_cs,459
190
190
  unfold/templates/unfold/widgets/time.html,sha256=WXo2LG1v_gBZBSg-zocj7oujMKI0MWLYCIFfB04HMLQ,122
191
191
  unfold/templatetags/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
192
192
  unfold/templatetags/unfold.py,sha256=jWumX0e2KIyDxz_CmIfyOu7blILxVBqUPtGi1VutaBo,6884
193
- unfold/templatetags/unfold_list.py,sha256=hqSrBD6-8vHV6Ig3QNVmDvfViE_aud_7Ay-br7w0G7E,14193
193
+ unfold/templatetags/unfold_list.py,sha256=q02u7jbMWyDi_6_rOk17W-jW6Yqe9dkuz7Cc_mDp4Ok,14181
194
194
  unfold/typing.py,sha256=1P8PWM2oeaceUJtA5j071RbKEBpHYaux441u7Hd6wv4,643
195
195
  unfold/utils.py,sha256=zZdJE4FmwRd7p5a7sJiAoZjBOJitXJduOq7BulyppWM,4803
196
196
  unfold/views.py,sha256=hQCyeeMa9kcJV1IZeeYqj8PGW7J4QWME8n-5n0UGmiU,1003
197
- unfold/widgets.py,sha256=fgFqWQZwIGvsYmtuAf6oCN71uFUXM_yuD8CEcSFUiUQ,15893
198
- django_unfold-0.33.0.dist-info/LICENSE.md,sha256=Ltk_quRyyvV3J5v3brtOqmibeZSw2Hrb8bY1W3ya0Ik,1077
199
- django_unfold-0.33.0.dist-info/METADATA,sha256=0nTE4zNM1RAKfqsJMNp6DcITOAvDxc1FQflVGuPkUU0,56626
200
- django_unfold-0.33.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
201
- django_unfold-0.33.0.dist-info/RECORD,,
197
+ unfold/widgets.py,sha256=p95xr5NoG_CI10fSZUYZ37w3vqqHjSpWPOLAo4Z6CDM,16049
198
+ django_unfold-0.34.0.dist-info/LICENSE.md,sha256=Ltk_quRyyvV3J5v3brtOqmibeZSw2Hrb8bY1W3ya0Ik,1077
199
+ django_unfold-0.34.0.dist-info/METADATA,sha256=H7CNN1F46aqwHb5_aie9z1pcpZOdjtmfJD4EqAK1FTQ,57500
200
+ django_unfold-0.34.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
201
+ django_unfold-0.34.0.dist-info/RECORD,,
unfold/admin.py CHANGED
@@ -84,7 +84,7 @@ FORMFIELD_OVERRIDES = {
84
84
  models.UUIDField: {"widget": UnfoldAdminUUIDInputWidget},
85
85
  models.TextField: {"widget": UnfoldAdminTextareaWidget},
86
86
  models.NullBooleanField: {"widget": UnfoldAdminNullBooleanSelectWidget},
87
- models.BooleanField: {"widget": UnfoldBooleanWidget},
87
+ models.BooleanField: {"widget": UnfoldBooleanSwitchWidget},
88
88
  models.IntegerField: {"widget": UnfoldAdminIntegerFieldWidget},
89
89
  models.BigIntegerField: {"widget": UnfoldAdminBigIntegerFieldWidget},
90
90
  models.DecimalField: {"widget": UnfoldAdminDecimalFieldWidget},
@@ -119,7 +119,9 @@ FORMFIELD_OVERRIDES_INLINE.update(
119
119
  }
120
120
  )
121
121
 
122
- checkbox = UnfoldBooleanWidget({"class": "action-select"}, lambda value: False)
122
+ checkbox = UnfoldBooleanWidget(
123
+ {"class": "action-select", "aria-label": _("Select record")}, lambda value: False
124
+ )
123
125
 
124
126
  helpers.AdminField = UnfoldAdminField
125
127
 
@@ -231,6 +233,7 @@ class ModelAdmin(ModelAdminMixin, BaseModelAdmin):
231
233
  list_horizontal_scrollbar_top = False
232
234
  list_filter_submit = False
233
235
  list_fullwidth = False
236
+ list_disable_select_all = False
234
237
  compressed_fields = False
235
238
  readonly_preprocess_fields = {}
236
239
  checks_class = UnfoldModelAdminChecks
@@ -414,13 +417,6 @@ class ModelAdmin(ModelAdminMixin, BaseModelAdmin):
414
417
  if extra_context is None:
415
418
  extra_context = {}
416
419
 
417
- new_formfield_overrides = copy.deepcopy(self.formfield_overrides)
418
- new_formfield_overrides.update(
419
- {models.BooleanField: {"widget": UnfoldBooleanSwitchWidget}}
420
- )
421
-
422
- self.formfield_overrides = new_formfield_overrides
423
-
424
420
  actions = []
425
421
  if object_id:
426
422
  for action in self.get_actions_detail(request, object_id):
@@ -2,7 +2,7 @@
2
2
 
3
3
  {% with choices.0 as choice %}
4
4
  <div class="flex flex-col mb-6">
5
- <h3 class="font-medium mb-2 text-gray-700 text-sm dark:text-gray-200">{% blocktrans with filter_title=title %}By {{ filter_title }}{% endblocktrans %}</h3>
5
+ <h3 class="font-semibold mb-2 text-gray-900 dark:text-gray-100">{% blocktrans with filter_title=title %}By {{ filter_title }}{% endblocktrans %}</h3>
6
6
 
7
7
  <div class="flex flex-col space-y-4">
8
8
  {% for field in choice.form %}
@@ -2,7 +2,7 @@
2
2
 
3
3
  {% with choices.0 as choice %}
4
4
  <div class="flex flex-col mb-6">
5
- <h3 class="font-medium mb-2 text-gray-700 text-sm dark:text-gray-200">{% blocktrans with filter_title=title %}By {{ filter_title }}{% endblocktrans %}</h3>
5
+ <h3 class="font-semibold mb-2 text-gray-900 dark:text-gray-100">{% blocktrans with filter_title=title %}By {{ filter_title }}{% endblocktrans %}</h3>
6
6
 
7
7
  <div class="flex flex-col space-y-4">
8
8
  {% for field in choice.form %}
@@ -2,7 +2,7 @@
2
2
 
3
3
  {% with choices.0 as choice %}
4
4
  <div class="flex flex-col mb-6">
5
- <h3 class="font-medium mb-2 text-gray-700 text-sm dark:text-gray-200">{% blocktrans with filter_title=title %}By {{ filter_title }}{% endblocktrans %}</h3>
5
+ <h3 class="font-semibold mb-2 text-gray-900 dark:text-gray-100">{% blocktrans with filter_title=title %}By {{ filter_title }}{% endblocktrans %}</h3>
6
6
 
7
7
  <div class="flex flex-row gap-4">
8
8
  {% for field in choice.form %}
@@ -2,7 +2,7 @@
2
2
 
3
3
  {% with choices.0 as choice %}
4
4
  <div class="flex flex-col mb-6">
5
- <h3 class="font-medium mb-2 text-gray-700 text-sm dark:text-gray-200">{% blocktrans with filter_title=title %}By {{ filter_title }}{% endblocktrans %}</h3>
5
+ <h3 class="font-semibold mb-2 text-gray-900 dark:text-gray-100">{% blocktrans with filter_title=title %}By {{ filter_title }}{% endblocktrans %}</h3>
6
6
 
7
7
  {% for field in choice.form %}
8
8
  <div class="flex flex-row flex-wrap group relative{% if field.errors %} errors{% endif %}">
@@ -3,7 +3,7 @@
3
3
 
4
4
  {% with choices.0 as choice %}
5
5
  <div class="admin-numeric-filter-wrapper mb-6">
6
- <h3 class="font-medium mb-2 text-gray-700 text-sm dark:text-gray-200">
6
+ <h3 class="font-semibold mb-2 text-gray-900 dark:text-gray-100">
7
7
  {% blocktrans with filter_title=title %}By {{ filter_title }}{% endblocktrans %}
8
8
  </h3>
9
9
 
@@ -3,25 +3,25 @@
3
3
  <form method="post">
4
4
  {% csrf_token %}
5
5
 
6
- <h2 class="font-medium mb-3 text-sm text-gray-700 dark:text-gray-200">
6
+ <h2 class="font-semibold mb-3 text-gray-900 dark:text-gray-100">
7
7
  {% trans "Group permissions" %}
8
8
  </h2>
9
9
 
10
10
  {% if groups_perms.items %}
11
- <table id="group-permissions" class="border-gray-200 border-spacing-none border-separate mb-6 text-gray-700 w-full dark:text-gray-300 lg:border lg:rounded-md lg:shadow-sm lg:dark:border-gray-800">
12
- <thead class="hidden lg:table-header-group">
11
+ <table id="group-permissions" class="border-gray-200 border-spacing-none border-separate mb-6 w-full lg:border lg:rounded-md lg:shadow-sm lg:dark:border-gray-800">
12
+ <thead class="hidden lg:table-header-group text-gray-900 dark:text-gray-100">
13
13
  <tr>
14
- <th class="align-middle font-medium px-3 py-2 text-left text-gray-400 text-sm">
14
+ <th class="align-middle font-medium px-3 py-2 text-left">
15
15
  {% trans "Group" %}
16
16
  </th>
17
17
 
18
18
  {% for perm in model_perms %}
19
- <th class="align-middle font-medium px-3 py-2 text-left text-gray-400 text-sm">
19
+ <th class="align-middle font-medium px-3 py-2 text-left">
20
20
  {{ perm.name }}
21
21
  </th>
22
22
  {% endfor %}
23
23
 
24
- <th class="align-middle font-medium px-3 py-2 text-right text-gray-400 text-sm">
24
+ <th class="align-middle font-medium px-3 py-2 text-right">
25
25
  {% trans "Action" %}
26
26
  </th>
27
27
  </tr>
@@ -30,14 +30,14 @@
30
30
  <tbody>
31
31
  {% for group, group_perms in groups_perms.items %}
32
32
  <tr class="block border mb-3 rounded-md shadow-sm lg:table-row lg:border-none lg:mb-0 lg:shadow-none dark:border-gray-800">
33
- <th class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-left text-sm before:flex before:capitalize before:content-[attr(data-label)] before:items-center before:mr-auto before:text-gray-500 first:border-t-0 dark:before:text-gray-300 lg:before:hidden lg:first:border-t lg:py-3 lg:table-cell dark:border-gray-800" data-label="{% trans "User" %}">
34
- <span class="text-gray-700 dark:text-gray-200">
33
+ <th class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-left before:flex before:capitalize before:content-[attr(data-label)] before:items-center before:mr-auto first:border-t-0 lg:before:hidden lg:first:border-t lg:py-3 lg:table-cell dark:border-gray-800" data-label="{% trans "User" %}">
34
+ <span>
35
35
  {{ group }}
36
36
  </span>
37
37
  </th>
38
38
 
39
39
  {% for perm in model_perms %}
40
- <td class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-left text-sm before:flex before:capitalize before:content-[attr(data-label)] before:items-center before:mr-auto before:text-gray-500 first:border-t-0 dark:before:text-gray-300 lg:before:hidden lg:first:border-t lg:py-3 lg:table-cell dark:border-gray-800" data-label="{{ perm.name }}">
40
+ <td class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-left before:flex before:capitalize before:content-[attr(data-label)] before:items-center before:mr-auto first:border-t-0 lg:before:hidden lg:first:border-t lg:py-3 lg:table-cell dark:border-gray-800" data-label="{{ perm.name }}">
41
41
  {% if perm.codename in group_perms %}
42
42
  {% include "unfold/helpers/boolean.html" with value=False %}
43
43
  {% else %}
@@ -46,7 +46,7 @@
46
46
  </td>
47
47
  {% endfor %}
48
48
 
49
- <td class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-right text-sm before:flex before:capitalize before:content-[attr(data-label)] before:items-center before:mr-auto before:text-gray-500 first:border-t-0 dark:before:text-gray-300 lg:before:hidden lg:first:border-t lg:py-3 lg:table-cell dark:border-gray-800" data-label="{% trans "Action" %}">
49
+ <td class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-right before:flex before:capitalize before:content-[attr(data-label)] before:items-center before:mr-auto first:border-t-0 lg:before:hidden lg:first:border-t lg:py-3 lg:table-cell dark:border-gray-800" data-label="{% trans "Action" %}">
50
50
  <a href="group-manage/{{ group.id|safe }}/" class="hover:text-gray-700 dark:hover:text-white">
51
51
  {% trans "Edit" %}
52
52
  </a>
@@ -3,25 +3,25 @@
3
3
  <form method="post">
4
4
  {% csrf_token %}
5
5
 
6
- <h2 class="font-medium mb-3 text-sm text-gray-700 dark:text-gray-200">
6
+ <h2 class="font-medium mb-3 text-gray-700 dark:text-gray-200">
7
7
  {% trans "User permissions" %}
8
8
  </h2>
9
9
 
10
10
  {% if users_perms.items %}
11
- <table id="user-permissions" class="border-gray-200 border-spacing-none border-separate mb-6 text-gray-700 w-full dark:text-gray-300 lg:border lg:rounded-md lg:shadow-sm lg:dark:border-gray-800">
12
- <thead class="hidden lg:table-header-group">
11
+ <table id="user-permissions" class="border-gray-200 border-spacing-none border-separate mb-6 w-full lg:border lg:rounded-md lg:shadow-sm lg:dark:border-gray-800">
12
+ <thead class="hidden lg:table-header-group text-gray-900 dark:text-gray-100">
13
13
  <tr>
14
- <th class="align-middle font-medium px-3 py-2 text-left text-gray-400 text-sm">
14
+ <th class="align-middle font-medium px-3 py-2 text-left">
15
15
  {% trans "User" %}
16
16
  </th>
17
17
 
18
18
  {% for perm in model_perms %}
19
- <th class="align-middle font-medium px-3 py-2 text-left text-gray-400 text-sm">
19
+ <th class="align-middle font-medium px-3 py-2 text-left">
20
20
  {{ perm.name }}
21
21
  </th>
22
22
  {% endfor %}
23
23
 
24
- <th class="align-middle font-medium px-3 py-2 text-right text-gray-400 text-sm">
24
+ <th class="align-middle font-medium px-3 py-2 text-right">
25
25
  {% trans "Action" %}
26
26
  </th>
27
27
  </tr>
@@ -30,14 +30,14 @@
30
30
  <tbody>
31
31
  {% for user, user_perms in users_perms.items %}
32
32
  <tr class="block border mb-3 rounded-md shadow-sm lg:table-row lg:border-none lg:mb-0 lg:shadow-none dark:border-gray-800">
33
- <th class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-left text-sm before:flex before:capitalize before:content-[attr(data-label)] before:items-center before:mr-auto before:text-gray-500 first:border-t-0 dark:before:text-gray-300 lg:before:hidden lg:first:border-t lg:py-3 lg:table-cell dark:border-gray-800" data-label="{% trans "User" %}">
34
- <span class="text-gray-700 dark:text-gray-200">
33
+ <th class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-left before:flex before:capitalize before:content-[attr(data-label)] before:items-center before:mr-auto first:border-t-0 lg:before:hidden lg:first:border-t lg:py-3 lg:table-cell dark:border-gray-800" data-label="{% trans "User" %}">
34
+ <span>
35
35
  {{ user }}
36
36
  </span>
37
37
  </th>
38
38
 
39
39
  {% for perm in model_perms %}
40
- <td class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-left text-sm before:flex before:capitalize before:content-[attr(data-label)] before:items-center before:mr-auto before:text-gray-500 first:border-t-0 dark:before:text-gray-300 lg:before:hidden lg:first:border-t lg:py-3 lg:table-cell dark:border-gray-800" data-label="{{ perm.name }}">
40
+ <td class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-left before:flex before:capitalize before:content-[attr(data-label)] before:items-center before:mr-auto first:border-t-0 lg:before:hidden lg:first:border-t lg:py-3 lg:table-cell dark:border-gray-800" data-label="{{ perm.name }}">
41
41
  {% if perm.codename in group_perms %}
42
42
  {% include "unfold/helpers/boolean.html" with value=False %}
43
43
  {% else %}
@@ -46,7 +46,7 @@
46
46
  </td>
47
47
  {% endfor %}
48
48
 
49
- <td class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-right text-sm before:flex before:capitalize before:content-[attr(data-label)] before:items-center before:mr-auto before:text-gray-500 first:border-t-0 dark:before:text-gray-300 lg:before:hidden lg:first:border-t lg:py-3 lg:table-cell dark:border-gray-800" data-label="{% trans "Action" %}">
49
+ <td class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-right before:flex before:capitalize before:content-[attr(data-label)] before:items-center before:mr-auto first:border-t-0 lg:before:hidden lg:first:border-t lg:py-3 lg:table-cell dark:border-gray-800" data-label="{% trans "Action" %}">
50
50
  <a href="user-manage/{{ user.id|safe }}/" class="hover:text-gray-700 dark:hover:text-white">
51
51
  {% trans "Edit" %}
52
52
  </a>
@@ -6,7 +6,7 @@
6
6
 
7
7
  {{ confirm_form.as_p }}
8
8
 
9
- <p class="font-medium p-4 text-sm text-gray-700 dark:text-gray-200">
9
+ <p class="font-semibold p-4 text-sm text-gray-900 dark:text-gray-100">
10
10
  {% trans "Below is a preview of data to be imported. If you are satisfied with the results, click 'Confirm import'" %}
11
11
  </p>
12
12
 
@@ -14,8 +14,8 @@
14
14
  {% for line, errors in result.row_errors %}
15
15
  {% for error in errors %}
16
16
  <li x-data="{ open: false }">
17
- <div class="bg-red-50 border border-red-200 cursor-pointer mb-4 rounded shadow-sm text-red-500 text-sm dark:bg-red-500/20 dark:border-red-500/20" x-on:click="open = ! open">
18
- <div class="border-b border-red-200 flex flex-row font-medium py-3 px-4 dark:border-red-500/20">
17
+ <div class="bg-red-50 border border-red-200 cursor-pointer mb-4 rounded shadow-sm text-red-500 dark:bg-red-500/20 dark:border-red-500/20" x-on:click="open = ! open">
18
+ <div class="border-b border-red-200 flex flex-row font-semibold py-3 px-4 dark:border-red-500/20">
19
19
  {% trans "Line number" %}: {{ line }} - {{ error.error }}
20
20
  </div>
21
21
 
@@ -26,7 +26,7 @@
26
26
  </div>
27
27
  </div>
28
28
 
29
- <div class="block border leading-relaxed rounded p-4 text-sm traceback dark:border-gray-800 dark:text-gray-300 " x-show="open">
29
+ <div class="block border leading-relaxed mb-4 rounded p-4 traceback dark:border-gray-800 dark:text-gray-300 " x-show="open">
30
30
  {{ error.traceback|linebreaks }}
31
31
  </div>
32
32
  </li>
@@ -1,13 +1,13 @@
1
1
  {% load admin_urls i18n import_export_tags unfold %}
2
2
 
3
3
  {% block preview %}
4
- <table class="border-gray-200 border-spacing-none border-separate text-gray-700 w-full dark:text-gray-300 lg:border lg:rounded-md lg:shadow-sm lg:dark:border-gray-800">
5
- <thead class="hidden lg:table-header-group">
4
+ <table class="border-gray-200 border-spacing-none border-separate w-full lg:border lg:rounded-md lg:shadow-sm lg:dark:border-gray-800">
5
+ <thead class="hidden lg:table-header-group text-gray-900 dark:text-gray-100">
6
6
  <tr>
7
- <th class="align-middle capitalize font-medium px-3 py-2 text-left text-gray-400 text-sm"></th>
7
+ <th class="align-middle capitalize font-semibold px-3 py-2 text-left"></th>
8
8
 
9
9
  {% for field in result.diff_headers %}
10
- <th class="align-middle capitalize font-medium px-3 py-2 text-left text-gray-400 text-sm">
10
+ <th class="align-middle capitalize font-semibold px-3 py-2 text-left">
11
11
  {{ field }}
12
12
  </th>
13
13
  {% endfor %}
@@ -17,7 +17,7 @@
17
17
  <tbody>
18
18
  {% for row in result.valid_rows %}
19
19
  <tr class="{{ row.import_type }} {% cycle '' 'bg-gray-50 dark:bg-white/[.02]' %} block border mb-3 rounded-md shadow-sm lg:table-row lg:border-none lg:mb-0 lg:shadow-none dark:border-gray-800">
20
- <td class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-left text-sm before:block before:capitalize before:content-[attr(data-label)] before:mr-auto before:text-gray-500 dark:before:text-gray-300 lg:before:hidden lg:py-3 lg:table-cell dark:border-gray-800">
20
+ <td class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-left before:block before:capitalize before:content-[attr(data-label)] before:mr-auto lg:before:hidden lg:py-3 lg:table-cell dark:border-gray-800">
21
21
  {% if row.import_type == 'new' %}
22
22
  {% trans "New" %}
23
23
  {% elif row.import_type == 'skip' %}
@@ -30,7 +30,7 @@
30
30
  </td>
31
31
 
32
32
  {% for field in row.diff %}
33
- <td data-label="{{ result.diff_headers|index:forloop.counter0 }}" class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-left text-sm before:block before:capitalize before:content-[attr(data-label)] before:mr-auto before:text-gray-500 dark:before:text-gray-300 lg:before:hidden lg:py-3 lg:table-cell dark:border-gray-800">
33
+ <td data-label="{{ result.diff_headers|index:forloop.counter0 }}" class="align-middle flex border-t border-gray-200 font-normal px-3 py-2 text-left before:block before:capitalize before:content-[attr(data-label)] before:mr-auto lg:before:hidden lg:py-3 lg:table-cell dark:border-gray-800">
34
34
  {{ field }}
35
35
  </td>
36
36
  {% endfor %}