django-unfold 0.31.0__tar.gz → 0.33.0__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (205) hide show
  1. {django_unfold-0.31.0 → django_unfold-0.33.0}/PKG-INFO +122 -50
  2. {django_unfold-0.31.0 → django_unfold-0.33.0}/README.md +121 -49
  3. {django_unfold-0.31.0 → django_unfold-0.33.0}/pyproject.toml +1 -1
  4. django_unfold-0.33.0/src/unfold/static/unfold/css/styles.css +1 -0
  5. django_unfold-0.33.0/src/unfold/templates/admin/edit_inline/stacked.html +86 -0
  6. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/edit_inline/tabular.html +31 -23
  7. django_unfold-0.33.0/src/unfold/templates/unfold/components/card.html +27 -0
  8. django_unfold-0.33.0/src/unfold/templates/unfold/components/icon.html +1 -0
  9. django_unfold-0.33.0/src/unfold/templates/unfold/components/separator.html +1 -0
  10. django_unfold-0.33.0/src/unfold/templates/unfold/components/table.html +31 -0
  11. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/label.html +1 -2
  12. django_unfold-0.31.0/src/unfold/static/unfold/css/styles.css +0 -1
  13. django_unfold-0.31.0/src/unfold/templates/admin/edit_inline/stacked.html +0 -78
  14. django_unfold-0.31.0/src/unfold/templates/unfold/components/card.html +0 -23
  15. django_unfold-0.31.0/src/unfold/templates/unfold/components/separator.html +0 -1
  16. {django_unfold-0.31.0 → django_unfold-0.33.0}/LICENSE.md +0 -0
  17. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/__init__.py +0 -0
  18. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/admin.py +0 -0
  19. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/apps.py +0 -0
  20. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/checks.py +0 -0
  21. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/__init__.py +0 -0
  22. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/__init__.py +0 -0
  23. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/admin.py +0 -0
  24. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/apps.py +0 -0
  25. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/forms.py +0 -0
  26. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/static/unfold/filters/css/nouislider.min.css +0 -0
  27. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/static/unfold/filters/js/DateTimeShortcuts.js +0 -0
  28. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/static/unfold/filters/js/admin-numeric-filter.js +0 -0
  29. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/static/unfold/filters/js/nouislider.min.js +0 -0
  30. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/static/unfold/filters/js/wNumb.min.js +0 -0
  31. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/templates/unfold/filters/filters_date_range.html +0 -0
  32. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/templates/unfold/filters/filters_datetime_range.html +0 -0
  33. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/templates/unfold/filters/filters_field.html +0 -0
  34. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/templates/unfold/filters/filters_numeric_range.html +0 -0
  35. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/templates/unfold/filters/filters_numeric_single.html +0 -0
  36. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/filters/templates/unfold/filters/filters_numeric_slider.html +0 -0
  37. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/forms/__init__.py +0 -0
  38. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/forms/apps.py +0 -0
  39. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/forms/static/unfold/forms/css/trix.css +0 -0
  40. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/forms/static/unfold/forms/js/trix.config.js +0 -0
  41. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/forms/static/unfold/forms/js/trix.js +0 -0
  42. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/forms/templates/unfold/forms/array.html +0 -0
  43. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/forms/templates/unfold/forms/helpers/toolbar.html +0 -0
  44. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/forms/templates/unfold/forms/wysiwyg.html +0 -0
  45. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/forms/widgets.py +0 -0
  46. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/guardian/__init__.py +0 -0
  47. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/guardian/apps.py +0 -0
  48. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/guardian/templates/admin/guardian/model/change_form.html +0 -0
  49. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/guardian/templates/admin/guardian/model/field.html +0 -0
  50. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/guardian/templates/admin/guardian/model/obj_perms_manage.html +0 -0
  51. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/guardian/templates/admin/guardian/model/obj_perms_manage_group.html +0 -0
  52. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/guardian/templates/admin/guardian/model/obj_perms_manage_user.html +0 -0
  53. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/guardian/templates/unfold/guardian/group_form.html +0 -0
  54. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/guardian/templates/unfold/guardian/user_form.html +0 -0
  55. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/__init__.py +0 -0
  56. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/apps.py +0 -0
  57. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/forms.py +0 -0
  58. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/base.html +0 -0
  59. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/change_form.html +0 -0
  60. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/change_list_export.html +0 -0
  61. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/change_list_export_item.html +0 -0
  62. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/change_list_import_export.html +0 -0
  63. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/change_list_import_item.html +0 -0
  64. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/export.html +0 -0
  65. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/import.html +0 -0
  66. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/import_confirm.html +0 -0
  67. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/import_errors.html +0 -0
  68. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/import_form.html +0 -0
  69. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/import_preview.html +0 -0
  70. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/import_validation.html +0 -0
  71. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/import_export/templates/admin/import_export/resource_fields_list.html +0 -0
  72. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/inlines/__init__.py +0 -0
  73. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/inlines/admin.py +0 -0
  74. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/inlines/apps.py +0 -0
  75. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/inlines/checks.py +0 -0
  76. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/inlines/forms.py +0 -0
  77. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/simple_history/__init__.py +0 -0
  78. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/simple_history/apps.py +0 -0
  79. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/simple_history/templates/simple_history/object_history.html +0 -0
  80. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/simple_history/templates/simple_history/object_history_form.html +0 -0
  81. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/simple_history/templates/simple_history/object_history_list.html +0 -0
  82. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/contrib/simple_history/templates/simple_history/submit_line.html +0 -0
  83. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/dataclasses.py +0 -0
  84. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/decorators.py +0 -0
  85. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/exceptions.py +0 -0
  86. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/fields.py +0 -0
  87. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/forms.py +0 -0
  88. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/settings.py +0 -0
  89. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/sites.py +0 -0
  90. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/css/simplebar.css +0 -0
  91. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/fonts/inter/Inter-Bold.woff2 +0 -0
  92. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/fonts/inter/Inter-Medium.woff2 +0 -0
  93. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/fonts/inter/Inter-Regular.woff2 +0 -0
  94. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/fonts/inter/Inter-SemiBold.woff2 +0 -0
  95. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/fonts/inter/styles.css +0 -0
  96. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/fonts/material-symbols/Material-Symbols-Outlined.woff2 +0 -0
  97. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/fonts/material-symbols/styles.css +0 -0
  98. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/js/alpine.anchor.js +0 -0
  99. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/js/alpine.js +0 -0
  100. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/js/alpine.persist.js +0 -0
  101. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/js/app.js +0 -0
  102. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/js/chart.js +0 -0
  103. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/js/htmx.js +0 -0
  104. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/static/unfold/js/simplebar.js +0 -0
  105. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/styles.css +0 -0
  106. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/actions.html +0 -0
  107. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/app_index.html +0 -0
  108. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/app_list.html +0 -0
  109. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/auth/user/add_form.html +0 -0
  110. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/auth/user/change_password.html +0 -0
  111. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/base.html +0 -0
  112. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/base_site.html +0 -0
  113. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/change_form.html +0 -0
  114. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/change_form_object_tools.html +0 -0
  115. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/change_list.html +0 -0
  116. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/change_list_object_tools.html +0 -0
  117. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/change_list_results.html +0 -0
  118. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/date_hierarchy.html +0 -0
  119. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/delete_confirmation.html +0 -0
  120. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/delete_selected_confirmation.html +0 -0
  121. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/filter.html +0 -0
  122. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/includes/fieldset.html +0 -0
  123. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/includes/object_delete_summary.html +0 -0
  124. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/index.html +0 -0
  125. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/login.html +0 -0
  126. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/nav_sidebar.html +0 -0
  127. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/object_history.html +0 -0
  128. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/pagination.html +0 -0
  129. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/search_form.html +0 -0
  130. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/admin/submit_line.html +0 -0
  131. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/auth/widgets/read_only_password_hash.html +0 -0
  132. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/registration/logged_out.html +0 -0
  133. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/registration/password_change_done.html +0 -0
  134. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/registration/password_change_form.html +0 -0
  135. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/change_list_filter.html +0 -0
  136. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/components/button.html +0 -0
  137. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/components/chart/bar.html +0 -0
  138. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/components/chart/line.html +0 -0
  139. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/components/container.html +0 -0
  140. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/components/flex.html +0 -0
  141. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/components/navigation.html +0 -0
  142. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/components/progress.html +0 -0
  143. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/components/text.html +0 -0
  144. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/components/title.html +0 -0
  145. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/account_links.html +0 -0
  146. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/actions_row.html +0 -0
  147. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/add_link.html +0 -0
  148. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/app_list.html +0 -0
  149. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/app_list_default.html +0 -0
  150. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/attrs.html +0 -0
  151. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/boolean.html +0 -0
  152. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/breadcrumb_item.html +0 -0
  153. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/display_header.html +0 -0
  154. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/display_label.html +0 -0
  155. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/field.html +0 -0
  156. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/field_readonly.html +0 -0
  157. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/field_readonly_value.html +0 -0
  158. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/fieldset_row.html +0 -0
  159. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/fieldsets_tabs.html +0 -0
  160. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/form_errors.html +0 -0
  161. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/form_label.html +0 -0
  162. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/header.html +0 -0
  163. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/help_text.html +0 -0
  164. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/history.html +0 -0
  165. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/messages/error.html +0 -0
  166. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/messages/errornote.html +0 -0
  167. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/messages/info.html +0 -0
  168. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/messages.html +0 -0
  169. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/navigation.html +0 -0
  170. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/pagination_current_item.html +0 -0
  171. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/pagination_ellipsis.html +0 -0
  172. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/search.html +0 -0
  173. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/search_results.html +0 -0
  174. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/site_icon.html +0 -0
  175. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/site_logo.html +0 -0
  176. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/submit.html +0 -0
  177. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/tab_action.html +0 -0
  178. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/tab_list.html +0 -0
  179. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/theme_switch.html +0 -0
  180. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/userlinks.html +0 -0
  181. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/helpers/welcomemsg.html +0 -0
  182. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/layouts/base.html +0 -0
  183. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/layouts/base_simple.html +0 -0
  184. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/layouts/skeleton.html +0 -0
  185. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/clearable_file_input.html +0 -0
  186. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/clearable_file_input_small.html +0 -0
  187. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/date.html +0 -0
  188. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/foreign_key_raw_id.html +0 -0
  189. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/radio.html +0 -0
  190. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/radio_option.html +0 -0
  191. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/range.html +0 -0
  192. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/related_widget_wrapper.html +0 -0
  193. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/split_datetime.html +0 -0
  194. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/split_datetime_vertical.html +0 -0
  195. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/split_money.html +0 -0
  196. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/textarea.html +0 -0
  197. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/textarea_expandable.html +0 -0
  198. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templates/unfold/widgets/time.html +0 -0
  199. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templatetags/__init__.py +0 -0
  200. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templatetags/unfold.py +0 -0
  201. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/templatetags/unfold_list.py +0 -0
  202. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/typing.py +0 -0
  203. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/utils.py +0 -0
  204. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/views.py +0 -0
  205. {django_unfold-0.31.0 → django_unfold-0.33.0}/src/unfold/widgets.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: django-unfold
3
- Version: 0.31.0
3
+ Version: 0.33.0
4
4
  Summary: Modern Django admin theme for seamless interface development
5
5
  Home-page: https://unfoldadmin.com
6
6
  License: MIT
@@ -85,9 +85,13 @@ Did you decide to start using Unfold but you don't have time to make the switch
85
85
  - [Numeric filters](#numeric-filters)
86
86
  - [Date/time filters](#datetime-filters)
87
87
  - [Custom admin pages](#custom-admin-pages)
88
- - [Nonrelated inlines](#nonrelated-inlines)
89
88
  - [Display decorator](#display-decorator)
90
89
  - [Change form tabs](#change-form-tabs)
90
+ - [Inlines](#inlines)
91
+ - [Custom title](#custom-title)
92
+ - [Hide title row](#hide-title-row)
93
+ - [Display as tabs](#display-as-tabs)
94
+ - [Nonrelated inlines](#nonrelated-inlines)
91
95
  - [Third party packages](#third-party-packages)
92
96
  - [django-celery-beat](#django-celery-beat)
93
97
  - [django-guardian](#django-guardian)
@@ -102,6 +106,7 @@ Did you decide to start using Unfold but you don't have time to make the switch
102
106
  - [Overriding template](#overriding-template)
103
107
  - [Custom variables](#custom-variables)
104
108
  - [Unfold components](#unfold-components)
109
+ - [Table component example](#table-component-example)
105
110
  - [Unfold development](#unfold-development)
106
111
  - [Pre-commit](#pre-commit)
107
112
  - [Poetry configuration](#poetry-configuration)
@@ -774,41 +779,6 @@ The template is straightforward, extend from `unfold/layouts/base.html` and the
774
779
  {% endblock %}
775
780
  ```
776
781
 
777
- ## Nonrelated inlines
778
-
779
- To display inlines which are not related (no foreign key pointing at the main model) to the model instance in changeform, you can use nonrelated inlines which are included in `unfold.contrib.inlines` module. Make sure this module is included in `INSTALLED_APPS` in settings.py.
780
-
781
- ```python
782
- from django.contrib.auth.models import User
783
- from unfold.admin import ModelAdmin
784
- from unfold.contrib.inlines.admin import NonrelatedTabularInline
785
- from .models import OtherModel
786
-
787
- class OtherNonrelatedInline(NonrelatedTabularInline): # NonrelatedStackedInline is available as well
788
- model = OtherModel
789
- fields = ["field1", "field2"] # Ignore property to display all fields
790
-
791
- def get_form_queryset(self, obj):
792
- """
793
- Gets all nonrelated objects needed for inlines. Method must be implemented.
794
- """
795
- return self.model.objects.all()
796
-
797
- def save_new_instance(self, parent, instance):
798
- """
799
- Extra save method which can for example update inline instances based on current
800
- main model object. Method must be implemented.
801
- """
802
- pass
803
-
804
-
805
- @admin.register(User)
806
- class UserAdmin(ModelAdmin):
807
- inlines = [OtherNonrelatedInline]
808
- ```
809
-
810
- **NOTE:** credit for this functionality goes to [django-nonrelated-inlines](https://github.com/bhomnick/django-nonrelated-inlines)
811
-
812
782
  ## Display decorator
813
783
 
814
784
  Unfold introduces it's own `unfold.decorators.display` decorator. By default it has exactly same behavior as native `django.contrib.admin.decorators.display` but it adds same customizations which helps to extends default logic.
@@ -935,6 +905,44 @@ class MyModelAdmin(ModelAdmin):
935
905
  )
936
906
  ```
937
907
 
908
+ ## Inlines
909
+
910
+ ### Custom title
911
+
912
+ By default, the title available for each inline row is coming from the `__str__` implementation of the model. Unfold allows you to override this title by implementing `get_inline_title` on the model which can return your own custom title just for the inline.
913
+
914
+ ```python
915
+ from unfold.admin import TabularInline
916
+
917
+
918
+ class User(models.Model):
919
+ # fiels, meta ...
920
+
921
+ def get_inline_title(self):
922
+ return "Custom title"
923
+
924
+
925
+ class MyInline(TabularInline):
926
+ model = User
927
+ ```
928
+
929
+ ### Hide title row
930
+
931
+ By applying `hide_title` attribute set to `True`, it is possible to hide the title row which is available for `StackedInline` or `TabularInline`. For `StackedInline` it is required to have disabled delete permission `can_delete` to be able to hide the title row, because the checkbox with the delete action is inside this title.
932
+
933
+ ```python
934
+ # admin.py
935
+
936
+ from unfold.admin import TabularInline
937
+
938
+
939
+ class MyInline(TabularInline):
940
+ model = User
941
+ hide_title = True
942
+ ```
943
+
944
+ ### Display as tabs
945
+
938
946
  Inlines can be grouped into tab navigation by specifying `tab` attribute in the inline class.
939
947
 
940
948
  ```python
@@ -948,6 +956,42 @@ class MyInline(TabularInline):
948
956
  tab = True
949
957
  ```
950
958
 
959
+ ### Nonrelated inlines
960
+
961
+ To display inlines which are not related (no foreign key pointing at the main model) to the model instance in changeform, you can use nonrelated inlines which are included in `unfold.contrib.inlines` module. Make sure this module is included in `INSTALLED_APPS` in settings.py.
962
+
963
+ ```python
964
+ from django.contrib.auth.models import User
965
+ from unfold.admin import ModelAdmin
966
+ from unfold.contrib.inlines.admin import NonrelatedTabularInline
967
+ from .models import OtherModel
968
+
969
+ class OtherNonrelatedInline(NonrelatedTabularInline): # NonrelatedStackedInline is available as well
970
+ model = OtherModel
971
+ fields = ["field1", "field2"] # Ignore property to display all fields
972
+
973
+ def get_form_queryset(self, obj):
974
+ """
975
+ Gets all nonrelated objects needed for inlines. Method must be implemented.
976
+ """
977
+ return self.model.objects.all()
978
+
979
+ def save_new_instance(self, parent, instance):
980
+ """
981
+ Extra save method which can for example update inline instances based on current
982
+ main model object. Method must be implemented.
983
+ """
984
+ pass
985
+
986
+
987
+ @admin.register(User)
988
+ class UserAdmin(ModelAdmin):
989
+ inlines = [OtherNonrelatedInline]
990
+ ```
991
+
992
+ **NOTE:** credit for this functionality goes to [django-nonrelated-inlines](https://github.com/bhomnick/django-nonrelated-inlines)
993
+
994
+
951
995
  ## Third party packages
952
996
 
953
997
  ### django-celery-beat
@@ -1278,19 +1322,47 @@ Below you can find a more complex example which is using multiple components and
1278
1322
 
1279
1323
  #### List of available components <!-- omit from toc -->
1280
1324
 
1281
- | Component | Description | Arguments |
1282
- | --------------------------------- | ------------------------------ | -------------------------------- |
1283
- | unfold/components/chart/bar.html | Bar chart implementation | class, data, height, width |
1284
- | unfold/components/chart/line.html | Line chart implementation | class, data, height, width |
1285
- | unfold/components/card.html | Card component | class, title, footer, label |
1286
- | unfold/components/container.html | Wrapper for settings max width | class |
1287
- | unfold/components/flex.html | Flex items | class, col |
1288
- | unfold/components/navigation.html | List of navigation links | class, items |
1289
- | unfold/components/progress.html | Percentual progress bar | class, value, title, description |
1290
- | unfold/components/separator.html | Separator, horizontal rule | class |
1291
- | unfold/components/text.html | Paragraph of text | class |
1292
- | unfold/components/title.html | Basic heading element | class |
1293
- | unfold/components/button.html | Basic button element | submit |
1325
+ | Component | Description | Arguments |
1326
+ | --------------------------------- | ------------------------------ | ------------------------------------ |
1327
+ | unfold/components/button.html | Basic button element | submit |
1328
+ | unfold/components/card.html | Card component | class, title, footer, label, icon |
1329
+ | unfold/components/chart/bar.html | Bar chart implementation | class, data, height, width |
1330
+ | unfold/components/chart/line.html | Line chart implementation | class, data, height, width |
1331
+ | unfold/components/container.html | Wrapper for settings max width | class |
1332
+ | unfold/components/flex.html | Flex items | class, col |
1333
+ | unfold/components/icon.html | Icon element | class |
1334
+ | unfold/components/navigation.html | List of navigation links | class, items |
1335
+ | unfold/components/progress.html | Percentual progress bar | class, value, title, description |
1336
+ | unfold/components/separator.html | Separator, horizontal rule | class |
1337
+ | unfold/components/table.html | Table | table, card_included, striped |
1338
+ | unfold/components/text.html | Paragraph of text | class |
1339
+ | unfold/components/title.html | Basic heading element | class |
1340
+
1341
+
1342
+ #### Table component example
1343
+
1344
+ ```python
1345
+ from typing import Dict
1346
+ from django.http import HttpRequest
1347
+
1348
+
1349
+ def dashboard_callback(request: HttpRequest) -> Dict:
1350
+ return {
1351
+ "table_data": {
1352
+ "headers": ["col 1", "col 2"],
1353
+ "rows": [
1354
+ ["a", "b"],
1355
+ ["c", "d"],
1356
+ ]
1357
+ }
1358
+ }
1359
+ ```
1360
+
1361
+ ```django-html
1362
+ {% component "unfold/components/card" with title="Card title" %}
1363
+ {% component "unfold/components/table.html" with table=table_data card_included=1 striped=1 %}{% encomponent %}
1364
+ {% endcomponent %}
1365
+ ```
1294
1366
 
1295
1367
  ## Unfold development
1296
1368
 
@@ -61,9 +61,13 @@ Did you decide to start using Unfold but you don't have time to make the switch
61
61
  - [Numeric filters](#numeric-filters)
62
62
  - [Date/time filters](#datetime-filters)
63
63
  - [Custom admin pages](#custom-admin-pages)
64
- - [Nonrelated inlines](#nonrelated-inlines)
65
64
  - [Display decorator](#display-decorator)
66
65
  - [Change form tabs](#change-form-tabs)
66
+ - [Inlines](#inlines)
67
+ - [Custom title](#custom-title)
68
+ - [Hide title row](#hide-title-row)
69
+ - [Display as tabs](#display-as-tabs)
70
+ - [Nonrelated inlines](#nonrelated-inlines)
67
71
  - [Third party packages](#third-party-packages)
68
72
  - [django-celery-beat](#django-celery-beat)
69
73
  - [django-guardian](#django-guardian)
@@ -78,6 +82,7 @@ Did you decide to start using Unfold but you don't have time to make the switch
78
82
  - [Overriding template](#overriding-template)
79
83
  - [Custom variables](#custom-variables)
80
84
  - [Unfold components](#unfold-components)
85
+ - [Table component example](#table-component-example)
81
86
  - [Unfold development](#unfold-development)
82
87
  - [Pre-commit](#pre-commit)
83
88
  - [Poetry configuration](#poetry-configuration)
@@ -750,41 +755,6 @@ The template is straightforward, extend from `unfold/layouts/base.html` and the
750
755
  {% endblock %}
751
756
  ```
752
757
 
753
- ## Nonrelated inlines
754
-
755
- To display inlines which are not related (no foreign key pointing at the main model) to the model instance in changeform, you can use nonrelated inlines which are included in `unfold.contrib.inlines` module. Make sure this module is included in `INSTALLED_APPS` in settings.py.
756
-
757
- ```python
758
- from django.contrib.auth.models import User
759
- from unfold.admin import ModelAdmin
760
- from unfold.contrib.inlines.admin import NonrelatedTabularInline
761
- from .models import OtherModel
762
-
763
- class OtherNonrelatedInline(NonrelatedTabularInline): # NonrelatedStackedInline is available as well
764
- model = OtherModel
765
- fields = ["field1", "field2"] # Ignore property to display all fields
766
-
767
- def get_form_queryset(self, obj):
768
- """
769
- Gets all nonrelated objects needed for inlines. Method must be implemented.
770
- """
771
- return self.model.objects.all()
772
-
773
- def save_new_instance(self, parent, instance):
774
- """
775
- Extra save method which can for example update inline instances based on current
776
- main model object. Method must be implemented.
777
- """
778
- pass
779
-
780
-
781
- @admin.register(User)
782
- class UserAdmin(ModelAdmin):
783
- inlines = [OtherNonrelatedInline]
784
- ```
785
-
786
- **NOTE:** credit for this functionality goes to [django-nonrelated-inlines](https://github.com/bhomnick/django-nonrelated-inlines)
787
-
788
758
  ## Display decorator
789
759
 
790
760
  Unfold introduces it's own `unfold.decorators.display` decorator. By default it has exactly same behavior as native `django.contrib.admin.decorators.display` but it adds same customizations which helps to extends default logic.
@@ -911,6 +881,44 @@ class MyModelAdmin(ModelAdmin):
911
881
  )
912
882
  ```
913
883
 
884
+ ## Inlines
885
+
886
+ ### Custom title
887
+
888
+ By default, the title available for each inline row is coming from the `__str__` implementation of the model. Unfold allows you to override this title by implementing `get_inline_title` on the model which can return your own custom title just for the inline.
889
+
890
+ ```python
891
+ from unfold.admin import TabularInline
892
+
893
+
894
+ class User(models.Model):
895
+ # fiels, meta ...
896
+
897
+ def get_inline_title(self):
898
+ return "Custom title"
899
+
900
+
901
+ class MyInline(TabularInline):
902
+ model = User
903
+ ```
904
+
905
+ ### Hide title row
906
+
907
+ By applying `hide_title` attribute set to `True`, it is possible to hide the title row which is available for `StackedInline` or `TabularInline`. For `StackedInline` it is required to have disabled delete permission `can_delete` to be able to hide the title row, because the checkbox with the delete action is inside this title.
908
+
909
+ ```python
910
+ # admin.py
911
+
912
+ from unfold.admin import TabularInline
913
+
914
+
915
+ class MyInline(TabularInline):
916
+ model = User
917
+ hide_title = True
918
+ ```
919
+
920
+ ### Display as tabs
921
+
914
922
  Inlines can be grouped into tab navigation by specifying `tab` attribute in the inline class.
915
923
 
916
924
  ```python
@@ -924,6 +932,42 @@ class MyInline(TabularInline):
924
932
  tab = True
925
933
  ```
926
934
 
935
+ ### Nonrelated inlines
936
+
937
+ To display inlines which are not related (no foreign key pointing at the main model) to the model instance in changeform, you can use nonrelated inlines which are included in `unfold.contrib.inlines` module. Make sure this module is included in `INSTALLED_APPS` in settings.py.
938
+
939
+ ```python
940
+ from django.contrib.auth.models import User
941
+ from unfold.admin import ModelAdmin
942
+ from unfold.contrib.inlines.admin import NonrelatedTabularInline
943
+ from .models import OtherModel
944
+
945
+ class OtherNonrelatedInline(NonrelatedTabularInline): # NonrelatedStackedInline is available as well
946
+ model = OtherModel
947
+ fields = ["field1", "field2"] # Ignore property to display all fields
948
+
949
+ def get_form_queryset(self, obj):
950
+ """
951
+ Gets all nonrelated objects needed for inlines. Method must be implemented.
952
+ """
953
+ return self.model.objects.all()
954
+
955
+ def save_new_instance(self, parent, instance):
956
+ """
957
+ Extra save method which can for example update inline instances based on current
958
+ main model object. Method must be implemented.
959
+ """
960
+ pass
961
+
962
+
963
+ @admin.register(User)
964
+ class UserAdmin(ModelAdmin):
965
+ inlines = [OtherNonrelatedInline]
966
+ ```
967
+
968
+ **NOTE:** credit for this functionality goes to [django-nonrelated-inlines](https://github.com/bhomnick/django-nonrelated-inlines)
969
+
970
+
927
971
  ## Third party packages
928
972
 
929
973
  ### django-celery-beat
@@ -1254,19 +1298,47 @@ Below you can find a more complex example which is using multiple components and
1254
1298
 
1255
1299
  #### List of available components <!-- omit from toc -->
1256
1300
 
1257
- | Component | Description | Arguments |
1258
- | --------------------------------- | ------------------------------ | -------------------------------- |
1259
- | unfold/components/chart/bar.html | Bar chart implementation | class, data, height, width |
1260
- | unfold/components/chart/line.html | Line chart implementation | class, data, height, width |
1261
- | unfold/components/card.html | Card component | class, title, footer, label |
1262
- | unfold/components/container.html | Wrapper for settings max width | class |
1263
- | unfold/components/flex.html | Flex items | class, col |
1264
- | unfold/components/navigation.html | List of navigation links | class, items |
1265
- | unfold/components/progress.html | Percentual progress bar | class, value, title, description |
1266
- | unfold/components/separator.html | Separator, horizontal rule | class |
1267
- | unfold/components/text.html | Paragraph of text | class |
1268
- | unfold/components/title.html | Basic heading element | class |
1269
- | unfold/components/button.html | Basic button element | submit |
1301
+ | Component | Description | Arguments |
1302
+ | --------------------------------- | ------------------------------ | ------------------------------------ |
1303
+ | unfold/components/button.html | Basic button element | submit |
1304
+ | unfold/components/card.html | Card component | class, title, footer, label, icon |
1305
+ | unfold/components/chart/bar.html | Bar chart implementation | class, data, height, width |
1306
+ | unfold/components/chart/line.html | Line chart implementation | class, data, height, width |
1307
+ | unfold/components/container.html | Wrapper for settings max width | class |
1308
+ | unfold/components/flex.html | Flex items | class, col |
1309
+ | unfold/components/icon.html | Icon element | class |
1310
+ | unfold/components/navigation.html | List of navigation links | class, items |
1311
+ | unfold/components/progress.html | Percentual progress bar | class, value, title, description |
1312
+ | unfold/components/separator.html | Separator, horizontal rule | class |
1313
+ | unfold/components/table.html | Table | table, card_included, striped |
1314
+ | unfold/components/text.html | Paragraph of text | class |
1315
+ | unfold/components/title.html | Basic heading element | class |
1316
+
1317
+
1318
+ #### Table component example
1319
+
1320
+ ```python
1321
+ from typing import Dict
1322
+ from django.http import HttpRequest
1323
+
1324
+
1325
+ def dashboard_callback(request: HttpRequest) -> Dict:
1326
+ return {
1327
+ "table_data": {
1328
+ "headers": ["col 1", "col 2"],
1329
+ "rows": [
1330
+ ["a", "b"],
1331
+ ["c", "d"],
1332
+ ]
1333
+ }
1334
+ }
1335
+ ```
1336
+
1337
+ ```django-html
1338
+ {% component "unfold/components/card" with title="Card title" %}
1339
+ {% component "unfold/components/table.html" with table=table_data card_included=1 striped=1 %}{% encomponent %}
1340
+ {% endcomponent %}
1341
+ ```
1270
1342
 
1271
1343
  ## Unfold development
1272
1344
 
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "django-unfold"
3
- version = "0.31.0"
3
+ version = "0.33.0"
4
4
  description = "Modern Django admin theme for seamless interface development"
5
5
  license = "MIT"
6
6
  readme = "README.md"