@a2simcode/ui 0.0.299 → 0.0.301

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 (374) 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/date/src/date.vue.d.ts +2 -0
  6. package/dist/components/time/src/time.vue.d.ts +2 -0
  7. package/dist/simcode-ui.es.js +170 -148
  8. package/dist/simcode-ui.umd.js +2 -2
  9. package/dist/stats.html +1 -1
  10. package/dist/ui.css +1 -1
  11. package/docs/components/autocomplete.md +89 -89
  12. package/docs/components/barcode.md +101 -101
  13. package/docs/components/button-select.md +24 -24
  14. package/docs/components/button.md +117 -117
  15. package/docs/components/buttons.md +119 -119
  16. package/docs/components/card-list.md +38 -38
  17. package/docs/components/cascader-select.md +114 -114
  18. package/docs/components/checkbox.md +114 -114
  19. package/docs/components/code-mirror.md +85 -85
  20. package/docs/components/collapse.md +26 -26
  21. package/docs/components/comp.md +106 -106
  22. package/docs/components/count-up.md +24 -24
  23. package/docs/components/count.md +24 -24
  24. package/docs/components/data-panel.md +24 -24
  25. package/docs/components/date.md +76 -76
  26. package/docs/components/dialog-full.md +112 -112
  27. package/docs/components/dialog.md +127 -127
  28. package/docs/components/divider.md +24 -24
  29. package/docs/components/drawer.md +127 -127
  30. package/docs/components/dynamic-layer.md +118 -118
  31. package/docs/components/echarts.md +72 -72
  32. package/docs/components/editor.md +24 -24
  33. package/docs/components/form.md +87 -87
  34. package/docs/components/guid.md +39 -39
  35. package/docs/components/hpanel.md +24 -24
  36. package/docs/components/icon.md +56 -56
  37. package/docs/components/input-button.md +24 -24
  38. package/docs/components/input-code.md +24 -24
  39. package/docs/components/input-color.md +114 -114
  40. package/docs/components/input-layer.md +56 -56
  41. package/docs/components/input-rows.md +370 -370
  42. package/docs/components/input-tag.md +50 -50
  43. package/docs/components/input.md +129 -129
  44. package/docs/components/layer-form.md +61 -61
  45. package/docs/components/layer.md +127 -127
  46. package/docs/components/layout.md +132 -132
  47. package/docs/components/map.md +24 -24
  48. package/docs/components/menu.md +121 -121
  49. package/docs/components/meta/button.ts +212 -212
  50. package/docs/components/meta/buttons.ts +76 -76
  51. package/docs/components/meta/card-list.ts +210 -210
  52. package/docs/components/meta/code-mirror.ts +108 -108
  53. package/docs/components/meta/comp.ts +235 -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 +62 -62
  57. package/docs/components/meta/form.ts +181 -181
  58. package/docs/components/meta/input-button.ts +175 -175
  59. package/docs/components/meta/input-cards.ts +112 -112
  60. package/docs/components/meta/input-code.ts +161 -161
  61. package/docs/components/meta/input-color.ts +243 -243
  62. package/docs/components/meta/input-rows.ts +119 -119
  63. package/docs/components/meta/layer-form.ts +74 -74
  64. package/docs/components/meta/map.ts +68 -68
  65. package/docs/components/meta/panel.ts +152 -152
  66. package/docs/components/meta/radio.ts +55 -55
  67. package/docs/components/meta/select.ts +279 -279
  68. package/docs/components/meta/slider.ts +270 -270
  69. package/docs/components/meta/table-panel.ts +337 -337
  70. package/docs/components/meta/table.ts +489 -489
  71. package/docs/components/meta/tabs.ts +146 -146
  72. package/docs/components/meta/title.ts +91 -91
  73. package/docs/components/meta/tree-select.ts +220 -220
  74. package/docs/components/meta/tree.ts +225 -225
  75. package/docs/components/meta/vpanel.ts +19 -19
  76. package/docs/components/meta/workflow-viewer.ts +55 -55
  77. package/docs/components/number.md +124 -124
  78. package/docs/components/page.md +102 -102
  79. package/docs/components/panel.md +37 -37
  80. package/docs/components/radio.md +87 -87
  81. package/docs/components/rate.md +71 -71
  82. package/docs/components/select.md +133 -133
  83. package/docs/components/slider-captcha.md +41 -41
  84. package/docs/components/slider.md +101 -101
  85. package/docs/components/switch.md +90 -90
  86. package/docs/components/table-panel.md +342 -342
  87. package/docs/components/table.md +510 -510
  88. package/docs/components/tabs.md +26 -26
  89. package/docs/components/title.md +24 -24
  90. package/docs/components/tree.md +222 -222
  91. package/docs/components/upload.md +117 -117
  92. package/docs/components/workflow-viewer.md +21 -21
  93. package/docs/components/workflow.md +21 -21
  94. package/docs/examples/autocomplete/advanced.vue +35 -35
  95. package/docs/examples/autocomplete/basic.vue +32 -32
  96. package/docs/examples/autocomplete/clearable.vue +33 -33
  97. package/docs/examples/autocomplete/custom-template.vue +49 -49
  98. package/docs/examples/autocomplete/disabled.vue +33 -33
  99. package/docs/examples/autocomplete/icon.vue +37 -37
  100. package/docs/examples/barcode/all-types.vue +380 -380
  101. package/docs/examples/barcode/basic.vue +14 -14
  102. package/docs/examples/barcode/props-appearance.vue +243 -243
  103. package/docs/examples/barcode/props-geometry.vue +143 -143
  104. package/docs/examples/barcode/props-logic.vue +216 -216
  105. package/docs/examples/barcode/props-symbology.vue +199 -199
  106. package/docs/examples/barcode/props-text.vue +268 -268
  107. package/docs/examples/button/basic.vue +7 -7
  108. package/docs/examples/button/disabled.vue +42 -42
  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/status.vue +34 -34
  113. package/docs/examples/button/type.vue +10 -10
  114. package/docs/examples/button-select/basic.vue +19 -19
  115. package/docs/examples/buttons/basic.vue +62 -62
  116. package/docs/examples/buttons/disabled.vue +36 -36
  117. package/docs/examples/buttons/dropdown.vue +63 -63
  118. package/docs/examples/buttons/group.vue +52 -52
  119. package/docs/examples/buttons/link.vue +47 -47
  120. package/docs/examples/buttons/popup.vue +39 -39
  121. package/docs/examples/buttons/size.vue +45 -45
  122. package/docs/examples/card-list/basic.vue +70 -70
  123. package/docs/examples/card-list/selection-pagination.vue +69 -69
  124. package/docs/examples/cascader-select/basic.vue +28 -28
  125. package/docs/examples/cascader-select/clearable.vue +34 -34
  126. package/docs/examples/cascader-select/disabled.vue +43 -43
  127. package/docs/examples/cascader-select/filterable.vue +37 -37
  128. package/docs/examples/cascader-select/methods.vue +84 -84
  129. package/docs/examples/cascader-select/multiple.vue +38 -38
  130. package/docs/examples/cascader-select/slot.vue +45 -45
  131. package/docs/examples/checkbox/basic.vue +18 -18
  132. package/docs/examples/checkbox/button.vue +19 -19
  133. package/docs/examples/checkbox/color.vue +25 -25
  134. package/docs/examples/checkbox/disabled.vue +17 -17
  135. package/docs/examples/checkbox/min-max.vue +20 -20
  136. package/docs/examples/checkbox/mixed.vue +56 -56
  137. package/docs/examples/checkbox/size.vue +28 -28
  138. package/docs/examples/code-mirror/basic.vue +11 -11
  139. package/docs/examples/code-mirror/events.vue +42 -42
  140. package/docs/examples/code-mirror/height.vue +25 -25
  141. package/docs/examples/code-mirror/mode.vue +33 -33
  142. package/docs/examples/code-mirror/readonly.vue +14 -14
  143. package/docs/examples/collapse/basic.vue +82 -82
  144. package/docs/examples/comp/basic.vue +7 -7
  145. package/docs/examples/comp/collapse.vue +38 -38
  146. package/docs/examples/comp/table-merge-rows.vue +77 -77
  147. package/docs/examples/comp/table-row-fixed-merge.vue +105 -105
  148. package/docs/examples/comp/tabs.vue +38 -38
  149. package/docs/examples/count/basic.vue +101 -101
  150. package/docs/examples/count-up/basic.vue +89 -89
  151. package/docs/examples/data-panel/basic.vue +110 -110
  152. package/docs/examples/date/basic.vue +73 -73
  153. package/docs/examples/date/default-value.vue +59 -59
  154. package/docs/examples/date/format.vue +75 -75
  155. package/docs/examples/date/range.vue +66 -66
  156. package/docs/examples/date/types.vue +79 -79
  157. package/docs/examples/decorated-title/basic.vue +31 -31
  158. package/docs/examples/dialog/basic.vue +36 -36
  159. package/docs/examples/dialog/custom-buttons.vue +44 -44
  160. package/docs/examples/dialog/fullscreen.vue +23 -23
  161. package/docs/examples/dialog/no-mask.vue +17 -17
  162. package/docs/examples/dialog/size.vue +44 -44
  163. package/docs/examples/dialog/steps.vue +57 -57
  164. package/docs/examples/dialog-full/basic.vue +29 -29
  165. package/docs/examples/dialog-full/custom-buttons.vue +45 -45
  166. package/docs/examples/dialog-full/no-buttons.vue +18 -18
  167. package/docs/examples/dialog-full/no-header.vue +27 -27
  168. package/docs/examples/dialog-full/steps.vue +71 -71
  169. package/docs/examples/divider/basic.vue +52 -52
  170. package/docs/examples/drawer/basic.vue +35 -35
  171. package/docs/examples/drawer/custom-buttons.vue +34 -34
  172. package/docs/examples/drawer/direction.vue +47 -47
  173. package/docs/examples/drawer/mask.vue +36 -36
  174. package/docs/examples/drawer/no-buttons.vue +20 -20
  175. package/docs/examples/drawer/size.vue +28 -28
  176. package/docs/examples/dynamic-layer/basic.vue +33 -33
  177. package/docs/examples/dynamic-layer/custom-buttons.vue +43 -43
  178. package/docs/examples/dynamic-layer/form.vue +73 -73
  179. package/docs/examples/dynamic-layer/steps.vue +52 -52
  180. package/docs/examples/dynamic-layer/types.vue +40 -40
  181. package/docs/examples/echarts/basic.vue +31 -31
  182. package/docs/examples/echarts/dynamic.vue +43 -43
  183. package/docs/examples/echarts/line.vue +46 -46
  184. package/docs/examples/echarts/pie.vue +44 -44
  185. package/docs/examples/editor/basic.vue +15 -15
  186. package/docs/examples/form/basic.vue +688 -688
  187. package/docs/examples/form/init.vue +76 -76
  188. package/docs/examples/form/master-detail.vue +203 -203
  189. package/docs/examples/form/rule-format.vue +179 -179
  190. package/docs/examples/form/view-table.vue +378 -378
  191. package/docs/examples/guid/basic.vue +10 -10
  192. package/docs/examples/guid/size.vue +13 -13
  193. package/docs/examples/hpanel/basic.vue +79 -79
  194. package/docs/examples/icon/basic.vue +9 -9
  195. package/docs/examples/icon/rotate-flip.vue +9 -9
  196. package/docs/examples/icon/size.vue +7 -7
  197. package/docs/examples/input/basic.vue +10 -10
  198. package/docs/examples/input/clearable.vue +12 -12
  199. package/docs/examples/input/disabled.vue +6 -6
  200. package/docs/examples/input/icon.vue +23 -23
  201. package/docs/examples/input/password.vue +18 -18
  202. package/docs/examples/input/size.vue +13 -13
  203. package/docs/examples/input/textarea.vue +25 -25
  204. package/docs/examples/input/word-limit.vue +28 -28
  205. package/docs/examples/input-button/basic.vue +33 -33
  206. package/docs/examples/input-cards/basic.vue +79 -79
  207. package/docs/examples/input-code/basic.vue +29 -29
  208. package/docs/examples/input-color/basic.vue +10 -10
  209. package/docs/examples/input-color/disabled.vue +13 -13
  210. package/docs/examples/input-color/format.vue +17 -17
  211. package/docs/examples/input-color/no-alpha.vue +13 -13
  212. package/docs/examples/input-color/only-button.vue +15 -15
  213. package/docs/examples/input-color/predefine.vue +31 -31
  214. package/docs/examples/input-color/size.vue +15 -15
  215. package/docs/examples/input-layer/basic.vue +85 -85
  216. package/docs/examples/input-layer/render-vnode-page.vue +160 -160
  217. package/docs/examples/input-layer/render-vnode.vue +127 -127
  218. package/docs/examples/input-rows/basic.vue +73 -73
  219. package/docs/examples/input-rows/drag.vue +48 -48
  220. package/docs/examples/input-rows/layer-form.vue +85 -85
  221. package/docs/examples/input-rows/nested.vue +91 -91
  222. package/docs/examples/input-tag/basic.vue +27 -27
  223. package/docs/examples/input-tag/colors.vue +23 -23
  224. package/docs/examples/input-tag/readonly.vue +17 -17
  225. package/docs/examples/layer/basic.vue +43 -43
  226. package/docs/examples/layer/custom-buttons.vue +61 -61
  227. package/docs/examples/layer/drawer.vue +37 -37
  228. package/docs/examples/layer/full.vue +38 -38
  229. package/docs/examples/layer/modal.vue +34 -34
  230. package/docs/examples/layer/steps.vue +46 -46
  231. package/docs/examples/layer-form/basic.vue +76 -76
  232. package/docs/examples/layer-form/config.vue +82 -82
  233. package/docs/examples/layer-form/size.vue +72 -72
  234. package/docs/examples/layout/basic.vue +36 -36
  235. package/docs/examples/layout/custom-size.vue +50 -50
  236. package/docs/examples/layout/disable-move.vue +37 -37
  237. package/docs/examples/layout/hide-mid-when-narrow.vue +96 -96
  238. package/docs/examples/layout/min-size.vue +73 -73
  239. package/docs/examples/layout/percent-size.vue +80 -80
  240. package/docs/examples/layout/simple.vue +22 -22
  241. package/docs/examples/layout/top-side.vue +34 -34
  242. package/docs/examples/map/basic.vue +22 -22
  243. package/docs/examples/menu/basic.vue +58 -58
  244. package/docs/examples/menu/collapsed.vue +49 -49
  245. package/docs/examples/menu/horizontal.vue +44 -44
  246. package/docs/examples/menu/selection-test.vue +104 -104
  247. package/docs/examples/menu/theme.vue +46 -46
  248. package/docs/examples/menu/vertical.vue +46 -46
  249. package/docs/examples/number/advanced.vue +143 -143
  250. package/docs/examples/number/basic.vue +63 -63
  251. package/docs/examples/number/disabled.vue +49 -49
  252. package/docs/examples/number/size.vue +42 -42
  253. package/docs/examples/number/slots.vue +123 -123
  254. package/docs/examples/number/step-strictly.vue +41 -41
  255. package/docs/examples/number/step.vue +47 -47
  256. package/docs/examples/page/basic.vue +41 -41
  257. package/docs/examples/page/code-table-model.vue +428 -428
  258. package/docs/examples/page/dept-user-management.vue +211 -211
  259. package/docs/examples/page/init.vue +87 -87
  260. package/docs/examples/page/log.vue +453 -453
  261. package/docs/examples/page/user-management.vue +313 -313
  262. package/docs/examples/panel/tool-buttons.vue +18 -18
  263. package/docs/examples/radio/basic.vue +17 -17
  264. package/docs/examples/radio/button.vue +17 -17
  265. package/docs/examples/radio/color.vue +18 -18
  266. package/docs/examples/radio/disabled.vue +17 -17
  267. package/docs/examples/radio/size.vue +29 -29
  268. package/docs/examples/rate/basic.vue +24 -24
  269. package/docs/examples/rate/half.vue +24 -24
  270. package/docs/examples/rate/readonly.vue +11 -11
  271. package/docs/examples/rate/text.vue +37 -37
  272. package/docs/examples/select/basic.vue +16 -16
  273. package/docs/examples/select/clearable.vue +22 -22
  274. package/docs/examples/select/disabled.vue +31 -31
  275. package/docs/examples/select/filterable.vue +24 -24
  276. package/docs/examples/select/group.vue +23 -23
  277. package/docs/examples/select/icon.vue +16 -16
  278. package/docs/examples/select/multiple.vue +18 -18
  279. package/docs/examples/select/size.vue +39 -39
  280. package/docs/examples/slider/basic.vue +42 -42
  281. package/docs/examples/slider/disabled.vue +17 -17
  282. package/docs/examples/slider/marks.vue +30 -30
  283. package/docs/examples/slider/size.vue +37 -37
  284. package/docs/examples/slider/tooltip.vue +36 -36
  285. package/docs/examples/slider/vertical.vue +26 -26
  286. package/docs/examples/slider-captcha/basic.vue +44 -44
  287. package/docs/examples/slider-captcha/custom.vue +48 -48
  288. package/docs/examples/switch/basic.vue +16 -16
  289. package/docs/examples/switch/disabled.vue +13 -13
  290. package/docs/examples/switch/loading.vue +13 -13
  291. package/docs/examples/switch/size.vue +15 -15
  292. package/docs/examples/switch/text.vue +13 -13
  293. package/docs/examples/table/action-filter.vue +126 -126
  294. package/docs/examples/table/actions.vue +116 -116
  295. package/docs/examples/table/add-row.vue +98 -98
  296. package/docs/examples/table/basic.vue +168 -168
  297. package/docs/examples/table/checkbox-layout.vue +68 -68
  298. package/docs/examples/table/column-filter.vue +96 -96
  299. package/docs/examples/table/custom-layout.vue +115 -115
  300. package/docs/examples/table/custom-merge-cell.vue +206 -206
  301. package/docs/examples/table/dynamic-type.vue +73 -73
  302. package/docs/examples/table/editable.vue +290 -262
  303. package/docs/examples/table/field-selection.vue +87 -87
  304. package/docs/examples/table/frozen-column.vue +140 -140
  305. package/docs/examples/table/height-mode.vue +99 -99
  306. package/docs/examples/table/icon.vue +85 -85
  307. package/docs/examples/table/layer-form.vue +133 -133
  308. package/docs/examples/table/link.vue +66 -66
  309. package/docs/examples/table/merge-cell.vue +78 -78
  310. package/docs/examples/table/merge-header.vue +86 -86
  311. package/docs/examples/table/multiple-disabled.vue +112 -112
  312. package/docs/examples/table/multiple.vue +188 -188
  313. package/docs/examples/table/pagination.vue +151 -151
  314. package/docs/examples/table/row-drag.vue +67 -67
  315. package/docs/examples/table/row-fixed.vue +61 -61
  316. package/docs/examples/table/single-selection.vue +64 -64
  317. package/docs/examples/table/sub-table-lazy.vue +97 -97
  318. package/docs/examples/table/sub-table.vue +103 -103
  319. package/docs/examples/table/tag.vue +43 -43
  320. package/docs/examples/table/tree-column.vue +119 -119
  321. package/docs/examples/table/tree-data.vue +141 -141
  322. package/docs/examples/table/tree-default-expand-all.vue +60 -60
  323. package/docs/examples/table/tree-lazy.vue +80 -80
  324. package/docs/examples/table/tree-set-selection.vue +75 -75
  325. package/docs/examples/table-panel/basic.vue +229 -229
  326. package/docs/examples/table-panel/batch-operations.vue +286 -286
  327. package/docs/examples/table-panel/button-visibility.vue +88 -88
  328. package/docs/examples/table-panel/card.vue +101 -101
  329. package/docs/examples/table-panel/column-filter.vue +116 -116
  330. package/docs/examples/table-panel/filter.vue +219 -219
  331. package/docs/examples/table-panel/get-selection.vue +111 -111
  332. package/docs/examples/table-panel/mask.vue +151 -151
  333. package/docs/examples/table-panel/model-value.vue +87 -87
  334. package/docs/examples/table-panel/multiple-selection.vue +243 -243
  335. package/docs/examples/table-panel/pagination-select-state-key.vue +176 -176
  336. package/docs/examples/table-panel/pagination.vue +133 -133
  337. package/docs/examples/table-panel/remote-selection.vue +159 -159
  338. package/docs/examples/table-panel/search-list.vue +207 -207
  339. package/docs/examples/table-panel/sub-table-lazy.vue +118 -118
  340. package/docs/examples/table-panel/tree-parent-key.vue +67 -67
  341. package/docs/examples/tabs/basic.vue +98 -98
  342. package/docs/examples/time/base.vue +67 -67
  343. package/docs/examples/title/basic.vue +87 -87
  344. package/docs/examples/tree/accordion.vue +46 -46
  345. package/docs/examples/tree/basic.vue +50 -50
  346. package/docs/examples/tree/buttons.vue +53 -53
  347. package/docs/examples/tree/check-strictly.vue +53 -53
  348. package/docs/examples/tree/checkable.vue +52 -52
  349. package/docs/examples/tree/custom-keys.vue +39 -39
  350. package/docs/examples/tree/default-expanded.vue +52 -52
  351. package/docs/examples/tree/draggable.vue +29 -29
  352. package/docs/examples/tree/expand-on-click.vue +39 -39
  353. package/docs/examples/tree/flat-data.vue +20 -20
  354. package/docs/examples/tree/icon.vue +40 -40
  355. package/docs/examples/tree/load-data.vue +37 -37
  356. package/docs/examples/tree/methods.vue +74 -74
  357. package/docs/examples/tree/theme.vue +33 -33
  358. package/docs/examples/tree-select/basic.vue +47 -47
  359. package/docs/examples/tree-select/lazy.vue +42 -42
  360. package/docs/examples/upload/accept.vue +31 -31
  361. package/docs/examples/upload/basic.vue +12 -12
  362. package/docs/examples/upload/drag.vue +11 -11
  363. package/docs/examples/upload/image.vue +17 -17
  364. package/docs/examples/upload/limit.vue +20 -20
  365. package/docs/examples/upload/multiple.vue +17 -17
  366. package/docs/examples/upload/readonly.vue +17 -17
  367. package/docs/examples/utils/cipher.vue +160 -160
  368. package/docs/examples/utils/common.vue +153 -153
  369. package/docs/examples/utils/date.vue +56 -56
  370. package/docs/examples/utils/dom.vue +52 -52
  371. package/docs/examples/utils/is.vue +70 -70
  372. package/docs/examples/workflow/basic.vue +265 -265
  373. package/docs/examples/workflow-viewer/basic.vue +248 -248
  374. 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>