fastlifeweb 0.25.1__py3-none-any.whl → 0.25.2__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.
CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ ## 0.25.2 - Released on 2025-03-03
2
+ * Update deps and fix related bugs in JinjaX components.
3
+
1
4
  ## 0.25.1 - Released on 2025-03-02
2
5
  * Update fews JinjaX components
3
6
  * New attributes on Input
@@ -60,7 +60,7 @@ class SequenceWidget(Widget[Sequence[TWidget]]):
60
60
 
61
61
  item_type: type[Any]
62
62
  wrapped_type: TypeWrapper | None = Field(default=None)
63
- children_widgets: list[str] = Field(default=None)
63
+ children_widgets: list[str] | None = Field(default=None)
64
64
 
65
65
  def build_item_type(self, route_prefix: str) -> TypeWrapper:
66
66
  return TypeWrapper(self.item_type, route_prefix, self.name, self.token)
@@ -55,7 +55,7 @@ class PasswordWidget(Widget[SecretStr]):
55
55
  new_password: bool = Field(default=False)
56
56
 
57
57
 
58
- class TextareaWidget(Widget[Sequence[str]]):
58
+ class TextareaWidget(Widget[str | Sequence[str]]):
59
59
  """
60
60
  Render a Textearea for a string or event a sequence of string.
61
61
 
@@ -84,11 +84,10 @@ class TextareaWidget(Widget[Sequence[str]]):
84
84
  <Label :for="id">{{title}}</Label>
85
85
  <pydantic_form.Error :text="error" />
86
86
  <Textarea :name="name" :id="id" :aria-label="aria_label">
87
- {%- if v is string -%}
88
- {{- v -}}}
87
+ {%- if value is string -%}
88
+ {{- value -}}
89
89
  {%- else -%}
90
- {%- for v in value %}{{v}}
91
- {% endfor -%}
90
+ {%- for v in value %}{{v}}{{"\n"}}{% endfor -%}
92
91
  {% endif %}
93
92
  </Textarea>
94
93
  <pydantic_form.Hint :text="hint" />
@@ -58,7 +58,8 @@ class FormModel(Generic[T]):
58
58
  cls, prefix: str, pydantic_type: type[T], data: Mapping[str, Any]
59
59
  ) -> "FormModel[T]":
60
60
  try:
61
- return cls(prefix, pydantic_type(**data.get(prefix, {})), {}, True)
61
+ ret = cls(prefix, pydantic_type(**data.get(prefix, {})), {}, True)
62
+ return ret
62
63
  except ValidationError as exc:
63
64
  errors: dict[str, str] = {}
64
65
  for error in exc.errors():
@@ -17,8 +17,8 @@ class SessionMiddleware(AbstractMiddleware):
17
17
 
18
18
  def __init__(
19
19
  self,
20
- *,
21
20
  app: ASGIApp,
21
+ *,
22
22
  cookie_name: str,
23
23
  secret_key: str,
24
24
  duration: timedelta,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fastlifeweb
3
- Version: 0.25.1
3
+ Version: 0.25.2
4
4
  Summary: High-level web framework
5
5
  Author-Email: Guillaume Gauvrit <guillaume@gauvr.it>
6
6
  License: MIT
@@ -17,14 +17,14 @@ Project-URL: Repository, https://github.com/mardiros/fastlife.git
17
17
  Project-URL: Issues, https://github.com/mardiros/fastlife/issues
18
18
  Project-URL: Changelog, https://mardiros.github.io/fastlife/user/changelog.html
19
19
  Requires-Python: >=3.11
20
- Requires-Dist: fastapi[standard]<1,>=0.115.0
20
+ Requires-Dist: fastapi[standard]<0.116.0,>=0.115.4
21
21
  Requires-Dist: itsdangerous<3,>=2.1.2
22
- Requires-Dist: jinjax<0.45,>=0.44
22
+ Requires-Dist: jinjax<0.49,>=0.48
23
23
  Requires-Dist: markupsafe<3,>=2.1.3
24
24
  Requires-Dist: multidict<7,>=6.0.5
25
25
  Requires-Dist: pydantic<3,>=2.5.3
26
26
  Requires-Dist: pydantic-settings<3,>=2.0.3
27
- Requires-Dist: python-multipart<1,>=0.0.9
27
+ Requires-Dist: python-multipart<1,>=0.0.13
28
28
  Requires-Dist: venusian<4,>=3.0.0
29
29
  Provides-Extra: testing
30
30
  Requires-Dist: beautifulsoup4; extra == "testing"
@@ -1,4 +1,4 @@
1
- CHANGELOG.md,sha256=5xcrgdVtnurPhs6LZ9zKuTIedXPWQvEilOVpamvD2BE,8279
1
+ CHANGELOG.md,sha256=lrPhY2hvBQErCpC_v376kDsXv_K2LTj4DgK7XWC_dsk,8373
2
2
  fastlife/__init__.py,sha256=nXWE4AbhkhG_yBjPJU-XnKDMTsU9ebv7Vj4eIciWQI0,2219
3
3
  fastlife/adapters/__init__.py,sha256=imPD1hImpgrYkvUJRhHA5kVyGAua7VbP2WGkhSWKJT8,93
4
4
  fastlife/adapters/fastapi/__init__.py,sha256=1goV1FGFP04TGyskJBLKZam4Gvt1yoAvLMNs4ekWSSQ,243
@@ -39,8 +39,8 @@ fastlife/adapters/jinjax/widgets/dropdown.py,sha256=ou8U48txShr8IXdwF4_pBvTn1VcR
39
39
  fastlife/adapters/jinjax/widgets/hidden.py,sha256=IKcVYs6NjN8YjW-UTr3DRBong6Wrc0QLgcp8U9JoQmE,638
40
40
  fastlife/adapters/jinjax/widgets/mfa_code.py,sha256=8HHaEHyUEQT6xzJ0Y4O0eA1SU3wSfzXljx8XY73o-Rc,733
41
41
  fastlife/adapters/jinjax/widgets/model.py,sha256=YBIEWa_6mnmrBnesXjLTrpJ4drUS2CIorNmhK24cz7Q,1298
42
- fastlife/adapters/jinjax/widgets/sequence.py,sha256=XhIPRJyE9UXFetlDQA83N64kKlTqkj6WPcgPm6XF7mo,2559
43
- fastlife/adapters/jinjax/widgets/text.py,sha256=sA-TMRP5AqxhN1tLbV_OZ7xbvRip4aNNQVWZesnOawg,3024
42
+ fastlife/adapters/jinjax/widgets/sequence.py,sha256=dVoHQmHloaRuU1Sd82b2jnO8WDfdwM2FaZlLCJCps1o,2566
43
+ fastlife/adapters/jinjax/widgets/text.py,sha256=TfmlJU233aZWIl-4cmm-f-pFxp6ycHWHnbiluOvRDgM,3040
44
44
  fastlife/adapters/jinjax/widgets/union.py,sha256=roCoFA82dLjF1XFW6UYaV7SCQWdFsSAT8Ux7KEB6_Us,2602
45
45
  fastlife/assets/dist.css,sha256=BkGYK48Fmy7t3-KMKlpGnpjmpJpxQ4D6QUNlfmtVbU8,18432
46
46
  fastlife/assets/source.css,sha256=0KtDcsKHj9LOcqNR1iv9pACwNBaNWkieEDqqjkgNL_s,47
@@ -1699,7 +1699,7 @@ fastlife/domain/__init__.py,sha256=3zDDos5InVX0el9OO0lgSDGzdUNYIhlA6w4uhBh2pF8,2
1699
1699
  fastlife/domain/model/__init__.py,sha256=aoBjaSpDscuFXvtknJHwiNyoJRUpE-v4X54h_wNuo2Y,27
1700
1700
  fastlife/domain/model/asgi.py,sha256=RSTnfTsofOmCaWzHNuRGowjlyHYmoDCrXFbvNY_B55k,129
1701
1701
  fastlife/domain/model/csrf.py,sha256=BUiWK-S7rVciWHO1qTkM8e_KxzpF6gGC4MMJK1v6iDo,414
1702
- fastlife/domain/model/form.py,sha256=WriBT1qUUIbf5x5iewo9ChEcr6k0en8jMTD0iaei5Pk,3253
1702
+ fastlife/domain/model/form.py,sha256=JP6uumlZBYhiPxzcdxOsfsFm5BRfvkDFvlUCD6Vy8dI,3275
1703
1703
  fastlife/domain/model/request.py,sha256=ZRHZW_MOmtO_DFHt2UYu_aUmtoMdD14085A8Z8_eS8s,2678
1704
1704
  fastlife/domain/model/security_policy.py,sha256=f9SLi54vvRU-KSPJ5K0unoqYpkxIyzuZjKf2Ylwf5Rg,4796
1705
1705
  fastlife/domain/model/template.py,sha256=z9oxdKme1hMPuvk7mBiKR_tuVY8TqH77aTYqMgvEGl8,876
@@ -1709,7 +1709,7 @@ fastlife/middlewares/base.py,sha256=7FZE_1YU7wNew2u1qdYXjamosk4CXJmg1mJWGp6Xhc0,
1709
1709
  fastlife/middlewares/reverse_proxy/__init__.py,sha256=g1SoVDmenKzpAAPYHTEsWgdBByOxtLg9fGx6RV3i0ok,846
1710
1710
  fastlife/middlewares/reverse_proxy/x_forwarded.py,sha256=PPDjcfwik5eoYaolSY1Y4x5QMKpDV0XrOP_i4Am0y30,1724
1711
1711
  fastlife/middlewares/session/__init__.py,sha256=ZhXWXs53A__F9wJKBJ87rW8Qyt5Mn866vhzKDxVZ4t0,1348
1712
- fastlife/middlewares/session/middleware.py,sha256=MyZ0MobhlnGiqacYq0pPYBrlqCjTkWjpNXNeFyPD1fI,3133
1712
+ fastlife/middlewares/session/middleware.py,sha256=tzaJHLT3ri9sstrppATu8MWXUALTq54PsNKU0v5DTBI,3133
1713
1713
  fastlife/middlewares/session/serializer.py,sha256=nbJGiCJ_ryZxkW1I28kmK6hD3U98D4ZlUQA7B8_tngQ,635
1714
1714
  fastlife/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1715
1715
  fastlife/service/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -1733,8 +1733,8 @@ fastlife/testing/session.py,sha256=LEFFbiR67_x_g-ioudkY0C7PycHdbDfaIaoo_G7GXQ8,2
1733
1733
  fastlife/testing/testclient.py,sha256=Id1tlA1ZapyW-8kUh2_U3lLteL64m3ERqOO7NAN7HEY,6922
1734
1734
  fastlife/views/__init__.py,sha256=zG8gveL8e2zBdYx6_9jtZfpQ6qJT-MFnBY3xXkLwHZI,22
1735
1735
  fastlife/views/pydantic_form.py,sha256=o7EUItciAGL1OSaGNHo-3BTrYAk34GuWE7zGikjiAGY,1486
1736
- fastlifeweb-0.25.1.dist-info/METADATA,sha256=PFDjQi6FjZXjexLeQspAbz8cbA8NtKX2jCzpflgyujk,3683
1737
- fastlifeweb-0.25.1.dist-info/WHEEL,sha256=thaaA2w1JzcGC48WYufAs8nrYZjJm8LqNfnXFOFyCC4,90
1738
- fastlifeweb-0.25.1.dist-info/entry_points.txt,sha256=6OYgBcLyFCUgeqLgnvMyOJxPCWzgy7se4rLPKtNonMs,34
1739
- fastlifeweb-0.25.1.dist-info/licenses/LICENSE,sha256=JFWuiKYRXKKMEAsX0aZp3hBcju-HYflJ2rwJAGwbCJo,1080
1740
- fastlifeweb-0.25.1.dist-info/RECORD,,
1736
+ fastlifeweb-0.25.2.dist-info/METADATA,sha256=szZ9s9Rv4714GIS8XeM0PAWN9EbGfZ5qX7T6TcjaMhE,3690
1737
+ fastlifeweb-0.25.2.dist-info/WHEEL,sha256=thaaA2w1JzcGC48WYufAs8nrYZjJm8LqNfnXFOFyCC4,90
1738
+ fastlifeweb-0.25.2.dist-info/entry_points.txt,sha256=6OYgBcLyFCUgeqLgnvMyOJxPCWzgy7se4rLPKtNonMs,34
1739
+ fastlifeweb-0.25.2.dist-info/licenses/LICENSE,sha256=JFWuiKYRXKKMEAsX0aZp3hBcju-HYflJ2rwJAGwbCJo,1080
1740
+ fastlifeweb-0.25.2.dist-info/RECORD,,