@lowdefy/docs-content 0.0.0-experimental-20260710073520

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.
Files changed (304) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +20 -0
  3. package/content/actions/callapi.md +66 -0
  4. package/content/actions/callmethod.md +41 -0
  5. package/content/actions/copytoclipboard.md +32 -0
  6. package/content/actions/displaymessage.md +53 -0
  7. package/content/actions/downloadcsv.md +89 -0
  8. package/content/actions/fetch.md +50 -0
  9. package/content/actions/geolocationcurrentposition.md +56 -0
  10. package/content/actions/link.md +104 -0
  11. package/content/actions/login.md +85 -0
  12. package/content/actions/logout.md +56 -0
  13. package/content/actions/pdfmake.md +304 -0
  14. package/content/actions/request.md +67 -0
  15. package/content/actions/reset.md +27 -0
  16. package/content/actions/resetvalidation.md +85 -0
  17. package/content/actions/scrollto.md +85 -0
  18. package/content/actions/setdarkmode.md +62 -0
  19. package/content/actions/setfocus.md +33 -0
  20. package/content/actions/setglobal.md +63 -0
  21. package/content/actions/setlocale.md +69 -0
  22. package/content/actions/setstate.md +70 -0
  23. package/content/actions/throw.md +72 -0
  24. package/content/actions/validate.md +87 -0
  25. package/content/actions/wait.md +24 -0
  26. package/content/agents/agent-endpoint-tools.md +190 -0
  27. package/content/agents/agent-mcp-tools.md +124 -0
  28. package/content/agents/agent-multi-agent.md +136 -0
  29. package/content/agents/agent-properties.md +174 -0
  30. package/content/agents/agent-server-hooks.md +336 -0
  31. package/content/agents/agentchat.md +515 -0
  32. package/content/agents/agentconversations.md +148 -0
  33. package/content/concepts/ai-agent-docs.md +190 -0
  34. package/content/concepts/cli.md +213 -0
  35. package/content/concepts/connections-and-requests.md +7 -0
  36. package/content/concepts/custom-html.md +3 -0
  37. package/content/concepts/custom-styling.md +161 -0
  38. package/content/concepts/events-and-actions.md +271 -0
  39. package/content/concepts/hosting-files.md +18 -0
  40. package/content/concepts/i18n.md +320 -0
  41. package/content/concepts/keyboard-shortcuts.md +218 -0
  42. package/content/concepts/layout-overview.md +478 -0
  43. package/content/concepts/lists.md +144 -0
  44. package/content/concepts/logger.md +43 -0
  45. package/content/concepts/lowdefy-schema.md +365 -0
  46. package/content/concepts/menus.md +144 -0
  47. package/content/concepts/module-authoring.md +564 -0
  48. package/content/concepts/modules.md +338 -0
  49. package/content/concepts/operators.md +45 -0
  50. package/content/concepts/overview.md +19 -0
  51. package/content/concepts/references-and-templates.md +207 -0
  52. package/content/concepts/secrets.md +24 -0
  53. package/content/concepts/selectors.md +143 -0
  54. package/content/connections/amazonredshift.md +176 -0
  55. package/content/connections/anthropic.md +232 -0
  56. package/content/connections/awss3.md +313 -0
  57. package/content/connections/azureblobstorage.md +133 -0
  58. package/content/connections/elasticsearch.md +371 -0
  59. package/content/connections/google.md +228 -0
  60. package/content/connections/googlecloudstorage.md +139 -0
  61. package/content/connections/googlesheet.md +313 -0
  62. package/content/connections/knex.md +206 -0
  63. package/content/connections/mariadb.md +177 -0
  64. package/content/connections/mcp.md +134 -0
  65. package/content/connections/mongodb.md +739 -0
  66. package/content/connections/mssql.md +191 -0
  67. package/content/connections/mysql.md +192 -0
  68. package/content/connections/openai-connection.md +228 -0
  69. package/content/connections/postgresql.md +200 -0
  70. package/content/connections/redis.md +116 -0
  71. package/content/connections/sendgridmail.md +94 -0
  72. package/content/connections/smtp.md +149 -0
  73. package/content/connections/sqlite.md +187 -0
  74. package/content/connections/stripe.md +115 -0
  75. package/content/container-blocks/affix.md +413 -0
  76. package/content/container-blocks/alert.md +937 -0
  77. package/content/container-blocks/badge.md +1222 -0
  78. package/content/container-blocks/box.md +1453 -0
  79. package/content/container-blocks/card.md +1200 -0
  80. package/content/container-blocks/carousel.md +2247 -0
  81. package/content/container-blocks/collapse.md +1335 -0
  82. package/content/container-blocks/configprovider.md +1070 -0
  83. package/content/container-blocks/confirmmodal.md +1159 -0
  84. package/content/container-blocks/content.md +597 -0
  85. package/content/container-blocks/descriptions.md +870 -0
  86. package/content/container-blocks/drawer.md +1379 -0
  87. package/content/container-blocks/dropdownmenu.md +643 -0
  88. package/content/container-blocks/flex.md +1510 -0
  89. package/content/container-blocks/footer.md +380 -0
  90. package/content/container-blocks/googlemaps.md +546 -0
  91. package/content/container-blocks/googlemapsheatmap.md +607 -0
  92. package/content/container-blocks/googlemapsscript.md +61 -0
  93. package/content/container-blocks/header.md +302 -0
  94. package/content/container-blocks/label.md +739 -0
  95. package/content/container-blocks/layout.md +604 -0
  96. package/content/container-blocks/masonry.md +1090 -0
  97. package/content/container-blocks/mobilemenu.md +1244 -0
  98. package/content/container-blocks/modal.md +1180 -0
  99. package/content/container-blocks/pageheadermenu.md +614 -0
  100. package/content/container-blocks/pagesidebarlayout.md +438 -0
  101. package/content/container-blocks/pagesidermenu.md +651 -0
  102. package/content/container-blocks/popover.md +1421 -0
  103. package/content/container-blocks/result.md +972 -0
  104. package/content/container-blocks/sider.md +1064 -0
  105. package/content/container-blocks/span.md +747 -0
  106. package/content/container-blocks/spinner.md +267 -0
  107. package/content/container-blocks/splitter.md +1735 -0
  108. package/content/container-blocks/tabs.md +1718 -0
  109. package/content/container-blocks/tooltip.md +1274 -0
  110. package/content/container-blocks/watermark.md +515 -0
  111. package/content/controls/for.md +103 -0
  112. package/content/controls/if.md +107 -0
  113. package/content/controls/log.md +50 -0
  114. package/content/controls/parallel.md +71 -0
  115. package/content/controls/parallel_for.md +36 -0
  116. package/content/controls/reject.md +56 -0
  117. package/content/controls/return.md +66 -0
  118. package/content/controls/set_state.md +98 -0
  119. package/content/controls/switch.md +90 -0
  120. package/content/controls/throw.md +79 -0
  121. package/content/controls/try.md +88 -0
  122. package/content/deployment/docker.md +149 -0
  123. package/content/deployment/node-server.md +27 -0
  124. package/content/deployment/vercel.md +101 -0
  125. package/content/display-blocks/aggrid.md +1459 -0
  126. package/content/display-blocks/anchor.md +336 -0
  127. package/content/display-blocks/avatar.md +1154 -0
  128. package/content/display-blocks/breadcrumb.md +517 -0
  129. package/content/display-blocks/button.md +758 -0
  130. package/content/display-blocks/calendar.md +156 -0
  131. package/content/display-blocks/dangeroushtml.md +314 -0
  132. package/content/display-blocks/dangerousmarkdown.md +423 -0
  133. package/content/display-blocks/diffgit.md +44 -0
  134. package/content/display-blocks/difflist.md +225 -0
  135. package/content/display-blocks/diffsidebyside.md +56 -0
  136. package/content/display-blocks/difftimeline.md +94 -0
  137. package/content/display-blocks/divider.md +406 -0
  138. package/content/display-blocks/download.md +60 -0
  139. package/content/display-blocks/dropdownbutton.md +661 -0
  140. package/content/display-blocks/echart.md +418 -0
  141. package/content/display-blocks/floatbutton.md +545 -0
  142. package/content/display-blocks/html.md +311 -0
  143. package/content/display-blocks/icon.md +717 -0
  144. package/content/display-blocks/img.md +479 -0
  145. package/content/display-blocks/markdown.md +520 -0
  146. package/content/display-blocks/markdownwithcode.md +730 -0
  147. package/content/display-blocks/menu.md +1123 -0
  148. package/content/display-blocks/message.md +941 -0
  149. package/content/display-blocks/notification.md +1410 -0
  150. package/content/display-blocks/paragraph.md +643 -0
  151. package/content/display-blocks/progress.md +818 -0
  152. package/content/display-blocks/qrcode.md +519 -0
  153. package/content/display-blocks/s3download.md +240 -0
  154. package/content/display-blocks/search.md +360 -0
  155. package/content/display-blocks/skeleton.md +272 -0
  156. package/content/display-blocks/skeletonavatar.md +222 -0
  157. package/content/display-blocks/skeletonbutton.md +245 -0
  158. package/content/display-blocks/skeletoninput.md +223 -0
  159. package/content/display-blocks/skeletonparagraph.md +201 -0
  160. package/content/display-blocks/statistic.md +485 -0
  161. package/content/display-blocks/steps.md +585 -0
  162. package/content/display-blocks/tag.md +620 -0
  163. package/content/display-blocks/title.md +654 -0
  164. package/content/display-blocks/tour.md +2359 -0
  165. package/content/input-blocks/autocomplete.md +786 -0
  166. package/content/input-blocks/buttonselector.md +964 -0
  167. package/content/input-blocks/checkboxselector.md +765 -0
  168. package/content/input-blocks/checkboxswitch.md +497 -0
  169. package/content/input-blocks/colorselector.md +884 -0
  170. package/content/input-blocks/daterangeselector.md +777 -0
  171. package/content/input-blocks/dateselector.md +693 -0
  172. package/content/input-blocks/datetimeselector.md +791 -0
  173. package/content/input-blocks/inputgallery.md +528 -0
  174. package/content/input-blocks/monthselector.md +717 -0
  175. package/content/input-blocks/multipleselector.md +1337 -0
  176. package/content/input-blocks/numberinput.md +855 -0
  177. package/content/input-blocks/pagination.md +679 -0
  178. package/content/input-blocks/paragraphinput.md +1664 -0
  179. package/content/input-blocks/passwordinput.md +480 -0
  180. package/content/input-blocks/phonenumberinput.md +688 -0
  181. package/content/input-blocks/radioselector.md +820 -0
  182. package/content/input-blocks/ratingslider.md +684 -0
  183. package/content/input-blocks/s3uploadbutton.md +384 -0
  184. package/content/input-blocks/s3uploaddragger.md +305 -0
  185. package/content/input-blocks/s3uploadphoto.md +288 -0
  186. package/content/input-blocks/segmentedselector.md +782 -0
  187. package/content/input-blocks/selector.md +1162 -0
  188. package/content/input-blocks/switch.md +552 -0
  189. package/content/input-blocks/textarea.md +714 -0
  190. package/content/input-blocks/textinput.md +639 -0
  191. package/content/input-blocks/tiptapinput.md +226 -0
  192. package/content/input-blocks/tiptapmentioninput.md +471 -0
  193. package/content/input-blocks/titleinput.md +1094 -0
  194. package/content/input-blocks/treeinput.md +144 -0
  195. package/content/input-blocks/treemultipleselector.md +162 -0
  196. package/content/input-blocks/treeselector.md +185 -0
  197. package/content/input-blocks/upload.md +149 -0
  198. package/content/input-blocks/uploaddragger.md +85 -0
  199. package/content/input-blocks/uploadphoto.md +84 -0
  200. package/content/input-blocks/weekselector.md +630 -0
  201. package/content/list-blocks/controlledlist.md +498 -0
  202. package/content/list-blocks/list.md +529 -0
  203. package/content/list-blocks/listselector.md +301 -0
  204. package/content/list-blocks/masonrylist.md +230 -0
  205. package/content/migration/upgrade-guide.md +106 -0
  206. package/content/migration/v4-to-v5.md +589 -0
  207. package/content/migration/v5-to-v6.md +36 -0
  208. package/content/operators/_actions.md +58 -0
  209. package/content/operators/_and.md +76 -0
  210. package/content/operators/_api.md +254 -0
  211. package/content/operators/_app.md +114 -0
  212. package/content/operators/_args.md +65 -0
  213. package/content/operators/_array.md +331 -0
  214. package/content/operators/_base64.md +49 -0
  215. package/content/operators/_boolean.md +33 -0
  216. package/content/operators/_build.md +166 -0
  217. package/content/operators/_change_case.md +357 -0
  218. package/content/operators/_date.md +415 -0
  219. package/content/operators/_dayjs.md +128 -0
  220. package/content/operators/_diff.md +61 -0
  221. package/content/operators/_divide.md +32 -0
  222. package/content/operators/_eq.md +52 -0
  223. package/content/operators/_event.md +86 -0
  224. package/content/operators/_function.md +52 -0
  225. package/content/operators/_get.md +92 -0
  226. package/content/operators/_global.md +86 -0
  227. package/content/operators/_gt.md +50 -0
  228. package/content/operators/_gte.md +50 -0
  229. package/content/operators/_hash.md +112 -0
  230. package/content/operators/_if.md +30 -0
  231. package/content/operators/_if_none.md +47 -0
  232. package/content/operators/_index.md +48 -0
  233. package/content/operators/_input.md +86 -0
  234. package/content/operators/_intl.md +135 -0
  235. package/content/operators/_item.md +166 -0
  236. package/content/operators/_js.md +113 -0
  237. package/content/operators/_json.md +120 -0
  238. package/content/operators/_jsonata.md +152 -0
  239. package/content/operators/_locale.md +65 -0
  240. package/content/operators/_location.md +40 -0
  241. package/content/operators/_log.md +22 -0
  242. package/content/operators/_lt.md +50 -0
  243. package/content/operators/_lte.md +50 -0
  244. package/content/operators/_math.md +407 -0
  245. package/content/operators/_media.md +83 -0
  246. package/content/operators/_menu.md +62 -0
  247. package/content/operators/_module.md +340 -0
  248. package/content/operators/_mql.md +95 -0
  249. package/content/operators/_ne.md +62 -0
  250. package/content/operators/_not.md +33 -0
  251. package/content/operators/_number.md +159 -0
  252. package/content/operators/_nunjucks.md +117 -0
  253. package/content/operators/_object.md +253 -0
  254. package/content/operators/_operator.md +33 -0
  255. package/content/operators/_or.md +67 -0
  256. package/content/operators/_product.md +45 -0
  257. package/content/operators/_random.md +90 -0
  258. package/content/operators/_ref.md +80 -0
  259. package/content/operators/_regex.md +69 -0
  260. package/content/operators/_request.md +35 -0
  261. package/content/operators/_request_details.md +29 -0
  262. package/content/operators/_secret.md +56 -0
  263. package/content/operators/_state.md +134 -0
  264. package/content/operators/_step.md +98 -0
  265. package/content/operators/_string.md +327 -0
  266. package/content/operators/_subtract.md +24 -0
  267. package/content/operators/_sum.md +45 -0
  268. package/content/operators/_switch.md +37 -0
  269. package/content/operators/_t.md +96 -0
  270. package/content/operators/_theme.md +65 -0
  271. package/content/operators/_type.md +78 -0
  272. package/content/operators/_uri.md +49 -0
  273. package/content/operators/_url_query.md +92 -0
  274. package/content/operators/_user.md +154 -0
  275. package/content/operators/_uuid.md +118 -0
  276. package/content/operators/_var.md +88 -0
  277. package/content/operators/_yaml.md +96 -0
  278. package/content/other/introduction.md +39 -0
  279. package/content/other/next-auth-providers.md +3 -0
  280. package/content/other/updatesession.md +26 -0
  281. package/content/plugins/plugins-actions.md +80 -0
  282. package/content/plugins/plugins-connections.md +98 -0
  283. package/content/plugins/plugins-dev.md +138 -0
  284. package/content/plugins/plugins-introduction.md +29 -0
  285. package/content/plugins/plugins-operators.md +71 -0
  286. package/content/testing/e2e-auth.md +108 -0
  287. package/content/testing/e2e-configuration.md +107 -0
  288. package/content/testing/e2e-getting-started.md +96 -0
  289. package/content/testing/e2e-introduction.md +53 -0
  290. package/content/testing/e2e-mocking.md +155 -0
  291. package/content/testing/e2e-writing-tests.md +214 -0
  292. package/content/tutorial/tutorial-actions-operators.md +222 -0
  293. package/content/tutorial/tutorial-add-blocks.md +86 -0
  294. package/content/tutorial/tutorial-create-page.md +57 -0
  295. package/content/tutorial/tutorial-display-data-page.md +181 -0
  296. package/content/tutorial/tutorial-next-steps.md +53 -0
  297. package/content/tutorial/tutorial-requests-sql.md +22 -0
  298. package/content/tutorial/tutorial-start.md +71 -0
  299. package/content/user-authentication/auth-providers.md +15 -0
  300. package/content/user-authentication/login-and-logout.md +122 -0
  301. package/content/user-authentication/users-introduction.md +31 -0
  302. package/index.json +2281 -0
  303. package/package.json +34 -0
  304. package/scripts/extractAgentDocs.js +130 -0
@@ -0,0 +1,1510 @@
1
+ # Flex
2
+
3
+ Flexible box layout container for arranging child blocks.
4
+
5
+ ```yaml
6
+ - id: flex_basic
7
+ type: Flex
8
+ properties:
9
+ gap: 8
10
+ blocks:
11
+ - id: flex_basic_btn1
12
+ type: Button
13
+ layout:
14
+ flex: 0 0 auto
15
+ properties:
16
+ title: One
17
+ color: primary
18
+ variant: solid
19
+ - id: flex_basic_btn2
20
+ type: Button
21
+ layout:
22
+ flex: 0 0 auto
23
+ properties:
24
+ title: Two
25
+ color: primary
26
+ variant: outlined
27
+ - id: flex_basic_btn3
28
+ type: Button
29
+ layout:
30
+ flex: 0 0 auto
31
+ properties:
32
+ title: Three
33
+ color: primary
34
+ variant: dashed
35
+ ```
36
+
37
+ Stacked vertically.
38
+
39
+ Below the first card.
40
+
41
+ Below the second card.
42
+
43
+ ```yaml
44
+ - id: flex_vertical
45
+ type: Flex
46
+ properties:
47
+ vertical: true
48
+ gap: 12
49
+ blocks:
50
+ - id: flex_vert_card1
51
+ type: Card
52
+ properties:
53
+ title: First
54
+ size: small
55
+ blocks:
56
+ - id: flex_vert_card1_p
57
+ type: Paragraph
58
+ properties:
59
+ content: Stacked vertically.
60
+ - id: flex_vert_card2
61
+ type: Card
62
+ properties:
63
+ title: Second
64
+ size: small
65
+ blocks:
66
+ - id: flex_vert_card2_p
67
+ type: Paragraph
68
+ properties:
69
+ content: Below the first card.
70
+ - id: flex_vert_card3
71
+ type: Card
72
+ properties:
73
+ title: Third
74
+ size: small
75
+ blocks:
76
+ - id: flex_vert_card3_p
77
+ type: Paragraph
78
+ properties:
79
+ content: Below the second card.
80
+ ```
81
+
82
+ **gap: small (8px)**
83
+
84
+ **gap: middle (16px)**
85
+
86
+ **gap: large (24px)**
87
+
88
+ **gap: 40 (custom number)**
89
+
90
+ ```yaml
91
+ - id: flex_gap_small_label
92
+ type: Markdown
93
+ properties:
94
+ content: "**gap: small (8px)**"
95
+ - id: flex_gap_small
96
+ type: Flex
97
+ properties:
98
+ gap: small
99
+ blocks:
100
+ - id: flex_gs_1
101
+ type: Tag
102
+ layout:
103
+ flex: 0 0 auto
104
+ properties:
105
+ title: Tag A
106
+ color: blue
107
+ - id: flex_gs_2
108
+ type: Tag
109
+ layout:
110
+ flex: 0 0 auto
111
+ properties:
112
+ title: Tag B
113
+ color: blue
114
+ - id: flex_gs_3
115
+ type: Tag
116
+ layout:
117
+ flex: 0 0 auto
118
+ properties:
119
+ title: Tag C
120
+ color: blue
121
+ - id: flex_gap_middle_label
122
+ type: Markdown
123
+ properties:
124
+ content: "**gap: middle (16px)**"
125
+ - id: flex_gap_middle
126
+ type: Flex
127
+ properties:
128
+ gap: middle
129
+ blocks:
130
+ - id: flex_gm_1
131
+ type: Tag
132
+ layout:
133
+ flex: 0 0 auto
134
+ properties:
135
+ title: Tag A
136
+ color: green
137
+ - id: flex_gm_2
138
+ type: Tag
139
+ layout:
140
+ flex: 0 0 auto
141
+ properties:
142
+ title: Tag B
143
+ color: green
144
+ - id: flex_gm_3
145
+ type: Tag
146
+ layout:
147
+ flex: 0 0 auto
148
+ properties:
149
+ title: Tag C
150
+ color: green
151
+ - id: flex_gap_large_label
152
+ type: Markdown
153
+ properties:
154
+ content: "**gap: large (24px)**"
155
+ - id: flex_gap_large
156
+ type: Flex
157
+ properties:
158
+ gap: large
159
+ blocks:
160
+ - id: flex_gl_1
161
+ type: Tag
162
+ layout:
163
+ flex: 0 0 auto
164
+ properties:
165
+ title: Tag A
166
+ color: orange
167
+ - id: flex_gl_2
168
+ type: Tag
169
+ layout:
170
+ flex: 0 0 auto
171
+ properties:
172
+ title: Tag B
173
+ color: orange
174
+ - id: flex_gl_3
175
+ type: Tag
176
+ layout:
177
+ flex: 0 0 auto
178
+ properties:
179
+ title: Tag C
180
+ color: orange
181
+ - id: flex_gap_custom_label
182
+ type: Markdown
183
+ properties:
184
+ content: "**gap: 40 (custom number)**"
185
+ - id: flex_gap_custom
186
+ type: Flex
187
+ properties:
188
+ gap: 40
189
+ blocks:
190
+ - id: flex_gc_1
191
+ type: Tag
192
+ layout:
193
+ flex: 0 0 auto
194
+ properties:
195
+ title: Tag A
196
+ color: purple
197
+ - id: flex_gc_2
198
+ type: Tag
199
+ layout:
200
+ flex: 0 0 auto
201
+ properties:
202
+ title: Tag B
203
+ color: purple
204
+ - id: flex_gc_3
205
+ type: Tag
206
+ layout:
207
+ flex: 0 0 auto
208
+ properties:
209
+ title: Tag C
210
+ color: purple
211
+ ```
212
+
213
+ **justify: flex-start**
214
+
215
+ **justify: center**
216
+
217
+ **justify: flex-end**
218
+
219
+ **justify: space-between**
220
+
221
+ **justify: space-around**
222
+
223
+ **justify: space-evenly**
224
+
225
+ ```yaml
226
+ - id: flex_j_start_label
227
+ type: Markdown
228
+ properties:
229
+ content: "**justify: flex-start**"
230
+ - id: flex_j_start
231
+ type: Flex
232
+ class: bg-bg-layout p-2 rounded
233
+ properties:
234
+ justify: flex-start
235
+ gap: 8
236
+ blocks:
237
+ - id: flex_js_1
238
+ type: Button
239
+ layout:
240
+ flex: 0 0 auto
241
+ properties:
242
+ title: A
243
+ color: primary
244
+ variant: solid
245
+ size: small
246
+ - id: flex_js_2
247
+ type: Button
248
+ layout:
249
+ flex: 0 0 auto
250
+ properties:
251
+ title: B
252
+ color: primary
253
+ variant: solid
254
+ size: small
255
+ - id: flex_js_3
256
+ type: Button
257
+ layout:
258
+ flex: 0 0 auto
259
+ properties:
260
+ title: C
261
+ color: primary
262
+ variant: solid
263
+ size: small
264
+ - id: flex_j_center_label
265
+ type: Markdown
266
+ properties:
267
+ content: "**justify: center**"
268
+ - id: flex_j_center
269
+ type: Flex
270
+ class: bg-bg-layout p-2 rounded
271
+ properties:
272
+ justify: center
273
+ gap: 8
274
+ blocks:
275
+ - id: flex_jc_1
276
+ type: Button
277
+ layout:
278
+ flex: 0 0 auto
279
+ properties:
280
+ title: A
281
+ color: blue
282
+ variant: solid
283
+ size: small
284
+ - id: flex_jc_2
285
+ type: Button
286
+ layout:
287
+ flex: 0 0 auto
288
+ properties:
289
+ title: B
290
+ color: blue
291
+ variant: solid
292
+ size: small
293
+ - id: flex_jc_3
294
+ type: Button
295
+ layout:
296
+ flex: 0 0 auto
297
+ properties:
298
+ title: C
299
+ color: blue
300
+ variant: solid
301
+ size: small
302
+ - id: flex_j_end_label
303
+ type: Markdown
304
+ properties:
305
+ content: "**justify: flex-end**"
306
+ - id: flex_j_end
307
+ type: Flex
308
+ class: bg-bg-layout p-2 rounded
309
+ properties:
310
+ justify: flex-end
311
+ gap: 8
312
+ blocks:
313
+ - id: flex_je_1
314
+ type: Button
315
+ layout:
316
+ flex: 0 0 auto
317
+ properties:
318
+ title: A
319
+ color: green
320
+ variant: solid
321
+ size: small
322
+ - id: flex_je_2
323
+ type: Button
324
+ layout:
325
+ flex: 0 0 auto
326
+ properties:
327
+ title: B
328
+ color: green
329
+ variant: solid
330
+ size: small
331
+ - id: flex_je_3
332
+ type: Button
333
+ layout:
334
+ flex: 0 0 auto
335
+ properties:
336
+ title: C
337
+ color: green
338
+ variant: solid
339
+ size: small
340
+ - id: flex_j_between_label
341
+ type: Markdown
342
+ properties:
343
+ content: "**justify: space-between**"
344
+ - id: flex_j_between
345
+ type: Flex
346
+ class: bg-bg-layout p-2 rounded
347
+ properties:
348
+ justify: space-between
349
+ blocks:
350
+ - id: flex_jb_1
351
+ type: Button
352
+ layout:
353
+ flex: 0 0 auto
354
+ properties:
355
+ title: A
356
+ color: orange
357
+ variant: solid
358
+ size: small
359
+ - id: flex_jb_2
360
+ type: Button
361
+ layout:
362
+ flex: 0 0 auto
363
+ properties:
364
+ title: B
365
+ color: orange
366
+ variant: solid
367
+ size: small
368
+ - id: flex_jb_3
369
+ type: Button
370
+ layout:
371
+ flex: 0 0 auto
372
+ properties:
373
+ title: C
374
+ color: orange
375
+ variant: solid
376
+ size: small
377
+ - id: flex_j_around_label
378
+ type: Markdown
379
+ properties:
380
+ content: "**justify: space-around**"
381
+ - id: flex_j_around
382
+ type: Flex
383
+ class: bg-bg-layout p-2 rounded
384
+ properties:
385
+ justify: space-around
386
+ blocks:
387
+ - id: flex_ja_1
388
+ type: Button
389
+ layout:
390
+ flex: 0 0 auto
391
+ properties:
392
+ title: A
393
+ color: purple
394
+ variant: solid
395
+ size: small
396
+ - id: flex_ja_2
397
+ type: Button
398
+ layout:
399
+ flex: 0 0 auto
400
+ properties:
401
+ title: B
402
+ color: purple
403
+ variant: solid
404
+ size: small
405
+ - id: flex_ja_3
406
+ type: Button
407
+ layout:
408
+ flex: 0 0 auto
409
+ properties:
410
+ title: C
411
+ color: purple
412
+ variant: solid
413
+ size: small
414
+ - id: flex_j_evenly_label
415
+ type: Markdown
416
+ properties:
417
+ content: "**justify: space-evenly**"
418
+ - id: flex_j_evenly
419
+ type: Flex
420
+ class: bg-bg-layout p-2 rounded
421
+ properties:
422
+ justify: space-evenly
423
+ blocks:
424
+ - id: flex_jev_1
425
+ type: Button
426
+ layout:
427
+ flex: 0 0 auto
428
+ properties:
429
+ title: A
430
+ color: red
431
+ variant: solid
432
+ size: small
433
+ - id: flex_jev_2
434
+ type: Button
435
+ layout:
436
+ flex: 0 0 auto
437
+ properties:
438
+ title: B
439
+ color: red
440
+ variant: solid
441
+ size: small
442
+ - id: flex_jev_3
443
+ type: Button
444
+ layout:
445
+ flex: 0 0 auto
446
+ properties:
447
+ title: C
448
+ color: red
449
+ variant: solid
450
+ size: small
451
+ ```
452
+
453
+ **align: flex-start**
454
+
455
+ **align: center**
456
+
457
+ **align: flex-end**
458
+
459
+ **align: stretch**
460
+
461
+ Stretches to fill.
462
+
463
+ Same height as tallest sibling.
464
+
465
+ **align: baseline**
466
+
467
+ Large Title
468
+
469
+ Body text aligned to the same baseline.
470
+
471
+ Small
472
+
473
+ ```yaml
474
+ - id: flex_a_start_label
475
+ type: Markdown
476
+ properties:
477
+ content: "**align: flex-start**"
478
+ - id: flex_a_start
479
+ type: Flex
480
+ class: bg-bg-layout p-2 rounded
481
+ style:
482
+ .element:
483
+ minHeight: 80px
484
+ properties:
485
+ align: flex-start
486
+ gap: 8
487
+ blocks:
488
+ - id: flex_as_1
489
+ type: Button
490
+ layout:
491
+ flex: 0 0 auto
492
+ properties:
493
+ title: Short
494
+ color: primary
495
+ variant: solid
496
+ - id: flex_as_2
497
+ type: Button
498
+ layout:
499
+ flex: 0 0 auto
500
+ properties:
501
+ title: Tall
502
+ color: primary
503
+ variant: solid
504
+ size: large
505
+ - id: flex_as_3
506
+ type: Button
507
+ layout:
508
+ flex: 0 0 auto
509
+ properties:
510
+ title: Short
511
+ color: primary
512
+ variant: solid
513
+ size: small
514
+ - id: flex_a_center_label
515
+ type: Markdown
516
+ properties:
517
+ content: "**align: center**"
518
+ - id: flex_a_center
519
+ type: Flex
520
+ class: bg-bg-layout p-2 rounded
521
+ style:
522
+ .element:
523
+ minHeight: 80px
524
+ properties:
525
+ align: center
526
+ gap: 8
527
+ blocks:
528
+ - id: flex_ac_1
529
+ type: Button
530
+ layout:
531
+ flex: 0 0 auto
532
+ properties:
533
+ title: Short
534
+ color: blue
535
+ variant: solid
536
+ - id: flex_ac_2
537
+ type: Button
538
+ layout:
539
+ flex: 0 0 auto
540
+ properties:
541
+ title: Tall
542
+ color: blue
543
+ variant: solid
544
+ size: large
545
+ - id: flex_ac_3
546
+ type: Button
547
+ layout:
548
+ flex: 0 0 auto
549
+ properties:
550
+ title: Short
551
+ color: blue
552
+ variant: solid
553
+ size: small
554
+ - id: flex_a_end_label
555
+ type: Markdown
556
+ properties:
557
+ content: "**align: flex-end**"
558
+ - id: flex_a_end
559
+ type: Flex
560
+ class: bg-bg-layout p-2 rounded
561
+ style:
562
+ .element:
563
+ minHeight: 80px
564
+ properties:
565
+ align: flex-end
566
+ gap: 8
567
+ blocks:
568
+ - id: flex_ae_1
569
+ type: Button
570
+ layout:
571
+ flex: 0 0 auto
572
+ properties:
573
+ title: Short
574
+ color: green
575
+ variant: solid
576
+ - id: flex_ae_2
577
+ type: Button
578
+ layout:
579
+ flex: 0 0 auto
580
+ properties:
581
+ title: Tall
582
+ color: green
583
+ variant: solid
584
+ size: large
585
+ - id: flex_ae_3
586
+ type: Button
587
+ layout:
588
+ flex: 0 0 auto
589
+ properties:
590
+ title: Short
591
+ color: green
592
+ variant: solid
593
+ size: small
594
+ - id: flex_a_stretch_label
595
+ type: Markdown
596
+ properties:
597
+ content: "**align: stretch**"
598
+ - id: flex_a_stretch
599
+ type: Flex
600
+ class: bg-bg-layout p-2 rounded
601
+ style:
602
+ .element:
603
+ minHeight: 80px
604
+ properties:
605
+ align: stretch
606
+ gap: 8
607
+ blocks:
608
+ - id: flex_ax_1
609
+ type: Card
610
+ layout:
611
+ flex: 1 1 0
612
+ properties:
613
+ size: small
614
+ blocks:
615
+ - id: flex_ax_1_p
616
+ type: Paragraph
617
+ properties:
618
+ content: Stretches to fill.
619
+ - id: flex_ax_2
620
+ type: Card
621
+ layout:
622
+ flex: 1 1 0
623
+ properties:
624
+ size: small
625
+ blocks:
626
+ - id: flex_ax_2_p
627
+ type: Paragraph
628
+ properties:
629
+ content: Same height as tallest sibling.
630
+ - id: flex_a_baseline_label
631
+ type: Markdown
632
+ properties:
633
+ content: "**align: baseline**"
634
+ - id: flex_a_baseline
635
+ type: Flex
636
+ class: bg-bg-layout p-2 rounded
637
+ properties:
638
+ align: baseline
639
+ gap: 16
640
+ blocks:
641
+ - id: flex_ab_1
642
+ type: Title
643
+ layout:
644
+ flex: 0 0 auto
645
+ properties:
646
+ content: Large Title
647
+ level: 2
648
+ - id: flex_ab_2
649
+ type: Paragraph
650
+ layout:
651
+ flex: 0 0 auto
652
+ properties:
653
+ content: Body text aligned to the same baseline.
654
+ - id: flex_ab_3
655
+ type: Title
656
+ layout:
657
+ flex: 0 0 auto
658
+ properties:
659
+ content: Small
660
+ level: 5
661
+ ```
662
+
663
+ **wrap: true** - items wrap to next line when space runs out
664
+
665
+ ```yaml
666
+ - id: flex_wrap_label
667
+ type: Markdown
668
+ properties:
669
+ content: "**wrap: true** - items wrap to next line when space runs out"
670
+ - id: flex_wrap
671
+ type: Flex
672
+ class: bg-bg-layout p-2 rounded
673
+ properties:
674
+ wrap: true
675
+ gap: 8
676
+ blocks:
677
+ - id: flex_w_1
678
+ type: Button
679
+ layout:
680
+ flex: 0 0 auto
681
+ properties:
682
+ title: Alpha
683
+ color: primary
684
+ variant: solid
685
+ - id: flex_w_2
686
+ type: Button
687
+ layout:
688
+ flex: 0 0 auto
689
+ properties:
690
+ title: Bravo
691
+ color: blue
692
+ variant: solid
693
+ - id: flex_w_3
694
+ type: Button
695
+ layout:
696
+ flex: 0 0 auto
697
+ properties:
698
+ title: Charlie
699
+ color: green
700
+ variant: solid
701
+ - id: flex_w_4
702
+ type: Button
703
+ layout:
704
+ flex: 0 0 auto
705
+ properties:
706
+ title: Delta
707
+ color: orange
708
+ variant: solid
709
+ - id: flex_w_5
710
+ type: Button
711
+ layout:
712
+ flex: 0 0 auto
713
+ properties:
714
+ title: Echo
715
+ color: purple
716
+ variant: solid
717
+ - id: flex_w_6
718
+ type: Button
719
+ layout:
720
+ flex: 0 0 auto
721
+ properties:
722
+ title: Foxtrot
723
+ color: red
724
+ variant: solid
725
+ - id: flex_w_7
726
+ type: Button
727
+ layout:
728
+ flex: 0 0 auto
729
+ properties:
730
+ title: Golf
731
+ color: cyan
732
+ variant: solid
733
+ - id: flex_w_8
734
+ type: Button
735
+ layout:
736
+ flex: 0 0 auto
737
+ properties:
738
+ title: Hotel
739
+ color: magenta
740
+ variant: solid
741
+ - id: flex_w_9
742
+ type: Button
743
+ layout:
744
+ flex: 0 0 auto
745
+ properties:
746
+ title: India
747
+ color: gold
748
+ variant: solid
749
+ - id: flex_w_10
750
+ type: Button
751
+ layout:
752
+ flex: 0 0 auto
753
+ properties:
754
+ title: Juliet
755
+ color: lime
756
+ variant: solid
757
+ ```
758
+
759
+ **flex** property on the Flex container itself sets the CSS flex shorthand
760
+
761
+ flex 1 (grows)
762
+
763
+ flex none (fixed)
764
+
765
+ flex 2 (grows 2x)
766
+
767
+ ```yaml
768
+ - id: flex_prop_label
769
+ type: Markdown
770
+ properties:
771
+ content: "**flex** property on the Flex container itself sets the CSS flex
772
+ shorthand"
773
+ - id: flex_prop_outer
774
+ type: Flex
775
+ properties:
776
+ gap: 16
777
+ blocks:
778
+ - id: flex_prop_grow
779
+ type: Flex
780
+ layout:
781
+ flex: 1 1 0
782
+ class: bg-bg-layout p-4 rounded
783
+ properties:
784
+ flex: 1
785
+ justify: center
786
+ align: center
787
+ blocks:
788
+ - id: flex_prop_grow_txt
789
+ type: Paragraph
790
+ properties:
791
+ content: flex 1 (grows)
792
+ - id: flex_prop_fixed
793
+ type: Flex
794
+ layout:
795
+ flex: 0 0 auto
796
+ class: bg-bg-layout p-4 rounded
797
+ properties:
798
+ flex: none
799
+ justify: center
800
+ align: center
801
+ blocks:
802
+ - id: flex_prop_fixed_txt
803
+ type: Paragraph
804
+ properties:
805
+ content: flex none (fixed)
806
+ - id: flex_prop_grow2
807
+ type: Flex
808
+ layout:
809
+ flex: 2 1 0
810
+ class: bg-bg-layout p-4 rounded
811
+ properties:
812
+ flex: 2
813
+ justify: center
814
+ align: center
815
+ blocks:
816
+ - id: flex_prop_grow2_txt
817
+ type: Paragraph
818
+ properties:
819
+ content: flex 2 (grows 2x)
820
+ ```
821
+
822
+ ```yaml
823
+ - id: flex_component_nav
824
+ type: Flex
825
+ properties:
826
+ component: nav
827
+ gap: 16
828
+ justify: center
829
+ blocks:
830
+ - id: flex_component_nav_link1
831
+ type: Button
832
+ layout:
833
+ flex: 0 0 auto
834
+ properties:
835
+ title: Home
836
+ color: primary
837
+ variant: link
838
+ - id: flex_component_nav_link2
839
+ type: Button
840
+ layout:
841
+ flex: 0 0 auto
842
+ properties:
843
+ title: About
844
+ color: primary
845
+ variant: link
846
+ - id: flex_component_nav_link3
847
+ type: Button
848
+ layout:
849
+ flex: 0 0 auto
850
+ properties:
851
+ title: Contact
852
+ color: primary
853
+ variant: link
854
+ ```
855
+
856
+ All Theme Tokens
857
+
858
+ Combining padding, margin, and colorBgContainer tokens for a fully themed Flex container.
859
+
860
+ ```yaml
861
+ - id: flex_theme_padding
862
+ type: Flex
863
+ properties:
864
+ gap: 12
865
+ theme:
866
+ padding: 24
867
+ margin: 8
868
+ blocks:
869
+ - id: flex_theme_padding_btn1
870
+ type: Button
871
+ layout:
872
+ flex: 0 0 auto
873
+ properties:
874
+ title: Custom Padding
875
+ color: primary
876
+ variant: solid
877
+ - id: flex_theme_padding_btn2
878
+ type: Button
879
+ layout:
880
+ flex: 0 0 auto
881
+ properties:
882
+ title: And Margin
883
+ color: primary
884
+ variant: outlined
885
+ - id: flex_theme_bg
886
+ type: Flex
887
+ properties:
888
+ gap: 12
889
+ blocks:
890
+ - id: flex_theme_bg_btn1
891
+ type: Button
892
+ layout:
893
+ flex: 0 0 auto
894
+ properties:
895
+ title: Token A
896
+ color: green
897
+ variant: solid
898
+ - id: flex_theme_bg_btn2
899
+ type: Button
900
+ layout:
901
+ flex: 0 0 auto
902
+ properties:
903
+ title: Token B
904
+ color: green
905
+ variant: outlined
906
+ - id: flex_theme_combined
907
+ type: Flex
908
+ properties:
909
+ gap: 16
910
+ vertical: true
911
+ theme:
912
+ padding: 20
913
+ margin: 4
914
+ blocks:
915
+ - id: flex_theme_combined_title
916
+ type: Title
917
+ properties:
918
+ content: All Theme Tokens
919
+ level: 5
920
+ - id: flex_theme_combined_p
921
+ type: Paragraph
922
+ properties:
923
+ content: Combining padding, margin, and colorBgContainer tokens for a fully
924
+ themed Flex container.
925
+ ```
926
+
927
+ Dark Panel
928
+
929
+ ```yaml
930
+ - id: flex_style_inline
931
+ type: Flex
932
+ style:
933
+ .element:
934
+ padding: 16px
935
+ borderRadius: 8px
936
+ border: 1px dashed
937
+ properties:
938
+ gap: 12
939
+ justify: center
940
+ blocks:
941
+ - id: flex_style_inline_btn1
942
+ type: Button
943
+ layout:
944
+ flex: 0 0 auto
945
+ properties:
946
+ title: Styled Container
947
+ color: primary
948
+ variant: solid
949
+ - id: flex_style_inline_btn2
950
+ type: Button
951
+ layout:
952
+ flex: 0 0 auto
953
+ properties:
954
+ title: With Dashed Border
955
+ color: primary
956
+ variant: outlined
957
+ - id: flex_style_dark
958
+ type: Flex
959
+ style:
960
+ .element:
961
+ backgroundColor: "#1f1f1f"
962
+ padding: 20px
963
+ borderRadius: 12px
964
+ properties:
965
+ gap: 12
966
+ justify: space-between
967
+ align: center
968
+ blocks:
969
+ - id: flex_style_dark_title
970
+ type: Title
971
+ layout:
972
+ flex: 0 0 auto
973
+ class: text-white
974
+ properties:
975
+ content: Dark Panel
976
+ level: 5
977
+ - id: flex_style_dark_btn
978
+ type: Button
979
+ layout:
980
+ flex: 0 0 auto
981
+ properties:
982
+ title: Action
983
+ color: primary
984
+ variant: solid
985
+ size: small
986
+ ```
987
+
988
+ Gradient Flex
989
+
990
+ Ring utility applied to the element CSS key.
991
+
992
+ ```yaml
993
+ - id: flex_tw_gradient
994
+ type: Flex
995
+ class:
996
+ element: bg-gradient-to-r from-primary/100 to-purple-600 p-6 rounded-xl shadow-lg
997
+ properties:
998
+ gap: 16
999
+ align: center
1000
+ justify: space-between
1001
+ blocks:
1002
+ - id: flex_tw_gradient_title
1003
+ type: Title
1004
+ layout:
1005
+ flex: 0 0 auto
1006
+ class: text-white
1007
+ properties:
1008
+ content: Gradient Flex
1009
+ level: 4
1010
+ - id: flex_tw_gradient_btn
1011
+ type: Button
1012
+ layout:
1013
+ flex: 0 0 auto
1014
+ properties:
1015
+ title: Learn More
1016
+ color: default
1017
+ variant: solid
1018
+ size: small
1019
+ - id: flex_tw_bordered
1020
+ type: Flex
1021
+ class:
1022
+ element: border-2 border-dashed border-border p-4 rounded-lg
1023
+ hover:border-blue-400 transition-colors duration-200
1024
+ properties:
1025
+ gap: 12
1026
+ justify: center
1027
+ wrap: true
1028
+ blocks:
1029
+ - id: flex_tw_bordered_tag1
1030
+ type: Tag
1031
+ layout:
1032
+ flex: 0 0 auto
1033
+ properties:
1034
+ title: Hover me
1035
+ color: blue
1036
+ - id: flex_tw_bordered_tag2
1037
+ type: Tag
1038
+ layout:
1039
+ flex: 0 0 auto
1040
+ properties:
1041
+ title: Dashed border
1042
+ color: cyan
1043
+ - id: flex_tw_bordered_tag3
1044
+ type: Tag
1045
+ layout:
1046
+ flex: 0 0 auto
1047
+ properties:
1048
+ title: Transitions
1049
+ color: purple
1050
+ - id: flex_tw_ring
1051
+ type: Flex
1052
+ class:
1053
+ element: ring-2 ring-green-400 ring-offset-2 p-4 rounded-lg bg-bg-layout
1054
+ properties:
1055
+ gap: 8
1056
+ align: center
1057
+ blocks:
1058
+ - id: flex_tw_ring_icon
1059
+ type: Icon
1060
+ layout:
1061
+ flex: 0 0 auto
1062
+ properties:
1063
+ name: AiOutlineCheckCircle
1064
+ color: "#52c41a"
1065
+ size: 24
1066
+ - id: flex_tw_ring_text
1067
+ type: Paragraph
1068
+ layout:
1069
+ flex: 0 0 auto
1070
+ properties:
1071
+ content: Ring utility applied to the element CSS key.
1072
+ ```
1073
+
1074
+ Dashboard
1075
+
1076
+ ```yaml
1077
+ - id: flex_app_toolbar
1078
+ type: Flex
1079
+ class: bg-bg-container p-3 rounded-lg shadow-sm border
1080
+ properties:
1081
+ justify: space-between
1082
+ align: center
1083
+ gap: 8
1084
+ blocks:
1085
+ - id: flex_app_toolbar_left
1086
+ type: Flex
1087
+ properties:
1088
+ gap: 8
1089
+ align: center
1090
+ blocks:
1091
+ - id: flex_app_toolbar_title
1092
+ type: Title
1093
+ layout:
1094
+ flex: 0 0 auto
1095
+ properties:
1096
+ content: Dashboard
1097
+ level: 5
1098
+ - id: flex_app_toolbar_tag
1099
+ type: Tag
1100
+ layout:
1101
+ flex: 0 0 auto
1102
+ properties:
1103
+ title: Live
1104
+ color: success
1105
+ - id: flex_app_toolbar_right
1106
+ type: Flex
1107
+ properties:
1108
+ gap: 8
1109
+ blocks:
1110
+ - id: flex_app_toolbar_btn_filter
1111
+ type: Button
1112
+ layout:
1113
+ flex: 0 0 auto
1114
+ properties:
1115
+ title: Filter
1116
+ icon: AiOutlineFilter
1117
+ color: default
1118
+ variant: outlined
1119
+ size: small
1120
+ events:
1121
+ onClick:
1122
+ - id: flex_app_toolbar_filter_msg
1123
+ type: DisplayMessage
1124
+ params:
1125
+ content: Filter panel toggled.
1126
+ status: info
1127
+ - id: flex_app_toolbar_btn_export
1128
+ type: Button
1129
+ layout:
1130
+ flex: 0 0 auto
1131
+ properties:
1132
+ title: Export
1133
+ icon: AiOutlineDownload
1134
+ color: primary
1135
+ variant: solid
1136
+ size: small
1137
+ events:
1138
+ onClick:
1139
+ - id: flex_app_toolbar_export_msg
1140
+ type: DisplayMessage
1141
+ params:
1142
+ content: Export started.
1143
+ status: success
1144
+ ```
1145
+
1146
+ ```yaml
1147
+ - id: flex_stats_row
1148
+ type: Flex
1149
+ properties:
1150
+ gap: 16
1151
+ wrap: true
1152
+ blocks:
1153
+ - id: flex_stats_card1
1154
+ type: Card
1155
+ layout:
1156
+ flex: 1 1 200px
1157
+ properties:
1158
+ title: Users
1159
+ size: small
1160
+ hoverable: true
1161
+ blocks:
1162
+ - id: flex_stats_stat1
1163
+ type: Statistic
1164
+ properties:
1165
+ title: Total
1166
+ value: 1234
1167
+ - id: flex_stats_tag1
1168
+ type: Tag
1169
+ properties:
1170
+ title: +8.2%
1171
+ color: success
1172
+ - id: flex_stats_card2
1173
+ type: Card
1174
+ layout:
1175
+ flex: 1 1 200px
1176
+ properties:
1177
+ title: Revenue
1178
+ size: small
1179
+ hoverable: true
1180
+ blocks:
1181
+ - id: flex_stats_stat2
1182
+ type: Statistic
1183
+ properties:
1184
+ title: Monthly
1185
+ value: 8650
1186
+ prefix: $
1187
+ - id: flex_stats_tag2
1188
+ type: Tag
1189
+ properties:
1190
+ title: +12.5%
1191
+ color: success
1192
+ - id: flex_stats_card3
1193
+ type: Card
1194
+ layout:
1195
+ flex: 1 1 200px
1196
+ properties:
1197
+ title: Orders
1198
+ size: small
1199
+ hoverable: true
1200
+ blocks:
1201
+ - id: flex_stats_stat3
1202
+ type: Statistic
1203
+ properties:
1204
+ title: This Week
1205
+ value: 56
1206
+ - id: flex_stats_tag3
1207
+ type: Tag
1208
+ properties:
1209
+ title: -3.1%
1210
+ color: error
1211
+ ```
1212
+
1213
+ Jane Cooper
1214
+
1215
+ Senior Product Designer at Acme Corp
1216
+
1217
+ ```yaml
1218
+ - id: flex_profile_header
1219
+ type: Flex
1220
+ class: bg-bg-container p-6 rounded-xl shadow-sm border
1221
+ properties:
1222
+ gap: 24
1223
+ align: center
1224
+ wrap: true
1225
+ blocks:
1226
+ - id: flex_profile_avatar
1227
+ type: Avatar
1228
+ layout:
1229
+ flex: 0 0 auto
1230
+ properties:
1231
+ icon: AiOutlineUser
1232
+ size: 72
1233
+ color: "#fff"
1234
+ backgroundColor: "#1677ff"
1235
+ - id: flex_profile_info
1236
+ type: Flex
1237
+ layout:
1238
+ flex: 1 1 200px
1239
+ properties:
1240
+ vertical: true
1241
+ gap: 4
1242
+ blocks:
1243
+ - id: flex_profile_name
1244
+ type: Title
1245
+ properties:
1246
+ content: Jane Cooper
1247
+ level: 4
1248
+ - id: flex_profile_role
1249
+ type: Paragraph
1250
+ properties:
1251
+ content: Senior Product Designer at Acme Corp
1252
+ - id: flex_profile_tags
1253
+ type: Flex
1254
+ properties:
1255
+ gap: 8
1256
+ wrap: true
1257
+ blocks:
1258
+ - id: flex_profile_tag1
1259
+ type: Tag
1260
+ layout:
1261
+ flex: 0 0 auto
1262
+ properties:
1263
+ title: Design
1264
+ color: blue
1265
+ - id: flex_profile_tag2
1266
+ type: Tag
1267
+ layout:
1268
+ flex: 0 0 auto
1269
+ properties:
1270
+ title: UX Research
1271
+ color: purple
1272
+ - id: flex_profile_tag3
1273
+ type: Tag
1274
+ layout:
1275
+ flex: 0 0 auto
1276
+ properties:
1277
+ title: Figma
1278
+ color: cyan
1279
+ - id: flex_profile_actions
1280
+ type: Flex
1281
+ layout:
1282
+ flex: 0 0 auto
1283
+ properties:
1284
+ gap: 8
1285
+ blocks:
1286
+ - id: flex_profile_btn_msg
1287
+ type: Button
1288
+ layout:
1289
+ flex: 0 0 auto
1290
+ properties:
1291
+ title: Message
1292
+ icon: AiOutlineMail
1293
+ color: primary
1294
+ variant: outlined
1295
+ events:
1296
+ onClick:
1297
+ - id: flex_profile_msg_action
1298
+ type: DisplayMessage
1299
+ params:
1300
+ content: Opening message composer...
1301
+ status: info
1302
+ - id: flex_profile_btn_follow
1303
+ type: Button
1304
+ layout:
1305
+ flex: 0 0 auto
1306
+ properties:
1307
+ title: Follow
1308
+ icon: AiOutlineUserAdd
1309
+ color: primary
1310
+ variant: solid
1311
+ events:
1312
+ onClick:
1313
+ - id: flex_profile_follow_action
1314
+ type: SetState
1315
+ params:
1316
+ following: true
1317
+ - id: flex_profile_follow_msg
1318
+ type: DisplayMessage
1319
+ params:
1320
+ content: You are now following Jane Cooper.
1321
+ status: success
1322
+ ```
1323
+
1324
+ Fast Builds
1325
+
1326
+ Incremental compilation and smart caching reduce build times by up to 80% compared to traditional frameworks.
1327
+
1328
+ Secure by Default
1329
+
1330
+ Built-in authentication, role-based access control, and automatic input sanitization protect your application out of the box.
1331
+
1332
+ Fully Extensible
1333
+
1334
+ Custom plugins for blocks, connections, operators, and actions let you extend functionality to match any requirement.
1335
+
1336
+ ```yaml
1337
+ - id: flex_features_row
1338
+ type: Flex
1339
+ properties:
1340
+ gap: 16
1341
+ wrap: true
1342
+ align: stretch
1343
+ blocks:
1344
+ - id: flex_feature_card1
1345
+ type: Card
1346
+ layout:
1347
+ flex: 1 1 240px
1348
+ properties:
1349
+ hoverable: true
1350
+ blocks:
1351
+ - id: flex_feature1_icon_row
1352
+ type: Flex
1353
+ properties:
1354
+ gap: 12
1355
+ align: center
1356
+ blocks:
1357
+ - id: flex_feature1_icon
1358
+ type: Icon
1359
+ layout:
1360
+ flex: 0 0 auto
1361
+ properties:
1362
+ name: AiOutlineThunderbolt
1363
+ color: "#1677ff"
1364
+ size: 28
1365
+ - id: flex_feature1_title
1366
+ type: Title
1367
+ layout:
1368
+ flex: 0 0 auto
1369
+ properties:
1370
+ content: Fast Builds
1371
+ level: 5
1372
+ - id: flex_feature1_desc
1373
+ type: Paragraph
1374
+ properties:
1375
+ content: Incremental compilation and smart caching reduce build times by up to
1376
+ 80% compared to traditional frameworks.
1377
+ - id: flex_feature1_btn
1378
+ type: Button
1379
+ properties:
1380
+ title: Learn More
1381
+ color: primary
1382
+ variant: link
1383
+ size: small
1384
+ events:
1385
+ onClick:
1386
+ - id: flex_feature1_link
1387
+ type: Link
1388
+ params:
1389
+ url: https://docs.lowdefy.com
1390
+ newTab: true
1391
+ - id: flex_feature_card2
1392
+ type: Card
1393
+ layout:
1394
+ flex: 1 1 240px
1395
+ properties:
1396
+ hoverable: true
1397
+ blocks:
1398
+ - id: flex_feature2_icon_row
1399
+ type: Flex
1400
+ properties:
1401
+ gap: 12
1402
+ align: center
1403
+ blocks:
1404
+ - id: flex_feature2_icon
1405
+ type: Icon
1406
+ layout:
1407
+ flex: 0 0 auto
1408
+ properties:
1409
+ name: AiOutlineSafety
1410
+ color: "#52c41a"
1411
+ size: 28
1412
+ - id: flex_feature2_title
1413
+ type: Title
1414
+ layout:
1415
+ flex: 0 0 auto
1416
+ properties:
1417
+ content: Secure by Default
1418
+ level: 5
1419
+ - id: flex_feature2_desc
1420
+ type: Paragraph
1421
+ properties:
1422
+ content: Built-in authentication, role-based access control, and automatic input
1423
+ sanitization protect your application out of the box.
1424
+ - id: flex_feature2_btn
1425
+ type: Button
1426
+ properties:
1427
+ title: Learn More
1428
+ color: primary
1429
+ variant: link
1430
+ size: small
1431
+ events:
1432
+ onClick:
1433
+ - id: flex_feature2_link
1434
+ type: Link
1435
+ params:
1436
+ url: https://docs.lowdefy.com
1437
+ newTab: true
1438
+ - id: flex_feature_card3
1439
+ type: Card
1440
+ layout:
1441
+ flex: 1 1 240px
1442
+ properties:
1443
+ hoverable: true
1444
+ blocks:
1445
+ - id: flex_feature3_icon_row
1446
+ type: Flex
1447
+ properties:
1448
+ gap: 12
1449
+ align: center
1450
+ blocks:
1451
+ - id: flex_feature3_icon
1452
+ type: Icon
1453
+ layout:
1454
+ flex: 0 0 auto
1455
+ properties:
1456
+ name: AiOutlineExpandAlt
1457
+ color: "#722ed1"
1458
+ size: 28
1459
+ - id: flex_feature3_title
1460
+ type: Title
1461
+ layout:
1462
+ flex: 0 0 auto
1463
+ properties:
1464
+ content: Fully Extensible
1465
+ level: 5
1466
+ - id: flex_feature3_desc
1467
+ type: Paragraph
1468
+ properties:
1469
+ content: Custom plugins for blocks, connections, operators, and actions let you
1470
+ extend functionality to match any requirement.
1471
+ - id: flex_feature3_btn
1472
+ type: Button
1473
+ properties:
1474
+ title: Learn More
1475
+ color: primary
1476
+ variant: link
1477
+ size: small
1478
+ events:
1479
+ onClick:
1480
+ - id: flex_feature3_link
1481
+ type: Link
1482
+ params:
1483
+ url: https://docs.lowdefy.com
1484
+ newTab: true
1485
+ ```
1486
+
1487
+ | Property | Type | Default | Description |
1488
+ | --- | --- | --- | --- |
1489
+ | `vertical` | boolean | `false` | Whether the main axis direction is vertical. |
1490
+ | `wrap` | boolean \| string | - | Set whether the element is displayed in a single line or in multiple lines. |
1491
+ | `justify` | string | - | Set the alignment of elements on the main axis. Enum: `flex-start`, `center`, `flex-end`, `space-between`, `space-around`, `space-evenly`. |
1492
+ | `align` | string | - | Set the alignment of elements on the cross axis. Enum: `flex-start`, `center`, `flex-end`, `stretch`, `baseline`. |
1493
+ | `gap` | string \| number | - | Set the gap between items. Can be "small", "middle", "large", or a number. |
1494
+ | `flex` | string \| number | - | Flex CSS shorthand property. |
1495
+ | `component` | string | - | Custom element type. |
1496
+ | `theme` | object | - | Antd design token overrides for this block. See [antd design tokens](https://ant.design/components/overview#design-token). See [Ant Design flex tokens](https://ant.design/components/flex#design-token). |
1497
+ | `theme.padding` | number | - | Base padding value. |
1498
+ | `theme.margin` | number | - | Base margin value. |
1499
+ | `theme.colorBgContainer` | string | - | Background color when used with a custom component wrapper. |
1500
+
1501
+ No events defined.
1502
+
1503
+ | Key | Target |
1504
+ | --- | --- |
1505
+ | `/block` | Outer block wrapper (always available). |
1506
+ | `/element` | The Flex element. |
1507
+
1508
+ | Slot | Description |
1509
+ | --- | --- |
1510
+ | `content` | Child blocks laid out by the Flex container. |