reflex 0.8.7__py3-none-any.whl → 0.8.8a1__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.
- reflex/app.py +13 -5
- reflex/app_mixins/lifespan.py +8 -2
- reflex/compiler/compiler.py +12 -12
- reflex/compiler/templates.py +629 -102
- reflex/compiler/utils.py +29 -20
- reflex/components/base/bare.py +17 -0
- reflex/components/component.py +37 -33
- reflex/components/core/cond.py +6 -12
- reflex/components/core/foreach.py +1 -1
- reflex/components/core/match.py +83 -60
- reflex/components/dynamic.py +3 -3
- reflex/components/el/elements/forms.py +31 -14
- reflex/components/el/elements/forms.pyi +0 -5
- reflex/components/lucide/icon.py +2 -1
- reflex/components/lucide/icon.pyi +2 -1
- reflex/components/markdown/markdown.py +2 -2
- reflex/components/radix/primitives/accordion.py +1 -1
- reflex/components/radix/primitives/drawer.py +1 -1
- reflex/components/radix/primitives/form.py +1 -1
- reflex/components/radix/primitives/slider.py +1 -1
- reflex/components/tags/cond_tag.py +14 -5
- reflex/components/tags/iter_tag.py +0 -26
- reflex/components/tags/match_tag.py +15 -6
- reflex/components/tags/tag.py +3 -6
- reflex/components/tags/tagless.py +14 -0
- reflex/constants/base.py +0 -2
- reflex/constants/installer.py +4 -4
- reflex/custom_components/custom_components.py +202 -15
- reflex/experimental/client_state.py +1 -1
- reflex/istate/manager.py +2 -1
- reflex/plugins/shared_tailwind.py +87 -62
- reflex/plugins/tailwind_v3.py +2 -2
- reflex/plugins/tailwind_v4.py +4 -4
- reflex/state.py +5 -1
- reflex/utils/format.py +2 -3
- reflex/utils/frontend_skeleton.py +2 -2
- reflex/utils/imports.py +18 -0
- reflex/utils/pyi_generator.py +10 -2
- reflex/utils/telemetry.py +4 -1
- reflex/utils/templates.py +1 -6
- {reflex-0.8.7.dist-info → reflex-0.8.8a1.dist-info}/METADATA +3 -4
- {reflex-0.8.7.dist-info → reflex-0.8.8a1.dist-info}/RECORD +45 -66
- reflex/.templates/jinja/app/rxconfig.py.jinja2 +0 -9
- reflex/.templates/jinja/custom_components/README.md.jinja2 +0 -9
- reflex/.templates/jinja/custom_components/__init__.py.jinja2 +0 -1
- reflex/.templates/jinja/custom_components/demo_app.py.jinja2 +0 -39
- reflex/.templates/jinja/custom_components/pyproject.toml.jinja2 +0 -25
- reflex/.templates/jinja/custom_components/src.py.jinja2 +0 -57
- reflex/.templates/jinja/web/package.json.jinja2 +0 -27
- reflex/.templates/jinja/web/pages/_app.js.jinja2 +0 -62
- reflex/.templates/jinja/web/pages/_document.js.jinja2 +0 -9
- reflex/.templates/jinja/web/pages/base_page.js.jinja2 +0 -21
- reflex/.templates/jinja/web/pages/component.js.jinja2 +0 -2
- reflex/.templates/jinja/web/pages/custom_component.js.jinja2 +0 -22
- reflex/.templates/jinja/web/pages/index.js.jinja2 +0 -18
- reflex/.templates/jinja/web/pages/macros.js.jinja2 +0 -38
- reflex/.templates/jinja/web/pages/stateful_component.js.jinja2 +0 -15
- reflex/.templates/jinja/web/pages/stateful_components.js.jinja2 +0 -5
- reflex/.templates/jinja/web/pages/utils.js.jinja2 +0 -93
- reflex/.templates/jinja/web/styles/styles.css.jinja2 +0 -6
- reflex/.templates/jinja/web/utils/context.js.jinja2 +0 -129
- reflex/.templates/jinja/web/utils/theme.js.jinja2 +0 -1
- reflex/.templates/jinja/web/vite.config.js.jinja2 +0 -74
- {reflex-0.8.7.dist-info → reflex-0.8.8a1.dist-info}/WHEEL +0 -0
- {reflex-0.8.7.dist-info → reflex-0.8.8a1.dist-info}/entry_points.txt +0 -0
- {reflex-0.8.7.dist-info → reflex-0.8.8a1.dist-info}/licenses/LICENSE +0 -0
|
@@ -2,7 +2,7 @@ reflex/__init__.py,sha256=_1PVYjDeA6_JyfXvL6OuKjjO6AX2oMiNcAq8AEHf6xw,10161
|
|
|
2
2
|
reflex/__init__.pyi,sha256=0D46kHVUJPE_kgYL-BjraERu-MXNCPsQTZQShrijmeQ,10148
|
|
3
3
|
reflex/__main__.py,sha256=6cVrGEyT3j3tEvlEVUatpaYfbB5EF3UVY-6vc_Z7-hw,108
|
|
4
4
|
reflex/admin.py,sha256=Nbc38y-M8iaRBvh1W6DQu_D3kEhO8JFvxrog4q2cB_E,434
|
|
5
|
-
reflex/app.py,sha256=
|
|
5
|
+
reflex/app.py,sha256=7jJ5knRgpbh5XWqMD3rTIy0bjqOJm-DkdlnC1geOX6c,77713
|
|
6
6
|
reflex/assets.py,sha256=l5O_mlrTprC0lF7Rc_McOe3a0OtSLnRdNl_PqCpDCBA,3431
|
|
7
7
|
reflex/base.py,sha256=Oh664QL3fZEHErhUasFqP7fE4olYf1y-9Oj6uZI2FCU,1173
|
|
8
8
|
reflex/config.py,sha256=JhCChJ3WkOvC7sFIcKZ7T_JBobC0XiBlCPTlai6-fyU,20227
|
|
@@ -13,33 +13,12 @@ reflex/page.py,sha256=ssCbMVFuIy60vH-YhJUzN0OxzUwXFCCD3ej56dVjp3g,3525
|
|
|
13
13
|
reflex/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
14
14
|
reflex/reflex.py,sha256=KVlNh8nQGzuaYnpUtQ1D7Rcuqzp1TeKernlDucTXaQE,22578
|
|
15
15
|
reflex/route.py,sha256=TnS4m6Hm-b3LfGFpm37iAMEd-_JISAouPW5FqUxTAfU,7858
|
|
16
|
-
reflex/state.py,sha256=
|
|
16
|
+
reflex/state.py,sha256=3LuX6dejVnQL8m0e_db1K48iww3_xiE0jJD8ByNUFU4,93198
|
|
17
17
|
reflex/style.py,sha256=JxbXXA4MTnXrk0XHEoMBoNC7J-M2oL5Hl3W_QmXvmBg,13222
|
|
18
18
|
reflex/testing.py,sha256=kR-imGVnWCp6xiryuZcJJIfogRg2tcNT4tw5mt0T3sY,39901
|
|
19
19
|
reflex/.templates/apps/blank/assets/favicon.ico,sha256=baxxgDAQ2V4-G5Q4S2yK5uUJTUGkv-AOWBQ0xd6myUo,4286
|
|
20
20
|
reflex/.templates/apps/blank/code/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
21
21
|
reflex/.templates/apps/blank/code/blank.py,sha256=wry9E3VjC7qtt_gzqNOyo4KZAAlzVyNp3uhFkcLZmM0,898
|
|
22
|
-
reflex/.templates/jinja/app/rxconfig.py.jinja2,sha256=ywlCgdKvAcUzmzyW-TGIiYCF5yqIH641PD0tWr6tOTc,170
|
|
23
|
-
reflex/.templates/jinja/custom_components/README.md.jinja2,sha256=qA4XZDxOTc2gRIG7CO1VvVawOgThwZqU2RZvRTPhXwE,127
|
|
24
|
-
reflex/.templates/jinja/custom_components/__init__.py.jinja2,sha256=z5n2tvoS7iNDaM6mUGKETdpGlC0oA1_rrYURu7O_xpk,32
|
|
25
|
-
reflex/.templates/jinja/custom_components/demo_app.py.jinja2,sha256=ipbKtObNqQLcwbFowod_bSWW4bttW_8bNyTXl7JL1zg,826
|
|
26
|
-
reflex/.templates/jinja/custom_components/pyproject.toml.jinja2,sha256=HG-k3pruUlMy7xYz339hgFkNMTLqB-C_FTLKkOgfBPM,630
|
|
27
|
-
reflex/.templates/jinja/custom_components/src.py.jinja2,sha256=e80PwMI6NoeQtGJ0NXWhYrkqUe7jvvJTFuztYQe-R5w,2403
|
|
28
|
-
reflex/.templates/jinja/web/package.json.jinja2,sha256=cS9M6ADYDoYL2Kc8m5dYhV8eDaehOXb6qK_IOijT3N0,673
|
|
29
|
-
reflex/.templates/jinja/web/vite.config.js.jinja2,sha256=pSrDq10Y4oSSO55CCsxsT2I0OUIoqBnEhxjG6ElFVN4,1715
|
|
30
|
-
reflex/.templates/jinja/web/pages/_app.js.jinja2,sha256=tG-SRR7DCP3SxLoUl_5rIRmL1uBDVnkcenSUxy459hY,1575
|
|
31
|
-
reflex/.templates/jinja/web/pages/_document.js.jinja2,sha256=v_r79GPGKnw1g9Bg4lK9o_ow5AzBnvKdz0nv3OgJyzU,166
|
|
32
|
-
reflex/.templates/jinja/web/pages/base_page.js.jinja2,sha256=nteivFZgOhgwxlPvejgaoxKTPGvDRb7_JAXhsZDZeLM,361
|
|
33
|
-
reflex/.templates/jinja/web/pages/component.js.jinja2,sha256=1Pui62uSL7LYA7FXZrh9ZmhKH8vHYu663eR134hhsAY,86
|
|
34
|
-
reflex/.templates/jinja/web/pages/custom_component.js.jinja2,sha256=xUOfUwREPp4h2kozr6mEqSAASnNLzC9b9XHCXVsUQjg,485
|
|
35
|
-
reflex/.templates/jinja/web/pages/index.js.jinja2,sha256=7sXw99TfjlcLYiLKlWvD3k-3IuFzLO4Y63mvSU97uds,360
|
|
36
|
-
reflex/.templates/jinja/web/pages/macros.js.jinja2,sha256=RtMZ6eufmMrHghNDMKpueSAhd-znKjgBbJXAAHFc7vU,901
|
|
37
|
-
reflex/.templates/jinja/web/pages/stateful_component.js.jinja2,sha256=gAipi5MiAVgHntadfThsogunlqpmUwLk5ROLyJJGgUM,387
|
|
38
|
-
reflex/.templates/jinja/web/pages/stateful_components.js.jinja2,sha256=BfHi7ckH9u5xOliKWxjgmnia6AJbNnII97SC-dt_KSU,101
|
|
39
|
-
reflex/.templates/jinja/web/pages/utils.js.jinja2,sha256=12v0-q-o-m0Oxr0H35GTtoJqGRpmbZSrRd5js95F5fI,3156
|
|
40
|
-
reflex/.templates/jinja/web/styles/styles.css.jinja2,sha256=acb0EFvhRLLMc_EDguy1qcMq9CJ6i2tsWUzFyXi-9vk,163
|
|
41
|
-
reflex/.templates/jinja/web/utils/context.js.jinja2,sha256=l1k-H4Y0DmOdeMr8xVEwkSzeBpVc1o94cOjJJ3B2WSY,4103
|
|
42
|
-
reflex/.templates/jinja/web/utils/theme.js.jinja2,sha256=OSpBMh0Z9tTeqb10js4ZtnE9s1RV4gJfE8629csST8M,26
|
|
43
22
|
reflex/.templates/web/.gitignore,sha256=3tT0CtVkCL09D_Y3Hd4myUgGcBuESeavCa0WHU5ifJ4,417
|
|
44
23
|
reflex/.templates/web/jsconfig.json,sha256=rhQZZRBYxBWclFYTeU6UakzbGveM4qyRQZUpEAVhyqY,118
|
|
45
24
|
reflex/.templates/web/postcss.config.js,sha256=6Hf540Ny078yfmJ_-tniZtmgHW6euyEyxO0zH-Y1EtQ,86
|
|
@@ -58,17 +37,17 @@ reflex/.templates/web/utils/helpers/paste.js,sha256=ef30HsR83jRzzvZnl8yV79yqFP8T
|
|
|
58
37
|
reflex/.templates/web/utils/helpers/range.js,sha256=Bjr7Ex1Mghpsopjfrcp__IVFw8F8AsMiP-0nE20ZZwk,1091
|
|
59
38
|
reflex/.templates/web/utils/helpers/throttle.js,sha256=qxeyaEojaTeX36FPGftzVWrzDsRQU4iqg3U9RJz9Vj4,566
|
|
60
39
|
reflex/app_mixins/__init__.py,sha256=Oegz3-gZLP9p2OAN5ALNbsgxuNQfS6lGZgQA8cc-9mQ,137
|
|
61
|
-
reflex/app_mixins/lifespan.py,sha256=
|
|
40
|
+
reflex/app_mixins/lifespan.py,sha256=a156ZUYVo2bN1Tv-4WmWSjojo90PP_2-V12BX0q8YNw,3543
|
|
62
41
|
reflex/app_mixins/middleware.py,sha256=BKhe0jUFO1_TylEC48LUZyaeYyPmAYW-NV4H5Rw221k,2848
|
|
63
42
|
reflex/app_mixins/mixin.py,sha256=R1YncalqDrbdPZvpKVbm72ZKmQZxYAWfuFq9JknzTqQ,305
|
|
64
43
|
reflex/compiler/__init__.py,sha256=r8jqmDSFf09iV2lHlNhfc9XrTLjNxfDNwPYlxS4cmHE,27
|
|
65
|
-
reflex/compiler/compiler.py,sha256=
|
|
66
|
-
reflex/compiler/templates.py,sha256=
|
|
67
|
-
reflex/compiler/utils.py,sha256=
|
|
44
|
+
reflex/compiler/compiler.py,sha256=mvGynpsmFI5de5vQcH7Urkv7l8eOO_ytUxB4_XigbyY,29125
|
|
45
|
+
reflex/compiler/templates.py,sha256=PcFJpmFJ99OlQtgXd_UKVCUQ62LDWAwMnwL3QKZgXI0,20080
|
|
46
|
+
reflex/compiler/utils.py,sha256=saz5INjH5C7WO1bS3FE1vRm5sKcSXrNnbmFpmLI0xyw,19128
|
|
68
47
|
reflex/components/__init__.py,sha256=eWpgWFbSQDj2TpGp6StEbxU7roQgzY7ZM0XIcIc5RE8,588
|
|
69
48
|
reflex/components/__init__.pyi,sha256=7VFHtJGIjvGtD3IiPk848IPWYSCcPRT1EyPGljLhYlU,736
|
|
70
|
-
reflex/components/component.py,sha256=
|
|
71
|
-
reflex/components/dynamic.py,sha256=
|
|
49
|
+
reflex/components/component.py,sha256=sv_zeiC8hZMn8DptUHgBzX2wffVNT3EzepWXxJd68R4,98628
|
|
50
|
+
reflex/components/dynamic.py,sha256=WfN1waxtRuuZ3-8MvooDi4SkFxem4R8wAHOLXx_9rCo,7422
|
|
72
51
|
reflex/components/field.py,sha256=j5JZFzNlET3GAIW91m1L31RypXylMAxJNm0-CJbtykM,5745
|
|
73
52
|
reflex/components/literals.py,sha256=hogLnwTJxFJODIvqihg-GD9kFZVsEBDoYzaRit56Nuk,501
|
|
74
53
|
reflex/components/props.py,sha256=BH7RiRu_EI2BRkB1PyBVp6tLeFTTV4FzGEdDIXXQ9Bk,14378
|
|
@@ -76,7 +55,7 @@ reflex/components/base/__init__.py,sha256=6DzVn2oVZqmsXYq3r9AN8Q40R0NAsyRpSyVzBD
|
|
|
76
55
|
reflex/components/base/__init__.pyi,sha256=CoM0dGGkZSKLNHe6KBS4Zgc6sRpRGM5dZ_EuVmZ2qkA,883
|
|
77
56
|
reflex/components/base/app_wrap.py,sha256=5K_myvYvHPeAJbm3BdEX17tKvdNEj6SV9RYahbIQBAQ,514
|
|
78
57
|
reflex/components/base/app_wrap.pyi,sha256=opdrLSp-IGFibjM4bPLZPxLsyhc1H6nev2F9XhPfOSg,1996
|
|
79
|
-
reflex/components/base/bare.py,sha256=
|
|
58
|
+
reflex/components/base/bare.py,sha256=yALgxs1OhssQVcrcJwWtprw_DKKeXjVMLMZpTzn0Isc,8271
|
|
80
59
|
reflex/components/base/body.py,sha256=KLPOhxVsKyjPwrY9AziCOOG_c9ckOqIhI4n2i3_Q3NU,129
|
|
81
60
|
reflex/components/base/body.pyi,sha256=VG8N-0ocwgFOJR9mXfu6a5BtIY_jR7mK9lX3Y22g9GQ,8655
|
|
82
61
|
reflex/components/base/document.py,sha256=Fr7y22NbeKeiz8kWPH2q5BpFjKdq-AmY-sxZilee_H8,636
|
|
@@ -103,15 +82,15 @@ reflex/components/core/breakpoints.py,sha256=7nNG9Ewjvbk1hB0VoFiQxlDR333Mq2y977C
|
|
|
103
82
|
reflex/components/core/clipboard.py,sha256=lrM4KpbioSqBclhvtrgawgeg9Vq2dKsv40xP4bUgYmA,3339
|
|
104
83
|
reflex/components/core/clipboard.pyi,sha256=Wt84ce1rd5vje-KuzAIkn_0riAD91_VtnZcRiRBsFLs,3230
|
|
105
84
|
reflex/components/core/colors.py,sha256=gkT5o5OqI_BR5fGMcCmBUpaz99XRNol9zAis46WktI4,1564
|
|
106
|
-
reflex/components/core/cond.py,sha256=
|
|
85
|
+
reflex/components/core/cond.py,sha256=zjDM7Elf0iYpA1MtnUjXvEbD5XvYbluWDTaQ96uxZSI,5531
|
|
107
86
|
reflex/components/core/debounce.py,sha256=P0rj23JKVsx_dzPMVI4HTOyrXhhacxh-QkI4Z9K6KNQ,5022
|
|
108
87
|
reflex/components/core/debounce.pyi,sha256=-vEa4eIS2VlHwoL1jMmAey_dMGzz0h4VbDhzC6JT6vI,3105
|
|
109
|
-
reflex/components/core/foreach.py,sha256=
|
|
88
|
+
reflex/components/core/foreach.py,sha256=HCAoDfdyumK8FvgNrfnQeNRaf6Cngn_6U02640M8ofI,6264
|
|
110
89
|
reflex/components/core/helmet.py,sha256=9Fr2Tz_J2v8r5t1xeZClL0V5-fEWTiFAXTcJ6bECvAw,220
|
|
111
90
|
reflex/components/core/helmet.pyi,sha256=dp5AOEPQYM77-_ylpsbgbsZkUqu37RblgUGw7Y0BGcI,2391
|
|
112
91
|
reflex/components/core/html.py,sha256=JKK3MsbuzxtcVXbzvW_Q4TZuF9yk3WwiC9LmQl34rzA,1303
|
|
113
92
|
reflex/components/core/html.pyi,sha256=yDzRQ10yf8ZzbP76C2rEG2gx6Vud_Ez3LcHDWMgyFns,8944
|
|
114
|
-
reflex/components/core/match.py,sha256=
|
|
93
|
+
reflex/components/core/match.py,sha256=xBB9vtWgVlotPHq6ssng8lzxwXDDQLp9k6Ew5RPPd3U,9888
|
|
115
94
|
reflex/components/core/responsive.py,sha256=ACZdtJ4a4F8B3dm1k8h6J2_UJx0Z5LDB7XHQ2ty4wAc,1911
|
|
116
95
|
reflex/components/core/sticky.py,sha256=2B3TxrwG2Rtp_lv1VkMOIF2bqSiT7qYGbqbiZiMKxKY,3856
|
|
117
96
|
reflex/components/core/sticky.pyi,sha256=jtxJjHR8eZEq2yKHGr0U16Nof4OpDXMadf1JtA_6ofk,32750
|
|
@@ -137,8 +116,8 @@ reflex/components/el/elements/__init__.py,sha256=_uZaPHSQSDZBqo-v_hRZECJbWBY3Srq
|
|
|
137
116
|
reflex/components/el/elements/__init__.pyi,sha256=LCaxINN6BUqHsxgpDITjOUqJnF3x5rRI8y2fj62ZT14,8680
|
|
138
117
|
reflex/components/el/elements/base.py,sha256=4jnwyCQUHvWcIfwiIWVCiIC_jbwZlkAiOgx73t7tdw8,3075
|
|
139
118
|
reflex/components/el/elements/base.pyi,sha256=RPdq_8Z1gkV-5n2qeEVQWpPCwVSTzY4eYb6iIJVU-ig,10074
|
|
140
|
-
reflex/components/el/elements/forms.py,sha256=
|
|
141
|
-
reflex/components/el/elements/forms.pyi,sha256=
|
|
119
|
+
reflex/components/el/elements/forms.py,sha256=75RJqmw4vBEUeYFNZwza91BpiXnEVSSK3HVPqyZcK44,22004
|
|
120
|
+
reflex/components/el/elements/forms.pyi,sha256=NSmo68oksZkzOoSGA5XKNVzqU0K3WIzkFN82EDLC-f8,168115
|
|
142
121
|
reflex/components/el/elements/inline.py,sha256=q3Ku_x8L9NaXrYQovCfkWwZ5AfXG0VyhGN_OT73kA0Y,4126
|
|
143
122
|
reflex/components/el/elements/inline.pyi,sha256=0pjqiHH8DmFfghbM8MK5tqgiZGSnfT-o055GINU8xrA,231760
|
|
144
123
|
reflex/components/el/elements/media.py,sha256=t5vDG5q8K_-YTu2tkyeC7bXb0O913Z5C74jPhDjIqmA,14586
|
|
@@ -159,10 +138,10 @@ reflex/components/gridjs/__init__.py,sha256=xJwDm1AZ70L5-t9LLqZwGUtDpijbf1KuMYDT
|
|
|
159
138
|
reflex/components/gridjs/datatable.py,sha256=7JKrRw1zkpFB0_wwoaIhrVrldsm7-dyi3PASgqLq8Hc,4224
|
|
160
139
|
reflex/components/gridjs/datatable.pyi,sha256=kFgv82vCgfdWZaUq4bZ73G8X3mkw6ecvSRkZ9G9-28E,5185
|
|
161
140
|
reflex/components/lucide/__init__.py,sha256=EggTK2MuQKQeOBLKW-mF0VaDK9zdWBImu1HO2dvHZbE,73
|
|
162
|
-
reflex/components/lucide/icon.py,sha256=
|
|
163
|
-
reflex/components/lucide/icon.pyi,sha256=
|
|
141
|
+
reflex/components/lucide/icon.py,sha256=Ow04V0M_9Ccgitp82NqaxTpMkTcIGYxTactJRZrrQMI,35214
|
|
142
|
+
reflex/components/lucide/icon.pyi,sha256=aqYf3ax3GX7RH4BUIfIG-PIeFVwZe0P9SHbucfb7q1Y,38008
|
|
164
143
|
reflex/components/markdown/__init__.py,sha256=Dfl1At5uYoY7H4ufZU_RY2KOGQDLtj75dsZ2BTqqAns,87
|
|
165
|
-
reflex/components/markdown/markdown.py,sha256=
|
|
144
|
+
reflex/components/markdown/markdown.py,sha256=kzvO2VnfCbxV7AcIMBJbxLtAlQ6U5T_QB_JTh8l-HJ4,15450
|
|
166
145
|
reflex/components/markdown/markdown.pyi,sha256=oOlXZItHB0TPWsFz1Qjvr3KzG8sssthBp40UO_KkRIA,4322
|
|
167
146
|
reflex/components/moment/__init__.py,sha256=jGnZgRBivYJQPIcFgtLaXFteCeIG3gGH5ACXkjEgmsI,92
|
|
168
147
|
reflex/components/moment/moment.py,sha256=fhhzrun9USb8J30btpyyDD3JuXF_N7EL5Dou3x7NQYw,4080
|
|
@@ -174,17 +153,17 @@ reflex/components/radix/__init__.py,sha256=fRsLvIO3MrTtPOXtmnxYDB9phvzlcbyB_utgp
|
|
|
174
153
|
reflex/components/radix/__init__.pyi,sha256=ke_dGrpFMNHd3MgQ9qiStSQDlGcJ39KVSrpIxayBU3c,3927
|
|
175
154
|
reflex/components/radix/primitives/__init__.py,sha256=R2sdZJqQCYaLScGkXnXDKAjVgV5MidceemooEUtvBt4,443
|
|
176
155
|
reflex/components/radix/primitives/__init__.pyi,sha256=kOCtVqDuSsBt5-lCcqM-3CBJsv-QokWIfkq0_iyqVDU,413
|
|
177
|
-
reflex/components/radix/primitives/accordion.py,sha256=
|
|
156
|
+
reflex/components/radix/primitives/accordion.py,sha256=yr_GtuU8cGiMyXmWXFx-Tz8P1dyz-zNTa1-bsHoME-Y,16191
|
|
178
157
|
reflex/components/radix/primitives/accordion.pyi,sha256=QuAwkB02qfJs8zqHfS25tpLYCjlnenEIMH61KKI8u1Q,28219
|
|
179
158
|
reflex/components/radix/primitives/base.py,sha256=9OvGDI1to8XL_a2hr3fNBQUwTHZBUO424ea2-UTKD18,770
|
|
180
159
|
reflex/components/radix/primitives/base.pyi,sha256=Cv5PCGNBO-QFXvBs5E5sxIkcQUgSHHUhSxQPl64T4ZU,4635
|
|
181
|
-
reflex/components/radix/primitives/drawer.py,sha256=
|
|
160
|
+
reflex/components/radix/primitives/drawer.py,sha256=3-l8kUX9WZ-4SFbMIVOeU5CJWHHC5SMLpZk_kgd2o3I,9262
|
|
182
161
|
reflex/components/radix/primitives/drawer.pyi,sha256=bdYaa6-WjH3kdFBFZc2IRwfSTrgqI3vFy5ueQuvAHEo,29735
|
|
183
|
-
reflex/components/radix/primitives/form.py,sha256=
|
|
162
|
+
reflex/components/radix/primitives/form.py,sha256=jxCt0xZRE9Xx5tBIJNojYwyvhN631_aNdlFQSPgm2dU,4801
|
|
184
163
|
reflex/components/radix/primitives/form.pyi,sha256=1g9IOcPDWPQDrdLYkeHgVXnF9Dcsng82yH8xKlOjrRw,47184
|
|
185
164
|
reflex/components/radix/primitives/progress.py,sha256=UvuUn6eWEhnhqImDvYOwa9Z3CE5gu5EV28uPBbZAT4k,3988
|
|
186
165
|
reflex/components/radix/primitives/progress.pyi,sha256=63AyvhVFf1lDG5NQTW-1o2Ek_kx2dt_tVAS-5RXM-Fw,16469
|
|
187
|
-
reflex/components/radix/primitives/slider.py,sha256=
|
|
166
|
+
reflex/components/radix/primitives/slider.py,sha256=a0btZ7GCuyXHSV4CZbXD7AP1BTh_VHvOnrac3a8BnCY,5030
|
|
188
167
|
reflex/components/radix/primitives/slider.pyi,sha256=Hv8YlWsCgGhstlaq9_C8abryIu60bImpjCvzTwbDVn0,12446
|
|
189
168
|
reflex/components/radix/themes/__init__.py,sha256=3ASzR_OrjkLXZ6CksGKIQPOcyYZ984NzXrn2UCIdxUc,492
|
|
190
169
|
reflex/components/radix/themes/__init__.pyi,sha256=B_xv0vBBRsCOinQasRO3ni_g8xbpucIPXCn5xZckgww,445
|
|
@@ -325,31 +304,31 @@ reflex/components/sonner/__init__.py,sha256=L_mdRIy7-ccRGSz5VK6J8O-c-e-D1p9xWw29
|
|
|
325
304
|
reflex/components/sonner/toast.py,sha256=sJ9E60VaMBwoev4aBrKr42ygN7e0jajNTooa5o5wYPQ,12505
|
|
326
305
|
reflex/components/sonner/toast.pyi,sha256=cj0zlkcFVmJ3CrHe2XIsF0MeBw61Bn-hrGkzHTFz8Og,7782
|
|
327
306
|
reflex/components/tags/__init__.py,sha256=Pc0JU-Tv_W7KCsydXgbKmu7w2VtHNkI6Cx2hTkNhW_Q,152
|
|
328
|
-
reflex/components/tags/cond_tag.py,sha256=
|
|
329
|
-
reflex/components/tags/iter_tag.py,sha256=
|
|
330
|
-
reflex/components/tags/match_tag.py,sha256=
|
|
331
|
-
reflex/components/tags/tag.py,sha256=
|
|
332
|
-
reflex/components/tags/tagless.py,sha256=
|
|
307
|
+
reflex/components/tags/cond_tag.py,sha256=svlnSP2ZMwHqjsHa3fq7a7K2--3XTLo5FcbjOw7fVik,849
|
|
308
|
+
reflex/components/tags/iter_tag.py,sha256=Q4rPOt0NSjYhAPDOnNtu7XPxn3MCYZInZjYU3xPJq2Q,3716
|
|
309
|
+
reflex/components/tags/match_tag.py,sha256=ppkf2o4sMcaK-lAn7cNC3ZcmiUUbtdVhRdsw6IvD10s,805
|
|
310
|
+
reflex/components/tags/tag.py,sha256=wlwD1We3ipgibPGsT1FS0aYYaJasLsjlfaOTgUT_aGg,3848
|
|
311
|
+
reflex/components/tags/tagless.py,sha256=APeSG-6N5-ucWwkq_hUl7zfT_vpoKleQdP80wPERG18,904
|
|
333
312
|
reflex/constants/__init__.py,sha256=q2Jf-LBbNcGrOmx5M7QotIAYW_t3m02TsmmdtJ5_IhM,2190
|
|
334
|
-
reflex/constants/base.py,sha256=
|
|
313
|
+
reflex/constants/base.py,sha256=rZ2JFO3mu5fVpjIUbiPJ7YCbensCjefbzYtV9uEwqpw,7539
|
|
335
314
|
reflex/constants/colors.py,sha256=n-FN7stNrvk5rCN0TAvE28dqwUeQZHue-b5q1CO0EyQ,2048
|
|
336
315
|
reflex/constants/compiler.py,sha256=bzmC1OW6kWr06rV1Gwoa2AtQ4yPoGhEzeoqpiNY0jwU,5703
|
|
337
316
|
reflex/constants/config.py,sha256=8OIjiBdZZJrRVHsNBheMwopE9AwBFFzau0SXqXKcrPg,1715
|
|
338
317
|
reflex/constants/custom_components.py,sha256=joJt4CEt1yKy7wsBH6vYo7_QRW0O_fWXrrTf0VY2q14,1317
|
|
339
318
|
reflex/constants/event.py,sha256=tgoynWQi2L0_Kqc3XhXo7XXL76A-OKhJGHRrNjm7gFw,2885
|
|
340
|
-
reflex/constants/installer.py,sha256=
|
|
319
|
+
reflex/constants/installer.py,sha256=VmTFvbevO5lk_t1KbY4Nq_uvnfnFzUChf4IJWfjBCbs,4191
|
|
341
320
|
reflex/constants/route.py,sha256=UBjqaAOxiUxlDZCSY4O2JJChKvA4MZrhUU0E5rNvKbM,2682
|
|
342
321
|
reflex/constants/state.py,sha256=dkoVvO9JcJyHovHJlGsZx-dDxpM80OvS4cJEm_TUOiM,349
|
|
343
322
|
reflex/constants/utils.py,sha256=e1ChEvbHfmE_V2UJvCSUhD_qTVAIhEGPpRJSqdSd6PA,780
|
|
344
323
|
reflex/custom_components/__init__.py,sha256=R4zsvOi4dfPmHc18KEphohXnQFBPnUCb50cMR5hSLDE,36
|
|
345
|
-
reflex/custom_components/custom_components.py,sha256=
|
|
324
|
+
reflex/custom_components/custom_components.py,sha256=QfSEiPQY7Z7ZdYDsxJOgtD7EZopIdGw2ERpt_dMcPCs,25500
|
|
346
325
|
reflex/experimental/__init__.py,sha256=P8fe8S2e2gy2HCwHFGQzr3lPMmh7qN5Ii2e8ukoPHuQ,1664
|
|
347
|
-
reflex/experimental/client_state.py,sha256=
|
|
326
|
+
reflex/experimental/client_state.py,sha256=adITjFmvzO081yaVgne2PZpG0hc_SrJHyLLbE-zfet0,10024
|
|
348
327
|
reflex/experimental/hooks.py,sha256=CHYGrAE5t8riltrJmDFgJ4D2Vhmhw-y3B3MSGNlOQow,2366
|
|
349
328
|
reflex/istate/__init__.py,sha256=afq_pCS5B_REC-Kl3Rbaa538uWi59xNz4INeuENcWnk,2039
|
|
350
329
|
reflex/istate/data.py,sha256=KrANpAQFTZcfFWnxyykgK1FRNuXTwTin1WYpyqymV-U,7547
|
|
351
330
|
reflex/istate/dynamic.py,sha256=xOQ9upZVPf6ngqcLQZ9HdAAYmoWwJ8kRFPH34Q5HTiM,91
|
|
352
|
-
reflex/istate/manager.py,sha256=
|
|
331
|
+
reflex/istate/manager.py,sha256=xQhvpTqnsVI5DmnZOq39IiQ-g1d-gtihQdEGKKM6-oQ,30531
|
|
353
332
|
reflex/istate/proxy.py,sha256=Q8JrV1m6drVcTNJL9JuN-nKUXclazs96OHl_fhR0UBk,25928
|
|
354
333
|
reflex/istate/storage.py,sha256=gCPoiZxuG-Rw0y-Pz3OC7rv4o08dQ_jK1fE2u8Jhxqg,4339
|
|
355
334
|
reflex/istate/wrappers.py,sha256=p8uuioXRbR5hperwbOJHUcWdu7hukLikQdoR7qrnKsI,909
|
|
@@ -359,10 +338,10 @@ reflex/middleware/middleware.py,sha256=p5VVoIgQ_NwOg_GOY6g0S4fmrV76_VE1zt-HiwbMw
|
|
|
359
338
|
reflex/plugins/__init__.py,sha256=jrMWQqMxCwDwgwQYTygeR_pIewMcvIFwAnngPbjSumQ,439
|
|
360
339
|
reflex/plugins/_screenshot.py,sha256=CAOaRpbrpTTIswwCXqhv7WYShB86Ao9MVv6dcXJzRb4,3958
|
|
361
340
|
reflex/plugins/base.py,sha256=5BgzCM7boj9kJ6FGzVzVlgQk-crJuVmOLCl1PXvv4-E,3372
|
|
362
|
-
reflex/plugins/shared_tailwind.py,sha256=
|
|
341
|
+
reflex/plugins/shared_tailwind.py,sha256=Zx1TDAjpXGI5aEjpB8NWS__xYRSNu_SEMTB6Z3ub120,7305
|
|
363
342
|
reflex/plugins/sitemap.py,sha256=Jj47uSMnkxndl7awkl48EhlQylBfY00WuMBNyTBcZHA,6186
|
|
364
|
-
reflex/plugins/tailwind_v3.py,sha256=
|
|
365
|
-
reflex/plugins/tailwind_v4.py,sha256=
|
|
343
|
+
reflex/plugins/tailwind_v3.py,sha256=jCEZ5UYdr706Mw48L-WSHOUB6O55o1C3uG6AMwXqZoI,4810
|
|
344
|
+
reflex/plugins/tailwind_v4.py,sha256=q6OxgWENu4fml4mKr8ncgjIU5ENgQCfNagtUOh51hik,5230
|
|
366
345
|
reflex/utils/__init__.py,sha256=y-AHKiRQAhk2oAkvn7W8cRVTZVK625ff8tTwvZtO7S4,24
|
|
367
346
|
reflex/utils/build.py,sha256=GLT2ycqgAe1cw__MFbfdlYrkzcTnY1oJ8cAv80jEcnQ,8641
|
|
368
347
|
reflex/utils/codespaces.py,sha256=kEQ-j-jclTukFpXDlYgNp95kYMGDrQmP3VNEoYGZ1u4,3052
|
|
@@ -372,9 +351,9 @@ reflex/utils/decorator.py,sha256=QUZntENupeW5FA5mNRTx0I1GzGKFQXhMjVg24_IIM5o,395
|
|
|
372
351
|
reflex/utils/exceptions.py,sha256=Wwu7Ji2xgq521bJKtU2NgjwhmFfnG8erirEVN2h8S-g,8884
|
|
373
352
|
reflex/utils/exec.py,sha256=o0u81B6pHv5Yt982V1vFYEJDxgM-HxmM5KRUBbTYmZI,21965
|
|
374
353
|
reflex/utils/export.py,sha256=Z2AHuhkxGQzOi9I90BejQ4qEcD0URr2i-ZU5qTJt7eQ,2562
|
|
375
|
-
reflex/utils/format.py,sha256=
|
|
376
|
-
reflex/utils/frontend_skeleton.py,sha256=
|
|
377
|
-
reflex/utils/imports.py,sha256=
|
|
354
|
+
reflex/utils/format.py,sha256=ZgZndjYujTMiHaG2Yg3LPVqr7-yoZZTBvlCLNX07iEU,21109
|
|
355
|
+
reflex/utils/frontend_skeleton.py,sha256=aCWJZN-xtZ9pOMrUwpx9RDXorCpTcNDeD9p3Meh-Q5U,8608
|
|
356
|
+
reflex/utils/imports.py,sha256=3hBb_3UPRjHt90HiFEoAt1acJWQ29RU8PFA1rFLLVRo,4242
|
|
378
357
|
reflex/utils/js_runtimes.py,sha256=ipVrZCajiRcjow-nQeUuxPS_c6F_NpfvMtITOesbPjU,13153
|
|
379
358
|
reflex/utils/lazy_loader.py,sha256=BiY9OvmAJDCz10qpuyTYv9duXgMFQa6RXKQmTO9hqKU,4453
|
|
380
359
|
reflex/utils/misc.py,sha256=folEweZVCrhHNkkqut9KqQdTJ80HxwL_gI41m40FnNM,4592
|
|
@@ -383,13 +362,13 @@ reflex/utils/net.py,sha256=q3h5pNbAlFiqy8U15S9DTOvzy_OnenVVug5ROBTGRTA,4267
|
|
|
383
362
|
reflex/utils/path_ops.py,sha256=_RS17IQDNr5vcoLLGZx2-z1E5WP-JgDHvaRAOgqrZiU,8154
|
|
384
363
|
reflex/utils/prerequisites.py,sha256=LEQCGg_PpvrNOBiOMZUZRrqWXYAW1Zkp56tHAPrpL9s,18643
|
|
385
364
|
reflex/utils/processes.py,sha256=t-ufWwu9RDsSMXCSsmjS2TILP5s7-AY94Rgx2O2gHMw,18178
|
|
386
|
-
reflex/utils/pyi_generator.py,sha256=
|
|
365
|
+
reflex/utils/pyi_generator.py,sha256=j-xzMg2XjjM7eJsdx5cG4tWpe__ef0a8Isv1AvawqpA,46393
|
|
387
366
|
reflex/utils/redir.py,sha256=E6lJ6UYGQs_uCyQAKHT_dDMplo5IRZ9JarWfvgGAgGo,1731
|
|
388
367
|
reflex/utils/registry.py,sha256=omKh5rrsybDuuKmh4K88lwdwwcpGsu3Vc4pCko_djKY,2239
|
|
389
368
|
reflex/utils/rename.py,sha256=qdE4SXHOaNs-TDGrnJz-h_nvLWA1C5osVrWb4wLSfyI,5262
|
|
390
369
|
reflex/utils/serializers.py,sha256=sVLfbWIBKPpmo0CVVxoxXGu0K3R9mYMWgaI02LXZmcM,13952
|
|
391
|
-
reflex/utils/telemetry.py,sha256=
|
|
392
|
-
reflex/utils/templates.py,sha256=
|
|
370
|
+
reflex/utils/telemetry.py,sha256=KY54NmGWyJVSf9TMTcXw2V6gIbEqut1JkAXmmtIlRfw,10776
|
|
371
|
+
reflex/utils/templates.py,sha256=tWo3jO6laQX8b0gUsqHkio_hUQGIvFbmXC-lxiGcdRo,14251
|
|
393
372
|
reflex/utils/token_manager.py,sha256=o_HGbqT9WfYRmek2iY9nem4vDZMz8Q4Dra-eW1lKmuA,6999
|
|
394
373
|
reflex/utils/types.py,sha256=jFHfd2-yHWV61L7YP2gc9Zj2ZLwdthHOOfRIc_PAWH0,38390
|
|
395
374
|
reflex/vars/__init__.py,sha256=85eXMt32bFoKtMdH3KxYRMD8mtnKyYiQcThPxJLoW1k,1359
|
|
@@ -401,8 +380,8 @@ reflex/vars/number.py,sha256=tO7pnvFaBsedq1HWT4skytnSqHWMluGEhUbjAUMx8XQ,28190
|
|
|
401
380
|
reflex/vars/object.py,sha256=BDmeiwG8v97s_BnR1Egq3NxOKVjv9TfnREB3cz0zZtk,17322
|
|
402
381
|
reflex/vars/sequence.py,sha256=1kBrqihspyjyQ1XDqFPC8OpVGtZs_EVkOdIKBro5ilA,55249
|
|
403
382
|
scripts/hatch_build.py,sha256=-4pxcLSFmirmujGpQX9UUxjhIC03tQ_fIQwVbHu9kc0,1861
|
|
404
|
-
reflex-0.8.
|
|
405
|
-
reflex-0.8.
|
|
406
|
-
reflex-0.8.
|
|
407
|
-
reflex-0.8.
|
|
408
|
-
reflex-0.8.
|
|
383
|
+
reflex-0.8.8a1.dist-info/METADATA,sha256=YRd_uiDbOXgskGwb-csfoXMKBmyglU9xxt-k4lnguYY,12507
|
|
384
|
+
reflex-0.8.8a1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
385
|
+
reflex-0.8.8a1.dist-info/entry_points.txt,sha256=Rxt4dXc7MLBNt5CSHTehVPuSe9Xqow4HLX55nD9tQQ0,45
|
|
386
|
+
reflex-0.8.8a1.dist-info/licenses/LICENSE,sha256=dw3zLrp9f5ObD7kqS32vWfhcImfO52PMmRqvtxq_YEE,11358
|
|
387
|
+
reflex-0.8.8a1.dist-info/RECORD,,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
from .{{ module_name }} import *
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"""Welcome to Reflex! This file showcases the custom component in a basic app."""
|
|
2
|
-
|
|
3
|
-
from rxconfig import config
|
|
4
|
-
|
|
5
|
-
import reflex as rx
|
|
6
|
-
|
|
7
|
-
from {{ custom_component_module_dir }} import {{ module_name }}
|
|
8
|
-
|
|
9
|
-
filename = f"{config.app_name}/{config.app_name}.py"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
class State(rx.State):
|
|
13
|
-
"""The app state."""
|
|
14
|
-
|
|
15
|
-
pass
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
def index() -> rx.Component:
|
|
19
|
-
return rx.center(
|
|
20
|
-
rx.theme_panel(),
|
|
21
|
-
rx.vstack(
|
|
22
|
-
rx.heading("Welcome to Reflex!", size="9"),
|
|
23
|
-
rx.text(
|
|
24
|
-
"Test your custom component by editing ",
|
|
25
|
-
rx.code(filename),
|
|
26
|
-
font_size="2em",
|
|
27
|
-
),
|
|
28
|
-
{{ module_name }}(),
|
|
29
|
-
align="center",
|
|
30
|
-
spacing="7",
|
|
31
|
-
),
|
|
32
|
-
height="100vh",
|
|
33
|
-
)
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
# Add state and page to the app.
|
|
37
|
-
app = rx.App()
|
|
38
|
-
app.add_page(index)
|
|
39
|
-
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
[build-system]
|
|
2
|
-
requires = ["setuptools", "wheel"]
|
|
3
|
-
build-backend = "setuptools.build_meta"
|
|
4
|
-
|
|
5
|
-
[project]
|
|
6
|
-
name = "{{ package_name }}"
|
|
7
|
-
version = "0.0.1"
|
|
8
|
-
description = "Reflex custom component {{ module_name }}"
|
|
9
|
-
readme = "README.md"
|
|
10
|
-
license = { text = "Apache-2.0" }
|
|
11
|
-
requires-python = ">=3.10"
|
|
12
|
-
authors = [{ name = "", email = "YOUREMAIL@domain.com" }]
|
|
13
|
-
keywords = ["reflex","reflex-custom-components"]
|
|
14
|
-
|
|
15
|
-
dependencies = ["reflex>={{ reflex_version }}"]
|
|
16
|
-
|
|
17
|
-
classifiers = ["Development Status :: 4 - Beta"]
|
|
18
|
-
|
|
19
|
-
[project.urls]
|
|
20
|
-
|
|
21
|
-
[project.optional-dependencies]
|
|
22
|
-
dev = ["build", "twine"]
|
|
23
|
-
|
|
24
|
-
[tool.setuptools.packages.find]
|
|
25
|
-
where = ["custom_components"]
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
"""Reflex custom component {{ component_class_name }}."""
|
|
2
|
-
|
|
3
|
-
# For wrapping react guide, visit https://reflex.dev/docs/wrapping-react/overview/
|
|
4
|
-
|
|
5
|
-
import reflex as rx
|
|
6
|
-
|
|
7
|
-
# Some libraries you want to wrap may require dynamic imports.
|
|
8
|
-
# This is because they they may not be compatible with Server-Side Rendering (SSR).
|
|
9
|
-
# To handle this in Reflex, all you need to do is subclass `NoSSRComponent` instead.
|
|
10
|
-
# For example:
|
|
11
|
-
# from reflex.components.component import NoSSRComponent
|
|
12
|
-
# class {{ component_class_name }}(NoSSRComponent):
|
|
13
|
-
# pass
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
class {{ component_class_name }}(rx.Component):
|
|
17
|
-
"""{{ component_class_name }} component."""
|
|
18
|
-
|
|
19
|
-
# The React library to wrap.
|
|
20
|
-
library = "Fill-Me"
|
|
21
|
-
|
|
22
|
-
# The React component tag.
|
|
23
|
-
tag = "Fill-Me"
|
|
24
|
-
|
|
25
|
-
# If the tag is the default export from the module, you must set is_default = True.
|
|
26
|
-
# This is normally used when components don't have curly braces around them when importing.
|
|
27
|
-
# is_default = True
|
|
28
|
-
|
|
29
|
-
# If you are wrapping another components with the same tag as a component in your project
|
|
30
|
-
# you can use aliases to differentiate between them and avoid naming conflicts.
|
|
31
|
-
# alias = "Other{{ component_class_name }}"
|
|
32
|
-
|
|
33
|
-
# The props of the React component.
|
|
34
|
-
# Note: when Reflex compiles the component to Javascript,
|
|
35
|
-
# `snake_case` property names are automatically formatted as `camelCase`.
|
|
36
|
-
# The prop names may be defined in `camelCase` as well.
|
|
37
|
-
# some_prop: rx.Var[str] = "some default value"
|
|
38
|
-
# some_other_prop: rx.Var[int] = 1
|
|
39
|
-
|
|
40
|
-
# By default Reflex will install the library you have specified in the library property.
|
|
41
|
-
# However, sometimes you may need to install other libraries to use a component.
|
|
42
|
-
# In this case you can use the lib_dependencies property to specify other libraries to install.
|
|
43
|
-
# lib_dependencies: list[str] = []
|
|
44
|
-
|
|
45
|
-
# Event triggers declaration if any.
|
|
46
|
-
# Below is equivalent to merging `{ "on_change": lambda e: [e] }`
|
|
47
|
-
# onto the default event triggers of parent/base Component.
|
|
48
|
-
# The function defined for the `on_change` trigger maps event for the javascript
|
|
49
|
-
# trigger to what will be passed to the backend event handler function.
|
|
50
|
-
# on_change: rx.EventHandler[lambda e: [e]]
|
|
51
|
-
|
|
52
|
-
# To add custom code to your component
|
|
53
|
-
# def _get_custom_code(self) -> str:
|
|
54
|
-
# return "const customCode = 'customCode';"
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
{{ module_name }} = {{ component_class_name }}.create
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "reflex",
|
|
3
|
-
"type": "module",
|
|
4
|
-
"scripts": {
|
|
5
|
-
"dev": "{{ scripts.dev }}",
|
|
6
|
-
"export": "{{ scripts.export }}",
|
|
7
|
-
"prod": "{{ scripts.prod }}"
|
|
8
|
-
},
|
|
9
|
-
"dependencies": {
|
|
10
|
-
{% for package, version in dependencies.items() %}
|
|
11
|
-
"{{ package }}": "{{ version }}"{% if not loop.last %},{% endif %}
|
|
12
|
-
|
|
13
|
-
{% endfor %}
|
|
14
|
-
},
|
|
15
|
-
"devDependencies": {
|
|
16
|
-
{% for package, version in dev_dependencies.items() %}
|
|
17
|
-
"{{ package }}": "{{ version }}"{% if not loop.last %},{% endif %}
|
|
18
|
-
|
|
19
|
-
{% endfor %}
|
|
20
|
-
},
|
|
21
|
-
"overrides": {
|
|
22
|
-
{% for package, version in overrides.items() %}
|
|
23
|
-
"{{ package }}": "{{ version }}"{% if not loop.last %},{% endif %}
|
|
24
|
-
|
|
25
|
-
{% endfor %}
|
|
26
|
-
}
|
|
27
|
-
}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
{% extends "web/pages/base_page.js.jinja2" %}
|
|
2
|
-
{% from "web/pages/macros.js.jinja2" import renderHooks %}
|
|
3
|
-
|
|
4
|
-
{% block early_imports %}
|
|
5
|
-
import reflexGlobalStyles from '$/styles/__reflex_global_styles.css?url';
|
|
6
|
-
{% endblock %}
|
|
7
|
-
|
|
8
|
-
{% block declaration %}
|
|
9
|
-
import { EventLoopProvider, StateProvider, defaultColorMode } from "$/utils/context";
|
|
10
|
-
import { ThemeProvider } from '$/utils/react-theme';
|
|
11
|
-
import { Layout as AppLayout } from './_document';
|
|
12
|
-
import { Outlet } from 'react-router';
|
|
13
|
-
{% for library_alias, library_path in window_libraries %}
|
|
14
|
-
import * as {{library_alias}} from "{{library_path}}";
|
|
15
|
-
{% endfor %}
|
|
16
|
-
|
|
17
|
-
{% for custom_code in custom_codes %}
|
|
18
|
-
{{custom_code}}
|
|
19
|
-
{% endfor %}
|
|
20
|
-
{% endblock %}
|
|
21
|
-
|
|
22
|
-
{% block export %}
|
|
23
|
-
export const links = () => [
|
|
24
|
-
{ rel: 'stylesheet', href: reflexGlobalStyles, type: 'text/css' }
|
|
25
|
-
];
|
|
26
|
-
|
|
27
|
-
function AppWrap({children}) {
|
|
28
|
-
{{ renderHooks(hooks) }}
|
|
29
|
-
|
|
30
|
-
return (
|
|
31
|
-
{{utils.render(render)}}
|
|
32
|
-
)
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
export function Layout({children}) {
|
|
37
|
-
useEffect(() => {
|
|
38
|
-
// Make contexts and state objects available globally for dynamic eval'd components
|
|
39
|
-
let windowImports = {
|
|
40
|
-
{% for library_alias, library_path in window_libraries %}
|
|
41
|
-
"{{library_path}}": {{library_alias}},
|
|
42
|
-
{% endfor %}
|
|
43
|
-
};
|
|
44
|
-
window["__reflex"] = windowImports;
|
|
45
|
-
}, []);
|
|
46
|
-
|
|
47
|
-
return jsx(AppLayout, {},
|
|
48
|
-
jsx(ThemeProvider, {defaultTheme: defaultColorMode, attribute: "class"},
|
|
49
|
-
jsx(StateProvider, {},
|
|
50
|
-
jsx(EventLoopProvider, {},
|
|
51
|
-
jsx(AppWrap, {}, children)
|
|
52
|
-
)
|
|
53
|
-
)
|
|
54
|
-
)
|
|
55
|
-
);
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
export default function App() {
|
|
59
|
-
return jsx(Outlet, {});
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
{% endblock %}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
{% import 'web/pages/utils.js.jinja2' as utils %}
|
|
2
|
-
|
|
3
|
-
{% block early_imports %}
|
|
4
|
-
{% endblock %}
|
|
5
|
-
|
|
6
|
-
{%- block imports_libs %}
|
|
7
|
-
|
|
8
|
-
{% for module in imports%}
|
|
9
|
-
{{- utils.get_import(module) }}
|
|
10
|
-
{% endfor %}
|
|
11
|
-
|
|
12
|
-
{% for dynamic_import in dynamic_imports %}
|
|
13
|
-
{{dynamic_import}}
|
|
14
|
-
{% endfor %}
|
|
15
|
-
{% endblock %}
|
|
16
|
-
|
|
17
|
-
{% block declaration %}
|
|
18
|
-
{% endblock %}
|
|
19
|
-
|
|
20
|
-
{% block export %}
|
|
21
|
-
{% endblock %}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
{% extends "web/pages/base_page.js.jinja2" %}
|
|
2
|
-
{% from "web/pages/macros.js.jinja2" import renderHooks %}
|
|
3
|
-
|
|
4
|
-
{% block declaration %}
|
|
5
|
-
{% for custom_code in custom_codes %}
|
|
6
|
-
{{custom_code}}
|
|
7
|
-
{% endfor %}
|
|
8
|
-
{% endblock %}
|
|
9
|
-
|
|
10
|
-
{% block export %}
|
|
11
|
-
{% for component in components %}
|
|
12
|
-
|
|
13
|
-
export const {{component.name}} = memo(({ {{-component.props|join(", ")-}} }) => {
|
|
14
|
-
{{ renderHooks(component.hooks) }}
|
|
15
|
-
|
|
16
|
-
return(
|
|
17
|
-
{{utils.render(component.render)}}
|
|
18
|
-
)
|
|
19
|
-
|
|
20
|
-
})
|
|
21
|
-
{% endfor %}
|
|
22
|
-
{% endblock %}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
{% extends "web/pages/base_page.js.jinja2" %}
|
|
2
|
-
{% from "web/pages/macros.js.jinja2" import renderHooks %}
|
|
3
|
-
|
|
4
|
-
{% block declaration %}
|
|
5
|
-
{% for custom_code in custom_codes %}
|
|
6
|
-
{{custom_code}}
|
|
7
|
-
{% endfor %}
|
|
8
|
-
{% endblock %}
|
|
9
|
-
|
|
10
|
-
{% block export %}
|
|
11
|
-
export default function Component() {
|
|
12
|
-
{{ renderHooks(hooks)}}
|
|
13
|
-
|
|
14
|
-
return (
|
|
15
|
-
{{utils.render(render)}}
|
|
16
|
-
)
|
|
17
|
-
}
|
|
18
|
-
{% endblock %}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
{% macro renderHooks(hooks) %}
|
|
2
|
-
{% set sorted_hooks = sort_hooks(hooks) %}
|
|
3
|
-
|
|
4
|
-
{# Render the grouped hooks #}
|
|
5
|
-
{% for hook, _ in sorted_hooks[const.hook_position.INTERNAL] %}
|
|
6
|
-
{{ hook }}
|
|
7
|
-
{% endfor %}
|
|
8
|
-
|
|
9
|
-
{% for hook, _ in sorted_hooks[const.hook_position.PRE_TRIGGER] %}
|
|
10
|
-
{{ hook }}
|
|
11
|
-
{% endfor %}
|
|
12
|
-
|
|
13
|
-
{% for hook, _ in sorted_hooks[const.hook_position.POST_TRIGGER] %}
|
|
14
|
-
{{ hook }}
|
|
15
|
-
{% endfor %}
|
|
16
|
-
{% endmacro %}
|
|
17
|
-
|
|
18
|
-
{% macro renderHooksWithMemo(hooks, memo)%}
|
|
19
|
-
{% set sorted_hooks = sort_hooks(hooks) %}
|
|
20
|
-
|
|
21
|
-
{# Render the grouped hooks #}
|
|
22
|
-
{% for hook, _ in sorted_hooks[const.hook_position.INTERNAL] %}
|
|
23
|
-
{{ hook }}
|
|
24
|
-
{% endfor %}
|
|
25
|
-
|
|
26
|
-
{% for hook, _ in sorted_hooks[const.hook_position.PRE_TRIGGER] %}
|
|
27
|
-
{{ hook }}
|
|
28
|
-
{% endfor %}
|
|
29
|
-
|
|
30
|
-
{% for hook in memo %}
|
|
31
|
-
{{ hook }}
|
|
32
|
-
{% endfor %}
|
|
33
|
-
|
|
34
|
-
{% for hook, _ in sorted_hooks[const.hook_position.POST_TRIGGER] %}
|
|
35
|
-
{{ hook }}
|
|
36
|
-
{% endfor %}
|
|
37
|
-
|
|
38
|
-
{% endmacro %}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
{% import 'web/pages/utils.js.jinja2' as utils %}
|
|
2
|
-
{% from 'web/pages/macros.js.jinja2' import renderHooksWithMemo %}
|
|
3
|
-
{% set all_hooks = component._get_all_hooks() %}
|
|
4
|
-
|
|
5
|
-
{% if export %}
|
|
6
|
-
export function {{tag_name}} () {
|
|
7
|
-
{% else %}
|
|
8
|
-
function {{tag_name}} () {
|
|
9
|
-
{% endif %}
|
|
10
|
-
{{ renderHooksWithMemo(all_hooks, memo_trigger_hooks) }}
|
|
11
|
-
|
|
12
|
-
return (
|
|
13
|
-
{{utils.render(component.render())}}
|
|
14
|
-
)
|
|
15
|
-
}
|