plain-design 1.0.0-beta.34 → 1.0.0-beta.35

Sign up to get free protection for your applications and to get access to all the features.
Files changed (168) hide show
  1. package/package.json +3 -2
  2. package/src/pages/data/address.json +0 -39317
  3. package/src/pages/data/data-1.json +0 -754
  4. package/src/pages/data/data-2.json +0 -3006
  5. package/src/pages/data/data-200.json +0 -5206
  6. package/src/pages/data/data-2000.json +0 -51954
  7. package/src/pages/data/data-50.json +0 -2075
  8. package/src/pages/data/data.json +0 -30002
  9. package/src/pages/data/demo.json +0 -1702
  10. package/src/pages/data/mock.database.js +0 -43
  11. package/src/pages/data/mock.js +0 -141
  12. package/src/pages/data/tree.data.json +0 -87
  13. package/src/pages/env/config/local.js +0 -3
  14. package/src/pages/env/config/prod.js +0 -3
  15. package/src/pages/env/config/undefined.js +0 -1
  16. package/src/pages/env/env.d.ts +0 -4
  17. package/src/pages/env/index.ts +0 -1
  18. package/src/pages/history/createHistory.ts +0 -94
  19. package/src/pages/history/history.utils.ts +0 -64
  20. package/src/pages/index/App.tsx +0 -17
  21. package/src/pages/index/Demo/DemoLine.tsx +0 -23
  22. package/src/pages/index/Demo/DemoRow.scss +0 -131
  23. package/src/pages/index/Demo/DemoRow.tsx +0 -71
  24. package/src/pages/index/Demo/DemoRow.utils.ts +0 -23
  25. package/src/pages/index/Demo/DemoRowController.tsx +0 -45
  26. package/src/pages/index/Demo/index.ts +0 -8
  27. package/src/pages/index/app.scss +0 -197
  28. package/src/pages/index/components/AutoTable/AutoHeightAutoRow.tsx +0 -56
  29. package/src/pages/index/components/AutoTable/AutoHeightFixedRow.tsx +0 -50
  30. package/src/pages/index/components/AutoTable/AutoTableBasicUsage.tsx +0 -75
  31. package/src/pages/index/components/AutoTable/AutoTableCascade.tsx +0 -99
  32. package/src/pages/index/components/AutoTable/AutoTableDefaultSearch.tsx +0 -73
  33. package/src/pages/index/components/AutoTable/AutoTableFiles.tsx +0 -26
  34. package/src/pages/index/components/AutoTable/AutoTableFill.tsx +0 -51
  35. package/src/pages/index/components/AutoTable/AutoTableGroupUsage.tsx +0 -71
  36. package/src/pages/index/components/AutoTable/AutoTableObjectPicker.tsx +0 -181
  37. package/src/pages/index/components/AutoTable/AutoTableOvList.tsx +0 -80
  38. package/src/pages/index/components/AutoTable/AutoTableProductList.tsx +0 -98
  39. package/src/pages/index/components/AutoTable/AutoTableRowFormatter.tsx +0 -58
  40. package/src/pages/index/components/AutoTable/FixedHeightAutoRow.tsx +0 -50
  41. package/src/pages/index/components/AutoTable/FixedHeightFixedRow.tsx +0 -49
  42. package/src/pages/index/components/bus/DemoAddress.tsx +0 -181
  43. package/src/pages/index/components/bus/DemoAddressCascade.tsx +0 -132
  44. package/src/pages/index/components/bus/DemoFilter.tsx +0 -184
  45. package/src/pages/index/components/columns/DemoPlcAddress.tsx +0 -161
  46. package/src/pages/index/components/columns/DemoPlcDate.tsx +0 -363
  47. package/src/pages/index/components/columns/DemoPlcSelect.tsx +0 -505
  48. package/src/pages/index/components/columns/DemoPlcTime.tsx +0 -293
  49. package/src/pages/index/components/columns/DemoTableColumns.tsx +0 -88
  50. package/src/pages/index/components/form/DemoFormBasic.tsx +0 -516
  51. package/src/pages/index/components/form/DemoFormBlur.tsx +0 -204
  52. package/src/pages/index/components/form/DemoFormDynamicFields.tsx +0 -54
  53. package/src/pages/index/components/form/DemoFormEditControl.tsx +0 -164
  54. package/src/pages/index/components/form/DemoFormElement.tsx +0 -207
  55. package/src/pages/index/components/form/DemoFormLayout.scss +0 -7
  56. package/src/pages/index/components/form/DemoFormLayout.tsx +0 -311
  57. package/src/pages/index/components/form/DemoFormSimplify.tsx +0 -587
  58. package/src/pages/index/components/form/DemoFormSize.tsx +0 -274
  59. package/src/pages/index/components/form/DemoFormVertical.tsx +0 -280
  60. package/src/pages/index/components/normal/DemoAlert.tsx +0 -66
  61. package/src/pages/index/components/normal/DemoBadge.tsx +0 -53
  62. package/src/pages/index/components/normal/DemoButton.tsx +0 -300
  63. package/src/pages/index/components/normal/DemoCard.tsx +0 -176
  64. package/src/pages/index/components/normal/DemoCarousel.tsx +0 -230
  65. package/src/pages/index/components/normal/DemoCascade.tsx +0 -880
  66. package/src/pages/index/components/normal/DemoCheckbox.scss +0 -24
  67. package/src/pages/index/components/normal/DemoCheckbox.tsx +0 -294
  68. package/src/pages/index/components/normal/DemoCollapse.tsx +0 -104
  69. package/src/pages/index/components/normal/DemoColor.scss +0 -20
  70. package/src/pages/index/components/normal/DemoColor.tsx +0 -82
  71. package/src/pages/index/components/normal/DemoColorPicker.tsx +0 -163
  72. package/src/pages/index/components/normal/DemoDate.tsx +0 -443
  73. package/src/pages/index/components/normal/DemoDialog.tsx +0 -507
  74. package/src/pages/index/components/normal/DemoDropdown.tsx +0 -464
  75. package/src/pages/index/components/normal/DemoGrid.scss +0 -26
  76. package/src/pages/index/components/normal/DemoGrid.tsx +0 -181
  77. package/src/pages/index/components/normal/DemoIcon.tsx +0 -39
  78. package/src/pages/index/components/normal/DemoImage.tsx +0 -122
  79. package/src/pages/index/components/normal/DemoInput.scss +0 -0
  80. package/src/pages/index/components/normal/DemoInput.tsx +0 -790
  81. package/src/pages/index/components/normal/DemoKeepAlive.tsx +0 -505
  82. package/src/pages/index/components/normal/DemoLayout.tsx +0 -144
  83. package/src/pages/index/components/normal/DemoList.scss +0 -15
  84. package/src/pages/index/components/normal/DemoList.tsx +0 -82
  85. package/src/pages/index/components/normal/DemoLoading.tsx +0 -86
  86. package/src/pages/index/components/normal/DemoNumber.tsx +0 -269
  87. package/src/pages/index/components/normal/DemoPagination.tsx +0 -164
  88. package/src/pages/index/components/normal/DemoPopup.tsx +0 -695
  89. package/src/pages/index/components/normal/DemoProgress.tsx +0 -133
  90. package/src/pages/index/components/normal/DemoRadio.scss +0 -16
  91. package/src/pages/index/components/normal/DemoRadio.tsx +0 -188
  92. package/src/pages/index/components/normal/DemoRate.tsx +0 -77
  93. package/src/pages/index/components/normal/DemoScroll.scss +0 -22
  94. package/src/pages/index/components/normal/DemoScroll.tsx +0 -300
  95. package/src/pages/index/components/normal/DemoSegment.tsx +0 -71
  96. package/src/pages/index/components/normal/DemoSelect.tsx +0 -819
  97. package/src/pages/index/components/normal/DemoSlider.tsx +0 -128
  98. package/src/pages/index/components/normal/DemoSortList.tsx +0 -70
  99. package/src/pages/index/components/normal/DemoStackCard.tsx +0 -356
  100. package/src/pages/index/components/normal/DemoStep.scss +0 -18
  101. package/src/pages/index/components/normal/DemoStep.tsx +0 -291
  102. package/src/pages/index/components/normal/DemoTab.tsx +0 -338
  103. package/src/pages/index/components/normal/DemoTag.tsx +0 -100
  104. package/src/pages/index/components/normal/DemoTime.tsx +0 -403
  105. package/src/pages/index/components/normal/DemoToggle.tsx +0 -56
  106. package/src/pages/index/components/normal/DemoTooltip.tsx +0 -120
  107. package/src/pages/index/components/normal/DemoTree.tsx +0 -1183
  108. package/src/pages/index/components/normal/DemoUpload.tsx +0 -484
  109. package/src/pages/index/components/normal/DemoVirtualList.tsx +0 -464
  110. package/src/pages/index/components/service/DemoDialogService.tsx +0 -249
  111. package/src/pages/index/components/service/DemoFileService.tsx +0 -110
  112. package/src/pages/index/components/service/DemoImagePreviewer.tsx +0 -185
  113. package/src/pages/index/components/service/DemoMessageService.tsx +0 -100
  114. package/src/pages/index/components/service/DemoNoticeService.tsx +0 -99
  115. package/src/pages/index/components/service/DemoPopupService.tsx +0 -325
  116. package/src/pages/index/components/table/DemoPlcOperation.tsx +0 -307
  117. package/src/pages/index/components/table/DemoTableBasic.tsx +0 -220
  118. package/src/pages/index/components/table/DemoTableCheck.tsx +0 -78
  119. package/src/pages/index/components/table/DemoTableClassAndStyle.scss +0 -18
  120. package/src/pages/index/components/table/DemoTableClassAndStyle.tsx +0 -112
  121. package/src/pages/index/components/table/DemoTableColDraggable.tsx +0 -80
  122. package/src/pages/index/components/table/DemoTableEdit.tsx +0 -136
  123. package/src/pages/index/components/table/DemoTableExpand.tsx +0 -203
  124. package/src/pages/index/components/table/DemoTableFixed.tsx +0 -131
  125. package/src/pages/index/components/table/DemoTableFormatter.tsx +0 -66
  126. package/src/pages/index/components/table/DemoTableOverflowTooltip.tsx +0 -67
  127. package/src/pages/index/components/table/DemoTableRowDraggable.tsx +0 -106
  128. package/src/pages/index/components/table/DemoTableSlots.tsx +0 -153
  129. package/src/pages/index/components/table/DemoTableSpan.tsx +0 -167
  130. package/src/pages/index/components/table/DemoTableTree.tsx +0 -976
  131. package/src/pages/index/components/table/DemoVirtualTable.tsx +0 -274
  132. package/src/pages/index/components/test/DemoI18n.tsx +0 -27
  133. package/src/pages/index/components/test/DemoI18n2.jsx +0 -11
  134. package/src/pages/index/home/AppContent.tsx +0 -69
  135. package/src/pages/index/home/AppHead.tsx +0 -18
  136. package/src/pages/index/home/AppHome.tsx +0 -31
  137. package/src/pages/index/home/AppMenu.tsx +0 -38
  138. package/src/pages/index/home/menus.tsx +0 -220
  139. package/src/pages/index/home/plain-design.png +0 -0
  140. package/src/pages/index/main.tsx +0 -23
  141. package/src/pages/index/nav/$nav.ts +0 -41
  142. package/src/pages/index/pages.d.ts +0 -6
  143. package/src/pages/libs/iconfont-fontcls/demo.css +0 -539
  144. package/src/pages/libs/iconfont-fontcls/demo_index.html +0 -303
  145. package/src/pages/libs/iconfont-fontcls/iconfont.css +0 -35
  146. package/src/pages/libs/iconfont-fontcls/iconfont.js +0 -1
  147. package/src/pages/libs/iconfont-fontcls/iconfont.json +0 -44
  148. package/src/pages/libs/iconfont-fontcls/iconfont.ttf +0 -0
  149. package/src/pages/libs/iconfont-fontcls/iconfont.woff +0 -0
  150. package/src/pages/libs/iconfont-fontcls/iconfont.woff2 +0 -0
  151. package/src/pages/libs/iconfont-symbol/demo.css +0 -539
  152. package/src/pages/libs/iconfont-symbol/demo_index.html +0 -303
  153. package/src/pages/libs/iconfont-symbol/iconfont.css +0 -35
  154. package/src/pages/libs/iconfont-symbol/iconfont.js +0 -1
  155. package/src/pages/libs/iconfont-symbol/iconfont.json +0 -44
  156. package/src/pages/libs/iconfont-symbol/iconfont.ttf +0 -0
  157. package/src/pages/libs/iconfont-symbol/iconfont.woff +0 -0
  158. package/src/pages/libs/iconfont-symbol/iconfont.woff2 +0 -0
  159. package/src/pages/libs/install.iconfont-fontcls.tsx +0 -11
  160. package/src/pages/libs/install.iconfont-symbol.scss +0 -7
  161. package/src/pages/libs/install.iconfont-symbol.tsx +0 -14
  162. package/src/pages/module/address.ts +0 -27
  163. package/src/pages/module/http.ts +0 -24
  164. package/src/pages/module/index.ts +0 -19
  165. package/src/pages/module/object.ts +0 -5
  166. package/src/pages/module/ov.tsx +0 -13
  167. package/src/pages/module/upload.ts +0 -9
  168. package/src/pages/module/useTableOption.ts +0 -28
@@ -1,464 +0,0 @@
1
- import {designPage} from "plain-design-composition";
2
- import {DemoRow} from "../../Demo/DemoRow";
3
- import {$message, Button, ButtonGroup, Dropdown, DropdownGroup, DropdownOption, DropdownSeparator, Scroll, VirtualList} from "../../../../packages";
4
- import AddressData from '../../../data/address.json';
5
-
6
- export const demo1 = designPage(() => {
7
- return () => (
8
- <DemoRow title="基本用法">
9
- <Dropdown onSelect={(data) => $message('select ' + data.props.val)} sizeEqual>
10
- {{
11
- default: () => <Button label="Click to open dropdown"/>,
12
- popper: () => <>
13
- <DropdownOption label="选项一" val="tag-1" onClick={() => $message('click tag-1')}/>
14
- <DropdownOption label="选项二" val="tag-2" onClick={() => $message('click tag-2')}/>
15
- <DropdownSeparator/>
16
- <DropdownOption label="选项三" val="tag-3" onClick={() => $message('click tag-3')}/>
17
- </>
18
- }}
19
- </Dropdown>
20
-
21
- <ButtonGroup style={{ display: 'inline-flex' }}>
22
- <Button label="Export"/>
23
- <Dropdown placement="bottom-end">
24
- {{
25
- default: () => <Button icon="pi-down"/>,
26
- popper: () => <>
27
- <DropdownOption label="export jpg" onClick={() => $message('click tag-1')}/>
28
- <DropdownOption label="export pdf" onClick={() => $message('click tag-2')}/>
29
- <DropdownOption label="export source file" onClick={() => $message('click tag-3')}/>
30
- </>
31
- }}
32
- </Dropdown>
33
- </ButtonGroup>
34
- </DemoRow>
35
- );
36
- });
37
-
38
-
39
- export const demo2 = designPage(() => {
40
- return () => (
41
- <DemoRow title="选项内容对其">
42
- <Dropdown align="start">
43
- {{
44
- default: () => <Button label="Start"/>,
45
- popper: () => <>
46
- <DropdownOption label="hello" val="tag-1"/>
47
- <DropdownOption label="hello world" val="tag-2"/>
48
- <DropdownOption label="hello world, guys" val="tag-3"/>
49
- </>
50
- }}
51
- </Dropdown>
52
-
53
- <Dropdown align="center" placement="bottom-center">
54
- {{
55
- default: () => <Button label="Center"/>,
56
- popper: () => <>
57
- <DropdownOption label="hello" val="tag-1"/>
58
- <DropdownOption label="hello world" val="tag-2"/>
59
- <DropdownOption label="hello world, guys" val="tag-3"/>
60
- </>
61
- }}
62
- </Dropdown>
63
-
64
- <Dropdown align="end" placement="bottom-end">
65
- {{
66
- default: () => <Button label="End"/>,
67
- popper: () => <>
68
- <DropdownOption label="hello" val="tag-1"/>
69
- <DropdownOption label="hello world" val="tag-2"/>
70
- <DropdownOption label="hello world, guys" val="tag-3"/>
71
- </>
72
- }}
73
- </Dropdown>
74
-
75
- </DemoRow>
76
- );
77
- });
78
-
79
- export const demo3 = designPage(() => {
80
- return () => (
81
- <DemoRow title="插槽">
82
- <Dropdown align="start">
83
- {{
84
- default: () => <Button label="Start"/>,
85
- popper: () => <>
86
- <DropdownOption val="tag-1">
87
- <div>1. hello</div>
88
- </DropdownOption>
89
- <DropdownOption val="tag-2">
90
- <div>2. hello world</div>
91
- </DropdownOption>
92
- <DropdownOption val="tag-3">
93
- <div>3. hello world, guys</div>
94
- </DropdownOption>
95
- </>
96
- }}
97
- </Dropdown>
98
- </DemoRow>
99
- );
100
- });
101
-
102
-
103
- export const demo4 = designPage(() => {
104
- return () => (
105
- <DemoRow title="滚动条">
106
- <p>超过6个选项时会自动启用滚动条</p>
107
- <Dropdown align="start">
108
- {{
109
- default: () => <Button label="Start"/>,
110
- popper: () => <>
111
- <DropdownOption>
112
- <div>1. hello</div>
113
- </DropdownOption>
114
- <DropdownOption>
115
- <div>2. hello world</div>
116
- </DropdownOption>
117
- <DropdownOption>
118
- <div>3. hello world, guys</div>
119
- </DropdownOption>
120
- <DropdownOption>
121
- <div>4. hello</div>
122
- </DropdownOption>
123
- <DropdownOption>
124
- <div>5. hello world, guys</div>
125
- </DropdownOption>
126
- <DropdownOption>
127
- <div>6. hello world, guys</div>
128
- </DropdownOption>
129
- <DropdownOption>
130
- <div>7. hello world, guys</div>
131
- </DropdownOption>
132
- <DropdownOption>
133
- <div>8. hello</div>
134
- </DropdownOption>
135
- <DropdownOption>
136
- <div>9. hello world</div>
137
- </DropdownOption>
138
- <DropdownOption>
139
- <div>10. hello world, guys</div>
140
- </DropdownOption>
141
- </>
142
- }}
143
- </Dropdown>
144
- </DemoRow>
145
- );
146
- });
147
-
148
-
149
- export const demo6 = designPage(() => {
150
- return () => (
151
- <DemoRow title="大小尺寸">
152
- <Dropdown size="mini">
153
- {{
154
- default: () => <Button label="Mini" size="mini"/>,
155
- popper: () => <>
156
- <DropdownOption val="tag-1">
157
- <div>1. hello</div>
158
- </DropdownOption>
159
- <DropdownOption val="tag-2">
160
- <div>2. hello world</div>
161
- </DropdownOption>
162
- <DropdownOption val="tag-3">
163
- <div>3. hello world, guys</div>
164
- </DropdownOption>
165
- </>
166
- }}
167
- </Dropdown>
168
-
169
- <Dropdown align="start" size="small">
170
- {{
171
- default: () => <Button label="Small" size="small"/>,
172
- popper: () => <>
173
- <DropdownOption val="tag-1">
174
- <div>1. hello</div>
175
- </DropdownOption>
176
- <DropdownOption val="tag-2">
177
- <div>2. hello world</div>
178
- </DropdownOption>
179
- <DropdownOption val="tag-3">
180
- <div>3. hello world, guys</div>
181
- </DropdownOption>
182
- </>
183
- }}
184
- </Dropdown>
185
- <Dropdown align="start" size="normal">
186
- {{
187
- default: () => <Button label="Normal" size="normal"/>,
188
- popper: () => <>
189
- <DropdownOption val="tag-1">
190
- <div>1. hello</div>
191
- </DropdownOption>
192
- <DropdownOption val="tag-2">
193
- <div>2. hello world</div>
194
- </DropdownOption>
195
- <DropdownOption val="tag-3">
196
- <div>3. hello world, guys</div>
197
- </DropdownOption>
198
- </>
199
- }}
200
- </Dropdown>
201
- <Dropdown align="start" size="large">
202
- {{
203
- default: () => <Button label="Large" size="large"/>,
204
- popper: () => <>
205
- <DropdownOption val="tag-1">
206
- <div>1. hello</div>
207
- </DropdownOption>
208
- <DropdownOption val="tag-2">
209
- <div>2. hello world</div>
210
- </DropdownOption>
211
- <DropdownOption val="tag-3">
212
- <div>3. hello world, guys</div>
213
- </DropdownOption>
214
- </>
215
- }}
216
- </Dropdown>
217
- </DemoRow>
218
- );
219
- });
220
-
221
- export const demoIcons = designPage(() => {
222
- return () => (
223
- <DemoRow title="选项图标">
224
- <Dropdown>
225
- {{
226
- default: () => <Button label="option with icon"/>,
227
- popper: () => <>
228
- <DropdownOption icon="pi-alipay-circle">
229
- <div>支付宝</div>
230
- </DropdownOption>
231
- <DropdownOption icon="pi-wechatpay" disabled>
232
- <div>微信支付</div>
233
- </DropdownOption>
234
- <DropdownOption icon="pi-qq">
235
- <div>财付通</div>
236
- </DropdownOption>
237
- </>
238
- }}
239
- </Dropdown>
240
- </DemoRow>
241
- );
242
- });
243
-
244
- export const demoDisabled = designPage(() => {
245
- return () => (
246
- <DemoRow title="禁用选项">
247
- <Dropdown>
248
- {{
249
- default: () => <Button label="disable option"/>,
250
- popper: () => <>
251
- <DropdownOption val="tag-1">
252
- <div>1. hello</div>
253
- </DropdownOption>
254
- <DropdownOption val="tag-2" disabled>
255
- <div>2. hello world</div>
256
- </DropdownOption>
257
- <DropdownOption val="tag-3">
258
- <div>3. hello world, guys</div>
259
- </DropdownOption>
260
- </>
261
- }}
262
- </Dropdown>
263
- </DemoRow>
264
- );
265
- });
266
-
267
- export const demoGroups = designPage(() => {
268
- return () => (
269
- <DemoRow title="选项分组">
270
- <Dropdown>
271
- {{
272
- default: () => <Button label="group option"/>,
273
- popper: () => <>
274
- <DropdownGroup title="分组一"/>
275
- <DropdownOption label="选项1"/>
276
- <DropdownGroup title="分组二"/>
277
- <DropdownOption label="选项2-1" disabled/>
278
- <DropdownOption label="选项2-2"/>
279
- <DropdownGroup title="分组三"/>
280
- <DropdownOption label="选项3-1"/>
281
- <DropdownOption label="选项3-2"/>
282
- <DropdownOption label="选项3-3"/>
283
- </>
284
- }}
285
- </Dropdown>
286
- </DemoRow>
287
- );
288
- });
289
-
290
-
291
- export const demoIndicateIcon = designPage(() => {
292
- return () => (
293
- <DemoRow title="指示图标">
294
- <ButtonGroup>
295
- <Button label="Button(hover)"/>
296
- <Dropdown placement="bottom-end" trigger="hover">
297
- {{
298
- reference: ({ open }: { open?: boolean }) => <Button icon={open ? 'pi-up' : 'pi-down'}/>,
299
- popper: () => <>
300
- <DropdownOption label="hello"/>
301
- <DropdownOption label="hello world"/>
302
- <DropdownOption label="hello world, guys"/>
303
- </>
304
- }}
305
- </Dropdown>
306
- </ButtonGroup>
307
- </DemoRow>
308
- );
309
- });
310
-
311
-
312
- export const demoCascade = designPage(() => {
313
-
314
- const renderCascadeDropdownOption = (item: { name: string, id: string, children?: any[] }) => {
315
- const slots = !item.children ? {} : { content: () => item.children!.map(child => renderCascadeDropdownOption(child)) };
316
- return (
317
- <DropdownOption label={item.name} key={item.id} onClick={() => $message(item.name)}>
318
- {slots}
319
- </DropdownOption>
320
- );
321
- };
322
-
323
- return () => (
324
- <DemoRow title="级联选项">
325
- <Dropdown>
326
- {{
327
- default: () => <Button label="Reference"/>,
328
- popper: () => <>
329
- <DropdownOption onClick={() => $message('option-1')} label="option-1"/>
330
- <DropdownOption onClick={() => $message('option-2')}>
331
- {{
332
- default: () => "option-2",
333
- content: () => <>
334
- <DropdownOption onClick={() => $message('option-4')} label="option-4"/>
335
- <DropdownOption onClick={() => $message('option-5')}>
336
- {{
337
- default: () => "option-5",
338
- content: () => <>
339
- <DropdownOption onClick={() => $message('option-7')} label="option-7"/>
340
- <DropdownOption onClick={() => $message('option-8')} label="option-8"/>
341
- </>
342
- }}
343
- </DropdownOption>
344
- <DropdownOption onClick={() => $message('option-6')} label="option-6"/>
345
- </>,
346
- }}
347
- </DropdownOption>
348
- <DropdownOption onClick={() => $message('option-3')} label="option-3">
349
- {{
350
- content: () => <>
351
- <DropdownOption onClick={() => $message('option-9')} label="option-9"/>
352
- </>
353
- }}
354
- </DropdownOption>
355
- </>
356
- }}
357
- </Dropdown>
358
-
359
- <Dropdown>
360
- {{
361
- default: () => <Button label="pick address"/>,
362
- popper: () => <>
363
- {AddressData.map(item => (renderCascadeDropdownOption(item)))}
364
- </>
365
- }}
366
- </Dropdown>
367
-
368
- <Dropdown placement="bottom-end">
369
- {{
370
- default: () => <Button label="pick address(align end)"/>,
371
- popper: () => <>
372
- {AddressData.map(item => (renderCascadeDropdownOption(item)))}
373
- </>
374
- }}
375
- </Dropdown>
376
-
377
- <Dropdown trigger="hover">
378
- {{
379
- default: () => <Button label="pick address(hover trigger)"/>,
380
- popper: () => <>
381
- {AddressData.map(item => (renderCascadeDropdownOption(item)))}
382
- </>
383
- }}
384
- </Dropdown>
385
- </DemoRow>
386
- );
387
- });
388
-
389
-
390
- export const demoOptionWidth = designPage(() => {
391
- return () => (
392
- <DemoRow title="给每个option限制宽度">
393
- <Dropdown optionWidth="120px">
394
- {{
395
- reference: () => <Button label="Button"/>,
396
- popper: () => <>
397
- <DropdownOption label="hello"/>
398
- <DropdownOption label="hello world"/>
399
- <DropdownOption label="hello world, guys"/>
400
- </>
401
- }}
402
- </Dropdown>
403
- </DemoRow>
404
- );
405
- });
406
-
407
- export const demoDropdownScroll = designPage(() => {
408
- return () => (
409
- <DemoRow title="如果手动渲染了Scroll组件,则不会自动加上Scroll组件">
410
- <Dropdown>
411
- {{
412
- reference: () => <Button label="Button"/>,
413
- popper: () => <>
414
- <div style={{ width: '200px', height: '200px' }}>
415
- <Scroll>
416
- <DropdownOption label="hello"/>
417
- <DropdownOption label="hello world"/>
418
- <DropdownOption label="hello world, guys"/>
419
- <DropdownOption label="hello world, guys"/>
420
- <DropdownOption label="hello world, guys"/>
421
- <DropdownOption label="hello world, guys"/>
422
- <DropdownOption label="hello world, guys"/>
423
- <DropdownOption label="hello world, guys"/>
424
- </Scroll>
425
- </div>
426
- </>
427
- }}
428
- </Dropdown>
429
- </DemoRow>
430
- );
431
- });
432
-
433
-
434
- export const demoDropdownVirtualList = designPage(() => {
435
-
436
- const options = new Array(1000).fill({});
437
-
438
- return () => (
439
- <DemoRow title="虚拟滚动,长列表">
440
- <Dropdown>
441
- {{
442
- reference: () => <Button label="Button"/>,
443
- popper: () => <>
444
- <div style={{ width: '120px', height: '200px' }}>
445
- <VirtualList data={options} size={32}>
446
- {{
447
- default: (data: any) => {
448
- return (
449
- <DropdownOption
450
- key={data.index}
451
- label={`option-${data.index}`}
452
- data-vid={data.index}
453
- onClick={() => $message(`option-${data.index}`)}
454
- />);
455
- }
456
- }}
457
- </VirtualList>
458
- </div>
459
- </>
460
- }}
461
- </Dropdown>
462
- </DemoRow>
463
- );
464
- });
@@ -1,26 +0,0 @@
1
- .demo-layout {
2
- .demo-row .demo-row-body > * {
3
- margin-right: 0 !important;
4
- }
5
-
6
- .ct-cls {
7
- background-color: plv('gray-2');
8
- height: 36px;
9
- display: flex;
10
- align-items: center;
11
- justify-content: center;
12
- }
13
-
14
- @include prefix(grid-row) {
15
-
16
- margin-bottom: 8px !important;
17
-
18
- @include prefix(grid-col) {
19
- &:nth-child(odd) {
20
- .ct-cls {
21
- background-color: plv('gray-3');
22
- }
23
- }
24
- }
25
- }
26
- }
@@ -1,181 +0,0 @@
1
- import './DemoGrid.scss';
2
- import {designPage} from "plain-design-composition";
3
- import {DemoRow} from "../../Demo/DemoRow";
4
- import {GridCol, GridRow} from "../../../../packages";
5
-
6
- export default designPage(() => {
7
-
8
- const xs = [4, 8, 12, 8];
9
- return () => (
10
- <div className={'demo-layout'}>
11
- <DemoRow title="基本用法,一共24格">
12
- <GridRow>
13
- <GridCol span="12">
14
- <div className="ct-cls">col-12</div>
15
- </GridCol>
16
- <GridCol span="12">
17
- <div className="ct-cls">col-12</div>
18
- </GridCol>
19
- </GridRow>
20
- <GridRow>
21
- <GridCol span="2">
22
- <div className="ct-cls">col-2</div>
23
- </GridCol>
24
- <GridCol span="4">
25
- <div className="ct-cls">col-4</div>
26
- </GridCol>
27
- <GridCol span="6">
28
- <div className="ct-cls">col-6</div>
29
- </GridCol>
30
- <GridCol span="8">
31
- <div className="ct-cls">col-8</div>
32
- </GridCol>
33
- <GridCol span="4">
34
- <div className="ct-cls">col-4</div>
35
- </GridCol>
36
- </GridRow>
37
- </DemoRow>
38
- <DemoRow title="列间隔gutter(单位px)">
39
- <GridRow gutter="8">
40
- <GridCol span="24">
41
- <div className="ct-cls">col-24</div>
42
- </GridCol>
43
- </GridRow>
44
- <GridRow gutter="8">
45
- <GridCol span="12">
46
- <div className="ct-cls">col-12</div>
47
- </GridCol>
48
- <GridCol span="12">
49
- <div className="ct-cls">col-12</div>
50
- </GridCol>
51
- </GridRow>
52
- <GridRow gutter="8">
53
- <GridCol span="2">
54
- <div className="ct-cls">col-2</div>
55
- </GridCol>
56
- <GridCol span="4">
57
- <div className="ct-cls">col-4</div>
58
- </GridCol>
59
- <GridCol span="6">
60
- <div className="ct-cls">col-6</div>
61
- </GridCol>
62
- <GridCol span="8">
63
- <div className="ct-cls">col-8</div>
64
- </GridCol>
65
- <GridCol span="4">
66
- <div className="ct-cls">col-4</div>
67
- </GridCol>
68
- </GridRow>
69
- </DemoRow>
70
-
71
- <DemoRow title="flex布局的栅格">
72
- <GridRow type="flex" align="middle">
73
- <GridCol span="2">
74
- <div className="ct-cls">col-2</div>
75
- </GridCol>
76
- <GridCol span="4">
77
- <div className="ct-cls" style={{ height: "48px" }}>col-4</div>
78
- </GridCol>
79
- <GridCol span="6">
80
- <div className="ct-cls" style={{ height: "56px" }}>col-6</div>
81
- </GridCol>
82
- <GridCol span="8">
83
- <div className="ct-cls" style={{ height: "48px" }}>col-8</div>
84
- </GridCol>
85
- <GridCol span="4">
86
- <div className="ct-cls" style={{ height: "36px" }}>col-4</div>
87
- </GridCol>
88
- </GridRow>
89
- <GridRow type="flex" justify="space-between">
90
- <GridCol span="2">
91
- <div className="ct-cls">col-2</div>
92
- </GridCol>
93
- <GridCol span="4">
94
- <div className="ct-cls" style={{ height: "48px" }}>col-4</div>
95
- </GridCol>
96
- <GridCol span="6">
97
- <div className="ct-cls" style={{ height: "56px" }}>col-6</div>
98
- </GridCol>
99
- <GridCol span="4">
100
- <div className="ct-cls">col-4</div>
101
- </GridCol>
102
- </GridRow>
103
- <GridRow type="flex" justify="start">
104
- <GridCol span="2">
105
- <div className="ct-cls">col-2</div>
106
- </GridCol>
107
- <GridCol span="4">
108
- <div className="ct-cls" style={{ height: "48px" }}>col-4</div>
109
- </GridCol>
110
- <GridCol span="6">
111
- <div className="ct-cls" style={{ height: "56px" }}>col-6</div>
112
- </GridCol>
113
- <GridCol span="4">
114
- <div className="ct-cls">col-4</div>
115
- </GridCol>
116
- </GridRow>
117
- <GridRow type="flex" align="bottom" justify="end">
118
- <GridCol span="2">
119
- <div className="ct-cls">col-2</div>
120
- </GridCol>
121
- <GridCol span="4">
122
- <div className="ct-cls" style={{ height: "48px" }}>col-4</div>
123
- </GridCol>
124
- <GridCol span="6">
125
- <div className="ct-cls" style={{ height: "56px" }}>col-6</div>
126
- </GridCol>
127
- <GridCol span="4">
128
- <div className="ct-cls">col-4</div>
129
- </GridCol>
130
- </GridRow>
131
- </DemoRow>
132
- <DemoRow title="当使用flex布局时,可以使用order属性排序">
133
- <GridRow type="flex" align="middle" gutter="8">
134
- <GridCol span="2" order="1">
135
- <div className="ct-cls">col-2</div>
136
- </GridCol>
137
- <GridCol span="4" order="2">
138
- <div className="ct-cls">col-4</div>
139
- </GridCol>
140
- <GridCol span="6" order="4">
141
- <div className="ct-cls">col-6</div>
142
- </GridCol>
143
- <GridCol span="8" order="3">
144
- <div className="ct-cls">col-8</div>
145
- </GridCol>
146
- <GridCol span="4" order="5">
147
- <div className="ct-cls">col-4</div>
148
- </GridCol>
149
- </GridRow>
150
- </DemoRow>
151
-
152
- <DemoRow title="当使用浮动布局时,可以使用pull以及push属性排序">
153
- <GridRow gutter="8">
154
- <GridCol span="2" push="10" xs={xs[0]}>
155
- <div className="ct-cls">col-2</div>
156
- </GridCol>
157
- <GridCol span="4" pull="2" xs={xs[1]}>
158
- <div className="ct-cls">col-4</div>
159
- </GridCol>
160
- <GridCol span="6" pull="2" xs={xs[2]}>
161
- <div className="ct-cls">col-6</div>
162
- </GridCol>
163
- </GridRow>
164
- </DemoRow>
165
-
166
- <DemoRow title="响应式布局,可以用chrome把客户端变成移动端模式,当为普通模式时,分别占2,4,6格,当为移动端时,分别占4,8,12格">
167
- <GridRow gutter="8">
168
- <GridCol span="2" xs={xs[0]}>
169
- <div className="ct-cls">col-2</div>
170
- </GridCol>
171
- <GridCol span="4" xs={xs[1]}>
172
- <div className="ct-cls">col-4</div>
173
- </GridCol>
174
- <GridCol span="6" xs={xs[2]}>
175
- <div className="ct-cls">col-6</div>
176
- </GridCol>
177
- </GridRow>
178
- </DemoRow>
179
- </div>
180
- );
181
- });