@a2simcode/ui 0.0.188 → 0.0.189

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 (351) hide show
  1. package/.cursor/skills/ui-component-helper/README.md +86 -86
  2. package/.cursor/skills/ui-component-helper/SKILL.md +115 -115
  3. package/LICENSE +53 -53
  4. package/README.md +156 -156
  5. package/dist/components/input-layer/index.d.ts +2 -0
  6. package/dist/components/input-layer/src/input-layer.vue.d.ts +2 -0
  7. package/dist/components/table-panel/index.d.ts +3 -0
  8. package/dist/components/table-panel/src/table-panel.vue.d.ts +8 -0
  9. package/dist/simcode-ui.es.js +684 -679
  10. package/dist/simcode-ui.umd.js +2 -2
  11. package/dist/stats.html +1 -1
  12. package/dist/ui.css +1 -1
  13. package/docs/components/autocomplete.md +89 -89
  14. package/docs/components/barcode.md +101 -101
  15. package/docs/components/button-select.md +24 -24
  16. package/docs/components/button.md +117 -117
  17. package/docs/components/buttons.md +119 -119
  18. package/docs/components/cascader-select.md +114 -114
  19. package/docs/components/checkbox.md +114 -114
  20. package/docs/components/code-mirror.md +85 -85
  21. package/docs/components/collapse.md +26 -26
  22. package/docs/components/comp.md +71 -71
  23. package/docs/components/count-up.md +24 -24
  24. package/docs/components/count.md +24 -24
  25. package/docs/components/data-panel.md +24 -24
  26. package/docs/components/date.md +76 -76
  27. package/docs/components/dialog-full.md +112 -112
  28. package/docs/components/dialog.md +127 -127
  29. package/docs/components/divider.md +24 -24
  30. package/docs/components/drawer.md +127 -127
  31. package/docs/components/dynamic-layer.md +118 -118
  32. package/docs/components/echarts.md +72 -72
  33. package/docs/components/editor.md +24 -24
  34. package/docs/components/form.md +72 -72
  35. package/docs/components/guid.md +39 -39
  36. package/docs/components/hpanel.md +24 -24
  37. package/docs/components/icon.md +56 -56
  38. package/docs/components/input-button.md +24 -24
  39. package/docs/components/input-code.md +24 -24
  40. package/docs/components/input-color.md +114 -114
  41. package/docs/components/input-layer.md +56 -56
  42. package/docs/components/input-rows.md +370 -370
  43. package/docs/components/input-tag.md +50 -50
  44. package/docs/components/input.md +129 -129
  45. package/docs/components/layer-form.md +61 -61
  46. package/docs/components/layer.md +127 -127
  47. package/docs/components/layout.md +132 -132
  48. package/docs/components/map.md +24 -24
  49. package/docs/components/menu.md +121 -121
  50. package/docs/components/meta/button.ts +212 -212
  51. package/docs/components/meta/buttons.ts +76 -76
  52. package/docs/components/meta/code-mirror.ts +108 -108
  53. package/docs/components/meta/comp.ts +236 -236
  54. package/docs/components/meta/date.ts +267 -267
  55. package/docs/components/meta/echarts.ts +64 -64
  56. package/docs/components/meta/form-item.ts +50 -50
  57. package/docs/components/meta/form.ts +181 -181
  58. package/docs/components/meta/input-button.ts +165 -165
  59. package/docs/components/meta/input-cards.ts +112 -112
  60. package/docs/components/meta/input-code.ts +151 -151
  61. package/docs/components/meta/input-color.ts +243 -243
  62. package/docs/components/meta/input-layer.ts +382 -382
  63. package/docs/components/meta/input-rows.ts +119 -119
  64. package/docs/components/meta/layer-form.ts +56 -56
  65. package/docs/components/meta/map.ts +68 -68
  66. package/docs/components/meta/panel.ts +152 -152
  67. package/docs/components/meta/slider.ts +270 -270
  68. package/docs/components/meta/table-panel.ts +237 -237
  69. package/docs/components/meta/table.ts +391 -391
  70. package/docs/components/meta/tabs.ts +146 -146
  71. package/docs/components/meta/title.ts +91 -91
  72. package/docs/components/meta/tree-select.ts +199 -199
  73. package/docs/components/meta/tree.ts +219 -219
  74. package/docs/components/meta/vpanel.ts +19 -19
  75. package/docs/components/meta/workflow-viewer.ts +55 -55
  76. package/docs/components/number.md +124 -124
  77. package/docs/components/page.md +102 -102
  78. package/docs/components/panel.md +37 -37
  79. package/docs/components/radio.md +87 -87
  80. package/docs/components/rate.md +71 -71
  81. package/docs/components/select.md +133 -133
  82. package/docs/components/slider-captcha.md +41 -41
  83. package/docs/components/slider.md +101 -101
  84. package/docs/components/switch.md +90 -90
  85. package/docs/components/table-panel.md +251 -251
  86. package/docs/components/table.md +391 -391
  87. package/docs/components/tabs.md +26 -26
  88. package/docs/components/title.md +24 -24
  89. package/docs/components/tree.md +207 -207
  90. package/docs/components/upload.md +117 -117
  91. package/docs/components/workflow-viewer.md +21 -21
  92. package/docs/components/workflow.md +21 -21
  93. package/docs/examples/autocomplete/advanced.vue +35 -35
  94. package/docs/examples/autocomplete/basic.vue +32 -32
  95. package/docs/examples/autocomplete/clearable.vue +33 -33
  96. package/docs/examples/autocomplete/custom-template.vue +49 -49
  97. package/docs/examples/autocomplete/disabled.vue +33 -33
  98. package/docs/examples/autocomplete/icon.vue +37 -37
  99. package/docs/examples/barcode/all-types.vue +380 -380
  100. package/docs/examples/barcode/basic.vue +14 -14
  101. package/docs/examples/barcode/props-appearance.vue +243 -243
  102. package/docs/examples/barcode/props-geometry.vue +143 -143
  103. package/docs/examples/barcode/props-logic.vue +216 -216
  104. package/docs/examples/barcode/props-symbology.vue +199 -199
  105. package/docs/examples/barcode/props-text.vue +268 -268
  106. package/docs/examples/button/basic.vue +7 -7
  107. package/docs/examples/button/danger-ghost.vue +17 -17
  108. package/docs/examples/button/disabled.vue +10 -10
  109. package/docs/examples/button/loading.vue +6 -6
  110. package/docs/examples/button/shape.vue +7 -7
  111. package/docs/examples/button/size.vue +14 -14
  112. package/docs/examples/button/type.vue +10 -10
  113. package/docs/examples/button-select/basic.vue +19 -19
  114. package/docs/examples/buttons/basic.vue +62 -62
  115. package/docs/examples/buttons/disabled.vue +36 -36
  116. package/docs/examples/buttons/dropdown.vue +63 -63
  117. package/docs/examples/buttons/group.vue +52 -52
  118. package/docs/examples/buttons/link.vue +47 -47
  119. package/docs/examples/buttons/popup.vue +39 -39
  120. package/docs/examples/buttons/size.vue +45 -45
  121. package/docs/examples/cascader-select/basic.vue +28 -28
  122. package/docs/examples/cascader-select/clearable.vue +34 -34
  123. package/docs/examples/cascader-select/disabled.vue +43 -43
  124. package/docs/examples/cascader-select/filterable.vue +37 -37
  125. package/docs/examples/cascader-select/methods.vue +84 -84
  126. package/docs/examples/cascader-select/multiple.vue +38 -38
  127. package/docs/examples/cascader-select/slot.vue +45 -45
  128. package/docs/examples/checkbox/basic.vue +18 -18
  129. package/docs/examples/checkbox/button.vue +19 -19
  130. package/docs/examples/checkbox/color.vue +25 -25
  131. package/docs/examples/checkbox/disabled.vue +17 -17
  132. package/docs/examples/checkbox/min-max.vue +20 -20
  133. package/docs/examples/checkbox/mixed.vue +56 -56
  134. package/docs/examples/checkbox/size.vue +28 -28
  135. package/docs/examples/code-mirror/basic.vue +11 -11
  136. package/docs/examples/code-mirror/events.vue +42 -42
  137. package/docs/examples/code-mirror/height.vue +25 -25
  138. package/docs/examples/code-mirror/mode.vue +33 -33
  139. package/docs/examples/code-mirror/readonly.vue +14 -14
  140. package/docs/examples/collapse/basic.vue +82 -82
  141. package/docs/examples/comp/basic.vue +7 -7
  142. package/docs/examples/comp/collapse.vue +38 -38
  143. package/docs/examples/comp/tabs.vue +38 -38
  144. package/docs/examples/count/basic.vue +101 -101
  145. package/docs/examples/count-up/basic.vue +89 -89
  146. package/docs/examples/data-panel/basic.vue +110 -110
  147. package/docs/examples/date/basic.vue +73 -73
  148. package/docs/examples/date/default-value.vue +59 -59
  149. package/docs/examples/date/format.vue +75 -75
  150. package/docs/examples/date/range.vue +66 -66
  151. package/docs/examples/date/types.vue +79 -79
  152. package/docs/examples/decorated-title/basic.vue +31 -31
  153. package/docs/examples/dialog/basic.vue +36 -36
  154. package/docs/examples/dialog/custom-buttons.vue +44 -44
  155. package/docs/examples/dialog/fullscreen.vue +23 -23
  156. package/docs/examples/dialog/no-mask.vue +17 -17
  157. package/docs/examples/dialog/size.vue +44 -44
  158. package/docs/examples/dialog/steps.vue +57 -57
  159. package/docs/examples/dialog-full/basic.vue +29 -29
  160. package/docs/examples/dialog-full/custom-buttons.vue +45 -45
  161. package/docs/examples/dialog-full/no-buttons.vue +18 -18
  162. package/docs/examples/dialog-full/no-header.vue +27 -27
  163. package/docs/examples/dialog-full/steps.vue +71 -71
  164. package/docs/examples/divider/basic.vue +52 -52
  165. package/docs/examples/drawer/basic.vue +35 -35
  166. package/docs/examples/drawer/custom-buttons.vue +34 -34
  167. package/docs/examples/drawer/direction.vue +47 -47
  168. package/docs/examples/drawer/mask.vue +36 -36
  169. package/docs/examples/drawer/no-buttons.vue +20 -20
  170. package/docs/examples/drawer/size.vue +28 -28
  171. package/docs/examples/dynamic-layer/basic.vue +33 -33
  172. package/docs/examples/dynamic-layer/custom-buttons.vue +43 -43
  173. package/docs/examples/dynamic-layer/form.vue +73 -73
  174. package/docs/examples/dynamic-layer/steps.vue +52 -52
  175. package/docs/examples/dynamic-layer/types.vue +40 -40
  176. package/docs/examples/echarts/basic.vue +31 -31
  177. package/docs/examples/echarts/dynamic.vue +43 -43
  178. package/docs/examples/echarts/line.vue +46 -46
  179. package/docs/examples/echarts/pie.vue +44 -44
  180. package/docs/examples/editor/basic.vue +15 -15
  181. package/docs/examples/form/basic.vue +665 -665
  182. package/docs/examples/form/init.vue +76 -76
  183. package/docs/examples/form/master-detail.vue +203 -203
  184. package/docs/examples/form/rule-format.vue +179 -179
  185. package/docs/examples/guid/basic.vue +10 -10
  186. package/docs/examples/guid/size.vue +13 -13
  187. package/docs/examples/hpanel/basic.vue +79 -79
  188. package/docs/examples/icon/basic.vue +9 -9
  189. package/docs/examples/icon/rotate-flip.vue +9 -9
  190. package/docs/examples/icon/size.vue +7 -7
  191. package/docs/examples/input/basic.vue +10 -10
  192. package/docs/examples/input/clearable.vue +12 -12
  193. package/docs/examples/input/disabled.vue +6 -6
  194. package/docs/examples/input/icon.vue +23 -23
  195. package/docs/examples/input/password.vue +18 -18
  196. package/docs/examples/input/size.vue +13 -13
  197. package/docs/examples/input/textarea.vue +25 -25
  198. package/docs/examples/input/word-limit.vue +28 -28
  199. package/docs/examples/input-button/basic.vue +33 -33
  200. package/docs/examples/input-code/basic.vue +29 -29
  201. package/docs/examples/input-color/basic.vue +10 -10
  202. package/docs/examples/input-color/disabled.vue +13 -13
  203. package/docs/examples/input-color/format.vue +17 -17
  204. package/docs/examples/input-color/no-alpha.vue +13 -13
  205. package/docs/examples/input-color/only-button.vue +15 -15
  206. package/docs/examples/input-color/predefine.vue +31 -31
  207. package/docs/examples/input-color/size.vue +15 -15
  208. package/docs/examples/input-layer/basic.vue +86 -86
  209. package/docs/examples/input-layer/render-vnode-page.vue +160 -160
  210. package/docs/examples/input-layer/render-vnode.vue +127 -127
  211. package/docs/examples/input-rows/basic.vue +73 -73
  212. package/docs/examples/input-rows/drag.vue +48 -48
  213. package/docs/examples/input-rows/layer-form.vue +85 -85
  214. package/docs/examples/input-rows/nested.vue +91 -91
  215. package/docs/examples/input-tag/basic.vue +27 -27
  216. package/docs/examples/input-tag/colors.vue +23 -23
  217. package/docs/examples/input-tag/readonly.vue +17 -17
  218. package/docs/examples/layer/basic.vue +43 -43
  219. package/docs/examples/layer/custom-buttons.vue +61 -61
  220. package/docs/examples/layer/drawer.vue +37 -37
  221. package/docs/examples/layer/full.vue +38 -38
  222. package/docs/examples/layer/modal.vue +34 -34
  223. package/docs/examples/layer/steps.vue +46 -46
  224. package/docs/examples/layer-form/basic.vue +76 -76
  225. package/docs/examples/layer-form/config.vue +82 -82
  226. package/docs/examples/layer-form/size.vue +72 -72
  227. package/docs/examples/layout/basic.vue +36 -36
  228. package/docs/examples/layout/custom-size.vue +50 -50
  229. package/docs/examples/layout/disable-move.vue +37 -37
  230. package/docs/examples/layout/hide-mid-when-narrow.vue +96 -96
  231. package/docs/examples/layout/min-size.vue +73 -73
  232. package/docs/examples/layout/percent-size.vue +80 -80
  233. package/docs/examples/layout/simple.vue +22 -22
  234. package/docs/examples/layout/top-side.vue +34 -34
  235. package/docs/examples/map/basic.vue +22 -22
  236. package/docs/examples/menu/basic.vue +58 -58
  237. package/docs/examples/menu/collapsed.vue +49 -49
  238. package/docs/examples/menu/horizontal.vue +44 -44
  239. package/docs/examples/menu/selection-test.vue +104 -104
  240. package/docs/examples/menu/theme.vue +46 -46
  241. package/docs/examples/menu/vertical.vue +46 -46
  242. package/docs/examples/number/advanced.vue +143 -143
  243. package/docs/examples/number/basic.vue +63 -63
  244. package/docs/examples/number/disabled.vue +49 -49
  245. package/docs/examples/number/size.vue +42 -42
  246. package/docs/examples/number/slots.vue +123 -123
  247. package/docs/examples/number/step-strictly.vue +41 -41
  248. package/docs/examples/number/step.vue +47 -47
  249. package/docs/examples/page/basic.vue +41 -41
  250. package/docs/examples/page/code-table-model.vue +428 -428
  251. package/docs/examples/page/dept-user-management.vue +211 -211
  252. package/docs/examples/page/init.vue +87 -87
  253. package/docs/examples/page/log.vue +453 -453
  254. package/docs/examples/page/user-management.vue +313 -313
  255. package/docs/examples/panel/tool-buttons.vue +18 -18
  256. package/docs/examples/radio/basic.vue +17 -17
  257. package/docs/examples/radio/button.vue +17 -17
  258. package/docs/examples/radio/color.vue +18 -18
  259. package/docs/examples/radio/disabled.vue +17 -17
  260. package/docs/examples/radio/size.vue +29 -29
  261. package/docs/examples/rate/basic.vue +24 -24
  262. package/docs/examples/rate/half.vue +24 -24
  263. package/docs/examples/rate/readonly.vue +11 -11
  264. package/docs/examples/rate/text.vue +37 -37
  265. package/docs/examples/select/basic.vue +16 -16
  266. package/docs/examples/select/clearable.vue +22 -22
  267. package/docs/examples/select/disabled.vue +31 -31
  268. package/docs/examples/select/filterable.vue +24 -24
  269. package/docs/examples/select/group.vue +23 -23
  270. package/docs/examples/select/icon.vue +16 -16
  271. package/docs/examples/select/multiple.vue +18 -18
  272. package/docs/examples/select/size.vue +39 -39
  273. package/docs/examples/slider/basic.vue +42 -42
  274. package/docs/examples/slider/disabled.vue +17 -17
  275. package/docs/examples/slider/marks.vue +30 -30
  276. package/docs/examples/slider/size.vue +37 -37
  277. package/docs/examples/slider/tooltip.vue +36 -36
  278. package/docs/examples/slider/vertical.vue +26 -26
  279. package/docs/examples/slider-captcha/basic.vue +44 -44
  280. package/docs/examples/slider-captcha/custom.vue +48 -48
  281. package/docs/examples/switch/basic.vue +16 -16
  282. package/docs/examples/switch/disabled.vue +13 -13
  283. package/docs/examples/switch/loading.vue +13 -13
  284. package/docs/examples/switch/size.vue +15 -15
  285. package/docs/examples/switch/text.vue +13 -13
  286. package/docs/examples/table/action-filter.vue +126 -126
  287. package/docs/examples/table/actions.vue +116 -116
  288. package/docs/examples/table/add-row.vue +103 -103
  289. package/docs/examples/table/basic.vue +168 -168
  290. package/docs/examples/table/checkbox-layout.vue +68 -68
  291. package/docs/examples/table/custom-layout.vue +115 -115
  292. package/docs/examples/table/dynamic-type.vue +73 -73
  293. package/docs/examples/table/editable.vue +262 -262
  294. package/docs/examples/table/field-selection.vue +87 -87
  295. package/docs/examples/table/frozen-column.vue +140 -140
  296. package/docs/examples/table/height-mode.vue +99 -99
  297. package/docs/examples/table/icon.vue +85 -85
  298. package/docs/examples/table/link.vue +66 -66
  299. package/docs/examples/table/multiple.vue +188 -188
  300. package/docs/examples/table/pagination.vue +151 -151
  301. package/docs/examples/table/single-selection.vue +64 -64
  302. package/docs/examples/table/sub-table-lazy.vue +97 -97
  303. package/docs/examples/table/sub-table.vue +103 -103
  304. package/docs/examples/table/tag.vue +43 -43
  305. package/docs/examples/table/tree-column.vue +119 -119
  306. package/docs/examples/table/tree-data.vue +141 -141
  307. package/docs/examples/table/tree-default-expand-all.vue +60 -60
  308. package/docs/examples/table/tree-lazy.vue +80 -80
  309. package/docs/examples/table/tree-set-selection.vue +75 -75
  310. package/docs/examples/table-panel/basic.vue +229 -229
  311. package/docs/examples/table-panel/batch-operations.vue +285 -285
  312. package/docs/examples/table-panel/button-visibility.vue +88 -88
  313. package/docs/examples/table-panel/filter.vue +219 -219
  314. package/docs/examples/table-panel/get-selection.vue +111 -111
  315. package/docs/examples/table-panel/mask.vue +151 -151
  316. package/docs/examples/table-panel/multiple-selection.vue +243 -243
  317. package/docs/examples/table-panel/pagination.vue +133 -133
  318. package/docs/examples/table-panel/sub-table-lazy.vue +118 -118
  319. package/docs/examples/table-panel/tree-parent-key.vue +67 -67
  320. package/docs/examples/tabs/basic.vue +98 -98
  321. package/docs/examples/time/base.vue +67 -67
  322. package/docs/examples/title/basic.vue +87 -87
  323. package/docs/examples/tree/accordion.vue +46 -46
  324. package/docs/examples/tree/basic.vue +50 -50
  325. package/docs/examples/tree/buttons.vue +53 -53
  326. package/docs/examples/tree/checkable.vue +52 -52
  327. package/docs/examples/tree/custom-keys.vue +39 -39
  328. package/docs/examples/tree/default-expanded.vue +52 -52
  329. package/docs/examples/tree/draggable.vue +29 -29
  330. package/docs/examples/tree/expand-on-click.vue +39 -39
  331. package/docs/examples/tree/flat-data.vue +20 -20
  332. package/docs/examples/tree/icon.vue +40 -40
  333. package/docs/examples/tree/load-data.vue +37 -37
  334. package/docs/examples/tree/methods.vue +74 -74
  335. package/docs/examples/tree/theme.vue +33 -33
  336. package/docs/examples/tree-select/basic.vue +47 -47
  337. package/docs/examples/upload/accept.vue +31 -31
  338. package/docs/examples/upload/basic.vue +12 -12
  339. package/docs/examples/upload/drag.vue +11 -11
  340. package/docs/examples/upload/image.vue +17 -17
  341. package/docs/examples/upload/limit.vue +20 -20
  342. package/docs/examples/upload/multiple.vue +17 -17
  343. package/docs/examples/upload/readonly.vue +17 -17
  344. package/docs/examples/utils/cipher.vue +160 -160
  345. package/docs/examples/utils/common.vue +153 -153
  346. package/docs/examples/utils/date.vue +56 -56
  347. package/docs/examples/utils/dom.vue +52 -52
  348. package/docs/examples/utils/is.vue +70 -70
  349. package/docs/examples/workflow/basic.vue +265 -265
  350. package/docs/examples/workflow-viewer/basic.vue +248 -248
  351. package/package.json +23 -23
@@ -1,79 +1,79 @@
1
- <template>
2
- <div class="demo-date-types">
3
- <div class="block">
4
- <span class="demonstration">Week</span>
5
- <j-date
6
- v-model="value1"
7
- select-type="week"
8
- format="[Week] ww"
9
- placeholder="Pick a week"
10
- />
11
- </div>
12
- <div class="block">
13
- <span class="demonstration">Month</span>
14
- <j-date
15
- v-model="value2"
16
- select-type="month"
17
- placeholder="Pick a month"
18
- />
19
- </div>
20
- <div class="block">
21
- <span class="demonstration">Year</span>
22
- <j-date
23
- v-model="value3"
24
- select-type="year"
25
- placeholder="Pick a year"
26
- />
27
- </div>
28
- <div class="block">
29
- <span class="demonstration">Dates</span>
30
- <j-date
31
- v-model="value4"
32
- select-type="dates"
33
- placeholder="Pick one or more dates"
34
- />
35
- </div>
36
- <div class="block">
37
- <span class="demonstration">Datetime</span>
38
- <j-date
39
- v-model="value5"
40
- select-type="datetime"
41
- placeholder="Select date and time"
42
- />
43
- </div>
44
- </div>
45
- </template>
46
-
47
- <script setup lang="ts">
48
- import { ref } from 'vue'
49
-
50
- const value1 = ref('')
51
- const value2 = ref('')
52
- const value3 = ref('')
53
- const value4 = ref('')
54
- const value5 = ref('')
55
- </script>
56
-
57
- <style scoped>
58
- .demo-date-types {
59
- display: flex;
60
- flex-wrap: wrap;
61
- gap: 20px;
62
- }
63
- .demo-date-types .block {
64
- padding: 30px 0;
65
- text-align: center;
66
- border-right: solid 1px var(--el-border-color);
67
- flex: 1;
68
- min-width: 300px;
69
- }
70
- .demo-date-types .block:last-child {
71
- border-right: none;
72
- }
73
- .demo-date-types .demonstration {
74
- display: block;
75
- color: var(--el-text-color-secondary);
76
- font-size: 14px;
77
- margin-bottom: 20px;
78
- }
79
- </style>
1
+ <template>
2
+ <div class="demo-date-types">
3
+ <div class="block">
4
+ <span class="demonstration">Week</span>
5
+ <j-date
6
+ v-model="value1"
7
+ select-type="week"
8
+ format="[Week] ww"
9
+ placeholder="Pick a week"
10
+ />
11
+ </div>
12
+ <div class="block">
13
+ <span class="demonstration">Month</span>
14
+ <j-date
15
+ v-model="value2"
16
+ select-type="month"
17
+ placeholder="Pick a month"
18
+ />
19
+ </div>
20
+ <div class="block">
21
+ <span class="demonstration">Year</span>
22
+ <j-date
23
+ v-model="value3"
24
+ select-type="year"
25
+ placeholder="Pick a year"
26
+ />
27
+ </div>
28
+ <div class="block">
29
+ <span class="demonstration">Dates</span>
30
+ <j-date
31
+ v-model="value4"
32
+ select-type="dates"
33
+ placeholder="Pick one or more dates"
34
+ />
35
+ </div>
36
+ <div class="block">
37
+ <span class="demonstration">Datetime</span>
38
+ <j-date
39
+ v-model="value5"
40
+ select-type="datetime"
41
+ placeholder="Select date and time"
42
+ />
43
+ </div>
44
+ </div>
45
+ </template>
46
+
47
+ <script setup lang="ts">
48
+ import { ref } from 'vue'
49
+
50
+ const value1 = ref('')
51
+ const value2 = ref('')
52
+ const value3 = ref('')
53
+ const value4 = ref('')
54
+ const value5 = ref('')
55
+ </script>
56
+
57
+ <style scoped>
58
+ .demo-date-types {
59
+ display: flex;
60
+ flex-wrap: wrap;
61
+ gap: 20px;
62
+ }
63
+ .demo-date-types .block {
64
+ padding: 30px 0;
65
+ text-align: center;
66
+ border-right: solid 1px var(--el-border-color);
67
+ flex: 1;
68
+ min-width: 300px;
69
+ }
70
+ .demo-date-types .block:last-child {
71
+ border-right: none;
72
+ }
73
+ .demo-date-types .demonstration {
74
+ display: block;
75
+ color: var(--el-text-color-secondary);
76
+ font-size: 14px;
77
+ margin-bottom: 20px;
78
+ }
79
+ </style>
@@ -1,31 +1,31 @@
1
- <template>
2
- <div>
3
- <h3>默认样式 (无 `titleType`)</h3>
4
- <j-decorated-title title="默认标题" background-color="#409eff" />
5
-
6
- <h3>Title Type 2</h3>
7
- <j-decorated-title title="标题二" content="这是 titleType 为 'title2' 的装饰标题" title-type="title2" background-color="#67c23a" />
8
-
9
- <h3>Title Type 3</h3>
10
- <j-decorated-title title="标题三" content="这是 titleType 为 'title3' 的装饰标题" title-type="title3" background-color="#e6a23c" />
11
-
12
- <h3>Title Type 4</h3>
13
- <j-decorated-title title="标题四" content="这是 titleType 为 'title4' 的装饰标题" title-type="title4" background-color="#f56c6c" />
14
-
15
- <h3>Title Type 5</h3>
16
- <j-decorated-title title="标题五" content="这是 titleType 为 'title5' 的装饰标题" title-type="title5" background-color="#f56c6c" />
17
-
18
- <h3>Title Type 6</h3>
19
- <j-decorated-title title="标题六" content="这是 titleType 为 'title6' 的装饰标题" title-type="title6" background-color="#909399" />
20
-
21
- <h3>Title Type 7</h3>
22
- <j-decorated-title title="标题七" content="这是 titleType 为 'title7' 的装饰标题" title-type="title7" background-color="#67c23a" />
23
-
24
- <h3>Title Type 8</h3>
25
- <j-decorated-title title="标题八" content="这是 titleType 为 'title8' 的装饰标题" title-type="title8" background-color="#409eff" />
26
-
27
- <h3>Title Type 9</h3>
28
- <j-decorated-title title="标题九" content="这是 titleType 为 'title9' 的装饰标题" title-type="title9" background-color="#e6a23c" />
29
- </div>
30
- </template>
31
-
1
+ <template>
2
+ <div>
3
+ <h3>默认样式 (无 `titleType`)</h3>
4
+ <j-decorated-title title="默认标题" background-color="#409eff" />
5
+
6
+ <h3>Title Type 2</h3>
7
+ <j-decorated-title title="标题二" content="这是 titleType 为 'title2' 的装饰标题" title-type="title2" background-color="#67c23a" />
8
+
9
+ <h3>Title Type 3</h3>
10
+ <j-decorated-title title="标题三" content="这是 titleType 为 'title3' 的装饰标题" title-type="title3" background-color="#e6a23c" />
11
+
12
+ <h3>Title Type 4</h3>
13
+ <j-decorated-title title="标题四" content="这是 titleType 为 'title4' 的装饰标题" title-type="title4" background-color="#f56c6c" />
14
+
15
+ <h3>Title Type 5</h3>
16
+ <j-decorated-title title="标题五" content="这是 titleType 为 'title5' 的装饰标题" title-type="title5" background-color="#f56c6c" />
17
+
18
+ <h3>Title Type 6</h3>
19
+ <j-decorated-title title="标题六" content="这是 titleType 为 'title6' 的装饰标题" title-type="title6" background-color="#909399" />
20
+
21
+ <h3>Title Type 7</h3>
22
+ <j-decorated-title title="标题七" content="这是 titleType 为 'title7' 的装饰标题" title-type="title7" background-color="#67c23a" />
23
+
24
+ <h3>Title Type 8</h3>
25
+ <j-decorated-title title="标题八" content="这是 titleType 为 'title8' 的装饰标题" title-type="title8" background-color="#409eff" />
26
+
27
+ <h3>Title Type 9</h3>
28
+ <j-decorated-title title="标题九" content="这是 titleType 为 'title9' 的装饰标题" title-type="title9" background-color="#e6a23c" />
29
+ </div>
30
+ </template>
31
+
@@ -1,36 +1,36 @@
1
- <template>
2
- <div>
3
- <j-button label="打开弹窗" @click="visible = true" />
4
- <j-dialog
5
- v-model:visible="visible"
6
- title="基础弹窗"
7
- :width="600"
8
- :height="400"
9
- @ok="handleOk"
10
- @cancel="handleCancel"
11
- >
12
- <div style="padding: 16px">
13
- <p>这是一个基础的弹窗示例。</p>
14
- <p>弹窗支持拖拽、缩放等功能。</p>
15
- </div>
16
- </j-dialog>
17
- </div>
18
- </template>
19
-
20
- <script setup lang="ts">
21
- import { ref } from 'vue'
22
-
23
- const visible = ref(false)
24
-
25
- const handleOk = (showLoading: any, hideLoading: any) => {
26
- showLoading('保存中...')
27
- setTimeout(() => {
28
- hideLoading()
29
- visible.value = false
30
- }, 1000)
31
- }
32
-
33
- const handleCancel = () => {
34
- visible.value = false
35
- }
36
- </script>
1
+ <template>
2
+ <div>
3
+ <j-button label="打开弹窗" @click="visible = true" />
4
+ <j-dialog
5
+ v-model:visible="visible"
6
+ title="基础弹窗"
7
+ :width="600"
8
+ :height="400"
9
+ @ok="handleOk"
10
+ @cancel="handleCancel"
11
+ >
12
+ <div style="padding: 16px">
13
+ <p>这是一个基础的弹窗示例。</p>
14
+ <p>弹窗支持拖拽、缩放等功能。</p>
15
+ </div>
16
+ </j-dialog>
17
+ </div>
18
+ </template>
19
+
20
+ <script setup lang="ts">
21
+ import { ref } from 'vue'
22
+
23
+ const visible = ref(false)
24
+
25
+ const handleOk = (showLoading: any, hideLoading: any) => {
26
+ showLoading('保存中...')
27
+ setTimeout(() => {
28
+ hideLoading()
29
+ visible.value = false
30
+ }, 1000)
31
+ }
32
+
33
+ const handleCancel = () => {
34
+ visible.value = false
35
+ }
36
+ </script>
@@ -1,44 +1,44 @@
1
- <template>
2
- <div>
3
- <j-button label="自定义按钮" @click="visible = true" />
4
- <j-dialog
5
- v-model:visible="visible"
6
- title="自定义按钮弹窗"
7
- :width="600"
8
- :height="400"
9
- :has-save-btn="false"
10
- :buttons="buttons"
11
- >
12
- <div style="padding: 16px">
13
- <p>这个弹窗使用了自定义按钮配置。</p>
14
- </div>
15
- </j-dialog>
16
- </div>
17
- </template>
18
-
19
- <script setup lang="ts">
20
- import { ref } from 'vue'
21
- import { ElMessage } from 'element-plus'
22
-
23
- const visible = ref(false)
24
-
25
- const buttons = [
26
- {
27
- prop: 'confirm',
28
- label: '确认',
29
- type: 'primary',
30
- click: () => {
31
- ElMessage.success('点击了确认按钮')
32
- visible.value = false
33
- },
34
- },
35
- {
36
- prop: 'delete',
37
- label: '删除',
38
- danger: true,
39
- click: () => {
40
- ElMessage.warning('点击了删除按钮')
41
- },
42
- },
43
- ]
44
- </script>
1
+ <template>
2
+ <div>
3
+ <j-button label="自定义按钮" @click="visible = true" />
4
+ <j-dialog
5
+ v-model:visible="visible"
6
+ title="自定义按钮弹窗"
7
+ :width="600"
8
+ :height="400"
9
+ :has-save-btn="false"
10
+ :buttons="buttons"
11
+ >
12
+ <div style="padding: 16px">
13
+ <p>这个弹窗使用了自定义按钮配置。</p>
14
+ </div>
15
+ </j-dialog>
16
+ </div>
17
+ </template>
18
+
19
+ <script setup lang="ts">
20
+ import { ref } from 'vue'
21
+ import { ElMessage } from 'element-plus'
22
+
23
+ const visible = ref(false)
24
+
25
+ const buttons = [
26
+ {
27
+ prop: 'confirm',
28
+ label: '确认',
29
+ type: 'primary',
30
+ click: () => {
31
+ ElMessage.success('点击了确认按钮')
32
+ visible.value = false
33
+ },
34
+ },
35
+ {
36
+ prop: 'delete',
37
+ label: '删除',
38
+ danger: true,
39
+ click: () => {
40
+ ElMessage.warning('点击了删除按钮')
41
+ },
42
+ },
43
+ ]
44
+ </script>
@@ -1,23 +1,23 @@
1
- <template>
2
- <div>
3
- <j-button label="可全屏弹窗" @click="visible = true" />
4
- <j-dialog
5
- v-model:visible="visible"
6
- title="全屏弹窗"
7
- :show-full-screen-btn="true"
8
- :width="600"
9
- :height="400"
10
- >
11
- <div style="padding: 16px">
12
- <p>点击右上角的全屏按钮可以切换全屏显示。</p>
13
- <p>全屏状态下可以再次点击退出全屏。</p>
14
- </div>
15
- </j-dialog>
16
- </div>
17
- </template>
18
-
19
- <script setup lang="ts">
20
- import { ref } from 'vue'
21
-
22
- const visible = ref(false)
23
- </script>
1
+ <template>
2
+ <div>
3
+ <j-button label="可全屏弹窗" @click="visible = true" />
4
+ <j-dialog
5
+ v-model:visible="visible"
6
+ title="全屏弹窗"
7
+ :show-full-screen-btn="true"
8
+ :width="600"
9
+ :height="400"
10
+ >
11
+ <div style="padding: 16px">
12
+ <p>点击右上角的全屏按钮可以切换全屏显示。</p>
13
+ <p>全屏状态下可以再次点击退出全屏。</p>
14
+ </div>
15
+ </j-dialog>
16
+ </div>
17
+ </template>
18
+
19
+ <script setup lang="ts">
20
+ import { ref } from 'vue'
21
+
22
+ const visible = ref(false)
23
+ </script>
@@ -1,17 +1,17 @@
1
- <template>
2
- <div>
3
- <j-button label="无遮罩弹窗" @click="visible = true" />
4
- <j-dialog v-model:visible="visible" title="无遮罩弹窗" :width="500" :height="350" :mask="false">
5
- <div style="padding: 16px">
6
- <p>这个弹窗没有遮罩层。</p>
7
- <p>你可以与页面其他内容进行交互。</p>
8
- </div>
9
- </j-dialog>
10
- </div>
11
- </template>
12
-
13
- <script setup lang="ts">
14
- import { ref } from 'vue'
15
-
16
- const visible = ref(false)
17
- </script>
1
+ <template>
2
+ <div>
3
+ <j-button label="无遮罩弹窗" @click="visible = true" />
4
+ <j-dialog v-model:visible="visible" title="无遮罩弹窗" :width="500" :height="350" :mask="false">
5
+ <div style="padding: 16px">
6
+ <p>这个弹窗没有遮罩层。</p>
7
+ <p>你可以与页面其他内容进行交互。</p>
8
+ </div>
9
+ </j-dialog>
10
+ </div>
11
+ </template>
12
+
13
+ <script setup lang="ts">
14
+ import { ref } from 'vue'
15
+
16
+ const visible = ref(false)
17
+ </script>
@@ -1,44 +1,44 @@
1
- <template>
2
- <div style="display: flex; gap: 8px">
3
- <j-button label="小弹窗" @click="showDialog('small')" />
4
- <j-button label="中等弹窗" @click="showDialog('medium')" />
5
- <j-button label="大弹窗" @click="showDialog('large')" />
6
- <j-dialog v-model:visible="visible" :title="title" :width="width" :height="height">
7
- <div style="padding: 16px">
8
- <p>当前弹窗尺寸:{{ title }}</p>
9
- <p>宽度:{{ width }}px</p>
10
- <p>高度:{{ height }}px</p>
11
- </div>
12
- </j-dialog>
13
- </div>
14
- </template>
15
-
16
- <script setup lang="ts">
17
- import { ref } from 'vue'
18
-
19
- const visible = ref(false)
20
- const title = ref('')
21
- const width = ref(600)
22
- const height = ref(400)
23
-
24
- const showDialog = (size: string) => {
25
- switch (size) {
26
- case 'small':
27
- title.value = '小弹窗'
28
- width.value = 400
29
- height.value = 300
30
- break
31
- case 'medium':
32
- title.value = '中等弹窗'
33
- width.value = 600
34
- height.value = 400
35
- break
36
- case 'large':
37
- title.value = '大弹窗'
38
- width.value = 900
39
- height.value = 600
40
- break
41
- }
42
- visible.value = true
43
- }
44
- </script>
1
+ <template>
2
+ <div style="display: flex; gap: 8px">
3
+ <j-button label="小弹窗" @click="showDialog('small')" />
4
+ <j-button label="中等弹窗" @click="showDialog('medium')" />
5
+ <j-button label="大弹窗" @click="showDialog('large')" />
6
+ <j-dialog v-model:visible="visible" :title="title" :width="width" :height="height">
7
+ <div style="padding: 16px">
8
+ <p>当前弹窗尺寸:{{ title }}</p>
9
+ <p>宽度:{{ width }}px</p>
10
+ <p>高度:{{ height }}px</p>
11
+ </div>
12
+ </j-dialog>
13
+ </div>
14
+ </template>
15
+
16
+ <script setup lang="ts">
17
+ import { ref } from 'vue'
18
+
19
+ const visible = ref(false)
20
+ const title = ref('')
21
+ const width = ref(600)
22
+ const height = ref(400)
23
+
24
+ const showDialog = (size: string) => {
25
+ switch (size) {
26
+ case 'small':
27
+ title.value = '小弹窗'
28
+ width.value = 400
29
+ height.value = 300
30
+ break
31
+ case 'medium':
32
+ title.value = '中等弹窗'
33
+ width.value = 600
34
+ height.value = 400
35
+ break
36
+ case 'large':
37
+ title.value = '大弹窗'
38
+ width.value = 900
39
+ height.value = 600
40
+ break
41
+ }
42
+ visible.value = true
43
+ }
44
+ </script>