|
92 | 92 | DATE = "date" |
93 | 93 | TIME = "time" |
94 | 94 | COLOR = "color" |
| 95 | +DATETIME_LOCAL = "datetime-local" |
95 | 96 |
|
96 | 97 | CHECKBOX = 'checkbox' |
97 | 98 | RADIO = 'radio' |
98 | 99 | SELECT = 'select' |
99 | 100 | TEXTAREA = 'textarea' |
100 | 101 |
|
101 | | -__all__ = ['TEXT', 'NUMBER', 'FLOAT', 'PASSWORD', 'URL', 'DATE', 'TIME', 'COLOR', 'input', 'textarea', 'select', |
| 102 | +__all__ = ['TEXT', 'NUMBER', 'FLOAT', 'PASSWORD', 'URL', 'DATE', 'TIME', 'COLOR', 'DATETIME_LOCAL', 'input', 'textarea', 'select', |
102 | 103 | 'checkbox', 'radio', 'actions', 'file_upload', 'slider', 'input_group', 'input_update'] |
103 | 104 |
|
104 | 105 |
|
@@ -134,7 +135,7 @@ def input(label='', type=TEXT, *, validate=None, name=None, value=None, action=N |
134 | 135 | r"""Text input |
135 | 136 |
|
136 | 137 | :param str label: Label of input field. |
137 | | - :param str type: Input type. Currently, supported types are:`TEXT` , `NUMBER` , `FLOAT` , `PASSWORD` , `URL` , `DATE` , `TIME`, `COLOR` |
| 138 | + :param str type: Input type. Currently, supported types are:`TEXT` , `NUMBER` , `FLOAT` , `PASSWORD` , `URL` , `DATE` , `TIME`, `COLOR`, `DATETIME_LOCAL` |
138 | 139 |
|
139 | 140 | Note that `DATE` and `TIME` type are not supported on some browsers, |
140 | 141 | for details see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Browser_compatibility |
@@ -223,7 +224,7 @@ def select_date(set_value): |
223 | 224 | item_spec, valid_func, onchange_func = _parse_args(locals(), excludes=('action',)) |
224 | 225 |
|
225 | 226 | # check input type |
226 | | - allowed_type = {TEXT, NUMBER, FLOAT, PASSWORD, URL, DATE, TIME, COLOR} |
| 227 | + allowed_type = {TEXT, NUMBER, FLOAT, PASSWORD, URL, DATE, TIME, COLOR, DATETIME_LOCAL} |
227 | 228 | assert type in allowed_type, 'Input type not allowed.' |
228 | 229 |
|
229 | 230 | value_setter = None |
@@ -722,7 +723,7 @@ def check_form(data): |
722 | 723 |
|
723 | 724 | if all('auto_focus' not in i for i in spec_inputs): # No `auto_focus` parameter is set for each input item |
724 | 725 | for i in spec_inputs: |
725 | | - text_inputs = {TEXT, NUMBER, PASSWORD, SELECT, URL, FLOAT, DATE, TIME} |
| 726 | + text_inputs = {TEXT, NUMBER, PASSWORD, SELECT, URL, FLOAT, DATE, TIME, DATETIME_LOCAL} |
726 | 727 | if i.get('type') in text_inputs: |
727 | 728 | i['auto_focus'] = True |
728 | 729 | break |
|
0 commit comments