django-unfold 0.55.2__py3-none-any.whl → 1.0.0__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 (124) hide show
  1. {django_unfold-0.55.2.dist-info → django_unfold-1.0.0.dist-info}/METADATA +1 -1
  2. {django_unfold-0.55.2.dist-info → django_unfold-1.0.0.dist-info}/RECORD +124 -123
  3. {django_unfold-0.55.2.dist-info → django_unfold-1.0.0.dist-info}/WHEEL +1 -1
  4. unfold/contrib/filters/templates/unfold/filters/filters_numeric_slider.html +2 -2
  5. unfold/contrib/forms/templates/unfold/forms/array.html +5 -5
  6. unfold/contrib/forms/templates/unfold/forms/helpers/toolbar.html +23 -23
  7. unfold/contrib/forms/widgets.py +7 -7
  8. unfold/contrib/guardian/templates/admin/guardian/model/obj_perms_manage.html +4 -2
  9. unfold/contrib/guardian/templates/admin/guardian/model/obj_perms_manage_group.html +5 -3
  10. unfold/contrib/guardian/templates/admin/guardian/model/obj_perms_manage_user.html +5 -3
  11. unfold/contrib/guardian/templates/unfold/guardian/group_form.html +4 -4
  12. unfold/contrib/guardian/templates/unfold/guardian/user_form.html +4 -4
  13. unfold/contrib/import_export/templates/admin/import_export/change_form.html +1 -1
  14. unfold/contrib/import_export/templates/admin/import_export/export.html +4 -4
  15. unfold/contrib/import_export/templates/admin/import_export/import.html +1 -1
  16. unfold/contrib/import_export/templates/admin/import_export/import_confirm.html +2 -2
  17. unfold/contrib/import_export/templates/admin/import_export/import_errors.html +18 -12
  18. unfold/contrib/import_export/templates/admin/import_export/import_form.html +2 -2
  19. unfold/contrib/import_export/templates/admin/import_export/import_preview.html +2 -2
  20. unfold/contrib/import_export/templates/admin/import_export/import_validation.html +7 -7
  21. unfold/contrib/simple_history/templates/simple_history/object_history.html +3 -3
  22. unfold/contrib/simple_history/templates/simple_history/object_history_form.html +2 -2
  23. unfold/contrib/simple_history/templates/simple_history/object_history_list.html +2 -2
  24. unfold/contrib/simple_history/templates/simple_history/submit_line.html +4 -4
  25. unfold/forms.py +1 -1
  26. unfold/settings.py +22 -22
  27. unfold/sites.py +10 -5
  28. unfold/static/unfold/css/styles.css +2 -1
  29. unfold/static/unfold/fonts/material-symbols/styles.css +0 -16
  30. unfold/styles.css +140 -84
  31. unfold/templates/admin/actions.html +4 -4
  32. unfold/templates/admin/app_index.html +1 -1
  33. unfold/templates/admin/app_list.html +2 -2
  34. unfold/templates/admin/auth/user/add_form.html +1 -1
  35. unfold/templates/admin/auth/user/change_password.html +2 -2
  36. unfold/templates/admin/base.html +6 -6
  37. unfold/templates/admin/change_form.html +6 -4
  38. unfold/templates/admin/change_list.html +11 -9
  39. unfold/templates/admin/change_list_results.html +4 -4
  40. unfold/templates/admin/date_hierarchy.html +1 -1
  41. unfold/templates/admin/delete_confirmation.html +4 -4
  42. unfold/templates/admin/delete_selected_confirmation.html +3 -3
  43. unfold/templates/admin/edit_inline/stacked.html +3 -3
  44. unfold/templates/admin/edit_inline/tabular.html +4 -4
  45. unfold/templates/admin/filter.html +3 -3
  46. unfold/templates/admin/includes/fieldset.html +1 -1
  47. unfold/templates/admin/index.html +1 -1
  48. unfold/templates/admin/login.html +9 -7
  49. unfold/templates/admin/nav_sidebar.html +11 -3
  50. unfold/templates/admin/object_history.html +4 -4
  51. unfold/templates/admin/pagination.html +18 -24
  52. unfold/templates/admin/search_form.html +3 -3
  53. unfold/templates/admin/submit_line.html +53 -56
  54. unfold/templates/auth/widgets/read_only_password_hash.html +1 -1
  55. unfold/templates/registration/logged_out.html +6 -8
  56. unfold/templates/registration/password_change_done.html +1 -1
  57. unfold/templates/registration/password_change_form.html +1 -1
  58. unfold/templates/unfold/components/button.html +1 -1
  59. unfold/templates/unfold/components/card.html +5 -5
  60. unfold/templates/unfold/components/chart/cohort.html +2 -2
  61. unfold/templates/unfold/components/navigation.html +2 -2
  62. unfold/templates/unfold/components/progress.html +1 -1
  63. unfold/templates/unfold/components/table.html +3 -3
  64. unfold/templates/unfold/components/tracker.html +1 -1
  65. unfold/templates/unfold/helpers/account_links.html +7 -7
  66. unfold/templates/unfold/helpers/actions_row.html +3 -3
  67. unfold/templates/unfold/helpers/app_list.html +7 -7
  68. unfold/templates/unfold/helpers/app_list_default.html +2 -2
  69. unfold/templates/unfold/helpers/change_list_actions.html +1 -1
  70. unfold/templates/unfold/helpers/change_list_filter.html +4 -4
  71. unfold/templates/unfold/helpers/change_list_filter_actions.html +5 -5
  72. unfold/templates/unfold/helpers/delete_submit_line.html +2 -2
  73. unfold/templates/unfold/helpers/display_dropdown.html +3 -3
  74. unfold/templates/unfold/helpers/display_header.html +1 -1
  75. unfold/templates/unfold/helpers/edit_inline/tabular_delete.html +1 -1
  76. unfold/templates/unfold/helpers/edit_inline/tabular_field.html +1 -1
  77. unfold/templates/unfold/helpers/edit_inline/tabular_row.html +1 -1
  78. unfold/templates/unfold/helpers/edit_inline/tabular_title.html +1 -1
  79. unfold/templates/unfold/helpers/empty_results.html +4 -4
  80. unfold/templates/unfold/helpers/field_readonly_value.html +1 -1
  81. unfold/templates/unfold/helpers/fieldset_row_checkbox.html +2 -2
  82. unfold/templates/unfold/helpers/fieldset_row_field.html +1 -1
  83. unfold/templates/unfold/helpers/fieldsets_tabs.html +1 -1
  84. unfold/templates/unfold/helpers/header.html +3 -1
  85. unfold/templates/unfold/helpers/header_back_button.html +1 -1
  86. unfold/templates/unfold/helpers/history.html +2 -2
  87. unfold/templates/unfold/helpers/label.html +1 -1
  88. unfold/templates/unfold/helpers/language_switch.html +3 -3
  89. unfold/templates/unfold/helpers/messages/debug.html +1 -1
  90. unfold/templates/unfold/helpers/messages/error.html +1 -1
  91. unfold/templates/unfold/helpers/messages/errornote.html +1 -1
  92. unfold/templates/unfold/helpers/messages/info.html +1 -1
  93. unfold/templates/unfold/helpers/messages/success.html +1 -1
  94. unfold/templates/unfold/helpers/messages/warning.html +1 -1
  95. unfold/templates/unfold/helpers/messages.html +1 -1
  96. unfold/templates/unfold/helpers/navigation.html +10 -14
  97. unfold/templates/unfold/helpers/navigation_header.html +6 -4
  98. unfold/templates/unfold/helpers/pagination.html +7 -0
  99. unfold/templates/unfold/helpers/search.html +2 -2
  100. unfold/templates/unfold/helpers/search_results.html +1 -1
  101. unfold/templates/unfold/helpers/site_dropdown.html +2 -2
  102. unfold/templates/unfold/helpers/site_icon.html +6 -6
  103. unfold/templates/unfold/helpers/submit.html +1 -1
  104. unfold/templates/unfold/helpers/tab_action.html +5 -5
  105. unfold/templates/unfold/helpers/tab_actions.html +1 -1
  106. unfold/templates/unfold/helpers/tab_items.html +8 -8
  107. unfold/templates/unfold/helpers/tab_list.html +1 -1
  108. unfold/templates/unfold/helpers/theme_switch.html +8 -8
  109. unfold/templates/unfold/helpers/welcomemsg.html +3 -3
  110. unfold/templates/unfold/layouts/base_simple.html +3 -3
  111. unfold/templates/unfold/layouts/skeleton.html +2 -2
  112. unfold/templates/unfold/widgets/clearable_file_input.html +3 -3
  113. unfold/templates/unfold/widgets/clearable_file_input_small.html +5 -5
  114. unfold/templates/unfold/widgets/foreign_key_raw_id.html +5 -5
  115. unfold/templates/unfold/widgets/related_widget_wrapper.html +8 -8
  116. unfold/templates/unfold/widgets/split_datetime.html +2 -2
  117. unfold/templates/unfold_crispy/field.html +1 -1
  118. unfold/templates/unfold_crispy/inputs.html +1 -1
  119. unfold/templates/unfold_crispy/layout/checkbox.html +1 -1
  120. unfold/templates/unfold_crispy/layout/fieldset.html +1 -1
  121. unfold/templates/unfold_crispy/layout/table_inline_formset.html +2 -2
  122. unfold/templatetags/unfold.py +23 -9
  123. unfold/widgets.py +29 -34
  124. {django_unfold-0.55.2.dist-info → django_unfold-1.0.0.dist-info}/LICENSE.md +0 -0
@@ -22,7 +22,7 @@
22
22
 
23
23
  {% block content %}
24
24
  <div id="content-main">
25
- <p class="bg-primary-100 mb-8 text-primary-600 px-3 py-3 rounded text-sm">
25
+ <p class="bg-primary-100 mb-8 text-primary-600 px-3 py-3 rounded-default text-sm">
26
26
  {% translate 'Your password was changed.' %}
27
27
  </p>
28
28
  </div>
@@ -42,7 +42,7 @@
42
42
 
43
43
  {% include "unfold/helpers/field.html" with field=form.new_password2 %}
44
44
 
45
- <button type="submit" class="bg-primary-600 border border-transparent font-medium px-3 py-2 rounded text-sm text-white">
45
+ <button type="submit" class="bg-primary-600 border border-transparent font-medium px-3 py-2 rounded-default text-sm text-white">
46
46
  {% translate 'Change password' %}
47
47
  </button>
48
48
  </div>
@@ -1,4 +1,4 @@
1
1
  <{% if href %}a href="{{ href }}"{% else %}button{% endif%} {% if submit %}type="submit"{% endif%} {% if name %}name="{{ name }}"{% endif %}
2
- class="border font-medium flex items-center gap-2 px-3 py-2 rounded text-center whitespace-nowrap {% if attrs.disabled %}cursor-not-allowed opacity-50{% endif %} {% if variant == "default" %}bg-white dark:border-base-700 dark:bg-transparent dark:text-white{% else %}bg-primary-600 border-transparent text-white{% endif %}{% if class %} {{ class }}{% endif %}" {% include "unfold/helpers/attrs.html" %}>
2
+ class="border border-base-200 font-medium flex items-center gap-2 px-3 py-2 rounded-default justify-center whitespace-nowrap {% if attrs.disabled %}cursor-not-allowed opacity-50{% endif %} {% if variant == "default" %}bg-white dark:border-base-700 dark:bg-transparent dark:text-white{% else %}bg-primary-600 border-transparent text-white{% endif %}{% if class %} {{ class }}{% endif %}" {% include "unfold/helpers/attrs.html" %}>
3
3
  {{ children }}
4
4
  </{% if href %}a{% else %}button{% endif%}>
@@ -1,11 +1,11 @@
1
- <div class="bg-white border flex flex-col flex-grow overflow-hidden p-6 relative rounded shadow-sm dark:bg-base-900 dark:border-base-800 {% if class %} {{ class }}{% endif %}">
1
+ <div class="bg-white border border-base-200 flex flex-col grow overflow-hidden p-6 relative rounded-default shadow-xs dark:bg-base-900 dark:border-base-800 {% if class %} {{ class }}{% endif %}">
2
2
  {% if title %}
3
- <h2 class="bg-base-50 border-b font-semibold mb-6 -mt-6 -mx-6 py-4 px-6 text-font-important-light dark:text-font-important-dark dark:border-base-800 dark:bg-white/[.02]">
3
+ <h2 class="bg-base-50 border-b border-base-200 font-semibold mb-6 -mt-6 -mx-6 py-4 px-6 text-font-important-light dark:text-font-important-dark dark:border-base-800 dark:bg-white/[.02]">
4
4
  {{ title }}
5
5
  </h2>
6
6
  {% endif %}
7
7
 
8
- <div class="flex-grow relative {% if icon %} pl-6{% endif %}">
8
+ <div class="grow relative {% if icon %} pl-6{% endif %}">
9
9
  {{ children }}
10
10
 
11
11
  {% if label %}
@@ -15,12 +15,12 @@
15
15
  {% endif %}
16
16
 
17
17
  {% if icon %}
18
- <span class="material-symbols-outlined absolute -left-6 text-base-300 top-1/2 -translate-x-1/3 -translate-y-1/2 !text-6xl dark:text-base-500">{{ icon }}</span>
18
+ <span class="material-symbols-outlined absolute -left-6 text-base-300 top-1/2 -translate-x-1/3 -translate-y-1/2 text-6xl! dark:text-base-500">{{ icon }}</span>
19
19
  {% endif %}
20
20
  </div>
21
21
 
22
22
  {% if footer %}
23
- <div class="border-t flex items-center -mb-6 -mx-6 mt-6 pb-2 pt-2 px-6 text-sm dark:border-base-800">
23
+ <div class="border-t border-base-200 flex items-center -mb-6 -mx-6 mt-6 pb-2 pt-2 px-6 text-sm dark:border-base-800">
24
24
  {{ footer }}
25
25
  </div>
26
26
  {% endif %}
@@ -1,5 +1,5 @@
1
1
  <div class="overflow-auto w-full" data-simplebar>
2
- <table class="w-full">
2
+ <table class="border-separate w-full">
3
3
  <thead>
4
4
  <tr>
5
5
  <th></th>
@@ -39,7 +39,7 @@
39
39
 
40
40
  {% for col in row.cols %}
41
41
  <td class="h-full">
42
- <div class="flex flex-col h-[66px] justify-center px-3 py-2.5 rounded {% if col.color %}{{ col.color }}{% else %}bg-base-50 border border-dashed dark:bg-base-800 dark:border-base-700{% endif %}">
42
+ <div class="flex flex-col h-[66px] justify-center px-3 py-2.5 rounded-default {% if col.color %}{{ col.color }}{% else %}bg-base-50 border border-base-200 border-dashed dark:bg-base-800 dark:border-base-700{% endif %}">
43
43
  <span>
44
44
  {{ col.value }}
45
45
  </span>
@@ -1,7 +1,7 @@
1
1
  {% if items %}
2
- <nav class="bg-base-100 flex gap-2 p-1 rounded text-sm dark:bg-white/[.04]{% if class %} {{ class }}{% endif %}">
2
+ <nav class="bg-base-100 flex gap-2 p-1 rounded-default text-sm dark:bg-white/[.04]{% if class %} {{ class }}{% endif %}">
3
3
  {% for item in items %}
4
- <a href="{{ item.link }}" class="flex flex-row font-medium items-center px-2.5 py-1 rounded {% if item.active %} bg-white shadow-sm text-font-important-light hover:bg-white dark:bg-base-900 dark:hover:bg-base-900 dark:text-font-important-dark{% else %}text-font-subtle-light dark:text-font-subtle-dark hover:bg-base-700/[.04] dark:hover:bg-white/[.04]{% endif %}">
4
+ <a href="{{ item.link }}" class="flex flex-row font-medium items-center px-2.5 py-1 rounded-default {% if item.active %} bg-white shadow-xs text-font-important-light hover:bg-white dark:bg-base-900 dark:hover:bg-base-900 dark:text-font-important-dark{% else %}text-font-subtle-light dark:text-font-subtle-dark hover:bg-base-700/[.04] dark:hover:bg-white/[.04]{% endif %}">
5
5
  {% if item.icon %}
6
6
  <span class="material-symbols-outlined{% if item.title %} mr-2{% endif %}">{{ item.icon }}</span>
7
7
  {% endif %}
@@ -1,7 +1,7 @@
1
1
  <div class="{% if class %}{{ class }}{% endif %}">
2
2
  <div class="overflow-hidden relative px-2 py-1 text-sm">
3
3
  {% if value %}
4
- <div class="absolute bottom-0 left-0 rounded top-0 bg-primary-100 z-10 dark:bg-primary-500/20" style="width: {{ value }}%"></div>
4
+ <div class="absolute bottom-0 left-0 rounded-default top-0 bg-primary-100 z-10 dark:bg-primary-500/20" style="width: {{ value }}%"></div>
5
5
  {% endif %}
6
6
 
7
7
  <div class="flex flex-row relative z-20">
@@ -7,7 +7,7 @@
7
7
  </h3>
8
8
  {% endif %}
9
9
 
10
- <div class="{% if card_included == 1 %}-m-6{% else %} bg-white flex flex-col grow lg:border lg:border-base-200 lg:overflow-hidden lg:rounded lg:shadow-sm{% endif %} lg:dark:border-base-800 dark:bg-base-900">
10
+ <div class="{% if card_included == 1 %}-m-6{% else %} bg-white flex flex-col grow lg:border lg:border-base-200 lg:overflow-hidden lg:rounded-default lg:shadow-xs{% endif %} lg:dark:border-base-800 dark:bg-base-900">
11
11
  <div {% if height %}style="max-height: {{ height }}px;" data-simplebar{% endif %}>
12
12
  <table class="block border-spacing-none border-separate w-full lg:table">
13
13
  {% if table.headers %}
@@ -25,7 +25,7 @@
25
25
  {% if table.rows %}
26
26
  <tbody class="block lg:table-row-group">
27
27
  {% for row in table.rows %}
28
- <tr class="{% if striped == 1 %}{% cycle '' 'bg-base-50 dark:bg-white/[.02]' %}{% endif %} block group {% if forloop.first %}first-row{% endif %} {% if not card_included == 1 %}border mb-3 rounded shadow-sm{% else %}border-b{% endif %} lg:table-row lg:border-none lg:mb-0 lg:shadow-none dark:border-base-800">
28
+ <tr class="{% if striped == 1 %}{% cycle '' 'bg-base-50 dark:bg-white/[.02]' %}{% endif %} block group {% if forloop.first %}first-row{% endif %} {% if not card_included == 1 %}border mb-3 rounded-default shadow-xs{% else %}border-b{% endif %} lg:table-row lg:border-none lg:mb-0 lg:shadow-none dark:border-base-800">
29
29
  {% for cell in row %}
30
30
  <td class="px-3 py-2 align-middle flex border-t border-base-200 font-normal gap-4 min-w-0 overflow-hidden text-left before:flex before:capitalize before:content-[attr(data-label)] before:items-center before:mr-auto first:border-t-0 lg:group-[.first-row]:border-t-0 lg:before:hidden lg:first:border-t lg:py-3 lg:table-cell dark:border-base-800 {% if card_included == 1 %}lg:first:pl-6 lg:last:pr-6{% endif %}" {% if table.headers %}data-label="{{ table.headers|index:forloop.counter0 }}"{% endif %}>
31
31
  {{ cell }}
@@ -39,7 +39,7 @@
39
39
  </div>
40
40
 
41
41
  {% if not table.rows %}
42
- <p class="bg-white border border-base-200 flex grow items-center justify-center py-2 rounded shadow-sm dark:bg-base-900 lg:border-0 lg:rounded-none lg:shadow-none">
42
+ <p class="bg-white border border-base-200 flex grow items-center justify-center py-2 rounded-default shadow-xs dark:bg-base-900 lg:border-0 lg:rounded-none lg:shadow-none">
43
43
  {% trans "No data" %}
44
44
  </p>
45
45
  {% endif %}
@@ -1,4 +1,4 @@
1
- <ul class="flex flex-row gap-0.5 overflow-hidden rounded">
1
+ <ul class="flex flex-row gap-0.5 overflow-hidden rounded-default">
2
2
  {% for item in data %}
3
3
  <li class="h-8 px-px size-full {% if item.color %}{{ item.color }}{% else %}bg-base-300 dark:bg-base-400{% endif %} hover:opacity-50" title="{{ item.tooltip }}"></li>
4
4
  {% endfor %}
@@ -1,34 +1,34 @@
1
1
  {% load i18n %}
2
2
 
3
3
  <div class="relative" x-data="{ openUserLinks: false }">
4
- <a class="block cursor-pointer h-4.5 hover:text-base-700 dark:hover:text-base-200" @click="openUserLinks = !openUserLinks">
4
+ <a class="block cursor-pointer h-[18px] hover:text-base-700 dark:hover:text-base-200" @click="openUserLinks = !openUserLinks">
5
5
  <span class="material-symbols-outlined">person</span>
6
6
  </a>
7
7
 
8
- <nav class="absolute bg-white border flex flex-col leading-none py-1 -right-2 rounded shadow-lg top-7 w-52 z-50 dark:bg-base-800 dark:border-base-700" x-cloak x-show="openUserLinks" x-transition x-on:click.outside="openUserLinks = false">
9
- <div class="border-b border-base-100 flex flex-row flex-shrink-0 items-start justify-start mb-1 pb-1 dark:border-base-700">
8
+ <nav class="absolute bg-white border border-base-200 flex flex-col leading-none py-1 -right-2 rounded-default shadow-lg top-7 w-52 z-50 dark:bg-base-800 dark:border-base-700" x-cloak x-show="openUserLinks" x-transition x-on:click.outside="openUserLinks = false">
9
+ <div class="border-b border-base-100 flex flex-row shrink-0 items-start justify-start mb-1 pb-1 dark:border-base-700">
10
10
  <span class="block mx-1 px-3 py-2 truncate">
11
11
  {% firstof user.get_short_name user.get_username %}
12
12
  </span>
13
13
  </div>
14
14
 
15
15
  {% if site_url %}
16
- <a href="{{ site_url }}" target="_blank" class="mx-1 px-3 py-2 rounded hover:bg-base-100 hover:text-base-700 dark:hover:bg-base-700 dark:hover:text-base-200">
16
+ <a href="{{ site_url }}" target="_blank" class="mx-1 px-3 py-2 rounded-default hover:bg-base-100 hover:text-base-700 dark:hover:bg-base-700 dark:hover:text-base-200">
17
17
  {% translate 'View site' %}
18
18
  </a>
19
19
  {% endif %}
20
20
 
21
21
  {% if user.has_usable_password %}
22
- <a href="{% url 'admin:password_change' %}" class="mx-1 px-3 py-2 rounded hover:bg-base-100 hover:text-base-700 dark:hover:bg-base-700 dark:hover:text-base-200">
22
+ <a href="{% url 'admin:password_change' %}" class="mx-1 px-3 py-2 rounded-default hover:bg-base-100 hover:text-base-700 dark:hover:bg-base-700 dark:hover:text-base-200">
23
23
  {% translate 'Change password' %}
24
24
  </a>
25
25
  {% endif %}
26
26
 
27
- <div class="border-t mt-1 pt-1 dark:border-base-700">
27
+ <div class="border-t border-base-200 mt-1 pt-1 dark:border-base-700">
28
28
  <form id="logout-form" method="post" action="{% url 'admin:logout' %}" class="mx-1">
29
29
  {% csrf_token %}
30
30
 
31
- <button type="submit" class="bg-none block px-3 py-2 text-left text-red-500 rounded w-full hover:bg-red-100 dark:hover:bg-red-500/20 dark:hover:text-red-500">
31
+ <button type="submit" class="bg-none block px-3 py-2 text-left text-red-500 rounded-default w-full hover:bg-red-100 dark:hover:bg-red-500/20 dark:hover:text-red-500">
32
32
  {% translate 'Log out' %}
33
33
  </button>
34
34
  </form>
@@ -4,16 +4,16 @@
4
4
  <td data-label="{% trans "More actions" %}" class="field-actions_holder align-middle flex border-t border-base-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-base-500 dark:before:text-base-300 lg:before:hidden lg:py-3 lg:table-cell dark:border-base-800 lg:w-px">
5
5
  {% with action_id=instance_pk|cut:"-" %}
6
6
  <div class="group/action leading-none relative" x-data="{ openActionsId{{ action_id }}: false }">
7
- <span x-ref="rowDropdown{{ action_id }}" class="cursor-pointer flex h-7 material-symbols-outlined md-18 -my-1 !leading-7 rounded text-center text-base-400 w-7 group-hover/action:bg-base-100 group-hover/action:text-base-700 dark:text-font-default-dark group-hover/action:dark:bg-base-800 group-hover/action:dark:text-white"
7
+ <span x-ref="rowDropdown{{ action_id }}" class="cursor-pointer flex h-7 material-symbols-outlined md-18 -my-1 leading-7! justify-center rounded-default text-center text-base-400 w-7 group-hover/action:bg-base-100 group-hover/action:text-base-700 dark:text-font-default-dark dark:group-hover/action:bg-base-800 dark:group-hover/action:text-white"
8
8
  x-on:click="openActionsId{{ action_id }} = !openActionsId{{ action_id }}"
9
9
  x-bind:class="{'bg-base-100 text-base-700 dark:bg-base-800 dark:text-white': openActionsId{{ action_id }} }">
10
10
  more_horiz
11
11
  </span>
12
12
 
13
13
  <template x-teleport="body">
14
- <nav x-anchor.bottom-end.offset.4="$refs.rowDropdown{{ action_id }}" class="bg-white border flex flex-col py-1 rounded shadow-lg text-sm top-7 z-50 w-48 dark:bg-base-800 dark:border-base-700" x-cloak x-show="openActionsId{{ action_id }}" x-transition x-on:click.outside="openActionsId{{ action_id }} = false">
14
+ <nav x-anchor.bottom-end.offset.4="$refs.rowDropdown{{ action_id }}" class="bg-white border border-base-200 flex flex-col py-1 rounded-default shadow-lg text-sm top-7 z-50 w-48 dark:bg-base-800 dark:border-base-700" x-cloak x-show="openActionsId{{ action_id }}" x-transition x-on:click.outside="openActionsId{{ action_id }} = false">
15
15
  {% for action in actions %}
16
- <a href="{% url action.raw_path instance_pk %}" class="flex items-center gap-2 mx-1 px-3 py-2 max-h-[30px] rounded hover:bg-base-100 dark:hover:bg-base-700 dark:hover:text-base-200"{% for attr_name, attr_value in action.attrs.items %} {{ attr_name }}="{{ attr_value }}"{% endfor %}>
16
+ <a href="{% url action.raw_path instance_pk %}" class="flex items-center gap-2 mx-1 px-3 py-2 max-h-[30px] rounded-default hover:bg-base-100 dark:hover:bg-base-700 dark:hover:text-base-200"{% for attr_name, attr_value in action.attrs.items %} {{ attr_name }}="{{ attr_value }}"{% endfor %}>
17
17
  {% if action.icon %}
18
18
  <span class="material-symbols-outlined">
19
19
  {{ action.icon }}
@@ -1,7 +1,7 @@
1
1
  {% load i18n unfold %}
2
2
 
3
3
  {% if sidebar_navigation %}
4
- <div class="h-0 flex-grow overflow-auto" data-simplebar>
4
+ <div class="h-0 grow overflow-auto" data-simplebar>
5
5
  {% for group in sidebar_navigation %}
6
6
  {% if group.items %}
7
7
  {% has_nav_item_active group.items as has_active %}
@@ -16,7 +16,7 @@
16
16
  {{ group.title }}
17
17
 
18
18
  {% if group.collapsible %}
19
- <span class="material-symbols-outlined ml-auto text-base-400 transition-all group-hover:text-primary-600 dark:group-hover:text-primary-500" x-bind:class="{'rotate-90': navigationOpen}">
19
+ <span class="material-symbols-outlined ml-auto transition-all group-hover:text-primary-600 dark:group-hover:text-primary-500" x-bind:class="{'rotate-90': navigationOpen}">
20
20
  chevron_right
21
21
  </span>
22
22
  {% endif %}
@@ -27,9 +27,9 @@
27
27
  {% for item in group.items %}
28
28
  {% if item.has_permission %}
29
29
  <li>
30
- <a href="{% if item.link_callback %}{{ item.link_callback }}{% else %}{{ item.link }}{% endif %}" class="flex h-9.5 items-center -mx-3 px-3 rounded hover:text-primary-600 dark:hover:text-primary-500 {% if item.active %}bg-base-100 font-semibold text-primary-600 dark:bg-white/[.06] dark:text-primary-500{% endif %}">
30
+ <a href="{% if item.link_callback %}{{ item.link_callback }}{% else %}{{ item.link }}{% endif %}" class="flex h-[38px] items-center -mx-3 px-3 rounded-default hover:text-primary-600 dark:hover:text-primary-500 {% if item.active %}bg-base-100 font-semibold text-primary-600 dark:bg-white/[.06] dark:text-primary-500{% endif %}">
31
31
  {% if item.icon %}
32
- <span class="material-symbols-outlined md-18 mr-3 w-4.5">
32
+ <span class="material-symbols-outlined md-18 mr-3 w-[18px]">
33
33
  {{ item.icon }}
34
34
  </span>
35
35
  {% endif %}
@@ -39,7 +39,7 @@
39
39
  </span>
40
40
 
41
41
  {% if item.badge %}
42
- <span class="bg-red-600 font-semibold ml-2 px-1 relative rounded-sm text-xs text-white">
42
+ <span class="bg-red-600 font-semibold ml-2 px-1 relative rounded-xs text-xs text-white">
43
43
  {% if item.badge_callback %}
44
44
  {{ item.badge_callback }}
45
45
  {% else %}
@@ -59,7 +59,7 @@
59
59
 
60
60
  {% if sidebar_show_all_applications %}
61
61
  <div class="mt-auto" x-data="{ openAllApplications: false }">
62
- <a class="cursor-pointer flex items-center px-6 py-3 text-sm dark:text-font-default-dark hover:text-primary-600 dark:hover:text-primary-500" x-on:click="openAllApplications = !openAllApplications">
62
+ <a class="cursor-pointer flex items-center h-[64px] px-6 py-3 text-sm dark:text-font-default-dark hover:text-primary-600 dark:hover:text-primary-500" x-on:click="openAllApplications = !openAllApplications">
63
63
  <span class="material-symbols-outlined md-18 mr-3">
64
64
  apps
65
65
  </span>
@@ -70,7 +70,7 @@
70
70
  </a>
71
71
 
72
72
  <div class="absolute bottom-0 left-0 right-0 top-0 z-50 md:left-72" x-cloak x-show="openAllApplications">
73
- <div class="absolute bg-base-900 bg-opacity-80 backdrop-blur-sm bottom-0 left-0 right-0 top-0 z-10 w-screen"></div>
73
+ <div class="absolute bg-base-900/80 backdrop-blur-xs bottom-0 left-0 right-0 top-0 z-10 w-screen"></div>
74
74
 
75
75
  <div class="bg-white flex flex-col h-full overflow-x-hidden overflow-y-auto py-5 px-8 relative text-sm w-80 z-20 dark:bg-base-900 dark:border-r dark:border-base-800" x-on:click.outside="openAllApplications = false" x-on:keydown.escape.window="openAllApplications = false">
76
76
  {% for app in app_list %}
@@ -3,8 +3,8 @@
3
3
  {% if app_list %}
4
4
  {% for app in app_list %}
5
5
  <div class="app-{{ app.app_label }} module{% if app.app_url in request.path %} current-app{% endif %}">
6
- <div class="bg-base-50 mb-6 rounded p-3 dark:bg-base-800">
7
- <table class="border border-base-400/10 border-spacing-none border-separate rounded overflow-hidden shadow-sm w-full dark:border-base-800">
6
+ <div class="bg-base-50 mb-6 rounded-default p-3 dark:bg-base-800">
7
+ <table class="border border-base-400/10 border-spacing-none border-separate rounded-default overflow-hidden shadow-xs w-full dark:border-base-800">
8
8
  <caption class="font-semibold mb-3 text-base-900 text-left dark:text-base-100">
9
9
  <a href="{{ app.app_url }}" class="section" title="{% blocktranslate with name=app.name %}Models in the {{ name }} application{% endblocktranslate %}">
10
10
  {{ app.name }}
@@ -3,7 +3,7 @@
3
3
  {% if actions_on_top %}
4
4
  {% if cl.search_fields or action_form or cl.has_filters %}
5
5
  <div class="bottom-0 left-0 right-0 hidden bg-primary-600 group-has-[input.action-select:checked]:flex fixed gap-3 lg:h-[71px] items-center p-3 z-50 lg:flex-row dark:bg-primary-500">
6
- <div id="changelist-actions-wrapper" class="flex-grow lg:px-4" {% if not is_popup %}x-bind:class="{'xl:ml-0': !sidebarDesktopOpen, 'xl:ml-72': sidebarDesktopOpen}"{% endif %}>
6
+ <div id="changelist-actions-wrapper" class="grow lg:px-4" {% if not is_popup %}x-bind:class="{'xl:ml-0': !sidebarDesktopOpen, 'xl:ml-72': sidebarDesktopOpen}"{% endif %}>
7
7
  {% if action_form %}
8
8
  {% admin_actions %}
9
9
  {% endif %}
@@ -1,10 +1,10 @@
1
1
  {% load i18n admin_list unfold %}
2
2
 
3
- <div id="changelist-filter" class="backdrop-blur-sm bg-opacity-80 bg-base-900 flex inset-0 z-50 fixed {% if not cl.model_admin.list_filter_sheet %}2xl:pb-24 2xl:bg-transparent 2xl:relative 2xl:!block 2xl:z-10{% endif %}" hx-preserve x-show="filterOpen">
4
- <div id="changelist-filter-close" class="flex-grow {% if not cl.model_admin.list_filter_sheet %}2xl:hidden{% endif %}" x-on:click="filterOpen = false"></div>
3
+ <div id="changelist-filter" class="backdrop-blur-xs bg-base-900/80 flex inset-0 z-50 fixed {% if not cl.model_admin.list_filter_sheet %}2xl:pb-24 2xl:bg-transparent 2xl:relative 2xl:block! 2xl:z-10{% endif %}" hx-preserve x-show="filterOpen">
4
+ <div id="changelist-filter-close" class="grow {% if not cl.model_admin.list_filter_sheet %}2xl:hidden{% endif %}" x-on:click="filterOpen = false"></div>
5
5
 
6
- <div class="bg-white flex m-4 overflow-hidden rounded shadow-sm w-80 dark:bg-base-800 {% if not cl.model_admin.list_filter_sheet %} 2xl:overflow-visible 2xl:border-0 2xl:shadow-none 2xl:sticky 2xl:top-4 2xl:dark:border-base-800 2xl:bg-transparent 2xl:dark:!bg-transparent 2xl:m-0{% endif %}">
7
- <div class="flex-grow h-full overflow-auto relative {% if not cl.model_admin.list_filter_sheet %} 2xl:overflow-visible{% endif %}">
6
+ <div class="bg-white flex m-4 overflow-hidden rounded-default shadow-xs w-80 dark:bg-base-800 {% if not cl.model_admin.list_filter_sheet %} 2xl:overflow-visible 2xl:border-0 2xl:shadow-none 2xl:sticky 2xl:top-4 2xl:dark:border-base-800 2xl:bg-transparent 2xl:dark:bg-transparent! 2xl:m-0{% endif %}">
7
+ <div class="grow h-full overflow-auto relative {% if not cl.model_admin.list_filter_sheet %} 2xl:overflow-visible{% endif %}">
8
8
  <{% if cl.model_admin.list_filter_submit %}form id="filter-form" method="get"{% else %}div{% endif %} class="flex flex-col h-full {% if not cl.model_admin.list_filter_sheet %}2xl:px-0{% endif %}">
9
9
  {% if cl.model_admin.list_filter_submit %}
10
10
  {% preserve_filters %}
@@ -1,9 +1,9 @@
1
1
  {% load i18n %}
2
2
 
3
3
  {% if cl.model_admin.list_filter_submit or cl.is_facets_optional or cl.has_active_filters %}
4
- <div class="bg-white border-t border-base-200 p-3 py-2.5 dark:bg-base-800 dark:border-base-700{% if not cl.model_admin.list_filter_sheet %} 2xl:!border-t-0 2xl:!bg-transparent 2xl:px-0{% endif %}">
4
+ <div class="bg-white border-t border-base-200 p-3 py-2.5 dark:bg-base-800 dark:border-base-700{% if not cl.model_admin.list_filter_sheet %} 2xl:border-t-0! 2xl:bg-transparent! 2xl:px-0{% endif %}">
5
5
  {% if cl.model_admin.list_filter_submit %}
6
- <button type="submit" class="bg-primary-600 block border border-transparent font-medium px-3 py-2 rounded text-white w-full">
6
+ <button type="submit" class="bg-primary-600 block border border-transparent font-medium px-3 py-2 rounded-default text-white w-full">
7
7
  {% trans "Apply Filters" %}
8
8
  </button>
9
9
  {% endif %}
@@ -12,18 +12,18 @@
12
12
  <span id="changelist-filter-extra-actions" class="flex flex-row gap-2 items-center mt-2">
13
13
  {% if cl.is_facets_optional %}
14
14
  {% if cl.add_facets %}
15
- <a href="{{ cl.remove_facet_link }}" class="hidelink border flex-grow font-medium px-3 py-2 rounded text-center transition-all w-full hover:bg-base-50 lg:w-auto dark:border-base-700 dark:hover:text-base-200">
15
+ <a href="{{ cl.remove_facet_link }}" class="hidelink border grow font-medium px-3 py-2 rounded-default text-center transition-all w-full hover:bg-base-50 lg:w-auto dark:border-base-700 dark:hover:text-base-200">
16
16
  {% trans "Hide counts" %}
17
17
  </a>
18
18
  {% else %}
19
- <a href="{{ cl.add_facet_link }}" class="viewlink border flex-grow font-medium px-3 py-2 rounded text-center transition-all w-full lg:w-auto dark:border-base-700 dark:hover:text-base-200">
19
+ <a href="{{ cl.add_facet_link }}" class="viewlink border border-base-200 grow font-medium px-3 py-2 rounded-default text-center transition-all w-full lg:w-auto dark:border-base-700 dark:hover:text-base-200">
20
20
  {% trans "Show counts" %}
21
21
  </a>
22
22
  {% endif %}
23
23
  {% endif %}
24
24
 
25
25
  {% if cl.has_active_filters %}
26
- <a href="{{ cl.clear_all_filters_qs }}" class="border flex-grow font-medium px-3 py-2 rounded text-center transition-all w-full lg:w-auto dark:border-base-700 dark:hover:text-base-200">
26
+ <a href="{{ cl.clear_all_filters_qs }}" class="border border-base-200 grow font-medium px-3 py-2 rounded-default text-center transition-all w-full lg:w-auto dark:border-base-700 dark:hover:text-base-200">
27
27
  {% trans "Clear all filters" %}
28
28
  </a>
29
29
  {% endif %}
@@ -1,11 +1,11 @@
1
1
  {% load i18n %}
2
2
 
3
3
  <div class="flex flex-col gap-3 items-center w-full lg:flex-row">
4
- <a href="#" class="border cancel-link flex items-center justify-center font-medium px-3 py-2 rounded w-full hover:bg-base-50 lg:block lg:mb-0 lg:w-auto dark:border-base-700 dark:text-font-default-dark dark:hover:text-base-200 dark:hover:bg-base-900">
4
+ <a href="#" class="border border-base-200 cancel-link flex items-center justify-center font-medium px-3 py-2 rounded-default w-full hover:bg-base-50 lg:block lg:mb-0 lg:w-auto dark:border-base-700 dark:text-font-default-dark dark:hover:text-base-200 dark:hover:bg-base-900">
5
5
  {% translate "No, take me back" %}
6
6
  </a>
7
7
 
8
- <button type="submit" class="bg-red-600 cursor-pointer flex items-center justify-center font-medium h-9.5 ml-0 px-3 py-2 rounded text-white w-full lg:ml-auto lg:w-auto dark:bg-red-500/20 dark:text-red-500">
8
+ <button type="submit" class="bg-red-600 cursor-pointer flex items-center justify-center font-medium h-[38px] ml-0 px-3 py-2 rounded-default text-white w-full lg:ml-auto lg:w-auto dark:bg-red-500/20 dark:text-red-500">
9
9
  {% translate "Yes, I’m sure" %}
10
10
  </button>
11
11
  </div>
@@ -14,13 +14,13 @@
14
14
  {% if total > 0 or value.content %}
15
15
  <template x-teleport="body">
16
16
  {% if value.content %}
17
- <div class="bg-white border overflow-y-auto overflow-x-hidden p-3 rounded shadow-lg text-sm top-7 z-50 w-48 dark:bg-base-800 dark:border-base-700" data-simplebar x-cloak x-transition x-anchor.bottom-start.offset.4="$refs.rowDropdown{{ dropdown_id }}" x-show="openDropdownId{{ dropdown_id }}"x-on:click.outside="openDropdownId{{ dropdown_id }} = false" {% if value.width or value.height %}style="{% if value.width %}width: {{ value.width }}px;{% endif %}{% if value.height %}height: {{ value.height }}px;{% endif %}"{% endif %}>
17
+ <div class="bg-white border border-base-200 overflow-y-auto overflow-x-hidden p-3 rounded-default shadow-lg text-sm top-7 z-50 w-48 dark:bg-base-800 dark:border-base-700" data-simplebar x-cloak x-transition x-anchor.bottom-start.offset.4="$refs.rowDropdown{{ dropdown_id }}" x-show="openDropdownId{{ dropdown_id }}"x-on:click.outside="openDropdownId{{ dropdown_id }} = false" {% if value.width or value.height %}style="{% if value.width %}width: {{ value.width }}px;{% endif %}{% if value.height %}height: {{ value.height }}px;{% endif %}"{% endif %}>
18
18
  {{ value.content }}
19
19
  </div>
20
20
  {% else %}
21
- <nav class="bg-white border overflow-y-auto overflow-x-hidden flex flex-col py-1 rounded shadow-lg text-sm top-7 z-50 w-48 dark:bg-base-800 dark:border-base-700" data-simplebar x-cloak x-transition x-anchor.bottom-start.offset.4="$refs.rowDropdown{{ dropdown_id }}" x-show="openDropdownId{{ dropdown_id }}"x-on:click.outside="openDropdownId{{ dropdown_id }} = false" {% if value.width or value.height %}style="{% if value.width %}width: {{ value.width }}px;{% endif %}{% if value.height %}height: {{ value.height }}px;{% endif %}"{% endif %}>
21
+ <nav class="bg-white border border-base-200 overflow-y-auto overflow-x-hidden flex flex-col py-1 rounded-default shadow-lg text-sm top-7 z-50 w-48 dark:bg-base-800 dark:border-base-700" data-simplebar x-cloak x-transition x-anchor.bottom-start.offset.4="$refs.rowDropdown{{ dropdown_id }}" x-show="openDropdownId{{ dropdown_id }}"x-on:click.outside="openDropdownId{{ dropdown_id }} = false" {% if value.width or value.height %}style="{% if value.width %}width: {{ value.width }}px;{% endif %}{% if value.height %}height: {{ value.height }}px;{% endif %}"{% endif %}>
22
22
  {% for item in value.items %}
23
- <{% if item.link %}a{% else %}span{% endif %} {% if item.link %}href="{{ item.link }}"{% endif %} class="flex items-center gap-2 mx-1 px-3 py-2 max-h-[30px] rounded hover:bg-base-100 dark:hover:bg-base-700 dark:hover:text-base-200 {% if value.striped %}{% cycle '' 'bg-base-50 dark:bg-white/[.04]' %}{% endif %}">
23
+ <{% if item.link %}a{% else %}span{% endif %} {% if item.link %}href="{{ item.link }}"{% endif %} class="flex items-center gap-2 mx-1 px-3 py-2 max-h-[30px] rounded-default hover:bg-base-100 dark:hover:bg-base-700 dark:hover:text-base-200 {% if value.striped %}{% cycle '' 'bg-base-50 dark:bg-white/[.04]' %}{% endif %}">
24
24
  <span class="grow truncate">{{ item.title }}</span>
25
25
  </{% if item.link %}a{% else %}span{% endif %}>
26
26
  {% endfor %}
@@ -11,7 +11,7 @@
11
11
  </span>
12
12
  {% endif %}
13
13
  {% elif value.2 %}
14
- <span class="bg-white border flex font-medium h-8 justify-center items-center rounded-full text-xs uppercase w-8 dark:bg-base-900 dark:border-base-700">
14
+ <span class="bg-white border border-base-200 flex font-medium h-8 justify-center items-center rounded-full text-xs uppercase w-8 dark:bg-base-900 dark:border-base-700">
15
15
  {{ value.2 }}
16
16
  </span>
17
17
  {% endif %}
@@ -1,7 +1,7 @@
1
1
  {% load i18n unfold %}
2
2
 
3
3
  {% if inline_admin_formset.formset.can_delete and inline_admin_formset.has_delete_permission %}
4
- <td class="border-t border-base-200 dark:border-base-800 lg:border-t-0 min-h-[62.5px] delete {% if inline_admin_form.original %}p-3 lg:py-3{% else %}py-3{% endif %} text-left text-red-600 flex items-center before:capitalize before:font-semibold before:content-[attr(data-label)] before:mr-auto before:text-font-important-light before:pr-4 lg:before:hidden font-normal px-3 text-sm lg:align-top lg:table-cell lg:w-px before:dark:text-font-important-dark" data-label="{% trans "Remove" %}">
4
+ <td class="lg:border-t border-base-200 dark:border-base-800 lg:border-t-0 min-h-[62.5px] delete {% if inline_admin_form.original %}p-3 lg:py-3{% else %}py-3{% endif %} text-left text-red-600 flex items-center before:capitalize before:font-semibold before:content-[attr(data-label)] before:mr-auto before:text-font-important-light before:pr-4 lg:before:hidden font-normal px-3 text-sm lg:align-top lg:table-cell lg:w-px dark:before:text-font-important-dark" data-label="{% trans "Remove" %}">
5
5
  {% if inline_admin_form.original %}
6
6
  <div class="flex flex-row lg:mt-3">
7
7
  <div class="ml-auto">
@@ -12,7 +12,7 @@
12
12
  {% if field.is_readonly %}
13
13
  {% include "unfold/helpers/field_readonly_value.html" with tabular=1 %}
14
14
  {% else %}
15
- <div class="flex flex-col">
15
+ <div class="flex flex-col grow">
16
16
  {{ field.field }}
17
17
 
18
18
  {% if field.field.errors|length > 0 %}
@@ -15,7 +15,7 @@
15
15
  {% for line in fieldset %}
16
16
  {% for field in line %}
17
17
  {% if field.is_readonly or not field.field.is_hidden %}
18
- <td{% if field.field.name %} class="min-h-[62.5px] field-{{ field.field.name }} group field-tabular {% if field.field.errors|length > 0 %} errors{% endif %}{% if inline_admin_form.original %} p-3 lg:py-3{% else %} py-3{% endif %}{% if field.is_checkbox %} align-middle{% else %} align-top{% endif %} flex items-center before:capitalize before:font-semibold before:content-[attr(data-label)] before:mr-auto before:font-text before:pr-4 lg:before:hidden font-normal px-3 lg:first:pl-3 lg:last:pr-3 lg:px-1.5 text-left lg:table-cell {% if field.field.is_hidden %} !hidden{% endif %} {% if inline_admin_formset.opts.ordering_field and field.field.name == inline_admin_formset.opts.ordering_field and inline_admin_formset.opts.hide_ordering_field %}!hidden{% endif %}"{% endif %} data-label="{{ field.field.label }}">
18
+ <td{% if field.field.name %} class="min-h-[62.5px] border-b max-md:border-b border-base-200 dark:border-base-800 field-{{ field.field.name }} group field-tabular {% if field.field.errors|length > 0 %} errors{% endif %}{% if inline_admin_form.original %} p-3 lg:py-3{% else %} py-3{% endif %}{% if field.is_checkbox %} align-middle{% else %} align-top{% endif %} flex items-center before:capitalize before:font-semibold before:content-[attr(data-label)] before:text-font-important-light dark:before:text-font-important-dark before:mr-auto before:font-text before:pr-4 lg:before:hidden font-normal px-3 lg:first:pl-3 lg:last:pr-3 lg:px-1.5 text-left lg:table-cell {% if field.field.is_hidden %} hidden!{% endif %} {% if inline_admin_formset.opts.ordering_field and field.field.name == inline_admin_formset.opts.ordering_field and inline_admin_formset.opts.hide_ordering_field %}hidden!{% endif %}"{% endif %} data-label="{{ field.field.label }}">
19
19
  {% include "unfold/helpers/edit_inline/tabular_field.html" %}
20
20
  </td>
21
21
  {% endif %}
@@ -1,7 +1,7 @@
1
1
  {% load admin_modify admin_urls i18n %}
2
2
 
3
3
  {% if inline_admin_form.original or inline_admin_form.show_url %}
4
- <tr class="border-b border-base-200 dark:border-base-800 bg-base-50 dark:bg-white/[.02] lg:bg-transparent lg:border-0 dark:lg:!bg-transparent">
4
+ <tr class="border-b border-base-200 dark:border-base-800 bg-base-50 dark:bg-white/[.02] lg:bg-transparent lg:border-0 dark:lg:bg-transparent!">
5
5
  <td class="original" colspan="{{ inline_admin_form|cell_count }}">
6
6
  {% if not inline_admin_formset.opts.hide_title %}
7
7
  {% if inline_admin_form.original or inline_admin_form.show_url %}
@@ -3,9 +3,9 @@
3
3
  {% url cl.opts|admin_urlname:"add" as add_url %}
4
4
  {% blocktranslate with name=cl.opts.verbose_name asvar title %}Add {{ name }}{% endblocktranslate %}
5
5
 
6
- <div class="bg-white border border-base-200 flex flex-col items-center px-8 py-24 rounded shadow-sm dark:bg-base-900 dark:border-base-800">
6
+ <div class="bg-white border border-base-200 flex flex-col items-center px-8 py-24 rounded-default shadow-xs dark:bg-base-900 dark:border-base-800">
7
7
  <div class="border border-base-300 border-dashed flex h-24 items-center justify-center mb-8 rounded-full w-24 dark:border-base-700">
8
- <span class="material-symbols-outlined text-base-500 !text-5xl dark:text-base-400">inbox</span>
8
+ <span class="material-symbols-outlined text-base-500 text-5xl! dark:text-base-400">inbox</span>
9
9
  </div>
10
10
 
11
11
  <h2 class="font-semibold mb-1 text-xl text-font-important-light tracking-tight dark:text-font-important-dark">
@@ -19,14 +19,14 @@
19
19
  {% if has_add_permission or cl.has_filters %}
20
20
  <div class="flex flex-col gap-4 justify-center w-full lg:flex-row">
21
21
  {% if has_add_permission %}
22
- <a href="{% add_preserved_filters add_url is_popup to_field %}" class="bg-primary-600 flex flex-row font-medium gap-2 items-center h-9.5 justify-center px-3 py-2 rounded text-white w-full lg:w-auto">
22
+ <a href="{% add_preserved_filters add_url is_popup to_field %}" class="bg-primary-600 flex flex-row font-medium gap-2 items-center h-[38px] justify-center px-3 py-2 rounded-default text-white w-full lg:w-auto">
23
23
  <span class="material-symbols-outlined text-white">add</span> {{ title }}
24
24
  </a>
25
25
  {% endif %}
26
26
 
27
27
 
28
28
  {% if cl.has_filters %}
29
- <a href="{{ cl.clear_all_filters_qs }}" class="border border-base-200 flex flex-row font-medium gap-2 group/button h-9.5 items-center justify-center px-3 py-2 rounded w-full hover:text-primary-600 lg:w-auto dark:border-base-700 dark:hover:bg-base-900 dark:hover:text-primary-500">
29
+ <a href="{{ cl.clear_all_filters_qs }}" class="border border-base-200 flex flex-row font-medium gap-2 group/button h-[38px] items-center justify-center px-3 py-2 rounded-default w-full hover:text-primary-600 lg:w-auto dark:border-base-700 dark:hover:bg-base-900 dark:hover:text-primary-500">
30
30
  <span class="material-symbols-outlined ml-1">filter_list_off</span> {% trans "Reset filters" %}
31
31
  </a>
32
32
  {% endif %}
@@ -1 +1 @@
1
- <div class="readonly break-words {% if field.is_json %}max-w-4xl{% else %}max-w-2xl{% endif %} py-2 text-sm *:rounded {% if not adminform.model_admin.compressed_fields and not field.is_image %}bg-base-50 border font-medium px-3 rounded shadow-sm dark:border-base-700 dark:bg-base-800{% endif %} {% if field.is_image %}inline-block [&_img]:rounded !py-0{% endif %}">{% if value %}{{ value }}{% elif field.contents %}{{ field.contents }}{% else %}-{% endif %}</div>
1
+ <div class="readonly break-words {% if field.is_json %}max-w-4xl{% else %}max-w-2xl{% endif %} py-2 text-sm *:rounded-default {% if not adminform.model_admin.compressed_fields and not field.is_image %}bg-base-50 border font-medium px-3 rounded-default shadow-xs dark:border-base-700 dark:bg-base-800{% endif %} {% if field.is_image %}inline-block [&_img]:rounded-default py-0!{% endif %}">{% if value %}{{ value }}{% elif field.contents %}{{ field.contents }}{% else %}-{% endif %}</div>
@@ -1,10 +1,10 @@
1
1
  {% if adminform.model_admin.compressed_fields %}
2
- <div class="flex flex-col gap-4 py-2 lg:flex-row">
2
+ <div class="flex flex-col gap-2 py-2 lg:flex-row">
3
3
  <div class="font-medium flex items-start -ml-2 min-w-32 w-32 lg:min-w-56 lg:w-56">
4
4
  {{ field.label_tag }}
5
5
  </div>
6
6
 
7
- <div class="flex-grow">
7
+ <div class="grow">
8
8
  <div class="flex flex-col lg:flex-row">
9
9
  {{ field.field }}
10
10
 
@@ -2,7 +2,7 @@
2
2
  {{ field.label_tag }}
3
3
  </div>
4
4
 
5
- <div class="flex-grow">
5
+ <div class="grow">
6
6
  {% if field.is_readonly %}
7
7
  {% include "unfold/helpers/field_readonly_value.html" %}
8
8
  {% else %}
@@ -3,7 +3,7 @@
3
3
  {% with tabs=adminform|tabs %}
4
4
  {% if tabs %}
5
5
  <div x-data="{openTab: null}" x-show="activeTab == 'general'">
6
- <ul class="bg-base-100 flex gap-10 mb-6 px-4 py-3 rounded text-font-default-light lg:-mx-4 dark:bg-white/[.02] dark:text-font-default-dark">
6
+ <ul class="bg-base-100 flex gap-10 mb-6 px-4 py-3 rounded-default text-font-default-light 2xl:-mx-4 dark:bg-white/[.02] dark:text-font-default-dark">
7
7
  {% for fieldset in tabs %}
8
8
  <li>
9
9
  <a class="cursor-pointer font-semibold hover:text-base-700 dark:hover:text-white"
@@ -1,6 +1,8 @@
1
+ {% load unfold %}
2
+
1
3
  {% if not is_popup %}
2
4
  {% block header %}
3
- <div class="border-b border-base-200 mb-6 px-4 lg:px-8 dark:border-base-800">
5
+ <div class="bg-white border-b border-base-200 mb-6 px-4 z-40 dark:bg-base-900 dark:border-base-800 {% element_classes 'header' %}">
4
6
  <div class="{% if not cl.model_admin.list_fullwidth %}container{% endif %} flex items-center h-16 mx-auto py-4">
5
7
  <div id="header-inner" class="flex items-center w-full">
6
8
  <div class="flex items-center w-full">
@@ -4,7 +4,7 @@
4
4
  {% if opts and adminform %}
5
5
  {% url opts|admin_urlname:'changelist' as changelist_url %}
6
6
 
7
- <a href="{% add_preserved_filters changelist_url %}" class="block h-4.5 mr-3" title="{% trans "Go back" %}">
7
+ <a href="{% add_preserved_filters changelist_url %}" class="block h-[18px] mr-3" title="{% trans "Go back" %}">
8
8
  <span class="material-symbols-outlined">
9
9
  arrow_back
10
10
  </span>
@@ -4,14 +4,14 @@
4
4
 
5
5
  {% if admin_log %}
6
6
  <div id="content-related" class="lg:w-96">
7
- <div id="recent-actions-module" class="module bg-base-50 rounded p-3 dark:bg-base-800">
7
+ <div id="recent-actions-module" class="module bg-base-50 rounded-default p-3 dark:bg-base-800">
8
8
  <h2 class="mb-3 font-semibold text-base-900 dark:text-base-100">
9
9
  {% translate 'Recent actions' %}
10
10
  </h2>
11
11
 
12
12
  <ul class="actionlist">
13
13
  {% for entry in admin_log %}
14
- <li class="{% if entry.is_addition %}addlink{% endif %}{% if entry.is_change %}changelink{% endif %}{% if entry.is_deletion %}deletelink{% endif %} border border-base-400/10 bg-white mb-3 p-3 rounded shadow-sm last:mb-0 dark:bg-base-900">
14
+ <li class="{% if entry.is_addition %}addlink{% endif %}{% if entry.is_change %}changelink{% endif %}{% if entry.is_deletion %}deletelink{% endif %} border border-base-400/10 bg-white mb-3 p-3 rounded-default shadow-xs last:mb-0 dark:bg-base-900">
15
15
  <div class="mb-3 overflow-hidden text-ellipsis whitespace-nowrap">
16
16
  {% if entry.is_deletion or not entry.get_admin_url %}
17
17
  {{ entry.object_repr }}
@@ -1,4 +1,4 @@
1
- <span class="inline-block font-semibold leading-normal px-2 py-1 rounded text-xxs uppercase whitespace-nowrap
1
+ <span class="inline-block font-semibold leading-normal px-2 py-1 rounded-default text-[11px] uppercase whitespace-nowrap
2
2
  {% if type == 'info' %}
3
3
  bg-blue-100 text-blue-700 dark:bg-blue-500/20 dark:text-blue-400
4
4
  {% elif type == 'danger' %}
@@ -6,11 +6,11 @@
6
6
 
7
7
 
8
8
  <div class="relative" x-data="{ openLanguageLinks: false }">
9
- <a class="block cursor-pointer h-4.5 hover:text-base-700 dark:hover:text-base-200" x-on:click="openLanguageLinks = !openLanguageLinks">
9
+ <a class="block cursor-pointer h-[18px] hover:text-base-700 dark:hover:text-base-200" x-on:click="openLanguageLinks = !openLanguageLinks">
10
10
  <span class="material-symbols-outlined">translate</span>
11
11
  </a>
12
12
 
13
- <div class="absolute bg-white border flex flex-col leading-none py-1 -right-2 rounded shadow-lg top-7 w-52 z-50 dark:bg-base-800 dark:border-base-700" x-cloak x-show="openLanguageLinks" x-transition x-on:click.outside="openLanguageLinks = false">
13
+ <div class="absolute bg-white border border-base-200 flex flex-col leading-none py-1 -right-2 rounded-default shadow-lg top-7 w-52 z-50 dark:bg-base-800 dark:border-base-700" x-cloak x-show="openLanguageLinks" x-transition x-on:click.outside="openLanguageLinks = false">
14
14
  {% for language in languages %}
15
15
  <form action="{% url 'set_language' %}" method="post" class="flex w-full">
16
16
  {% csrf_token %}
@@ -18,7 +18,7 @@
18
18
  <input name="next" type="hidden" value="{{ redirect_to }}">
19
19
  <input name="language" type="hidden" value="{{ language.code }}">
20
20
 
21
- <button type="submit" class="block flex-grow mx-1 px-3 py-2 rounded text-left hover:bg-base-100 hover:text-base-700 dark:hover:bg-base-700 dark:hover:text-base-200 {% if language.code == LANGUAGE_CODE %}text-primary-600 dark:text-primary-500 dark:hover:!text-primary-500 hover:!text-primary-600{% endif %}">
21
+ <button type="submit" class="block grow mx-1 px-3 py-2 rounded-default text-left hover:bg-base-100 hover:text-base-700 dark:hover:bg-base-700 dark:hover:text-base-200 {% if language.code == LANGUAGE_CODE %}text-primary-600 dark:text-primary-500 dark:hover:text-primary-500! hover:text-primary-600!{% endif %}">
22
22
  {{ language.name_local }} ({{ language.code }})
23
23
  </button>
24
24
  </form>
@@ -1,3 +1,3 @@
1
- <div class="mb-3 px-3 py-3 rounded text-sm last:mb-8 bg-base-100 text-base-700 dark:bg-base-500/20 dark:text-base-400">
1
+ <div class="mb-3 px-3 py-3 rounded-default text-sm last:mb-8 bg-base-100 text-base-700 dark:bg-base-500/20 dark:text-base-400">
2
2
  {{ message }}
3
3
  </div>
@@ -1,7 +1,7 @@
1
1
  {% load i18n %}
2
2
 
3
3
  {% if errors or error or message %}
4
- <div class="errornote mb-3 px-3 py-3 rounded group-[.inline-tabular]:mb-0 group-[.inline-tabular]:mt-3 group-[.inline-tabular]:mx-3 group-[.inline-stacked]:mb-3 group-[.inline-stacked]:mt-3 group-[.inline-stacked]:mx-3 bg-red-100 text-red-700 dark:bg-red-500/20 dark:text-red-400">
4
+ <div class="errornote mb-3 px-3 py-3 rounded-default group-[.inline-tabular]:mb-0 group-[.inline-tabular]:mt-3 group-[.inline-tabular]:mx-3 group-[.inline-stacked]:mb-3 group-[.inline-stacked]:mt-3 group-[.inline-stacked]:mx-3 bg-red-100 text-red-700 dark:bg-red-500/20 dark:text-red-400">
5
5
  {% if error %}
6
6
  {{ error }}
7
7
  {% elif message %}