@touchvue/ui 1.0.0-beta.53 → 1.0.0-beta.55

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 (222) hide show
  1. package/es/components/calendar/src/calendar.d.ts +8 -1
  2. package/es/components/calendar/src/calendar.vue.d.ts +9 -0
  3. package/es/components/cascader/src/cascader-item.vue.d.ts +5 -1
  4. package/es/components/cascader/src/cascader.vue.d.ts +0 -7
  5. package/es/components/datepicker/src/DatePicker.vue.d.ts +9 -0
  6. package/es/components/datepicker/src/Picker.vue.d.ts +9 -0
  7. package/es/components/datepicker/src/date-picker.d.ts +1 -1
  8. package/es/components/datepicker/src/use-date-picker.d.ts +1 -0
  9. package/es/components/float/index.d.ts +15 -0
  10. package/es/components/float/src/Float.vue.d.ts +9 -0
  11. package/es/components/float/src/float.d.ts +4 -0
  12. package/es/components/icon/src/icon.vue.d.ts +2 -0
  13. package/es/components/input/src/input.vue.d.ts +2 -2
  14. package/es/components/rate/src/rate.vue.d.ts +46 -10
  15. package/es/components/select/src/select.d.ts +18 -0
  16. package/es/components/select/src/select.vue.d.ts +18 -0
  17. package/es/components/tab/src/tab-item.vue.d.ts +2 -0
  18. package/es/components/timeline/src/timeline.vue.d.ts +5 -0
  19. package/es/components/tip/src/tip.vue.d.ts +2 -2
  20. package/es/directives/index.d.ts +2 -1
  21. package/es/directives/press/index.d.ts +2 -0
  22. package/es/directives/press/src/press.d.ts +20 -0
  23. package/es/index.d.mjs +1 -0
  24. package/es/index.d.mjs.map +1 -1
  25. package/es/index.mjs +3 -1
  26. package/es/index.mjs.map +1 -1
  27. package/es/node_modules/.pnpm/dompurify@3.4.12/node_modules/dompurify/dist/purify.es.mjs +2425 -0
  28. package/es/node_modules/.pnpm/dompurify@3.4.12/node_modules/dompurify/dist/purify.es.mjs.map +1 -0
  29. package/es/packages/components/calendar/src/calendar.mjs +7 -0
  30. package/es/packages/components/calendar/src/calendar.mjs.map +1 -1
  31. package/es/packages/components/calendar/src/calendar.vue2.mjs +31 -38
  32. package/es/packages/components/calendar/src/calendar.vue2.mjs.map +1 -1
  33. package/es/packages/components/cascader/src/cascader-item.vue2.mjs +36 -84
  34. package/es/packages/components/cascader/src/cascader-item.vue2.mjs.map +1 -1
  35. package/es/packages/components/cascader/src/cascader.vue2.mjs +86 -28
  36. package/es/packages/components/cascader/src/cascader.vue2.mjs.map +1 -1
  37. package/es/packages/components/checkboxes/src/Checkboxes.vue2.mjs +2 -3
  38. package/es/packages/components/checkboxes/src/Checkboxes.vue2.mjs.map +1 -1
  39. package/es/packages/components/datepicker/src/DatePicker.vue2.mjs +9 -3
  40. package/es/packages/components/datepicker/src/DatePicker.vue2.mjs.map +1 -1
  41. package/es/packages/components/datepicker/src/Picker.vue2.mjs +4 -0
  42. package/es/packages/components/datepicker/src/Picker.vue2.mjs.map +1 -1
  43. package/es/packages/components/datepicker/src/date-picker.mjs.map +1 -1
  44. package/es/packages/components/datepicker/src/use-date-picker.mjs +8 -8
  45. package/es/packages/components/datepicker/src/use-date-picker.mjs.map +1 -1
  46. package/es/packages/components/float/src/Float.vue2.mjs +13 -6
  47. package/es/packages/components/float/src/Float.vue2.mjs.map +1 -1
  48. package/es/packages/components/float/src/float.mjs +1 -0
  49. package/es/packages/components/float/src/float.mjs.map +1 -1
  50. package/es/packages/components/header/src/header.vue2.mjs +4 -3
  51. package/es/packages/components/header/src/header.vue2.mjs.map +1 -1
  52. package/es/packages/components/icon/src/icon.vue2.mjs +7 -3
  53. package/es/packages/components/icon/src/icon.vue2.mjs.map +1 -1
  54. package/es/packages/components/index.d.mjs +1 -0
  55. package/es/packages/components/index.d.mjs.map +1 -1
  56. package/es/packages/components/index.mjs +1 -0
  57. package/es/packages/components/index.mjs.map +1 -1
  58. package/es/packages/components/input/src/input.vue2.mjs +11 -11
  59. package/es/packages/components/input/src/input.vue2.mjs.map +1 -1
  60. package/es/packages/components/msg/src/msg.vue2.mjs +1 -1
  61. package/es/packages/components/rate/src/rate.vue2.mjs +153 -85
  62. package/es/packages/components/rate/src/rate.vue2.mjs.map +1 -1
  63. package/es/packages/components/segment/src/segment.vue.mjs +2 -2
  64. package/es/packages/components/select/src/select.mjs +18 -0
  65. package/es/packages/components/select/src/select.mjs.map +1 -1
  66. package/es/packages/components/select/src/select.vue2.mjs +262 -87
  67. package/es/packages/components/select/src/select.vue2.mjs.map +1 -1
  68. package/es/packages/components/slide/src/slide.vue2.mjs.map +1 -1
  69. package/es/packages/components/tab/src/tab-item.vue2.mjs +3 -1
  70. package/es/packages/components/tab/src/tab-item.vue2.mjs.map +1 -1
  71. package/es/packages/components/tab/src/tab.vue2.mjs +24 -2
  72. package/es/packages/components/tab/src/tab.vue2.mjs.map +1 -1
  73. package/es/packages/components/table/src/table.vue2.mjs +60 -2
  74. package/es/packages/components/table/src/table.vue2.mjs.map +1 -1
  75. package/es/packages/components/tree/src/tree-item.vue2.mjs +1 -1
  76. package/es/packages/components/tree/src/tree-item.vue2.mjs.map +1 -1
  77. package/es/packages/components/tree/src/tree.vue2.mjs.map +1 -1
  78. package/es/packages/directives/index.d.mjs +1 -0
  79. package/es/packages/directives/index.d.mjs.map +1 -1
  80. package/es/packages/directives/index.mjs +3 -3
  81. package/es/packages/directives/index.mjs.map +1 -1
  82. package/es/packages/directives/press/index.d.mjs +2 -0
  83. package/es/packages/directives/press/index.mjs +2 -0
  84. package/es/packages/directives/press/src/press.d.mjs +2 -0
  85. package/es/packages/directives/press/src/press.d.mjs.map +1 -0
  86. package/es/packages/directives/press/src/press.mjs +100 -0
  87. package/es/packages/directives/press/src/press.mjs.map +1 -0
  88. package/es/packages/directives/tip/src/tip.mjs +42 -27
  89. package/es/packages/directives/tip/src/tip.mjs.map +1 -1
  90. package/es/packages/locale/format.mjs +1 -1
  91. package/es/packages/locale/format.mjs.map +1 -1
  92. package/es/packages/locale/lang/en-US.mjs +6 -0
  93. package/es/packages/locale/lang/en-US.mjs.map +1 -1
  94. package/es/packages/locale/lang/zh-CN.mjs +6 -0
  95. package/es/packages/locale/lang/zh-CN.mjs.map +1 -1
  96. package/es/packages/utils/print.mjs +1 -1
  97. package/es/ui/index.d.ts +6 -0
  98. package/lib/components/calendar/src/calendar.d.ts +8 -1
  99. package/lib/components/calendar/src/calendar.vue.d.ts +9 -0
  100. package/lib/components/cascader/src/cascader-item.vue.d.ts +5 -1
  101. package/lib/components/cascader/src/cascader.vue.d.ts +0 -7
  102. package/lib/components/datepicker/src/DatePicker.vue.d.ts +9 -0
  103. package/lib/components/datepicker/src/Picker.vue.d.ts +9 -0
  104. package/lib/components/datepicker/src/date-picker.d.ts +1 -1
  105. package/lib/components/datepicker/src/use-date-picker.d.ts +1 -0
  106. package/lib/components/float/index.d.ts +15 -0
  107. package/lib/components/float/src/Float.vue.d.ts +9 -0
  108. package/lib/components/float/src/float.d.ts +4 -0
  109. package/lib/components/icon/src/icon.vue.d.ts +2 -0
  110. package/lib/components/input/src/input.vue.d.ts +2 -2
  111. package/lib/components/rate/src/rate.vue.d.ts +46 -10
  112. package/lib/components/select/src/select.d.ts +18 -0
  113. package/lib/components/select/src/select.vue.d.ts +18 -0
  114. package/lib/components/tab/src/tab-item.vue.d.ts +2 -0
  115. package/lib/components/timeline/src/timeline.vue.d.ts +5 -0
  116. package/lib/components/tip/src/tip.vue.d.ts +2 -2
  117. package/lib/directives/index.d.ts +2 -1
  118. package/lib/directives/press/index.d.ts +2 -0
  119. package/lib/directives/press/src/press.d.ts +20 -0
  120. package/lib/index.d.js +2 -0
  121. package/lib/index.d.js.map +1 -1
  122. package/lib/index.js +4 -1
  123. package/lib/index.js.map +1 -1
  124. package/lib/node_modules/.pnpm/dompurify@3.4.12/node_modules/dompurify/dist/purify.es.js +2429 -0
  125. package/lib/node_modules/.pnpm/dompurify@3.4.12/node_modules/dompurify/dist/purify.es.js.map +1 -0
  126. package/lib/packages/components/calendar/src/calendar.js +7 -0
  127. package/lib/packages/components/calendar/src/calendar.js.map +1 -1
  128. package/lib/packages/components/calendar/src/calendar.vue2.js +31 -38
  129. package/lib/packages/components/calendar/src/calendar.vue2.js.map +1 -1
  130. package/lib/packages/components/cascader/src/cascader-item.vue2.js +35 -83
  131. package/lib/packages/components/cascader/src/cascader-item.vue2.js.map +1 -1
  132. package/lib/packages/components/cascader/src/cascader.vue2.js +85 -27
  133. package/lib/packages/components/cascader/src/cascader.vue2.js.map +1 -1
  134. package/lib/packages/components/checkboxes/src/Checkboxes.vue2.js +1 -2
  135. package/lib/packages/components/checkboxes/src/Checkboxes.vue2.js.map +1 -1
  136. package/lib/packages/components/datepicker/src/DatePicker.vue2.js +9 -3
  137. package/lib/packages/components/datepicker/src/DatePicker.vue2.js.map +1 -1
  138. package/lib/packages/components/datepicker/src/Picker.vue2.js +4 -0
  139. package/lib/packages/components/datepicker/src/Picker.vue2.js.map +1 -1
  140. package/lib/packages/components/datepicker/src/date-picker.js.map +1 -1
  141. package/lib/packages/components/datepicker/src/use-date-picker.js +8 -8
  142. package/lib/packages/components/datepicker/src/use-date-picker.js.map +1 -1
  143. package/lib/packages/components/float/src/Float.vue2.js +12 -5
  144. package/lib/packages/components/float/src/Float.vue2.js.map +1 -1
  145. package/lib/packages/components/float/src/float.js +1 -0
  146. package/lib/packages/components/float/src/float.js.map +1 -1
  147. package/lib/packages/components/header/src/header.vue2.js +4 -3
  148. package/lib/packages/components/header/src/header.vue2.js.map +1 -1
  149. package/lib/packages/components/icon/src/icon.vue2.js +7 -3
  150. package/lib/packages/components/icon/src/icon.vue2.js.map +1 -1
  151. package/lib/packages/components/index.d.js +2 -0
  152. package/lib/packages/components/index.d.js.map +1 -1
  153. package/lib/packages/components/index.js +2 -0
  154. package/lib/packages/components/index.js.map +1 -1
  155. package/lib/packages/components/input/src/input.vue2.js +11 -11
  156. package/lib/packages/components/input/src/input.vue2.js.map +1 -1
  157. package/lib/packages/components/msg/src/msg.vue2.js +1 -1
  158. package/lib/packages/components/rate/src/rate.vue2.js +152 -84
  159. package/lib/packages/components/rate/src/rate.vue2.js.map +1 -1
  160. package/lib/packages/components/segment/src/segment.vue.js +2 -2
  161. package/lib/packages/components/select/src/select.js +18 -0
  162. package/lib/packages/components/select/src/select.js.map +1 -1
  163. package/lib/packages/components/select/src/select.vue2.js +261 -86
  164. package/lib/packages/components/select/src/select.vue2.js.map +1 -1
  165. package/lib/packages/components/slide/src/slide.vue2.js.map +1 -1
  166. package/lib/packages/components/tab/src/tab-item.vue2.js +3 -1
  167. package/lib/packages/components/tab/src/tab-item.vue2.js.map +1 -1
  168. package/lib/packages/components/tab/src/tab.vue2.js +23 -1
  169. package/lib/packages/components/tab/src/tab.vue2.js.map +1 -1
  170. package/lib/packages/components/table/src/table.vue2.js +59 -1
  171. package/lib/packages/components/table/src/table.vue2.js.map +1 -1
  172. package/lib/packages/components/tree/src/tree-item.vue2.js +1 -1
  173. package/lib/packages/components/tree/src/tree-item.vue2.js.map +1 -1
  174. package/lib/packages/components/tree/src/tree.vue2.js.map +1 -1
  175. package/lib/packages/directives/index.d.js +2 -0
  176. package/lib/packages/directives/index.d.js.map +1 -1
  177. package/lib/packages/directives/index.js +3 -2
  178. package/lib/packages/directives/index.js.map +1 -1
  179. package/lib/packages/directives/press/index.d.js +8 -0
  180. package/lib/packages/directives/press/index.js +8 -0
  181. package/lib/packages/directives/press/src/press.d.js +3 -0
  182. package/lib/packages/directives/press/src/press.d.js.map +1 -0
  183. package/lib/packages/directives/press/src/press.js +102 -0
  184. package/lib/packages/directives/press/src/press.js.map +1 -0
  185. package/lib/packages/directives/tip/src/tip.js +41 -26
  186. package/lib/packages/directives/tip/src/tip.js.map +1 -1
  187. package/lib/packages/locale/format.js +1 -1
  188. package/lib/packages/locale/format.js.map +1 -1
  189. package/lib/packages/locale/lang/en-US.js +6 -0
  190. package/lib/packages/locale/lang/en-US.js.map +1 -1
  191. package/lib/packages/locale/lang/zh-CN.js +6 -0
  192. package/lib/packages/locale/lang/zh-CN.js.map +1 -1
  193. package/lib/packages/utils/print.js +1 -1
  194. package/lib/ui/index.d.ts +6 -0
  195. package/package.json +1 -1
  196. package/theme/components/index.css +304 -173
  197. package/theme/index.css +304 -173
  198. package/theme/skin/default.css +304 -173
  199. package/es/directives/longtap/index.d.ts +0 -2
  200. package/es/directives/longtap/src/longtap.d.ts +0 -7
  201. package/es/node_modules/.pnpm/dompurify@3.3.1/node_modules/dompurify/dist/purify.es.mjs +0 -1386
  202. package/es/node_modules/.pnpm/dompurify@3.3.1/node_modules/dompurify/dist/purify.es.mjs.map +0 -1
  203. package/es/packages/directives/longtap/index.d.mjs +0 -2
  204. package/es/packages/directives/longtap/index.mjs +0 -2
  205. package/es/packages/directives/longtap/src/longtap.d.mjs +0 -2
  206. package/es/packages/directives/longtap/src/longtap.d.mjs.map +0 -1
  207. package/es/packages/directives/longtap/src/longtap.mjs +0 -80
  208. package/es/packages/directives/longtap/src/longtap.mjs.map +0 -1
  209. package/lib/directives/longtap/index.d.ts +0 -2
  210. package/lib/directives/longtap/src/longtap.d.ts +0 -7
  211. package/lib/node_modules/.pnpm/dompurify@3.3.1/node_modules/dompurify/dist/purify.es.js +0 -1390
  212. package/lib/node_modules/.pnpm/dompurify@3.3.1/node_modules/dompurify/dist/purify.es.js.map +0 -1
  213. package/lib/packages/directives/longtap/index.d.js +0 -8
  214. package/lib/packages/directives/longtap/index.js +0 -8
  215. package/lib/packages/directives/longtap/src/longtap.d.js +0 -3
  216. package/lib/packages/directives/longtap/src/longtap.d.js.map +0 -1
  217. package/lib/packages/directives/longtap/src/longtap.js +0 -82
  218. package/lib/packages/directives/longtap/src/longtap.js.map +0 -1
  219. /package/es/packages/directives/{longtap → press}/index.d.mjs.map +0 -0
  220. /package/es/packages/directives/{longtap → press}/index.mjs.map +0 -0
  221. /package/lib/packages/directives/{longtap → press}/index.d.js.map +0 -0
  222. /package/lib/packages/directives/{longtap → press}/index.js.map +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"slide.vue2.mjs","sources":["../../../../../../packages/components/slide/src/slide.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\n\tname: 'ToSlide'\n});\n</script>\n<template>\n\t<div ref=\"slide\" :flex=\"flex ? flex : null\" class=\"to-slide\" :class=\"setClass\" @mouseover=\"pause\" @mouseout=\"play\" @touchstart=\"touchstart\" @touchend=\"touchend\" @touchmove=\"touchmove\">\n\t\t<div class=\"to-slide-pic\">\n\t\t\t<ul ref=\"ul\" class=\"to-slide-wrapper\" :style=\"setUlStyle\">\n\t\t\t\t<li ref=\"firstFake\" class=\"to-slide-item\"></li>\n\t\t\t\t<slot></slot>\n\t\t\t\t<li ref=\"lastFake\" class=\"to-slide-item\"></li>\n\t\t\t</ul>\n\t\t</div>\n\t\t<div v-if=\"length > 1\" class=\"to-slide-fn\">\n\t\t\t<to-icon value=\"back\" link class=\"to-slide-fn-item type-prev\" @click=\"prev()\"></to-icon>\n\t\t\t<to-icon value=\"next\" link class=\"to-slide-fn-item type-next\" @click=\"next()\"></to-icon>\n\t\t</div>\n\t\t<div v-if=\"length > 1\" class=\"to-slide-page\">\n\t\t\t<span v-for=\"index of length\" :key=\"index\" class=\"to-slide-page-item\" :class=\"{ 'is-on': index === current + 1 }\" @click=\"to(index - 1)\"></span>\n\t\t</div>\n\t</div>\n</template>\n<script lang=\"ts\" setup>\nimport { CSSProperties, computed, onMounted, ref, nextTick } from 'vue'\n\n\n\ninterface Props {\n\tmode?: string\n\tautoplay?: boolean\n\tspeed?: number | string\n\tpagerPosition?: string\n\tflex?: boolean\n}\nconst props = withDefaults(defineProps<Props>(), {\n\tmode: 'default',\n\tautoplay: false,\n\tspeed: 2000,\n\tpagerPosition: '',\n\tflex: false\n})\n\nconst length = ref(0)\nconst current = ref(0)\nconst dis = ref(0)\nconst animate = ref(true)\nconst width = ref(0)\nconst playTimer = ref(null)\nconst startPosition = ref(0)\nconst slide = ref(null)\nconst ul = ref(null)\nconst lastFake = ref(null)\nconst firstFake = ref(null)\nconst ulPosition = computed(() => {\n\treturn (current.value + 1) * width.value * -1\n})\nconst setUlStyle = computed(() => {\n\tlet obj: CSSProperties = {}\n\tobj.transform = `translateX(${ulPosition.value + dis.value}px)`\n\tif (animate.value) {\n\t\tobj.transition = 'transform 0.3s ease-out'\n\t}\n\tobj.width = `${(length.value + 2) * 100}%`\n\treturn obj\n})\n\nconst setClass = computed(() => {\n\tlet arr: string[] = []\n\tif (props.mode) {\n\t\tarr.push(`mode-${props.mode}`)\n\t}\n\tif (props.pagerPosition === 'outer') {\n\t\tarr.push(`is-outer`)\n\t}\n\treturn arr\n})\n\nonMounted(() => {\n\tnextTick(() => {\n\t\twidth.value = slide.value.offsetWidth\n\t\tsetLength()\n\t\tlastFake.value.innerHTML = ul.value.querySelector(':nth-child(2)').innerHTML\n\t\tfirstFake.value.innerHTML = ul.value.querySelector(`:nth-child(${length.value + 1})`).innerHTML\n\t\tplay()\n\t\twindow.addEventListener('resize', () => {\n\t\t\tadjust()\n\t\t})\n\t})\n})\n\nfunction play() {\n\tif (!props.autoplay || length.value < 2) {\n\t\treturn\n\t}\n\tplayTimer.value = setInterval(() => {\n\t\tnext()\n\t}, Number(props.speed))\n}\nfunction pause() {\n\tclearInterval(playTimer.value)\n}\nfunction setLength() {\n\tlength.value = ul.value.children.length - 2\n}\nfunction next() {\n\tif (animate.value) {\n\t\tcurrent.value += 1\n\t\tif (current.value === length.value) {\n\t\t\tsetTimeout(() => {\n\t\t\t\tanimate.value = false\n\t\t\t\tcurrent.value = 0\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tanimate.value = true\n\t\t\t\t}, 300)\n\t\t\t}, 300)\n\t\t}\n\t}\n}\nfunction prev() {\n\tif (animate.value) {\n\t\tcurrent.value -= 1\n\t\tif (current.value === -1) {\n\t\t\tsetTimeout(() => {\n\t\t\t\tanimate.value = false\n\t\t\t\tcurrent.value = length.value - 1\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tanimate.value = true\n\t\t\t\t}, 300)\n\t\t\t}, 300)\n\t\t}\n\t}\n}\nfunction touchstart(e) {\n\tif (length.value < 2) {\n\t\treturn\n\t}\n\tstartPosition.value = e.touches[0].clientX\n\tanimate.value = false\n}\nfunction touchend() {\n\tif (length.value < 2) {\n\t\treturn\n\t}\n\tanimate.value = true\n\tif (dis.value > 10) {\n\t\tprev()\n\t\tdis.value = 0\n\t} else if (dis.value < -10) {\n\t\tnext()\n\t\tdis.value = 0\n\t}\n}\nfunction touchmove(e) {\n\tif (length.value < 2) {\n\t\treturn\n\t}\n\tdis.value = e.touches[0].clientX - startPosition.value\n}\nfunction adjust() {\n\twidth.value = slide.value.offsetWidth\n}\nfunction reset() {\n\tcurrent.value = 0\n}\nfunction to(i: number) {\n\tcurrent.value = i\n}\n\ndefineExpose({\n\treset,\n\tadjust,\n\tprev,\n\tnext\n})\n</script>\n"],"names":["DO_defineComponent","_createElementBlock","_normalizeClass","_createElementVNode","_renderSlot","_createVNode","_Fragment","_renderList"],"mappings":"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"}
1
+ {"version":3,"file":"slide.vue2.mjs","sources":["../../../../../../packages/components/slide/src/slide.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToSlide'\r\n});\n</script>\n<template>\r\n\t<div ref=\"slide\" :flex=\"flex ? flex : null\" class=\"to-slide\" :class=\"setClass\" @mouseover=\"pause\" @mouseout=\"play\" @touchstart=\"touchstart\" @touchend=\"touchend\" @touchmove=\"touchmove\">\r\n\t\t<div class=\"to-slide-pic\">\r\n\t\t\t<ul ref=\"ul\" class=\"to-slide-wrapper\" :style=\"setUlStyle\">\r\n\t\t\t\t<li ref=\"firstFake\" class=\"to-slide-item\"></li>\r\n\t\t\t\t<slot></slot>\r\n\t\t\t\t<li ref=\"lastFake\" class=\"to-slide-item\"></li>\r\n\t\t\t</ul>\r\n\t\t</div>\r\n\t\t<div v-if=\"length > 1\" class=\"to-slide-fn\">\r\n\t\t\t<to-icon value=\"back\" link class=\"to-slide-fn-item type-prev\" @click=\"prev()\"></to-icon>\r\n\t\t\t<to-icon value=\"next\" link class=\"to-slide-fn-item type-next\" @click=\"next()\"></to-icon>\r\n\t\t</div>\r\n\t\t<div v-if=\"length > 1\" class=\"to-slide-page\">\r\n\t\t\t<span v-for=\"index of length\" :key=\"index\" class=\"to-slide-page-item\" :class=\"{ 'is-on': index === current + 1 }\" @click=\"to(index - 1)\"></span>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script lang=\"ts\" setup>\r\nimport { CSSProperties, computed, onMounted, ref, nextTick } from 'vue'\r\n\r\n\r\n\r\ninterface Props {\r\n\tmode?: string\r\n\tautoplay?: boolean\r\n\tspeed?: number | string\r\n\tpagerPosition?: string\r\n\tflex?: boolean\r\n}\r\nconst props = withDefaults(defineProps<Props>(), {\r\n\tmode: 'default',\r\n\tautoplay: false,\r\n\tspeed: 2000,\r\n\tpagerPosition: '',\r\n\tflex: false\r\n})\r\n\r\nconst length = ref(0)\r\nconst current = ref(0)\r\nconst dis = ref(0)\r\nconst animate = ref(true)\r\nconst width = ref(0)\r\nconst playTimer = ref(null)\r\nconst startPosition = ref(0)\r\nconst slide = ref(null)\r\nconst ul = ref(null)\r\nconst lastFake = ref(null)\r\nconst firstFake = ref(null)\r\nconst ulPosition = computed(() => {\r\n\treturn (current.value + 1) * width.value * -1\r\n})\r\nconst setUlStyle = computed(() => {\r\n\tlet obj: CSSProperties = {}\r\n\tobj.transform = `translateX(${ulPosition.value + dis.value}px)`\r\n\tif (animate.value) {\r\n\t\tobj.transition = 'transform 0.3s ease-out'\r\n\t}\r\n\tobj.width = `${(length.value + 2) * 100}%`\r\n\treturn obj\r\n})\r\n\r\nconst setClass = computed(() => {\r\n\tlet arr: string[] = []\r\n\tif (props.mode) {\r\n\t\tarr.push(`mode-${props.mode}`)\r\n\t}\r\n\tif (props.pagerPosition === 'outer') {\r\n\t\tarr.push(`is-outer`)\r\n\t}\r\n\treturn arr\r\n})\r\n\r\nonMounted(() => {\r\n\tnextTick(() => {\r\n\t\twidth.value = slide.value.offsetWidth\r\n\t\tsetLength()\r\n\t\tlastFake.value.innerHTML = ul.value.querySelector(':nth-child(2)').innerHTML\r\n\t\tfirstFake.value.innerHTML = ul.value.querySelector(`:nth-child(${length.value + 1})`).innerHTML\r\n\t\tplay()\r\n\t\twindow.addEventListener('resize', () => {\r\n\t\t\tadjust()\r\n\t\t})\r\n\t})\r\n})\r\n\r\nfunction play() {\r\n\tif (!props.autoplay || length.value < 2) {\r\n\t\treturn\r\n\t}\r\n\tplayTimer.value = setInterval(() => {\r\n\t\tnext()\r\n\t}, Number(props.speed))\r\n}\r\nfunction pause() {\r\n\tclearInterval(playTimer.value)\r\n}\r\nfunction setLength() {\r\n\tlength.value = ul.value.children.length - 2\r\n}\r\nfunction next() {\r\n\tif (animate.value) {\r\n\t\tcurrent.value += 1\r\n\t\tif (current.value === length.value) {\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tanimate.value = false\r\n\t\t\t\tcurrent.value = 0\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tanimate.value = true\r\n\t\t\t\t}, 300)\r\n\t\t\t}, 300)\r\n\t\t}\r\n\t}\r\n}\r\nfunction prev() {\r\n\tif (animate.value) {\r\n\t\tcurrent.value -= 1\r\n\t\tif (current.value === -1) {\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tanimate.value = false\r\n\t\t\t\tcurrent.value = length.value - 1\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tanimate.value = true\r\n\t\t\t\t}, 300)\r\n\t\t\t}, 300)\r\n\t\t}\r\n\t}\r\n}\r\nfunction touchstart(e) {\r\n\tif (length.value < 2) {\r\n\t\treturn\r\n\t}\r\n\tstartPosition.value = e.touches[0].clientX\r\n\tanimate.value = false\r\n}\r\nfunction touchend() {\r\n\tif (length.value < 2) {\r\n\t\treturn\r\n\t}\r\n\tanimate.value = true\r\n\tif (dis.value > 10) {\r\n\t\tprev()\r\n\t\tdis.value = 0\r\n\t} else if (dis.value < -10) {\r\n\t\tnext()\r\n\t\tdis.value = 0\r\n\t}\r\n}\r\nfunction touchmove(e) {\r\n\tif (length.value < 2) {\r\n\t\treturn\r\n\t}\r\n\tdis.value = e.touches[0].clientX - startPosition.value\r\n}\r\nfunction adjust() {\r\n\twidth.value = slide.value.offsetWidth\r\n}\r\nfunction reset() {\r\n\tcurrent.value = 0\r\n}\r\nfunction to(i: number) {\r\n\tcurrent.value = i\r\n}\r\n\r\ndefineExpose({\r\n\treset,\r\n\tadjust,\r\n\tprev,\r\n\tnext\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","_createElementBlock","_normalizeClass","_createElementVNode","_renderSlot","_createVNode","_Fragment","_renderList"],"mappings":"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"}
@@ -15,7 +15,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
15
15
  number: { default: "" },
16
16
  lazy: { type: Boolean, default: false },
17
17
  on: { type: Boolean, default: false },
18
- disabled: { type: Boolean, default: false }
18
+ disabled: { type: Boolean, default: false },
19
+ count: { default: "" }
19
20
  },
20
21
  setup(__props) {
21
22
  const slots = useSlots();
@@ -49,6 +50,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
49
50
  disabled: props.disabled,
50
51
  data: props.data,
51
52
  on: props.on,
53
+ count: props.count,
52
54
  labelSlot: slots.label
53
55
  };
54
56
  tabProvide.addTab(tabData);
@@ -1 +1 @@
1
- {"version":3,"file":"tab-item.vue2.mjs","sources":["../../../../../../packages/components/tab/src/tab-item.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToTabItem'\r\n});\n</script>\n<template>\r\n\t<div v-show=\"show\" v-if=\"lazy ? show : true\" :key=\"langKey\" class=\"to-tab-page-item\" :class=\"setClass\">\r\n\t\t<slot></slot>\r\n\t</div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, nextTick, onBeforeUnmount, inject, useSlots, watch } from 'vue'\r\nimport { ITabProvide } from './tab.vue'\r\nimport { langKey } from '@touchvue/locale'\r\n\r\n\r\n\r\ninterface TabItemProps {\r\n\tdata?: any\r\n\tlabel?: string\r\n\tvalue?: string | number\r\n\ticon?: string\r\n\tpic?: string\r\n\tnumber?: string | number\r\n\tlazy?: boolean\r\n\ton?: boolean\r\n\tdisabled?: boolean\r\n}\r\n\r\nconst slots = useSlots()\r\n\r\nconst props = withDefaults(defineProps<TabItemProps>(), {\r\n\tdata: null,\r\n\tlabel: '',\r\n\tvalue: '',\r\n\ticon: '',\r\n\tpic: '',\r\n\tnumber: '',\r\n\tlazy: false,\r\n\ton: false,\r\n\tdisabled: false\r\n})\r\n\r\n// 注入父组件的值\r\nconst tabProvide: ITabProvide = inject('TabProvide')\r\n\r\n// computed\r\nconst setClass = computed(() => {\r\n\tlet arr: string[] = []\r\n\tif (props.disabled) {\r\n\t\tarr.push('disabled')\r\n\t}\r\n\treturn arr\r\n})\r\n\r\nconst show = computed(() => {\r\n\treturn tabProvide.selectValue.value === (props.value || props.label)\r\n})\r\n\r\n// 监听 label 变化,更新 tab 数据\r\nwatch(\r\n\t() => props.label,\r\n\t(newLabel, oldLabel) => {\r\n\t\tif (tabProvide && tabProvide.updateTabLabel) {\r\n\t\t\ttabProvide.updateTabLabel(oldLabel, newLabel)\r\n\t\t}\r\n\t}\r\n)\r\n\r\n// methods\r\nfunction init() {\r\n\tconst tabData = {\r\n\t\tlabel: props.label,\r\n\t\tvalue: props.value ? props.value : props.label,\r\n\t\ticon: props.icon,\r\n\t\tpic: props.pic,\r\n\t\tnumber: props.number,\r\n\t\tdisabled: props.disabled,\r\n\t\tdata: props.data,\r\n\t\ton: props.on,\r\n\t\tlabelSlot: slots.label\r\n\t}\r\n\ttabProvide.addTab(tabData)\r\n}\r\n\r\nnextTick(() => {\r\n\tinit()\r\n})\r\n\r\nonBeforeUnmount(() => {\r\n\t// tabProvide.removeTab(props.value)\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","_createElementBlock","_unref","_normalizeClass","_renderSlot"],"mappings":";;;AAEA,MAAA,cAA6BA,eAAmB,CAAA;AAAA,EAC/C,IAAM,EAAA,WAAA;AACP,CAAC,CAAA,CAAA;;;;;;;;;;;;;;;AA2BD,IAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AAEvB,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAad,IAAM,MAAA,UAAA,GAA0B,OAAO,YAAY,CAAA,CAAA;AAGnD,IAAM,MAAA,QAAA,GAAW,SAAS,MAAM;AAC/B,MAAA,IAAI,MAAgB,EAAC,CAAA;AACrB,MAAA,IAAI,MAAM,QAAU,EAAA;AACnB,QAAA,GAAA,CAAI,KAAK,UAAU,CAAA,CAAA;AAAA,OACpB;AACA,MAAO,OAAA,GAAA,CAAA;AAAA,KACP,CAAA,CAAA;AAED,IAAM,MAAA,IAAA,GAAO,SAAS,MAAM;AAC3B,MAAA,OAAO,UAAW,CAAA,WAAA,CAAY,KAAW,MAAA,KAAA,CAAM,SAAS,KAAM,CAAA,KAAA,CAAA,CAAA;AAAA,KAC9D,CAAA,CAAA;AAGD,IAAA,KAAA;AAAA,MACC,MAAM,KAAM,CAAA,KAAA;AAAA,MACZ,CAAC,UAAU,QAAa,KAAA;AACvB,QAAI,IAAA,UAAA,IAAc,WAAW,cAAgB,EAAA;AAC5C,UAAW,UAAA,CAAA,cAAA,CAAe,UAAU,QAAQ,CAAA,CAAA;AAAA,SAC7C;AAAA,OACD;AAAA,KACD,CAAA;AAGA,IAAA,SAAS,IAAO,GAAA;AACf,MAAA,MAAM,OAAU,GAAA;AAAA,QACf,OAAO,KAAM,CAAA,KAAA;AAAA,QACb,KAAO,EAAA,KAAA,CAAM,KAAQ,GAAA,KAAA,CAAM,QAAQ,KAAM,CAAA,KAAA;AAAA,QACzC,MAAM,KAAM,CAAA,IAAA;AAAA,QACZ,KAAK,KAAM,CAAA,GAAA;AAAA,QACX,QAAQ,KAAM,CAAA,MAAA;AAAA,QACd,UAAU,KAAM,CAAA,QAAA;AAAA,QAChB,MAAM,KAAM,CAAA,IAAA;AAAA,QACZ,IAAI,KAAM,CAAA,EAAA;AAAA,QACV,WAAW,KAAM,CAAA,KAAA;AAAA,OAClB,CAAA;AACA,MAAA,UAAA,CAAW,OAAO,OAAO,CAAA,CAAA;AAAA,KAC1B;AAEA,IAAA,QAAA,CAAS,MAAM;AACd,MAAK,IAAA,EAAA,CAAA;AAAA,KACL,CAAA,CAAA;AAED,IAAA,eAAA,CAAgB,MAAM;AAAA,KAErB,CAAA,CAAA;;AAtFyB,MAAA,OAAA,CAAA,QAAA,IAAO,GAAA,IAAA,CAAI,QAAA,mCAApC,EAAAC,kBAAA;AAAA,QAEM,KAAA;AAAA,QAAA;AAAA,UAFwC,GAAA,EAAKC,MAAO,OAAA,CAAA;AAAA,UAAE,OAAKC,cAAA,CAAA,CAAC,kBAA2B,EAAA,QAAA,CAAQ,KAAA,CAAA,CAAA;AAAA;;UACpGC,UAAA,CAAa,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA;AAAA;;;;cADD,EAAA,IAAA,CAAI,KAAA,CAAA;AAAA;;;;;;;"}
1
+ {"version":3,"file":"tab-item.vue2.mjs","sources":["../../../../../../packages/components/tab/src/tab-item.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToTabItem'\r\n});\n</script>\n<template>\r\n\t<div v-show=\"show\" v-if=\"lazy ? show : true\" :key=\"langKey\" class=\"to-tab-page-item\" :class=\"setClass\">\r\n\t\t<slot></slot>\r\n\t</div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, nextTick, onBeforeUnmount, inject, useSlots, watch } from 'vue'\r\nimport { ITabProvide } from './tab.vue'\r\nimport { langKey } from '@touchvue/locale'\r\n\r\n\r\n\r\ninterface TabItemProps {\r\n\tdata?: any\r\n\tlabel?: string\r\n\tvalue?: string | number\r\n\ticon?: string\r\n\tpic?: string\r\n\tnumber?: string | number\r\n\tlazy?: boolean\r\n\ton?: boolean\r\n\tdisabled?: boolean\r\n\tcount?: string | number\r\n}\r\n\r\nconst slots = useSlots()\r\n\r\nconst props = withDefaults(defineProps<TabItemProps>(), {\r\n\tdata: null,\r\n\tlabel: '',\r\n\tvalue: '',\r\n\ticon: '',\r\n\tpic: '',\r\n\tnumber: '',\r\n\tlazy: false,\r\n\ton: false,\r\n\tdisabled: false,\r\n\tcount: ''\r\n})\r\n\r\n// 注入父组件的值\r\nconst tabProvide: ITabProvide = inject('TabProvide')\r\n\r\n// computed\r\nconst setClass = computed(() => {\r\n\tlet arr: string[] = []\r\n\tif (props.disabled) {\r\n\t\tarr.push('disabled')\r\n\t}\r\n\treturn arr\r\n})\r\n\r\nconst show = computed(() => {\r\n\treturn tabProvide.selectValue.value === (props.value || props.label)\r\n})\r\n\r\n// 监听 label 变化,更新 tab 数据\r\nwatch(\r\n\t() => props.label,\r\n\t(newLabel, oldLabel) => {\r\n\t\tif (tabProvide && tabProvide.updateTabLabel) {\r\n\t\t\ttabProvide.updateTabLabel(oldLabel, newLabel)\r\n\t\t}\r\n\t}\r\n)\r\n\r\n// methods\r\nfunction init() {\r\n\tconst tabData = {\r\n\t\tlabel: props.label,\r\n\t\tvalue: props.value ? props.value : props.label,\r\n\t\ticon: props.icon,\r\n\t\tpic: props.pic,\r\n\t\tnumber: props.number,\r\n\t\tdisabled: props.disabled,\r\n\t\tdata: props.data,\r\n\t\ton: props.on,\r\n\t\tcount: props.count,\r\n\t\tlabelSlot: slots.label\r\n\t}\r\n\ttabProvide.addTab(tabData)\r\n}\r\n\r\nnextTick(() => {\r\n\tinit()\r\n})\r\n\r\nonBeforeUnmount(() => {\r\n\t// tabProvide.removeTab(props.value)\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","_createElementBlock","_unref","_normalizeClass","_renderSlot"],"mappings":";;;AAEA,MAAA,cAA6BA,eAAmB,CAAA;AAAA,EAC/C,IAAM,EAAA,WAAA;AACP,CAAC,CAAA,CAAA;;;;;;;;;;;;;;;;AA4BD,IAAA,MAAM,QAAQ,QAAS,EAAA,CAAA;AAEvB,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAcd,IAAM,MAAA,UAAA,GAA0B,OAAO,YAAY,CAAA,CAAA;AAGnD,IAAM,MAAA,QAAA,GAAW,SAAS,MAAM;AAC/B,MAAA,IAAI,MAAgB,EAAC,CAAA;AACrB,MAAA,IAAI,MAAM,QAAU,EAAA;AACnB,QAAA,GAAA,CAAI,KAAK,UAAU,CAAA,CAAA;AAAA,OACpB;AACA,MAAO,OAAA,GAAA,CAAA;AAAA,KACP,CAAA,CAAA;AAED,IAAM,MAAA,IAAA,GAAO,SAAS,MAAM;AAC3B,MAAA,OAAO,UAAW,CAAA,WAAA,CAAY,KAAW,MAAA,KAAA,CAAM,SAAS,KAAM,CAAA,KAAA,CAAA,CAAA;AAAA,KAC9D,CAAA,CAAA;AAGD,IAAA,KAAA;AAAA,MACC,MAAM,KAAM,CAAA,KAAA;AAAA,MACZ,CAAC,UAAU,QAAa,KAAA;AACvB,QAAI,IAAA,UAAA,IAAc,WAAW,cAAgB,EAAA;AAC5C,UAAW,UAAA,CAAA,cAAA,CAAe,UAAU,QAAQ,CAAA,CAAA;AAAA,SAC7C;AAAA,OACD;AAAA,KACD,CAAA;AAGA,IAAA,SAAS,IAAO,GAAA;AACf,MAAA,MAAM,OAAU,GAAA;AAAA,QACf,OAAO,KAAM,CAAA,KAAA;AAAA,QACb,KAAO,EAAA,KAAA,CAAM,KAAQ,GAAA,KAAA,CAAM,QAAQ,KAAM,CAAA,KAAA;AAAA,QACzC,MAAM,KAAM,CAAA,IAAA;AAAA,QACZ,KAAK,KAAM,CAAA,GAAA;AAAA,QACX,QAAQ,KAAM,CAAA,MAAA;AAAA,QACd,UAAU,KAAM,CAAA,QAAA;AAAA,QAChB,MAAM,KAAM,CAAA,IAAA;AAAA,QACZ,IAAI,KAAM,CAAA,EAAA;AAAA,QACV,OAAO,KAAM,CAAA,KAAA;AAAA,QACb,WAAW,KAAM,CAAA,KAAA;AAAA,OAClB,CAAA;AACA,MAAA,UAAA,CAAW,OAAO,OAAO,CAAA,CAAA;AAAA,KAC1B;AAEA,IAAA,QAAA,CAAS,MAAM;AACd,MAAK,IAAA,EAAA,CAAA;AAAA,KACL,CAAA,CAAA;AAED,IAAA,eAAA,CAAgB,MAAM;AAAA,KAErB,CAAA,CAAA;;AAzFyB,MAAA,OAAA,CAAA,QAAA,IAAO,GAAA,IAAA,CAAI,QAAA,mCAApC,EAAAC,kBAAA;AAAA,QAEM,KAAA;AAAA,QAAA;AAAA,UAFwC,GAAA,EAAKC,MAAO,OAAA,CAAA;AAAA,UAAE,OAAKC,cAAA,CAAA,CAAC,kBAA2B,EAAA,QAAA,CAAQ,KAAA,CAAA,CAAA;AAAA;;UACpGC,UAAA,CAAa,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA;AAAA;;;;cADD,EAAA,IAAA,CAAI,KAAA,CAAA;AAAA;;;;;;;"}
@@ -1,4 +1,4 @@
1
- import { defineComponent, ref, computed, useSlots, watch, onMounted, onBeforeUnmount, nextTick, provide, resolveComponent, openBlock, createElementBlock, unref, normalizeClass, normalizeStyle, createElementVNode, renderSlot, createTextVNode, toDisplayString, createCommentVNode, Fragment, renderList, createBlock, mergeProps, withModifiers, Teleport, createVNode, withCtx } from 'vue';
1
+ import { defineComponent, ref, computed, useSlots, watch, onMounted, onBeforeUnmount, nextTick, provide, resolveComponent, openBlock, createElementBlock, unref, normalizeClass, normalizeStyle, createElementVNode, renderSlot, createTextVNode, toDisplayString, createCommentVNode, Fragment, renderList, createBlock, mergeProps, withCtx, withModifiers, Teleport, createVNode } from 'vue';
2
2
  import { ToIcon } from '../../icon/index.mjs';
3
3
  import { ToFloat } from '../../float/index.mjs';
4
4
  import { langKey } from '../../../locale/index.mjs';
@@ -536,6 +536,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
536
536
  });
537
537
  return (_ctx, _cache) => {
538
538
  const _component_to_pic = resolveComponent("to-pic");
539
+ const _component_to_tag = resolveComponent("to-tag");
539
540
  const _component_to_scroll = resolveComponent("to-scroll");
540
541
  return openBlock(), createElementBlock("div", {
541
542
  key: unref(langKey),
@@ -622,8 +623,29 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
622
623
  )
623
624
  ])
624
625
  ]),
626
+ item.count ? (openBlock(), createBlock(
627
+ _component_to_tag,
628
+ {
629
+ key: 2,
630
+ type: "number",
631
+ class: "to-tab-item-count"
632
+ },
633
+ {
634
+ default: withCtx(() => [
635
+ createTextVNode(
636
+ toDisplayString(item.count),
637
+ 1
638
+ /* TEXT */
639
+ )
640
+ ]),
641
+ _: 2
642
+ /* DYNAMIC */
643
+ },
644
+ 1024
645
+ /* DYNAMIC_SLOTS */
646
+ )) : createCommentVNode("v-if", true),
625
647
  __props.removable ? (openBlock(), createBlock(unref(ToIcon), {
626
- key: 2,
648
+ key: 3,
627
649
  value: "close",
628
650
  link: "",
629
651
  class: "to-tab-item-remove",
@@ -1 +1 @@
1
- {"version":3,"file":"tab.vue2.mjs","sources":["../../../../../../packages/components/tab/src/tab.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToTab'\r\n});\n</script>\n<template>\r\n\t<div :key=\"langKey\" class=\"to-tab\" :class=\"setClass\" :flex=\"flex ? flex : null\" :style=\"setStyle\">\r\n\t\t<div class=\"to-tab-tab\">\r\n\t\t\t<div v-if=\"props.title || $slots.title\" class=\"to-tab-title\">\r\n\t\t\t\t<div class=\"to-tab-title-text\">\r\n\t\t\t\t\t<slot name=\"title\">{{ title }}</slot>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div ref=\"list\" class=\"to-tab-list\" @scroll=\"handleListScroll\">\r\n\t\t\t\t<div ref=\"ul\" class=\"to-tab-wrapper\">\r\n\t\t\t\t\t<template v-for=\"(item, index) in _data\" :key=\"index\">\r\n\t\t\t\t\t\t<div v-if=\"$slots.center && Math.floor(_data.length / 2) === index\">\r\n\t\t\t\t\t\t\t<slot name=\"center\"></slot>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div v-else class=\"to-tab-item\" :data-tab-index=\"index\" :class=\"{ 'is-on': item.value === selectValue, 'is-disabled': item.disabled }\" :style=\"setTabStyle\" @click=\"changeTab(item, index, 'click')\" @mouseover=\"changeTab(item, index, 'hover')\" @contextmenu=\"contextmenu(item, index)\">\r\n\t\t\t\t\t\t\t<slot name=\"item\" :item=\"item\" :index=\"index\">\r\n\t\t\t\t\t\t\t\t<div class=\"to-tab-item-main\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"to-tab-item-left\"></div>\r\n\t\t\t\t\t\t\t\t\t<div class=\"to-tab-item-content\">\r\n\t\t\t\t\t\t\t\t\t\t<to-pic v-if=\"item.pic\" class=\"to-tab-item-pic\" :src=\"item.value === selectValue ? getPicOn(item.pic) : item.pic\"></to-pic>\r\n\t\t\t\t\t\t\t\t\t\t<to-icon v-if=\"item.icon\" :value=\"item.icon\" class=\"to-tab-item-icon\" :type=\"item.value === selectValue ? 'fill' : ''\" mode=\"tab-icon\"></to-icon>\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"to-tab-item-label\">\r\n\t\t\t\t\t\t\t\t\t\t\t<slot name=\"label\" v-bind=\"item\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ item.label }}\r\n\t\t\t\t\t\t\t\t\t\t\t</slot>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t<to-icon v-if=\"removable\" value=\"close\" link class=\"to-tab-item-remove\" @click.stop=\"removePTab(item, index)\"></to-icon>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<div class=\"to-tab-item-right\"></div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"to-tab-indicator\"></div>\r\n\t\t\t\t\t\t\t</slot>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div v-if=\"tabScrollShow\" ref=\"tabScrollRef\" class=\"to-tab-list-scroll\" :class=\"{ 'is-dragging': tabScrollDragging }\" :style=\"tabScrollStyle\" @mousedown=\"startTabScrollDrag\">\r\n\t\t\t\t\t<div class=\"to-tab-list-scroll-bar\"></div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div v-if=\"controlShow || overflowFloatShow || slot.fn\" class=\"to-tab-fn\">\r\n\t\t\t\t<to-icon v-if=\"over === 'control' && controlShow\" class=\"to-tab-fn-item\" link value=\"back\" @mousedown=\"controlLeftScroll\" @mouseup=\"scrollStop\" @mouseleave=\"scrollStop\"></to-icon>\r\n\t\t\t\t<to-icon v-if=\"over === 'control' && controlShow\" class=\"to-tab-fn-item\" link value=\"next\" @mousedown=\"controlRightScroll\" @mouseup=\"scrollStop\" @mouseleave=\"scrollStop\"></to-icon>\r\n\t\t\t\t<slot name=\"fn\"></slot>\r\n\t\t\t\t<to-icon v-if=\"overflowFloatShow\" ref=\"overflowIconRef\" value=\"more\" link @click=\"toggleOverflowFloat\"></to-icon>\r\n\t\t\t\t<Teleport v-if=\"overflowFloatShow\" to=\"body\">\r\n\t\t\t\t\t<div class=\"to-tab\">\r\n\t\t\t\t\t\t<to-float ref=\"overflowFloatRef\" align=\"right\" :global=\"false\" class=\"to-tab-over-float\" :lazy=\"false\" width=\"12\">\r\n\t\t\t\t\t\t\t<to-scroll class=\"to-tab-over-scroll\">\r\n\t\t\t\t\t\t\t\t<div class=\"to-tab-over-list\">\r\n\t\t\t\t\t\t\t\t\t<div v-for=\"tab in overflowTabs\" :key=\"tab.index\" class=\"to-tab-over-item\" :class=\"{ 'is-on': tab.item.value === selectValue, 'is-disabled': tab.item.disabled }\" @click=\"changeOverflowTab(tab)\" @contextmenu=\"contextmenu(tab.item, tab.index)\">\r\n\t\t\t\t\t\t\t\t\t\t<to-pic v-if=\"tab.item.pic\" class=\"to-tab-over-item-pic\" :src=\"tab.item.value === selectValue ? getPicOn(tab.item.pic) : tab.item.pic\"></to-pic>\r\n\t\t\t\t\t\t\t\t\t\t<to-icon v-if=\"tab.item.icon\" :value=\"tab.item.icon\" class=\"to-tab-over-item-icon\" :type=\"tab.item.value === selectValue ? 'fill' : ''\" mode=\"tab-icon\"></to-icon>\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"to-tab-over-item-label\">\r\n\t\t\t\t\t\t\t\t\t\t\t<slot name=\"label\" v-bind=\"tab.item\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ tab.item.label }}\r\n\t\t\t\t\t\t\t\t\t\t\t</slot>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t<to-icon v-if=\"removable\" value=\"close\" link class=\"to-tab-over-item-remove\" @click.stop=\"removeOverflowTab(tab)\"></to-icon>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</to-scroll>\r\n\t\t\t\t\t\t</to-float>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</Teleport>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"to-tab-divider\"></div>\r\n\t\t</div>\r\n\t\t<to-float v-if=\"contentType === 'float'\" ref=\"floatRef\" :lazy=\"false\">\r\n\t\t\t<slot></slot>\r\n\t\t</to-float>\r\n\t\t<div v-else class=\"to-tab-page\">\r\n\t\t\t<slot></slot>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { ref, computed, CSSProperties, provide, Ref, onMounted, onBeforeUnmount, watch, nextTick, useSlots } from 'vue'\r\nimport { ToFloat, ToIcon } from '@touchvue/components'\r\nimport { useDevice } from '@touchvue/hooks'\r\nimport { langKey } from '@touchvue/locale'\r\n\r\n\r\nconst emit = defineEmits(['update:modelValue', 'change', 'remove', 'contextmenu'])\r\n\r\nexport interface TabItem {\r\n\tlabel: string\r\n\tvalue: string | number\r\n\t[key: string]: any\r\n}\r\n\r\ninterface OverflowTab {\r\n\titem: TabItem\r\n\tindex: number\r\n}\r\n\r\nexport interface TabProps {\r\n\tflex?: boolean\r\n\tmodelValue?: string | number\r\n\titemWidth?: string | number\r\n\tmode?: string\r\n\tdata?: TabItem[] | string\r\n\tremovable?: boolean\r\n\tposition?: 'left' | 'right' | 'bottom' | 'top' | ''\r\n\titemDir?: 'v' | ''\r\n\tover?: 'float' | 'wrap' | 'control' | 'avg' | ''\r\n\tevent?: string\r\n\tcontentType?: string\r\n\ttitle?: string\r\n\theight?: string | number\r\n\tchangePic?: boolean\r\n\talign?: 'center' | ''\r\n\tbeforeChange?: () => boolean | Promise<boolean>\r\n\tbeforeRemove?: () => boolean | Promise<boolean>\r\n}\r\n\r\nexport interface ITabProvide {\r\n\taddTab: (item: TabItem) => void\r\n\tremoveTab: (val: string | number) => void\r\n\tupdateTabLabel: (val: string | number, label: string) => void\r\n\tselectValue: Ref<string, string>\r\n}\r\n\r\nconst props = withDefaults(defineProps<TabProps>(), {\r\n\tmodelValue: '',\r\n\titemWidth: '',\r\n\tmode: 'default',\r\n\tover: '',\r\n\titemDir: '',\r\n\tevent: 'click',\r\n\tremovable: false,\r\n\tdata: () => [] as TabItem[],\r\n\tcontentType: '',\r\n\ttitle: '',\r\n\theight: '',\r\n\tbeforeChange: null,\r\n\tbeforeRemove: null,\r\n\tchangePic: false,\r\n\tposition: '',\r\n\talign: '',\r\n\tflex: false\r\n})\r\n\r\nconst selectValue: any = ref('')\r\nconst _data = ref<TabItem[]>([])\r\nconst floatRef = ref<any>(null)\r\nconst overflowFloatRef = ref<any>(null)\r\nconst overflowIconRef = ref<any>(null)\r\nconst overflowTabs = ref<OverflowTab[]>([])\r\nconst overflowFloatShow = computed(() => props.over === 'float' && overflowTabs.value.length > 0)\r\nconst ul = ref<HTMLElement | null>(null)\r\nconst list = ref<HTMLElement | null>(null)\r\nconst tabScrollRef = ref<HTMLElement | null>(null)\r\nconst tabScrollWidth = ref(0)\r\nconst tabScrollLeft = ref(0)\r\nconst tabScrollable = ref(false)\r\nconst tabScrollDragging = ref(false)\r\nconst activeOver = ref<TabProps['over']>('')\r\nlet scrollTimer: ReturnType<typeof setInterval> | null = null\r\nconst controlShow = ref(false)\r\nlet stopChange = false\r\nlet activeOverVersion = 0\r\nconst slot = useSlots()\r\nconst { isPc } = useDevice()\r\nconst tabScrollShow = computed(() => isPc.value && tabScrollable.value)\r\nconst tabScrollStyle = computed<CSSProperties>(() => {\r\n\treturn {\r\n\t\twidth: `${tabScrollWidth.value}px`,\r\n\t\tleft: `${tabScrollLeft.value}px`\r\n\t}\r\n})\r\n\r\nwatch(\r\n\t() => props.modelValue,\r\n\t(val, old) => {\r\n\t\tif (val || val === 0) {\r\n\t\t\tselectValue.value = val\r\n\t\t\tscrollSelectTabIntoView()\r\n\t\t} else {\r\n\t\t\temit('update:modelValue', old)\r\n\t\t}\r\n\t},\r\n\t{ immediate: true }\r\n)\r\nwatch(\r\n\t() => props.data,\r\n\t() => {\r\n\t\tif (!stopChange) {\r\n\t\t\tinitData()\r\n\t\t}\r\n\t},\r\n\t{ deep: true }\r\n)\r\nwatch(\r\n\t() => isPc.value,\r\n\t() => {\r\n\t\tupdateTabLayout()\r\n\t}\r\n)\r\nwatch(\r\n\t() => props.over,\r\n\t() => {\r\n\t\tupdateTabLayout()\r\n\t}\r\n)\r\nonMounted(() => {\r\n\tinitData()\r\n\twindow.addEventListener('resize', updateTabLayout)\r\n})\r\nonBeforeUnmount(() => {\r\n\twindow.removeEventListener('resize', updateTabLayout)\r\n\tstopTabScrollDrag()\r\n\tscrollStop()\r\n})\r\n\r\nfunction initData() {\r\n\tif (props.data && props.data.length) {\r\n\t\tif (typeof props.data === 'string') {\r\n\t\t\t_data.value = props.data.split(',').map(item => ({ label: item, value: item }))\r\n\t\t} else if (Array.isArray(props.data) && props.data.length) {\r\n\t\t\t_data.value = props.data\r\n\t\t}\r\n\t\tif (!selectValue.value && selectValue.value !== 0) {\r\n\t\t\tconst hasNoOnItems = !_data.value.some(item => item.on)\r\n\t\t\tif (hasNoOnItems) {\r\n\t\t\t\tselectValue.value = _data.value[0].value\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tif (props.over === 'control') {\r\n\t\tnextTick(() => {\r\n\t\t\tsetLayout()\r\n\t\t})\r\n\t}\r\n\tif (props.over === 'float') {\r\n\t\tupdateOverflowTabs()\r\n\t}\r\n\tupdateTabScroll()\r\n\tupdateActiveOver()\r\n}\r\nconst setTabStyle = computed(() => {\r\n\tlet obj: CSSProperties = {}\r\n\tif (props.itemWidth && !isNaN(Number(props.itemWidth)) && props.itemWidth !== 'avg') {\r\n\t\tobj.width = props.itemWidth + 'em'\r\n\t}\r\n\treturn obj\r\n})\r\nconst setClass = computed(() => {\r\n\tlet arr: string[] = []\r\n\tif (props.height === 'full') {\r\n\t\tarr.push(`height-full`)\r\n\t}\r\n\tif (props.mode) {\r\n\t\tarr.push(`mode-${props.mode}`)\r\n\t}\r\n\tif (props.position === 'left') {\r\n\t\tarr.push(`position-left`)\r\n\t\tarr.push(`dir-v`)\r\n\t}\r\n\tif (props.position === 'right') {\r\n\t\tarr.push(`position-right`)\r\n\t\tarr.push(`dir-v`)\r\n\t}\r\n\tif (props.position === 'bottom') {\r\n\t\tarr.push(`position-bottom`)\r\n\t}\r\n\tif (props.itemDir) {\r\n\t\tarr.push(`item-dir-${props.itemDir}`)\r\n\t}\r\n\tif (props.itemWidth === 'avg') {\r\n\t\tarr.push(`item-width-avg`)\r\n\t}\r\n\tif (props.align) {\r\n\t\tarr.push(`align-${props.align}`)\r\n\t}\r\n\tif (activeOver.value) {\r\n\t\tarr.push(`over-${activeOver.value}`)\r\n\t}\r\n\treturn arr\r\n})\r\n\r\nconst setStyle = computed(() => {\r\n\tlet obj: CSSProperties = {}\r\n\tif (props.height) {\r\n\t\tif (!isNaN(Number(props.height))) {\r\n\t\t\tobj.height = props.height + 'em'\r\n\t\t} else {\r\n\t\t\tobj.height = props.height as string\r\n\t\t}\r\n\t}\r\n\treturn obj\r\n})\r\n\r\nasync function changeTab(item, index, event, force = false) {\r\n\tif (!force && props.event !== event) return false\r\n\tif (item.disabled) return false\r\n\tlet flag = true\r\n\tif (props.beforeChange) {\r\n\t\tlet fn = props.beforeChange\r\n\t\tif (typeof fn === 'function') {\r\n\t\t\tif (typeof (fn() as Promise<boolean>).then === 'function') {\r\n\t\t\t\tflag = await fn()\r\n\t\t\t} else {\r\n\t\t\t\tflag = (fn as any)()\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tif (!flag) return false\r\n\tstopChange = true\r\n\tif (props.contentType === 'float') {\r\n\t\tfloatRef.value.open(ul.value)\r\n\t}\r\n\tselectValue.value = item.value\r\n\temit('update:modelValue', item.value)\r\n\temit('change', item.value, item, index)\r\n\tscrollTabIntoView(index)\r\n\tsetTimeout(() => {\r\n\t\tstopChange = false\r\n\t}, 10)\r\n\treturn true\r\n}\r\n\r\nasync function removePTab(item, idx) {\r\n\tlet flag = true\r\n\tif (props.beforeRemove) {\r\n\t\tlet fn = props.beforeRemove\r\n\t\tif (typeof fn === 'function') {\r\n\t\t\tif (typeof (fn() as Promise<boolean>).then === 'function') {\r\n\t\t\t\tflag = await fn()\r\n\t\t\t} else {\r\n\t\t\t\tflag = (fn as any)()\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tif (!flag) return false\r\n\tstopChange = true\r\n\tif (item.value === selectValue.value) {\r\n\t\tif (idx > 0) {\r\n\t\t\tselectValue.value = _data.value[idx - 1].value\r\n\t\t} else {\r\n\t\t\tselectValue.value = ''\r\n\t\t}\r\n\t\temit('update:modelValue', selectValue.value)\r\n\t}\r\n\t_data.value.splice(idx, 1)\r\n\tif (props.over === 'control') {\r\n\t\tsetLayout()\r\n\t}\r\n\tif (props.over === 'float') {\r\n\t\tupdateOverflowTabs()\r\n\t}\r\n\tupdateTabScroll()\r\n\tupdateActiveOver()\r\n\temit('remove', item.value, item, idx)\r\n\tsetTimeout(() => {\r\n\t\tstopChange = false\r\n\t}, 10)\r\n}\r\nfunction removeTab(val) {\r\n\t//\r\n\tconsole.log(val)\r\n}\r\nfunction addTab(tab) {\r\n\tif (props.data && props.data.length) return false\r\n\tstopChange = true\r\n\tlet idx = _data.value.findIndex(item => item.value === tab.value)\r\n\tif (idx === -1) {\r\n\t\tif (tab.on) {\r\n\t\t\tselectValue.value = tab.value\r\n\t\t}\r\n\t\t_data.value.push(tab)\r\n\t\tif (props.over === 'control') {\r\n\t\t\tnextTick(() => {\r\n\t\t\t\tsetLayout()\r\n\t\t\t})\r\n\t\t}\r\n\t\tif (props.over === 'float') {\r\n\t\t\tupdateOverflowTabs()\r\n\t\t}\r\n\t\tupdateTabScroll()\r\n\t\tupdateActiveOver()\r\n\t}\r\n\tsetTimeout(() => {\r\n\t\tstopChange = false\r\n\t}, 10)\r\n}\r\nfunction updateTabLabel(oldLabel: string | number, label: string) {\r\n\tlet idx = _data.value.findIndex(item => item.label === oldLabel)\r\n\tif (idx !== -1) {\r\n\t\t_data.value[idx].label = label\r\n\t\tupdateTabLayout()\r\n\t}\r\n}\r\nfunction getPicOn(pic) {\r\n\tlet src = ''\r\n\tif (pic && props.changePic) {\r\n\t\tlet arr = pic.split('.')\r\n\t\tif (arr.length === 2) {\r\n\t\t\tsrc = arr[0] + '-on.' + arr[1]\r\n\t\t} else if (arr.length > 2) {\r\n\t\t\tarr.forEach((item, idx) => {\r\n\t\t\t\tif (idx === arr.length - 1) {\r\n\t\t\t\t\tsrc += '-on.' + item\r\n\t\t\t\t} else {\r\n\t\t\t\t\tsrc += item\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}\r\n\t} else {\r\n\t\tsrc = pic\r\n\t}\r\n\treturn src\r\n}\r\nfunction contextmenu(item, idx) {\r\n\temit('contextmenu', item.value, item, idx)\r\n}\r\nfunction updateTabLayout() {\r\n\tif (props.over === 'control') {\r\n\t\tsetLayout()\r\n\t}\r\n\tupdateActiveOver()\r\n\tupdateOverflowTabs()\r\n\tupdateTabScroll()\r\n}\r\nfunction handleListScroll() {\r\n\tsetOverflowTabs()\r\n\tsetTabScroll()\r\n}\r\nfunction updateOverflowTabs() {\r\n\tnextTick(() => {\r\n\t\tsetOverflowTabs()\r\n\t})\r\n}\r\nfunction setOverflowTabs() {\r\n\tif (props.over !== 'float' || !list.value || !ul.value) {\r\n\t\toverflowTabs.value = []\r\n\t\treturn\r\n\t}\r\n\tconst listRect = list.value.getBoundingClientRect()\r\n\tif (!listRect.width || !listRect.height) {\r\n\t\toverflowTabs.value = []\r\n\t\treturn\r\n\t}\r\n\tconst hiddenIndexes = new Set<number>()\r\n\tconst itemNodes = Array.from(ul.value.querySelectorAll('.to-tab-item')) as HTMLElement[]\r\n\titemNodes.forEach(node => {\r\n\t\tconst index = Number(node.dataset.tabIndex)\r\n\t\tif (Number.isNaN(index)) return\r\n\t\tconst rect = node.getBoundingClientRect()\r\n\t\tconst isHidden = rect.left < listRect.left - 1 || rect.right > listRect.right + 1 || rect.top < listRect.top - 1 || rect.bottom > listRect.bottom + 1\r\n\t\tif (isHidden) {\r\n\t\t\thiddenIndexes.add(index)\r\n\t\t}\r\n\t})\r\n\tconst oldShow = overflowTabs.value.length > 0\r\n\toverflowTabs.value = _data.value.map((item, index) => ({ item, index })).filter(tab => hiddenIndexes.has(tab.index))\r\n\tif (oldShow !== overflowTabs.value.length > 0) {\r\n\t\tupdateOverflowTabs()\r\n\t}\r\n}\r\nfunction updateTabScroll() {\r\n\tnextTick(() => {\r\n\t\tsetTabScroll()\r\n\t})\r\n}\r\nfunction setTabScroll() {\r\n\tif (!isPc.value || !list.value || !ul.value) {\r\n\t\ttabScrollable.value = false\r\n\t\treturn\r\n\t}\r\n\tconst listWidth = list.value.clientWidth\r\n\tconst scrollWidth = ul.value.scrollWidth\r\n\tconst scrollRange = scrollWidth - listWidth\r\n\tif (listWidth <= 0 || scrollRange <= 1) {\r\n\t\ttabScrollable.value = false\r\n\t\ttabScrollWidth.value = 0\r\n\t\ttabScrollLeft.value = 0\r\n\t\tlist.value.scrollLeft = 0\r\n\t\treturn\r\n\t}\r\n\tconst scrollLeft = Math.max(0, Math.min(scrollRange, list.value.scrollLeft))\r\n\tif (scrollLeft !== list.value.scrollLeft) {\r\n\t\tlist.value.scrollLeft = scrollLeft\r\n\t}\r\n\ttabScrollable.value = true\r\n\ttabScrollWidth.value = Math.max((listWidth * listWidth) / scrollWidth, 16)\r\n\tconst trackRange = Math.max(listWidth - tabScrollWidth.value, 0)\r\n\tconst scrollRatio = scrollLeft / scrollRange\r\n\ttabScrollLeft.value = scrollLeft + scrollRatio * trackRange\r\n}\r\nfunction getTabScrollRange() {\r\n\tif (!list.value || !ul.value) return 0\r\n\treturn Math.max(ul.value.scrollWidth - list.value.clientWidth, 0)\r\n}\r\nasync function updateActiveOver() {\r\n\tconst version = ++activeOverVersion\r\n\tconst over = props.over\r\n\tif (over !== 'avg' && over !== 'wrap') {\r\n\t\tactiveOver.value = over\r\n\t\treturn\r\n\t}\r\n\tactiveOver.value = ''\r\n\tawait nextTick()\r\n\tif (version !== activeOverVersion || props.over !== over || !list.value || !ul.value) return\r\n\tactiveOver.value = getTabScrollRange() > 1 ? over : ''\r\n\tawait nextTick()\r\n\tif (version !== activeOverVersion) return\r\n\tsetTabScroll()\r\n}\r\nfunction setTabScrollLeft(scrollLeft: number) {\r\n\tif (!list.value) return\r\n\tconst scrollRange = getTabScrollRange()\r\n\tlist.value.scrollLeft = Math.max(0, Math.min(scrollRange, scrollLeft))\r\n\tsetTabScroll()\r\n\tsetOverflowTabs()\r\n}\r\nfunction startTabScrollDrag(event: MouseEvent) {\r\n\tif (!tabScrollShow.value || !list.value || !ul.value) return\r\n\tevent.preventDefault()\r\n\ttabScrollDragging.value = true\r\n\tconst startX = event.clientX\r\n\tconst startScrollLeft = list.value.scrollLeft\r\n\tconst listWidth = list.value.clientWidth\r\n\tconst scrollRange = getTabScrollRange()\r\n\tconst trackRange = Math.max(listWidth - tabScrollWidth.value, 1)\r\n\tconst move = (moveEvent: MouseEvent) => {\r\n\t\tmoveEvent.preventDefault()\r\n\t\tconst nextScrollLeft = startScrollLeft + ((moveEvent.clientX - startX) / trackRange) * scrollRange\r\n\t\tsetTabScrollLeft(nextScrollLeft)\r\n\t}\r\n\tconst up = () => {\r\n\t\tstopTabScrollDrag()\r\n\t}\r\n\twindow.addEventListener('mousemove', move)\r\n\twindow.addEventListener('mouseup', up, { once: true })\r\n\ttabScrollMove = move\r\n\ttabScrollUp = up\r\n}\r\nlet tabScrollMove: ((event: MouseEvent) => void) | null = null\r\nlet tabScrollUp: (() => void) | null = null\r\nfunction stopTabScrollDrag() {\r\n\ttabScrollDragging.value = false\r\n\tif (tabScrollMove) {\r\n\t\twindow.removeEventListener('mousemove', tabScrollMove)\r\n\t\ttabScrollMove = null\r\n\t}\r\n\tif (tabScrollUp) {\r\n\t\twindow.removeEventListener('mouseup', tabScrollUp)\r\n\t\ttabScrollUp = null\r\n\t}\r\n}\r\nasync function toggleOverflowFloat() {\r\n\tupdateOverflowTabs()\r\n\tawait nextTick()\r\n\tif (overflowTabs.value.length) {\r\n\t\toverflowFloatRef.value?.toggle?.(overflowIconRef.value)\r\n\t} else {\r\n\t\toverflowFloatRef.value?.close?.()\r\n\t}\r\n}\r\nasync function changeOverflowTab(tab: OverflowTab) {\r\n\tconst changed = await changeTab(tab.item, tab.index, 'click', true)\r\n\tif (changed !== false) {\r\n\t\toverflowFloatRef.value?.close?.()\r\n\t\tscrollTabIntoView(tab.index)\r\n\t}\r\n}\r\nasync function removeOverflowTab(tab: OverflowTab) {\r\n\tawait removePTab(tab.item, tab.index)\r\n\tupdateOverflowTabs()\r\n\tawait nextTick()\r\n\tif (!overflowTabs.value.length) {\r\n\t\toverflowFloatRef.value?.close?.()\r\n\t}\r\n}\r\nfunction scrollTabIntoView(index: number) {\r\n\tnextTick(() => {\r\n\t\tif (!list.value || !ul.value) return\r\n\t\tconst node = ul.value.querySelector(`.to-tab-item[data-tab-index=\"${index}\"]`) as HTMLElement | null\r\n\t\tif (!node) return\r\n\t\tconst listRect = list.value.getBoundingClientRect()\r\n\t\tconst nodeRect = node.getBoundingClientRect()\r\n\t\tif (nodeRect.right > listRect.right) {\r\n\t\t\tsetTabScrollLeft(list.value.scrollLeft + nodeRect.right - listRect.right)\r\n\t\t} else if (nodeRect.left < listRect.left) {\r\n\t\t\tsetTabScrollLeft(list.value.scrollLeft + nodeRect.left - listRect.left)\r\n\t\t} else {\r\n\t\t\tupdateOverflowTabs()\r\n\t\t\tupdateTabScroll()\r\n\t\t}\r\n\t})\r\n}\r\nfunction scrollSelectTabIntoView() {\r\n\tconst index = _data.value.findIndex(item => item.value === selectValue.value)\r\n\tif (index !== -1) {\r\n\t\tscrollTabIntoView(index)\r\n\t}\r\n}\r\n// function calcTabFloat() {\r\n// \tlet listWidth = list.value.offsetWidth\r\n// \tlet nodeList = ul.value.querySelectorAll('.to-tab-item')\r\n// \tlet liWidths = 0\r\n// \tlet maxIdx = 0\r\n// \tnodeList.forEach((item, idx) => {\r\n// \t\tif (liWidths + item.offsetWidth < listWidth) {\r\n// \t\t\tliWidths += item.offsetWidth\r\n// \t\t\tmaxIdx = idx\r\n// \t\t}\r\n// \t})\r\n// }\r\nfunction controlLeftScroll() {\r\n\tscrollTimer = setInterval(() => {\r\n\t\tsetTabScrollLeft((list.value?.scrollLeft || 0) - 3)\r\n\t}, 1)\r\n}\r\nfunction controlRightScroll() {\r\n\tscrollTimer = setInterval(() => {\r\n\t\tsetTabScrollLeft((list.value?.scrollLeft || 0) + 3)\r\n\t}, 1)\r\n}\r\nfunction scrollStop() {\r\n\tif (scrollTimer) {\r\n\t\tclearInterval(scrollTimer)\r\n\t\tscrollTimer = null\r\n\t}\r\n}\r\nfunction setLayout() {\r\n\tnextTick(() => {\r\n\t\tif (!list.value || !ul.value) {\r\n\t\t\tcontrolShow.value = false\r\n\t\t\treturn\r\n\t\t}\r\n\t\tcontrolShow.value = getTabScrollRange() > 1\r\n\t\tif (!controlShow.value) {\r\n\t\t\tlist.value.scrollLeft = 0\r\n\t\t}\r\n\t\tsetTabScroll()\r\n\t})\r\n}\r\nprovide<ITabProvide>('TabProvide', {\r\n\taddTab,\r\n\tremoveTab,\r\n\tupdateTabLabel,\r\n\tselectValue\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","_createElementBlock","_unref","_normalizeClass","_createElementVNode","$slots","_renderSlot","_openBlock","_Fragment","_renderList","_createBlock","_mergeProps","_createTextVNode","_toDisplayString","_withModifiers","_Teleport","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"tab.vue2.mjs","sources":["../../../../../../packages/components/tab/src/tab.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\r\n\tname: 'ToTab'\r\n});\n</script>\n<template>\r\n\t<div :key=\"langKey\" class=\"to-tab\" :class=\"setClass\" :flex=\"flex ? flex : null\" :style=\"setStyle\">\r\n\t\t<div class=\"to-tab-tab\">\r\n\t\t\t<div v-if=\"props.title || $slots.title\" class=\"to-tab-title\">\r\n\t\t\t\t<div class=\"to-tab-title-text\">\r\n\t\t\t\t\t<slot name=\"title\">{{ title }}</slot>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div ref=\"list\" class=\"to-tab-list\" @scroll=\"handleListScroll\">\r\n\t\t\t\t<div ref=\"ul\" class=\"to-tab-wrapper\">\r\n\t\t\t\t\t<template v-for=\"(item, index) in _data\" :key=\"index\">\r\n\t\t\t\t\t\t<div v-if=\"$slots.center && Math.floor(_data.length / 2) === index\">\r\n\t\t\t\t\t\t\t<slot name=\"center\"></slot>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div v-else class=\"to-tab-item\" :data-tab-index=\"index\" :class=\"{ 'is-on': item.value === selectValue, 'is-disabled': item.disabled }\" :style=\"setTabStyle\" @click=\"changeTab(item, index, 'click')\" @mouseover=\"changeTab(item, index, 'hover')\" @contextmenu=\"contextmenu(item, index)\">\r\n\t\t\t\t\t\t\t<slot name=\"item\" :item=\"item\" :index=\"index\">\r\n\t\t\t\t\t\t\t\t<div class=\"to-tab-item-main\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"to-tab-item-left\"></div>\r\n\t\t\t\t\t\t\t\t\t<div class=\"to-tab-item-content\">\r\n\t\t\t\t\t\t\t\t\t\t<to-pic v-if=\"item.pic\" class=\"to-tab-item-pic\" :src=\"item.value === selectValue ? getPicOn(item.pic) : item.pic\"></to-pic>\r\n\t\t\t\t\t\t\t\t\t\t<to-icon v-if=\"item.icon\" :value=\"item.icon\" class=\"to-tab-item-icon\" :type=\"item.value === selectValue ? 'fill' : ''\" mode=\"tab-icon\"></to-icon>\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"to-tab-item-label\">\r\n\t\t\t\t\t\t\t\t\t\t\t<slot name=\"label\" v-bind=\"item\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ item.label }}\r\n\t\t\t\t\t\t\t\t\t\t\t</slot>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t<to-tag v-if=\"item.count\" type=\"number\" class=\"to-tab-item-count\">{{ item.count }}</to-tag>\r\n\t\t\t\t\t\t\t\t\t\t<to-icon v-if=\"removable\" value=\"close\" link class=\"to-tab-item-remove\" @click.stop=\"removePTab(item, index)\"></to-icon>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<div class=\"to-tab-item-right\"></div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"to-tab-indicator\"></div>\r\n\t\t\t\t\t\t\t</slot>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div v-if=\"tabScrollShow\" ref=\"tabScrollRef\" class=\"to-tab-list-scroll\" :class=\"{ 'is-dragging': tabScrollDragging }\" :style=\"tabScrollStyle\" @mousedown=\"startTabScrollDrag\">\r\n\t\t\t\t\t<div class=\"to-tab-list-scroll-bar\"></div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div v-if=\"controlShow || overflowFloatShow || slot.fn\" class=\"to-tab-fn\">\r\n\t\t\t\t<to-icon v-if=\"over === 'control' && controlShow\" class=\"to-tab-fn-item\" link value=\"back\" @mousedown=\"controlLeftScroll\" @mouseup=\"scrollStop\" @mouseleave=\"scrollStop\"></to-icon>\r\n\t\t\t\t<to-icon v-if=\"over === 'control' && controlShow\" class=\"to-tab-fn-item\" link value=\"next\" @mousedown=\"controlRightScroll\" @mouseup=\"scrollStop\" @mouseleave=\"scrollStop\"></to-icon>\r\n\t\t\t\t<slot name=\"fn\"></slot>\r\n\t\t\t\t<to-icon v-if=\"overflowFloatShow\" ref=\"overflowIconRef\" value=\"more\" link @click=\"toggleOverflowFloat\"></to-icon>\r\n\t\t\t\t<Teleport v-if=\"overflowFloatShow\" to=\"body\">\r\n\t\t\t\t\t<div class=\"to-tab\">\r\n\t\t\t\t\t\t<to-float ref=\"overflowFloatRef\" align=\"right\" :global=\"false\" class=\"to-tab-over-float\" :lazy=\"false\" width=\"12\">\r\n\t\t\t\t\t\t\t<to-scroll class=\"to-tab-over-scroll\">\r\n\t\t\t\t\t\t\t\t<div class=\"to-tab-over-list\">\r\n\t\t\t\t\t\t\t\t\t<div v-for=\"tab in overflowTabs\" :key=\"tab.index\" class=\"to-tab-over-item\" :class=\"{ 'is-on': tab.item.value === selectValue, 'is-disabled': tab.item.disabled }\" @click=\"changeOverflowTab(tab)\" @contextmenu=\"contextmenu(tab.item, tab.index)\">\r\n\t\t\t\t\t\t\t\t\t\t<to-pic v-if=\"tab.item.pic\" class=\"to-tab-over-item-pic\" :src=\"tab.item.value === selectValue ? getPicOn(tab.item.pic) : tab.item.pic\"></to-pic>\r\n\t\t\t\t\t\t\t\t\t\t<to-icon v-if=\"tab.item.icon\" :value=\"tab.item.icon\" class=\"to-tab-over-item-icon\" :type=\"tab.item.value === selectValue ? 'fill' : ''\" mode=\"tab-icon\"></to-icon>\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"to-tab-over-item-label\">\r\n\t\t\t\t\t\t\t\t\t\t\t<slot name=\"label\" v-bind=\"tab.item\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ tab.item.label }}\r\n\t\t\t\t\t\t\t\t\t\t\t</slot>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t<to-icon v-if=\"removable\" value=\"close\" link class=\"to-tab-over-item-remove\" @click.stop=\"removeOverflowTab(tab)\"></to-icon>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</to-scroll>\r\n\t\t\t\t\t\t</to-float>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</Teleport>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"to-tab-divider\"></div>\r\n\t\t</div>\r\n\t\t<to-float v-if=\"contentType === 'float'\" ref=\"floatRef\" :lazy=\"false\">\r\n\t\t\t<slot></slot>\r\n\t\t</to-float>\r\n\t\t<div v-else class=\"to-tab-page\">\r\n\t\t\t<slot></slot>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { ref, computed, CSSProperties, provide, Ref, onMounted, onBeforeUnmount, watch, nextTick, useSlots } from 'vue'\r\nimport { ToFloat, ToIcon } from '@touchvue/components'\r\nimport { useDevice } from '@touchvue/hooks'\r\nimport { langKey } from '@touchvue/locale'\r\n\r\n\r\nconst emit = defineEmits(['update:modelValue', 'change', 'remove', 'contextmenu'])\r\n\r\nexport interface TabItem {\r\n\tlabel: string\r\n\tvalue: string | number\r\n\t[key: string]: any\r\n}\r\n\r\ninterface OverflowTab {\r\n\titem: TabItem\r\n\tindex: number\r\n}\r\n\r\nexport interface TabProps {\r\n\tflex?: boolean\r\n\tmodelValue?: string | number\r\n\titemWidth?: string | number\r\n\tmode?: string\r\n\tdata?: TabItem[] | string\r\n\tremovable?: boolean\r\n\tposition?: 'left' | 'right' | 'bottom' | 'top' | ''\r\n\titemDir?: 'v' | ''\r\n\tover?: 'float' | 'wrap' | 'control' | 'avg' | ''\r\n\tevent?: string\r\n\tcontentType?: string\r\n\ttitle?: string\r\n\theight?: string | number\r\n\tchangePic?: boolean\r\n\talign?: 'center' | ''\r\n\tbeforeChange?: () => boolean | Promise<boolean>\r\n\tbeforeRemove?: () => boolean | Promise<boolean>\r\n}\r\n\r\nexport interface ITabProvide {\r\n\taddTab: (item: TabItem) => void\r\n\tremoveTab: (val: string | number) => void\r\n\tupdateTabLabel: (val: string | number, label: string) => void\r\n\tselectValue: Ref<string, string>\r\n}\r\n\r\nconst props = withDefaults(defineProps<TabProps>(), {\r\n\tmodelValue: '',\r\n\titemWidth: '',\r\n\tmode: 'default',\r\n\tover: '',\r\n\titemDir: '',\r\n\tevent: 'click',\r\n\tremovable: false,\r\n\tdata: () => [] as TabItem[],\r\n\tcontentType: '',\r\n\ttitle: '',\r\n\theight: '',\r\n\tbeforeChange: null,\r\n\tbeforeRemove: null,\r\n\tchangePic: false,\r\n\tposition: '',\r\n\talign: '',\r\n\tflex: false\r\n})\r\n\r\nconst selectValue: any = ref('')\r\nconst _data = ref<TabItem[]>([])\r\nconst floatRef = ref<any>(null)\r\nconst overflowFloatRef = ref<any>(null)\r\nconst overflowIconRef = ref<any>(null)\r\nconst overflowTabs = ref<OverflowTab[]>([])\r\nconst overflowFloatShow = computed(() => props.over === 'float' && overflowTabs.value.length > 0)\r\nconst ul = ref<HTMLElement | null>(null)\r\nconst list = ref<HTMLElement | null>(null)\r\nconst tabScrollRef = ref<HTMLElement | null>(null)\r\nconst tabScrollWidth = ref(0)\r\nconst tabScrollLeft = ref(0)\r\nconst tabScrollable = ref(false)\r\nconst tabScrollDragging = ref(false)\r\nconst activeOver = ref<TabProps['over']>('')\r\nlet scrollTimer: ReturnType<typeof setInterval> | null = null\r\nconst controlShow = ref(false)\r\nlet stopChange = false\r\nlet activeOverVersion = 0\r\nconst slot = useSlots()\r\nconst { isPc } = useDevice()\r\nconst tabScrollShow = computed(() => isPc.value && tabScrollable.value)\r\nconst tabScrollStyle = computed<CSSProperties>(() => {\r\n\treturn {\r\n\t\twidth: `${tabScrollWidth.value}px`,\r\n\t\tleft: `${tabScrollLeft.value}px`\r\n\t}\r\n})\r\n\r\nwatch(\r\n\t() => props.modelValue,\r\n\t(val, old) => {\r\n\t\tif (val || val === 0) {\r\n\t\t\tselectValue.value = val\r\n\t\t\tscrollSelectTabIntoView()\r\n\t\t} else {\r\n\t\t\temit('update:modelValue', old)\r\n\t\t}\r\n\t},\r\n\t{ immediate: true }\r\n)\r\nwatch(\r\n\t() => props.data,\r\n\t() => {\r\n\t\tif (!stopChange) {\r\n\t\t\tinitData()\r\n\t\t}\r\n\t},\r\n\t{ deep: true }\r\n)\r\nwatch(\r\n\t() => isPc.value,\r\n\t() => {\r\n\t\tupdateTabLayout()\r\n\t}\r\n)\r\nwatch(\r\n\t() => props.over,\r\n\t() => {\r\n\t\tupdateTabLayout()\r\n\t}\r\n)\r\nonMounted(() => {\r\n\tinitData()\r\n\twindow.addEventListener('resize', updateTabLayout)\r\n})\r\nonBeforeUnmount(() => {\r\n\twindow.removeEventListener('resize', updateTabLayout)\r\n\tstopTabScrollDrag()\r\n\tscrollStop()\r\n})\r\n\r\nfunction initData() {\r\n\tif (props.data && props.data.length) {\r\n\t\tif (typeof props.data === 'string') {\r\n\t\t\t_data.value = props.data.split(',').map(item => ({ label: item, value: item }))\r\n\t\t} else if (Array.isArray(props.data) && props.data.length) {\r\n\t\t\t_data.value = props.data\r\n\t\t}\r\n\t\tif (!selectValue.value && selectValue.value !== 0) {\r\n\t\t\tconst hasNoOnItems = !_data.value.some(item => item.on)\r\n\t\t\tif (hasNoOnItems) {\r\n\t\t\t\tselectValue.value = _data.value[0].value\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tif (props.over === 'control') {\r\n\t\tnextTick(() => {\r\n\t\t\tsetLayout()\r\n\t\t})\r\n\t}\r\n\tif (props.over === 'float') {\r\n\t\tupdateOverflowTabs()\r\n\t}\r\n\tupdateTabScroll()\r\n\tupdateActiveOver()\r\n}\r\nconst setTabStyle = computed(() => {\r\n\tlet obj: CSSProperties = {}\r\n\tif (props.itemWidth && !isNaN(Number(props.itemWidth)) && props.itemWidth !== 'avg') {\r\n\t\tobj.width = props.itemWidth + 'em'\r\n\t}\r\n\treturn obj\r\n})\r\nconst setClass = computed(() => {\r\n\tlet arr: string[] = []\r\n\tif (props.height === 'full') {\r\n\t\tarr.push(`height-full`)\r\n\t}\r\n\tif (props.mode) {\r\n\t\tarr.push(`mode-${props.mode}`)\r\n\t}\r\n\tif (props.position === 'left') {\r\n\t\tarr.push(`position-left`)\r\n\t\tarr.push(`dir-v`)\r\n\t}\r\n\tif (props.position === 'right') {\r\n\t\tarr.push(`position-right`)\r\n\t\tarr.push(`dir-v`)\r\n\t}\r\n\tif (props.position === 'bottom') {\r\n\t\tarr.push(`position-bottom`)\r\n\t}\r\n\tif (props.itemDir) {\r\n\t\tarr.push(`item-dir-${props.itemDir}`)\r\n\t}\r\n\tif (props.itemWidth === 'avg') {\r\n\t\tarr.push(`item-width-avg`)\r\n\t}\r\n\tif (props.align) {\r\n\t\tarr.push(`align-${props.align}`)\r\n\t}\r\n\tif (activeOver.value) {\r\n\t\tarr.push(`over-${activeOver.value}`)\r\n\t}\r\n\treturn arr\r\n})\r\n\r\nconst setStyle = computed(() => {\r\n\tlet obj: CSSProperties = {}\r\n\tif (props.height) {\r\n\t\tif (!isNaN(Number(props.height))) {\r\n\t\t\tobj.height = props.height + 'em'\r\n\t\t} else {\r\n\t\t\tobj.height = props.height as string\r\n\t\t}\r\n\t}\r\n\treturn obj\r\n})\r\n\r\nasync function changeTab(item, index, event, force = false) {\r\n\tif (!force && props.event !== event) return false\r\n\tif (item.disabled) return false\r\n\tlet flag = true\r\n\tif (props.beforeChange) {\r\n\t\tlet fn = props.beforeChange\r\n\t\tif (typeof fn === 'function') {\r\n\t\t\tif (typeof (fn() as Promise<boolean>).then === 'function') {\r\n\t\t\t\tflag = await fn()\r\n\t\t\t} else {\r\n\t\t\t\tflag = (fn as any)()\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tif (!flag) return false\r\n\tstopChange = true\r\n\tif (props.contentType === 'float') {\r\n\t\tfloatRef.value.open(ul.value)\r\n\t}\r\n\tselectValue.value = item.value\r\n\temit('update:modelValue', item.value)\r\n\temit('change', item.value, item, index)\r\n\tscrollTabIntoView(index)\r\n\tsetTimeout(() => {\r\n\t\tstopChange = false\r\n\t}, 10)\r\n\treturn true\r\n}\r\n\r\nasync function removePTab(item, idx) {\r\n\tlet flag = true\r\n\tif (props.beforeRemove) {\r\n\t\tlet fn = props.beforeRemove\r\n\t\tif (typeof fn === 'function') {\r\n\t\t\tif (typeof (fn() as Promise<boolean>).then === 'function') {\r\n\t\t\t\tflag = await fn()\r\n\t\t\t} else {\r\n\t\t\t\tflag = (fn as any)()\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tif (!flag) return false\r\n\tstopChange = true\r\n\tif (item.value === selectValue.value) {\r\n\t\tif (idx > 0) {\r\n\t\t\tselectValue.value = _data.value[idx - 1].value\r\n\t\t} else {\r\n\t\t\tselectValue.value = ''\r\n\t\t}\r\n\t\temit('update:modelValue', selectValue.value)\r\n\t}\r\n\t_data.value.splice(idx, 1)\r\n\tif (props.over === 'control') {\r\n\t\tsetLayout()\r\n\t}\r\n\tif (props.over === 'float') {\r\n\t\tupdateOverflowTabs()\r\n\t}\r\n\tupdateTabScroll()\r\n\tupdateActiveOver()\r\n\temit('remove', item.value, item, idx)\r\n\tsetTimeout(() => {\r\n\t\tstopChange = false\r\n\t}, 10)\r\n}\r\nfunction removeTab(val) {\r\n\t//\r\n\tconsole.log(val)\r\n}\r\nfunction addTab(tab) {\r\n\tif (props.data && props.data.length) return false\r\n\tstopChange = true\r\n\tlet idx = _data.value.findIndex(item => item.value === tab.value)\r\n\tif (idx === -1) {\r\n\t\tif (tab.on) {\r\n\t\t\tselectValue.value = tab.value\r\n\t\t}\r\n\t\t_data.value.push(tab)\r\n\t\tif (props.over === 'control') {\r\n\t\t\tnextTick(() => {\r\n\t\t\t\tsetLayout()\r\n\t\t\t})\r\n\t\t}\r\n\t\tif (props.over === 'float') {\r\n\t\t\tupdateOverflowTabs()\r\n\t\t}\r\n\t\tupdateTabScroll()\r\n\t\tupdateActiveOver()\r\n\t}\r\n\tsetTimeout(() => {\r\n\t\tstopChange = false\r\n\t}, 10)\r\n}\r\nfunction updateTabLabel(oldLabel: string | number, label: string) {\r\n\tlet idx = _data.value.findIndex(item => item.label === oldLabel)\r\n\tif (idx !== -1) {\r\n\t\t_data.value[idx].label = label\r\n\t\tupdateTabLayout()\r\n\t}\r\n}\r\nfunction getPicOn(pic) {\r\n\tlet src = ''\r\n\tif (pic && props.changePic) {\r\n\t\tlet arr = pic.split('.')\r\n\t\tif (arr.length === 2) {\r\n\t\t\tsrc = arr[0] + '-on.' + arr[1]\r\n\t\t} else if (arr.length > 2) {\r\n\t\t\tarr.forEach((item, idx) => {\r\n\t\t\t\tif (idx === arr.length - 1) {\r\n\t\t\t\t\tsrc += '-on.' + item\r\n\t\t\t\t} else {\r\n\t\t\t\t\tsrc += item\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}\r\n\t} else {\r\n\t\tsrc = pic\r\n\t}\r\n\treturn src\r\n}\r\nfunction contextmenu(item, idx) {\r\n\temit('contextmenu', item.value, item, idx)\r\n}\r\nfunction updateTabLayout() {\r\n\tif (props.over === 'control') {\r\n\t\tsetLayout()\r\n\t}\r\n\tupdateActiveOver()\r\n\tupdateOverflowTabs()\r\n\tupdateTabScroll()\r\n}\r\nfunction handleListScroll() {\r\n\tsetOverflowTabs()\r\n\tsetTabScroll()\r\n}\r\nfunction updateOverflowTabs() {\r\n\tnextTick(() => {\r\n\t\tsetOverflowTabs()\r\n\t})\r\n}\r\nfunction setOverflowTabs() {\r\n\tif (props.over !== 'float' || !list.value || !ul.value) {\r\n\t\toverflowTabs.value = []\r\n\t\treturn\r\n\t}\r\n\tconst listRect = list.value.getBoundingClientRect()\r\n\tif (!listRect.width || !listRect.height) {\r\n\t\toverflowTabs.value = []\r\n\t\treturn\r\n\t}\r\n\tconst hiddenIndexes = new Set<number>()\r\n\tconst itemNodes = Array.from(ul.value.querySelectorAll('.to-tab-item')) as HTMLElement[]\r\n\titemNodes.forEach(node => {\r\n\t\tconst index = Number(node.dataset.tabIndex)\r\n\t\tif (Number.isNaN(index)) return\r\n\t\tconst rect = node.getBoundingClientRect()\r\n\t\tconst isHidden = rect.left < listRect.left - 1 || rect.right > listRect.right + 1 || rect.top < listRect.top - 1 || rect.bottom > listRect.bottom + 1\r\n\t\tif (isHidden) {\r\n\t\t\thiddenIndexes.add(index)\r\n\t\t}\r\n\t})\r\n\tconst oldShow = overflowTabs.value.length > 0\r\n\toverflowTabs.value = _data.value.map((item, index) => ({ item, index })).filter(tab => hiddenIndexes.has(tab.index))\r\n\tif (oldShow !== overflowTabs.value.length > 0) {\r\n\t\tupdateOverflowTabs()\r\n\t}\r\n}\r\nfunction updateTabScroll() {\r\n\tnextTick(() => {\r\n\t\tsetTabScroll()\r\n\t})\r\n}\r\nfunction setTabScroll() {\r\n\tif (!isPc.value || !list.value || !ul.value) {\r\n\t\ttabScrollable.value = false\r\n\t\treturn\r\n\t}\r\n\tconst listWidth = list.value.clientWidth\r\n\tconst scrollWidth = ul.value.scrollWidth\r\n\tconst scrollRange = scrollWidth - listWidth\r\n\tif (listWidth <= 0 || scrollRange <= 1) {\r\n\t\ttabScrollable.value = false\r\n\t\ttabScrollWidth.value = 0\r\n\t\ttabScrollLeft.value = 0\r\n\t\tlist.value.scrollLeft = 0\r\n\t\treturn\r\n\t}\r\n\tconst scrollLeft = Math.max(0, Math.min(scrollRange, list.value.scrollLeft))\r\n\tif (scrollLeft !== list.value.scrollLeft) {\r\n\t\tlist.value.scrollLeft = scrollLeft\r\n\t}\r\n\ttabScrollable.value = true\r\n\ttabScrollWidth.value = Math.max((listWidth * listWidth) / scrollWidth, 16)\r\n\tconst trackRange = Math.max(listWidth - tabScrollWidth.value, 0)\r\n\tconst scrollRatio = scrollLeft / scrollRange\r\n\ttabScrollLeft.value = scrollLeft + scrollRatio * trackRange\r\n}\r\nfunction getTabScrollRange() {\r\n\tif (!list.value || !ul.value) return 0\r\n\treturn Math.max(ul.value.scrollWidth - list.value.clientWidth, 0)\r\n}\r\nasync function updateActiveOver() {\r\n\tconst version = ++activeOverVersion\r\n\tconst over = props.over\r\n\tif (over !== 'avg' && over !== 'wrap') {\r\n\t\tactiveOver.value = over\r\n\t\treturn\r\n\t}\r\n\tactiveOver.value = ''\r\n\tawait nextTick()\r\n\tif (version !== activeOverVersion || props.over !== over || !list.value || !ul.value) return\r\n\tactiveOver.value = getTabScrollRange() > 1 ? over : ''\r\n\tawait nextTick()\r\n\tif (version !== activeOverVersion) return\r\n\tsetTabScroll()\r\n}\r\nfunction setTabScrollLeft(scrollLeft: number) {\r\n\tif (!list.value) return\r\n\tconst scrollRange = getTabScrollRange()\r\n\tlist.value.scrollLeft = Math.max(0, Math.min(scrollRange, scrollLeft))\r\n\tsetTabScroll()\r\n\tsetOverflowTabs()\r\n}\r\nfunction startTabScrollDrag(event: MouseEvent) {\r\n\tif (!tabScrollShow.value || !list.value || !ul.value) return\r\n\tevent.preventDefault()\r\n\ttabScrollDragging.value = true\r\n\tconst startX = event.clientX\r\n\tconst startScrollLeft = list.value.scrollLeft\r\n\tconst listWidth = list.value.clientWidth\r\n\tconst scrollRange = getTabScrollRange()\r\n\tconst trackRange = Math.max(listWidth - tabScrollWidth.value, 1)\r\n\tconst move = (moveEvent: MouseEvent) => {\r\n\t\tmoveEvent.preventDefault()\r\n\t\tconst nextScrollLeft = startScrollLeft + ((moveEvent.clientX - startX) / trackRange) * scrollRange\r\n\t\tsetTabScrollLeft(nextScrollLeft)\r\n\t}\r\n\tconst up = () => {\r\n\t\tstopTabScrollDrag()\r\n\t}\r\n\twindow.addEventListener('mousemove', move)\r\n\twindow.addEventListener('mouseup', up, { once: true })\r\n\ttabScrollMove = move\r\n\ttabScrollUp = up\r\n}\r\nlet tabScrollMove: ((event: MouseEvent) => void) | null = null\r\nlet tabScrollUp: (() => void) | null = null\r\nfunction stopTabScrollDrag() {\r\n\ttabScrollDragging.value = false\r\n\tif (tabScrollMove) {\r\n\t\twindow.removeEventListener('mousemove', tabScrollMove)\r\n\t\ttabScrollMove = null\r\n\t}\r\n\tif (tabScrollUp) {\r\n\t\twindow.removeEventListener('mouseup', tabScrollUp)\r\n\t\ttabScrollUp = null\r\n\t}\r\n}\r\nasync function toggleOverflowFloat() {\r\n\tupdateOverflowTabs()\r\n\tawait nextTick()\r\n\tif (overflowTabs.value.length) {\r\n\t\toverflowFloatRef.value?.toggle?.(overflowIconRef.value)\r\n\t} else {\r\n\t\toverflowFloatRef.value?.close?.()\r\n\t}\r\n}\r\nasync function changeOverflowTab(tab: OverflowTab) {\r\n\tconst changed = await changeTab(tab.item, tab.index, 'click', true)\r\n\tif (changed !== false) {\r\n\t\toverflowFloatRef.value?.close?.()\r\n\t\tscrollTabIntoView(tab.index)\r\n\t}\r\n}\r\nasync function removeOverflowTab(tab: OverflowTab) {\r\n\tawait removePTab(tab.item, tab.index)\r\n\tupdateOverflowTabs()\r\n\tawait nextTick()\r\n\tif (!overflowTabs.value.length) {\r\n\t\toverflowFloatRef.value?.close?.()\r\n\t}\r\n}\r\nfunction scrollTabIntoView(index: number) {\r\n\tnextTick(() => {\r\n\t\tif (!list.value || !ul.value) return\r\n\t\tconst node = ul.value.querySelector(`.to-tab-item[data-tab-index=\"${index}\"]`) as HTMLElement | null\r\n\t\tif (!node) return\r\n\t\tconst listRect = list.value.getBoundingClientRect()\r\n\t\tconst nodeRect = node.getBoundingClientRect()\r\n\t\tif (nodeRect.right > listRect.right) {\r\n\t\t\tsetTabScrollLeft(list.value.scrollLeft + nodeRect.right - listRect.right)\r\n\t\t} else if (nodeRect.left < listRect.left) {\r\n\t\t\tsetTabScrollLeft(list.value.scrollLeft + nodeRect.left - listRect.left)\r\n\t\t} else {\r\n\t\t\tupdateOverflowTabs()\r\n\t\t\tupdateTabScroll()\r\n\t\t}\r\n\t})\r\n}\r\nfunction scrollSelectTabIntoView() {\r\n\tconst index = _data.value.findIndex(item => item.value === selectValue.value)\r\n\tif (index !== -1) {\r\n\t\tscrollTabIntoView(index)\r\n\t}\r\n}\r\n// function calcTabFloat() {\r\n// \tlet listWidth = list.value.offsetWidth\r\n// \tlet nodeList = ul.value.querySelectorAll('.to-tab-item')\r\n// \tlet liWidths = 0\r\n// \tlet maxIdx = 0\r\n// \tnodeList.forEach((item, idx) => {\r\n// \t\tif (liWidths + item.offsetWidth < listWidth) {\r\n// \t\t\tliWidths += item.offsetWidth\r\n// \t\t\tmaxIdx = idx\r\n// \t\t}\r\n// \t})\r\n// }\r\nfunction controlLeftScroll() {\r\n\tscrollTimer = setInterval(() => {\r\n\t\tsetTabScrollLeft((list.value?.scrollLeft || 0) - 3)\r\n\t}, 1)\r\n}\r\nfunction controlRightScroll() {\r\n\tscrollTimer = setInterval(() => {\r\n\t\tsetTabScrollLeft((list.value?.scrollLeft || 0) + 3)\r\n\t}, 1)\r\n}\r\nfunction scrollStop() {\r\n\tif (scrollTimer) {\r\n\t\tclearInterval(scrollTimer)\r\n\t\tscrollTimer = null\r\n\t}\r\n}\r\nfunction setLayout() {\r\n\tnextTick(() => {\r\n\t\tif (!list.value || !ul.value) {\r\n\t\t\tcontrolShow.value = false\r\n\t\t\treturn\r\n\t\t}\r\n\t\tcontrolShow.value = getTabScrollRange() > 1\r\n\t\tif (!controlShow.value) {\r\n\t\t\tlist.value.scrollLeft = 0\r\n\t\t}\r\n\t\tsetTabScroll()\r\n\t})\r\n}\r\nprovide<ITabProvide>('TabProvide', {\r\n\taddTab,\r\n\tremoveTab,\r\n\tupdateTabLabel,\r\n\tselectValue\r\n})\r\n</script>\r\n"],"names":["DO_defineComponent","_createElementBlock","_unref","_normalizeClass","_createElementVNode","$slots","_renderSlot","_openBlock","_Fragment","_renderList","_createBlock","_mergeProps","_createTextVNode","_toDisplayString","_withModifiers","_Teleport","_createVNode"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { defineComponent, ref, computed, watch, nextTick, onMounted, provide, openBlock, createElementBlock, unref, normalizeClass, normalizeStyle, createElementVNode, Fragment, renderList, createVNode, createSlots, withCtx, renderSlot, normalizeProps, guardReactiveProps, toDisplayString, createCommentVNode } from 'vue';
1
+ import { defineComponent, ref, computed, watch, nextTick, onMounted, onBeforeUnmount, provide, openBlock, createElementBlock, unref, normalizeClass, normalizeStyle, createElementVNode, Fragment, renderList, createVNode, createSlots, withCtx, renderSlot, normalizeProps, guardReactiveProps, toDisplayString, createCommentVNode } from 'vue';
2
2
  import TableHead from './table-head.vue.mjs';
3
3
  import TableBody from './table-body.vue.mjs';
4
4
  import { langKey, t } from '../../../locale/index.mjs';
@@ -50,6 +50,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
50
50
  const rightTop = ref(null);
51
51
  const rightTopTable = ref(null);
52
52
  const rightTopHead = ref(null);
53
+ let resizeObserver = null;
53
54
  const checkedAll = ref(false);
54
55
  const setClass = computed(() => {
55
56
  const classes = [];
@@ -258,7 +259,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
258
259
  }
259
260
  }
260
261
  function syncTrHeight() {
261
- var _a;
262
+ var _a, _b, _c, _d, _e, _f, _g;
262
263
  if (!(props.fixRight || props.fixLeft))
263
264
  return;
264
265
  if ((_a = bodyBody.value) == null ? void 0 : _a.$el.children.length) {
@@ -266,9 +267,53 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
266
267
  const tr = bodyBody.value.$el.children[i];
267
268
  if (Number(props.fixRight) > 0 && rightBody.value) {
268
269
  rightBody.value.$el.children[i].style.height = tr.getBoundingClientRect().height + "px";
270
+ const rightTr = rightBody.value.$el.children[i];
271
+ const rightTds = rightTr == null ? void 0 : rightTr.children;
272
+ const rightHeadTrs = (_c = (_b = rightHead.value) == null ? void 0 : _b.row) == null ? void 0 : _c.children;
273
+ const rightThs = (_d = rightHeadTrs == null ? void 0 : rightHeadTrs[0]) == null ? void 0 : _d.children;
274
+ if (rightTds && rightThs) {
275
+ for (let j = 0; j < rightTds.length; j++) {
276
+ if (rightThs[j]) {
277
+ const span = rightTds[j].querySelector("span");
278
+ if (span) {
279
+ const thWidth = parseFloat(rightThs[j].style.width) || 0;
280
+ const tdStyle = window.getComputedStyle(rightTds[j]);
281
+ const tdPaddingLeft = parseFloat(tdStyle.paddingLeft) || 0;
282
+ const tdPaddingRight = parseFloat(tdStyle.paddingRight) || 0;
283
+ const spanMaxWidth = Math.max(0, thWidth - tdPaddingLeft - tdPaddingRight);
284
+ span.style.display = "block";
285
+ span.style.maxWidth = spanMaxWidth + "px";
286
+ span.style.overflow = "hidden";
287
+ span.style.textOverflow = "ellipsis";
288
+ }
289
+ }
290
+ }
291
+ }
269
292
  }
270
293
  if (Number(props.fixLeft) > 0 && leftBody.value) {
271
294
  leftBody.value.$el.children[i].style.height = tr.getBoundingClientRect().height + "px";
295
+ const leftTr = leftBody.value.$el.children[i];
296
+ const leftTds = leftTr == null ? void 0 : leftTr.children;
297
+ const leftHeadTrs = (_f = (_e = leftHead.value) == null ? void 0 : _e.row) == null ? void 0 : _f.children;
298
+ const leftThs = (_g = leftHeadTrs == null ? void 0 : leftHeadTrs[0]) == null ? void 0 : _g.children;
299
+ if (leftTds && leftThs) {
300
+ for (let j = 0; j < leftTds.length; j++) {
301
+ if (leftThs[j]) {
302
+ const span = leftTds[j].querySelector("span");
303
+ if (span) {
304
+ const thWidth = parseFloat(leftThs[j].style.width) || 0;
305
+ const tdStyle = window.getComputedStyle(leftTds[j]);
306
+ const tdPaddingLeft = parseFloat(tdStyle.paddingLeft) || 0;
307
+ const tdPaddingRight = parseFloat(tdStyle.paddingRight) || 0;
308
+ const spanMaxWidth = Math.max(0, thWidth - tdPaddingLeft - tdPaddingRight);
309
+ span.style.display = "block";
310
+ span.style.maxWidth = spanMaxWidth + "px";
311
+ span.style.overflow = "hidden";
312
+ span.style.textOverflow = "ellipsis";
313
+ }
314
+ }
315
+ }
316
+ }
272
317
  }
273
318
  }
274
319
  }
@@ -290,6 +335,19 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
290
335
  }
291
336
  onMounted(() => {
292
337
  adjust();
338
+ window.addEventListener("resize", setFix);
339
+ if ($el.value) {
340
+ resizeObserver = new ResizeObserver(() => {
341
+ setFix();
342
+ });
343
+ resizeObserver.observe($el.value);
344
+ }
345
+ });
346
+ onBeforeUnmount(() => {
347
+ window.removeEventListener("resize", setFix);
348
+ if (resizeObserver) {
349
+ resizeObserver.disconnect();
350
+ }
293
351
  });
294
352
  const hasRadio = computed(() => {
295
353
  let flag = false;