@lowdefy/blocks-antd 5.6.0 → 6.1.0

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 (285) hide show
  1. package/dist/TagPillRow.js +88 -0
  2. package/dist/blocks/Affix/gallery.yaml +399 -0
  3. package/dist/blocks/Affix/tests/Affix.e2e.yaml +72 -0
  4. package/dist/blocks/Affix/tests.yaml +29 -0
  5. package/dist/blocks/Alert/gallery.yaml +701 -0
  6. package/dist/blocks/Alert/tests/Alert.e2e.yaml +161 -0
  7. package/dist/blocks/Alert/tests.yaml +261 -0
  8. package/dist/blocks/AutoComplete/gallery.yaml +713 -0
  9. package/dist/blocks/AutoComplete/tests/AutoComplete.e2e.yaml +330 -0
  10. package/dist/blocks/AutoComplete/tests.yaml +178 -0
  11. package/dist/blocks/Avatar/gallery.yaml +1037 -0
  12. package/dist/blocks/Avatar/tests/Avatar.e2e.yaml +125 -0
  13. package/dist/blocks/Avatar/tests.yaml +76 -0
  14. package/dist/blocks/Badge/gallery.yaml +1090 -0
  15. package/dist/blocks/Badge/tests/Badge.e2e.yaml +195 -0
  16. package/dist/blocks/Badge/tests.yaml +91 -0
  17. package/dist/blocks/Breadcrumb/gallery.yaml +484 -0
  18. package/dist/blocks/Breadcrumb/tests/Breadcrumb.e2e.yaml +165 -0
  19. package/dist/blocks/Breadcrumb/tests.yaml +106 -0
  20. package/dist/blocks/Button/Button.js +11 -2
  21. package/dist/blocks/Button/gallery.yaml +718 -0
  22. package/dist/blocks/Button/meta.js +4 -0
  23. package/dist/blocks/Button/tests/Button.e2e.yaml +246 -0
  24. package/dist/blocks/Button/tests.yaml +109 -0
  25. package/dist/blocks/ButtonSelector/gallery.yaml +891 -0
  26. package/dist/blocks/ButtonSelector/tests/ButtonSelector.e2e.yaml +188 -0
  27. package/dist/blocks/ButtonSelector/tests.yaml +167 -0
  28. package/dist/blocks/Calendar/gallery.yaml +128 -0
  29. package/dist/blocks/Calendar/tests/Calendar.e2e.yaml +136 -0
  30. package/dist/blocks/Calendar/tests.yaml +50 -0
  31. package/dist/blocks/Card/gallery.yaml +1035 -0
  32. package/dist/blocks/Card/tests/Card.e2e.yaml +209 -0
  33. package/dist/blocks/Card/tests.yaml +75 -0
  34. package/dist/blocks/Carousel/gallery.yaml +1971 -0
  35. package/dist/blocks/Carousel/tests/Carousel.e2e.yaml +211 -0
  36. package/dist/blocks/Carousel/tests.yaml +117 -0
  37. package/dist/blocks/CheckboxSelector/gallery.yaml +781 -0
  38. package/dist/blocks/CheckboxSelector/tests/CheckboxSelector.e2e.yaml +272 -0
  39. package/dist/blocks/CheckboxSelector/tests.yaml +325 -0
  40. package/dist/blocks/CheckboxSwitch/gallery.yaml +457 -0
  41. package/dist/blocks/CheckboxSwitch/tests/CheckboxSwitch.e2e.yaml +126 -0
  42. package/dist/blocks/CheckboxSwitch/tests.yaml +96 -0
  43. package/dist/blocks/Collapse/gallery.yaml +1079 -0
  44. package/dist/blocks/Collapse/tests/Collapse.e2e.yaml +206 -0
  45. package/dist/blocks/Collapse/tests.yaml +265 -0
  46. package/dist/blocks/ColorSelector/gallery.yaml +807 -0
  47. package/dist/blocks/ColorSelector/tests/ColorSelector.e2e.yaml +77 -0
  48. package/dist/blocks/ColorSelector/tests.yaml +84 -0
  49. package/dist/blocks/ConfigProvider/gallery.yaml +1003 -0
  50. package/dist/blocks/ConfigProvider/tests.yaml +62 -0
  51. package/dist/blocks/ConfirmModal/gallery.yaml +1043 -0
  52. package/dist/blocks/ConfirmModal/tests/ConfirmModal.e2e.yaml +410 -0
  53. package/dist/blocks/ConfirmModal/tests.yaml +95 -0
  54. package/dist/blocks/Content/gallery.yaml +528 -0
  55. package/dist/blocks/Content/tests/Content.e2e.yaml +71 -0
  56. package/dist/blocks/Content/tests.yaml +42 -0
  57. package/dist/blocks/ControlledList/ControlledList.js +1 -1
  58. package/dist/blocks/ControlledList/gallery.yaml +481 -0
  59. package/dist/blocks/ControlledList/{style.module.css → style.css} +3 -3
  60. package/dist/blocks/ControlledList/tests/ControlledList.e2e.yaml +161 -0
  61. package/dist/blocks/ControlledList/tests.yaml +57 -0
  62. package/dist/blocks/DateRangeSelector/DateRangeSelector.js +7 -0
  63. package/dist/blocks/DateRangeSelector/e2e.js +28 -2
  64. package/dist/blocks/DateRangeSelector/gallery.yaml +858 -0
  65. package/dist/blocks/DateRangeSelector/meta.js +2 -0
  66. package/dist/blocks/DateRangeSelector/tests/DateRangeSelector.e2e.yaml +204 -0
  67. package/dist/blocks/DateRangeSelector/tests.yaml +129 -0
  68. package/dist/blocks/DateSelector/DateSelector.js +6 -0
  69. package/dist/blocks/DateSelector/e2e.js +28 -2
  70. package/dist/blocks/DateSelector/gallery.yaml +691 -0
  71. package/dist/blocks/DateSelector/meta.js +6 -0
  72. package/dist/blocks/DateSelector/tests/DateSelector.e2e.yaml +229 -0
  73. package/dist/blocks/DateSelector/tests.yaml +117 -0
  74. package/dist/blocks/DateTimeSelector/DateTimeSelector.js +7 -0
  75. package/dist/blocks/DateTimeSelector/e2e.js +26 -2
  76. package/dist/blocks/DateTimeSelector/gallery.yaml +770 -0
  77. package/dist/blocks/DateTimeSelector/meta.js +2 -0
  78. package/dist/blocks/DateTimeSelector/tests/DateTimeSelector.e2e.yaml +163 -0
  79. package/dist/blocks/DateTimeSelector/tests.yaml +140 -0
  80. package/dist/blocks/Descriptions/gallery.yaml +839 -0
  81. package/dist/blocks/Descriptions/tests/Descriptions.e2e.yaml +143 -0
  82. package/dist/blocks/Descriptions/tests.yaml +256 -0
  83. package/dist/blocks/Divider/gallery.yaml +375 -0
  84. package/dist/blocks/Divider/tests/Divider.e2e.yaml +107 -0
  85. package/dist/blocks/Divider/tests.yaml +58 -0
  86. package/dist/blocks/Drawer/gallery.yaml +1257 -0
  87. package/dist/blocks/Drawer/tests/Drawer.e2e.yaml +562 -0
  88. package/dist/blocks/Drawer/tests.yaml +80 -0
  89. package/dist/blocks/DropdownButton/gallery.yaml +606 -0
  90. package/dist/blocks/DropdownButton/tests/DropdownButton.e2e.yaml +243 -0
  91. package/dist/blocks/DropdownMenu/gallery.yaml +578 -0
  92. package/dist/blocks/DropdownMenu/tests/DropdownMenu.e2e.yaml +267 -0
  93. package/dist/blocks/Flex/gallery.yaml +1416 -0
  94. package/dist/blocks/Flex/tests/Flex.e2e.yaml +95 -0
  95. package/dist/blocks/Flex/tests.yaml +92 -0
  96. package/dist/blocks/FloatButton/gallery.yaml +518 -0
  97. package/dist/blocks/FloatButton/tests/FloatButton.e2e.yaml +73 -0
  98. package/dist/blocks/FloatButton/tests.yaml +59 -0
  99. package/dist/blocks/Footer/gallery.yaml +355 -0
  100. package/dist/blocks/Footer/tests/Footer.e2e.yaml +70 -0
  101. package/dist/blocks/Footer/tests.yaml +28 -0
  102. package/dist/blocks/Header/gallery.yaml +249 -0
  103. package/dist/blocks/Header/tests/Header.e2e.yaml +77 -0
  104. package/dist/blocks/Header/tests.yaml +36 -0
  105. package/dist/blocks/Label/Label.js +1 -1
  106. package/dist/blocks/Label/gallery.yaml +762 -0
  107. package/dist/blocks/Label/{style.module.css → style.css} +28 -28
  108. package/dist/blocks/Label/tests/Label.e2e.yaml +247 -0
  109. package/dist/blocks/Label/tests.yaml +212 -0
  110. package/dist/blocks/Layout/gallery.yaml +548 -0
  111. package/dist/blocks/Layout/tests/Layout.e2e.yaml +86 -0
  112. package/dist/blocks/Layout/tests.yaml +28 -0
  113. package/dist/blocks/ListSelector/gallery.yaml +223 -0
  114. package/dist/blocks/Masonry/gallery.yaml +989 -0
  115. package/dist/blocks/Masonry/tests/Masonry.e2e.yaml +128 -0
  116. package/dist/blocks/Masonry/tests.yaml +42 -0
  117. package/dist/blocks/MasonryList/gallery.yaml +224 -0
  118. package/dist/blocks/MasonryList/tests/MasonryList.e2e.yaml +55 -0
  119. package/dist/blocks/MasonryList/tests.yaml +42 -0
  120. package/dist/blocks/Menu/gallery.yaml +974 -0
  121. package/dist/blocks/Menu/tests/Menu.e2e.yaml +484 -0
  122. package/dist/blocks/Menu/tests.yaml +1053 -0
  123. package/dist/blocks/Message/gallery.yaml +860 -0
  124. package/dist/blocks/Message/tests/Message.e2e.yaml +246 -0
  125. package/dist/blocks/Message/tests.yaml +54 -0
  126. package/dist/blocks/MobileMenu/gallery.yaml +1172 -0
  127. package/dist/blocks/MobileMenu/tests/MobileMenu.e2e.yaml +314 -0
  128. package/dist/blocks/MobileMenu/tests.yaml +359 -0
  129. package/dist/blocks/Modal/gallery.yaml +1039 -0
  130. package/dist/blocks/Modal/tests/Modal.e2e.yaml +493 -0
  131. package/dist/blocks/Modal/tests.yaml +75 -0
  132. package/dist/blocks/MonthSelector/MonthSelector.js +6 -0
  133. package/dist/blocks/MonthSelector/e2e.js +26 -2
  134. package/dist/blocks/MonthSelector/gallery.yaml +687 -0
  135. package/dist/blocks/MonthSelector/meta.js +6 -0
  136. package/dist/blocks/MonthSelector/tests/MonthSelector.e2e.yaml +167 -0
  137. package/dist/blocks/MonthSelector/tests.yaml +124 -0
  138. package/dist/blocks/MultipleSelector/gallery.yaml +1245 -0
  139. package/dist/blocks/MultipleSelector/tests/MultipleSelector.e2e.yaml +445 -0
  140. package/dist/blocks/MultipleSelector/tests.yaml +201 -0
  141. package/dist/blocks/Notification/gallery.yaml +1376 -0
  142. package/dist/blocks/Notification/tests/Notification.e2e.yaml +362 -0
  143. package/dist/blocks/Notification/tests.yaml +97 -0
  144. package/dist/blocks/NumberInput/gallery.yaml +753 -0
  145. package/dist/blocks/NumberInput/tests/NumberInput.e2e.yaml +228 -0
  146. package/dist/blocks/NumberInput/tests.yaml +116 -0
  147. package/dist/blocks/PageHeaderMenu/PageHeaderMenu.js +1 -1
  148. package/dist/blocks/PageHeaderMenu/gallery.yaml +480 -0
  149. package/dist/blocks/PageHeaderMenu/tests/PageHeaderMenu.e2e.yaml +110 -0
  150. package/dist/blocks/PageHeaderMenu/tests.yaml +173 -0
  151. package/dist/blocks/PageSidebarLayout/PageSidebarLayout.js +10 -1
  152. package/dist/blocks/PageSidebarLayout/gallery.yaml +302 -0
  153. package/dist/blocks/PageSidebarLayout/meta.js +1 -0
  154. package/dist/blocks/PageSidebarLayout/tests/PageSidebarLayout.e2e.yaml +216 -0
  155. package/dist/blocks/PageSidebarLayout/tests.yaml +174 -0
  156. package/dist/blocks/PageSiderMenu/PageSiderMenu.js +1 -1
  157. package/dist/blocks/PageSiderMenu/gallery.yaml +516 -0
  158. package/dist/blocks/PageSiderMenu/tests/PageSiderMenu.e2e.yaml +175 -0
  159. package/dist/blocks/PageSiderMenu/tests.yaml +211 -0
  160. package/dist/blocks/Pagination/gallery.yaml +503 -0
  161. package/dist/blocks/Pagination/tests/Pagination.e2e.yaml +159 -0
  162. package/dist/blocks/Pagination/tests.yaml +80 -0
  163. package/dist/blocks/Paragraph/gallery.yaml +458 -0
  164. package/dist/blocks/Paragraph/tests/Paragraph.e2e.yaml +153 -0
  165. package/dist/blocks/Paragraph/tests.yaml +176 -0
  166. package/dist/blocks/ParagraphInput/gallery.yaml +1483 -0
  167. package/dist/blocks/ParagraphInput/tests/ParagraphInput.e2e.yaml +189 -0
  168. package/dist/blocks/ParagraphInput/tests.yaml +163 -0
  169. package/dist/blocks/PasswordInput/gallery.yaml +420 -0
  170. package/dist/blocks/PasswordInput/tests/PasswordInput.e2e.yaml +188 -0
  171. package/dist/blocks/PasswordInput/tests.yaml +78 -0
  172. package/dist/blocks/PhoneNumberInput/gallery.yaml +677 -0
  173. package/dist/blocks/PhoneNumberInput/tests/PhoneNumberInput.e2e.yaml +279 -0
  174. package/dist/blocks/PhoneNumberInput/tests.yaml +25 -0
  175. package/dist/blocks/Popover/gallery.yaml +1301 -0
  176. package/dist/blocks/Popover/tests/Popover.e2e.yaml +249 -0
  177. package/dist/blocks/Popover/tests.yaml +105 -0
  178. package/dist/blocks/Progress/gallery.yaml +772 -0
  179. package/dist/blocks/Progress/tests/Progress.e2e.yaml +167 -0
  180. package/dist/blocks/Progress/tests.yaml +114 -0
  181. package/dist/blocks/QRCode/gallery.yaml +492 -0
  182. package/dist/blocks/QRCode/tests/QRCode.e2e.yaml +66 -0
  183. package/dist/blocks/QRCode/tests.yaml +113 -0
  184. package/dist/blocks/RadioSelector/gallery.yaml +816 -0
  185. package/dist/blocks/RadioSelector/tests/RadioSelector.e2e.yaml +269 -0
  186. package/dist/blocks/RadioSelector/tests.yaml +339 -0
  187. package/dist/blocks/RatingSlider/gallery.yaml +627 -0
  188. package/dist/blocks/RatingSlider/tests/RatingSlider.e2e.yaml +188 -0
  189. package/dist/blocks/RatingSlider/tests.yaml +116 -0
  190. package/dist/blocks/Result/gallery.yaml +925 -0
  191. package/dist/blocks/Result/tests/Result.e2e.yaml +126 -0
  192. package/dist/blocks/Result/tests.yaml +75 -0
  193. package/dist/blocks/Search/Search.js +1 -1
  194. package/dist/blocks/Search/SearchModal.js +18 -9
  195. package/dist/blocks/Search/gallery.yaml +170 -0
  196. package/dist/blocks/Search/meta.js +2 -1
  197. package/dist/blocks/Search/{style.module.css → style.css} +19 -12
  198. package/dist/blocks/Search/tests/Search.e2e.yaml +125 -0
  199. package/dist/blocks/Search/useSearchIndex.js +24 -2
  200. package/dist/blocks/SegmentedSelector/gallery.yaml +725 -0
  201. package/dist/blocks/SegmentedSelector/tests/SegmentedSelector.e2e.yaml +115 -0
  202. package/dist/blocks/SegmentedSelector/tests.yaml +141 -0
  203. package/dist/blocks/Selector/gallery.yaml +1055 -0
  204. package/dist/blocks/Selector/tests/Selector.e2e.yaml +427 -0
  205. package/dist/blocks/Selector/tests.yaml +196 -0
  206. package/dist/blocks/Sider/gallery.yaml +994 -0
  207. package/dist/blocks/Sider/tests/Sider.e2e.yaml +162 -0
  208. package/dist/blocks/Sider/tests.yaml +20 -0
  209. package/dist/blocks/Slider/gallery.yaml +600 -0
  210. package/dist/blocks/Slider/tests/Slider.e2e.yaml +190 -0
  211. package/dist/blocks/Slider/tests.yaml +68 -0
  212. package/dist/blocks/Splitter/gallery.yaml +1511 -0
  213. package/dist/blocks/Splitter/tests/Splitter.e2e.yaml +114 -0
  214. package/dist/blocks/Splitter/tests.yaml +79 -0
  215. package/dist/blocks/Statistic/gallery.yaml +460 -0
  216. package/dist/blocks/Statistic/tests/Statistic.e2e.yaml +137 -0
  217. package/dist/blocks/Statistic/tests.yaml +77 -0
  218. package/dist/blocks/Steps/gallery.yaml +550 -0
  219. package/dist/blocks/Switch/gallery.yaml +502 -0
  220. package/dist/blocks/Switch/tests/Switch.e2e.yaml +132 -0
  221. package/dist/blocks/Switch/tests.yaml +87 -0
  222. package/dist/blocks/Tabs/gallery.yaml +1353 -0
  223. package/dist/blocks/Tabs/tests/Tabs.e2e.yaml +370 -0
  224. package/dist/blocks/Tabs/tests.yaml +349 -0
  225. package/dist/blocks/Tag/gallery.yaml +598 -0
  226. package/dist/blocks/Tag/tests/Tag.e2e.yaml +173 -0
  227. package/dist/blocks/Tag/tests.yaml +51 -0
  228. package/dist/blocks/TagMultipleSelector/TagMultipleSelector.js +53 -0
  229. package/dist/blocks/TagMultipleSelector/e2e.js +36 -0
  230. package/dist/blocks/TagMultipleSelector/gallery.yaml +70 -0
  231. package/dist/blocks/TagMultipleSelector/meta.js +91 -0
  232. package/dist/blocks/TagMultipleSelector/tests/TagMultipleSelector.e2e.yaml +93 -0
  233. package/dist/blocks/TagSelector/TagSelector.js +49 -0
  234. package/dist/blocks/TagSelector/e2e.js +36 -0
  235. package/dist/blocks/TagSelector/gallery.yaml +70 -0
  236. package/dist/blocks/TagSelector/meta.js +91 -0
  237. package/dist/blocks/TagSelector/tests/TagSelector.e2e.yaml +93 -0
  238. package/dist/blocks/TextArea/gallery.yaml +618 -0
  239. package/dist/blocks/TextArea/tests/TextArea.e2e.yaml +218 -0
  240. package/dist/blocks/TextArea/tests.yaml +100 -0
  241. package/dist/blocks/TextInput/gallery.yaml +560 -0
  242. package/dist/blocks/TextInput/tests/TextInput.e2e.yaml +287 -0
  243. package/dist/blocks/TextInput/tests.yaml +114 -0
  244. package/dist/blocks/TimelineList/gallery.yaml +431 -0
  245. package/dist/blocks/TimelineList/tests/TimelineList.e2e.yaml +244 -0
  246. package/dist/blocks/TimelineList/tests.yaml +251 -0
  247. package/dist/blocks/Title/gallery.yaml +483 -0
  248. package/dist/blocks/Title/tests/Title.e2e.yaml +180 -0
  249. package/dist/blocks/Title/tests.yaml +175 -0
  250. package/dist/blocks/TitleInput/gallery.yaml +1006 -0
  251. package/dist/blocks/TitleInput/tests/TitleInput.e2e.yaml +195 -0
  252. package/dist/blocks/TitleInput/tests.yaml +181 -0
  253. package/dist/blocks/Tooltip/gallery.yaml +1214 -0
  254. package/dist/blocks/Tooltip/tests/Tooltip.e2e.yaml +195 -0
  255. package/dist/blocks/Tooltip/tests.yaml +92 -0
  256. package/dist/blocks/Tour/gallery.yaml +2305 -0
  257. package/dist/blocks/Tour/tests/Tour.e2e.yaml +90 -0
  258. package/dist/blocks/Tour/tests.yaml +151 -0
  259. package/dist/blocks/TreeInput/gallery.yaml +78 -0
  260. package/dist/blocks/TreeInput/tests/TreeInput.e2e.yaml +139 -0
  261. package/dist/blocks/TreeInput/tests.yaml +140 -0
  262. package/dist/blocks/TreeMultipleSelector/gallery.yaml +67 -0
  263. package/dist/blocks/TreeSelector/gallery.yaml +81 -0
  264. package/dist/blocks/Watermark/gallery.yaml +479 -0
  265. package/dist/blocks/Watermark/tests/Watermark.e2e.yaml +62 -0
  266. package/dist/blocks/Watermark/tests.yaml +86 -0
  267. package/dist/blocks/WeekSelector/WeekSelector.js +6 -0
  268. package/dist/blocks/WeekSelector/e2e.js +26 -2
  269. package/dist/blocks/WeekSelector/gallery.yaml +589 -0
  270. package/dist/blocks/WeekSelector/meta.js +6 -0
  271. package/dist/blocks/WeekSelector/tests/WeekSelector.e2e.yaml +154 -0
  272. package/dist/blocks/WeekSelector/tests.yaml +122 -0
  273. package/dist/blocks.js +2 -0
  274. package/dist/disabledDate.js +91 -19
  275. package/dist/e2e.js +2 -0
  276. package/dist/getPresets.js +151 -0
  277. package/dist/getTagColor.js +44 -0
  278. package/dist/getTagSelectorOptions.js +30 -0
  279. package/dist/metas.js +2 -0
  280. package/dist/pickerPresetsStyle.css +26 -0
  281. package/dist/schemas/disabledDates.js +6 -2
  282. package/dist/schemas/index.js +1 -0
  283. package/dist/schemas/presets.js +111 -0
  284. package/dist/tagSelectorStyle.css +68 -0
  285. package/package.json +13 -13
@@ -0,0 +1,1511 @@
1
+ # Copyright 2020-2026 Lowdefy, Inc
2
+
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ - title: Basic Horizontal Split
16
+ blocks:
17
+ - id: basic_h
18
+ type: Splitter
19
+ style:
20
+ height: 200px
21
+ border: 1px solid #e8e8e8
22
+ borderRadius: 8px
23
+ properties:
24
+ layout: horizontal
25
+ panels:
26
+ - key: left
27
+ defaultSize: 50
28
+ - key: right
29
+ defaultSize: 50
30
+ slots:
31
+ left:
32
+ blocks:
33
+ - id: basic_h_left
34
+ type: Box
35
+ class: bg-bg-layout h-full flex items-center justify-center
36
+ blocks:
37
+ - id: basic_h_left_text
38
+ type: Paragraph
39
+ properties:
40
+ content: Left Panel
41
+ right:
42
+ blocks:
43
+ - id: basic_h_right
44
+ type: Box
45
+ class: bg-bg-layout h-full flex items-center justify-center
46
+ blocks:
47
+ - id: basic_h_right_text
48
+ type: Paragraph
49
+ properties:
50
+ content: Right Panel
51
+
52
+ - title: Vertical Split
53
+ blocks:
54
+ - id: basic_v
55
+ type: Splitter
56
+ style:
57
+ height: 300px
58
+ border: 1px solid #e8e8e8
59
+ borderRadius: 8px
60
+ properties:
61
+ layout: vertical
62
+ panels:
63
+ - key: top
64
+ defaultSize: 50
65
+ - key: bottom
66
+ defaultSize: 50
67
+ slots:
68
+ top:
69
+ blocks:
70
+ - id: basic_v_top
71
+ type: Box
72
+ class: bg-bg-layout h-full flex items-center justify-center
73
+ blocks:
74
+ - id: basic_v_top_text
75
+ type: Paragraph
76
+ properties:
77
+ content: Top Panel
78
+ bottom:
79
+ blocks:
80
+ - id: basic_v_bottom
81
+ type: Box
82
+ class: bg-bg-layout h-full flex items-center justify-center
83
+ blocks:
84
+ - id: basic_v_bottom_text
85
+ type: Paragraph
86
+ properties:
87
+ content: Bottom Panel
88
+
89
+ - title: Three Panels with Default Sizes
90
+ blocks:
91
+ - id: three_h
92
+ type: Splitter
93
+ style:
94
+ height: 200px
95
+ border: 1px solid #e8e8e8
96
+ borderRadius: 8px
97
+ properties:
98
+ layout: horizontal
99
+ panels:
100
+ - key: first
101
+ defaultSize: 25
102
+ - key: second
103
+ defaultSize: 50
104
+ - key: third
105
+ defaultSize: 25
106
+ slots:
107
+ first:
108
+ blocks:
109
+ - id: three_h_first
110
+ type: Box
111
+ class: bg-bg-layout h-full flex items-center justify-center
112
+ blocks:
113
+ - id: three_h_first_text
114
+ type: Paragraph
115
+ properties:
116
+ content: '25%'
117
+ second:
118
+ blocks:
119
+ - id: three_h_second
120
+ type: Box
121
+ class: bg-bg-layout h-full flex items-center justify-center
122
+ blocks:
123
+ - id: three_h_second_text
124
+ type: Paragraph
125
+ properties:
126
+ content: '50%'
127
+ third:
128
+ blocks:
129
+ - id: three_h_third
130
+ type: Box
131
+ class: bg-bg-layout h-full flex items-center justify-center
132
+ blocks:
133
+ - id: three_h_third_text
134
+ type: Paragraph
135
+ properties:
136
+ content: '25%'
137
+
138
+ - id: pixel_sizes
139
+ type: Splitter
140
+ style:
141
+ height: 180px
142
+ border: 1px solid #e8e8e8
143
+ borderRadius: 8px
144
+ properties:
145
+ layout: horizontal
146
+ panels:
147
+ - key: px_fixed
148
+ defaultSize: '200px'
149
+ - key: px_flex
150
+ slots:
151
+ px_fixed:
152
+ blocks:
153
+ - id: pixel_sizes_fixed
154
+ type: Box
155
+ class: bg-bg-layout h-full flex items-center justify-center
156
+ blocks:
157
+ - id: pixel_sizes_fixed_text
158
+ type: Paragraph
159
+ properties:
160
+ content: Fixed 200px
161
+ px_flex:
162
+ blocks:
163
+ - id: pixel_sizes_flex
164
+ type: Box
165
+ class: bg-bg-layout h-full flex items-center justify-center
166
+ blocks:
167
+ - id: pixel_sizes_flex_text
168
+ type: Paragraph
169
+ properties:
170
+ content: Flexible remainder
171
+
172
+ - title: Min and Max Size Constraints
173
+ blocks:
174
+ - id: constrained
175
+ type: Splitter
176
+ style:
177
+ height: 200px
178
+ border: 1px solid #e8e8e8
179
+ borderRadius: 8px
180
+ properties:
181
+ layout: horizontal
182
+ panels:
183
+ - key: nav
184
+ defaultSize: 30
185
+ min: 20
186
+ max: 40
187
+ - key: main
188
+ defaultSize: 70
189
+ slots:
190
+ nav:
191
+ blocks:
192
+ - id: constrained_nav
193
+ type: Box
194
+ class: bg-bg-layout h-full p-4
195
+ blocks:
196
+ - id: constrained_nav_title
197
+ type: Paragraph
198
+ properties:
199
+ content: '<b>Navigation</b>'
200
+ - id: constrained_nav_desc
201
+ type: Paragraph
202
+ properties:
203
+ content: 'Min: 20% / Max: 40%'
204
+ main:
205
+ blocks:
206
+ - id: constrained_main
207
+ type: Box
208
+ class: bg-bg-layout h-full p-4
209
+ blocks:
210
+ - id: constrained_main_title
211
+ type: Paragraph
212
+ properties:
213
+ content: '<b>Main Content</b>'
214
+ - id: constrained_main_desc
215
+ type: Paragraph
216
+ properties:
217
+ content: The left panel cannot be resized smaller than 20% or larger than 40%.
218
+
219
+ - id: constrained_px
220
+ type: Splitter
221
+ style:
222
+ height: 200px
223
+ border: 1px solid #e8e8e8
224
+ borderRadius: 8px
225
+ properties:
226
+ layout: horizontal
227
+ panels:
228
+ - key: cpx_left
229
+ defaultSize: 30
230
+ min: '100px'
231
+ max: '400px'
232
+ - key: cpx_center
233
+ defaultSize: 40
234
+ - key: cpx_right
235
+ defaultSize: 30
236
+ min: '100px'
237
+ max: '300px'
238
+ slots:
239
+ cpx_left:
240
+ blocks:
241
+ - id: constrained_px_left
242
+ type: Box
243
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
244
+ blocks:
245
+ - id: constrained_px_left_text
246
+ type: Paragraph
247
+ properties:
248
+ content: 'Min: 100px / Max: 400px'
249
+ cpx_center:
250
+ blocks:
251
+ - id: constrained_px_center
252
+ type: Box
253
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
254
+ blocks:
255
+ - id: constrained_px_center_text
256
+ type: Paragraph
257
+ properties:
258
+ content: Flexible Center
259
+ cpx_right:
260
+ blocks:
261
+ - id: constrained_px_right
262
+ type: Box
263
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
264
+ blocks:
265
+ - id: constrained_px_right_text
266
+ type: Paragraph
267
+ properties:
268
+ content: 'Min: 100px / Max: 300px'
269
+
270
+ - title: Collapsible Panels
271
+ blocks:
272
+ - id: collapsible_simple
273
+ type: Splitter
274
+ style:
275
+ height: 200px
276
+ border: 1px solid #e8e8e8
277
+ borderRadius: 8px
278
+ properties:
279
+ layout: horizontal
280
+ panels:
281
+ - key: col_sidebar
282
+ defaultSize: 30
283
+ collapsible: true
284
+ - key: col_body
285
+ defaultSize: 70
286
+ slots:
287
+ col_sidebar:
288
+ blocks:
289
+ - id: collapsible_simple_sidebar
290
+ type: Box
291
+ class: bg-bg-layout h-full p-4
292
+ blocks:
293
+ - id: collapsible_simple_sidebar_text
294
+ type: Paragraph
295
+ properties:
296
+ content: '<b>Collapsible Sidebar</b>'
297
+ - id: collapsible_simple_sidebar_desc
298
+ type: Paragraph
299
+ properties:
300
+ content: Click the arrow on the divider to collapse this panel.
301
+ col_body:
302
+ blocks:
303
+ - id: collapsible_simple_body
304
+ type: Box
305
+ class: bg-bg-container h-full p-4
306
+ blocks:
307
+ - id: collapsible_simple_body_text
308
+ type: Paragraph
309
+ properties:
310
+ content: Main body content remains visible when the sidebar is collapsed.
311
+
312
+ - id: collapsible_both
313
+ type: Splitter
314
+ style:
315
+ height: 200px
316
+ border: 1px solid #e8e8e8
317
+ borderRadius: 8px
318
+ properties:
319
+ layout: horizontal
320
+ panels:
321
+ - key: cb_left
322
+ defaultSize: 25
323
+ collapsible: true
324
+ - key: cb_center
325
+ defaultSize: 50
326
+ - key: cb_right
327
+ defaultSize: 25
328
+ collapsible: true
329
+ slots:
330
+ cb_left:
331
+ blocks:
332
+ - id: collapsible_both_left
333
+ type: Box
334
+ class: bg-bg-layout h-full p-3 flex items-center justify-center
335
+ blocks:
336
+ - id: collapsible_both_left_text
337
+ type: Paragraph
338
+ properties:
339
+ content: Left (collapsible)
340
+ cb_center:
341
+ blocks:
342
+ - id: collapsible_both_center
343
+ type: Box
344
+ class: bg-bg-layout h-full p-3 flex items-center justify-center
345
+ blocks:
346
+ - id: collapsible_both_center_text
347
+ type: Paragraph
348
+ properties:
349
+ content: Center (fixed)
350
+ cb_right:
351
+ blocks:
352
+ - id: collapsible_both_right
353
+ type: Box
354
+ class: bg-bg-layout h-full p-3 flex items-center justify-center
355
+ blocks:
356
+ - id: collapsible_both_right_text
357
+ type: Paragraph
358
+ properties:
359
+ content: Right (collapsible)
360
+
361
+ - title: Collapsible with Start and End
362
+ blocks:
363
+ - id: col_start_end
364
+ type: Splitter
365
+ style:
366
+ height: 200px
367
+ border: 1px solid #e8e8e8
368
+ borderRadius: 8px
369
+ properties:
370
+ layout: horizontal
371
+ panels:
372
+ - key: cse_left
373
+ defaultSize: 30
374
+ collapsible:
375
+ start: true
376
+ end: false
377
+ - key: cse_center
378
+ defaultSize: 40
379
+ collapsible:
380
+ start: true
381
+ end: true
382
+ - key: cse_right
383
+ defaultSize: 30
384
+ collapsible:
385
+ start: false
386
+ end: true
387
+ slots:
388
+ cse_left:
389
+ blocks:
390
+ - id: col_se_left
391
+ type: Box
392
+ class: bg-bg-layout h-full p-3 flex items-center justify-center
393
+ blocks:
394
+ - id: col_se_left_text
395
+ type: Paragraph
396
+ properties:
397
+ content: Collapse left only
398
+ cse_center:
399
+ blocks:
400
+ - id: col_se_center
401
+ type: Box
402
+ class: bg-bg-layout h-full p-3 flex items-center justify-center
403
+ blocks:
404
+ - id: col_se_center_text
405
+ type: Paragraph
406
+ properties:
407
+ content: Collapse both directions
408
+ cse_right:
409
+ blocks:
410
+ - id: col_se_right
411
+ type: Box
412
+ class: bg-bg-layout h-full p-3 flex items-center justify-center
413
+ blocks:
414
+ - id: col_se_right_text
415
+ type: Paragraph
416
+ properties:
417
+ content: Collapse right only
418
+
419
+ - title: Non-resizable Panel
420
+ blocks:
421
+ - id: nonresizable
422
+ type: Splitter
423
+ style:
424
+ height: 200px
425
+ border: 1px solid #e8e8e8
426
+ borderRadius: 8px
427
+ properties:
428
+ layout: horizontal
429
+ panels:
430
+ - key: nr_fixed
431
+ defaultSize: 30
432
+ resizable: false
433
+ - key: nr_flex_a
434
+ defaultSize: 40
435
+ - key: nr_flex_b
436
+ defaultSize: 30
437
+ slots:
438
+ nr_fixed:
439
+ blocks:
440
+ - id: nonresizable_fixed
441
+ type: Box
442
+ class: bg-bg-layout h-full p-3 flex items-center justify-center
443
+ blocks:
444
+ - id: nonresizable_fixed_text
445
+ type: Paragraph
446
+ properties:
447
+ content: 'Fixed (resizable: false)'
448
+ nr_flex_a:
449
+ blocks:
450
+ - id: nonresizable_flex_a
451
+ type: Box
452
+ class: bg-bg-layout h-full p-3 flex items-center justify-center
453
+ blocks:
454
+ - id: nonresizable_flex_a_text
455
+ type: Paragraph
456
+ properties:
457
+ content: Resizable
458
+ nr_flex_b:
459
+ blocks:
460
+ - id: nonresizable_flex_b
461
+ type: Box
462
+ class: bg-bg-layout h-full p-3 flex items-center justify-center
463
+ blocks:
464
+ - id: nonresizable_flex_b_text
465
+ type: Paragraph
466
+ properties:
467
+ content: Resizable
468
+
469
+ - title: Lazy Panel Rendering
470
+ blocks:
471
+ - id: lazy_splitter
472
+ type: Splitter
473
+ style:
474
+ height: 200px
475
+ border: 1px solid #e8e8e8
476
+ borderRadius: 8px
477
+ properties:
478
+ layout: horizontal
479
+ lazy: true
480
+ panels:
481
+ - key: lazy_left
482
+ defaultSize: 50
483
+ collapsible: true
484
+ - key: lazy_right
485
+ defaultSize: 50
486
+ slots:
487
+ lazy_left:
488
+ blocks:
489
+ - id: lazy_left_box
490
+ type: Box
491
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
492
+ blocks:
493
+ - id: lazy_left_text
494
+ type: Paragraph
495
+ properties:
496
+ content: Lazy rendering defers content until the panel is visible. Collapse and expand to see the effect.
497
+ lazy_right:
498
+ blocks:
499
+ - id: lazy_right_box
500
+ type: Box
501
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
502
+ blocks:
503
+ - id: lazy_right_text
504
+ type: Paragraph
505
+ properties:
506
+ content: This panel content is also lazily rendered.
507
+
508
+ - title: Event Actions
509
+ blocks:
510
+ - id: event_splitter
511
+ type: Splitter
512
+ style:
513
+ height: 200px
514
+ border: 1px solid #e8e8e8
515
+ borderRadius: 8px
516
+ properties:
517
+ layout: horizontal
518
+ panels:
519
+ - key: evt_left
520
+ defaultSize: 50
521
+ collapsible: true
522
+ - key: evt_right
523
+ defaultSize: 50
524
+ events:
525
+ onResizeEnd:
526
+ - id: event_resize_msg
527
+ type: DisplayMessage
528
+ params:
529
+ content:
530
+ _string.concat:
531
+ - 'Resize complete. Panel sizes: '
532
+ - _json.stringify:
533
+ on:
534
+ _event: sizes
535
+ duration: 2
536
+ onCollapse:
537
+ - id: event_collapse_msg
538
+ type: DisplayMessage
539
+ params:
540
+ content:
541
+ _if:
542
+ test:
543
+ _event: collapsed
544
+ then: Panel collapsed.
545
+ else: Panel expanded.
546
+ duration: 2
547
+ slots:
548
+ evt_left:
549
+ blocks:
550
+ - id: event_left_box
551
+ type: Box
552
+ class: bg-bg-layout h-full p-4
553
+ blocks:
554
+ - id: event_left_title
555
+ type: Paragraph
556
+ properties:
557
+ content: '<b>Collapsible Panel</b>'
558
+ - id: event_left_desc
559
+ type: Paragraph
560
+ properties:
561
+ content: Collapse this panel or resize the divider to see event messages.
562
+ evt_right:
563
+ blocks:
564
+ - id: event_right_box
565
+ type: Box
566
+ class: bg-bg-container h-full p-4
567
+ blocks:
568
+ - id: event_right_desc
569
+ type: Paragraph
570
+ properties:
571
+ content: The onResizeEnd and onCollapse events fire DisplayMessage actions to show the current panel state.
572
+
573
+ - id: event_state_splitter
574
+ type: Splitter
575
+ style:
576
+ height: 220px
577
+ border: 1px solid #e8e8e8
578
+ borderRadius: 8px
579
+ properties:
580
+ layout: horizontal
581
+ panels:
582
+ - key: es_left
583
+ defaultSize: 40
584
+ - key: es_right
585
+ defaultSize: 60
586
+ events:
587
+ onResizeEnd:
588
+ - id: event_set_state
589
+ type: SetState
590
+ params:
591
+ splitter_sizes:
592
+ _event: sizes
593
+ onResizeStart:
594
+ - id: event_resize_start_msg
595
+ type: DisplayMessage
596
+ params:
597
+ content: Resizing started...
598
+ duration: 1
599
+ slots:
600
+ es_left:
601
+ blocks:
602
+ - id: es_left_box
603
+ type: Box
604
+ class: bg-bg-layout h-full p-4
605
+ blocks:
606
+ - id: es_left_title
607
+ type: Paragraph
608
+ properties:
609
+ content: '<b>State Tracking</b>'
610
+ - id: es_left_desc
611
+ type: Paragraph
612
+ properties:
613
+ content: Resize the panels. The onResizeStart fires a message and onResizeEnd saves panel sizes to state.
614
+ es_right:
615
+ blocks:
616
+ - id: es_right_box
617
+ type: Box
618
+ class: bg-bg-container h-full p-4
619
+ blocks:
620
+ - id: es_right_title
621
+ type: Paragraph
622
+ properties:
623
+ content: '<b>Current sizes:</b>'
624
+ - id: es_right_sizes
625
+ type: Paragraph
626
+ properties:
627
+ content:
628
+ _if:
629
+ test:
630
+ _not:
631
+ _not:
632
+ _state: splitter_sizes
633
+ then:
634
+ _json.stringify:
635
+ on:
636
+ _state: splitter_sizes
637
+ else: Resize panels to see sizes here.
638
+
639
+ - title: Nested Splitters
640
+ blocks:
641
+ - id: nested_outer
642
+ type: Splitter
643
+ style:
644
+ height: 350px
645
+ border: 1px solid #e8e8e8
646
+ borderRadius: 8px
647
+ properties:
648
+ layout: horizontal
649
+ panels:
650
+ - key: n_sidebar
651
+ defaultSize: 25
652
+ min: 15
653
+ collapsible: true
654
+ - key: n_main
655
+ defaultSize: 75
656
+ slots:
657
+ n_sidebar:
658
+ blocks:
659
+ - id: nested_sidebar
660
+ type: Box
661
+ class: bg-bg-layout h-full p-4
662
+ blocks:
663
+ - id: nested_sidebar_title
664
+ type: Paragraph
665
+ properties:
666
+ content: '<b>Sidebar</b>'
667
+ - id: nested_sidebar_item_1
668
+ type: Paragraph
669
+ properties:
670
+ content: Dashboard
671
+ - id: nested_sidebar_item_2
672
+ type: Paragraph
673
+ properties:
674
+ content: Analytics
675
+ - id: nested_sidebar_item_3
676
+ type: Paragraph
677
+ properties:
678
+ content: Settings
679
+ n_main:
680
+ blocks:
681
+ - id: nested_inner
682
+ type: Splitter
683
+ style:
684
+ height: 100%
685
+ properties:
686
+ layout: vertical
687
+ panels:
688
+ - key: n_content
689
+ defaultSize: 70
690
+ - key: n_footer
691
+ defaultSize: 30
692
+ min: 15
693
+ collapsible: true
694
+ slots:
695
+ n_content:
696
+ blocks:
697
+ - id: nested_content
698
+ type: Box
699
+ class: bg-bg-container h-full p-4
700
+ blocks:
701
+ - id: nested_content_title
702
+ type: Paragraph
703
+ properties:
704
+ content: '<b>Main Content Area</b>'
705
+ - id: nested_content_desc
706
+ type: Paragraph
707
+ properties:
708
+ content: A horizontal splitter with a nested vertical splitter. The sidebar splits horizontally, while the main area is split vertically into content and a bottom panel.
709
+ n_footer:
710
+ blocks:
711
+ - id: nested_footer
712
+ type: Box
713
+ class: bg-bg-layout h-full p-4
714
+ blocks:
715
+ - id: nested_footer_title
716
+ type: Paragraph
717
+ properties:
718
+ content: '<b>Bottom Panel</b>'
719
+ - id: nested_footer_desc
720
+ type: Paragraph
721
+ properties:
722
+ content: Collapsible bottom panel inside the nested vertical splitter.
723
+
724
+ - title: Theme Token Overrides
725
+ blocks:
726
+ - id: theme_thick_bar
727
+ type: Splitter
728
+ style:
729
+ height: 200px
730
+ border: 1px solid #e8e8e8
731
+ borderRadius: 8px
732
+ properties:
733
+ layout: horizontal
734
+ panels:
735
+ - key: ttb_left
736
+ defaultSize: 50
737
+ - key: ttb_right
738
+ defaultSize: 50
739
+ theme:
740
+ splitBarSize: 4
741
+ splitTriggerSize: 24
742
+ colorFill: '#1677ff'
743
+ slots:
744
+ ttb_left:
745
+ blocks:
746
+ - id: theme_thick_left
747
+ type: Box
748
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
749
+ blocks:
750
+ - id: theme_thick_left_text
751
+ type: Paragraph
752
+ properties:
753
+ content: 'splitBarSize: 4, splitTriggerSize: 24'
754
+ ttb_right:
755
+ blocks:
756
+ - id: theme_thick_right
757
+ type: Box
758
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
759
+ blocks:
760
+ - id: theme_thick_right_text
761
+ type: Paragraph
762
+ properties:
763
+ content: Thicker blue splitter bar with larger trigger area
764
+
765
+ - id: theme_green
766
+ type: Splitter
767
+ style:
768
+ height: 200px
769
+ border: 1px solid #e8e8e8
770
+ borderRadius: 8px
771
+ properties:
772
+ layout: horizontal
773
+ panels:
774
+ - key: tg_left
775
+ defaultSize: 50
776
+ collapsible: true
777
+ - key: tg_right
778
+ defaultSize: 50
779
+ theme:
780
+ splitBarSize: 3
781
+ colorFill: '#52c41a'
782
+ colorPrimary: '#52c41a'
783
+ colorText: '#52c41a'
784
+ splitTriggerSize: 20
785
+ slots:
786
+ tg_left:
787
+ blocks:
788
+ - id: theme_green_left
789
+ type: Box
790
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
791
+ blocks:
792
+ - id: theme_green_left_text
793
+ type: Paragraph
794
+ properties:
795
+ content: Green themed divider, arrows, and resize dots
796
+ tg_right:
797
+ blocks:
798
+ - id: theme_green_right
799
+ type: Box
800
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
801
+ blocks:
802
+ - id: theme_green_right_text
803
+ type: Paragraph
804
+ properties:
805
+ content: 'colorFill, colorPrimary, colorText overridden'
806
+
807
+ - id: theme_minimal
808
+ type: Splitter
809
+ style:
810
+ height: 200px
811
+ border: 1px solid #e8e8e8
812
+ borderRadius: 8px
813
+ properties:
814
+ layout: horizontal
815
+ panels:
816
+ - key: tm_left
817
+ defaultSize: 50
818
+ - key: tm_right
819
+ defaultSize: 50
820
+ theme:
821
+ splitBarSize: 1
822
+ splitTriggerSize: 0
823
+ resizeSpinnerSize: 0
824
+ slots:
825
+ tm_left:
826
+ blocks:
827
+ - id: theme_minimal_left
828
+ type: Box
829
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
830
+ blocks:
831
+ - id: theme_minimal_left_text
832
+ type: Paragraph
833
+ properties:
834
+ content: Minimal divider with no visible trigger handle
835
+ tm_right:
836
+ blocks:
837
+ - id: theme_minimal_right
838
+ type: Box
839
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
840
+ blocks:
841
+ - id: theme_minimal_right_text
842
+ type: Paragraph
843
+ properties:
844
+ content: 'resizeSpinnerSize: 0, splitTriggerSize: 0'
845
+
846
+ - id: theme_custom_handle
847
+ type: Splitter
848
+ style:
849
+ height: 200px
850
+ border: 1px solid #e8e8e8
851
+ borderRadius: 8px
852
+ properties:
853
+ layout: horizontal
854
+ panels:
855
+ - key: tch_left
856
+ defaultSize: 50
857
+ - key: tch_right
858
+ defaultSize: 50
859
+ theme:
860
+ splitBarDraggableSize: 40
861
+ colorFillTertiary: '#e6f4ff'
862
+ colorFillSecondary: '#91caff'
863
+ borderRadius: 12
864
+ slots:
865
+ tch_left:
866
+ blocks:
867
+ - id: theme_handle_left
868
+ type: Box
869
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
870
+ blocks:
871
+ - id: theme_handle_left_text
872
+ type: Paragraph
873
+ properties:
874
+ content: Custom drag handle with blue tones
875
+ tch_right:
876
+ blocks:
877
+ - id: theme_handle_right
878
+ type: Box
879
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
880
+ blocks:
881
+ - id: theme_handle_right_text
882
+ type: Paragraph
883
+ properties:
884
+ content: 'splitBarDraggableSize: 40, borderRadius: 12'
885
+
886
+ - title: Styled with Tailwind CSS (element)
887
+ blocks:
888
+ - id: css_rounded
889
+ type: Splitter
890
+ class:
891
+ element: rounded-2xl shadow-lg overflow-hidden
892
+ style:
893
+ height: 200px
894
+ properties:
895
+ layout: horizontal
896
+ panels:
897
+ - key: css_r_left
898
+ defaultSize: 50
899
+ - key: css_r_right
900
+ defaultSize: 50
901
+ slots:
902
+ css_r_left:
903
+ blocks:
904
+ - id: css_rounded_left
905
+ type: Box
906
+ class: bg-gradient-to-br from-primary/10 to-primary/10 h-full p-4 flex items-center justify-center
907
+ blocks:
908
+ - id: css_rounded_left_text
909
+ type: Paragraph
910
+ properties:
911
+ content: The element CSS key applies Tailwind classes to the outer Splitter wrapper.
912
+ css_r_right:
913
+ blocks:
914
+ - id: css_rounded_right
915
+ type: Box
916
+ class: bg-gradient-to-br from-primary/15 to-primary/10 h-full p-4 flex items-center justify-center
917
+ blocks:
918
+ - id: css_rounded_right_text
919
+ type: Paragraph
920
+ properties:
921
+ content: 'class.element: rounded-2xl shadow-lg overflow-hidden'
922
+
923
+ - id: css_border
924
+ type: Splitter
925
+ class:
926
+ element: border-2 border-dashed border-blue-300 rounded-xl
927
+ style:
928
+ height: 180px
929
+ properties:
930
+ layout: horizontal
931
+ panels:
932
+ - key: css_b_left
933
+ defaultSize: 40
934
+ - key: css_b_right
935
+ defaultSize: 60
936
+ slots:
937
+ css_b_left:
938
+ blocks:
939
+ - id: css_border_left
940
+ type: Box
941
+ class: bg-bg-layout h-full p-4 flex items-center justify-center
942
+ blocks:
943
+ - id: css_border_left_text
944
+ type: Paragraph
945
+ properties:
946
+ content: Dashed blue border via Tailwind
947
+ css_b_right:
948
+ blocks:
949
+ - id: css_border_right
950
+ type: Box
951
+ class: bg-bg-container h-full p-4 flex items-center justify-center
952
+ blocks:
953
+ - id: css_border_right_text
954
+ type: Paragraph
955
+ properties:
956
+ content: 'class.element: border-2 border-dashed border-blue-300 rounded-xl'
957
+
958
+ - title: Code Editor with Preview
959
+ blocks:
960
+ - id: editor_outer
961
+ type: Splitter
962
+ style:
963
+ height: 420px
964
+ border: 1px solid #d9d9d9
965
+ borderRadius: 8px
966
+ properties:
967
+ layout: horizontal
968
+ panels:
969
+ - key: editor_files
970
+ defaultSize: 18
971
+ min: 12
972
+ collapsible: true
973
+ - key: editor_main
974
+ defaultSize: 82
975
+ events:
976
+ onCollapse:
977
+ - id: editor_collapse_msg
978
+ type: DisplayMessage
979
+ params:
980
+ content:
981
+ _if:
982
+ test:
983
+ _event: collapsed
984
+ then: File explorer collapsed.
985
+ else: File explorer expanded.
986
+ duration: 2
987
+ slots:
988
+ editor_files:
989
+ blocks:
990
+ - id: editor_files_box
991
+ type: Box
992
+ class: bg-bg-layout h-full p-3
993
+ blocks:
994
+ - id: editor_files_title
995
+ type: Paragraph
996
+ style:
997
+ color: '#9ca3af'
998
+ fontSize: 11px
999
+ textTransform: uppercase
1000
+ letterSpacing: 1px
1001
+ properties:
1002
+ content: Explorer
1003
+ - id: editor_files_f1
1004
+ type: Paragraph
1005
+ style:
1006
+ color: '#e2e8f0'
1007
+ fontSize: 13px
1008
+ properties:
1009
+ content: 'src/'
1010
+ - id: editor_files_f2
1011
+ type: Paragraph
1012
+ style:
1013
+ color: '#94a3b8'
1014
+ fontSize: 13px
1015
+ paddingLeft: 12px
1016
+ properties:
1017
+ content: 'index.js'
1018
+ - id: editor_files_f3
1019
+ type: Paragraph
1020
+ style:
1021
+ color: '#94a3b8'
1022
+ fontSize: 13px
1023
+ paddingLeft: 12px
1024
+ properties:
1025
+ content: 'App.js'
1026
+ - id: editor_files_f4
1027
+ type: Paragraph
1028
+ style:
1029
+ color: '#94a3b8'
1030
+ fontSize: 13px
1031
+ paddingLeft: 12px
1032
+ properties:
1033
+ content: 'styles.css'
1034
+ - id: editor_files_f5
1035
+ type: Paragraph
1036
+ style:
1037
+ color: '#e2e8f0'
1038
+ fontSize: 13px
1039
+ properties:
1040
+ content: 'package.json'
1041
+ editor_main:
1042
+ blocks:
1043
+ - id: editor_inner
1044
+ type: Splitter
1045
+ style:
1046
+ height: 100%
1047
+ properties:
1048
+ layout: vertical
1049
+ panels:
1050
+ - key: editor_code
1051
+ defaultSize: 65
1052
+ - key: editor_terminal
1053
+ defaultSize: 35
1054
+ min: 15
1055
+ collapsible: true
1056
+ slots:
1057
+ editor_code:
1058
+ blocks:
1059
+ - id: editor_code_box
1060
+ type: Box
1061
+ class: bg-bg-layout h-full p-4
1062
+ blocks:
1063
+ - id: editor_code_tab
1064
+ type: Paragraph
1065
+ style:
1066
+ color: '#64748b'
1067
+ fontSize: 12px
1068
+ borderBottom: 1px solid #334155
1069
+ paddingBottom: 8px
1070
+ properties:
1071
+ content: 'App.js'
1072
+ - id: editor_code_content
1073
+ type: Paragraph
1074
+ style:
1075
+ color: '#e2e8f0'
1076
+ fontFamily: monospace
1077
+ fontSize: 13px
1078
+ lineHeight: 1.6
1079
+ properties:
1080
+ content: '<span style="color:#c084fc">import</span> React <span style="color:#c084fc">from</span> <span style="color:#a5d6ff">"react"</span>;<br><br><span style="color:#c084fc">function</span> <span style="color:#67e8f9">App</span>() {<br>&nbsp;&nbsp;<span style="color:#c084fc">return</span> (<br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;<span style="color:#67e8f9">div</span> <span style="color:#79c0ff">className</span>=<span style="color:#a5d6ff">"app"</span>&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;<span style="color:#67e8f9">h1</span>&gt;Hello World&lt;/<span style="color:#67e8f9">h1</span>&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&lt;/<span style="color:#67e8f9">div</span>&gt;<br>&nbsp;&nbsp;);<br>}'
1081
+ editor_terminal:
1082
+ blocks:
1083
+ - id: editor_terminal_box
1084
+ type: Box
1085
+ class: bg-bg-layout h-full p-3
1086
+ blocks:
1087
+ - id: editor_terminal_title
1088
+ type: Paragraph
1089
+ style:
1090
+ color: '#64748b'
1091
+ fontSize: 11px
1092
+ textTransform: uppercase
1093
+ letterSpacing: 1px
1094
+ borderBottom: 1px solid #1e293b
1095
+ paddingBottom: 6px
1096
+ properties:
1097
+ content: Terminal
1098
+ - id: editor_terminal_line
1099
+ type: Paragraph
1100
+ style:
1101
+ color: '#22c55e'
1102
+ fontFamily: monospace
1103
+ fontSize: 13px
1104
+ properties:
1105
+ content: '$ npm start'
1106
+ - id: editor_terminal_output
1107
+ type: Paragraph
1108
+ style:
1109
+ color: '#94a3b8'
1110
+ fontFamily: monospace
1111
+ fontSize: 13px
1112
+ properties:
1113
+ content: 'Compiled successfully!'
1114
+
1115
+ - title: Dashboard with Sidebar and Detail Panels
1116
+ blocks:
1117
+ - id: dashboard_outer
1118
+ type: Splitter
1119
+ style:
1120
+ height: 400px
1121
+ border: 1px solid #e8e8e8
1122
+ borderRadius: 8px
1123
+ properties:
1124
+ layout: horizontal
1125
+ panels:
1126
+ - key: dash_nav
1127
+ defaultSize: 22
1128
+ min: 15
1129
+ max: 35
1130
+ collapsible: true
1131
+ - key: dash_content
1132
+ defaultSize: 50
1133
+ - key: dash_detail
1134
+ defaultSize: 28
1135
+ min: 20
1136
+ collapsible: true
1137
+ events:
1138
+ onResizeEnd:
1139
+ - id: dash_resize_state
1140
+ type: SetState
1141
+ params:
1142
+ dashboard_layout:
1143
+ _event: sizes
1144
+ slots:
1145
+ dash_nav:
1146
+ blocks:
1147
+ - id: dash_nav_box
1148
+ type: Box
1149
+ class: bg-bg-layout h-full p-0
1150
+ blocks:
1151
+ - id: dash_nav_card
1152
+ type: Card
1153
+ properties:
1154
+ title: Navigation
1155
+ size: small
1156
+ bordered: false
1157
+ blocks:
1158
+ - id: dash_nav_item1
1159
+ type: Button
1160
+ properties:
1161
+ title: Overview
1162
+ icon: AiOutlineDashboard
1163
+ variant: text
1164
+ block: true
1165
+ - id: dash_nav_item2
1166
+ type: Button
1167
+ properties:
1168
+ title: Analytics
1169
+ icon: AiOutlineBarChart
1170
+ variant: text
1171
+ block: true
1172
+ - id: dash_nav_item3
1173
+ type: Button
1174
+ properties:
1175
+ title: Users
1176
+ icon: AiOutlineTeam
1177
+ variant: text
1178
+ block: true
1179
+ - id: dash_nav_item4
1180
+ type: Button
1181
+ properties:
1182
+ title: Settings
1183
+ icon: AiOutlineSetting
1184
+ variant: text
1185
+ block: true
1186
+ dash_content:
1187
+ blocks:
1188
+ - id: dash_content_box
1189
+ type: Box
1190
+ class: h-full p-4
1191
+ blocks:
1192
+ - id: dash_content_title
1193
+ type: Title
1194
+ properties:
1195
+ content: Overview
1196
+ level: 4
1197
+ - id: dash_stats_row
1198
+ type: Box
1199
+ layout:
1200
+ gap: 16
1201
+ blocks:
1202
+ - id: dash_stat_users
1203
+ type: Card
1204
+ layout:
1205
+ flex: 1 1 0
1206
+ properties:
1207
+ size: small
1208
+ blocks:
1209
+ - id: dash_stat_users_val
1210
+ type: Statistic
1211
+ properties:
1212
+ title: Total Users
1213
+ value: 2846
1214
+ - id: dash_stat_revenue
1215
+ type: Card
1216
+ layout:
1217
+ flex: 1 1 0
1218
+ properties:
1219
+ size: small
1220
+ blocks:
1221
+ - id: dash_stat_revenue_val
1222
+ type: Statistic
1223
+ properties:
1224
+ title: Revenue
1225
+ value: 48200
1226
+ prefix: $
1227
+ - id: dash_progress_card
1228
+ type: Card
1229
+ properties:
1230
+ title: Monthly Target
1231
+ size: small
1232
+ blocks:
1233
+ - id: dash_progress_bar
1234
+ type: Progress
1235
+ properties:
1236
+ percent: 72
1237
+ dash_detail:
1238
+ blocks:
1239
+ - id: dash_detail_box
1240
+ type: Box
1241
+ class: bg-bg-layout h-full p-0
1242
+ blocks:
1243
+ - id: dash_detail_card
1244
+ type: Card
1245
+ properties:
1246
+ title: Recent Activity
1247
+ size: small
1248
+ bordered: false
1249
+ blocks:
1250
+ - id: dash_detail_item1
1251
+ type: Paragraph
1252
+ properties:
1253
+ content: '<b>Sarah</b> updated the project plan <i>2 min ago</i>'
1254
+ - id: dash_detail_divider1
1255
+ type: Divider
1256
+ - id: dash_detail_item2
1257
+ type: Paragraph
1258
+ properties:
1259
+ content: '<b>James</b> added 3 team members <i>15 min ago</i>'
1260
+ - id: dash_detail_divider2
1261
+ type: Divider
1262
+ - id: dash_detail_item3
1263
+ type: Paragraph
1264
+ properties:
1265
+ content: '<b>System</b> completed deployment <i>1 hour ago</i>'
1266
+ - id: dash_detail_divider3
1267
+ type: Divider
1268
+ - id: dash_detail_item4
1269
+ type: Paragraph
1270
+ properties:
1271
+ content: '<b>Alex</b> resolved 5 support tickets <i>3 hours ago</i>'
1272
+
1273
+ - title: Email Client Layout
1274
+ blocks:
1275
+ - id: email_outer
1276
+ type: Splitter
1277
+ class:
1278
+ element: rounded-lg shadow-md overflow-hidden
1279
+ style:
1280
+ height: 420px
1281
+ properties:
1282
+ layout: horizontal
1283
+ panels:
1284
+ - key: email_folders
1285
+ defaultSize: 20
1286
+ min: 15
1287
+ collapsible: true
1288
+ - key: email_list
1289
+ defaultSize: 35
1290
+ min: 25
1291
+ - key: email_preview
1292
+ defaultSize: 45
1293
+ events:
1294
+ onCollapse:
1295
+ - id: email_collapse_action
1296
+ type: DisplayMessage
1297
+ params:
1298
+ content:
1299
+ _if:
1300
+ test:
1301
+ _event: collapsed
1302
+ then: Folder panel collapsed. Click the arrow to expand.
1303
+ else: Folder panel expanded.
1304
+ duration: 2
1305
+ slots:
1306
+ email_folders:
1307
+ blocks:
1308
+ - id: email_folders_box
1309
+ type: Box
1310
+ class: bg-bg-layout h-full p-3
1311
+ blocks:
1312
+ - id: email_folders_title
1313
+ type: Paragraph
1314
+ style:
1315
+ fontWeight: 600
1316
+ fontSize: 13px
1317
+ color: '#64748b'
1318
+ textTransform: uppercase
1319
+ letterSpacing: 0.5px
1320
+ properties:
1321
+ content: Folders
1322
+ - id: email_folder_inbox
1323
+ type: Button
1324
+ properties:
1325
+ title: Inbox (12)
1326
+ icon: AiOutlineInbox
1327
+ variant: text
1328
+ block: true
1329
+ size: small
1330
+ - id: email_folder_sent
1331
+ type: Button
1332
+ properties:
1333
+ title: Sent
1334
+ icon: AiOutlineSend
1335
+ variant: text
1336
+ block: true
1337
+ size: small
1338
+ - id: email_folder_drafts
1339
+ type: Button
1340
+ properties:
1341
+ title: Drafts (3)
1342
+ icon: AiOutlineEdit
1343
+ variant: text
1344
+ block: true
1345
+ size: small
1346
+ - id: email_folder_trash
1347
+ type: Button
1348
+ properties:
1349
+ title: Trash
1350
+ icon: AiOutlineDelete
1351
+ variant: text
1352
+ block: true
1353
+ size: small
1354
+ email_list:
1355
+ blocks:
1356
+ - id: email_list_box
1357
+ type: Box
1358
+ class: h-full p-0
1359
+ blocks:
1360
+ - id: email_list_header
1361
+ type: Box
1362
+ class: px-3 py-2 border-b border-border
1363
+ blocks:
1364
+ - id: email_list_search
1365
+ type: Paragraph
1366
+ style:
1367
+ color: '#94a3b8'
1368
+ fontSize: 13px
1369
+ properties:
1370
+ content: 'Inbox - 12 messages'
1371
+ - id: email_msg1
1372
+ type: Box
1373
+ class: px-3 py-2 border-b border-border bg-bg-layout
1374
+ blocks:
1375
+ - id: email_msg1_from
1376
+ type: Paragraph
1377
+ style:
1378
+ fontWeight: 600
1379
+ fontSize: 13px
1380
+ properties:
1381
+ content: Alice Johnson
1382
+ - id: email_msg1_subject
1383
+ type: Paragraph
1384
+ style:
1385
+ fontSize: 13px
1386
+ properties:
1387
+ content: 'Q4 Planning Meeting Notes'
1388
+ - id: email_msg1_time
1389
+ type: Paragraph
1390
+ style:
1391
+ fontSize: 11px
1392
+ color: '#94a3b8'
1393
+ properties:
1394
+ content: 10:30 AM
1395
+ - id: email_msg2
1396
+ type: Box
1397
+ class: px-3 py-2 border-b border-border
1398
+ blocks:
1399
+ - id: email_msg2_from
1400
+ type: Paragraph
1401
+ style:
1402
+ fontWeight: 600
1403
+ fontSize: 13px
1404
+ properties:
1405
+ content: Bob Williams
1406
+ - id: email_msg2_subject
1407
+ type: Paragraph
1408
+ style:
1409
+ fontSize: 13px
1410
+ properties:
1411
+ content: 'Design review feedback'
1412
+ - id: email_msg2_time
1413
+ type: Paragraph
1414
+ style:
1415
+ fontSize: 11px
1416
+ color: '#94a3b8'
1417
+ properties:
1418
+ content: 9:15 AM
1419
+ - id: email_msg3
1420
+ type: Box
1421
+ class: px-3 py-2 border-b border-border
1422
+ blocks:
1423
+ - id: email_msg3_from
1424
+ type: Paragraph
1425
+ style:
1426
+ fontSize: 13px
1427
+ properties:
1428
+ content: Carol Davis
1429
+ - id: email_msg3_subject
1430
+ type: Paragraph
1431
+ style:
1432
+ fontSize: 13px
1433
+ properties:
1434
+ content: 'Updated project timeline'
1435
+ - id: email_msg3_time
1436
+ type: Paragraph
1437
+ style:
1438
+ fontSize: 11px
1439
+ color: '#94a3b8'
1440
+ properties:
1441
+ content: Yesterday
1442
+ email_preview:
1443
+ blocks:
1444
+ - id: email_preview_box
1445
+ type: Box
1446
+ class: h-full p-4
1447
+ blocks:
1448
+ - id: email_preview_subject
1449
+ type: Title
1450
+ properties:
1451
+ content: Q4 Planning Meeting Notes
1452
+ level: 4
1453
+ - id: email_preview_meta
1454
+ type: Box
1455
+ layout:
1456
+ gap: 8
1457
+ align: center
1458
+ blocks:
1459
+ - id: email_preview_avatar
1460
+ type: Avatar
1461
+ layout:
1462
+ flex: 0 0 auto
1463
+ properties:
1464
+ icon: AiOutlineUser
1465
+ size: 32
1466
+ color: '#fff'
1467
+ backgroundColor: '#1677ff'
1468
+ - id: email_preview_sender
1469
+ type: Box
1470
+ layout:
1471
+ flex: 1 1 0
1472
+ blocks:
1473
+ - id: email_preview_from
1474
+ type: Paragraph
1475
+ style:
1476
+ fontWeight: 600
1477
+ fontSize: 14px
1478
+ properties:
1479
+ content: Alice Johnson
1480
+ - id: email_preview_date
1481
+ type: Paragraph
1482
+ style:
1483
+ fontSize: 12px
1484
+ color: '#94a3b8'
1485
+ properties:
1486
+ content: 'March 13, 2026 at 10:30 AM'
1487
+ - id: email_preview_divider
1488
+ type: Divider
1489
+ - id: email_preview_body
1490
+ type: Paragraph
1491
+ properties:
1492
+ content: 'Hi team, here are the key takeaways from our Q4 planning meeting yesterday. We agreed on the following priorities: launching the new dashboard feature, improving API performance by 30%, and completing the migration to the new design system.'
1493
+ - id: email_preview_body2
1494
+ type: Paragraph
1495
+ properties:
1496
+ content: 'Please review the attached document and share any feedback by end of week. Our next sync is scheduled for Monday at 2 PM.'
1497
+ - id: email_preview_tags
1498
+ type: Box
1499
+ layout:
1500
+ gap: 8
1501
+ blocks:
1502
+ - id: email_preview_tag1
1503
+ type: Tag
1504
+ properties:
1505
+ title: Planning
1506
+ color: blue
1507
+ - id: email_preview_tag2
1508
+ type: Tag
1509
+ properties:
1510
+ title: Q4
1511
+ color: purple