djangocms-render-context 1.1.0__py3-none-any.whl → 1.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. djangocms_render_context/__init__.py +1 -1
  2. djangocms_render_context/cms_plugins.py +8 -0
  3. djangocms_render_context/encoders.py +8 -0
  4. djangocms_render_context/forms.py +46 -0
  5. djangocms_render_context/locale/cs/LC_MESSAGES/django.mo +0 -0
  6. djangocms_render_context/locale/cs/LC_MESSAGES/django.po +30 -2
  7. djangocms_render_context/locale/cs/LC_MESSAGES/djangojs.mo +0 -0
  8. djangocms_render_context/locale/cs/LC_MESSAGES/djangojs.po +130 -0
  9. djangocms_render_context/migrations/0003_rendercontext_config_and_path.py +46 -0
  10. djangocms_render_context/models.py +42 -5
  11. djangocms_render_context/static/djangocms_render_context/css-dist/icon-family-Material-Icons.css +20 -0
  12. djangocms_render_context/static/djangocms_render_context/css-dist/jspreadsheet.min.css +8 -0
  13. djangocms_render_context/static/djangocms_render_context/css-dist/jsuites.min.css +8 -0
  14. djangocms_render_context/static/djangocms_render_context/js/spreadsheet.js +711 -0
  15. djangocms_render_context/static/djangocms_render_context/js-dist/csv.min.js +1 -0
  16. djangocms_render_context/static/djangocms_render_context/js-dist/index.min.js +8 -0
  17. djangocms_render_context/static/djangocms_render_context/js-dist/index.min.js.map +1 -0
  18. djangocms_render_context/static/djangocms_render_context/js-dist/js-yaml.min.js +2 -0
  19. djangocms_render_context/static/djangocms_render_context/js-dist/jsuites.min.js +8 -0
  20. djangocms_render_context/static/djangocms_render_context/js-dist/jsuites.min.js.map +1 -0
  21. djangocms_render_context/utils.py +16 -0
  22. {djangocms_render_context-1.1.0.dist-info → djangocms_render_context-1.2.0.dist-info}/METADATA +16 -1
  23. djangocms_render_context-1.2.0.dist-info/RECORD +31 -0
  24. {djangocms_render_context-1.1.0.dist-info → djangocms_render_context-1.2.0.dist-info}/WHEEL +1 -1
  25. djangocms_render_context-1.1.0.dist-info/RECORD +0 -17
  26. {djangocms_render_context-1.1.0.dist-info → djangocms_render_context-1.2.0.dist-info}/top_level.txt +0 -0
@@ -2,12 +2,16 @@ from collections.abc import ValuesView
2
2
  from datetime import date, datetime
3
3
  from typing import Union
4
4
 
5
+ from django.template import Context
5
6
  from django.utils.formats import localize
6
7
 
7
8
  dataType = Union[str, dict, list, ValuesView, None] # noqa: UP007
9
+ dictContextType = Union[Context, dict] # noqa: UP007
10
+ strOrNoneType = Union[str, None] # noqa: UP007
8
11
 
9
12
 
10
13
  def get_data(data: dataType, level: int = 0) -> str:
14
+ """Get data."""
11
15
  wrapper, separator = "{}", "\n"
12
16
  if level == 0:
13
17
  separator = "</tr>\n<tr>\n"
@@ -25,6 +29,7 @@ def get_data(data: dataType, level: int = 0) -> str:
25
29
 
26
30
 
27
31
  def collect_data(data: dataType, wrapper: str, separator: str, level: int) -> str:
32
+ """Collect data."""
28
33
  content = []
29
34
  if isinstance(data, (tuple, list, ValuesView)):
30
35
  for item in data:
@@ -44,3 +49,14 @@ def collect_data(data: dataType, wrapper: str, separator: str, level: int) -> st
44
49
 
45
50
  def create_html(data: dataType) -> str:
46
51
  return f"""<table class="rc-data"><tbody><tr>{get_data(data)}</tr></tbody></table>"""
52
+
53
+
54
+ def get_context_from_path(context: dictContextType, path: strOrNoneType) -> dictContextType:
55
+ """Get context from the path."""
56
+ if path is not None:
57
+ for key in path.split("."):
58
+ if isinstance(context, (tuple, list)):
59
+ context = context[int(key)]
60
+ else:
61
+ context = context[key]
62
+ return context
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: djangocms-render-context
3
- Version: 1.1.0
3
+ Version: 1.2.0
4
4
  Summary: Render context into template.
5
5
  Author-email: Zdeněk Böhm <zdenek.bohm@nic.cz>
6
6
  License-Expression: BSD-3-Clause
@@ -37,6 +37,7 @@ Requires-Dist: types-requests; extra == "quality"
37
37
  Provides-Extra: test
38
38
  Requires-Dist: testfixtures; extra == "test"
39
39
  Requires-Dist: responses; extra == "test"
40
+ Requires-Dist: packaging; extra == "test"
40
41
 
41
42
  # DjangoCMS Render Context
42
43
 
@@ -72,6 +73,20 @@ INSTALLED_APPS = [
72
73
  ]
73
74
  ```
74
75
 
76
+ Add into site `urls.py`:
77
+
78
+ ```python
79
+ from django.conf.urls.i18n import i18n_patterns
80
+ from django.views.i18n import JavaScriptCatalog
81
+ from django.urls import path
82
+
83
+ urlpatterns = [
84
+ ...
85
+ ] + i18n_patterns(
86
+ path('jsi18n/<slug:packages>/', JavaScriptCatalog.as_view(), name='jsi18n'),
87
+ )
88
+ ```
89
+
75
90
  ### Extra settings
76
91
 
77
92
  This value can be defined in settings.
@@ -0,0 +1,31 @@
1
+ djangocms_render_context/__init__.py,sha256=MpAT5hgNoHnTtG1XRD_GV_A7QrHVU6vJjGSw_8qMGA4,22
2
+ djangocms_render_context/cache.py,sha256=PwagqDTqh3I83e7Ru52ei4P05juZ6Ob_pILukGGtsTo,99
3
+ djangocms_render_context/cms_plugins.py,sha256=ie-wyB5tfqW-5b0FnmE6sCOO2K6KfUEC7dui1nBm2sg,1815
4
+ djangocms_render_context/encoders.py,sha256=TIIcj_6vgXlUH5D0oeozCA7ixN4WNnfrnk15bAmfpQ8,253
5
+ djangocms_render_context/exceptions.py,sha256=r5L-U90T_60CPSagcwWmu_r6DkbHAghg04uS8OvzTPo,69
6
+ djangocms_render_context/forms.py,sha256=4PRPrNSATh0TDytPUUBcWB9v2cnYb7lVjgtFB_aefe8,6578
7
+ djangocms_render_context/loaders.py,sha256=s3uRG-SBhZ_vlBf01dGc3usGiyVHTrA_vvDmw80zgdQ,7400
8
+ djangocms_render_context/models.py,sha256=KIbLway2Zg6ZEs4QyYB-6E8W6jdeuU7XdZK9gVzNrd8,5001
9
+ djangocms_render_context/utils.py,sha256=MGa0zP12SzqZ6SNm0Q75LFVVM8MGRzlUtixUk8fBCy4,2178
10
+ djangocms_render_context/locale/cs/LC_MESSAGES/django.mo,sha256=n-Xz1-1RXVjBqjahKdMvPY-A7GCrVIzBBT7O1GUviac,3979
11
+ djangocms_render_context/locale/cs/LC_MESSAGES/django.po,sha256=R3roh1jZVhtY282u99ENCnZkftGyx4rXwbP-NKKcSFI,4243
12
+ djangocms_render_context/locale/cs/LC_MESSAGES/djangojs.mo,sha256=EaJISUYKbmenGMfVZcvHxhU5WR1sLnM092_BuTTJeIw,2687
13
+ djangocms_render_context/locale/cs/LC_MESSAGES/djangojs.po,sha256=1RuZoRuCf466MwgVHm-MGC0BgzQ3Bk5_P5GPOq1HFBo,2809
14
+ djangocms_render_context/migrations/0001_initial.py,sha256=tg3Wu_KMfykrQKn2kYMm_3COyheNA6mqWv3h-IxnXqk,3728
15
+ djangocms_render_context/migrations/0002_rendercontext_mimetype.py,sha256=6FHuX_5U4lHWbH37145wuPSvdPqqEgVIbdPGEXec1ck,1006
16
+ djangocms_render_context/migrations/0003_rendercontext_config_and_path.py,sha256=9kAyzoIwk5HdB-wsLxX0ugBgv03uXmhpicCcpFYDFxI,1657
17
+ djangocms_render_context/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
18
+ djangocms_render_context/static/djangocms_render_context/css-dist/icon-family-Material-Icons.css,sha256=B72Q-ghQHu9YdGK-sNJnrvWVyVKS4AKjDFzVogtK8hE,475
19
+ djangocms_render_context/static/djangocms_render_context/css-dist/jspreadsheet.min.css,sha256=w78C-bdPJvG9DmQdyanqaG-_iJmzSdJFQQrDXJbNGHA,17151
20
+ djangocms_render_context/static/djangocms_render_context/css-dist/jsuites.min.css,sha256=gdX3h5a9aHAk7otLLnhpTX4ySpqB7IpHm-eVjL7pKZw,55230
21
+ djangocms_render_context/static/djangocms_render_context/js/spreadsheet.js,sha256=k23L9vvVvVSWDmird3Ub9PpfLowl-pcIOHoAXhc4L5Q,22701
22
+ djangocms_render_context/static/djangocms_render_context/js-dist/csv.min.js,sha256=2wvvOFhvLdcOJ04lMT833Uee8fuWb68wDFgfOip-2nc,3376
23
+ djangocms_render_context/static/djangocms_render_context/js-dist/index.min.js,sha256=biT7M5jXwDd771y1iZKJyEWDethEA0JWQTegIx3qdyY,165070
24
+ djangocms_render_context/static/djangocms_render_context/js-dist/index.min.js.map,sha256=f2Cn2FRZmilRV482Nf91wylXlmVT0QgM50jQrR6pddE,318014
25
+ djangocms_render_context/static/djangocms_render_context/js-dist/js-yaml.min.js,sha256=DePeyS0g6rngtGpdkozUXsAl1z40jd9Fjb-wHaAMtHM,39513
26
+ djangocms_render_context/static/djangocms_render_context/js-dist/jsuites.min.js,sha256=6M7eX8qajmviXT3KM7qt0aLhBKFLyQpy1GhJ23iv0iI,173654
27
+ djangocms_render_context/static/djangocms_render_context/js-dist/jsuites.min.js.map,sha256=L7Xogv6hoh4GCFtC-rQUkUuxgeN7c899qtjjSXqQqXI,658648
28
+ djangocms_render_context-1.2.0.dist-info/METADATA,sha256=cxrPvml1Ty8NNzxcR4Cr3wqJmifKcBZH7cUH_gl_IfE,3235
29
+ djangocms_render_context-1.2.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
30
+ djangocms_render_context-1.2.0.dist-info/top_level.txt,sha256=J82yBJeJTHoDzwzFIU3i4jFHxn3nAjgn-Fn5JSjVKQ8,25
31
+ djangocms_render_context-1.2.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,17 +0,0 @@
1
- djangocms_render_context/__init__.py,sha256=LGVQyDsWifdACo7qztwb8RWWHds1E7uQ-ZqD8SAjyw4,22
2
- djangocms_render_context/cache.py,sha256=PwagqDTqh3I83e7Ru52ei4P05juZ6Ob_pILukGGtsTo,99
3
- djangocms_render_context/cms_plugins.py,sha256=GMtqfSyn2YM48ifgJSTJ5LyRBA0WhvIkqtF_ymMBwME,1623
4
- djangocms_render_context/exceptions.py,sha256=r5L-U90T_60CPSagcwWmu_r6DkbHAghg04uS8OvzTPo,69
5
- djangocms_render_context/forms.py,sha256=3gmFDTcqwXp9FNfZvIHbuSWsTzdkBuidcnGsQlX9B2o,4392
6
- djangocms_render_context/loaders.py,sha256=s3uRG-SBhZ_vlBf01dGc3usGiyVHTrA_vvDmw80zgdQ,7400
7
- djangocms_render_context/models.py,sha256=OqWONL6LaEeEBOgcjOk1QpeEE4qeip-FHUbdHrNWlkQ,3648
8
- djangocms_render_context/utils.py,sha256=HmkARbCxCJ6-SNRuH7zI4BY3BBf87c9cQuwBUNId53I,1632
9
- djangocms_render_context/locale/cs/LC_MESSAGES/django.mo,sha256=ML6jtfvv6ZzClweXXeqJmHRvWzH-iUkJozA40OkYyZ8,3126
10
- djangocms_render_context/locale/cs/LC_MESSAGES/django.po,sha256=kn-ZDENpLYDwaooBdM50qM_oCRfjXpMb2Eo7H8Jg3Kk,3352
11
- djangocms_render_context/migrations/0001_initial.py,sha256=tg3Wu_KMfykrQKn2kYMm_3COyheNA6mqWv3h-IxnXqk,3728
12
- djangocms_render_context/migrations/0002_rendercontext_mimetype.py,sha256=6FHuX_5U4lHWbH37145wuPSvdPqqEgVIbdPGEXec1ck,1006
13
- djangocms_render_context/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
- djangocms_render_context-1.1.0.dist-info/METADATA,sha256=eCo5vGsqPH6I2BymyT8c2IEEa1qyZ5XbwX5f3Xc_bYk,2900
15
- djangocms_render_context-1.1.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
16
- djangocms_render_context-1.1.0.dist-info/top_level.txt,sha256=J82yBJeJTHoDzwzFIU3i4jFHxn3nAjgn-Fn5JSjVKQ8,25
17
- djangocms_render_context-1.1.0.dist-info/RECORD,,