django-smartbase-admin 0.2.72__py3-none-any.whl → 0.2.74__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.
- django_smartbase_admin/actions/admin_action_list.py +10 -1
- django_smartbase_admin/admin/admin_base.py +30 -15
- django_smartbase_admin/admin/site.py +1 -2
- django_smartbase_admin/admin/widgets.py +36 -8
- django_smartbase_admin/engine/actions.py +20 -16
- django_smartbase_admin/engine/admin_base_view.py +47 -5
- django_smartbase_admin/engine/field.py +6 -1
- django_smartbase_admin/engine/modal_view.py +8 -4
- django_smartbase_admin/services/thread_local.py +6 -19
- django_smartbase_admin/services/views.py +47 -17
- django_smartbase_admin/static/sb_admin/dist/main_style.css +1 -1
- django_smartbase_admin/static/sb_admin/src/css/components/_query-builder.css +4 -0
- django_smartbase_admin/templates/sb_admin/integrations/sorting/change_list.html +2 -2
- django_smartbase_admin/templates/sb_admin/widgets/array.html +0 -1
- django_smartbase_admin/templates/sb_admin/widgets/attributes.html +67 -0
- {django_smartbase_admin-0.2.72.dist-info → django_smartbase_admin-0.2.74.dist-info}/METADATA +1 -1
- {django_smartbase_admin-0.2.72.dist-info → django_smartbase_admin-0.2.74.dist-info}/RECORD +19 -18
- {django_smartbase_admin-0.2.72.dist-info → django_smartbase_admin-0.2.74.dist-info}/LICENSE.md +0 -0
- {django_smartbase_admin-0.2.72.dist-info → django_smartbase_admin-0.2.74.dist-info}/WHEEL +0 -0
|
@@ -46,7 +46,6 @@
|
|
|
46
46
|
input.value = arrayValue.join(arrayInputsWrapper.dataset.delimeter)
|
|
47
47
|
}
|
|
48
48
|
window.addArrayField = window.addArrayField || function (id) {
|
|
49
|
-
console.log(id)
|
|
50
49
|
const template = document.getElementById(id + '_template').children[0];
|
|
51
50
|
const arrayInputsWrapper = document.getElementById(id + '_array_wrapper');
|
|
52
51
|
const newArrayInput = template.cloneNode(true);
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
{% load i18n %}
|
|
2
|
+
|
|
3
|
+
{% include 'sb_admin/widgets/includes/field_label.html' %}
|
|
4
|
+
<div class="hidden" id="{{ widget.attrs.id }}_wrapper">
|
|
5
|
+
{% include "sb_admin/widgets/input.html" %}
|
|
6
|
+
</div>
|
|
7
|
+
<div id="{{ widget.attrs.id }}_dict_wrapper">
|
|
8
|
+
{% for dict_item in dict_widgets %}
|
|
9
|
+
<div class="flex mb-8">
|
|
10
|
+
<div class="flex dict_line">
|
|
11
|
+
{% include "sb_admin/widgets/input.html" with widget=dict_item.key %}
|
|
12
|
+
{% include "sb_admin/widgets/input.html" with widget=dict_item.value %}
|
|
13
|
+
</div>
|
|
14
|
+
<button type="button" class="w-40 h-40 flex-center text-dark flex-shrink-0 ml-4" onclick="this.parentElement.remove();window.recalculateDictField('{{ widget.attrs.id }}')">
|
|
15
|
+
<svg class="w-20 h-20">
|
|
16
|
+
<use xlink:href="#Delete"></use>
|
|
17
|
+
</svg>
|
|
18
|
+
</button>
|
|
19
|
+
</div>
|
|
20
|
+
{% endfor %}
|
|
21
|
+
</div>
|
|
22
|
+
<div class='hidden'
|
|
23
|
+
id="{{ widget.attrs.id }}_template">
|
|
24
|
+
<div class="flex mb-8">
|
|
25
|
+
<div class="flex dict_line">
|
|
26
|
+
{% include "sb_admin/widgets/input.html" with widget=template_widget %}
|
|
27
|
+
{% include "sb_admin/widgets/input.html" with widget=template_widget %}
|
|
28
|
+
</div>
|
|
29
|
+
<button type="button" class="w-40 h-40 flex-center text-dark flex-shrink-0 ml-4" onclick="this.parentElement.remove();window.recalculateDictField('{{ widget.attrs.id }}')">
|
|
30
|
+
<svg class="w-20 h-20">
|
|
31
|
+
<use xlink:href="#Delete"></use>
|
|
32
|
+
</svg>
|
|
33
|
+
</button>
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
<button class='btn btn-small btn-icon' type="button" onclick="addDictField('{{ widget.attrs.id }}')">
|
|
37
|
+
<svg class="w-20 h-20 text-dark mr-12"
|
|
38
|
+
aria-expanded="false">
|
|
39
|
+
<use xlink:href="#Plus"></use>
|
|
40
|
+
</svg>
|
|
41
|
+
<span>{% trans "Add" %}</span>
|
|
42
|
+
</button>
|
|
43
|
+
<script>
|
|
44
|
+
window.recalculateDictField = window.recalculateDictField || function (id) {
|
|
45
|
+
const input = document.getElementById(id + '_wrapper').querySelector('input');
|
|
46
|
+
const dictInputsWrapper = document.getElementById(id + '_dict_wrapper');
|
|
47
|
+
const dictInputLines = dictInputsWrapper.querySelectorAll('.dict_line');
|
|
48
|
+
const dictValue = {};
|
|
49
|
+
dictInputLines.forEach((dictInputLine) => {
|
|
50
|
+
dictValue[dictInputLine.children[0].value] = dictInputLine.children[1].value;
|
|
51
|
+
})
|
|
52
|
+
input.value = JSON.stringify(dictValue);
|
|
53
|
+
}
|
|
54
|
+
window.addDictField = window.addDictField || function (id) {
|
|
55
|
+
const template = document.getElementById(id + '_template').children[0];
|
|
56
|
+
const dictInputsWrapper = document.getElementById(id + '_dict_wrapper');
|
|
57
|
+
const newDictInputs = template.cloneNode(true);
|
|
58
|
+
dictInputsWrapper.appendChild(newDictInputs);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
document.addEventListener('DOMContentLoaded', () => {
|
|
62
|
+
document.getElementById('{{ widget.attrs.id }}_dict_wrapper').addEventListener('change', function() {
|
|
63
|
+
window.recalculateDictField('{{ widget.attrs.id }}')
|
|
64
|
+
})
|
|
65
|
+
});
|
|
66
|
+
</script>
|
|
67
|
+
{% include 'sb_admin/widgets/includes/help_text.html' %}
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
django_smartbase_admin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
2
|
django_smartbase_admin/actions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
|
-
django_smartbase_admin/actions/admin_action_list.py,sha256=
|
|
3
|
+
django_smartbase_admin/actions/admin_action_list.py,sha256=EWk0KTXDVVJDT8bh052xazukTpYFFOzrKTp36m1QNzE,19229
|
|
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=
|
|
7
|
-
django_smartbase_admin/admin/site.py,sha256=
|
|
8
|
-
django_smartbase_admin/admin/widgets.py,sha256=
|
|
6
|
+
django_smartbase_admin/admin/admin_base.py,sha256=9fN3c41fNkav7uQiGfEnJaiqYKfDk57VrlYgiN04DE8,40100
|
|
7
|
+
django_smartbase_admin/admin/site.py,sha256=VrJBhwgZsLa2GohvjnNL7m4dVR3S4Ou1V1UzfE1qOoQ,6577
|
|
8
|
+
django_smartbase_admin/admin/widgets.py,sha256=udNG3fqDSTKnbPpvY02qhanPoCm_Kgn7Bg8R3EjWJT4,15035
|
|
9
9
|
django_smartbase_admin/apps.py,sha256=3Wm88v1u-ejKVSRsdgsnOrjOfdlsp1qVULskabgH1iY,479
|
|
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
|
-
django_smartbase_admin/engine/actions.py,sha256=
|
|
13
|
-
django_smartbase_admin/engine/admin_base_view.py,sha256
|
|
12
|
+
django_smartbase_admin/engine/actions.py,sha256=n8PiG60Kj1ECHB4lfVH_jvHMyOjOZ-DvQfO9F2CuqW0,1733
|
|
13
|
+
django_smartbase_admin/engine/admin_base_view.py,sha256=ni1UV_nc_oeccRhKi9nyy520QB18nhZnmmcdaAIE6Hs,28475
|
|
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
16
|
django_smartbase_admin/engine/configuration.py,sha256=P3iSiPm9QBl9etTDJIWzo7DzOBCryGwWtbF288PEtus,8120
|
|
17
17
|
django_smartbase_admin/engine/const.py,sha256=vU_XMy76BYiw1tu88lw8UDGk-cW5oo62gh9mT36_2tk,2437
|
|
18
18
|
django_smartbase_admin/engine/dashboard.py,sha256=wrvX0GI-SII2pG0DX8Kvy4JFaM6h8e6R7KSCFddFC64,23642
|
|
19
19
|
django_smartbase_admin/engine/fake_inline.py,sha256=9C2_mltg2P9-xa3vuoo5X_RcFaCRpKGNSy7t1_iiasE,5802
|
|
20
|
-
django_smartbase_admin/engine/field.py,sha256=
|
|
20
|
+
django_smartbase_admin/engine/field.py,sha256=BD_W0ekE5tQJxUGpUA8bo4ZyFk0u2F_6UTPH4drj0JU,10286
|
|
21
21
|
django_smartbase_admin/engine/field_formatter.py,sha256=GzyvcBr8Cru34yMedd1GYOl2jTTopEGeSEhoM9_CfKQ,1754
|
|
22
22
|
django_smartbase_admin/engine/filter_widgets.py,sha256=lHPMilA2tjtwnwqPw2nUE39BL1Dx_v4HNKhmg6szHUY,23687
|
|
23
23
|
django_smartbase_admin/engine/global_filter_form.py,sha256=jlj6e9VYWDPyUNjcgj3gTIkCZXO01NZOWAeU3jFtkoA,249
|
|
24
24
|
django_smartbase_admin/engine/menu_item.py,sha256=rMJFG5xm1T0wF8lUmiAZHzKtt9C0LdbpRFvaP0PlngM,2936
|
|
25
|
-
django_smartbase_admin/engine/modal_view.py,sha256=
|
|
25
|
+
django_smartbase_admin/engine/modal_view.py,sha256=6eAmncDV9UzTWemWFQXZpVCIixWo5gWvNZGnK4mw4FM,2251
|
|
26
26
|
django_smartbase_admin/engine/request.py,sha256=sFjxgmzGXUeCD3hEx-Eu-ebgF8CnrBJDH2e8LF1ieRg,2615
|
|
27
27
|
django_smartbase_admin/integration/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
28
28
|
django_smartbase_admin/integration/django_cms.py,sha256=asLVmQUDHulGEpkqp5cUv6-aTcZPoeOllPE1_AIWUqM,1062
|
|
@@ -40,9 +40,9 @@ django_smartbase_admin/querysets.py,sha256=ST_6qxznqxJiv8Gk1bgYVMpK_gbU74ItKyvMm
|
|
|
40
40
|
django_smartbase_admin/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
41
41
|
django_smartbase_admin/services/configuration.py,sha256=POMI0htBqFS9ptPXMtOhIlIKiF6Y4cOQ-IkYN6NWO1c,759
|
|
42
42
|
django_smartbase_admin/services/data.py,sha256=o36B_H9RnBvaQz3Rs3NygY1hVTr6hc89M-RK1saRXzc,156
|
|
43
|
-
django_smartbase_admin/services/thread_local.py,sha256=
|
|
43
|
+
django_smartbase_admin/services/thread_local.py,sha256=C3x7hPsKRCddr05RGiN0f6fcSQ8qsrYRdx9oeMHRovU,293
|
|
44
44
|
django_smartbase_admin/services/translations.py,sha256=aiekREx8KQA9CQRmtkUcys4ICJERMrkxPnLysp0YXO8,5606
|
|
45
|
-
django_smartbase_admin/services/views.py,sha256=
|
|
45
|
+
django_smartbase_admin/services/views.py,sha256=oTZXHvZl-eGCaHRoQiEG-YLKAGGs3FcuVDZhdiuuv34,8953
|
|
46
46
|
django_smartbase_admin/services/xlsx_export.py,sha256=fnIqahmZR6G5T5wSH-sXhhLSy1QD3A-OY6BAn1WLLOc,10723
|
|
47
47
|
django_smartbase_admin/static/sb_admin/build/postcss.config.js,sha256=JlIB66vejH4YA3sPp7hDjimQXAGz5WlVhFDwjBDNTEo,610
|
|
48
48
|
django_smartbase_admin/static/sb_admin/build/tailwind.config.js,sha256=5q5CGlXyn5s3hB6k2OCTu4auVcY4_yop5TrM5g0pT80,2369
|
|
@@ -62,7 +62,7 @@ django_smartbase_admin/static/sb_admin/dist/chart.js.LICENSE.txt,sha256=m7M__mzL
|
|
|
62
62
|
django_smartbase_admin/static/sb_admin/dist/confirmation_modal.js,sha256=glK-x4oxSAHqiabqXmNFE3FRtzMbpg7TgZiKcPle9_o,1745
|
|
63
63
|
django_smartbase_admin/static/sb_admin/dist/main.js,sha256=KE89F9ooogNznFS2CmMQmYRgcI_wCHLV3mROX2AuCXo,376482
|
|
64
64
|
django_smartbase_admin/static/sb_admin/dist/main.js.LICENSE.txt,sha256=Z8-1IrzhOFV3eE_WGR7SRfbzN9GRXsvfiU7_E_BkX-k,5600
|
|
65
|
-
django_smartbase_admin/static/sb_admin/dist/main_style.css,sha256=
|
|
65
|
+
django_smartbase_admin/static/sb_admin/dist/main_style.css,sha256=NfHMTkEHiW3j30WB38-njnONfoZ63WO__gA2mrA3yK0,150155
|
|
66
66
|
django_smartbase_admin/static/sb_admin/dist/main_style.js,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
67
67
|
django_smartbase_admin/static/sb_admin/dist/table.js,sha256=tLvFP9zEvoSANuQW9P_nZ9M_1ozsjbSViSyb1k7Nbx8,589624
|
|
68
68
|
django_smartbase_admin/static/sb_admin/dist/table.js.LICENSE.txt,sha256=WOKSfEow5EUe0a78P0kcxdWcrQlqn2n6H8idNZqHVDk,462
|
|
@@ -485,7 +485,7 @@ django_smartbase_admin/static/sb_admin/src/css/components/_dropdown.css,sha256=6
|
|
|
485
485
|
django_smartbase_admin/static/sb_admin/src/css/components/_input.css,sha256=-R3Pb2GrMQQ9IIkAQPrED9vO7mW2telsCrvKN2i1lUk,10276
|
|
486
486
|
django_smartbase_admin/static/sb_admin/src/css/components/_modal.css,sha256=Cimzp6jEQhtViQbYwSDj3oQadfemN0FrbCZN2AOfwaY,4316
|
|
487
487
|
django_smartbase_admin/static/sb_admin/src/css/components/_nav-tabs.css,sha256=86Ksvd2fX377J6pASPdWH2pzCuP7lpUu1arwZfa-ri4,719
|
|
488
|
-
django_smartbase_admin/static/sb_admin/src/css/components/_query-builder.css,sha256=
|
|
488
|
+
django_smartbase_admin/static/sb_admin/src/css/components/_query-builder.css,sha256=OMxvVjxKFEgWvP4_If7iQSaOox88a5BiOzEzNMkryK0,12401
|
|
489
489
|
django_smartbase_admin/static/sb_admin/src/css/components/_toggle.css,sha256=PSLlVIT779DTxUl9UVK1NNoFLj8hTWqicPIDe2E5EsQ,2580
|
|
490
490
|
django_smartbase_admin/static/sb_admin/src/css/components/_tooltip.css,sha256=5JzpOPLRQBi3xLjKXqCJKyR_neRLYVQP4emhflNT68A,2485
|
|
491
491
|
django_smartbase_admin/static/sb_admin/src/css/style.css,sha256=oCRuyQT60rYfFFEcpwEjhp1bRT-FabkfJdXkuujHI7A,361
|
|
@@ -593,7 +593,7 @@ django_smartbase_admin/templates/sb_admin/integrations/cms/translations_status_r
|
|
|
593
593
|
django_smartbase_admin/templates/sb_admin/integrations/filer/filer_change_form.html,sha256=ts8H3F-0VVhxuJfgmPiMo5rGwub5pLzhUx513kw_zVE,3002
|
|
594
594
|
django_smartbase_admin/templates/sb_admin/integrations/filer/folder_list.html,sha256=Z5dZRNprEslkBDwYE3u8brVNt9qOhLX1gYG8wWjVGk8,18834
|
|
595
595
|
django_smartbase_admin/templates/sb_admin/integrations/filer/image_change_form.html,sha256=CESQuiGfbKdMEq9DRIXfOS-jpz8yr64TJ7R_cs6jZ9M,1909
|
|
596
|
-
django_smartbase_admin/templates/sb_admin/integrations/sorting/change_list.html,sha256=
|
|
596
|
+
django_smartbase_admin/templates/sb_admin/integrations/sorting/change_list.html,sha256=2TSTiKZ52Gpp_Jf5EHr4BEUxnxVXdEY9jEHrtn2f5Xc,15190
|
|
597
597
|
django_smartbase_admin/templates/sb_admin/navigation.html,sha256=jU7aeGihp_oxhGHjVo_j5j7g03z-EPzYPk9PHt5NSFE,10613
|
|
598
598
|
django_smartbase_admin/templates/sb_admin/partials/messages/alert_base.html,sha256=F61XeaBMR7YL9wx0VDXdJ9uTlBMNGSMsXmk6IHZuuNk,825
|
|
599
599
|
django_smartbase_admin/templates/sb_admin/partials/messages/alert_close.html,sha256=-BhLje6G4Ey36hOseZ41WxjmdsMeCOza_2okBn0EWiM,121
|
|
@@ -609,7 +609,8 @@ django_smartbase_admin/templates/sb_admin/sb_admin_js_trans.html,sha256=S0KRUAq5
|
|
|
609
609
|
django_smartbase_admin/templates/sb_admin/sprites/sb_admin.svg,sha256=qEDRrvnixMwb36D-cWYDyGrkJ1ykOObeK6cZoKXs82E,59910
|
|
610
610
|
django_smartbase_admin/templates/sb_admin/submit_line.html,sha256=cslitlZCL2UlRI8fyEftpSHoVTAX2eqC-oVkfulxZWU,3254
|
|
611
611
|
django_smartbase_admin/templates/sb_admin/tailwind_whitelist.html,sha256=4i-8A4UG_pFUw9hv6s7SAC9hn6vVGOrj7mSmkJPSxlo,577
|
|
612
|
-
django_smartbase_admin/templates/sb_admin/widgets/array.html,sha256=
|
|
612
|
+
django_smartbase_admin/templates/sb_admin/widgets/array.html,sha256=cjiqpotsguIiL8tABvluu4XAkMwAtzXVeCrkjQY4ueI,2791
|
|
613
|
+
django_smartbase_admin/templates/sb_admin/widgets/attributes.html,sha256=NGPkZ9lvGn5esZIzvyREP3rcQn4QHSMk69I1JdtwwXU,3043
|
|
613
614
|
django_smartbase_admin/templates/sb_admin/widgets/attrs.html,sha256=9ylIPv5EZg-rx2qPLgobRkw6Zq_WJSM8kt106PpSYa0,172
|
|
614
615
|
django_smartbase_admin/templates/sb_admin/widgets/autocomplete.html,sha256=w9QvUaI1_fjcV2C11N6tBklwM7cMDiLqi-fsbr_kI80,2746
|
|
615
616
|
django_smartbase_admin/templates/sb_admin/widgets/checkbox.html,sha256=3mLOCRwBpmV5WriUmRQ3SfD4xTWXe98irbQfZwdmbk0,232
|
|
@@ -657,7 +658,7 @@ django_smartbase_admin/views/dashboard_view.py,sha256=vtz5emYTQ5WDFeLA8HrcmjSOVd
|
|
|
657
658
|
django_smartbase_admin/views/global_filter_view.py,sha256=eYo1moJGyi7jc2cPDA5ZBiEgA7Hmc-DxbQvbqUpDkg8,1127
|
|
658
659
|
django_smartbase_admin/views/media_view.py,sha256=5BLWXuzynF7nM34t-mf2BQSRN5ojY8HxpLIqt7Jiq9g,292
|
|
659
660
|
django_smartbase_admin/views/translations_view.py,sha256=A02q1t13akLKd2Pg_ej4tVi5qPUKYxB2LqsBbYXM0l8,20267
|
|
660
|
-
django_smartbase_admin-0.2.
|
|
661
|
-
django_smartbase_admin-0.2.
|
|
662
|
-
django_smartbase_admin-0.2.
|
|
663
|
-
django_smartbase_admin-0.2.
|
|
661
|
+
django_smartbase_admin-0.2.74.dist-info/LICENSE.md,sha256=okRGMBOYvyhprt2eTpX_QXqpzC0MODF-U7zX-4fKPjQ,1078
|
|
662
|
+
django_smartbase_admin-0.2.74.dist-info/METADATA,sha256=iqrHWxzbyeBME7JNoGboxqWBnJX5U7EyyMCWhQ36bbk,945
|
|
663
|
+
django_smartbase_admin-0.2.74.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
|
664
|
+
django_smartbase_admin-0.2.74.dist-info/RECORD,,
|
{django_smartbase_admin-0.2.72.dist-info → django_smartbase_admin-0.2.74.dist-info}/LICENSE.md
RENAMED
|
File without changes
|
|
File without changes
|