python-terminusgps 28.9.0__py3-none-any.whl → 28.10.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.

Potentially problematic release.


This version of python-terminusgps might be problematic. Click here for more details.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-terminusgps
3
- Version: 28.9.0
3
+ Version: 28.10.0
4
4
  Summary: Provides abstractions/utilities for working with Wialon API, Authorize.NET API, AWS API, and more.
5
5
  Project-URL: Documentation, https://app.terminusgps.com/docs/apps/python-terminusgps/index.html
6
6
  Project-URL: Repository, https://github.com/terminusgps/python-terminusgps
@@ -1,4 +1,5 @@
1
1
  terminusgps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ terminusgps/mixins.py,sha256=r6_I9D_7cX6_ZlkYp2GySu_2gywzhvs1lePFFf3dDYA,981
2
3
  terminusgps/settings.py,sha256=vY5yNjyMu-7Ya0bIPWUvrrSLERtxHGdkfeoY4Ul6cP0,613
3
4
  terminusgps/authorizenet/__init__.py,sha256=LiGLlWNNiqS7RSOP4Apabx-b9EBYyNbxRY_a0mvJoaE,466
4
5
  terminusgps/authorizenet/auth.py,sha256=ICxPPzoUc64VbsIIemEWKrn8xjHGwbNdo2VbtaFCFss,1107
@@ -30,7 +31,7 @@ terminusgps/wialon/items/route.py,sha256=8SzlqNmpYVdt-ZAY--B_KHoDIHgN0Zb7KBsBWAz
30
31
  terminusgps/wialon/items/unit.py,sha256=i7sQiRu3N0XxyTHVN2RnmjYy9X48KdnZLSB18ic37w8,9363
31
32
  terminusgps/wialon/items/unit_group.py,sha256=YsYh34l2DjSKcv5SIZkEVi5FSjveGB1gxU2fwdLyvl4,4101
32
33
  terminusgps/wialon/items/user.py,sha256=PFYBie04F16YE2B5364PLxkmlTmQr4sZXpItvRBxsDc,7143
33
- python_terminusgps-28.9.0.dist-info/METADATA,sha256=ikW1QHGC85Ch9G2-99zUIpaOrYiQCOnmU8gkUy-zNTc,946
34
- python_terminusgps-28.9.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
35
- python_terminusgps-28.9.0.dist-info/licenses/COPYING,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
36
- python_terminusgps-28.9.0.dist-info/RECORD,,
34
+ python_terminusgps-28.10.0.dist-info/METADATA,sha256=8_L_RAnhA8PlkfISJ8aopty-VDJlw8nhqPQ2yzifB0g,947
35
+ python_terminusgps-28.10.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
36
+ python_terminusgps-28.10.0.dist-info/licenses/COPYING,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
37
+ python_terminusgps-28.10.0.dist-info/RECORD,,
terminusgps/mixins.py ADDED
@@ -0,0 +1,34 @@
1
+ import typing
2
+
3
+ from django.http import HttpResponse
4
+ from django.views.generic.base import TemplateResponseMixin
5
+
6
+
7
+ class HtmxTemplateResponseMixin(TemplateResponseMixin):
8
+ """
9
+ Renders a partial HTML template depending on HTTP headers.
10
+
11
+ `htmx documentation <https://htmx.org/docs/>`_
12
+
13
+ """
14
+
15
+ partial_template_name: str | None = None
16
+ """
17
+ A partial template rendered by `htmx`_.
18
+
19
+ .. _htmx: https://htmx.org/docs/
20
+
21
+ :type: :py:obj:`str` | :py:obj:`None`
22
+ :value: :py:obj:`None`
23
+
24
+ """
25
+
26
+ def render_to_response(
27
+ self, context: dict[str, typing.Any], **response_kwargs: typing.Any
28
+ ) -> HttpResponse:
29
+ htmx_request = self.request.headers.get("HX-Request", False)
30
+ boosted = self.request.headers.get("HX-Boosted", False)
31
+
32
+ if htmx_request and self.partial_template_name and not boosted:
33
+ self.template_name = self.partial_template_name
34
+ return super().render_to_response(context, **response_kwargs)