django-smartbase-admin 1.0.41__py3-none-any.whl → 1.0.43__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -147,7 +147,6 @@ export default class Datepicker {
147
147
  },
148
148
  '.js-datetimepicker': {
149
149
  enableTime: true,
150
- dateFormat: "d.m.Y H:i",
151
150
  allowInput: true,
152
151
  time_24hr: true,
153
152
  plugins: [
@@ -8,6 +8,20 @@ export class ViewsModule extends SBAdminTableModule {
8
8
  return true
9
9
  }
10
10
 
11
+ // Recursively sort object keys for consistent JSON.stringify output
12
+ sortObjectKeys(obj) {
13
+ if (obj === null || typeof obj !== 'object') {
14
+ return obj
15
+ }
16
+ if (Array.isArray(obj)) {
17
+ return obj.map(item => this.sortObjectKeys(item))
18
+ }
19
+ return Object.keys(obj).sort().reduce((sorted, key) => {
20
+ sorted[key] = this.sortObjectKeys(obj[key])
21
+ return sorted
22
+ }, {})
23
+ }
24
+
11
25
  filterParamsForCompare(params) {
12
26
  this.COMPARE_IGNORE_KEYS.forEach(key_to_remove => {
13
27
  unset(params, key_to_remove)
@@ -15,12 +29,18 @@ export class ViewsModule extends SBAdminTableModule {
15
29
  return params
16
30
  }
17
31
 
32
+ // Get normalized JSON string for comparison (sorted keys)
33
+ normalizeForCompare(params) {
34
+ return JSON.stringify(this.sortObjectKeys(this.filterParamsForCompare(params)))
35
+ }
36
+
18
37
  refreshViewButtons() {
19
- const urlParamsString = JSON.stringify(this.filterParamsForCompare(JSON.parse(this.table.getUrlParamsStringForSave())))
20
- const searchParams = decodeURI(urlParamsString)
38
+ const urlParams = JSON.parse(this.table.getUrlParamsStringForSave())
39
+ const urlParamsNormalized = this.normalizeForCompare(urlParams)
40
+ const searchParams = decodeURI(JSON.stringify(this.filterParamsForCompare(urlParams)))
21
41
  let saveButton = document.getElementById('save-view-modal-button')
22
42
  this.selectedViewParams = this.table.getAllParamsFromUrl()[this.table.viewId]
23
- let selectedParams = JSON.stringify(this.filterParamsForCompare(this.selectedViewParams))
43
+ const selectedParamsNormalized = this.normalizeForCompare(this.selectedViewParams)
24
44
 
25
45
  let selectedView = null
26
46
  if (saveButton) {
@@ -31,9 +51,10 @@ export class ViewsModule extends SBAdminTableModule {
31
51
  if(!item.dataset.params) {
32
52
  return
33
53
  }
34
- const itemParams = JSON.stringify(this.filterParamsForCompare(JSON.parse(item.dataset.params)))
35
- const sameAsUrlParams = (itemParams === searchParams)
36
- const sameAsSelectedParams = selectedParams === itemParams
54
+ const itemParamsNormalized = this.normalizeForCompare(JSON.parse(item.dataset.params))
55
+ // Fast string comparison with sorted keys
56
+ const sameAsUrlParams = (itemParamsNormalized === urlParamsNormalized)
57
+ const sameAsSelectedParams = (selectedParamsNormalized === itemParamsNormalized)
37
58
  item.classList.remove("active")
38
59
  item.classList.remove("changed")
39
60
 
@@ -3,6 +3,7 @@
3
3
  <select form="{{ filter_widget.view_id }}-filter-form" type="radio" class="input pl-10 pr-38"
4
4
  id="{{ filter_widget.input_id }}" name="{{ filter_widget.input_name }}"
5
5
  {% if not all_filters_visible %}disabled{% endif %}>
6
+ <option value="">------</option>
6
7
  {% for choice in filter_widget.choices %}
7
8
  <option value="{{ choice.0 }}"{% if filter_widget.get_default_value == choice.0 %} selected{% endif %}>{{ choice.1 }}</option>
8
9
  {% endfor %}
@@ -74,7 +74,6 @@
74
74
  {% if inline_admin_formset.has_change_permission %}{% trans "Change" %}{% else %}{% trans "View" %}{% endif %}
75
75
  </a>
76
76
  {% endif %}
77
- {% if inline_admin_form.show_url %}<a href="{{ inline_admin_form.absolute_url }}" class="ml-8">{% trans "View on site" %}</a>{% endif %}
78
77
  <div class="ml-8 flex items-center gap-8">
79
78
  {% if inline_admin_formset.formset.can_delete %}
80
79
  {% if inline_admin_form.original %}
@@ -90,8 +89,15 @@
90
89
  <span><a class="inline-deletelink djn-remove-handler {{ inline_admin_formset.handler_classes|join:" " }}" href="javascript:void(0)">{% trans 'Delete' %}</a></span>
91
90
  {% endif %}
92
91
  {% endif %}
92
+ {% if inline_admin_form.show_url %}
93
+ <a href="{{ inline_admin_form.absolute_url }}" class="btn btn-empty btn-icon" title="{% trans "View on site" %}" target="_blank">
94
+ <svg class="w-20 h-20 text-dark-400">
95
+ <use xlink:href="#Preview-open"></use>
96
+ </svg>
97
+ </a>
98
+ {% endif %}
93
99
  <div class="w-2 bg-dark-200 self-stretch"></div>
94
- <button type="button" class="btn btn-empty js-collapse-stacked-inline" aria-expanded="{{ context_data.default_collapsed|yesno:"false,true" }}">
100
+ <button type="button" class="btn btn-empty btn-icon js-collapse-stacked-inline" aria-expanded="{{ context_data.default_collapsed|yesno:"false,true" }}">
95
101
  <svg class="w-20 h-20 text-dark-400">
96
102
  <use xlink:href="#Down"></use>
97
103
  </svg>
@@ -109,7 +115,7 @@
109
115
 
110
116
  <div class="collapse flex flex-col {% if not context_data.default_collapsed %}show{% endif %}">
111
117
  {% for fieldset in inline_admin_form %}
112
- <div class="pt-0 pb-24 px-24 stacked-row{% if not forloop.first %} border-t border-dark-200{% endif %}">
118
+ <div class="pb-24 px-24 stacked-row{% if not forloop.first %} pt-24 border-t border-dark-200{% else %} pt-0{% endif %}">
113
119
  {% include inline_admin_formset.opts.fieldset_template %}
114
120
  </div>
115
121
  {% endfor %}
@@ -8,7 +8,7 @@
8
8
  <meta name="robots" content="nofollow"/>
9
9
  <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=5.0">
10
10
 
11
- <title>{% block title %}SBAdmin{% endblock %}</title>
11
+ <title>{% block title %}{{ admin_title }}{% endblock %}</title>
12
12
 
13
13
  {% block icons %}
14
14
  <link rel="apple-touch-icon" sizes="180x180" href="{% static 'sb_admin/favicon/apple-touch-icon.png' %}">
@@ -110,3 +110,97 @@ def import_with_injection(from_import, import_name):
110
110
  return _pluck_classes([overridden_module, original_module], [import_name])[0]
111
111
  else:
112
112
  return _pluck_classes([original_module], [import_name])[0]
113
+
114
+
115
+ # Mapping of Django date format tokens to flatpickr format tokens
116
+ # Only tokens that differ between Django and flatpickr are included
117
+ # Reference: https://docs.djangoproject.com/en/stable/ref/templates/builtins/#date
118
+ # Reference: https://flatpickr.js.org/formatting/
119
+ DJANGO_TO_FLATPICKR_TOKEN_MAP = {
120
+ # Time tokens
121
+ "A": "K", # Django AM/PM -> flatpickr AM/PM
122
+ "a": "K", # Django am/pm (lowercase) -> flatpickr K (no lowercase option)
123
+ "G": "H", # Django 24-hour no padding -> flatpickr H (closest, has padding)
124
+ "g": "h", # Django 12-hour no padding -> flatpickr h
125
+ "s": "S", # Django seconds -> flatpickr S (case difference)
126
+ # Month tokens
127
+ "N": "M", # Django month abbreviation (AP style) -> flatpickr short month
128
+ "b": "M", # Django lowercase month abbreviation -> flatpickr short month
129
+ "E": "F", # Django locale month name -> flatpickr full month name
130
+ # Day tokens
131
+ "j": "j", # Same: day without leading zero
132
+ "S": "", # Django ordinal suffix (st, nd, rd, th) -> no flatpickr equivalent
133
+ "w": "w", # Same: day of week (0-6)
134
+ # Week/Year tokens
135
+ "o": "Y", # Django ISO-8601 week-numbering year -> flatpickr year (approximate)
136
+ "W": "W", # Same: ISO-8601 week number
137
+ # Timezone tokens - flatpickr doesn't support timezones
138
+ "e": "", # Django timezone name -> not supported
139
+ "O": "", # Django UTC offset (+0200) -> not supported
140
+ "T": "", # Django timezone abbreviation -> not supported
141
+ "Z": "", # Django timezone offset in seconds -> not supported
142
+ # The 'P' token (12-hour format with minutes and a.m./p.m.) is complex
143
+ # We handle it separately in the conversion function
144
+ }
145
+
146
+ # Tokens that are the same in both Django and flatpickr (for reference):
147
+ # d - day with leading zero (01-31)
148
+ # D - short day name (Mon, Tue)
149
+ # l - full day name (Monday, Tuesday)
150
+ # m - month with leading zero (01-12)
151
+ # n - month without leading zero (1-12)
152
+ # M - short month name (Jan, Feb)
153
+ # F - full month name (January, February)
154
+ # y - 2-digit year (99)
155
+ # Y - 4-digit year (1999)
156
+ # H - 24-hour with leading zero (00-23)
157
+ # h - 12-hour with leading zero in flatpickr (but different in Django!)
158
+ # i - minutes with leading zero (00-59)
159
+
160
+
161
+ def convert_django_to_flatpickr_format(django_format):
162
+ """
163
+ Convert a Django date/datetime format string to flatpickr format string.
164
+
165
+ Django and flatpickr use similar but not identical format tokens.
166
+ This function handles the conversion for tokens that differ.
167
+
168
+ Args:
169
+ django_format: A Django date format string (e.g., "d.m.Y H:i")
170
+
171
+ Returns:
172
+ A flatpickr-compatible format string
173
+
174
+ Example:
175
+ >>> convert_django_to_flatpickr_format("d.m.Y H:i")
176
+ 'd.m.Y H:i'
177
+ >>> convert_django_to_flatpickr_format("m/d/Y g:i A")
178
+ 'm/d/Y h:i K'
179
+ """
180
+ if not django_format:
181
+ return django_format
182
+
183
+ result = []
184
+ i = 0
185
+ length = len(django_format)
186
+
187
+ while i < length:
188
+ char = django_format[i]
189
+
190
+ # Handle Django's 'P' token specially (12-hour time with a.m./p.m.)
191
+ # Convert to flatpickr equivalent: h:i K
192
+ if char == "P":
193
+ result.append("h:i K")
194
+ i += 1
195
+ continue
196
+
197
+ # Check if this character is a Django token that needs conversion
198
+ if char in DJANGO_TO_FLATPICKR_TOKEN_MAP:
199
+ result.append(DJANGO_TO_FLATPICKR_TOKEN_MAP[char])
200
+ else:
201
+ # Keep the character as-is (either same in both or a literal)
202
+ result.append(char)
203
+
204
+ i += 1
205
+
206
+ return "".join(result)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: django-smartbase-admin
3
- Version: 1.0.41
3
+ Version: 1.0.43
4
4
  Summary:
5
5
  Home-page: https://smartbase-sk.github.io/django-smartbase-admin-docs/
6
6
  License: MIT
@@ -3,19 +3,19 @@ django_smartbase_admin/actions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5
3
3
  django_smartbase_admin/actions/admin_action_list.py,sha256=UHeLe2z0qS5L8OIJsG-AjqzhwQpiooJ2xHG2NMVG7II,20115
4
4
  django_smartbase_admin/actions/advanced_filters.py,sha256=Vm8b6TAwNehR8INjolFG7pEYL4ADO7XUiVOWpb0btM0,13481
5
5
  django_smartbase_admin/admin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
- django_smartbase_admin/admin/admin_base.py,sha256=_LhpECtcP0NDb-0PEI3AY6WFYw94aCWGviCrrSl-R-s,49564
6
+ django_smartbase_admin/admin/admin_base.py,sha256=7731toPhozFLSx2EhPnLGSxjJs-ipzCISBwsr7bdEik,49683
7
7
  django_smartbase_admin/admin/site.py,sha256=bU71Zcts2hRcusZq1l44q9Mlr8jOEjGHeM6MNAaS6Gc,9903
8
- django_smartbase_admin/admin/widgets.py,sha256=4EiRb3vUxN6OZe3gfYidaSbbpxrdxYMmSrtoBW6DBS4,36154
8
+ django_smartbase_admin/admin/widgets.py,sha256=0xWfuuKcKltv0lJeQTULZ9zBpIAVXki5Xn_QmmIlNT8,37271
9
9
  django_smartbase_admin/apps.py,sha256=heZq5O2GHlkJdhUCHbRR7Nmm0irSxnL9NMqY43_O7V4,599
10
10
  django_smartbase_admin/compilemessages.py,sha256=-_FEFQlOvE4L8UzSuUxSxZQjgGlwL9IZtmg59fW_kIQ,342
11
11
  django_smartbase_admin/engine/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
12
  django_smartbase_admin/engine/actions.py,sha256=-8zz_57VM42VP1bQPSIXrLXOR8F8pV0t5def-Urxb1E,2208
13
- django_smartbase_admin/engine/admin_base_view.py,sha256=Zqd3UcPUFADQKbRLx30BpdKTXBuR6JQ8cWwgv9DlDGw,32219
13
+ django_smartbase_admin/engine/admin_base_view.py,sha256=M1pxi0LU8rGtCgmoWEmz25S1oiowzjn-LYfZLoklIzY,32300
14
14
  django_smartbase_admin/engine/admin_entrypoint_view.py,sha256=jfMfcYPfdre2abHfC4KIxaP_epJFuCeTcujGhGd4Tl4,624
15
15
  django_smartbase_admin/engine/admin_view.py,sha256=9wGffahDR3IYmhL9ZbX8uitwGdXdw5DIL5GnWBawmJM,4238
16
- django_smartbase_admin/engine/configuration.py,sha256=h_UBpzFyZPSzk9aNNH-V6xGsELjfHWOgQCO65LEf6nc,14049
16
+ django_smartbase_admin/engine/configuration.py,sha256=4CbvwzAM_tvrfvgjble4LAobTx3DkVR-h2tH4KFHEbE,14226
17
17
  django_smartbase_admin/engine/const.py,sha256=BP5I2UcCtV0bIlk_YUuVFHrDHRM9-gbCL0sJUX-q4Wo,2600
18
- django_smartbase_admin/engine/dashboard.py,sha256=aaeZkQkim6nIsrXTCFhFiQss1OyifZQNbC4fg15_Wac,24566
18
+ django_smartbase_admin/engine/dashboard.py,sha256=rr1GE3JgKLFZiZc1iSo0YvLEVMFT47v51eNjWdXWctg,24718
19
19
  django_smartbase_admin/engine/fake_inline.py,sha256=tGLX3yHANYBsVPcDk6yQqn8RN-JGdaV-RdHcxh9-61w,6190
20
20
  django_smartbase_admin/engine/field.py,sha256=AkcEs9hYqIJHy9cLgchWfC1wpWTRzFNm7byEIf0DuLU,10858
21
21
  django_smartbase_admin/engine/field_formatter.py,sha256=3NxapC_ee39saPKhJ4kHM3cQ604oG8E4m4On5P8xIZg,2513
@@ -68,11 +68,11 @@ django_smartbase_admin/static/sb_admin/dist/calendar_style.js,sha256=47DEQpj8HBS
68
68
  django_smartbase_admin/static/sb_admin/dist/chart.js,sha256=nBru0P3RvzaNeQch6qkuL1Wi_c9ICz94HXLXmyYTMW8,205022
69
69
  django_smartbase_admin/static/sb_admin/dist/chart.js.LICENSE.txt,sha256=m7M__mzLlrKDz-hky_AC848p_HzYWhziwCLIpXMsj4I,257
70
70
  django_smartbase_admin/static/sb_admin/dist/confirmation_modal.js,sha256=glK-x4oxSAHqiabqXmNFE3FRtzMbpg7TgZiKcPle9_o,1745
71
- django_smartbase_admin/static/sb_admin/dist/main.js,sha256=GOyDHndu9TO0_IORpyFcK5t2osBD7wWectgPMolLhqc,385952
71
+ django_smartbase_admin/static/sb_admin/dist/main.js,sha256=g6pvaiXdPuixRM398Sj-xCm_huRimrlNIkM2qlfSafA,385929
72
72
  django_smartbase_admin/static/sb_admin/dist/main.js.LICENSE.txt,sha256=Z8-1IrzhOFV3eE_WGR7SRfbzN9GRXsvfiU7_E_BkX-k,5600
73
73
  django_smartbase_admin/static/sb_admin/dist/main_style.css,sha256=tS-Usr6Wc0MWuNJm29fLh66RqWzGm1aqipNLdFIqpjk,178928
74
74
  django_smartbase_admin/static/sb_admin/dist/main_style.js,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
75
- django_smartbase_admin/static/sb_admin/dist/table.js,sha256=550M2DEFLGPBzJscTtGxCDny_uZ_PFEHSm7F9RVkV3A,593325
75
+ django_smartbase_admin/static/sb_admin/dist/table.js,sha256=CnviBvMc-mQlFgE7JEo5n-bb2sh-7gYIVNNSH2bVhAA,593606
76
76
  django_smartbase_admin/static/sb_admin/dist/table.js.LICENSE.txt,sha256=WOKSfEow5EUe0a78P0kcxdWcrQlqn2n6H8idNZqHVDk,462
77
77
  django_smartbase_admin/static/sb_admin/dist/translations.js,sha256=5PRY3zmbnQ9pH-FtNHmsZ5xmYLPOQiO_hR3CBxHIAIo,567
78
78
  django_smartbase_admin/static/sb_admin/dist/tree_widget.js,sha256=KjJhKnGfAAOmhtcL3NrlS1ejf2kw5SDfFpP17v0JekA,6872
@@ -538,7 +538,7 @@ django_smartbase_admin/static/sb_admin/src/js/chart.js,sha256=kAXTsM3pCasDDmj2Hf
538
538
  django_smartbase_admin/static/sb_admin/src/js/choices.js,sha256=Wi9uX67JvYCuVqgFJJboDbs8iGd_nFhTmeJMZUbHpyk,4901
539
539
  django_smartbase_admin/static/sb_admin/src/js/code.js,sha256=Q1jKpTsUZhxhaGDRrqHhs_jn9gZPYjB1xf7VSXfiCd0,486
540
540
  django_smartbase_admin/static/sb_admin/src/js/confirmation_modal.js,sha256=9xycy0sYJfT0SxeDucbOmvg9gHSrBo3KngZjCAHkVMM,3610
541
- django_smartbase_admin/static/sb_admin/src/js/datepicker.js,sha256=wnFhncPKMkodmf75jSd3PHIy9xO_WRFdxFjf6Qsgp7g,6710
541
+ django_smartbase_admin/static/sb_admin/src/js/datepicker.js,sha256=clFfeR289ctyDQrTsgj7TldL1C5bXFxxasdjuPblSxA,6669
542
542
  django_smartbase_admin/static/sb_admin/src/js/datepicker_plugins.js,sha256=DVIyCJpxn8Gx1mx3QHxbRN4nlpJRlilKix6BK_zcUVc,12382
543
543
  django_smartbase_admin/static/sb_admin/src/js/main.js,sha256=6Ty5URyrxhLMoZd9J2RUOf3ku3oWX31gg6fFeTZlFEA,20366
544
544
  django_smartbase_admin/static/sb_admin/src/js/multiselect.js,sha256=GuWjIpdkfvXi-oBNdK3gImjrzef4550MKMy71iYrywk,4066
@@ -559,7 +559,7 @@ django_smartbase_admin/static/sb_admin/src/js/table_modules/header_tabs_module.j
559
559
  django_smartbase_admin/static/sb_admin/src/js/table_modules/movable_columns_module.js,sha256=X0FQykK63v8vcE3-qZhkWZA2ajp8QTCLFv0PvkeLVvY,7694
560
560
  django_smartbase_admin/static/sb_admin/src/js/table_modules/selection_module.js,sha256=7H-G_XncTbOLTAIBalx8DIdMhut5Hqqi0wz-ZRg361s,7595
561
561
  django_smartbase_admin/static/sb_admin/src/js/table_modules/table_params_module.js,sha256=2-l4rsjDqaUZZzM7why-u21XbVNa9gFogehKTi8hIkE,11370
562
- django_smartbase_admin/static/sb_admin/src/js/table_modules/views_module.js,sha256=ZdirU9jt_aE_vkVXxMytZ3AaC0q6r57ECijdhV6j3-M,3393
562
+ django_smartbase_admin/static/sb_admin/src/js/table_modules/views_module.js,sha256=l1LGXCiguXWWGVTj2qdsqP1CTqHyou3zPpSjAMxDrYI,4185
563
563
  django_smartbase_admin/static/sb_admin/src/js/translations.js,sha256=GEizlr_D5yDj00i7jKENkWfDr6gZcg4RQ1Nek22WP4g,954
564
564
  django_smartbase_admin/static/sb_admin/src/js/tree_widget.js,sha256=LEu8LNycEIK4drqfUORXDOzFW2EzYg6AWmlM4H35VdM,18426
565
565
  django_smartbase_admin/static/sb_admin/src/js/utils.js,sha256=8hBr_dr1F_SQKLvuh9Z4t3q3KnSP2cmth7-x0Ih2T4w,5500
@@ -616,7 +616,7 @@ django_smartbase_admin/templates/sb_admin/filter_widgets/advanced_filters/string
616
616
  django_smartbase_admin/templates/sb_admin/filter_widgets/advanced_filters/tree_select_filter.html,sha256=I__J12tJ7pi2hEzXCTXKY3vtP-C6V3aeVpHkkz_t7kE,65
617
617
  django_smartbase_admin/templates/sb_admin/filter_widgets/autocomplete_field.html,sha256=biufhvpytO3PtpzuwlEm0mtns5L4KVVPfayg5r-ZSbM,1071
618
618
  django_smartbase_admin/templates/sb_admin/filter_widgets/boolean_field.html,sha256=aFOWIvxYPcmnZmVvcIyT-BjE3dLAmQojem1TzWUTLTY,64
619
- django_smartbase_admin/templates/sb_admin/filter_widgets/choice_field.html,sha256=tOFTMskFGrqbR9qNnKRPV3dlcPTzE4UFZp8nqrfb3yk,645
619
+ django_smartbase_admin/templates/sb_admin/filter_widgets/choice_field.html,sha256=G7h5LMPnw3tmg3XTf4WwPgg3mnwtY6_jiqYT-hU5IV4,690
620
620
  django_smartbase_admin/templates/sb_admin/filter_widgets/date_field.html,sha256=WR2fqKv8P2XG2xCpE0FXgKfl4gj3Gmlo3ZAOep1xYQY,1144
621
621
  django_smartbase_admin/templates/sb_admin/filter_widgets/multiple_choice_field.html,sha256=q9bERN_gP793_fizMH-w2wOl7j_6PLz-jUJG1iXkGyw,2052
622
622
  django_smartbase_admin/templates/sb_admin/filter_widgets/number_range_field.html,sha256=3d8yYpmvgQZUxCXw80lNpxeLCLTfIy8Xumg4X1nzJFc,1162
@@ -637,7 +637,7 @@ django_smartbase_admin/templates/sb_admin/includes/notifications.html,sha256=ug4
637
637
  django_smartbase_admin/templates/sb_admin/includes/readonly_boolean_field.html,sha256=sCU7DKBeWVD7ILcOAd20APS3gTBLBwXJpDjzTETwp5M,412
638
638
  django_smartbase_admin/templates/sb_admin/includes/readonly_field.html,sha256=GeimINBKO9O0QU-AjDGphwsfhsPX-YeMTei83zWtsuc,336
639
639
  django_smartbase_admin/templates/sb_admin/includes/table_inline_delete_button.html,sha256=aAkU6-T3tUrgshrZxny5QSqFUxPI59EKynxfKOMShNc,1170
640
- django_smartbase_admin/templates/sb_admin/inlines/stacked_inline.html,sha256=f8GFJcLfd8hQG4jOiHHdITlF6OVwRuM7BnBzjGVqu_k,9599
640
+ django_smartbase_admin/templates/sb_admin/inlines/stacked_inline.html,sha256=7nITTakuIaXxGhUYt5Ww-WltxXG7_wKzz-KBrWCUUxI,10010
641
641
  django_smartbase_admin/templates/sb_admin/inlines/table_inline.html,sha256=o35YgaxSdYA6MORuyHJDi3GzE8qwWrXkGCYoMJyAmP0,17530
642
642
  django_smartbase_admin/templates/sb_admin/inlines/table_inline_paginated.html,sha256=2I59KWM_7yvchNjlIWHaHklrklnNsJBwaLlp9mZUYfQ,3046
643
643
  django_smartbase_admin/templates/sb_admin/integrations/cms/page_list.html,sha256=juoU5UaqPozIgRX5EJyWpm2-mb1hqM2pfBoePZ1Vs-I,18190
@@ -655,7 +655,7 @@ django_smartbase_admin/templates/sb_admin/partials/messages/alert_warning.html,s
655
655
  django_smartbase_admin/templates/sb_admin/partials/modal/modal.html,sha256=SaJkpGaEa_hSSmfL4yqrXfMOf3rvNsF6G2vOX6ngpJw,1508
656
656
  django_smartbase_admin/templates/sb_admin/partials/modal/modal_content.html,sha256=_1wrb2GsCvtwQPDl5CUVRgFdcsor25ceHi8UDsPAWt8,3251
657
657
  django_smartbase_admin/templates/sb_admin/sb_admin_base.html,sha256=rOvgXXEKvALAw745J1CvR7Pb__AFvKLH7l965-UUUvk,2854
658
- django_smartbase_admin/templates/sb_admin/sb_admin_base_no_sidebar.html,sha256=DKdhX64iBKQ0hqU3_CVlc-zqI-0TfRzQaBO7VhJBbW8,4239
658
+ django_smartbase_admin/templates/sb_admin/sb_admin_base_no_sidebar.html,sha256=QJ6SMVSlS21HNCB3wnMkkKYI709256FtBuqxSug44I0,4249
659
659
  django_smartbase_admin/templates/sb_admin/sb_admin_js_trans.html,sha256=ZXPJ6tMFo-YUNVlYcWH93J2O06aoOeBqyPMaZ7sI2-k,1082
660
660
  django_smartbase_admin/templates/sb_admin/sprites/sb_admin.svg,sha256=l1GoG6DgKk170J_1GSlRV0HqmXi0pLjJ-g4fJWL8NDM,66446
661
661
  django_smartbase_admin/templates/sb_admin/submit_line.html,sha256=cslitlZCL2UlRI8fyEftpSHoVTAX2eqC-oVkfulxZWU,3254
@@ -710,14 +710,14 @@ django_smartbase_admin/templatetags/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQ
710
710
  django_smartbase_admin/templatetags/base.py,sha256=XF1wUQxUjULXfdlV-PeHvITfbw65LTHjlDzRikJa_F4,1520
711
711
  django_smartbase_admin/templatetags/sb_admin_tags.py,sha256=yHp-M0IVdjYs14P-FeEQz6d-tv3zti0uvQ0Y08Hxr84,10613
712
712
  django_smartbase_admin/urls.py,sha256=Bjdewssljt0LIefjixBem9JN0kkghPvmrIETj3GdXbY,17
713
- django_smartbase_admin/utils.py,sha256=1SHuRAeEvXsPOHdE525o9iHTLY7DT6auUCx2mBa_w2Q,3400
713
+ django_smartbase_admin/utils.py,sha256=FQQpkX0xFed3MV2_La1LSMd9fhYzBH-mAnxInPMztmY,6963
714
714
  django_smartbase_admin/views/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
715
715
  django_smartbase_admin/views/dashboard_view.py,sha256=Rgdq3r3JoAGfi2oUC1N_8ZE5KXuI5S4MmRxIkT-EN78,1812
716
716
  django_smartbase_admin/views/global_filter_view.py,sha256=eYo1moJGyi7jc2cPDA5ZBiEgA7Hmc-DxbQvbqUpDkg8,1127
717
717
  django_smartbase_admin/views/media_view.py,sha256=5BLWXuzynF7nM34t-mf2BQSRN5ojY8HxpLIqt7Jiq9g,292
718
718
  django_smartbase_admin/views/translations_view.py,sha256=hktmkJIZ0EJxgnzjHLIoRDY0ckFa5wkbaoFZg32UWYw,20441
719
719
  django_smartbase_admin/views/user_config_view.py,sha256=hUSmwxgGXJog7vhiD-zGpm6smo31sLNzW2VoXapHIjc,1865
720
- django_smartbase_admin-1.0.41.dist-info/LICENSE.md,sha256=okRGMBOYvyhprt2eTpX_QXqpzC0MODF-U7zX-4fKPjQ,1078
721
- django_smartbase_admin-1.0.41.dist-info/METADATA,sha256=adzmtZJHtyzXfJEnleM3jp_Lw01Dn6WTap2_oP5wEb4,6697
722
- django_smartbase_admin-1.0.41.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
723
- django_smartbase_admin-1.0.41.dist-info/RECORD,,
720
+ django_smartbase_admin-1.0.43.dist-info/LICENSE.md,sha256=okRGMBOYvyhprt2eTpX_QXqpzC0MODF-U7zX-4fKPjQ,1078
721
+ django_smartbase_admin-1.0.43.dist-info/METADATA,sha256=xx6of7-GNhPNPMcKOtXIMXdVcMm11nVpfAWim8Xp0CQ,6697
722
+ django_smartbase_admin-1.0.43.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
723
+ django_smartbase_admin-1.0.43.dist-info/RECORD,,