Coverage for gws-app/gws/plugin/model_widget/input/__init__.py: 100%
12 statements
« prev ^ index » next coverage.py v7.16.2, created at 2026-10-05 13:35 +0200
« prev ^ index » next coverage.py v7.16.2, created at 2026-10-05 13:35 +0200
1"""Simple input widget.
3Single-line text input with an optional placeholder text. This is the default
4widget of ``text``, ``datetime`` and ``time`` fields.
6Example::
8 fields+ {
9 name "name"
10 type "text"
11 widget { type "input" placeholder "Name" }
12 }
13"""
15import gws
16import gws.base.model.widget
19@gws.ext.config.modelWidget('input')
20class Config(gws.base.model.widget.Config):
21 """Single-line text input."""
23 placeholder: str = ''
24 """Hint text shown in the empty input."""
27@gws.ext.props.modelWidget('input')
28class Props(gws.base.model.widget.Props):
29 placeholder: str
32@gws.ext.object.modelWidget('input')
33class Object(gws.base.model.widget.Object):
34 """Simple input widget object."""
36 def props(self, user):
37 return gws.u.merge(
38 super().props(user),
39 placeholder=self.cfg('placeholder'),
40 )