reflex 0.7.0a4__py3-none-any.whl → 0.7.1a1__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.

Potentially problematic release.


This version of reflex might be problematic. Click here for more details.

Files changed (127) hide show
  1. reflex/.templates/web/components/reflex/radix_themes_color_mode_provider.js +3 -1
  2. reflex/__init__.py +1 -0
  3. reflex/__init__.pyi +1 -0
  4. reflex/app.py +251 -68
  5. reflex/base.py +4 -10
  6. reflex/compiler/compiler.py +46 -12
  7. reflex/compiler/templates.py +1 -2
  8. reflex/compiler/utils.py +23 -14
  9. reflex/components/base/bare.py +109 -16
  10. reflex/components/component.py +179 -124
  11. reflex/components/core/__init__.py +1 -0
  12. reflex/components/core/__init__.pyi +1 -0
  13. reflex/components/core/auto_scroll.py +111 -0
  14. reflex/components/core/auto_scroll.pyi +284 -0
  15. reflex/components/core/banner.py +35 -5
  16. reflex/components/core/banner.pyi +398 -36
  17. reflex/components/core/breakpoints.py +1 -1
  18. reflex/components/core/cond.py +0 -8
  19. reflex/components/core/foreach.py +12 -2
  20. reflex/components/core/html.pyi +200 -19
  21. reflex/components/core/match.py +4 -4
  22. reflex/components/core/sticky.py +4 -30
  23. reflex/components/core/sticky.pyi +874 -90
  24. reflex/components/core/upload.py +3 -5
  25. reflex/components/core/upload.pyi +2 -4
  26. reflex/components/datadisplay/code.py +36 -10
  27. reflex/components/datadisplay/code.pyi +1 -1
  28. reflex/components/datadisplay/dataeditor.py +1 -3
  29. reflex/components/datadisplay/dataeditor.pyi +1 -3
  30. reflex/components/el/elements/base.py +95 -17
  31. reflex/components/el/elements/base.pyi +278 -19
  32. reflex/components/el/elements/forms.py +124 -102
  33. reflex/components/el/elements/forms.pyi +2787 -365
  34. reflex/components/el/elements/inline.py +24 -15
  35. reflex/components/el/elements/inline.pyi +5655 -546
  36. reflex/components/el/elements/media.py +79 -95
  37. reflex/components/el/elements/media.pyi +5167 -565
  38. reflex/components/el/elements/metadata.py +19 -17
  39. reflex/components/el/elements/metadata.pyi +841 -89
  40. reflex/components/el/elements/other.py +3 -5
  41. reflex/components/el/elements/other.pyi +1404 -137
  42. reflex/components/el/elements/scripts.py +10 -13
  43. reflex/components/el/elements/scripts.pyi +634 -65
  44. reflex/components/el/elements/sectioning.pyi +3001 -286
  45. reflex/components/el/elements/tables.py +14 -35
  46. reflex/components/el/elements/tables.pyi +2029 -218
  47. reflex/components/el/elements/typography.py +10 -13
  48. reflex/components/el/elements/typography.pyi +3014 -297
  49. reflex/components/lucide/icon.py +22 -6
  50. reflex/components/markdown/markdown.py +30 -10
  51. reflex/components/markdown/markdown.pyi +3 -2
  52. reflex/components/plotly/plotly.py +1 -3
  53. reflex/components/plotly/plotly.pyi +1 -3
  54. reflex/components/radix/primitives/form.pyi +624 -93
  55. reflex/components/radix/themes/color_mode.py +1 -1
  56. reflex/components/radix/themes/color_mode.pyi +213 -31
  57. reflex/components/radix/themes/components/alert_dialog.pyi +199 -18
  58. reflex/components/radix/themes/components/badge.pyi +199 -18
  59. reflex/components/radix/themes/components/button.pyi +213 -31
  60. reflex/components/radix/themes/components/callout.pyi +1000 -95
  61. reflex/components/radix/themes/components/card.pyi +199 -18
  62. reflex/components/radix/themes/components/context_menu.py +79 -1
  63. reflex/components/radix/themes/components/context_menu.pyi +320 -1
  64. reflex/components/radix/themes/components/dialog.pyi +199 -18
  65. reflex/components/radix/themes/components/hover_card.pyi +199 -18
  66. reflex/components/radix/themes/components/icon_button.pyi +213 -31
  67. reflex/components/radix/themes/components/inset.pyi +199 -18
  68. reflex/components/radix/themes/components/popover.pyi +199 -18
  69. reflex/components/radix/themes/components/table.pyi +1437 -154
  70. reflex/components/radix/themes/components/text_area.py +2 -2
  71. reflex/components/radix/themes/components/text_area.pyi +201 -20
  72. reflex/components/radix/themes/components/text_field.py +1 -1
  73. reflex/components/radix/themes/components/text_field.pyi +444 -88
  74. reflex/components/radix/themes/layout/box.pyi +200 -19
  75. reflex/components/radix/themes/layout/center.pyi +199 -18
  76. reflex/components/radix/themes/layout/container.pyi +199 -18
  77. reflex/components/radix/themes/layout/flex.pyi +199 -18
  78. reflex/components/radix/themes/layout/grid.pyi +199 -18
  79. reflex/components/radix/themes/layout/list.pyi +604 -57
  80. reflex/components/radix/themes/layout/section.pyi +199 -18
  81. reflex/components/radix/themes/layout/spacer.pyi +199 -18
  82. reflex/components/radix/themes/layout/stack.pyi +597 -54
  83. reflex/components/radix/themes/typography/blockquote.pyi +200 -19
  84. reflex/components/radix/themes/typography/code.pyi +199 -18
  85. reflex/components/radix/themes/typography/heading.pyi +199 -18
  86. reflex/components/radix/themes/typography/link.pyi +238 -28
  87. reflex/components/radix/themes/typography/text.pyi +1394 -127
  88. reflex/components/react_player/react_player.py +1 -1
  89. reflex/components/react_player/react_player.pyi +1 -3
  90. reflex/components/sonner/toast.py +19 -1
  91. reflex/components/sonner/toast.pyi +10 -1
  92. reflex/components/tags/iter_tag.py +4 -0
  93. reflex/components/tags/tag.py +3 -3
  94. reflex/config.py +187 -28
  95. reflex/constants/__init__.py +2 -0
  96. reflex/constants/base.py +6 -0
  97. reflex/constants/compiler.py +9 -0
  98. reflex/constants/event.py +1 -0
  99. reflex/constants/installer.py +4 -5
  100. reflex/constants/utils.py +1 -3
  101. reflex/event.py +7 -16
  102. reflex/experimental/layout.pyi +597 -54
  103. reflex/py.typed +0 -0
  104. reflex/reflex.py +44 -48
  105. reflex/state.py +49 -44
  106. reflex/style.py +6 -4
  107. reflex/testing.py +2 -0
  108. reflex/utils/build.py +12 -0
  109. reflex/utils/console.py +4 -0
  110. reflex/utils/decorator.py +25 -0
  111. reflex/utils/exec.py +92 -34
  112. reflex/utils/format.py +35 -6
  113. reflex/utils/path_ops.py +32 -1
  114. reflex/utils/prerequisites.py +54 -10
  115. reflex/utils/processes.py +12 -13
  116. reflex/utils/serializers.py +20 -43
  117. reflex/utils/telemetry.py +4 -15
  118. reflex/utils/types.py +36 -66
  119. reflex/vars/base.py +53 -76
  120. reflex/vars/function.py +17 -5
  121. reflex/vars/number.py +1 -1
  122. reflex/vars/sequence.py +80 -4
  123. {reflex-0.7.0a4.dist-info → reflex-0.7.1a1.dist-info}/METADATA +4 -5
  124. {reflex-0.7.0a4.dist-info → reflex-0.7.1a1.dist-info}/RECORD +127 -123
  125. {reflex-0.7.0a4.dist-info → reflex-0.7.1a1.dist-info}/LICENSE +0 -0
  126. {reflex-0.7.0a4.dist-info → reflex-0.7.1a1.dist-info}/WHEEL +0 -0
  127. {reflex-0.7.0a4.dist-info → reflex-0.7.1a1.dist-info}/entry_points.txt +0 -0
@@ -3,7 +3,7 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  from hashlib import md5
6
- from typing import Any, Dict, Iterator, Set, Tuple, Union
6
+ from typing import Any, Dict, Iterator, Literal, Set, Tuple, Union
7
7
 
8
8
  from jinja2 import Environment
9
9
 
@@ -41,6 +41,8 @@ HANDLE_SUBMIT_JS_JINJA2 = Environment().from_string(
41
41
  """
42
42
  )
43
43
 
44
+ ButtonType = Literal["submit", "reset", "button"]
45
+
44
46
 
45
47
  class Button(BaseHTML):
46
48
  """Display the button element."""
@@ -48,37 +50,37 @@ class Button(BaseHTML):
48
50
  tag = "button"
49
51
 
50
52
  # Automatically focuses the button when the page loads
51
- auto_focus: Var[Union[str, int, bool]]
53
+ auto_focus: Var[bool]
52
54
 
53
55
  # Disables the button
54
56
  disabled: Var[bool]
55
57
 
56
58
  # Associates the button with a form (by id)
57
- form: Var[Union[str, int, bool]]
59
+ form: Var[str]
58
60
 
59
61
  # URL to send the form data to (for type="submit" buttons)
60
- form_action: Var[Union[str, int, bool]]
62
+ form_action: Var[str]
61
63
 
62
64
  # How the form data should be encoded when submitting to the server (for type="submit" buttons)
63
- form_enc_type: Var[Union[str, int, bool]]
65
+ form_enc_type: Var[str]
64
66
 
65
67
  # HTTP method to use for sending form data (for type="submit" buttons)
66
- form_method: Var[Union[str, int, bool]]
68
+ form_method: Var[str]
67
69
 
68
70
  # Bypasses form validation when submitting (for type="submit" buttons)
69
- form_no_validate: Var[Union[str, int, bool]]
71
+ form_no_validate: Var[bool]
70
72
 
71
73
  # Specifies where to display the response after submitting the form (for type="submit" buttons)
72
- form_target: Var[Union[str, int, bool]]
74
+ form_target: Var[str]
73
75
 
74
76
  # Name of the button, used when sending form data
75
- name: Var[Union[str, int, bool]]
77
+ name: Var[str]
76
78
 
77
79
  # Type of the button (submit, reset, or button)
78
- type: Var[Union[str, int, bool]]
80
+ type: Var[ButtonType]
79
81
 
80
82
  # Value of the button, used when sending form data
81
- value: Var[Union[str, int, bool]]
83
+ value: Var[Union[str, int, float]]
82
84
 
83
85
 
84
86
  class Datalist(BaseHTML):
@@ -93,13 +95,13 @@ class Fieldset(Element):
93
95
  tag = "fieldset"
94
96
 
95
97
  # Disables all the form control descendants of the fieldset
96
- disabled: Var[Union[str, int, bool]]
98
+ disabled: Var[bool]
97
99
 
98
100
  # Associates the fieldset with a form (by id)
99
- form: Var[Union[str, int, bool]]
101
+ form: Var[str]
100
102
 
101
103
  # Name of the fieldset, used for scripting
102
- name: Var[Union[str, int, bool]]
104
+ name: Var[str]
103
105
 
104
106
 
105
107
  def on_submit_event_spec() -> Tuple[Var[dict[str, Any]]]:
@@ -126,31 +128,31 @@ class Form(BaseHTML):
126
128
  tag = "form"
127
129
 
128
130
  # MIME types the server accepts for file upload
129
- accept: Var[Union[str, int, bool]]
131
+ accept: Var[str]
130
132
 
131
133
  # Character encodings to be used for form submission
132
- accept_charset: Var[Union[str, int, bool]]
134
+ accept_charset: Var[str]
133
135
 
134
136
  # URL where the form's data should be submitted
135
- action: Var[Union[str, int, bool]]
137
+ action: Var[str]
136
138
 
137
139
  # Whether the form should have autocomplete enabled
138
- auto_complete: Var[Union[str, int, bool]]
140
+ auto_complete: Var[str]
139
141
 
140
142
  # Encoding type for the form data when submitted
141
- enc_type: Var[Union[str, int, bool]]
143
+ enc_type: Var[str]
142
144
 
143
145
  # HTTP method to use for form submission
144
- method: Var[Union[str, int, bool]]
146
+ method: Var[str]
145
147
 
146
148
  # Name of the form
147
- name: Var[Union[str, int, bool]]
149
+ name: Var[str]
148
150
 
149
151
  # Indicates that the form should not be validated on submit
150
- no_validate: Var[Union[str, int, bool]]
152
+ no_validate: Var[bool]
151
153
 
152
154
  # Where to display the response after submitting the form
153
- target: Var[Union[str, int, bool]]
155
+ target: Var[str]
154
156
 
155
157
  # If true, the form will be cleared after submit.
156
158
  reset_on_submit: Var[bool] = Var.create(False)
@@ -266,106 +268,126 @@ class Form(BaseHTML):
266
268
  ]
267
269
 
268
270
 
271
+ HTMLInputTypeAttribute = Literal[
272
+ "button",
273
+ "checkbox",
274
+ "color",
275
+ "date",
276
+ "datetime-local",
277
+ "email",
278
+ "file",
279
+ "hidden",
280
+ "image",
281
+ "month",
282
+ "number",
283
+ "password",
284
+ "radio",
285
+ "range",
286
+ "reset",
287
+ "search",
288
+ "submit",
289
+ "tel",
290
+ "text",
291
+ "time",
292
+ "url",
293
+ "week",
294
+ ]
295
+
296
+
269
297
  class Input(BaseHTML):
270
298
  """Display the input element."""
271
299
 
272
300
  tag = "input"
273
301
 
274
302
  # Accepted types of files when the input is file type
275
- accept: Var[Union[str, int, bool]]
303
+ accept: Var[str]
276
304
 
277
305
  # Alternate text for input type="image"
278
- alt: Var[Union[str, int, bool]]
306
+ alt: Var[str]
279
307
 
280
308
  # Whether the input should have autocomplete enabled
281
- auto_complete: Var[Union[str, int, bool]]
309
+ auto_complete: Var[str]
282
310
 
283
311
  # Automatically focuses the input when the page loads
284
- auto_focus: Var[Union[str, int, bool]]
312
+ auto_focus: Var[bool]
285
313
 
286
314
  # Captures media from the user (camera or microphone)
287
- capture: Var[Union[str, int, bool]]
315
+ capture: Var[Literal[True, False, "user", "environment"]]
288
316
 
289
317
  # Indicates whether the input is checked (for checkboxes and radio buttons)
290
- checked: Var[Union[str, int, bool]]
318
+ checked: Var[bool]
291
319
 
292
320
  # The initial value (for checkboxes and radio buttons)
293
321
  default_checked: Var[bool]
294
322
 
295
323
  # The initial value for a text field
296
- default_value: Var[str]
297
-
298
- # Name part of the input to submit in 'dir' and 'name' pair when form is submitted
299
- dirname: Var[Union[str, int, bool]]
324
+ default_value: Var[Union[str, int, float]]
300
325
 
301
326
  # Disables the input
302
- disabled: Var[Union[str, int, bool]]
327
+ disabled: Var[bool]
303
328
 
304
329
  # Associates the input with a form (by id)
305
- form: Var[Union[str, int, bool]]
330
+ form: Var[str]
306
331
 
307
332
  # URL to send the form data to (for type="submit" buttons)
308
- form_action: Var[Union[str, int, bool]]
333
+ form_action: Var[str]
309
334
 
310
335
  # How the form data should be encoded when submitting to the server (for type="submit" buttons)
311
- form_enc_type: Var[Union[str, int, bool]]
336
+ form_enc_type: Var[str]
312
337
 
313
338
  # HTTP method to use for sending form data (for type="submit" buttons)
314
- form_method: Var[Union[str, int, bool]]
339
+ form_method: Var[str]
315
340
 
316
341
  # Bypasses form validation when submitting (for type="submit" buttons)
317
- form_no_validate: Var[Union[str, int, bool]]
342
+ form_no_validate: Var[bool]
318
343
 
319
344
  # Specifies where to display the response after submitting the form (for type="submit" buttons)
320
- form_target: Var[Union[str, int, bool]]
345
+ form_target: Var[str]
321
346
 
322
347
  # References a datalist for suggested options
323
- list: Var[Union[str, int, bool]]
348
+ list: Var[str]
324
349
 
325
350
  # Specifies the maximum value for the input
326
- max: Var[Union[str, int, bool]]
351
+ max: Var[Union[str, int, float]]
327
352
 
328
353
  # Specifies the maximum number of characters allowed in the input
329
- max_length: Var[Union[str, int, bool]]
354
+ max_length: Var[Union[int, float]]
330
355
 
331
356
  # Specifies the minimum number of characters required in the input
332
- min_length: Var[Union[str, int, bool]]
357
+ min_length: Var[Union[int, float]]
333
358
 
334
359
  # Specifies the minimum value for the input
335
- min: Var[Union[str, int, bool]]
360
+ min: Var[Union[str, int, float]]
336
361
 
337
362
  # Indicates whether multiple values can be entered in an input of the type email or file
338
- multiple: Var[Union[str, int, bool]]
363
+ multiple: Var[bool]
339
364
 
340
365
  # Name of the input, used when sending form data
341
- name: Var[Union[str, int, bool]]
366
+ name: Var[str]
342
367
 
343
368
  # Regex pattern the input's value must match to be valid
344
- pattern: Var[Union[str, int, bool]]
369
+ pattern: Var[str]
345
370
 
346
371
  # Placeholder text in the input
347
- placeholder: Var[Union[str, int, bool]]
372
+ placeholder: Var[str]
348
373
 
349
374
  # Indicates whether the input is read-only
350
- read_only: Var[Union[str, int, bool]]
375
+ read_only: Var[bool]
351
376
 
352
377
  # Indicates that the input is required
353
- required: Var[Union[str, int, bool]]
378
+ required: Var[bool]
354
379
 
355
380
  # Specifies the visible width of a text control
356
- size: Var[Union[str, int, bool]]
381
+ size: Var[Union[int, float]]
357
382
 
358
383
  # URL for image inputs
359
- src: Var[Union[str, int, bool]]
384
+ src: Var[str]
360
385
 
361
386
  # Specifies the legal number intervals for an input
362
- step: Var[Union[str, int, bool]]
387
+ step: Var[Union[str, int, float]]
363
388
 
364
389
  # Specifies the type of input
365
- type: Var[Union[str, int, bool]]
366
-
367
- # Name of the image map used with the input
368
- use_map: Var[Union[str, int, bool]]
390
+ type: Var[HTMLInputTypeAttribute]
369
391
 
370
392
  # Value of the input
371
393
  value: Var[Union[str, int, float]]
@@ -419,10 +441,10 @@ class Label(BaseHTML):
419
441
  tag = "label"
420
442
 
421
443
  # ID of a form control with which the label is associated
422
- html_for: Var[Union[str, int, bool]]
444
+ html_for: Var[str]
423
445
 
424
446
  # Associates the label with a form (by id)
425
- form: Var[Union[str, int, bool]]
447
+ form: Var[str]
426
448
 
427
449
 
428
450
  class Legend(BaseHTML):
@@ -437,25 +459,25 @@ class Meter(BaseHTML):
437
459
  tag = "meter"
438
460
 
439
461
  # Associates the meter with a form (by id)
440
- form: Var[Union[str, int, bool]]
462
+ form: Var[str]
441
463
 
442
464
  # High limit of range (above this is considered high value)
443
- high: Var[Union[str, int, bool]]
465
+ high: Var[Union[int, float]]
444
466
 
445
467
  # Low limit of range (below this is considered low value)
446
- low: Var[Union[str, int, bool]]
468
+ low: Var[Union[int, float]]
447
469
 
448
470
  # Maximum value of the range
449
- max: Var[Union[str, int, bool]]
471
+ max: Var[Union[int, float]]
450
472
 
451
473
  # Minimum value of the range
452
- min: Var[Union[str, int, bool]]
474
+ min: Var[Union[int, float]]
453
475
 
454
476
  # Optimum value in the range
455
- optimum: Var[Union[str, int, bool]]
477
+ optimum: Var[Union[int, float]]
456
478
 
457
479
  # Current value of the meter
458
- value: Var[Union[str, int, bool]]
480
+ value: Var[Union[int, float]]
459
481
 
460
482
 
461
483
  class Optgroup(BaseHTML):
@@ -464,10 +486,10 @@ class Optgroup(BaseHTML):
464
486
  tag = "optgroup"
465
487
 
466
488
  # Disables the optgroup
467
- disabled: Var[Union[str, int, bool]]
489
+ disabled: Var[bool]
468
490
 
469
491
  # Label for the optgroup
470
- label: Var[Union[str, int, bool]]
492
+ label: Var[str]
471
493
 
472
494
 
473
495
  class Option(BaseHTML):
@@ -476,16 +498,16 @@ class Option(BaseHTML):
476
498
  tag = "option"
477
499
 
478
500
  # Disables the option
479
- disabled: Var[Union[str, int, bool]]
501
+ disabled: Var[bool]
480
502
 
481
503
  # Label for the option, if the text is not the label
482
- label: Var[Union[str, int, bool]]
504
+ label: Var[str]
483
505
 
484
506
  # Indicates that the option is initially selected
485
- selected: Var[Union[str, int, bool]]
507
+ selected: Var[bool]
486
508
 
487
509
  # Value to be sent as form data
488
- value: Var[Union[str, int, bool]]
510
+ value: Var[Union[str, int, float]]
489
511
 
490
512
 
491
513
  class Output(BaseHTML):
@@ -494,13 +516,13 @@ class Output(BaseHTML):
494
516
  tag = "output"
495
517
 
496
518
  # Associates the output with one or more elements (by their IDs)
497
- html_for: Var[Union[str, int, bool]]
519
+ html_for: Var[str]
498
520
 
499
521
  # Associates the output with a form (by id)
500
- form: Var[Union[str, int, bool]]
522
+ form: Var[str]
501
523
 
502
524
  # Name of the output element for form submission
503
- name: Var[Union[str, int, bool]]
525
+ name: Var[str]
504
526
 
505
527
 
506
528
  class Progress(BaseHTML):
@@ -509,13 +531,13 @@ class Progress(BaseHTML):
509
531
  tag = "progress"
510
532
 
511
533
  # Associates the progress element with a form (by id)
512
- form: Var[Union[str, int, bool]]
534
+ form: Var[str]
513
535
 
514
536
  # Maximum value of the progress indicator
515
- max: Var[Union[str, int, bool]]
537
+ max: Var[Union[str, int, float]]
516
538
 
517
539
  # Current value of the progress indicator
518
- value: Var[Union[str, int, bool]]
540
+ value: Var[Union[str, int, float]]
519
541
 
520
542
 
521
543
  class Select(BaseHTML):
@@ -524,28 +546,28 @@ class Select(BaseHTML):
524
546
  tag = "select"
525
547
 
526
548
  # Whether the form control should have autocomplete enabled
527
- auto_complete: Var[Union[str, int, bool]]
549
+ auto_complete: Var[str]
528
550
 
529
551
  # Automatically focuses the select when the page loads
530
- auto_focus: Var[Union[str, int, bool]]
552
+ auto_focus: Var[bool]
531
553
 
532
554
  # Disables the select control
533
- disabled: Var[Union[str, int, bool]]
555
+ disabled: Var[bool]
534
556
 
535
557
  # Associates the select with a form (by id)
536
- form: Var[Union[str, int, bool]]
558
+ form: Var[str]
537
559
 
538
560
  # Indicates that multiple options can be selected
539
- multiple: Var[Union[str, int, bool]]
561
+ multiple: Var[bool]
540
562
 
541
563
  # Name of the select, used when submitting the form
542
- name: Var[Union[str, int, bool]]
564
+ name: Var[str]
543
565
 
544
566
  # Indicates that the select control must have a selected option
545
- required: Var[Union[str, int, bool]]
567
+ required: Var[bool]
546
568
 
547
569
  # Number of visible options in a drop-down list
548
- size: Var[Union[str, int, bool]]
570
+ size: Var[int]
549
571
 
550
572
  # Fired when the select value changes
551
573
  on_change: EventHandler[input_event]
@@ -587,58 +609,58 @@ class Textarea(BaseHTML):
587
609
  tag = "textarea"
588
610
 
589
611
  # Whether the form control should have autocomplete enabled
590
- auto_complete: Var[Union[str, int, bool]]
612
+ auto_complete: Var[str]
591
613
 
592
614
  # Automatically focuses the textarea when the page loads
593
- auto_focus: Var[Union[str, int, bool]]
615
+ auto_focus: Var[bool]
594
616
 
595
617
  # Automatically fit the content height to the text (use min-height with this prop)
596
618
  auto_height: Var[bool]
597
619
 
598
620
  # Visible width of the text control, in average character widths
599
- cols: Var[Union[str, int, bool]]
621
+ cols: Var[int]
600
622
 
601
623
  # The default value of the textarea when initially rendered
602
624
  default_value: Var[str]
603
625
 
604
626
  # Name part of the textarea to submit in 'dir' and 'name' pair when form is submitted
605
- dirname: Var[Union[str, int, bool]]
627
+ dirname: Var[str]
606
628
 
607
629
  # Disables the textarea
608
- disabled: Var[Union[str, int, bool]]
630
+ disabled: Var[bool]
609
631
 
610
632
  # Enter key submits form (shift-enter adds new line)
611
633
  enter_key_submit: Var[bool]
612
634
 
613
635
  # Associates the textarea with a form (by id)
614
- form: Var[Union[str, int, bool]]
636
+ form: Var[str]
615
637
 
616
638
  # Maximum number of characters allowed in the textarea
617
- max_length: Var[Union[str, int, bool]]
639
+ max_length: Var[int]
618
640
 
619
641
  # Minimum number of characters required in the textarea
620
- min_length: Var[Union[str, int, bool]]
642
+ min_length: Var[int]
621
643
 
622
644
  # Name of the textarea, used when submitting the form
623
- name: Var[Union[str, int, bool]]
645
+ name: Var[str]
624
646
 
625
647
  # Placeholder text in the textarea
626
- placeholder: Var[Union[str, int, bool]]
648
+ placeholder: Var[str]
627
649
 
628
650
  # Indicates whether the textarea is read-only
629
- read_only: Var[Union[str, int, bool]]
651
+ read_only: Var[bool]
630
652
 
631
653
  # Indicates that the textarea is required
632
- required: Var[Union[str, int, bool]]
654
+ required: Var[bool]
633
655
 
634
656
  # Visible number of lines in the text control
635
- rows: Var[Union[str, int, bool]]
657
+ rows: Var[int]
636
658
 
637
659
  # The controlled value of the textarea, read only unless used with on_change
638
- value: Var[Union[str, int, bool]]
660
+ value: Var[str]
639
661
 
640
662
  # How the text in the textarea is to be wrapped when submitting the form
641
- wrap: Var[Union[str, int, bool]]
663
+ wrap: Var[str]
642
664
 
643
665
  # Fired when the input value changes
644
666
  on_change: EventHandler[input_event]