@a2simcode/ui 0.0.130 → 0.0.132

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