django-smartbase-admin 2.0.0__tar.gz → 2.0.2__tar.gz

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 (968) hide show
  1. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/PKG-INFO +1 -1
  2. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/pyproject.toml +1 -1
  3. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/tests/test_action_processing.py +19 -2
  4. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/dynamic_forms.py +22 -1
  5. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/dashboard_blueprint.html +21 -3
  6. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/mcp.py +14 -11
  7. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/middleware.py +11 -11
  8. django_smartbase_admin-2.0.2/src/django_smartbase_admin/mcp/oauth/validators.py +34 -0
  9. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/oauth/views.py +13 -0
  10. django_smartbase_admin-2.0.2/src/django_smartbase_admin/mcp/tests/test_cors_middleware.py +56 -0
  11. django_smartbase_admin-2.0.2/src/django_smartbase_admin/mcp/tests/test_oauth_redirect_loopback.py +79 -0
  12. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/plugins/nested.py +164 -104
  13. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/plugins/tests/test_nested.py +98 -19
  14. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/main.js +1 -1
  15. django_smartbase_admin-2.0.2/src/django_smartbase_admin/static/sb_admin/dist/main_style.css +1 -0
  16. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/_components.css +4 -0
  17. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/main.js +6 -10
  18. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/inline_fieldset.html +1 -1
  19. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/tests/test_dashboard.py +13 -0
  20. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/tests/test_dynamic_forms.py +50 -0
  21. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/views/dashboard_view.py +3 -0
  22. django_smartbase_admin-2.0.0/src/django_smartbase_admin/static/sb_admin/dist/main_style.css +0 -1
  23. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/LICENSE.md +0 -0
  24. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/README.md +0 -0
  25. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/__init__.py +0 -0
  26. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/actions/__init__.py +0 -0
  27. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/actions/admin_action_list.py +0 -0
  28. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/actions/advanced_filters.py +0 -0
  29. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/admin/__init__.py +0 -0
  30. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/admin/admin_base.py +0 -0
  31. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/admin/site.py +0 -0
  32. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/admin/widgets.py +0 -0
  33. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/apps.py +0 -0
  34. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/__init__.py +0 -0
  35. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/apps.py +0 -0
  36. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/manager.py +0 -0
  37. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/mcp.py +0 -0
  38. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/migrations/0001_initial.py +0 -0
  39. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/migrations/0002_adminauditlog_source.py +0 -0
  40. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/migrations/__init__.py +0 -0
  41. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/models.py +0 -0
  42. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/sb_admin.py +0 -0
  43. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/tests/__init__.py +0 -0
  44. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/tests/test_audit_integration.py +0 -0
  45. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/tests/test_audit_permissions.py +0 -0
  46. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/tests/test_delegate_to_action.py +0 -0
  47. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/tests/test_diff.py +0 -0
  48. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/tests/test_modal_media.py +0 -0
  49. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/utils/__init__.py +0 -0
  50. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/utils/diff.py +0 -0
  51. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/utils/serialization.py +0 -0
  52. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/audit/views.py +0 -0
  53. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/checks.py +0 -0
  54. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/compilemessages.py +0 -0
  55. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/__init__.py +0 -0
  56. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/actions.py +0 -0
  57. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/admin_base_view.py +0 -0
  58. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/admin_entrypoint_view.py +0 -0
  59. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/admin_view.py +0 -0
  60. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/configuration.py +0 -0
  61. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/const.py +0 -0
  62. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/dashboard.py +0 -0
  63. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/fake_inline.py +0 -0
  64. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/field.py +0 -0
  65. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/field_formatter.py +0 -0
  66. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/filter_widgets.py +0 -0
  67. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/global_filter_form.py +0 -0
  68. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/inline_pagination.py +0 -0
  69. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/menu_item.py +0 -0
  70. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/modal_view.py +0 -0
  71. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/engine/request.py +0 -0
  72. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/integration/__init__.py +0 -0
  73. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/integration/django_cms.py +0 -0
  74. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/cs/LC_MESSAGES/django.mo +0 -0
  75. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/cs/LC_MESSAGES/django.po +0 -0
  76. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/de/LC_MESSAGES/django.mo +0 -0
  77. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/de/LC_MESSAGES/django.po +0 -0
  78. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/en/LC_MESSAGES/django.mo +0 -0
  79. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/en/LC_MESSAGES/django.po +0 -0
  80. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/fr/LC_MESSAGES/django.mo +0 -0
  81. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/fr/LC_MESSAGES/django.po +0 -0
  82. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/hr/LC_MESSAGES/django.mo +0 -0
  83. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/hr/LC_MESSAGES/django.po +0 -0
  84. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/hu/LC_MESSAGES/django.mo +0 -0
  85. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/hu/LC_MESSAGES/django.po +0 -0
  86. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/it/LC_MESSAGES/django.mo +0 -0
  87. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/it/LC_MESSAGES/django.po +0 -0
  88. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/pl/LC_MESSAGES/django.mo +0 -0
  89. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/pl/LC_MESSAGES/django.po +0 -0
  90. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/ro/LC_MESSAGES/django.mo +0 -0
  91. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/ro/LC_MESSAGES/django.po +0 -0
  92. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/sk/LC_MESSAGES/django.mo +0 -0
  93. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/sk/LC_MESSAGES/django.po +0 -0
  94. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/sl/LC_MESSAGES/django.mo +0 -0
  95. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/locale/sl/LC_MESSAGES/django.po +0 -0
  96. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/makemessages.py +0 -0
  97. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/__init__.py +0 -0
  98. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/actions.py +0 -0
  99. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/apps.py +0 -0
  100. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/bridge.py +0 -0
  101. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/field_schema.py +0 -0
  102. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/form_encoding.py +0 -0
  103. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/html_sanitize.py +0 -0
  104. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/inlines.py +0 -0
  105. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/instructions.py +0 -0
  106. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/migrations/__init__.py +0 -0
  107. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/oauth/__init__.py +0 -0
  108. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/oauth/urls.py +0 -0
  109. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/resolvers.py +0 -0
  110. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/schema.py +0 -0
  111. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/service.py +0 -0
  112. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/__init__.py +0 -0
  113. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/_common.py +0 -0
  114. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_actions.py +0 -0
  115. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_aggregate.py +0 -0
  116. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_create_object.py +0 -0
  117. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_fake_inlines.py +0 -0
  118. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_fetch_action_form.py +0 -0
  119. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_fetch_add_form.py +0 -0
  120. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_fetch_detail.py +0 -0
  121. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_fetch_filter_preset.py +0 -0
  122. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_filter_validation.py +0 -0
  123. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_inline_data.py +0 -0
  124. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_invoke_integration.py +0 -0
  125. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_list_admins.py +0 -0
  126. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_permissions.py +0 -0
  127. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_smoke.py +0 -0
  128. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_update_detail.py +0 -0
  129. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/tests/test_widget_encoding.py +0 -0
  130. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/mcp/urls.py +0 -0
  131. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/migrations/0001_initial.py +0 -0
  132. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/migrations/0002_auto_20230402_2316.py +0 -0
  133. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/migrations/0003_auto_20230402_2328.py +0 -0
  134. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/migrations/0004_alter_sbadminlistviewconfiguration_action_and_more.py +0 -0
  135. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/migrations/0005_sbadminuserconfiguration.py +0 -0
  136. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/migrations/0006_alter_sbadminuserconfiguration_color_scheme.py +0 -0
  137. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/migrations/__init__.py +0 -0
  138. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/models.py +0 -0
  139. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/monkeypatch/admin_readonly_field_monkeypatch.py +0 -0
  140. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/monkeypatch/fake_inline_monkeypatch.py +0 -0
  141. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/plugins/__init__.py +0 -0
  142. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/plugins/base.py +0 -0
  143. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/plugins/tests/__init__.py +0 -0
  144. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/querysets.py +0 -0
  145. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/services/__init__.py +0 -0
  146. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/services/configuration.py +0 -0
  147. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/services/data.py +0 -0
  148. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/services/thread_local.py +0 -0
  149. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/services/translations.py +0 -0
  150. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/services/url_params_codec.py +0 -0
  151. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/services/views.py +0 -0
  152. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/services/xlsx_export.py +0 -0
  153. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/build/postcss.config.js +0 -0
  154. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/build/tailwind.config.js +0 -0
  155. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/build/tailwind_config_partials/colors.js +0 -0
  156. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/build/tailwind_config_partials/screens.js +0 -0
  157. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/build/tailwind_config_partials/spacing.js +0 -0
  158. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/build/tailwind_config_partials/typography.js +0 -0
  159. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/build/webpack.analyze.js +0 -0
  160. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/build/webpack.common.js +0 -0
  161. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/build/webpack.dev.js +0 -0
  162. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/build/webpack.prod.js +0 -0
  163. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/css/ckeditor/ckeditor_content_dark.css +0 -0
  164. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/css/codemirror/codemirror.min.css +0 -0
  165. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/css/codemirror/dracula.min.css +0 -0
  166. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/css/coloris/coloris.min.css +0 -0
  167. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/css/querybuilder/query-builder.default.min.css +0 -0
  168. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/calendar.js +0 -0
  169. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/calendar.js.LICENSE.txt +0 -0
  170. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/calendar_style.css +0 -0
  171. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/calendar_style.js +0 -0
  172. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/chart.js +0 -0
  173. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/chart.js.LICENSE.txt +0 -0
  174. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/confirmation_modal.js +0 -0
  175. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/main.js.LICENSE.txt +0 -0
  176. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/main_style.js +0 -0
  177. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/modal_view.js +0 -0
  178. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/sbadmin_formset.js +0 -0
  179. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/sbadmin_formset.js.LICENSE.txt +0 -0
  180. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/table.js +0 -0
  181. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/table.js.LICENSE.txt +0 -0
  182. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/translations.js +0 -0
  183. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/tree_widget.js +0 -0
  184. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/tree_widget.js.LICENSE.txt +0 -0
  185. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/tree_widget_style.css +0 -0
  186. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/dist/tree_widget_style.js +0 -0
  187. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/fancytree/jquery.fancytree-all-deps.min.js +0 -0
  188. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/android-chrome-192x192.png +0 -0
  189. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/android-chrome-512x512.png +0 -0
  190. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/apple-touch-icon.png +0 -0
  191. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/browserconfig.xml +0 -0
  192. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/favicon-16x16.png +0 -0
  193. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/favicon-32x32.png +0 -0
  194. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/favicon.ico +0 -0
  195. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/mstile-144x144.png +0 -0
  196. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/mstile-150x150.png +0 -0
  197. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/mstile-310x150.png +0 -0
  198. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/mstile-310x310.png +0 -0
  199. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/mstile-70x70.png +0 -0
  200. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/safari-pinned-tab.svg +0 -0
  201. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/favicon/site.webmanifest +0 -0
  202. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/fonts/Inter-Ext.woff2 +0 -0
  203. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/fonts/Inter.woff2 +0 -0
  204. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/blank.gif +0 -0
  205. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/file_types/file-csv.svg +0 -0
  206. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/file_types/file-doc.svg +0 -0
  207. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/file_types/file-docx.svg +0 -0
  208. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/file_types/file-other.svg +0 -0
  209. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/file_types/file-pdf.svg +0 -0
  210. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/file_types/file-ppt.svg +0 -0
  211. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/file_types/file-xls.svg +0 -0
  212. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/file_types/file-xlsx.svg +0 -0
  213. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/file_types/file-zip.svg +0 -0
  214. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ad.png +0 -0
  215. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ae.png +0 -0
  216. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/af.png +0 -0
  217. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ag.png +0 -0
  218. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ai.png +0 -0
  219. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/al.png +0 -0
  220. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/am.png +0 -0
  221. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/an.png +0 -0
  222. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ao.png +0 -0
  223. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ar.png +0 -0
  224. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/at.png +0 -0
  225. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/au.png +0 -0
  226. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/aw.png +0 -0
  227. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ax.png +0 -0
  228. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/az.png +0 -0
  229. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ba.png +0 -0
  230. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bb.png +0 -0
  231. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bd.png +0 -0
  232. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/be.png +0 -0
  233. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bf.png +0 -0
  234. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bg.png +0 -0
  235. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bh.png +0 -0
  236. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bi.png +0 -0
  237. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bj.png +0 -0
  238. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bm.png +0 -0
  239. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bn.png +0 -0
  240. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bo.png +0 -0
  241. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/br.png +0 -0
  242. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bs.png +0 -0
  243. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bt.png +0 -0
  244. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bw.png +0 -0
  245. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/by.png +0 -0
  246. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/bz.png +0 -0
  247. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ca.png +0 -0
  248. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/caf.png +0 -0
  249. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cas.png +0 -0
  250. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cd.png +0 -0
  251. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ceu.png +0 -0
  252. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cf.png +0 -0
  253. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cg.png +0 -0
  254. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ch.png +0 -0
  255. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ci.png +0 -0
  256. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cl.png +0 -0
  257. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cm.png +0 -0
  258. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cn.png +0 -0
  259. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cna.png +0 -0
  260. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/co.png +0 -0
  261. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/coc.png +0 -0
  262. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cr.png +0 -0
  263. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cs.png +0 -0
  264. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/csa.png +0 -0
  265. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cu.png +0 -0
  266. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cv.png +0 -0
  267. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cy.png +0 -0
  268. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/cz.png +0 -0
  269. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/de-at.png +0 -0
  270. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/de-ch.png +0 -0
  271. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/de.png +0 -0
  272. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/dj.png +0 -0
  273. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/dk.png +0 -0
  274. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/dm.png +0 -0
  275. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/do.png +0 -0
  276. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/dz.png +0 -0
  277. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ec.png +0 -0
  278. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ee.png +0 -0
  279. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/eg.png +0 -0
  280. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/el.png +0 -0
  281. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/en.png +0 -0
  282. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/er.png +0 -0
  283. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/es.png +0 -0
  284. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/et.png +0 -0
  285. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/eu.png +0 -0
  286. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/fi.png +0 -0
  287. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/fj.png +0 -0
  288. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/fk.png +0 -0
  289. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/fm.png +0 -0
  290. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/fr.png +0 -0
  291. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ga.png +0 -0
  292. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/gb.png +0 -0
  293. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/gd.png +0 -0
  294. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ge.png +0 -0
  295. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/gg.png +0 -0
  296. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/gh.png +0 -0
  297. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/gi.png +0 -0
  298. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/gm.png +0 -0
  299. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/gn.png +0 -0
  300. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/gq.png +0 -0
  301. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/gr.png +0 -0
  302. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/gt.png +0 -0
  303. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/gw.png +0 -0
  304. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/gy.png +0 -0
  305. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/hk.png +0 -0
  306. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/hn.png +0 -0
  307. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/hr.png +0 -0
  308. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ht.png +0 -0
  309. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/hu.png +0 -0
  310. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/id.png +0 -0
  311. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ie.png +0 -0
  312. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/il.png +0 -0
  313. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/im.png +0 -0
  314. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/in.png +0 -0
  315. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/iq.png +0 -0
  316. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ir.png +0 -0
  317. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/is.png +0 -0
  318. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/it.png +0 -0
  319. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/je.png +0 -0
  320. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/jm.png +0 -0
  321. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/jo.png +0 -0
  322. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/jp.png +0 -0
  323. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ke.png +0 -0
  324. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/kg.png +0 -0
  325. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/kh.png +0 -0
  326. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/km.png +0 -0
  327. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/kn.png +0 -0
  328. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/kp.png +0 -0
  329. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/kr.png +0 -0
  330. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/kw.png +0 -0
  331. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ky.png +0 -0
  332. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/kz.png +0 -0
  333. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/la.png +0 -0
  334. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/lb.png +0 -0
  335. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/lc.png +0 -0
  336. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/li.png +0 -0
  337. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/lk.png +0 -0
  338. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/lr.png +0 -0
  339. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ls.png +0 -0
  340. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/lt.png +0 -0
  341. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/lu.png +0 -0
  342. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/lv.png +0 -0
  343. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ly.png +0 -0
  344. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ma.png +0 -0
  345. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/mc.png +0 -0
  346. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/md.png +0 -0
  347. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/me.png +0 -0
  348. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/mg.png +0 -0
  349. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/mk.png +0 -0
  350. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ml.png +0 -0
  351. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/mm.png +0 -0
  352. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/mn.png +0 -0
  353. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/mo.png +0 -0
  354. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/mr.png +0 -0
  355. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ms.png +0 -0
  356. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/mt.png +0 -0
  357. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/mu.png +0 -0
  358. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/mv.png +0 -0
  359. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/mw.png +0 -0
  360. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/mx.png +0 -0
  361. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/my.png +0 -0
  362. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/mz.png +0 -0
  363. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/na.png +0 -0
  364. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ne.png +0 -0
  365. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ng.png +0 -0
  366. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ni.png +0 -0
  367. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/nl.png +0 -0
  368. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/no.png +0 -0
  369. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/np.png +0 -0
  370. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/nz.png +0 -0
  371. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/om.png +0 -0
  372. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/pa.png +0 -0
  373. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/pe.png +0 -0
  374. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/pf.png +0 -0
  375. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/pg.png +0 -0
  376. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ph.png +0 -0
  377. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/pk.png +0 -0
  378. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/pl.png +0 -0
  379. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/pr.png +0 -0
  380. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/pt.png +0 -0
  381. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/pw.png +0 -0
  382. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/py.png +0 -0
  383. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/qa.png +0 -0
  384. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ro.png +0 -0
  385. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/rs.png +0 -0
  386. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ru.png +0 -0
  387. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/rw.png +0 -0
  388. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sa.png +0 -0
  389. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sb.png +0 -0
  390. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sc.png +0 -0
  391. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sd.png +0 -0
  392. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/se.png +0 -0
  393. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sg.png +0 -0
  394. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sh.png +0 -0
  395. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/si.png +0 -0
  396. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sk.png +0 -0
  397. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sl.png +0 -0
  398. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sm.png +0 -0
  399. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sn.png +0 -0
  400. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/so.png +0 -0
  401. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sr.png +0 -0
  402. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/st.png +0 -0
  403. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sv.png +0 -0
  404. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sy.png +0 -0
  405. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/sz.png +0 -0
  406. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/tc.png +0 -0
  407. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/td.png +0 -0
  408. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/tg.png +0 -0
  409. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/th.png +0 -0
  410. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/tj.png +0 -0
  411. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/tl.png +0 -0
  412. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/tm.png +0 -0
  413. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/tn.png +0 -0
  414. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/to.png +0 -0
  415. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/tr.png +0 -0
  416. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/tt.png +0 -0
  417. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/tw.png +0 -0
  418. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/tz.png +0 -0
  419. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ua.png +0 -0
  420. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ug.png +0 -0
  421. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/us.png +0 -0
  422. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/uy.png +0 -0
  423. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/uz.png +0 -0
  424. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/vc.png +0 -0
  425. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ve.png +0 -0
  426. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/vg.png +0 -0
  427. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/vn.png +0 -0
  428. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/vu.png +0 -0
  429. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ws.png +0 -0
  430. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ww.png +0 -0
  431. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/ye.png +0 -0
  432. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/za.png +0 -0
  433. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/zm.png +0 -0
  434. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/flags/zw.png +0 -0
  435. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/login.jpg +0 -0
  436. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/login.webp +0 -0
  437. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/logo.svg +0 -0
  438. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/logo_light.svg +0 -0
  439. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/images/sk.svg +0 -0
  440. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/code.js +0 -0
  441. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/codemirror/codemirror.min.js +0 -0
  442. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/codemirror/django.min.js +0 -0
  443. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/codemirror/overlay.min.js +0 -0
  444. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/coloris/coloris.min.js +0 -0
  445. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/fullcalendar.min.js +0 -0
  446. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/htmx.min.js +0 -0
  447. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/jquery-3.7.1.min.js +0 -0
  448. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/jquery.min.js +0 -0
  449. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/lazysizes.bgset.min.js +0 -0
  450. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/lazysizes.min.js +0 -0
  451. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/ls.unveilhooks.min.js +0 -0
  452. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/prices.js +0 -0
  453. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/querybuilder/jQuery.extendext.js +0 -0
  454. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/querybuilder/query-builder.min.js +0 -0
  455. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/remove-me.js +0 -0
  456. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/sbadmin_prepopulated_fields_init.js +0 -0
  457. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/js/tabulator.min.js +0 -0
  458. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Accept-email.svg +0 -0
  459. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Ad-product.svg +0 -0
  460. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Add-mode-filled.svg +0 -0
  461. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Add-one.svg +0 -0
  462. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Add-picture.svg +0 -0
  463. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Add-three.svg +0 -0
  464. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Aiming.svg +0 -0
  465. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Align-text-both.svg +0 -0
  466. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Align-text-center.svg +0 -0
  467. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Align-text-left.svg +0 -0
  468. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Align-text-right.svg +0 -0
  469. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/All-application.svg +0 -0
  470. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Alphabetical-sorting-two.svg +0 -0
  471. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Alphabetical-sorting.svg +0 -0
  472. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Application-filled.svg +0 -0
  473. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Application-menu.svg +0 -0
  474. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Application-two.svg +0 -0
  475. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Application.svg +0 -0
  476. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Arrow-circle-down.svg +0 -0
  477. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Arrow-circle-left.svg +0 -0
  478. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Arrow-circle-right.svg +0 -0
  479. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Arrow-circle-up.svg +0 -0
  480. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/At-sign.svg +0 -0
  481. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Attention.svg +0 -0
  482. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Back-one.svg +0 -0
  483. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Background-color.svg +0 -0
  484. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Bank-card-one.svg +0 -0
  485. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Bank-card.svg +0 -0
  486. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Bolt-one.svg +0 -0
  487. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Bookmark.svg +0 -0
  488. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Bookmarked.svg +0 -0
  489. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Box.svg +0 -0
  490. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Calendar.svg +0 -0
  491. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Camera.svg +0 -0
  492. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Caution-filled.svg +0 -0
  493. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Caution.svg +0 -0
  494. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Chart-line.svg +0 -0
  495. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Chart-pie-filled.svg +0 -0
  496. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Chart-pie.svg +0 -0
  497. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Chat-filled.svg +0 -0
  498. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Chat.svg +0 -0
  499. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Check-correct.svg +0 -0
  500. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Check-one-filled.svg +0 -0
  501. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Check-one.svg +0 -0
  502. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Check-small.svg +0 -0
  503. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Check.svg +0 -0
  504. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Close-one.svg +0 -0
  505. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Close-search.svg +0 -0
  506. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Close-small.svg +0 -0
  507. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Close.svg +0 -0
  508. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Code.svg +0 -0
  509. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Color-card.svg +0 -0
  510. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Column.svg +0 -0
  511. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Comment-filled.svg +0 -0
  512. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Corner-up-left.svg +0 -0
  513. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Corner-up-right.svg +0 -0
  514. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Cut.svg +0 -0
  515. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Cylinder.svg +0 -0
  516. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Delete-two.svg +0 -0
  517. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Delete.svg +0 -0
  518. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Desktop-screen.svg +0 -0
  519. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Double-down.svg +0 -0
  520. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Double-left.svg +0 -0
  521. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Double-right.svg +0 -0
  522. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Double-up.svg +0 -0
  523. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Down-c.svg +0 -0
  524. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Down-small.svg +0 -0
  525. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Down.svg +0 -0
  526. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Download-one.svg +0 -0
  527. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Download-three-filled.svg +0 -0
  528. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Download-three.svg +0 -0
  529. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Download.svg +0 -0
  530. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Drag.svg +0 -0
  531. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Edit-filled.svg +0 -0
  532. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Edit.svg +0 -0
  533. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Electric-drill.svg +0 -0
  534. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Emoji.svg +0 -0
  535. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Euro-outlined.svg +0 -0
  536. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Excel-one-filled.svg +0 -0
  537. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Excel-one.svg +0 -0
  538. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Expand-left.svg +0 -0
  539. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Expand-right.svg +0 -0
  540. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Export.svg +0 -0
  541. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Eyedropper.svg +0 -0
  542. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Facebook.svg +0 -0
  543. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Figma-component.svg +0 -0
  544. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Filter.svg +0 -0
  545. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Find.svg +0 -0
  546. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Fire-extinguisher.svg +0 -0
  547. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Frame-one.svg +0 -0
  548. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Gas.svg +0 -0
  549. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Go-ahead.svg +0 -0
  550. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Go-on.svg +0 -0
  551. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Graphic-design.svg +0 -0
  552. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Hamburger-button.svg +0 -0
  553. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Handle.svg +0 -0
  554. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Headset-one.svg +0 -0
  555. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Health.svg +0 -0
  556. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Heart-rate.svg +0 -0
  557. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Help.svg +0 -0
  558. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/History.svg +0 -0
  559. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Home.svg +0 -0
  560. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Id-card-h.svg +0 -0
  561. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Import-and-export.svg +0 -0
  562. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Import.svg +0 -0
  563. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Indent-left.svg +0 -0
  564. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Indent-right.svg +0 -0
  565. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Info.svg +0 -0
  566. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Infusion.svg +0 -0
  567. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Iphone.svg +0 -0
  568. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Left-c.svg +0 -0
  569. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Left-small-down.svg +0 -0
  570. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Left-small-up.svg +0 -0
  571. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Left-small.svg +0 -0
  572. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Left.svg +0 -0
  573. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Lightning-fill.svg +0 -0
  574. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Lightning.svg +0 -0
  575. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Like.svg +0 -0
  576. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Link-filled.svg +0 -0
  577. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Link-two.svg +0 -0
  578. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Link.svg +0 -0
  579. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/List-checkbox.svg +0 -0
  580. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/List-numbers.svg +0 -0
  581. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/List-two.svg +0 -0
  582. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Loading.svg +0 -0
  583. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Lock.svg +0 -0
  584. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Login.svg +0 -0
  585. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Logout.svg +0 -0
  586. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Lung.svg +0 -0
  587. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Magic-wand.svg +0 -0
  588. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Magic.svg +0 -0
  589. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Mail-download.svg +0 -0
  590. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Mail-open.svg +0 -0
  591. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Mail.svg +0 -0
  592. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Medical-box.svg +0 -0
  593. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Medication-time.svg +0 -0
  594. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Message-emoji.svg +0 -0
  595. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Message-one.svg +0 -0
  596. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Minus-the-top.svg +0 -0
  597. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Minus.svg +0 -0
  598. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Moon-filled.svg +0 -0
  599. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Moon.svg +0 -0
  600. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/More-one.svg +0 -0
  601. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/More-three.svg +0 -0
  602. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/More-two.svg +0 -0
  603. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/More.svg +0 -0
  604. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Notification.svg +0 -0
  605. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Paperclip.svg +0 -0
  606. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Parallel-gateway.svg +0 -0
  607. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/People-top-card.svg +0 -0
  608. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Percentage.svg +0 -0
  609. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Pesticide.svg +0 -0
  610. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Phone-call.svg +0 -0
  611. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Phone-telephone.svg +0 -0
  612. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Picture-one.svg +0 -0
  613. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Pin-filled.svg +0 -0
  614. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Pin.svg +0 -0
  615. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Plus.svg +0 -0
  616. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Preview-close-one.svg +0 -0
  617. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Preview-close.svg +0 -0
  618. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Preview-open.svg +0 -0
  619. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Printer-filled.svg +0 -0
  620. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Printer.svg +0 -0
  621. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Protect-filled.svg +0 -0
  622. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Pull.svg +0 -0
  623. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Pure-natural.svg +0 -0
  624. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Pushpin.svg +0 -0
  625. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Reduce-one.svg +0 -0
  626. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Refresh-one-filled.svg +0 -0
  627. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Refresh-one.svg +0 -0
  628. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Refresh.svg +0 -0
  629. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Reply.svg +0 -0
  630. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Return.svg +0 -0
  631. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Right-c.svg +0 -0
  632. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Right-small-down.svg +0 -0
  633. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Right-small-up.svg +0 -0
  634. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Right-small.svg +0 -0
  635. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Right.svg +0 -0
  636. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Row.svg +0 -0
  637. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Save.svg +0 -0
  638. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Search.svg +0 -0
  639. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Send-email.svg +0 -0
  640. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Send.svg +0 -0
  641. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Setting-config.svg +0 -0
  642. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Setting-filled.svg +0 -0
  643. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Setting-two.svg +0 -0
  644. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Shop.svg +0 -0
  645. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Shopping-bag.svg +0 -0
  646. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Shopping-cart-one.svg +0 -0
  647. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Shopping.svg +0 -0
  648. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-apple.svg +0 -0
  649. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-discord.svg +0 -0
  650. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-facebook.svg +0 -0
  651. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-google.svg +0 -0
  652. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-instagram.svg +0 -0
  653. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-linkedin.svg +0 -0
  654. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-mailchimp.svg +0 -0
  655. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-messenger.svg +0 -0
  656. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-paypal.svg +0 -0
  657. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-pinterest.svg +0 -0
  658. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-play-store.svg +0 -0
  659. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-shopify.svg +0 -0
  660. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-spotify.svg +0 -0
  661. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-tiktok.svg +0 -0
  662. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-twitch.svg +0 -0
  663. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-vimeo.svg +0 -0
  664. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-whatsapp.svg +0 -0
  665. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-windows.svg +0 -0
  666. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-x-twitter.svg +0 -0
  667. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Social-youtube.svg +0 -0
  668. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Sort-alt.svg +0 -0
  669. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Sort-amount-down.svg +0 -0
  670. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Sort-amount-up.svg +0 -0
  671. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Sort-one.svg +0 -0
  672. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Sort-three.svg +0 -0
  673. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Sort.svg +0 -0
  674. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Star-2-filled.svg +0 -0
  675. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Star-2-half-filled.svg +0 -0
  676. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Star-2.svg +0 -0
  677. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Star.svg +0 -0
  678. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Success.svg +0 -0
  679. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Sun-1.svg +0 -0
  680. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Sun-filled.svg +0 -0
  681. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Sun-one.svg +0 -0
  682. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Switch.svg +0 -0
  683. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Table-report-filled.svg +0 -0
  684. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Table-report.svg +0 -0
  685. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Tag-one.svg +0 -0
  686. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Tag.svg +0 -0
  687. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Text-bold.svg +0 -0
  688. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Text-italic.svg +0 -0
  689. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Text-underline.svg +0 -0
  690. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Thumbs-down-filled.svg +0 -0
  691. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Thumbs-down.svg +0 -0
  692. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Thumbs-up-filled.svg +0 -0
  693. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Thumbs-up.svg +0 -0
  694. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Time.svg +0 -0
  695. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Tips-one.svg +0 -0
  696. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/To-top.svg +0 -0
  697. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Transfer-data.svg +0 -0
  698. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Translate.svg +0 -0
  699. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Translation.svg +0 -0
  700. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Triangle-round-rectangle.svg +0 -0
  701. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Truck.svg +0 -0
  702. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Undo.svg +0 -0
  703. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Unlock.svg +0 -0
  704. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Up-c.svg +0 -0
  705. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Up-small.svg +0 -0
  706. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Up.svg +0 -0
  707. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Upload-one.svg +0 -0
  708. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Upload.svg +0 -0
  709. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/User-business.svg +0 -0
  710. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/User-placeholder.svg +0 -0
  711. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Video-two.svg +0 -0
  712. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/View-grid-list.svg +0 -0
  713. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Watchdog-filled.svg +0 -0
  714. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Watchdog.svg +0 -0
  715. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Write.svg +0 -0
  716. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Writing-fluently-filled.svg +0 -0
  717. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Writting-flueantly-filled.svg +0 -0
  718. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Youtube.svg +0 -0
  719. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Zoom-in.svg +0 -0
  720. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/sprites/sb_admin/Zoom-out.svg +0 -0
  721. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/_base.css +0 -0
  722. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/_choices.css +0 -0
  723. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/_colors.css +0 -0
  724. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/_datepicker.css +0 -0
  725. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/_filer.css +0 -0
  726. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/_inlines.css +0 -0
  727. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/_nouislider.css +0 -0
  728. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/_tabulator.css +0 -0
  729. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/_tailwind_base.css +0 -0
  730. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/_utilities.css +0 -0
  731. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/calendar.css +0 -0
  732. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/components/_button.css +0 -0
  733. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/components/_dropdown.css +0 -0
  734. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/components/_input.css +0 -0
  735. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/components/_json-editor.css +0 -0
  736. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/components/_modal.css +0 -0
  737. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/components/_nav-tabs.css +0 -0
  738. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/components/_query-builder.css +0 -0
  739. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/components/_table.css +0 -0
  740. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/components/_toggle.css +0 -0
  741. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/components/_tooltip.css +0 -0
  742. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/style.css +0 -0
  743. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/css/tree_widget.css +0 -0
  744. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/autocomplete.js +0 -0
  745. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/calendar.js +0 -0
  746. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/chart.js +0 -0
  747. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/choices.js +0 -0
  748. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/confirmation_modal.js +0 -0
  749. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/datepicker.js +0 -0
  750. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/datepicker_plugins.js +0 -0
  751. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/inline_paginator.js +0 -0
  752. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/modal_view.js +0 -0
  753. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/multiselect.js +0 -0
  754. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/radio.js +0 -0
  755. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/range.js +0 -0
  756. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/sanitize.js +0 -0
  757. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/sb_ajax_params_tabulator_modifier.js +0 -0
  758. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/sbadmin_formset.js +0 -0
  759. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/sidebar.js +0 -0
  760. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/sorting.js +0 -0
  761. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/static_autocomplete.js +0 -0
  762. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table.js +0 -0
  763. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/advanced_filter_module.js +0 -0
  764. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/base_module.js +0 -0
  765. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/column_display_module.js +0 -0
  766. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/data_edit_module.js +0 -0
  767. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/data_tree_module.js +0 -0
  768. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/detail_view_module.js +0 -0
  769. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/filter_module.js +0 -0
  770. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/full_text_search_module.js +0 -0
  771. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/header_tabs_module.js +0 -0
  772. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/movable_columns_module.js +0 -0
  773. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/selection_module.js +0 -0
  774. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/sticky_header_and_footer_module.js +0 -0
  775. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/table_params_module.js +0 -0
  776. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/table_modules/views_module.js +0 -0
  777. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/tabulator_layouts/fit_data_fill_available_space.js +0 -0
  778. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/text_tags.js +0 -0
  779. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/translations.js +0 -0
  780. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/tree_widget.js +0 -0
  781. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/url_params_codec.js +0 -0
  782. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/static/sb_admin/src/js/utils.js +0 -0
  783. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/change_form.html +0 -0
  784. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/change_password.html +0 -0
  785. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/dashboard.html +0 -0
  786. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/delete_confirmation.html +0 -0
  787. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/delete_selected_confirmation.html +0 -0
  788. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/includes/delete_impact_panel.html +0 -0
  789. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/list.html +0 -0
  790. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/media.html +0 -0
  791. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/object_history.html +0 -0
  792. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/partials/action_link.html +0 -0
  793. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/partials/open_modal_attrs.html +0 -0
  794. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/partials/selected_rows_actions.html +0 -0
  795. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/partials/tabulator_header_change_view_v1.html +0 -0
  796. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/partials/tabulator_header_v1.html +0 -0
  797. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/partials/tabulator_header_v2.html +0 -0
  798. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/partials/translations_status_row.html +0 -0
  799. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/translations-detail.html +0 -0
  800. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/translations-language-choice.html +0 -0
  801. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/translations-list.html +0 -0
  802. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/translations.html +0 -0
  803. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/actions/tree_list.html +0 -0
  804. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/audit/affected.html +0 -0
  805. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/audit/changes.html +0 -0
  806. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/audit/related_changes.html +0 -0
  807. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/audit/summary.html +0 -0
  808. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/auth/user/add_form.html +0 -0
  809. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/authentification/login.html +0 -0
  810. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/authentification/login_base.html +0 -0
  811. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/authentification/logout.html +0 -0
  812. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/authentification/password_change_done.html +0 -0
  813. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/authentification/password_change_form.html +0 -0
  814. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/authentification/password_reset_complete.html +0 -0
  815. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/authentification/password_reset_confirm.html +0 -0
  816. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/authentification/password_reset_done.html +0 -0
  817. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/authentification/password_reset_email.html +0 -0
  818. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/authentification/password_reset_form.html +0 -0
  819. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/blank_base.html +0 -0
  820. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/components/buttons.html +0 -0
  821. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/components/columns.html +0 -0
  822. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/components/filters.html +0 -0
  823. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/components/filters_v2.html +0 -0
  824. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/components/inputs.html +0 -0
  825. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/config/view.html +0 -0
  826. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/dashboard/calendar_widget.html +0 -0
  827. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/dashboard/chart_aggregate_sub_widget.html +0 -0
  828. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/dashboard/chart_widget.html +0 -0
  829. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/dashboard/includes/list_widget_actions.html +0 -0
  830. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/dashboard/includes/list_widget_filters.html +0 -0
  831. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/dashboard/list_widget.html +0 -0
  832. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/dashboard/widget_base.html +0 -0
  833. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/advanced_filters/autocomplete_field.html +0 -0
  834. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/advanced_filters/boolean_field.html +0 -0
  835. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/advanced_filters/choice_field.html +0 -0
  836. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/advanced_filters/date_field.html +0 -0
  837. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/advanced_filters/multiple_choice_field.html +0 -0
  838. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/advanced_filters/number_range_field.html +0 -0
  839. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/advanced_filters/radio_choice_field.html +0 -0
  840. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/advanced_filters/string_field.html +0 -0
  841. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/advanced_filters/tree_select_filter.html +0 -0
  842. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/autocomplete_field.html +0 -0
  843. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/boolean_field.html +0 -0
  844. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/choice_field.html +0 -0
  845. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/date_field.html +0 -0
  846. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/multiple_choice_field.html +0 -0
  847. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/number_range_field.html +0 -0
  848. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/partials/clear.html +0 -0
  849. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/radio_choice_field.html +0 -0
  850. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/string_field.html +0 -0
  851. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/filter_widgets/tree_select_filter.html +0 -0
  852. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/fonts.html +0 -0
  853. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/attrs.html +0 -0
  854. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/change_form_title.html +0 -0
  855. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/components.html +0 -0
  856. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/confirmation.html +0 -0
  857. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/detail_view_tabs_hash_init.html +0 -0
  858. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/dynamic_region.html +0 -0
  859. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/fieldset.html +0 -0
  860. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/fieldset_header.html +0 -0
  861. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/fieldset_layout.html +0 -0
  862. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/form_error_alert.html +0 -0
  863. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/inline_fieldset_fields.html +0 -0
  864. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/loading.html +0 -0
  865. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/loading_absolute.html +0 -0
  866. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/notifications.html +0 -0
  867. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/readonly_boolean_field.html +0 -0
  868. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/readonly_field.html +0 -0
  869. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/includes/table_inline_delete_button.html +0 -0
  870. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/inlines/stacked_inline.html +0 -0
  871. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/inlines/table_inline.html +0 -0
  872. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/inlines/table_inline_paginated.html +0 -0
  873. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/integrations/cms/page_list.html +0 -0
  874. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/integrations/cms/translations_status_row.html +0 -0
  875. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/integrations/filer/filer_change_form.html +0 -0
  876. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/integrations/filer/folder_list.html +0 -0
  877. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/integrations/filer/image_change_form.html +0 -0
  878. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/integrations/filer/image_detail_panel.html +0 -0
  879. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/navigation.html +0 -0
  880. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/partials/messages/alert_base.html +0 -0
  881. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/partials/messages/alert_close.html +0 -0
  882. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/partials/messages/alert_error.html +0 -0
  883. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/partials/messages/alert_info.html +0 -0
  884. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/partials/messages/alert_success.html +0 -0
  885. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/partials/messages/alert_warning.html +0 -0
  886. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/partials/modal/modal.html +0 -0
  887. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/partials/modal/modal_confirmation.html +0 -0
  888. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/partials/modal/modal_content.html +0 -0
  889. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/sb_admin_base.html +0 -0
  890. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/sb_admin_base_no_sidebar.html +0 -0
  891. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/sb_admin_js_trans.html +0 -0
  892. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/sprites/sb_admin.svg +0 -0
  893. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/submit_line.html +0 -0
  894. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/tailwind_whitelist.html +0 -0
  895. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/array.html +0 -0
  896. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/attributes.html +0 -0
  897. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/attrs.html +0 -0
  898. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/autocomplete.html +0 -0
  899. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/checkbox.html +0 -0
  900. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/checkbox_dropdown.html +0 -0
  901. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/checkbox_group.html +0 -0
  902. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/checkbox_option.html +0 -0
  903. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/choice_search.html +0 -0
  904. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/ckeditor.html +0 -0
  905. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/clearable_file_input.html +0 -0
  906. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/code.html +0 -0
  907. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/color_field.html +0 -0
  908. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/date.html +0 -0
  909. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/datetime.html +0 -0
  910. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/email.html +0 -0
  911. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/file.html +0 -0
  912. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/filer_file.html +0 -0
  913. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/hidden.html +0 -0
  914. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/html_read_only.html +0 -0
  915. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/includes/field_label.html +0 -0
  916. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/includes/help_text.html +0 -0
  917. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/includes/input_affix.html +0 -0
  918. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/includes/related_item_buttons.html +0 -0
  919. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/includes/simple_field_label.html +0 -0
  920. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/input.html +0 -0
  921. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/input_option.html +0 -0
  922. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/json_editor.html +0 -0
  923. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/multiple_hidden.html +0 -0
  924. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/multiwidget.html +0 -0
  925. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/number.html +0 -0
  926. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/pageselectwidget.html +0 -0
  927. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/password.html +0 -0
  928. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/radio.html +0 -0
  929. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/radio_dropdown.html +0 -0
  930. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/radio_option.html +0 -0
  931. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/read_only_password_hash.html +0 -0
  932. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/select.html +0 -0
  933. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/select_date.html +0 -0
  934. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/select_option.html +0 -0
  935. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/splitdatetime.html +0 -0
  936. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/splithiddendatetime.html +0 -0
  937. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/text.html +0 -0
  938. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/text_tags.html +0 -0
  939. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/textarea.html +0 -0
  940. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/time.html +0 -0
  941. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/toggle.html +0 -0
  942. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/tree_base.html +0 -0
  943. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/tree_select.html +0 -0
  944. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/tree_select_inline.html +0 -0
  945. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/widgets/url.html +0 -0
  946. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templates/sb_admin/wizard/wizard_step.html +0 -0
  947. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templatetags/__init__.py +0 -0
  948. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templatetags/base.py +0 -0
  949. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templatetags/sb_admin_tags.py +0 -0
  950. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/templatetags/sb_paginated_inline.py +0 -0
  951. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/tests/__init__.py +0 -0
  952. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/tests/test_autocomplete_forward_create.py +0 -0
  953. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/tests/test_checks.py +0 -0
  954. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/tests/test_generic_relation_parent.py +0 -0
  955. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/tests/test_inline_pagination.py +0 -0
  956. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/tests/test_inline_table_field_rendering.py +0 -0
  957. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/tests/test_url_params_codec.py +0 -0
  958. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/tests/test_view_on_site.py +0 -0
  959. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/urls.py +0 -0
  960. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/utils.py +0 -0
  961. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/views/__init__.py +0 -0
  962. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/views/global_filter_view.py +0 -0
  963. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/views/media_view.py +0 -0
  964. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/views/sbadmin_wizard_step.py +0 -0
  965. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/views/sbadmin_wizard_view.py +0 -0
  966. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/views/translations_view.py +0 -0
  967. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/views/user_config_view.py +0 -0
  968. {django_smartbase_admin-2.0.0 → django_smartbase_admin-2.0.2}/src/django_smartbase_admin/views/view_on_site_redirect_view.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: django-smartbase-admin
3
- Version: 2.0.0
3
+ Version: 2.0.2
4
4
  Summary:
5
5
  Home-page: https://smartbase-sk.github.io/django-smartbase-admin-docs/
6
6
  License: MIT
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "django-smartbase-admin"
3
- version = "2.0.0"
3
+ version = "2.0.2"
4
4
  description = ""
5
5
  authors = ["SmartBase <info@smartbase.sk>"]
6
6
  readme = "README.md"
@@ -129,11 +129,25 @@ class RowList:
129
129
  self.rows = rows
130
130
 
131
131
  def filter(self, *args, **kwargs):
132
- return self
132
+ rows = self.rows
133
+ for key, value in kwargs.items():
134
+ if key.endswith("__in"):
135
+ field_name = key.removesuffix("__in")
136
+ allowed = set(value)
137
+ rows = [row for row in rows if row.get(field_name) in allowed]
138
+ else:
139
+ rows = [row for row in rows if row.get(key) == value]
140
+ return RowList(rows)
133
141
 
134
142
  def order_by(self, *args):
135
143
  return self
136
144
 
145
+ def none(self):
146
+ return RowList([])
147
+
148
+ def union(self, other, all=False):
149
+ return RowList([*self.rows, *other.rows])
150
+
137
151
  def __iter__(self):
138
152
  return iter(self.rows)
139
153
 
@@ -380,7 +394,10 @@ class RowActionIntegrationTests(TestCase):
380
394
 
381
395
  with patch(
382
396
  "django_smartbase_admin.plugins.nested.resolve_nested",
383
- return_value={"parent_field": "parent"},
397
+ return_value={
398
+ "parent_field": "parent",
399
+ "only_show_filtered_children": False,
400
+ },
384
401
  ):
385
402
  result = TabulatorNestedPlugin.modify_final_data(
386
403
  action,
@@ -15,6 +15,25 @@ SBADMIN_DYNAMIC_REGION_PARAM = "sbadmin_dynamic_region"
15
15
  SBADMIN_DYNAMIC_REGION_PREFIX_PARAM = "sbadmin_dynamic_region_prefix"
16
16
  SBADMIN_DYNAMIC_REGION_ACTION = "sbadmin_dynamic_region"
17
17
  SBADMIN_DYNAMIC_REGION_ADD_MODIFIER = "add"
18
+ _FORMSET_PREFIX_PLACEHOLDER = "__prefix__"
19
+ _FORMSET_PREFIX_PLACEHOLDER_TOKEN = "\x00"
20
+
21
+
22
+ def _dynamic_region_wrapper_id_from_parts(value: str) -> str:
23
+ """Build a wrapper id from joined prefix/region parts.
24
+
25
+ Django formset empty forms keep ``__prefix__`` in the prefix so
26
+ ``sbadmin_formset.js`` can substitute the row index. Slugify collapses
27
+ that token; underscore-to-hyphen replacement turns it into ``---prefix---``.
28
+ """
29
+ if _FORMSET_PREFIX_PLACEHOLDER in value:
30
+ protected = value.replace(
31
+ _FORMSET_PREFIX_PLACEHOLDER, _FORMSET_PREFIX_PLACEHOLDER_TOKEN
32
+ )
33
+ return protected.replace("_", "-").replace(
34
+ _FORMSET_PREFIX_PLACEHOLDER_TOKEN, _FORMSET_PREFIX_PLACEHOLDER
35
+ )
36
+ return slugify(value).replace("_", "-")
18
37
 
19
38
 
20
39
  def field_names_from_layout(layout: Iterable[Any]) -> tuple[str, ...]:
@@ -141,7 +160,7 @@ class SBDynamicRegion:
141
160
  if prefix:
142
161
  pieces.append(str(prefix))
143
162
  pieces.append(self.name)
144
- return slugify("-".join(pieces)).replace("_", "-")
163
+ return _dynamic_region_wrapper_id_from_parts("-".join(pieces))
145
164
 
146
165
  def resolve(
147
166
  self, form: forms.Form, request: HttpRequest | None = None
@@ -535,6 +554,7 @@ class SBAdminDynamicFormMixin:
535
554
  collapsible = bool(fieldset_data.get("collapsible", False))
536
555
  default_collapsed = bool(fieldset_data.get("default_collapsed", False))
537
556
  hide_if_empty = bool(fieldset_data.get("hide_if_empty", False))
557
+ skip_header = bool(fieldset_data.get("skip_header", False))
538
558
  fieldset_layout = self.get_fieldset_layout(fieldset, fieldset_data, request)
539
559
  fieldset_empty = (
540
560
  hide_if_empty
@@ -551,6 +571,7 @@ class SBAdminDynamicFormMixin:
551
571
  "actions": self.get_fieldset_actions(fieldset, fieldset_data, request),
552
572
  "hide_if_empty": hide_if_empty,
553
573
  "empty": fieldset_empty,
574
+ "skip_header": skip_header,
554
575
  }
555
576
 
556
577
  def get_fieldset_layout(
@@ -5,7 +5,7 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
6
  <title>SBAdmin Dashboard</title>
7
7
  <!-- Blueprint for a local dashboard on this admin's live data (MCP resource dashboard://blueprint). -->
8
- <!-- Build any view below — metrics, tables, charts. Fill CONFIG.clientId after registering an OAuth client; scope + MCP path are filled in on read. -->
8
+ <!-- Build any view below — metrics, tables, charts. The OAuth client self-registers on first connect; scope + MCP path are filled in on read. -->
9
9
  <!-- Serve on a spare port, e.g. python -m http.server 8010. -->
10
10
 
11
11
  <style>
@@ -35,12 +35,17 @@
35
35
  /* ============================ CONFIG ============================ */
36
36
  const CONFIG = {
37
37
  issuer: location.origin, // this server when served same-origin; else set explicitly
38
- clientId: "REPLACE_WITH_CLIENT_ID", // from Dynamic Client Registration (see header)
38
+ clientId: null, // auto-registered (DCR) on first connect, then cached per-issuer
39
39
  redirectUri: location.origin + location.pathname,
40
40
  scope: "__MCP_SCOPE__", // scope this server exposes (filled in on resource read)
41
41
  mcpUrl: location.origin + "/__MCP_PATH__", // MCP endpoint (path filled in); set host if off-origin
42
42
  };
43
43
 
44
+ // Cache the registered client per issuer, so the same page pointed at a
45
+ // different admin doesn't reuse a client_id that admin never issued.
46
+ const CLIENT_KEY = "sbadmin_client_id:" + CONFIG.issuer;
47
+ CONFIG.clientId = localStorage.getItem(CLIENT_KEY);
48
+
44
49
  /* ===================== OAuth 2.1 + PKCE (auth) ===================== */
45
50
  const b64url = (buf) => btoa(String.fromCharCode(...new Uint8Array(buf)))
46
51
  .replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "");
@@ -52,11 +57,24 @@ let TOKEN = sessionStorage.getItem("sbadmin_token") || null;
52
57
  async function discover() {
53
58
  const r = await fetch(CONFIG.issuer + "/.well-known/oauth-authorization-server");
54
59
  if (!r.ok) throw new Error("OAuth discovery failed");
55
- return r.json(); // -> { authorization_endpoint, token_endpoint, ... }
60
+ return r.json(); // -> { authorization_endpoint, token_endpoint, registration_endpoint, ... }
61
+ }
62
+
63
+ async function ensureClient(meta) {
64
+ if (CONFIG.clientId) return; // cached from a previous connect
65
+ const r = await fetch(meta.registration_endpoint, {
66
+ method: "POST",
67
+ headers: { "Content-Type": "application/json" },
68
+ body: JSON.stringify({ client_name: "SBAdmin dashboard", redirect_uris: [CONFIG.redirectUri] }),
69
+ });
70
+ if (!r.ok) throw new Error("client registration failed: " + r.status);
71
+ CONFIG.clientId = (await r.json()).client_id;
72
+ localStorage.setItem(CLIENT_KEY, CONFIG.clientId); // reuse, don't re-register each load
56
73
  }
57
74
 
58
75
  async function login() {
59
76
  const meta = await discover();
77
+ await ensureClient(meta); // self-register on first connect (DCR)
60
78
  const verifier = rand();
61
79
  const state = rand();
62
80
  sessionStorage.setItem("pkce_verifier", verifier);
@@ -1387,21 +1387,24 @@ class SBAdminTools(MCPToolset):
1387
1387
  "display whatever you need: metrics, tables, charts/graphs, any custom "
1388
1388
  "view. It logs in via OAuth 2.1 (auth code + PKCE) to this "
1389
1389
  "server and calls the MCP tools through an api(tool, args) helper. "
1390
- "SETUP: (1) save the content as an .html file; (2) register an OAuth "
1391
- "client via POST <issuer>/oauth/register (redirect_uris = where you "
1392
- "serve the page) and put the returned client_id into CONFIG a public "
1393
- "PKCE id, no secret; CONFIG.scope and the MCP path are prefilled; "
1394
- "(3) serve it over http, NOT file:// (Origin 'null' is always "
1395
- "CORS-blocked) locally on a spare, non-default port so it doesn't "
1396
- "clash with the admin/other dev servers, e.g. python -m http.server "
1397
- "8010; (4) build the "
1390
+ "SETUP: (1) save the content as an .html file; (2) serve it over http, "
1391
+ "NOT file:// (Origin 'null' is always CORS-blocked) locally on a "
1392
+ "spare, non-default port so it doesn't clash with the admin/other dev "
1393
+ "servers, e.g. python -m http.server 8010; (3) open it and Connect "
1394
+ "the OAuth client self-registers via DCR on first connect (a public "
1395
+ "PKCE id cached in localStorage; nothing to paste), and CONFIG.scope + "
1396
+ "the MCP path are prefilled; (4) build the "
1398
1397
  "view: call MCP tool(s) via api() (discover views/fields via "
1399
1398
  "list_admins) and render the results any way you like — cards, tables, "
1400
1399
  "charts, free-form layout (the example cards are just one option; add a "
1401
1400
  "chart library for graphs). Same-origin as the admin needs no CORS; "
1402
- "off-origin, point "
1403
- "CONFIG.issuer/mcpUrl at this server and enable SBAdminMCPCorsMiddleware "
1404
- "+ SBADMIN_MCP_ALLOWED_ORIGINS."
1401
+ "off-origin (incl. a local http://localhost page against an https "
1402
+ "admin), point CONFIG.issuer/mcpUrl at this server and have the "
1403
+ "operator add the page's origin to SBADMIN_MCP_ALLOWED_ORIGINS with "
1404
+ "SBAdminMCPCorsMiddleware enabled. Plain http on localhost is fine — "
1405
+ "loopback is a secure context (PKCE works), the self-registered "
1406
+ "redirect_uri is loopback so http is accepted, and the admin traffic is "
1407
+ "still https."
1405
1408
  ),
1406
1409
  mime_type="text/html",
1407
1410
  )
@@ -7,9 +7,15 @@ cross-origin POST to ``/mcp/`` and send an OAuth preflight to
7
7
  ``Access-Control-Allow-Origin`` + matching ``-Methods`` / ``-Headers``,
8
8
  the browser blocks every request before it reaches Django.
9
9
 
10
- This middleware adds the required headers on the MCP endpoint plus the
11
- OAuth discovery / registration / authorization paths, gated by an
12
- explicit origin allowlist set via ``SBADMIN_MCP_ALLOWED_ORIGINS``.
10
+ This middleware adds the required headers on the MCP endpoint and the
11
+ OAuth discovery / token / registration paths, gated by an explicit
12
+ origin allowlist set via ``SBADMIN_MCP_ALLOWED_ORIGINS``.
13
+
14
+ No credentials are advertised: the MCP flow authenticates with a
15
+ ``Bearer`` token and the OAuth flow is public-client + PKCE, so no
16
+ cross-origin request needs cookies. That is what makes adding a
17
+ ``http://localhost:<port>`` dashboard origin safe — an allowed local
18
+ page still can't ride the user's admin session.
13
19
 
14
20
  Default allowlist covers Claude (``https://claude.ai``) and Cursor
15
21
  (``https://cursor.com``) so their install flows work out of the box.
@@ -35,9 +41,6 @@ DEFAULT_ALLOWED_ORIGINS: tuple[str, ...] = (
35
41
  "https://cursor.com",
36
42
  )
37
43
 
38
- # Paths the middleware decorates. Kept inline rather than reverse()'d
39
- # because middleware runs on every request — a startup-time URL resolver
40
- # walk would just trade configuration for an import-order hazard.
41
44
  _MCP_PATH_PREFIXES: tuple[str, ...] = (
42
45
  "/mcp",
43
46
  "/.well-known/oauth-authorization-server",
@@ -46,8 +49,6 @@ _MCP_PATH_PREFIXES: tuple[str, ...] = (
46
49
  "/o/",
47
50
  )
48
51
 
49
- # Headers MCP clients legitimately send. ``MCP-Protocol-Version`` and
50
- # ``MCP-Session-Id`` are part of the streamable HTTP transport spec.
51
52
  _ALLOWED_REQUEST_HEADERS = (
52
53
  "Authorization, Content-Type, MCP-Protocol-Version, MCP-Session-Id"
53
54
  )
@@ -63,13 +64,12 @@ def _allowed_origins() -> frozenset[str]:
63
64
  )
64
65
 
65
66
 
66
- def _path_is_mcp(path: str) -> bool:
67
+ def _path_needs_cors(path: str) -> bool:
67
68
  return any(path.startswith(prefix) for prefix in _MCP_PATH_PREFIXES)
68
69
 
69
70
 
70
71
  def _apply_cors_headers(response: HttpResponse, origin: str) -> None:
71
72
  response["Access-Control-Allow-Origin"] = origin
72
- response["Access-Control-Allow-Credentials"] = "true"
73
73
  response["Access-Control-Allow-Methods"] = _ALLOWED_METHODS
74
74
  response["Access-Control-Allow-Headers"] = _ALLOWED_REQUEST_HEADERS
75
75
  response["Access-Control-Expose-Headers"] = _EXPOSED_RESPONSE_HEADERS
@@ -84,7 +84,7 @@ class SBAdminMCPCorsMiddleware:
84
84
  self.get_response = get_response
85
85
 
86
86
  def __call__(self, request):
87
- if not _path_is_mcp(request.path):
87
+ if not _path_needs_cors(request.path):
88
88
  return self.get_response(request)
89
89
 
90
90
  origin = request.META.get("HTTP_ORIGIN", "")
@@ -0,0 +1,34 @@
1
+ """Minimal DOT validator for the SBAdmin MCP OAuth server.
2
+
3
+ ``OAUTH2_PROVIDER["ALLOWED_REDIRECT_URI_SCHEMES"]`` is a global, host-blind
4
+ scheme list. Allowing ``"http"`` so a local (``http://localhost``) dashboard
5
+ can register a redirect URI would otherwise permit an http redirect to *any*
6
+ host. This validator narrows http to loopback hosts (RFC 8252 §7.3); https and
7
+ native custom schemes (``cursor://``, ``claude://``) are unaffected.
8
+
9
+ Wire it in as ``OAUTH2_PROVIDER["OAUTH2_VALIDATOR_CLASS"]``, or subclass it if
10
+ the deployment needs further customization.
11
+ """
12
+
13
+ from __future__ import annotations
14
+
15
+ from urllib.parse import urlsplit
16
+
17
+ from oauth2_provider.oauth2_validators import OAuth2Validator
18
+
19
+ LOOPBACK_HOSTS = frozenset({"localhost", "127.0.0.1", "::1"})
20
+
21
+
22
+ def is_non_loopback_http(redirect_uri: str) -> bool:
23
+ """True for an ``http://`` URI whose host is not a loopback literal."""
24
+ parts = urlsplit(redirect_uri)
25
+ return parts.scheme == "http" and parts.hostname not in LOOPBACK_HOSTS
26
+
27
+
28
+ class SBAdminMCPOAuth2Validator(OAuth2Validator):
29
+ def validate_redirect_uri(self, client_id, redirect_uri, request, *args, **kwargs):
30
+ if is_non_loopback_http(redirect_uri):
31
+ return False
32
+ return super().validate_redirect_uri(
33
+ client_id, redirect_uri, request, *args, **kwargs
34
+ )
@@ -28,6 +28,8 @@ from django.views.decorators.csrf import csrf_exempt
28
28
  from django.views.decorators.http import require_GET, require_POST
29
29
  from oauth2_provider.models import get_application_model
30
30
 
31
+ from django_smartbase_admin.mcp.oauth.validators import is_non_loopback_http
32
+
31
33
  # Single scope granting full read-write access to the SBAdmin MCP tools.
32
34
  # Tool-level authorization is the staff gate plus Django model permissions;
33
35
  # the scope is not split read/write, so it must not imply read-only.
@@ -95,6 +97,17 @@ def register(request: HttpRequest) -> JsonResponse:
95
97
  },
96
98
  status=400,
97
99
  )
100
+ # http is accepted only for loopback (RFC 8252 §7.3); reject here so a
101
+ # non-loopback http URI can't be registered, matching the authorize-time
102
+ # check in SBAdminMCPOAuth2Validator.
103
+ if any(is_non_loopback_http(uri) for uri in redirect_uris):
104
+ return JsonResponse(
105
+ {
106
+ "error": "invalid_redirect_uri",
107
+ "error_description": "http redirect URIs are allowed only for loopback hosts",
108
+ },
109
+ status=400,
110
+ )
98
111
 
99
112
  Application = get_application_model()
100
113
  app = Application(
@@ -0,0 +1,56 @@
1
+ """CORS middleware: which origins/paths get headers, and the no-credentials default.
2
+
3
+ The dashboard + browser MCP clients authenticate with a Bearer token and a
4
+ public-client PKCE OAuth flow, so no cross-origin request needs cookies. The
5
+ middleware must therefore not advertise credentials by default, and must keep
6
+ the cookie-authed (navigation-only) authorize endpoint off the CORS surface.
7
+ """
8
+
9
+ from __future__ import annotations
10
+
11
+ from django.http import HttpResponse
12
+ from django.test import RequestFactory, SimpleTestCase, override_settings
13
+
14
+ from django_smartbase_admin.mcp.middleware import SBAdminMCPCorsMiddleware
15
+
16
+ ORIGIN = "http://localhost:8010"
17
+
18
+
19
+ @override_settings(SBADMIN_MCP_ALLOWED_ORIGINS=[ORIGIN])
20
+ class CorsMiddlewareTests(SimpleTestCase):
21
+ def _send(self, path, *, origin=ORIGIN, method="post", preflight=False):
22
+ rf = RequestFactory()
23
+ extra = {"HTTP_ORIGIN": origin} if origin else {}
24
+ if preflight:
25
+ extra["HTTP_ACCESS_CONTROL_REQUEST_METHOD"] = "POST"
26
+ request = rf.options(path, **extra)
27
+ else:
28
+ request = getattr(rf, method)(path, **extra)
29
+ middleware = SBAdminMCPCorsMiddleware(lambda r: HttpResponse("ok"))
30
+ return middleware(request)
31
+
32
+ def test_allowed_origin_gets_cors_without_credentials_by_default(self):
33
+ resp = self._send("/mcp/")
34
+ self.assertEqual(resp["Access-Control-Allow-Origin"], ORIGIN)
35
+ self.assertNotIn("Access-Control-Allow-Credentials", resp)
36
+ self.assertIn("Origin", resp["Vary"])
37
+
38
+ pre = self._send("/mcp/", preflight=True)
39
+ self.assertEqual(pre.status_code, 204)
40
+ self.assertEqual(pre["Access-Control-Allow-Origin"], ORIGIN)
41
+ self.assertNotIn("Access-Control-Allow-Credentials", pre)
42
+
43
+ def test_mcp_and_oauth_paths_are_decorated(self):
44
+ for path in ("/mcp/", "/o/token/", "/.well-known/oauth-authorization-server"):
45
+ self.assertEqual(
46
+ self._send(path, method="get")["Access-Control-Allow-Origin"], ORIGIN
47
+ )
48
+
49
+ def test_disallowed_origin_and_unrelated_paths_get_no_cors(self):
50
+ self.assertNotIn(
51
+ "Access-Control-Allow-Origin",
52
+ self._send("/mcp/", origin="http://evil.example"),
53
+ )
54
+ self.assertNotIn(
55
+ "Access-Control-Allow-Origin", self._send("/admin/", method="get")
56
+ )
@@ -0,0 +1,79 @@
1
+ """Loopback-only http redirect URIs — the validator gate and the DCR endpoint.
2
+
3
+ ``ALLOWED_REDIRECT_URI_SCHEMES`` must keep "http" so a local dashboard can
4
+ register a loopback redirect, but http to any other host must be refused. Both
5
+ the authorize-time validator and the registration endpoint enforce that.
6
+ """
7
+
8
+ from __future__ import annotations
9
+
10
+ import json
11
+ from types import SimpleNamespace
12
+ from unittest.mock import patch
13
+
14
+ from django.test import RequestFactory, TestCase
15
+ from oauth2_provider.oauth2_validators import OAuth2Validator
16
+
17
+ from django_smartbase_admin.mcp.oauth.validators import (
18
+ SBAdminMCPOAuth2Validator,
19
+ is_non_loopback_http,
20
+ )
21
+ from django_smartbase_admin.mcp.oauth.views import register
22
+
23
+
24
+ class LoopbackRedirectTests(TestCase):
25
+ def test_is_non_loopback_http_truth_table(self):
26
+ for uri in (
27
+ "http://evil.example/cb",
28
+ "http://192.168.0.5:8010/",
29
+ "http://example.com/",
30
+ ):
31
+ self.assertTrue(is_non_loopback_http(uri), uri)
32
+ for uri in (
33
+ "http://localhost:8010/",
34
+ "http://127.0.0.1/cb",
35
+ "http://[::1]:8010/",
36
+ "https://anything.example/cb",
37
+ "cursor://callback",
38
+ ):
39
+ self.assertFalse(is_non_loopback_http(uri), uri)
40
+
41
+ def test_validator_rejects_non_loopback_http_only(self):
42
+ validator = SBAdminMCPOAuth2Validator()
43
+ with patch.object(
44
+ OAuth2Validator, "validate_redirect_uri", return_value=True
45
+ ) as parent:
46
+ self.assertFalse(
47
+ validator.validate_redirect_uri(
48
+ "c", "http://evil.example/cb", SimpleNamespace()
49
+ )
50
+ )
51
+ parent.assert_not_called()
52
+ with patch.object(
53
+ OAuth2Validator, "validate_redirect_uri", return_value=True
54
+ ) as parent:
55
+ self.assertTrue(
56
+ validator.validate_redirect_uri(
57
+ "c", "http://localhost:8010/", SimpleNamespace()
58
+ )
59
+ )
60
+ parent.assert_called_once()
61
+
62
+ def test_dcr_register_enforces_loopback_for_http(self):
63
+ rf = RequestFactory()
64
+
65
+ def _register(uris):
66
+ request = rf.post(
67
+ "/oauth/register",
68
+ data=json.dumps({"redirect_uris": uris}),
69
+ content_type="application/json",
70
+ )
71
+ return register(request)
72
+
73
+ bad = _register(["http://evil.example/cb"])
74
+ self.assertEqual(bad.status_code, 400)
75
+ self.assertEqual(json.loads(bad.content)["error"], "invalid_redirect_uri")
76
+
77
+ ok = _register(["http://localhost:8010/"])
78
+ self.assertEqual(ok.status_code, 201)
79
+ self.assertIn("client_id", json.loads(ok.content))