fh-pydantic-form 0.3.0__tar.gz → 0.3.1__tar.gz

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 fh-pydantic-form might be problematic. Click here for more details.

Files changed (22) hide show
  1. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/PKG-INFO +1 -1
  2. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/RELEASE_NOTES.md +6 -0
  3. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/pyproject.toml +1 -1
  4. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/src/fh_pydantic_form/field_renderers.py +13 -5
  5. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/.github/workflows/build.yaml +0 -0
  6. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/.github/workflows/publish.yaml +0 -0
  7. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/.gitignore +0 -0
  8. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/.pre-commit-config.yaml +0 -0
  9. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/LICENSE +0 -0
  10. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/README.md +0 -0
  11. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/src/fh_pydantic_form/__init__.py +0 -0
  12. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/src/fh_pydantic_form/color_utils.py +0 -0
  13. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/src/fh_pydantic_form/comparison_form.py +0 -0
  14. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/src/fh_pydantic_form/constants.py +0 -0
  15. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/src/fh_pydantic_form/defaults.py +0 -0
  16. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/src/fh_pydantic_form/form_parser.py +0 -0
  17. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/src/fh_pydantic_form/form_renderer.py +0 -0
  18. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/src/fh_pydantic_form/list_path.py +0 -0
  19. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/src/fh_pydantic_form/py.typed +0 -0
  20. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/src/fh_pydantic_form/registry.py +0 -0
  21. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/src/fh_pydantic_form/type_helpers.py +0 -0
  22. {fh_pydantic_form-0.3.0 → fh_pydantic_form-0.3.1}/src/fh_pydantic_form/ui_style.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fh-pydantic-form
3
- Version: 0.3.0
3
+ Version: 0.3.1
4
4
  Summary: a library to turn any pydantic BaseModel object into a fasthtml/monsterui input form
5
5
  Project-URL: Homepage, https://github.com/Marcura/fh-pydantic-form
6
6
  Project-URL: Repository, https://github.com/Marcura/fh-pydantic-form
@@ -1,5 +1,11 @@
1
1
  # Release Notes
2
2
 
3
+
4
+
5
+ ## Version 0.3.1 (2025-06-24)
6
+
7
+ - fix datetime.time renderer when format is not HH:MM
8
+
3
9
  ## Version 0.3.0 (2025-06-23)
4
10
 
5
11
  ### 🎉 Major Features
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "fh-pydantic-form"
3
- version = "0.3.0"
3
+ version = "0.3.1"
4
4
  description = "a library to turn any pydantic BaseModel object into a fasthtml/monsterui input form"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
@@ -820,11 +820,19 @@ class TimeFieldRenderer(BaseFieldRenderer):
820
820
  A TimeInput component appropriate for time values
821
821
  """
822
822
  formatted_value = ""
823
- if (
824
- isinstance(self.value, str) and len(self.value) == 5
825
- ): # Basic check for HH:MM format
826
- # Assume it's the correct string format from the form
827
- formatted_value = self.value
823
+ if isinstance(self.value, str):
824
+ # Try to parse the time string using various formats
825
+ time_formats = ["%H:%M", "%H:%M:%S", "%H:%M:%S.%f"]
826
+
827
+ for fmt in time_formats:
828
+ try:
829
+ from datetime import datetime
830
+
831
+ parsed_time = datetime.strptime(self.value, fmt).time()
832
+ formatted_value = parsed_time.strftime("%H:%M")
833
+ break
834
+ except ValueError:
835
+ continue
828
836
  elif isinstance(self.value, time):
829
837
  formatted_value = self.value.strftime("%H:%M") # HH:MM
830
838