From 70a11d94f6fd7344a206f6b747b9007f1ecdada0 Mon Sep 17 00:00:00 2001 From: Thumose3 <45205349+Thutmose3@users.noreply.github.com> Date: Tue, 13 Feb 2024 14:41:02 +0100 Subject: [PATCH 01/26] Update tailwind_field.py --- crispy_tailwind/templatetags/tailwind_field.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crispy_tailwind/templatetags/tailwind_field.py b/crispy_tailwind/templatetags/tailwind_field.py index 5deb827..308f6b9 100644 --- a/crispy_tailwind/templatetags/tailwind_field.py +++ b/crispy_tailwind/templatetags/tailwind_field.py @@ -110,7 +110,7 @@ class CrispyTailwindFieldNode(template.Node): "error_border": "border-red-500", } - default_container = CSSContainer(default_styles) + default_container = CSSContainer({**default_styles, **getattr(settings, "CRISPY_TAILWIND_STYLE", {})}) def __init__(self, field, attrs): self.field = field From 0535c32a1c903a7449c4a75a585b92c46d97ccb4 Mon Sep 17 00:00:00 2001 From: Thumose3 <45205349+Thutmose3@users.noreply.github.com> Date: Tue, 13 Feb 2024 14:55:35 +0100 Subject: [PATCH 02/26] Update tailwind_field.py --- .../templatetags/tailwind_field.py | 78 +++++++++++-------- 1 file changed, 44 insertions(+), 34 deletions(-) diff --git a/crispy_tailwind/templatetags/tailwind_field.py b/crispy_tailwind/templatetags/tailwind_field.py index 308f6b9..7fe2bb8 100644 --- a/crispy_tailwind/templatetags/tailwind_field.py +++ b/crispy_tailwind/templatetags/tailwind_field.py @@ -75,42 +75,52 @@ def pairwise(iterable): a = iter(iterable) return zip(a, a) +@register.filter +def tailwind_field_class(field): + """ + Returns field class from defaults. + """ + return f" {tailwind_container.get_input_class(field)}" + +base_input = ( + "bg-white focus:outline-none border border-gray-300 rounded-lg py-2 px-4 block w-full " + "appearance-none leading-normal text-gray-700" +) + +default_styles = { + "text": base_input, + "number": base_input, + "radioselect": "", + "email": base_input, + "url": base_input, + "password": base_input, + "hidden": "", + "multiplehidden": "", + "file": "", + "clearablefile": "", + "textarea": base_input, + "date": base_input, + "datetime": base_input, + "time": base_input, + "checkbox": "", + "select": "", + "nullbooleanselect": "", + "selectmultiple": "", + "checkboxselectmultiple": "", + "multi": "", + "splitdatetime": "text-gray-700 bg-white focus:outline border border-gray-300 leading-normal px-4 " + "appearance-none rounded-lg py-2 focus:outline-none mr-2", + "splithiddendatetime": "", + "selectdate": "", + "error_border": "border-red-500", +} + +tailwind_styles = {**default_styles, **getattr(settings, "CRISPY_TAILWIND_STYLE", {})} +tailwind_container = CSSContainer(tailwind_styles) class CrispyTailwindFieldNode(template.Node): - base_input = ( - "bg-white focus:outline-none border border-gray-300 rounded-lg py-2 px-4 block w-full " - "appearance-none leading-normal text-gray-700" - ) - - default_styles = { - "text": base_input, - "number": base_input, - "radioselect": "", - "email": base_input, - "url": base_input, - "password": base_input, - "hidden": "", - "multiplehidden": "", - "file": "", - "clearablefile": "", - "textarea": base_input, - "date": base_input, - "datetime": base_input, - "time": base_input, - "checkbox": "", - "select": "", - "nullbooleanselect": "", - "selectmultiple": "", - "checkboxselectmultiple": "", - "multi": "", - "splitdatetime": "text-gray-700 bg-white focus:outline border border-gray-300 leading-normal px-4 " - "appearance-none rounded-lg py-2 focus:outline-none mr-2", - "splithiddendatetime": "", - "selectdate": "", - "error_border": "border-red-500", - } - - default_container = CSSContainer({**default_styles, **getattr(settings, "CRISPY_TAILWIND_STYLE", {})}) + + default_container = tailwind_container def __init__(self, field, attrs): self.field = field From 5f1440440e89384c80afd4e5896f6c9f7650c882 Mon Sep 17 00:00:00 2001 From: Thumose3 <45205349+Thutmose3@users.noreply.github.com> Date: Tue, 13 Feb 2024 15:02:31 +0100 Subject: [PATCH 03/26] Update tailwind_field.py --- crispy_tailwind/templatetags/tailwind_field.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crispy_tailwind/templatetags/tailwind_field.py b/crispy_tailwind/templatetags/tailwind_field.py index 7fe2bb8..923564a 100644 --- a/crispy_tailwind/templatetags/tailwind_field.py +++ b/crispy_tailwind/templatetags/tailwind_field.py @@ -103,7 +103,7 @@ def tailwind_field_class(field): "datetime": base_input, "time": base_input, "checkbox": "", - "select": "", + "select": "bg-white border-gray-300 focus:outline-none border rounded-lg py-2 px-4 block w-full appearance-none leading-normal text-gray-700", "nullbooleanselect": "", "selectmultiple": "", "checkboxselectmultiple": "", From f691dba51c309ad3c64a03b47ba3915d9c9034e1 Mon Sep 17 00:00:00 2001 From: Thumose3 <45205349+Thutmose3@users.noreply.github.com> Date: Tue, 13 Feb 2024 15:14:33 +0100 Subject: [PATCH 04/26] Update select.html --- crispy_tailwind/templates/tailwind/layout/select.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crispy_tailwind/templates/tailwind/layout/select.html b/crispy_tailwind/templates/tailwind/layout/select.html index a692ee9..b6edf14 100644 --- a/crispy_tailwind/templates/tailwind/layout/select.html +++ b/crispy_tailwind/templates/tailwind/layout/select.html @@ -1,9 +1,9 @@ {% load crispy_forms_filters %} -{% load tailwind_filters %} +{% load tailwind_filters tailwind_field %} {% load l10n %}