@a2simcode/ui 0.0.128 → 0.0.130

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 (342) 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/index.d.ts +2 -1
  6. package/dist/components/input-decorated-title/index.d.ts +54 -0
  7. package/dist/components/input-decorated-title/src/input-decorated-title.vue.d.ts +43 -0
  8. package/dist/components/title/index.d.ts +3 -0
  9. package/dist/components/title/src/title.vue.d.ts +5 -0
  10. package/dist/simcode-ui.es.js +1437 -1357
  11. package/dist/simcode-ui.umd.js +2 -2
  12. package/dist/stats.html +1 -1
  13. package/dist/ui.css +1 -1
  14. package/docs/components/autocomplete.md +89 -89
  15. package/docs/components/barcode.md +101 -101
  16. package/docs/components/button-select.md +24 -24
  17. package/docs/components/button.md +117 -117
  18. package/docs/components/buttons.md +119 -119
  19. package/docs/components/cascader-select.md +114 -114
  20. package/docs/components/checkbox.md +114 -114
  21. package/docs/components/code-mirror.md +85 -85
  22. package/docs/components/collapse.md +26 -26
  23. package/docs/components/comp.md +71 -71
  24. package/docs/components/count-up.md +24 -24
  25. package/docs/components/count.md +24 -24
  26. package/docs/components/data-panel.md +24 -24
  27. package/docs/components/date.md +76 -76
  28. package/docs/components/dialog-full.md +112 -112
  29. package/docs/components/dialog.md +127 -127
  30. package/docs/components/divider.md +24 -24
  31. package/docs/components/drawer.md +127 -127
  32. package/docs/components/dynamic-layer.md +118 -118
  33. package/docs/components/echarts.md +72 -72
  34. package/docs/components/editor.md +24 -24
  35. package/docs/components/form.md +42 -42
  36. package/docs/components/guid.md +39 -39
  37. package/docs/components/hpanel.md +24 -24
  38. package/docs/components/icon.md +56 -56
  39. package/docs/components/input-button.md +24 -24
  40. package/docs/components/input-code.md +24 -24
  41. package/docs/components/input-color.md +114 -114
  42. package/docs/components/input-decorated-title.md +24 -0
  43. package/docs/components/input-layer.md +26 -26
  44. package/docs/components/input-rows.md +370 -370
  45. package/docs/components/input-tag.md +50 -50
  46. package/docs/components/input.md +129 -129
  47. package/docs/components/layer-form.md +61 -61
  48. package/docs/components/layer.md +127 -127
  49. package/docs/components/layout.md +132 -132
  50. package/docs/components/map.md +24 -24
  51. package/docs/components/menu.md +121 -121
  52. package/docs/components/meta/buttons.ts +76 -76
  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 +165 -165
  58. package/docs/components/meta/input-cards.ts +112 -112
  59. package/docs/components/meta/input-color.ts +243 -243
  60. package/docs/components/meta/input-decorated-title.ts +38 -0
  61. package/docs/components/meta/input-rows.ts +113 -113
  62. package/docs/components/meta/layer-form.ts +56 -56
  63. package/docs/components/meta/map.ts +68 -68
  64. package/docs/components/meta/panel.ts +152 -152
  65. package/docs/components/meta/slider.ts +270 -270
  66. package/docs/components/meta/table-panel.ts +232 -232
  67. package/docs/components/meta/table.ts +391 -391
  68. package/docs/components/meta/tabs.ts +146 -146
  69. package/docs/components/meta/title.ts +80 -80
  70. package/docs/components/meta/tree-select.ts +199 -199
  71. package/docs/components/meta/workflow-viewer.ts +55 -55
  72. package/docs/components/number.md +124 -124
  73. package/docs/components/page.md +87 -87
  74. package/docs/components/panel.md +37 -37
  75. package/docs/components/radio.md +87 -87
  76. package/docs/components/rate.md +71 -71
  77. package/docs/components/select.md +133 -133
  78. package/docs/components/slider-captcha.md +41 -41
  79. package/docs/components/slider.md +101 -101
  80. package/docs/components/switch.md +90 -90
  81. package/docs/components/table-panel.md +236 -236
  82. package/docs/components/table.md +391 -391
  83. package/docs/components/tabs.md +26 -26
  84. package/docs/components/title.md +24 -24
  85. package/docs/components/tree.md +207 -207
  86. package/docs/components/upload.md +117 -117
  87. package/docs/components/workflow-viewer.md +21 -21
  88. package/docs/components/workflow.md +21 -21
  89. package/docs/examples/autocomplete/advanced.vue +35 -35
  90. package/docs/examples/autocomplete/basic.vue +32 -32
  91. package/docs/examples/autocomplete/clearable.vue +33 -33
  92. package/docs/examples/autocomplete/custom-template.vue +49 -49
  93. package/docs/examples/autocomplete/disabled.vue +33 -33
  94. package/docs/examples/autocomplete/icon.vue +37 -37
  95. package/docs/examples/barcode/all-types.vue +380 -380
  96. package/docs/examples/barcode/basic.vue +14 -14
  97. package/docs/examples/barcode/props-appearance.vue +243 -243
  98. package/docs/examples/barcode/props-geometry.vue +143 -143
  99. package/docs/examples/barcode/props-logic.vue +216 -216
  100. package/docs/examples/barcode/props-symbology.vue +199 -199
  101. package/docs/examples/barcode/props-text.vue +268 -268
  102. package/docs/examples/button/basic.vue +7 -7
  103. package/docs/examples/button/danger-ghost.vue +17 -17
  104. package/docs/examples/button/disabled.vue +10 -10
  105. package/docs/examples/button/loading.vue +6 -6
  106. package/docs/examples/button/shape.vue +7 -7
  107. package/docs/examples/button/size.vue +14 -14
  108. package/docs/examples/button/type.vue +9 -9
  109. package/docs/examples/button-select/basic.vue +19 -19
  110. package/docs/examples/buttons/basic.vue +45 -45
  111. package/docs/examples/buttons/disabled.vue +36 -36
  112. package/docs/examples/buttons/dropdown.vue +63 -63
  113. package/docs/examples/buttons/group.vue +52 -52
  114. package/docs/examples/buttons/link.vue +47 -47
  115. package/docs/examples/buttons/popup.vue +39 -39
  116. package/docs/examples/buttons/size.vue +45 -45
  117. package/docs/examples/cascader-select/basic.vue +28 -28
  118. package/docs/examples/cascader-select/clearable.vue +34 -34
  119. package/docs/examples/cascader-select/disabled.vue +43 -43
  120. package/docs/examples/cascader-select/filterable.vue +37 -37
  121. package/docs/examples/cascader-select/methods.vue +84 -84
  122. package/docs/examples/cascader-select/multiple.vue +38 -38
  123. package/docs/examples/cascader-select/slot.vue +45 -45
  124. package/docs/examples/checkbox/basic.vue +18 -18
  125. package/docs/examples/checkbox/button.vue +19 -19
  126. package/docs/examples/checkbox/color.vue +25 -25
  127. package/docs/examples/checkbox/disabled.vue +17 -17
  128. package/docs/examples/checkbox/min-max.vue +20 -20
  129. package/docs/examples/checkbox/mixed.vue +56 -56
  130. package/docs/examples/checkbox/size.vue +28 -28
  131. package/docs/examples/code-mirror/basic.vue +11 -11
  132. package/docs/examples/code-mirror/events.vue +42 -42
  133. package/docs/examples/code-mirror/height.vue +25 -25
  134. package/docs/examples/code-mirror/mode.vue +33 -33
  135. package/docs/examples/code-mirror/readonly.vue +14 -14
  136. package/docs/examples/collapse/basic.vue +82 -82
  137. package/docs/examples/comp/basic.vue +7 -7
  138. package/docs/examples/comp/collapse.vue +38 -38
  139. package/docs/examples/comp/tabs.vue +38 -38
  140. package/docs/examples/count/basic.vue +101 -101
  141. package/docs/examples/count-up/basic.vue +89 -89
  142. package/docs/examples/data-panel/basic.vue +110 -110
  143. package/docs/examples/date/basic.vue +73 -73
  144. package/docs/examples/date/default-value.vue +59 -59
  145. package/docs/examples/date/format.vue +75 -75
  146. package/docs/examples/date/range.vue +66 -66
  147. package/docs/examples/date/types.vue +79 -79
  148. package/docs/examples/decorated-title/basic.vue +31 -31
  149. package/docs/examples/dialog/basic.vue +36 -36
  150. package/docs/examples/dialog/custom-buttons.vue +44 -44
  151. package/docs/examples/dialog/fullscreen.vue +23 -23
  152. package/docs/examples/dialog/no-mask.vue +17 -17
  153. package/docs/examples/dialog/size.vue +44 -44
  154. package/docs/examples/dialog/steps.vue +57 -57
  155. package/docs/examples/dialog-full/basic.vue +29 -29
  156. package/docs/examples/dialog-full/custom-buttons.vue +45 -45
  157. package/docs/examples/dialog-full/no-buttons.vue +18 -18
  158. package/docs/examples/dialog-full/no-header.vue +27 -27
  159. package/docs/examples/dialog-full/steps.vue +71 -71
  160. package/docs/examples/divider/basic.vue +52 -52
  161. package/docs/examples/drawer/basic.vue +35 -35
  162. package/docs/examples/drawer/custom-buttons.vue +34 -34
  163. package/docs/examples/drawer/direction.vue +47 -47
  164. package/docs/examples/drawer/mask.vue +36 -36
  165. package/docs/examples/drawer/no-buttons.vue +20 -20
  166. package/docs/examples/drawer/size.vue +28 -28
  167. package/docs/examples/dynamic-layer/basic.vue +33 -33
  168. package/docs/examples/dynamic-layer/custom-buttons.vue +43 -43
  169. package/docs/examples/dynamic-layer/form.vue +73 -73
  170. package/docs/examples/dynamic-layer/steps.vue +52 -52
  171. package/docs/examples/dynamic-layer/types.vue +40 -40
  172. package/docs/examples/echarts/basic.vue +31 -31
  173. package/docs/examples/echarts/dynamic.vue +43 -43
  174. package/docs/examples/echarts/line.vue +46 -46
  175. package/docs/examples/echarts/pie.vue +44 -44
  176. package/docs/examples/editor/basic.vue +15 -15
  177. package/docs/examples/form/basic.vue +539 -539
  178. package/docs/examples/form/init.vue +76 -76
  179. package/docs/examples/guid/basic.vue +10 -10
  180. package/docs/examples/guid/size.vue +13 -13
  181. package/docs/examples/hpanel/basic.vue +79 -79
  182. package/docs/examples/icon/basic.vue +9 -9
  183. package/docs/examples/icon/rotate-flip.vue +9 -9
  184. package/docs/examples/icon/size.vue +7 -7
  185. package/docs/examples/input/basic.vue +10 -10
  186. package/docs/examples/input/clearable.vue +12 -12
  187. package/docs/examples/input/disabled.vue +6 -6
  188. package/docs/examples/input/icon.vue +23 -23
  189. package/docs/examples/input/password.vue +18 -18
  190. package/docs/examples/input/size.vue +13 -13
  191. package/docs/examples/input/textarea.vue +25 -25
  192. package/docs/examples/input/word-limit.vue +28 -28
  193. package/docs/examples/input-button/basic.vue +33 -33
  194. package/docs/examples/input-code/basic.vue +29 -29
  195. package/docs/examples/input-color/basic.vue +10 -10
  196. package/docs/examples/input-color/disabled.vue +13 -13
  197. package/docs/examples/input-color/format.vue +17 -17
  198. package/docs/examples/input-color/no-alpha.vue +13 -13
  199. package/docs/examples/input-color/only-button.vue +15 -15
  200. package/docs/examples/input-color/predefine.vue +31 -31
  201. package/docs/examples/input-color/size.vue +15 -15
  202. package/docs/examples/input-decorated-title/basic.vue +23 -0
  203. package/docs/examples/input-layer/basic.vue +69 -69
  204. package/docs/examples/input-rows/basic.vue +73 -73
  205. package/docs/examples/input-rows/drag.vue +48 -48
  206. package/docs/examples/input-rows/layer-form.vue +85 -85
  207. package/docs/examples/input-rows/nested.vue +91 -91
  208. package/docs/examples/input-tag/basic.vue +27 -27
  209. package/docs/examples/input-tag/colors.vue +23 -23
  210. package/docs/examples/input-tag/readonly.vue +17 -17
  211. package/docs/examples/layer/basic.vue +43 -43
  212. package/docs/examples/layer/custom-buttons.vue +61 -61
  213. package/docs/examples/layer/drawer.vue +37 -37
  214. package/docs/examples/layer/full.vue +38 -38
  215. package/docs/examples/layer/modal.vue +34 -34
  216. package/docs/examples/layer/steps.vue +46 -46
  217. package/docs/examples/layer-form/basic.vue +76 -76
  218. package/docs/examples/layer-form/config.vue +82 -82
  219. package/docs/examples/layer-form/size.vue +72 -72
  220. package/docs/examples/layout/basic.vue +36 -36
  221. package/docs/examples/layout/custom-size.vue +50 -50
  222. package/docs/examples/layout/disable-move.vue +37 -37
  223. package/docs/examples/layout/hide-mid-when-narrow.vue +96 -96
  224. package/docs/examples/layout/min-size.vue +73 -73
  225. package/docs/examples/layout/percent-size.vue +80 -80
  226. package/docs/examples/layout/simple.vue +22 -22
  227. package/docs/examples/layout/top-side.vue +34 -34
  228. package/docs/examples/map/basic.vue +22 -22
  229. package/docs/examples/menu/basic.vue +58 -58
  230. package/docs/examples/menu/collapsed.vue +49 -49
  231. package/docs/examples/menu/horizontal.vue +44 -44
  232. package/docs/examples/menu/selection-test.vue +104 -104
  233. package/docs/examples/menu/theme.vue +46 -46
  234. package/docs/examples/menu/vertical.vue +46 -46
  235. package/docs/examples/number/advanced.vue +143 -143
  236. package/docs/examples/number/basic.vue +63 -63
  237. package/docs/examples/number/disabled.vue +49 -49
  238. package/docs/examples/number/size.vue +42 -42
  239. package/docs/examples/number/slots.vue +123 -123
  240. package/docs/examples/number/step-strictly.vue +41 -41
  241. package/docs/examples/number/step.vue +47 -47
  242. package/docs/examples/page/basic.vue +41 -41
  243. package/docs/examples/page/dept-user-management.vue +211 -211
  244. package/docs/examples/page/init.vue +87 -87
  245. package/docs/examples/page/log.vue +453 -453
  246. package/docs/examples/page/user-management.vue +313 -313
  247. package/docs/examples/panel/tool-buttons.vue +18 -18
  248. package/docs/examples/radio/basic.vue +17 -17
  249. package/docs/examples/radio/button.vue +17 -17
  250. package/docs/examples/radio/color.vue +18 -18
  251. package/docs/examples/radio/disabled.vue +17 -17
  252. package/docs/examples/radio/size.vue +29 -29
  253. package/docs/examples/rate/basic.vue +24 -24
  254. package/docs/examples/rate/half.vue +24 -24
  255. package/docs/examples/rate/readonly.vue +11 -11
  256. package/docs/examples/rate/text.vue +32 -32
  257. package/docs/examples/select/basic.vue +16 -16
  258. package/docs/examples/select/clearable.vue +22 -22
  259. package/docs/examples/select/disabled.vue +31 -31
  260. package/docs/examples/select/filterable.vue +24 -24
  261. package/docs/examples/select/group.vue +23 -23
  262. package/docs/examples/select/icon.vue +16 -16
  263. package/docs/examples/select/multiple.vue +18 -18
  264. package/docs/examples/select/size.vue +39 -39
  265. package/docs/examples/slider/basic.vue +42 -42
  266. package/docs/examples/slider/disabled.vue +17 -17
  267. package/docs/examples/slider/marks.vue +30 -30
  268. package/docs/examples/slider/size.vue +37 -37
  269. package/docs/examples/slider/tooltip.vue +36 -36
  270. package/docs/examples/slider/vertical.vue +26 -26
  271. package/docs/examples/slider-captcha/basic.vue +44 -44
  272. package/docs/examples/slider-captcha/custom.vue +48 -48
  273. package/docs/examples/switch/basic.vue +16 -16
  274. package/docs/examples/switch/disabled.vue +13 -13
  275. package/docs/examples/switch/loading.vue +13 -13
  276. package/docs/examples/switch/size.vue +15 -15
  277. package/docs/examples/switch/text.vue +13 -13
  278. package/docs/examples/table/action-filter.vue +126 -126
  279. package/docs/examples/table/actions.vue +116 -116
  280. package/docs/examples/table/add-row.vue +103 -103
  281. package/docs/examples/table/basic.vue +168 -168
  282. package/docs/examples/table/checkbox-layout.vue +68 -68
  283. package/docs/examples/table/custom-layout.vue +115 -115
  284. package/docs/examples/table/dynamic-type.vue +73 -73
  285. package/docs/examples/table/editable.vue +262 -262
  286. package/docs/examples/table/field-selection.vue +87 -87
  287. package/docs/examples/table/frozen-column.vue +140 -140
  288. package/docs/examples/table/height-mode.vue +99 -99
  289. package/docs/examples/table/icon.vue +85 -85
  290. package/docs/examples/table/link.vue +66 -66
  291. package/docs/examples/table/multiple.vue +188 -188
  292. package/docs/examples/table/pagination.vue +151 -151
  293. package/docs/examples/table/single-selection.vue +64 -64
  294. package/docs/examples/table/sub-table-lazy.vue +97 -97
  295. package/docs/examples/table/sub-table.vue +103 -103
  296. package/docs/examples/table/tag.vue +43 -43
  297. package/docs/examples/table/tree-column.vue +119 -119
  298. package/docs/examples/table/tree-data.vue +141 -141
  299. package/docs/examples/table/tree-default-expand-all.vue +60 -60
  300. package/docs/examples/table/tree-lazy.vue +80 -80
  301. package/docs/examples/table/tree-set-selection.vue +75 -75
  302. package/docs/examples/table-panel/basic.vue +228 -228
  303. package/docs/examples/table-panel/batch-operations.vue +285 -285
  304. package/docs/examples/table-panel/button-visibility.vue +88 -88
  305. package/docs/examples/table-panel/filter.vue +219 -219
  306. package/docs/examples/table-panel/get-selection.vue +111 -111
  307. package/docs/examples/table-panel/multiple-selection.vue +243 -243
  308. package/docs/examples/table-panel/pagination.vue +133 -133
  309. package/docs/examples/table-panel/sub-table-lazy.vue +118 -118
  310. package/docs/examples/table-panel/tree-parent-key.vue +67 -67
  311. package/docs/examples/tabs/basic.vue +98 -98
  312. package/docs/examples/time/base.vue +67 -67
  313. package/docs/examples/title/basic.vue +87 -80
  314. package/docs/examples/tree/accordion.vue +46 -46
  315. package/docs/examples/tree/basic.vue +50 -50
  316. package/docs/examples/tree/buttons.vue +53 -53
  317. package/docs/examples/tree/checkable.vue +52 -52
  318. package/docs/examples/tree/custom-keys.vue +39 -39
  319. package/docs/examples/tree/default-expanded.vue +52 -52
  320. package/docs/examples/tree/draggable.vue +29 -29
  321. package/docs/examples/tree/expand-on-click.vue +39 -39
  322. package/docs/examples/tree/flat-data.vue +20 -20
  323. package/docs/examples/tree/icon.vue +40 -40
  324. package/docs/examples/tree/load-data.vue +37 -37
  325. package/docs/examples/tree/methods.vue +74 -74
  326. package/docs/examples/tree/theme.vue +33 -33
  327. package/docs/examples/tree-select/basic.vue +47 -47
  328. package/docs/examples/upload/accept.vue +31 -31
  329. package/docs/examples/upload/basic.vue +12 -12
  330. package/docs/examples/upload/drag.vue +11 -11
  331. package/docs/examples/upload/image.vue +17 -17
  332. package/docs/examples/upload/limit.vue +20 -20
  333. package/docs/examples/upload/multiple.vue +17 -17
  334. package/docs/examples/upload/readonly.vue +17 -17
  335. package/docs/examples/utils/cipher.vue +160 -160
  336. package/docs/examples/utils/common.vue +153 -153
  337. package/docs/examples/utils/date.vue +56 -56
  338. package/docs/examples/utils/dom.vue +52 -52
  339. package/docs/examples/utils/is.vue +70 -70
  340. package/docs/examples/workflow/basic.vue +265 -265
  341. package/docs/examples/workflow-viewer/basic.vue +248 -248
  342. package/package.json +23 -23
@@ -1,268 +1,268 @@
1
- <template>
2
- <div class="props-demo-container">
3
- <h2>文本设置属性</h2>
4
-
5
- <div class="demo-section">
6
- <h3>includetext - 是否显示人眼可读文本</h3>
7
- <div class="demo-grid">
8
- <div class="demo-item">
9
- <p>includetext: true (默认)</p>
10
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" :includetext="true" />
11
- </div>
12
- <div class="demo-item">
13
- <p>includetext: false</p>
14
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" :includetext="false" />
15
- </div>
16
- </div>
17
- </div>
18
-
19
- <div class="demo-section">
20
- <h3>alttext - 替代显示文本</h3>
21
- <p class="section-desc">不改变条码逻辑,仅改变显示的字</p>
22
- <div class="demo-grid">
23
- <div class="demo-item">
24
- <p>alttext: '' (默认,显示原始值)</p>
25
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" />
26
- </div>
27
- <div class="demo-item">
28
- <p>alttext: '自定义文本'</p>
29
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" alttext="自定义文本" />
30
- </div>
31
- <div class="demo-item">
32
- <p>alttext: 'Product Code: ABC123'</p>
33
- <j-barcode
34
- v-model="code"
35
- bcid="code128"
36
- :height="15"
37
- :scale="2"
38
- alttext="Product Code: ABC123"
39
- />
40
- </div>
41
- </div>
42
- </div>
43
-
44
- <div class="demo-section">
45
- <h3>textfont - 字体</h3>
46
- <div class="demo-grid">
47
- <div class="demo-item">
48
- <p>textfont: 'OCR-B' (默认)</p>
49
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textfont="OCR-B" />
50
- </div>
51
- <div class="demo-item">
52
- <p>textfont: 'OCR-A'</p>
53
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textfont="OCR-A" />
54
- </div>
55
- <div class="demo-item">
56
- <p>textfont: 'Helvetica'</p>
57
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textfont="Helvetica" />
58
- </div>
59
- <div class="demo-item">
60
- <p>textfont: 'Courier'</p>
61
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textfont="Courier" />
62
- </div>
63
- </div>
64
- </div>
65
-
66
- <div class="demo-section">
67
- <h3>textsize - 字体大小</h3>
68
- <div class="demo-grid">
69
- <div class="demo-item">
70
- <p>textsize: 8</p>
71
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" :textsize="8" />
72
- </div>
73
- <div class="demo-item">
74
- <p>textsize: 10 (默认)</p>
75
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" :textsize="10" />
76
- </div>
77
- <div class="demo-item">
78
- <p>textsize: 14</p>
79
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" :textsize="14" />
80
- </div>
81
- <div class="demo-item">
82
- <p>textsize: 18</p>
83
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" :textsize="18" />
84
- </div>
85
- </div>
86
- </div>
87
-
88
- <div class="demo-section">
89
- <h3>textxalign - 文本水平对齐</h3>
90
- <div class="demo-grid">
91
- <div class="demo-item">
92
- <p>textxalign: 'center' (默认)</p>
93
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textxalign="center" />
94
- </div>
95
- <div class="demo-item">
96
- <p>textxalign: 'left'</p>
97
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textxalign="left" />
98
- </div>
99
- <div class="demo-item">
100
- <p>textxalign: 'right'</p>
101
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textxalign="right" />
102
- </div>
103
- <div class="demo-item">
104
- <p>textxalign: 'offleft'</p>
105
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textxalign="offleft" />
106
- </div>
107
- <div class="demo-item">
108
- <p>textxalign: 'offright'</p>
109
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textxalign="offright" />
110
- </div>
111
- </div>
112
- </div>
113
-
114
- <div class="demo-section">
115
- <h3>textyalign - 文本垂直对齐</h3>
116
- <div class="demo-grid">
117
- <div class="demo-item">
118
- <p>textyalign: 'bottom' (默认)</p>
119
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textyalign="bottom" />
120
- </div>
121
- <div class="demo-item">
122
- <p>textyalign: 'top'</p>
123
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textyalign="top" />
124
- </div>
125
- <div class="demo-item">
126
- <p>textyalign: 'above'</p>
127
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textyalign="above" />
128
- </div>
129
- <div class="demo-item">
130
- <p>textyalign: 'center'</p>
131
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textyalign="center" />
132
- </div>
133
- </div>
134
- </div>
135
-
136
- <div class="demo-section">
137
- <h3>textxoffset / textyoffset - 文本偏移</h3>
138
- <div class="demo-grid">
139
- <div class="demo-item">
140
- <p>textxoffset: 0, textyoffset: 0 (默认)</p>
141
- <j-barcode
142
- v-model="code"
143
- bcid="code128"
144
- :height="15"
145
- :scale="2"
146
- :textxoffset="0"
147
- :textyoffset="0"
148
- />
149
- </div>
150
- <div class="demo-item">
151
- <p>textxoffset: 10, textyoffset: 0</p>
152
- <j-barcode
153
- v-model="code"
154
- bcid="code128"
155
- :height="15"
156
- :scale="2"
157
- :textxoffset="10"
158
- :textyoffset="0"
159
- />
160
- </div>
161
- <div class="demo-item">
162
- <p>textxoffset: 0, textyoffset: 5</p>
163
- <j-barcode
164
- v-model="code"
165
- bcid="code128"
166
- :height="15"
167
- :scale="2"
168
- :textxoffset="0"
169
- :textyoffset="5"
170
- />
171
- </div>
172
- <div class="demo-item">
173
- <p>textxoffset: -10, textyoffset: -5</p>
174
- <j-barcode
175
- v-model="code"
176
- bcid="code128"
177
- :height="15"
178
- :scale="2"
179
- :textxoffset="-10"
180
- :textyoffset="-5"
181
- />
182
- </div>
183
- </div>
184
- </div>
185
-
186
- <div class="demo-section">
187
- <h3>textcolor - 文本颜色</h3>
188
- <div class="demo-grid">
189
- <div class="demo-item">
190
- <p>textcolor: '' (默认,跟随barcolor)</p>
191
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" />
192
- </div>
193
- <div class="demo-item">
194
- <p>textcolor: 'ff0000' (红色)</p>
195
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textcolor="ff0000" />
196
- </div>
197
- <div class="demo-item">
198
- <p>textcolor: '0066cc' (蓝色)</p>
199
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textcolor="0066cc" />
200
- </div>
201
- <div class="demo-item">
202
- <p>textcolor: '00aa00' (绿色)</p>
203
- <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textcolor="00aa00" />
204
- </div>
205
- </div>
206
- </div>
207
- </div>
208
- </template>
209
-
210
- <script setup lang="ts">
211
- import { ref } from 'vue'
212
-
213
- const code = ref('1234567890')
214
- </script>
215
-
216
- <style scoped>
217
- .props-demo-container {
218
- max-width: 1200px;
219
- margin: 0 auto;
220
- padding: 20px;
221
- }
222
-
223
- .demo-section {
224
- margin-bottom: 40px;
225
- }
226
-
227
- .demo-section h3 {
228
- margin-bottom: 10px;
229
- color: #303133;
230
- font-size: 18px;
231
- border-left: 4px solid #409eff;
232
- padding-left: 10px;
233
- }
234
-
235
- .section-desc {
236
- margin-bottom: 20px;
237
- color: #909399;
238
- font-size: 13px;
239
- }
240
-
241
- .demo-grid {
242
- display: grid;
243
- grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
244
- gap: 20px;
245
- }
246
-
247
- .demo-item {
248
- padding: 15px;
249
- border: 1px solid #e4e7ed;
250
- border-radius: 6px;
251
- background-color: #ffffff;
252
- }
253
-
254
- .demo-item p {
255
- margin: 0 0 10px 0;
256
- font-size: 13px;
257
- color: #606266;
258
- font-weight: 500;
259
- }
260
-
261
- .demo-item :deep(.j-barcode) {
262
- display: flex;
263
- justify-content: center;
264
- padding: 10px;
265
- background-color: #f5f7fa;
266
- border-radius: 4px;
267
- }
268
- </style>
1
+ <template>
2
+ <div class="props-demo-container">
3
+ <h2>文本设置属性</h2>
4
+
5
+ <div class="demo-section">
6
+ <h3>includetext - 是否显示人眼可读文本</h3>
7
+ <div class="demo-grid">
8
+ <div class="demo-item">
9
+ <p>includetext: true (默认)</p>
10
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" :includetext="true" />
11
+ </div>
12
+ <div class="demo-item">
13
+ <p>includetext: false</p>
14
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" :includetext="false" />
15
+ </div>
16
+ </div>
17
+ </div>
18
+
19
+ <div class="demo-section">
20
+ <h3>alttext - 替代显示文本</h3>
21
+ <p class="section-desc">不改变条码逻辑,仅改变显示的字</p>
22
+ <div class="demo-grid">
23
+ <div class="demo-item">
24
+ <p>alttext: '' (默认,显示原始值)</p>
25
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" />
26
+ </div>
27
+ <div class="demo-item">
28
+ <p>alttext: '自定义文本'</p>
29
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" alttext="自定义文本" />
30
+ </div>
31
+ <div class="demo-item">
32
+ <p>alttext: 'Product Code: ABC123'</p>
33
+ <j-barcode
34
+ v-model="code"
35
+ bcid="code128"
36
+ :height="15"
37
+ :scale="2"
38
+ alttext="Product Code: ABC123"
39
+ />
40
+ </div>
41
+ </div>
42
+ </div>
43
+
44
+ <div class="demo-section">
45
+ <h3>textfont - 字体</h3>
46
+ <div class="demo-grid">
47
+ <div class="demo-item">
48
+ <p>textfont: 'OCR-B' (默认)</p>
49
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textfont="OCR-B" />
50
+ </div>
51
+ <div class="demo-item">
52
+ <p>textfont: 'OCR-A'</p>
53
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textfont="OCR-A" />
54
+ </div>
55
+ <div class="demo-item">
56
+ <p>textfont: 'Helvetica'</p>
57
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textfont="Helvetica" />
58
+ </div>
59
+ <div class="demo-item">
60
+ <p>textfont: 'Courier'</p>
61
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textfont="Courier" />
62
+ </div>
63
+ </div>
64
+ </div>
65
+
66
+ <div class="demo-section">
67
+ <h3>textsize - 字体大小</h3>
68
+ <div class="demo-grid">
69
+ <div class="demo-item">
70
+ <p>textsize: 8</p>
71
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" :textsize="8" />
72
+ </div>
73
+ <div class="demo-item">
74
+ <p>textsize: 10 (默认)</p>
75
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" :textsize="10" />
76
+ </div>
77
+ <div class="demo-item">
78
+ <p>textsize: 14</p>
79
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" :textsize="14" />
80
+ </div>
81
+ <div class="demo-item">
82
+ <p>textsize: 18</p>
83
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" :textsize="18" />
84
+ </div>
85
+ </div>
86
+ </div>
87
+
88
+ <div class="demo-section">
89
+ <h3>textxalign - 文本水平对齐</h3>
90
+ <div class="demo-grid">
91
+ <div class="demo-item">
92
+ <p>textxalign: 'center' (默认)</p>
93
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textxalign="center" />
94
+ </div>
95
+ <div class="demo-item">
96
+ <p>textxalign: 'left'</p>
97
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textxalign="left" />
98
+ </div>
99
+ <div class="demo-item">
100
+ <p>textxalign: 'right'</p>
101
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textxalign="right" />
102
+ </div>
103
+ <div class="demo-item">
104
+ <p>textxalign: 'offleft'</p>
105
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textxalign="offleft" />
106
+ </div>
107
+ <div class="demo-item">
108
+ <p>textxalign: 'offright'</p>
109
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textxalign="offright" />
110
+ </div>
111
+ </div>
112
+ </div>
113
+
114
+ <div class="demo-section">
115
+ <h3>textyalign - 文本垂直对齐</h3>
116
+ <div class="demo-grid">
117
+ <div class="demo-item">
118
+ <p>textyalign: 'bottom' (默认)</p>
119
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textyalign="bottom" />
120
+ </div>
121
+ <div class="demo-item">
122
+ <p>textyalign: 'top'</p>
123
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textyalign="top" />
124
+ </div>
125
+ <div class="demo-item">
126
+ <p>textyalign: 'above'</p>
127
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textyalign="above" />
128
+ </div>
129
+ <div class="demo-item">
130
+ <p>textyalign: 'center'</p>
131
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textyalign="center" />
132
+ </div>
133
+ </div>
134
+ </div>
135
+
136
+ <div class="demo-section">
137
+ <h3>textxoffset / textyoffset - 文本偏移</h3>
138
+ <div class="demo-grid">
139
+ <div class="demo-item">
140
+ <p>textxoffset: 0, textyoffset: 0 (默认)</p>
141
+ <j-barcode
142
+ v-model="code"
143
+ bcid="code128"
144
+ :height="15"
145
+ :scale="2"
146
+ :textxoffset="0"
147
+ :textyoffset="0"
148
+ />
149
+ </div>
150
+ <div class="demo-item">
151
+ <p>textxoffset: 10, textyoffset: 0</p>
152
+ <j-barcode
153
+ v-model="code"
154
+ bcid="code128"
155
+ :height="15"
156
+ :scale="2"
157
+ :textxoffset="10"
158
+ :textyoffset="0"
159
+ />
160
+ </div>
161
+ <div class="demo-item">
162
+ <p>textxoffset: 0, textyoffset: 5</p>
163
+ <j-barcode
164
+ v-model="code"
165
+ bcid="code128"
166
+ :height="15"
167
+ :scale="2"
168
+ :textxoffset="0"
169
+ :textyoffset="5"
170
+ />
171
+ </div>
172
+ <div class="demo-item">
173
+ <p>textxoffset: -10, textyoffset: -5</p>
174
+ <j-barcode
175
+ v-model="code"
176
+ bcid="code128"
177
+ :height="15"
178
+ :scale="2"
179
+ :textxoffset="-10"
180
+ :textyoffset="-5"
181
+ />
182
+ </div>
183
+ </div>
184
+ </div>
185
+
186
+ <div class="demo-section">
187
+ <h3>textcolor - 文本颜色</h3>
188
+ <div class="demo-grid">
189
+ <div class="demo-item">
190
+ <p>textcolor: '' (默认,跟随barcolor)</p>
191
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" />
192
+ </div>
193
+ <div class="demo-item">
194
+ <p>textcolor: 'ff0000' (红色)</p>
195
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textcolor="ff0000" />
196
+ </div>
197
+ <div class="demo-item">
198
+ <p>textcolor: '0066cc' (蓝色)</p>
199
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textcolor="0066cc" />
200
+ </div>
201
+ <div class="demo-item">
202
+ <p>textcolor: '00aa00' (绿色)</p>
203
+ <j-barcode v-model="code" bcid="code128" :height="15" :scale="2" textcolor="00aa00" />
204
+ </div>
205
+ </div>
206
+ </div>
207
+ </div>
208
+ </template>
209
+
210
+ <script setup lang="ts">
211
+ import { ref } from 'vue'
212
+
213
+ const code = ref('1234567890')
214
+ </script>
215
+
216
+ <style scoped>
217
+ .props-demo-container {
218
+ max-width: 1200px;
219
+ margin: 0 auto;
220
+ padding: 20px;
221
+ }
222
+
223
+ .demo-section {
224
+ margin-bottom: 40px;
225
+ }
226
+
227
+ .demo-section h3 {
228
+ margin-bottom: 10px;
229
+ color: #303133;
230
+ font-size: 18px;
231
+ border-left: 4px solid #409eff;
232
+ padding-left: 10px;
233
+ }
234
+
235
+ .section-desc {
236
+ margin-bottom: 20px;
237
+ color: #909399;
238
+ font-size: 13px;
239
+ }
240
+
241
+ .demo-grid {
242
+ display: grid;
243
+ grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
244
+ gap: 20px;
245
+ }
246
+
247
+ .demo-item {
248
+ padding: 15px;
249
+ border: 1px solid #e4e7ed;
250
+ border-radius: 6px;
251
+ background-color: #ffffff;
252
+ }
253
+
254
+ .demo-item p {
255
+ margin: 0 0 10px 0;
256
+ font-size: 13px;
257
+ color: #606266;
258
+ font-weight: 500;
259
+ }
260
+
261
+ .demo-item :deep(.j-barcode) {
262
+ display: flex;
263
+ justify-content: center;
264
+ padding: 10px;
265
+ background-color: #f5f7fa;
266
+ border-radius: 4px;
267
+ }
268
+ </style>
@@ -1,7 +1,7 @@
1
- <template>
2
- <div style="display: flex; gap: 8px; flex-wrap: wrap">
3
- <j-button icon="mdi:search" label="Search" />
4
- <j-button type="primary" icon="mdi:add" label="Add" />
5
- <j-button type="dashed" icon="mdi:settings-outline" label="Settings" />
6
- </div>
7
- </template>
1
+ <template>
2
+ <div style="display: flex; gap: 8px; flex-wrap: wrap">
3
+ <j-button icon="mdi:search" label="Search" />
4
+ <j-button type="primary" icon="mdi:add" label="Add" />
5
+ <j-button type="dashed" icon="mdi:settings-outline" label="Settings" />
6
+ </div>
7
+ </template>
@@ -1,17 +1,17 @@
1
- <template>
2
- <div style="display: flex; flex-direction: column; gap: 16px">
3
- <div style="display: flex; gap: 8px; flex-wrap: wrap">
4
- <j-button danger label="Danger Default" />
5
- <j-button type="primary" danger label="Danger Primary" />
6
- <j-button type="dashed" danger label="Danger Dashed" />
7
- <j-button type="text" danger label="Danger Text" />
8
- <j-button type="link" danger label="Danger Link" />
9
- </div>
10
- <div style="background: #999; padding: 16px; display: flex; gap: 8px; flex-wrap: wrap">
11
- <j-button ghost label="Ghost Default" />
12
- <j-button type="primary" ghost label="Ghost Primary" />
13
- <j-button type="dashed" ghost label="Ghost Dashed" />
14
- <j-button danger ghost label="Ghost Danger" />
15
- </div>
16
- </div>
17
- </template>
1
+ <template>
2
+ <div style="display: flex; flex-direction: column; gap: 16px">
3
+ <div style="display: flex; gap: 8px; flex-wrap: wrap">
4
+ <j-button danger label="Danger Default" />
5
+ <j-button type="primary" danger label="Danger Primary" />
6
+ <j-button type="dashed" danger label="Danger Dashed" />
7
+ <j-button type="text" danger label="Danger Text" />
8
+ <j-button type="link" danger label="Danger Link" />
9
+ </div>
10
+ <div style="background: #999; padding: 16px; display: flex; gap: 8px; flex-wrap: wrap">
11
+ <j-button ghost label="Ghost Default" />
12
+ <j-button type="primary" ghost label="Ghost Primary" />
13
+ <j-button type="dashed" ghost label="Ghost Dashed" />
14
+ <j-button danger ghost label="Ghost Danger" />
15
+ </div>
16
+ </div>
17
+ </template>
@@ -1,10 +1,10 @@
1
- <template>
2
- <div style="display: flex; gap: 8px; flex-wrap: wrap">
3
- <j-button disabled label="Disabled" />
4
- <j-button type="primary" disabled label="Primary Disabled" />
5
- <j-button type="dashed" disabled label="Dashed Disabled" />
6
- <j-button type="link" disabled label="Link Disabled" />
7
- <j-button ghost disabled label="Ghost Disabled" />
8
- <j-button danger disabled label="Danger Disabled" />
9
- </div>
10
- </template>
1
+ <template>
2
+ <div style="display: flex; gap: 8px; flex-wrap: wrap">
3
+ <j-button disabled label="Disabled" />
4
+ <j-button type="primary" disabled label="Primary Disabled" />
5
+ <j-button type="dashed" disabled label="Dashed Disabled" />
6
+ <j-button type="link" disabled label="Link Disabled" />
7
+ <j-button ghost disabled label="Ghost Disabled" />
8
+ <j-button danger disabled label="Danger Disabled" />
9
+ </div>
10
+ </template>
@@ -1,6 +1,6 @@
1
- <template>
2
- <div style="display: flex; gap: 8px; flex-wrap: wrap">
3
- <j-button loading type="primary" label="Loading" />
4
- <j-button :loading="{ delay: 500 }" type="primary" label="Delay 500ms" />
5
- </div>
6
- </template>
1
+ <template>
2
+ <div style="display: flex; gap: 8px; flex-wrap: wrap">
3
+ <j-button loading type="primary" label="Loading" />
4
+ <j-button :loading="{ delay: 500 }" type="primary" label="Delay 500ms" />
5
+ </div>
6
+ </template>
@@ -1,7 +1,7 @@
1
- <template>
2
- <div style="display: flex; gap: 8px; flex-wrap: wrap">
3
- <j-button type="primary" label="Default" />
4
- <j-button shape="round" type="primary" label="Round" />
5
- <j-button shape="circle" type="primary" icon="mdi:search" not-label />
6
- </div>
7
- </template>
1
+ <template>
2
+ <div style="display: flex; gap: 8px; flex-wrap: wrap">
3
+ <j-button type="primary" label="Default" />
4
+ <j-button shape="round" type="primary" label="Round" />
5
+ <j-button shape="circle" type="primary" icon="mdi:search" not-label />
6
+ </div>
7
+ </template>