zartui 3.1.12 → 3.1.14

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 (292) hide show
  1. package/es/action-sheet/index.css +1 -1
  2. package/es/avatar/index.css +1 -1
  3. package/es/badge/index.css +1 -1
  4. package/es/button/index.css +1 -1
  5. package/es/calendar/index.css +1 -1
  6. package/es/calendar/utils.d.ts +2 -2
  7. package/es/cascader/Cascader.d.ts +1 -1
  8. package/es/cascader/index.css +1 -1
  9. package/es/cascader/index.d.ts +1 -1
  10. package/es/cell/Cell.d.ts +34 -0
  11. package/es/cell/Cell.mjs +61 -8
  12. package/es/cell/index.css +1 -1
  13. package/es/cell/index.d.ts +17 -0
  14. package/es/cell/style/index.mjs +1 -0
  15. package/es/cell-group/index.css +1 -1
  16. package/es/checkbox/Checkbox.d.ts +1 -1
  17. package/es/checkbox/index.d.ts +1 -1
  18. package/es/checkbox-group/CheckboxGroup.d.ts +1 -1
  19. package/es/checkbox-group/index.d.ts +1 -1
  20. package/es/collapse/Collapse.d.ts +1 -1
  21. package/es/collapse/index.d.ts +1 -1
  22. package/es/collapse-item/index.css +1 -1
  23. package/es/config-provider/types.d.ts +1 -1
  24. package/es/date-time-picker/DateTimePicker.d.ts +1 -1
  25. package/es/date-time-picker/DateTimePickerWrapper.d.ts +1 -1
  26. package/es/date-time-picker/index.d.ts +1 -1
  27. package/es/dialog/index.css +1 -1
  28. package/es/divider/index.css +1 -1
  29. package/es/drawer-select/DrawerSelect.d.ts +68 -0
  30. package/es/drawer-select/DrawerSelect.mjs +360 -0
  31. package/es/drawer-select/index.css +1 -0
  32. package/es/drawer-select/index.d.ts +53 -0
  33. package/es/drawer-select/index.mjs +8 -0
  34. package/es/drawer-select/style/index.d.ts +1 -0
  35. package/es/drawer-select/style/index.mjs +15 -0
  36. package/es/drawer-select/types.d.ts +26 -0
  37. package/es/drawer-select/types.mjs +0 -0
  38. package/es/dropdown-item/DropdownItem.d.ts +8 -1
  39. package/es/dropdown-item/DropdownItem.mjs +39 -25
  40. package/es/dropdown-item/index.css +1 -1
  41. package/es/dropdown-item/index.d.ts +5 -1
  42. package/es/dropdown-item/style/index.mjs +3 -1
  43. package/es/dropdown-item/types.d.ts +2 -1
  44. package/es/dropdown-menu/DropdownMenu.mjs +3 -0
  45. package/es/dropdown-menu/index.css +1 -1
  46. package/es/field/Field.d.ts +27 -3
  47. package/es/field/Field.mjs +11 -3
  48. package/es/field/index.css +1 -1
  49. package/es/field/index.d.ts +19 -3
  50. package/es/floating-bubble/index.css +1 -1
  51. package/es/form/index.css +1 -0
  52. package/es/form/style/index.mjs +1 -0
  53. package/es/hierarchy-select/index.css +1 -1
  54. package/es/icon/config.mjs +3 -1
  55. package/es/icon/index.css +1 -1
  56. package/es/image/index.css +1 -1
  57. package/es/image-preview/ImagePreview.d.ts +1 -1
  58. package/es/image-preview/index.css +1 -1
  59. package/es/image-preview/index.d.ts +1 -1
  60. package/es/index.d.ts +3 -1
  61. package/es/index.mjs +7 -1
  62. package/es/lazyload/vue-lazyload/index.d.ts +55 -55
  63. package/es/media-picker/MediaPicker.mjs +12 -2
  64. package/es/media-picker/index.css +1 -1
  65. package/es/media-picker/type.d.ts +3 -0
  66. package/es/media-picker/watermark/image-processor.mjs +2 -2
  67. package/es/media-player/index.css +1 -1
  68. package/es/multiple-picker/MultiplePicker.d.ts +28 -2
  69. package/es/multiple-picker/MultiplePicker.mjs +26 -16
  70. package/es/multiple-picker/MultiplePickerOptions.mjs +2 -1
  71. package/es/multiple-picker/index.css +1 -1
  72. package/es/multiple-picker/index.d.ts +20 -2
  73. package/es/nav-bar/NavBar.d.ts +1 -1
  74. package/es/nav-bar/index.d.ts +1 -1
  75. package/es/notice-bar/index.css +1 -1
  76. package/es/number-keyboard/NumberKeyboard.d.ts +1 -1
  77. package/es/number-keyboard/index.css +1 -1
  78. package/es/number-keyboard/index.d.ts +1 -1
  79. package/es/password-input/index.css +1 -1
  80. package/es/picker/Picker.d.ts +30 -4
  81. package/es/picker/Picker.mjs +69 -16
  82. package/es/picker/PickerOptions.d.ts +75 -0
  83. package/es/picker/PickerOptions.mjs +93 -0
  84. package/es/picker/index.css +1 -1
  85. package/es/picker/index.d.ts +21 -3
  86. package/es/picker/types.d.ts +5 -1
  87. package/es/popover/index.css +1 -1
  88. package/es/popup/Popup.mjs +3 -3
  89. package/es/popup/index.css +1 -1
  90. package/es/pull-refresh/PullRefresh.d.ts +1 -1
  91. package/es/pull-refresh/index.d.ts +1 -1
  92. package/es/radio-group/RadioGroup.d.ts +1 -1
  93. package/es/radio-group/index.d.ts +1 -1
  94. package/es/radio-picker/RadioPicker.d.ts +11 -11
  95. package/es/radio-picker/index.css +1 -1
  96. package/es/radio-picker/index.d.ts +9 -9
  97. package/es/radio-picker/style/index.mjs +4 -4
  98. package/es/rate/Rate.d.ts +1 -1
  99. package/es/rate/index.d.ts +1 -1
  100. package/es/search/Search.d.ts +2 -2
  101. package/es/search/index.css +1 -1
  102. package/es/search/index.d.ts +2 -2
  103. package/es/skeleton/index.css +1 -1
  104. package/es/slider/Slider.d.ts +139 -0
  105. package/es/slider/Slider.mjs +335 -0
  106. package/es/slider/index.css +1 -0
  107. package/es/slider/index.d.ts +103 -0
  108. package/es/slider/index.mjs +10 -0
  109. package/es/slider/style/index.d.ts +1 -0
  110. package/es/slider/style/index.mjs +2 -0
  111. package/es/slider/types.d.ts +11 -0
  112. package/es/slider/types.mjs +0 -0
  113. package/es/step/index.css +1 -1
  114. package/es/stepper/Stepper.d.ts +1 -1
  115. package/es/stepper/index.css +1 -1
  116. package/es/stepper/index.d.ts +1 -1
  117. package/es/steps/index.css +1 -1
  118. package/es/style/base.css +1 -1
  119. package/es/style/css-variables.css +1 -1
  120. package/es/switch/Switch.d.ts +1 -1
  121. package/es/switch/index.d.ts +1 -1
  122. package/es/tabbar/Tabbar.d.ts +2 -2
  123. package/es/tabbar/index.css +1 -1
  124. package/es/tabbar/index.d.ts +2 -2
  125. package/es/tabbar-item/index.css +1 -1
  126. package/es/tabs/Tabs.mjs +4 -2
  127. package/es/tabs/TabsTitle.mjs +16 -6
  128. package/es/tabs/index.css +1 -1
  129. package/es/tag/index.css +1 -1
  130. package/es/text-ellipsis/TextEllipsis.mjs +2 -0
  131. package/es/time-picker/TimePicker.d.ts +1 -1
  132. package/es/time-picker/index.css +1 -1
  133. package/es/time-picker/index.d.ts +1 -1
  134. package/es/timeline/index.css +1 -1
  135. package/es/uploader/index.css +1 -1
  136. package/es/utils/constant.d.ts +0 -1
  137. package/es/utils/constant.mjs +0 -2
  138. package/es/utils/mount-component.mjs +1 -1
  139. package/es/utils/validate.d.ts +2 -1
  140. package/es/utils/validate.mjs +9 -0
  141. package/es/vue-sfc-shim.d.ts +6 -6
  142. package/es/vue-tsx-shim.d.ts +23 -23
  143. package/lib/action-sheet/index.css +1 -1
  144. package/lib/avatar/index.css +1 -1
  145. package/lib/badge/index.css +1 -1
  146. package/lib/button/index.css +1 -1
  147. package/lib/calendar/index.css +1 -1
  148. package/lib/calendar/utils.d.ts +2 -2
  149. package/lib/cascader/Cascader.d.ts +1 -1
  150. package/lib/cascader/index.css +1 -1
  151. package/lib/cascader/index.d.ts +1 -1
  152. package/lib/cell/Cell.d.ts +34 -0
  153. package/lib/cell/Cell.js +61 -8
  154. package/lib/cell/index.css +1 -1
  155. package/lib/cell/index.d.ts +17 -0
  156. package/lib/cell/style/index.js +1 -0
  157. package/lib/cell-group/index.css +1 -1
  158. package/lib/checkbox/Checkbox.d.ts +1 -1
  159. package/lib/checkbox/index.d.ts +1 -1
  160. package/lib/checkbox-group/CheckboxGroup.d.ts +1 -1
  161. package/lib/checkbox-group/index.d.ts +1 -1
  162. package/lib/collapse/Collapse.d.ts +1 -1
  163. package/lib/collapse/index.d.ts +1 -1
  164. package/lib/collapse-item/index.css +1 -1
  165. package/lib/config-provider/types.d.ts +1 -1
  166. package/lib/date-time-picker/DateTimePicker.d.ts +1 -1
  167. package/lib/date-time-picker/DateTimePickerWrapper.d.ts +1 -1
  168. package/lib/date-time-picker/index.d.ts +1 -1
  169. package/lib/dialog/index.css +1 -1
  170. package/lib/divider/index.css +1 -1
  171. package/lib/drawer-select/DrawerSelect.d.ts +68 -0
  172. package/lib/drawer-select/DrawerSelect.js +389 -0
  173. package/lib/drawer-select/index.css +1 -0
  174. package/lib/drawer-select/index.d.ts +53 -0
  175. package/lib/drawer-select/index.js +37 -0
  176. package/lib/drawer-select/style/index.d.ts +1 -0
  177. package/lib/drawer-select/style/index.js +15 -0
  178. package/lib/drawer-select/types.d.ts +26 -0
  179. package/lib/drawer-select/types.js +15 -0
  180. package/lib/dropdown-item/DropdownItem.d.ts +8 -1
  181. package/lib/dropdown-item/DropdownItem.js +37 -23
  182. package/lib/dropdown-item/index.css +1 -1
  183. package/lib/dropdown-item/index.d.ts +5 -1
  184. package/lib/dropdown-item/style/index.js +3 -1
  185. package/lib/dropdown-item/types.d.ts +2 -1
  186. package/lib/dropdown-menu/DropdownMenu.js +3 -0
  187. package/lib/dropdown-menu/index.css +1 -1
  188. package/lib/field/Field.d.ts +27 -3
  189. package/lib/field/Field.js +11 -3
  190. package/lib/field/index.css +1 -1
  191. package/lib/field/index.d.ts +19 -3
  192. package/lib/floating-bubble/index.css +1 -1
  193. package/lib/form/index.css +1 -0
  194. package/lib/form/style/index.js +1 -0
  195. package/lib/hierarchy-select/index.css +1 -1
  196. package/lib/icon/config.js +3 -1
  197. package/lib/icon/index.css +1 -1
  198. package/lib/image/index.css +1 -1
  199. package/lib/image-preview/ImagePreview.d.ts +1 -1
  200. package/lib/image-preview/index.css +1 -1
  201. package/lib/image-preview/index.d.ts +1 -1
  202. package/lib/index.css +1 -1
  203. package/lib/index.d.ts +3 -1
  204. package/lib/index.js +7 -1
  205. package/lib/lazyload/vue-lazyload/index.d.ts +55 -55
  206. package/lib/media-picker/MediaPicker.js +12 -2
  207. package/lib/media-picker/index.css +1 -1
  208. package/lib/media-picker/type.d.ts +3 -0
  209. package/lib/media-picker/watermark/image-processor.js +1 -1
  210. package/lib/media-player/index.css +1 -1
  211. package/lib/multiple-picker/MultiplePicker.d.ts +28 -2
  212. package/lib/multiple-picker/MultiplePicker.js +26 -16
  213. package/lib/multiple-picker/MultiplePickerOptions.js +2 -1
  214. package/lib/multiple-picker/index.css +1 -1
  215. package/lib/multiple-picker/index.d.ts +20 -2
  216. package/lib/nav-bar/NavBar.d.ts +1 -1
  217. package/lib/nav-bar/index.d.ts +1 -1
  218. package/lib/notice-bar/index.css +1 -1
  219. package/lib/number-keyboard/NumberKeyboard.d.ts +1 -1
  220. package/lib/number-keyboard/index.css +1 -1
  221. package/lib/number-keyboard/index.d.ts +1 -1
  222. package/lib/password-input/index.css +1 -1
  223. package/lib/picker/Picker.d.ts +30 -4
  224. package/lib/picker/Picker.js +68 -15
  225. package/lib/picker/PickerOptions.d.ts +75 -0
  226. package/lib/picker/PickerOptions.js +112 -0
  227. package/lib/picker/index.css +1 -1
  228. package/lib/picker/index.d.ts +21 -3
  229. package/lib/picker/types.d.ts +5 -1
  230. package/lib/popover/index.css +1 -1
  231. package/lib/popup/Popup.js +3 -3
  232. package/lib/popup/index.css +1 -1
  233. package/lib/pull-refresh/PullRefresh.d.ts +1 -1
  234. package/lib/pull-refresh/index.d.ts +1 -1
  235. package/lib/radio-group/RadioGroup.d.ts +1 -1
  236. package/lib/radio-group/index.d.ts +1 -1
  237. package/lib/radio-picker/RadioPicker.d.ts +11 -11
  238. package/lib/radio-picker/index.css +1 -1
  239. package/lib/radio-picker/index.d.ts +9 -9
  240. package/lib/radio-picker/style/index.js +4 -4
  241. package/lib/rate/Rate.d.ts +1 -1
  242. package/lib/rate/index.d.ts +1 -1
  243. package/lib/search/Search.d.ts +2 -2
  244. package/lib/search/index.css +1 -1
  245. package/lib/search/index.d.ts +2 -2
  246. package/lib/skeleton/index.css +1 -1
  247. package/lib/slider/Slider.d.ts +139 -0
  248. package/lib/slider/Slider.js +354 -0
  249. package/lib/slider/index.css +1 -0
  250. package/lib/slider/index.d.ts +103 -0
  251. package/lib/slider/index.js +39 -0
  252. package/lib/slider/style/index.d.ts +1 -0
  253. package/lib/slider/style/index.js +2 -0
  254. package/lib/slider/types.d.ts +11 -0
  255. package/lib/slider/types.js +15 -0
  256. package/lib/step/index.css +1 -1
  257. package/lib/stepper/Stepper.d.ts +1 -1
  258. package/lib/stepper/index.css +1 -1
  259. package/lib/stepper/index.d.ts +1 -1
  260. package/lib/steps/index.css +1 -1
  261. package/lib/style/base.css +1 -1
  262. package/lib/style/css-variables.css +1 -1
  263. package/lib/switch/Switch.d.ts +1 -1
  264. package/lib/switch/index.d.ts +1 -1
  265. package/lib/tabbar/Tabbar.d.ts +2 -2
  266. package/lib/tabbar/index.css +1 -1
  267. package/lib/tabbar/index.d.ts +2 -2
  268. package/lib/tabbar-item/index.css +1 -1
  269. package/lib/tabs/Tabs.js +4 -2
  270. package/lib/tabs/TabsTitle.js +16 -6
  271. package/lib/tabs/index.css +1 -1
  272. package/lib/tag/index.css +1 -1
  273. package/lib/text-ellipsis/TextEllipsis.js +2 -0
  274. package/lib/time-picker/TimePicker.d.ts +1 -1
  275. package/lib/time-picker/index.css +1 -1
  276. package/lib/time-picker/index.d.ts +1 -1
  277. package/lib/timeline/index.css +1 -1
  278. package/lib/uploader/index.css +1 -1
  279. package/lib/utils/constant.d.ts +0 -1
  280. package/lib/utils/constant.js +0 -2
  281. package/lib/utils/mount-component.js +1 -1
  282. package/lib/utils/validate.d.ts +2 -1
  283. package/lib/utils/validate.js +9 -0
  284. package/lib/vue-sfc-shim.d.ts +6 -6
  285. package/lib/vue-tsx-shim.d.ts +23 -23
  286. package/lib/web-types.json +1 -1
  287. package/lib/zartui.cjs.js +4303 -3364
  288. package/lib/zartui.es.js +4304 -3365
  289. package/lib/zartui.js +4301 -3362
  290. package/lib/zartui.min.js +1 -1
  291. package/package.json +79 -78
  292. package/README.md +0 -23
@@ -43,7 +43,7 @@ export declare const NumberKeyboard: import("../utils").WithInstall<import("vue"
43
43
  type: import("vue").PropType<string | string[]>;
44
44
  default: string;
45
45
  };
46
- }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "hide" | "show" | "blur" | "close" | "update:modelValue" | "delete")[], "input" | "hide" | "show" | "blur" | "close" | "update:modelValue" | "delete", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
46
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "hide" | "show" | "blur" | "update:modelValue" | "close" | "delete")[], "input" | "hide" | "show" | "blur" | "update:modelValue" | "close" | "delete", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
47
47
  show: BooleanConstructor;
48
48
  title: StringConstructor;
49
49
  theme: {
@@ -1 +1 @@
1
- :root{--zt-password-input-height: 48px;--zt-password-input-margin: 0 var(--zt-padding-md);--zt-password-input-radius: 6px;--zt-password-input-background: var(--zt-background-2);--zt-password-input-info-color: var(--zt-text-color-2);--zt-password-input-error-info-color: var(--zt-danger-color);--zt-password-input-dot-size: 8px;--zt-password-input-dot-color: var(--zt-text-color);--zt-password-input-text-color: var(--zt-text-color);--zt-password-input-cursor-color: var(--zt-primary-color);--zt-password-input-cursor-width: 1px;--zt-password-input-cursor-height: 40%;--zt-password-input-cursor-duration: 1s}.zt-password-input{position:relative;margin:var(--zt-password-input-margin);-webkit-user-select:none;user-select:none}.zt-password-input__info,.zt-password-input__error-info{margin-top:var(--zt-padding-md);font-size:var(--zt-font-size-md);text-align:center}.zt-password-input__info{color:var(--zt-password-input-info-color)}.zt-password-input__error-info{color:var(--zt-password-input-error-info-color)}.zt-password-input__security{display:flex;width:100%;height:var(--zt-password-input-height);cursor:pointer}.zt-password-input__security:after{border-radius:var(--zt-password-input-radius)}.zt-password-input__security li:last-child{border-radius:0 4px 4px 0}.zt-password-input__security li:first-child{border-radius:0 4px 4px 0}.zt-password-input__security li{position:relative;display:flex;flex:1;align-items:center;justify-content:center;height:100%;color:var(--zt-password-input-text-color);font-size:var(--zt-font-size-xxl);background:var(--zt-password-input-background);border:0 solid rgba(45,75,115,.2)}.zt-password-input__security i{position:absolute;top:50%;left:50%;width:var(--zt-password-input-dot-size);height:var(--zt-password-input-dot-size);background:var(--zt-password-input-dot-color);border-radius:100%;transform:translate(-50%,-50%);visibility:hidden}.zt-password-input__cursor{position:absolute;top:50%;left:50%;width:var(--zt-password-input-cursor-width);height:var(--zt-password-input-cursor-height);background:var(--zt-password-input-cursor-color);width:1px;height:24px;transform:translate(-50%,-50%);animation:var(--zt-password-input-cursor-duration) zt-cursor-flicker infinite}@keyframes zt-cursor-flicker{0%{opacity:0}50%{opacity:1}to{opacity:0}}
1
+ :root{--zt-password-input-height: 48px;--zt-password-input-margin: 0 var(--zt-padding-md);--zt-password-input-radius: 6px;--zt-password-input-background: var(--zt-background-popup);--zt-password-input-info-color: var(--zt-text-color-2);--zt-password-input-error-info-color: var(--zt-danger-color);--zt-password-input-dot-size: 8px;--zt-password-input-dot-color: var(--zt-text-color);--zt-password-input-text-color: var(--zt-text-color);--zt-password-input-cursor-color: var(--zt-primary-color);--zt-password-input-cursor-width: 1px;--zt-password-input-cursor-height: 40%;--zt-password-input-cursor-duration: 1s}.zt-password-input{position:relative;margin:var(--zt-password-input-margin);-webkit-user-select:none;user-select:none}.zt-password-input__info,.zt-password-input__error-info{margin-top:var(--zt-padding-md);font-size:var(--zt-font-size-md);text-align:center}.zt-password-input__info{color:var(--zt-password-input-info-color)}.zt-password-input__error-info{color:var(--zt-password-input-error-info-color)}.zt-password-input__security{display:flex;width:100%;height:var(--zt-password-input-height);cursor:pointer}.zt-password-input__security:after{border-radius:var(--zt-password-input-radius)}.zt-password-input__security li:last-child{border-radius:0 4px 4px 0}.zt-password-input__security li:first-child{border-radius:0 4px 4px 0}.zt-password-input__security li{position:relative;display:flex;flex:1;align-items:center;justify-content:center;height:100%;color:var(--zt-password-input-text-color);font-size:var(--zt-font-size-xxl);background:var(--zt-password-input-background);border:0 solid rgba(45,75,115,.2)}.zt-password-input__security i{position:absolute;top:50%;left:50%;width:var(--zt-password-input-dot-size);height:var(--zt-password-input-dot-size);background:var(--zt-password-input-dot-color);border-radius:100%;transform:translate(-50%,-50%);visibility:hidden}.zt-password-input__cursor{position:absolute;top:50%;left:50%;width:var(--zt-password-input-cursor-width);height:var(--zt-password-input-cursor-height);background:var(--zt-password-input-cursor-color);width:1px;height:24px;transform:translate(-50%,-50%);animation:var(--zt-password-input-cursor-duration) zt-cursor-flicker infinite}@keyframes zt-cursor-flicker{0%{opacity:0}50%{opacity:1}to{opacity:0}}
@@ -1,6 +1,6 @@
1
1
  import type { PropType, ExtractPropTypes } from 'vue';
2
2
  import { Numeric } from '../utils';
3
- import type { PickerColumn, PickerOption, PickerFieldNames, PickerToolbarPosition } from './types';
3
+ import type { PickerColumn, PickerOption, PickerFieldNames, PickerShowType, PickerToolbarPosition } from './types';
4
4
  export declare const pickerSharedProps: {
5
5
  loading: BooleanConstructor;
6
6
  readonly: BooleanConstructor;
@@ -87,6 +87,14 @@ export declare const pickerProps: {
87
87
  type: BooleanConstructor;
88
88
  default: true;
89
89
  };
90
+ showType: {
91
+ type: PropType<PickerShowType>;
92
+ default: PickerShowType;
93
+ };
94
+ columnCounts: {
95
+ type: NumberConstructor;
96
+ default: number;
97
+ };
90
98
  };
91
99
  export type PickerProps = ExtractPropTypes<typeof pickerProps>;
92
100
  declare const _default: import("vue").DefineComponent<{
@@ -143,7 +151,15 @@ declare const _default: import("vue").DefineComponent<{
143
151
  type: BooleanConstructor;
144
152
  default: true;
145
153
  };
146
- }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("cancel" | "change" | "update:modelValue" | "confirm" | "update:showPicker" | "clickOption")[], "cancel" | "change" | "update:modelValue" | "confirm" | "update:showPicker" | "clickOption", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
154
+ showType: {
155
+ type: PropType<PickerShowType>;
156
+ default: PickerShowType;
157
+ };
158
+ columnCounts: {
159
+ type: NumberConstructor;
160
+ default: number;
161
+ };
162
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "cancel" | "change" | "confirm" | "clickOption" | "update:showPicker")[], "update:modelValue" | "cancel" | "change" | "confirm" | "clickOption" | "update:showPicker", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
147
163
  loading: BooleanConstructor;
148
164
  readonly: BooleanConstructor;
149
165
  allowHtml: BooleanConstructor;
@@ -197,25 +213,35 @@ declare const _default: import("vue").DefineComponent<{
197
213
  type: BooleanConstructor;
198
214
  default: true;
199
215
  };
216
+ showType: {
217
+ type: PropType<PickerShowType>;
218
+ default: PickerShowType;
219
+ };
220
+ columnCounts: {
221
+ type: NumberConstructor;
222
+ default: number;
223
+ };
200
224
  }>> & {
201
225
  onChange?: ((...args: any[]) => any) | undefined;
202
226
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
203
227
  onCancel?: ((...args: any[]) => any) | undefined;
204
228
  onConfirm?: ((...args: any[]) => any) | undefined;
205
- "onUpdate:showPicker"?: ((...args: any[]) => any) | undefined;
206
229
  onClickOption?: ((...args: any[]) => any) | undefined;
230
+ "onUpdate:showPicker"?: ((...args: any[]) => any) | undefined;
207
231
  }, {
208
232
  title: string;
209
233
  modelValue: Numeric[];
210
234
  readonly: boolean;
211
235
  popup: boolean;
212
236
  loading: boolean;
237
+ showType: PickerShowType;
213
238
  showTitle: boolean;
214
239
  columns: (PickerColumn | PickerOption)[];
215
240
  allowHtml: boolean;
216
241
  swipeDuration: string | number;
217
- showPicker: boolean;
218
242
  showToolbar: boolean;
243
+ showPicker: boolean;
244
+ columnCounts: number;
219
245
  toolbarPosition: PickerToolbarPosition;
220
246
  optionHeight: string | number;
221
247
  visibleOptionNum: string | number;
@@ -1,6 +1,6 @@
1
1
  import { mergeProps as _mergeProps, createVNode as _createVNode } from "vue";
2
2
  import { ref, watch, computed, defineComponent, nextTick } from "vue";
3
- import { pick, extend, unitToPx, truthProp, HAPTICS_FEEDBACK, isSameValue, makeArrayProp, preventDefault, makeStringProp, makeNumericProp } from "../utils/index.mjs";
3
+ import { pick, extend, unitToPx, truthProp, HAPTICS_FEEDBACK, isSameValue, makeArrayProp, preventDefault, makeStringProp, makeNumericProp, makeNumberProp } from "../utils/index.mjs";
4
4
  import { bem, name, isOptionExist, getColumnsType, findOptionByValue, assignDefaultFields, formatCascadeColumns, getFirstEnabledOption } from "./utils.mjs";
5
5
  import { useChildren, useEventListener } from "@zartui/use";
6
6
  import { useExpose } from "../composables/use-expose.mjs";
@@ -9,6 +9,7 @@ import Column, { PICKER_KEY } from "./PickerColumn.mjs";
9
9
  import { Divider } from "../divider/index.mjs";
10
10
  import Toolbar, { pickerToolbarPropKeys, pickerToolbarProps, pickerToolbarSlots } from "./PickerToolbar.mjs";
11
11
  import Popup from "../popup/index.mjs";
12
+ import PickerOptions from "./PickerOptions.mjs";
12
13
  const pickerSharedProps = extend({
13
14
  loading: Boolean,
14
15
  readonly: Boolean,
@@ -27,7 +28,9 @@ const pickerProps = extend({}, pickerSharedProps, {
27
28
  toolbarPosition: makeStringProp("top"),
28
29
  columnsFieldNames: Object,
29
30
  showPicker: Boolean,
30
- popup: truthProp
31
+ popup: truthProp,
32
+ showType: makeStringProp("default"),
33
+ columnCounts: makeNumberProp(3)
31
34
  });
32
35
  var stdin_default = defineComponent({
33
36
  name,
@@ -37,6 +40,7 @@ var stdin_default = defineComponent({
37
40
  emit,
38
41
  slots
39
42
  }) {
43
+ const pickerOptions = ref();
40
44
  const columnsRef = ref();
41
45
  const selectedValues = ref(props.modelValue.slice(0));
42
46
  const showPicker = ref(props.showPicker);
@@ -63,6 +67,9 @@ var stdin_default = defineComponent({
63
67
  });
64
68
  const hasOptions = computed(() => currentColumns.value.some((options) => options.length));
65
69
  const selectedOptions = computed(() => currentColumns.value.map((options, index) => findOptionByValue(options, selectedValues.value[index], fields.value)));
70
+ const isButtonPicker = computed(() => {
71
+ return props.showType === "button" && columnsType.value === "default";
72
+ });
66
73
  watch(showPicker, (newValue) => {
67
74
  if (newValue !== props.showPicker) {
68
75
  emit("update:showPicker", newValue);
@@ -100,10 +107,12 @@ var stdin_default = defineComponent({
100
107
  }, getEventParams()));
101
108
  });
102
109
  };
103
- const onClickOption = (currentOption, columnIndex) => emit("clickOption", extend({
104
- columnIndex,
105
- currentOption
106
- }, getEventParams()));
110
+ const onClickOption = (currentOption, columnIndex) => {
111
+ emit("clickOption", extend({
112
+ columnIndex,
113
+ currentOption
114
+ }, getEventParams()));
115
+ };
107
116
  const confirm = () => {
108
117
  children.forEach((child) => child.stopMomentum());
109
118
  const params = getEventParams();
@@ -185,7 +194,8 @@ var stdin_default = defineComponent({
185
194
  }, null) : null;
186
195
  watch(currentColumns, (columns) => {
187
196
  columns.forEach((options, index) => {
188
- if (options.length && !isOptionExist(options, selectedValues.value[index], fields.value)) {
197
+ const judgeSelectedValue = isButtonPicker.value ? selectedValues.value[index] : true;
198
+ if (options.length && judgeSelectedValue && !isOptionExist(options, selectedValues.value[index], fields.value)) {
189
199
  setValue(index, getFirstEnabledOption(options)[fields.value.value]);
190
200
  }
191
201
  });
@@ -225,18 +235,61 @@ var stdin_default = defineComponent({
225
235
  "class": bem("loading")
226
236
  }, null) : null, topDivider(), (_a = slots["columns-top"]) == null ? void 0 : _a.call(slots), renderColumns(), (_b = slots["columns-bottom"]) == null ? void 0 : _b.call(slots), buttomDivider(), renderToolbar()]);
227
237
  };
228
- return () => {
229
- if (props.popup) {
230
- return _createVNode(Popup, {
231
- "show": showPicker.value,
232
- "onUpdate:show": [($event) => showPicker.value = $event, updateShow],
233
- "round": true,
234
- "position": "bottom"
238
+ const renderOptionItems = () => {
239
+ return currentColumns.value.map((options, columnIndex) => {
240
+ return _createVNode(PickerOptions, {
241
+ "ref": pickerOptions,
242
+ "value": selectedValues.value[columnIndex],
243
+ "columnCounts": props.columnCounts,
244
+ "fields": fields.value,
245
+ "options": options,
246
+ "allowHtml": props.allowHtml,
247
+ "readonly": props.readonly,
248
+ "itemHeight": optionHeight.value,
249
+ "onChange": (value) => onChange(value, columnIndex),
250
+ "onClickOption": (option) => onClickOption(option, columnIndex)
235
251
  }, {
236
- default: renderPicker
252
+ option: slots.option
237
253
  });
254
+ });
255
+ };
256
+ const renderOptions = () => _createVNode("div", {
257
+ "class": bem("options")
258
+ }, [renderOptionItems()]);
259
+ const renderTiledPicker = () => {
260
+ var _a, _b;
261
+ return _createVNode("div", {
262
+ "class": bem()
263
+ }, [renderTitleBar(), props.loading ? _createVNode(Loading, {
264
+ "class": bem("loading")
265
+ }, null) : null, topDivider(), (_a = slots["columns-top"]) == null ? void 0 : _a.call(slots), renderOptions(), (_b = slots["columns-bottom"]) == null ? void 0 : _b.call(slots), buttomDivider(), renderToolbar()]);
266
+ };
267
+ return () => {
268
+ if (isButtonPicker.value) {
269
+ if (props.popup) {
270
+ return _createVNode(Popup, {
271
+ "show": showPicker.value,
272
+ "onUpdate:show": [($event) => showPicker.value = $event, updateShow],
273
+ "round": true,
274
+ "position": "bottom"
275
+ }, {
276
+ default: renderTiledPicker
277
+ });
278
+ }
279
+ return renderTiledPicker();
280
+ } else {
281
+ if (props.popup) {
282
+ return _createVNode(Popup, {
283
+ "show": showPicker.value,
284
+ "onUpdate:show": [($event) => showPicker.value = $event, updateShow],
285
+ "round": true,
286
+ "position": "bottom"
287
+ }, {
288
+ default: renderPicker
289
+ });
290
+ }
291
+ return renderPicker();
238
292
  }
239
- return renderPicker();
240
293
  };
241
294
  }
242
295
  });
@@ -0,0 +1,75 @@
1
+ import { ExtractPropTypes, PropType } from 'vue';
2
+ import { PickerOption, PickerFieldNames } from './types';
3
+ declare const pickerOptionsProps: {
4
+ value: (NumberConstructor | StringConstructor)[];
5
+ fields: {
6
+ type: PropType<Required<PickerFieldNames>>;
7
+ required: true;
8
+ };
9
+ readonly: BooleanConstructor;
10
+ allowHtml: BooleanConstructor;
11
+ itemHeight: {
12
+ type: NumberConstructor;
13
+ default: number;
14
+ };
15
+ columnCounts: {
16
+ type: NumberConstructor;
17
+ default: number;
18
+ };
19
+ options: {
20
+ type: PropType<PickerOption[]>;
21
+ default: () => PickerOption[];
22
+ };
23
+ };
24
+ export type PickerOptionsProps = ExtractPropTypes<typeof pickerOptionsProps>;
25
+ declare const _default: import("vue").DefineComponent<{
26
+ value: (NumberConstructor | StringConstructor)[];
27
+ fields: {
28
+ type: PropType<Required<PickerFieldNames>>;
29
+ required: true;
30
+ };
31
+ readonly: BooleanConstructor;
32
+ allowHtml: BooleanConstructor;
33
+ itemHeight: {
34
+ type: NumberConstructor;
35
+ default: number;
36
+ };
37
+ columnCounts: {
38
+ type: NumberConstructor;
39
+ default: number;
40
+ };
41
+ options: {
42
+ type: PropType<PickerOption[]>;
43
+ default: () => PickerOption[];
44
+ };
45
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "clickOption")[], "change" | "clickOption", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
46
+ value: (NumberConstructor | StringConstructor)[];
47
+ fields: {
48
+ type: PropType<Required<PickerFieldNames>>;
49
+ required: true;
50
+ };
51
+ readonly: BooleanConstructor;
52
+ allowHtml: BooleanConstructor;
53
+ itemHeight: {
54
+ type: NumberConstructor;
55
+ default: number;
56
+ };
57
+ columnCounts: {
58
+ type: NumberConstructor;
59
+ default: number;
60
+ };
61
+ options: {
62
+ type: PropType<PickerOption[]>;
63
+ default: () => PickerOption[];
64
+ };
65
+ }>> & {
66
+ onChange?: ((...args: any[]) => any) | undefined;
67
+ onClickOption?: ((...args: any[]) => any) | undefined;
68
+ }, {
69
+ readonly: boolean;
70
+ options: PickerOption[];
71
+ allowHtml: boolean;
72
+ itemHeight: number;
73
+ columnCounts: number;
74
+ }, {}>;
75
+ export default _default;
@@ -0,0 +1,93 @@
1
+ import { createVNode as _createVNode } from "vue";
2
+ import { ref, defineComponent, reactive, watchEffect } from "vue";
3
+ import { createNamespace, isObject, makeArrayProp, makeNumberProp, makeRequiredProp, numericProp } from "../utils/index.mjs";
4
+ const [name, bem] = createNamespace("picker-options");
5
+ const pickerOptionsProps = {
6
+ value: numericProp,
7
+ fields: makeRequiredProp(Object),
8
+ readonly: Boolean,
9
+ allowHtml: Boolean,
10
+ itemHeight: makeNumberProp(0),
11
+ columnCounts: makeNumberProp(3),
12
+ options: makeArrayProp()
13
+ };
14
+ var stdin_default = defineComponent({
15
+ name,
16
+ props: pickerOptionsProps,
17
+ emits: ["change", "clickOption"],
18
+ setup(props, {
19
+ emit,
20
+ slots
21
+ }) {
22
+ const currentIndex = ref(-1);
23
+ const state = reactive({
24
+ options: props.options,
25
+ confirmed: false
26
+ });
27
+ const columnCounts = ref(props.columnCounts);
28
+ const onClickItem = (index) => {
29
+ if (props.readonly) {
30
+ return;
31
+ }
32
+ if (currentIndex.value !== index) {
33
+ currentIndex.value = index;
34
+ const value = props.options[index][props.fields.value];
35
+ emit("change", value);
36
+ }
37
+ emit("clickOption", props.options[index]);
38
+ };
39
+ const getOptionText = (option) => {
40
+ if (isObject(option) && option[props.fields.text]) {
41
+ return option[props.fields.text];
42
+ }
43
+ return option;
44
+ };
45
+ const isOptionDisabled = (option) => props.readonly || isObject(option) && option.disabled;
46
+ const genOptions = () => {
47
+ columnCounts.value = Number(props.columnCounts);
48
+ if (columnCounts.value && columnCounts.value > 3) {
49
+ columnCounts.value = 3;
50
+ }
51
+ if (columnCounts.value && columnCounts.value < 1) {
52
+ columnCounts.value = 1;
53
+ }
54
+ const optionStyle = {
55
+ height: `${props.itemHeight + 8}px`,
56
+ width: `${1 / columnCounts.value * 100}%`
57
+ };
58
+ return state.options.map((option, index) => {
59
+ const text = getOptionText(option);
60
+ const value = option[props.fields.value];
61
+ const disabled = isOptionDisabled(option);
62
+ const childData = {
63
+ class: "zt-ellipsis",
64
+ [props.allowHtml ? "innerHTML" : "textContent"]: text
65
+ };
66
+ return _createVNode("div", {
67
+ "role": "button",
68
+ "style": optionStyle,
69
+ "tabindex": disabled ? -1 : 0,
70
+ "onClick": () => onClickItem(index),
71
+ "class": [bem("item", {
72
+ disabled,
73
+ selected: value === props.value,
74
+ "disabled-selected": disabled && value === props.value,
75
+ last: (index + 1) % columnCounts.value === 0
76
+ })]
77
+ }, [slots.options ? slots.options(option) : _createVNode("div", childData, null)]);
78
+ });
79
+ };
80
+ watchEffect(() => {
81
+ currentIndex.value = props.options.findIndex((option) => option[props.fields.value] === props.value);
82
+ });
83
+ return () => _createVNode("div", {
84
+ "class": bem()
85
+ }, [_createVNode("div", {
86
+ "ref": "wrapper",
87
+ "class": bem("wrapper")
88
+ }, [genOptions()])]);
89
+ }
90
+ });
91
+ export {
92
+ stdin_default as default
93
+ };
@@ -1 +1 @@
1
- :root{--zt-picker-cancel-margin: 8px 4px 8px 16px;--zt-picker-confirm-margin: 8px 16px 8px 4px;--zt-picker-title-height: 44px;--zt-picker-title-border-radius: 16px 16px 0 0;--zt-picker-frame-background-color: var(--zt-gray-a06);--zt-picker-title-text-color: var(--zt-gray-a4);--zt-picker-background: var(--zt-background-2);--zt-picker-toolbar-height: 60px;--zt-picker-title-background: var(--zt-background-2);--zt-picker-option-padding: 0 var(--zt-padding-base);--zt-picker-option-text-color: var(--zt-text-color);--zt-picker-option-disabled-opacity: var(--zt-disabled-opacity);--zt-picker-loading-icon-color: var(--zt-primary-color);--zt-picker-loading-mask-color: rgba(255, 255, 255, .9);--zt-picker-mask-color: linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(255, 255, 255, .4)), linear-gradient(0deg, rgba(255, 255, 255, .9), rgba(255, 255, 255, .4))}.zt-theme-dark{--zt-picker-loading-mask-color: rgba(0, 0, 0, .6);--zt-picker-mask-color: linear-gradient(180deg, rgba(0, 0, 0, .6), rgba(0, 0, 0, .1)), linear-gradient(0deg, rgba(0, 0, 0, .6), rgba(0, 0, 0, .1))}.zt-picker{position:relative;background:var(--zt-picker-background);-webkit-user-select:none;user-select:none}.zt-picker__toolbar{display:flex;align-items:center;justify-content:space-between;height:var(--zt-picker-toolbar-height)}.zt-picker__cancel,.zt-picker__confirm{width:50%}.zt-picker__cancel{background:var(--zt-button-default-background);margin:var(--zt-picker-cancel-margin)}.zt-picker__confirm{margin:var(--zt-picker-confirm-margin)}.zt-picker__title{display:flex;justify-content:center;align-items:center;width:100%;height:var(--zt-picker-title-height);border-radius:var(--zt-picker-title-border-radius);font-size:var(--zt-font-size-md);background:var(--zt-picker-title-background);color:var(--zt-picker-title-text-color)}.zt-picker__columns{position:relative;display:flex;cursor:-webkit-grab;cursor:grab}.zt-picker__loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:center;color:var(--zt-picker-loading-icon-color);background:var(--zt-picker-loading-mask-color)}.zt-picker__frame{position:absolute;top:50%;z-index:2;transform:translateY(-50%);pointer-events:none;width:100%;background:var(--zt-picker-frame-background-color)}.zt-picker__mask{position:absolute;top:0;left:0;z-index:1;width:100%;height:100%;background-image:var(--zt-picker-mask-color);background-repeat:no-repeat;background-position:top,bottom;transform:translateZ(0);pointer-events:none}.zt-picker-column{position:relative;flex:1;overflow:hidden;font-size:var(--zt-font-size-lg);background:var(--zt-picker-background)}.zt-picker-column__wrapper{transition-timing-function:cubic-bezier(.23,1,.68,1)}.zt-picker-column__item{display:flex;align-items:center;justify-content:center;padding:var(--zt-picker-option-padding);color:var(--zt-picker-option-text-color)}.zt-picker-column__item--disabled{cursor:not-allowed;opacity:var(--zt-picker-option-disabled-opacity)}.zt-picker-column__item--selected{font-weight:700}.zt-picker-column__unit{background:var(--zt-picker-title-background);position:absolute;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--zt-picker-option-text-color);font-size:var(--zt-font-size-lg);width:100%;height:100%}.zt-picker-column__unit-text{margin:0 4px;font-size:var(--zt-font-size-md)}
1
+ :root{--zt-picker-cancel-margin: 8px 4px 8px 16px;--zt-picker-confirm-margin: 8px 16px 8px 4px;--zt-picker-title-height: 44px;--zt-picker-title-border-radius: 16px 16px 0 0;--zt-picker-frame-background-color: var(--zt-gray-a06);--zt-picker-title-text-color: var(--zt-gray-a4);--zt-picker-background: var(--zt-background-popup);--zt-picker-toolbar-height: 60px;--zt-picker-title-background: var(--zt-background-popup);--zt-picker-option-padding: 0 var(--zt-padding-base);--zt-picker-option-text-color: var(--zt-text-color);--zt-picker-option-disabled-opacity: var(--zt-disabled-opacity);--zt-picker-option-disabled-background: var(--zt-gray-a04);--zt-picker-loading-icon-color: var(--zt-primary-color);--zt-picker-loading-mask-color: rgba(255, 255, 255, .9);--zt-picker-mask-color: linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(255, 255, 255, .4)), linear-gradient(0deg, rgba(255, 255, 255, .9), rgba(255, 255, 255, .4));--zt-picker-warpper-padding: 12px 16px 4px 16px;--zt-picker-option-item-text-color: var(--zt-gray-a6);--zt-picker-option-item-padding: 0 4px 8px 0;--zt-picker-options-ellipsis-height: 36px;--zt-picker-options-ellipsis-border: 1px solid var(--zt-gray-a2);--zt-picker-option-item-disabled-opacity: var(--zt-disabled-opacity)}:root[zt-theme-size=large]{--zt-picker-options-ellipsis-height: 50px}.zt-theme-dark{--zt-picker-loading-mask-color: rgba(0, 0, 0, .6);--zt-picker-mask-color: linear-gradient(180deg, rgba(0, 0, 0, .6), rgba(0, 0, 0, .1)), linear-gradient(0deg, rgba(0, 0, 0, .6), rgba(0, 0, 0, .1))}.zt-picker{position:relative;background:var(--zt-picker-background);-webkit-user-select:none;user-select:none}.zt-picker__toolbar{display:flex;align-items:center;justify-content:space-between;height:var(--zt-picker-toolbar-height)}.zt-picker__cancel,.zt-picker__confirm{width:50%}.zt-picker__cancel{background:var(--zt-button-default-background);margin:var(--zt-picker-cancel-margin)}.zt-picker__confirm{margin:var(--zt-picker-confirm-margin)}.zt-picker__title{display:flex;justify-content:center;align-items:center;width:100%;height:var(--zt-picker-title-height);border-radius:var(--zt-picker-title-border-radius);font-size:var(--zt-font-size-md);background:var(--zt-picker-title-background);color:var(--zt-picker-title-text-color)}.zt-picker__columns{position:relative;display:flex;cursor:-webkit-grab;cursor:grab}.zt-picker__options{position:relative;display:flex;cursor:-webkit-grab;cursor:grab;overflow-y:scroll}.zt-picker__options:after{position:absolute;box-sizing:border-box;content:" ";pointer-events:none;right:0;bottom:0;left:0;border-bottom:1px solid var(--zt-border-color);transform:scaleY(.5)}.zt-picker__options:before{position:absolute;box-sizing:border-box;content:" ";pointer-events:none;top:0;right:0;left:0;border-top:1px solid var(--zt-border-color);transform:scaleY(.5)}.zt-picker__loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:center;color:var(--zt-picker-loading-icon-color);background:var(--zt-picker-loading-mask-color)}.zt-picker__frame{position:absolute;top:50%;z-index:2;transform:translateY(-50%);pointer-events:none;width:100%;background:var(--zt-picker-frame-background-color)}.zt-picker__mask{position:absolute;top:0;left:0;z-index:1;width:100%;height:100%;background-image:var(--zt-picker-mask-color);background-repeat:no-repeat;background-position:top,bottom;transform:translateZ(0);pointer-events:none}.zt-picker-column{position:relative;flex:1;overflow:hidden;font-size:var(--zt-font-size-lg);background:var(--zt-picker-background)}.zt-picker-column__wrapper{transition-timing-function:cubic-bezier(.23,1,.68,1)}.zt-picker-column__item{display:flex;align-items:center;justify-content:center;padding:var(--zt-picker-option-padding);color:var(--zt-picker-option-text-color)}.zt-picker-column__item--disabled{cursor:not-allowed;opacity:var(--zt-picker-option-disabled-opacity)}.zt-picker-column__item--selected{font-weight:700}.zt-picker-column__unit{background:var(--zt-picker-title-background);position:absolute;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--zt-picker-option-text-color);font-size:var(--zt-font-size-lg);width:100%;height:100%}.zt-picker-column__unit-text{margin:0 4px;font-size:var(--zt-font-size-md)}.zt-picker-options{flex:1;overflow-y:scroll;font-size:var(--zt-font-size-md);margin:0;outline:0 none;padding:0}.zt-picker-options__wrapper{display:flex;flex-wrap:wrap;background-color:var(--zt-picker-background);padding:var(--zt-picker-warpper-padding)}.zt-picker-options__item{color:var(--zt-picker-option-item-text-color);padding:var(--zt-picker-option-item-padding);box-sizing:border-box;text-align:center;font-size:var(--zt-font-size-md)}.zt-picker-options__item .zt-ellipsis{height:var(--zt-picker-options-ellipsis-height);line-height:var(--zt-picker-options-ellipsis-height);border-radius:calc(var(--zt-picker-options-ellipsis-height) / 2);background:var(--zt-gray-a04);padding:0 var(--zt-padding-md)}.zt-picker-options__item:active{opacity:var(--zt-active-opacity)}.zt-picker-options__item--disabled{cursor:not-allowed;color:var(--zt-gray-a2)}.zt-picker-options__item--disabled .zt-ellipsis{background:var(--zt-picker-option-disabled-background)!important}.zt-picker-options__item--last{padding-right:0}.zt-picker-options__item--selected{color:var(--zt-white)}.zt-picker-options__item--selected .zt-ellipsis{background:var(--zt-primary-color)}.zt-picker-options__item--disabled-selected{cursor:not-allowed;color:var(--zt-gray)!important}.zt-picker-options__item--disabled-selected .zt-ellipsis{background:var(--zt-picker-option-disabled-background)!important}
@@ -53,7 +53,15 @@ export declare const Picker: import("../utils").WithInstall<import("vue").Define
53
53
  type: BooleanConstructor;
54
54
  default: true;
55
55
  };
56
- }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("cancel" | "change" | "update:modelValue" | "confirm" | "update:showPicker" | "clickOption")[], "cancel" | "change" | "update:modelValue" | "confirm" | "update:showPicker" | "clickOption", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
56
+ showType: {
57
+ type: import("vue").PropType<import("./types").PickerShowType>;
58
+ default: import("./types").PickerShowType;
59
+ };
60
+ columnCounts: {
61
+ type: NumberConstructor;
62
+ default: number;
63
+ };
64
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "cancel" | "change" | "confirm" | "clickOption" | "update:showPicker")[], "update:modelValue" | "cancel" | "change" | "confirm" | "clickOption" | "update:showPicker", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
57
65
  loading: BooleanConstructor;
58
66
  readonly: BooleanConstructor;
59
67
  allowHtml: BooleanConstructor;
@@ -107,25 +115,35 @@ export declare const Picker: import("../utils").WithInstall<import("vue").Define
107
115
  type: BooleanConstructor;
108
116
  default: true;
109
117
  };
118
+ showType: {
119
+ type: import("vue").PropType<import("./types").PickerShowType>;
120
+ default: import("./types").PickerShowType;
121
+ };
122
+ columnCounts: {
123
+ type: NumberConstructor;
124
+ default: number;
125
+ };
110
126
  }>> & {
111
127
  onChange?: ((...args: any[]) => any) | undefined;
112
128
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
113
129
  onCancel?: ((...args: any[]) => any) | undefined;
114
130
  onConfirm?: ((...args: any[]) => any) | undefined;
115
- "onUpdate:showPicker"?: ((...args: any[]) => any) | undefined;
116
131
  onClickOption?: ((...args: any[]) => any) | undefined;
132
+ "onUpdate:showPicker"?: ((...args: any[]) => any) | undefined;
117
133
  }, {
118
134
  title: string;
119
135
  modelValue: import("../utils").Numeric[];
120
136
  readonly: boolean;
121
137
  popup: boolean;
122
138
  loading: boolean;
139
+ showType: import("./types").PickerShowType;
123
140
  showTitle: boolean;
124
141
  columns: (import("./types").PickerColumn | import("./types").PickerOption)[];
125
142
  allowHtml: boolean;
126
143
  swipeDuration: string | number;
127
- showPicker: boolean;
128
144
  showToolbar: boolean;
145
+ showPicker: boolean;
146
+ columnCounts: number;
129
147
  toolbarPosition: import("./types").PickerToolbarPosition;
130
148
  optionHeight: string | number;
131
149
  visibleOptionNum: string | number;
@@ -1,6 +1,7 @@
1
1
  import type { ComponentPublicInstance } from 'vue';
2
2
  import type { Numeric } from '../utils';
3
3
  import type { PickerProps } from './Picker';
4
+ export type PickerShowType = 'default' | 'button';
4
5
  export type PickerToolbarPosition = 'top' | 'bottom';
5
6
  export type PickerFieldNames = {
6
7
  text?: string;
@@ -15,6 +16,9 @@ export type PickerOption = {
15
16
  className?: unknown;
16
17
  [key: PropertyKey]: any;
17
18
  };
19
+ export type PickerOptionsExpose = {
20
+ setConfirmIndex: (indexes: PickerOption) => void;
21
+ };
18
22
  export type PickerColumn = PickerOption[];
19
23
  export type PickerExpose = {
20
24
  confirm: () => void;
@@ -33,7 +37,7 @@ export type PickerColumnProvide = {
33
37
  setOptions: (options: PickerOption[]) => void;
34
38
  stopMomentum: () => void;
35
39
  };
36
- export type PickerInstance = ComponentPublicInstance<PickerProps, PickerExpose>;
40
+ export type PickerInstance = ComponentPublicInstance<PickerProps, PickerExpose, PickerOptionsExpose>;
37
41
  export type PickerConfirmEventParams = {
38
42
  selectedValues: Numeric[];
39
43
  selectedOptions: Array<PickerOption | undefined>;
@@ -1 +1 @@
1
- :root{--zt-popover-arrow-size: 6px;--zt-popover-radius: var(--zt-radius-lg);--zt-popover-action-width: 120px;--zt-popover-action-height: 40px;--zt-popover-light-text-color: var(--zt-text-color);--zt-popover-light-background: var(--zt-background-2);--zt-popover-light-action-disabled-text-color: var(--zt-text-color-3);--zt-popover-dark-text-color: var(--zt-white);--zt-popover-dark-background: #4a4a4a;--zt-popover-dark-action-disabled-text-color: var(--zt-text-color-2)}.zt-popover{position:absolute;overflow:visible;background-color:transparent;transition:opacity .15s,transform .15s}.zt-popover__wrapper{display:inline-block}.zt-popover__arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid;border-width:var(--zt-popover-arrow-size)}.zt-popover__content{overflow:hidden;border-radius:var(--zt-popover-radius)}.zt-popover__action{position:relative;display:flex;align-items:center;box-sizing:border-box;width:var(--zt-popover-action-width);height:var(--zt-popover-action-height);padding:0 var(--zt-padding-md);font-size:var(--zt-font-size-md);line-height:var(--zt-line-height-md);cursor:pointer}.zt-popover__action:last-child .zt-popover__action-text:after{display:none}.zt-popover__action-text{display:flex;flex:1;align-items:center;justify-content:center;height:100%}.zt-popover__action-icon{margin-right:var(--zt-padding-xs);font-size:var(--zt-font-size-xxl)}.zt-popover__action--with-icon .zt-popover__action-text{justify-content:flex-start}.zt-popover[data-popper-placement^=top] .zt-popover__arrow{bottom:0;border-top-color:currentColor;border-bottom-width:0;margin-bottom:calc(var(--zt-popover-arrow-size) * -1)}.zt-popover[data-popper-placement=top]{transform-origin:50% 100%}.zt-popover[data-popper-placement=top] .zt-popover__arrow{left:50%;transform:translate(-50%)}.zt-popover[data-popper-placement=top-start]{transform-origin:0 100%}.zt-popover[data-popper-placement=top-start] .zt-popover__arrow{left:var(--zt-padding-md)}.zt-popover[data-popper-placement=top-end]{transform-origin:100% 100%}.zt-popover[data-popper-placement=top-end] .zt-popover__arrow{right:var(--zt-padding-md)}.zt-popover[data-popper-placement^=left] .zt-popover__arrow{right:0;border-right-width:0;border-left-color:currentColor;transform:translateY(-50%);margin-right:calc(var(--zt-popover-arrow-size) * -1)}.zt-popover[data-popper-placement=left]{transform-origin:100% 50%}.zt-popover[data-popper-placement=left] .zt-popover__arrow{top:50%}.zt-popover[data-popper-placement=left-start]{transform-origin:100% 0}.zt-popover[data-popper-placement=left-start] .zt-popover__arrow{top:var(--zt-padding-md)}.zt-popover[data-popper-placement=left-end]{transform-origin:100% 100%}.zt-popover[data-popper-placement=left-end] .zt-popover__arrow{bottom:var(--zt-padding-md)}.zt-popover[data-popper-placement^=right] .zt-popover__arrow{left:0;border-right-color:currentColor;border-left-width:0;transform:translateY(-50%);margin-left:calc(var(--zt-popover-arrow-size) * -1)}.zt-popover[data-popper-placement=right]{transform-origin:0 50%}.zt-popover[data-popper-placement=right] .zt-popover__arrow{top:50%}.zt-popover[data-popper-placement=right-start]{transform-origin:0 0}.zt-popover[data-popper-placement=right-start] .zt-popover__arrow{top:var(--zt-padding-md)}.zt-popover[data-popper-placement=right-end]{transform-origin:0 100%}.zt-popover[data-popper-placement=right-end] .zt-popover__arrow{bottom:var(--zt-padding-md)}.zt-popover[data-popper-placement^=bottom] .zt-popover__arrow{top:0;border-top-width:0;border-bottom-color:currentColor;transform:translate(-50%);margin-top:calc(var(--zt-popover-arrow-size) * -1)}.zt-popover[data-popper-placement=bottom]{transform-origin:50% 0}.zt-popover[data-popper-placement=bottom] .zt-popover__arrow{left:50%}.zt-popover[data-popper-placement=bottom-start]{transform-origin:0 0}.zt-popover[data-popper-placement=bottom-start] .zt-popover__arrow{left:var(--zt-padding-md)}.zt-popover[data-popper-placement=bottom-end]{transform-origin:100% 0}.zt-popover[data-popper-placement=bottom-end] .zt-popover__arrow{right:var(--zt-padding-md)}.zt-popover--light{display:none;color:var(--zt-popover-light-text-color)}.zt-popover--light .zt-popover__content{background:var(--zt-popover-light-background);box-shadow:0 2px 12px rgba(50,50,51,.12)}.zt-popover--light .zt-popover__arrow{color:var(--zt-popover-light-background)}.zt-popover--light .zt-popover__action:active{background-color:var(--zt-active-color)}.zt-popover--light .zt-popover__action--selected{color:var(--zt-primary-color);cursor:not-allowed}.zt-popover--light .zt-popover__action--selected:active{background-color:transparent}.zt-popover--light .zt-popover__action--disabled{color:var(--zt-popover-light-action-disabled-text-color);cursor:not-allowed}.zt-popover--light .zt-popover__action--disabled:active{background-color:transparent}.zt-popover--dark{display:none;color:var(--zt-popover-dark-text-color)}.zt-popover--dark .zt-popover__content{background:var(--zt-popover-dark-background)}.zt-popover--dark .zt-popover__arrow{color:var(--zt-popover-dark-background)}.zt-popover--dark .zt-popover__action:active{background-color:rgba(0,0,0,.2)}.zt-popover--dark .zt-popover__action--disabled{color:var(--zt-popover-dark-action-disabled-text-color)}.zt-popover--dark .zt-popover__action--disabled:active{background-color:transparent}.zt-popover--dark .zt-popover__action-text:after{border-color:var(--zt-gray-7)}.zt-popover--show{display:block}.zt-popover--hidden{display:none}.zt-popover-zoom-enter-from,.zt-popover-zoom-leave-active{transform:scale(.8);opacity:0}.zt-popover-zoom-enter-active{transition-timing-function:var(--zt-ease-out)}.zt-popover-zoom-leave-active{transition-timing-function:var(--zt-ease-in)}
1
+ :root{--zt-popover-arrow-size: 6px;--zt-popover-radius: var(--zt-radius-lg);--zt-popover-action-width: 120px;--zt-popover-action-height: 40px;--zt-popover-light-text-color: var(--zt-text-color);--zt-popover-light-background: var(--zt-background-popup);--zt-popover-light-action-disabled-text-color: var(--zt-text-color-3);--zt-popover-dark-text-color: var(--zt-white);--zt-popover-dark-background: #4a4a4a;--zt-popover-dark-action-disabled-text-color: var(--zt-text-color-2)}.zt-popover{position:absolute;overflow:visible;background-color:transparent;transition:opacity .15s,transform .15s}.zt-popover__wrapper{display:inline-block}.zt-popover__arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid;border-width:var(--zt-popover-arrow-size)}.zt-popover__content{overflow:hidden;border-radius:var(--zt-popover-radius)}.zt-popover__action{position:relative;display:flex;align-items:center;box-sizing:border-box;width:var(--zt-popover-action-width);height:var(--zt-popover-action-height);padding:0 var(--zt-padding-md);font-size:var(--zt-font-size-md);line-height:var(--zt-line-height-md);cursor:pointer}.zt-popover__action:last-child .zt-popover__action-text:after{display:none}.zt-popover__action-text{width:100%;height:100%;line-height:var(--zt-popover-action-height);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zt-popover__action-icon{margin-right:var(--zt-padding-xs);font-size:var(--zt-font-size-xxl)}.zt-popover__action--with-icon .zt-popover__action-text{text-align:start}.zt-popover[data-popper-placement^=top] .zt-popover__arrow{bottom:0;border-top-color:currentColor;border-bottom-width:0;margin-bottom:calc(var(--zt-popover-arrow-size) * -1)}.zt-popover[data-popper-placement=top]{transform-origin:50% 100%}.zt-popover[data-popper-placement=top] .zt-popover__arrow{left:50%;transform:translate(-50%)}.zt-popover[data-popper-placement=top-start]{transform-origin:0 100%}.zt-popover[data-popper-placement=top-start] .zt-popover__arrow{left:var(--zt-padding-md)}.zt-popover[data-popper-placement=top-end]{transform-origin:100% 100%}.zt-popover[data-popper-placement=top-end] .zt-popover__arrow{right:var(--zt-padding-md)}.zt-popover[data-popper-placement^=left] .zt-popover__arrow{right:0;border-right-width:0;border-left-color:currentColor;transform:translateY(-50%);margin-right:calc(var(--zt-popover-arrow-size) * -1)}.zt-popover[data-popper-placement=left]{transform-origin:100% 50%}.zt-popover[data-popper-placement=left] .zt-popover__arrow{top:50%}.zt-popover[data-popper-placement=left-start]{transform-origin:100% 0}.zt-popover[data-popper-placement=left-start] .zt-popover__arrow{top:var(--zt-padding-md)}.zt-popover[data-popper-placement=left-end]{transform-origin:100% 100%}.zt-popover[data-popper-placement=left-end] .zt-popover__arrow{bottom:var(--zt-padding-md)}.zt-popover[data-popper-placement^=right] .zt-popover__arrow{left:0;border-right-color:currentColor;border-left-width:0;transform:translateY(-50%);margin-left:calc(var(--zt-popover-arrow-size) * -1)}.zt-popover[data-popper-placement=right]{transform-origin:0 50%}.zt-popover[data-popper-placement=right] .zt-popover__arrow{top:50%}.zt-popover[data-popper-placement=right-start]{transform-origin:0 0}.zt-popover[data-popper-placement=right-start] .zt-popover__arrow{top:var(--zt-padding-md)}.zt-popover[data-popper-placement=right-end]{transform-origin:0 100%}.zt-popover[data-popper-placement=right-end] .zt-popover__arrow{bottom:var(--zt-padding-md)}.zt-popover[data-popper-placement^=bottom] .zt-popover__arrow{top:0;border-top-width:0;border-bottom-color:currentColor;transform:translate(-50%);margin-top:calc(var(--zt-popover-arrow-size) * -1)}.zt-popover[data-popper-placement=bottom]{transform-origin:50% 0}.zt-popover[data-popper-placement=bottom] .zt-popover__arrow{left:50%}.zt-popover[data-popper-placement=bottom-start]{transform-origin:0 0}.zt-popover[data-popper-placement=bottom-start] .zt-popover__arrow{left:var(--zt-padding-md)}.zt-popover[data-popper-placement=bottom-end]{transform-origin:100% 0}.zt-popover[data-popper-placement=bottom-end] .zt-popover__arrow{right:var(--zt-padding-md)}.zt-popover--light{display:none;color:var(--zt-popover-light-text-color)}.zt-popover--light .zt-popover__content{background:var(--zt-popover-light-background);box-shadow:0 2px 12px rgba(50,50,51,.12)}.zt-popover--light .zt-popover__arrow{color:var(--zt-popover-light-background)}.zt-popover--light .zt-popover__action:active{background-color:var(--zt-active-color)}.zt-popover--light .zt-popover__action--selected{color:var(--zt-primary-color);cursor:not-allowed}.zt-popover--light .zt-popover__action--selected:active{background-color:transparent}.zt-popover--light .zt-popover__action--disabled{color:var(--zt-popover-light-action-disabled-text-color);cursor:not-allowed}.zt-popover--light .zt-popover__action--disabled:active{background-color:transparent}.zt-popover--dark{display:none;color:var(--zt-popover-dark-text-color)}.zt-popover--dark .zt-popover__content{background:var(--zt-popover-dark-background)}.zt-popover--dark .zt-popover__arrow{color:var(--zt-popover-dark-background)}.zt-popover--dark .zt-popover__action:active{background-color:rgba(0,0,0,.2)}.zt-popover--dark .zt-popover__action--disabled{color:var(--zt-popover-dark-action-disabled-text-color)}.zt-popover--dark .zt-popover__action--disabled:active{background-color:transparent}.zt-popover--dark .zt-popover__action-text:after{border-color:var(--zt-gray-7)}.zt-popover--show{display:block}.zt-popover--hidden{display:none}.zt-popover-zoom-enter-from,.zt-popover-zoom-leave-active{transform:scale(.8);opacity:0}.zt-popover-zoom-enter-active{transition-timing-function:var(--zt-ease-out)}.zt-popover-zoom-leave-active{transition-timing-function:var(--zt-ease-in)}
@@ -177,13 +177,13 @@ var stdin_default = defineComponent({
177
177
  }, attrs, useScopeId()), [(_a = slots.default) == null ? void 0 : _a.call(slots), renderCloseIcon()]), [[_vShow, props.show]]);
178
178
  });
179
179
  const sliderRenderPopup = lazyRender(() => {
180
- var _a, _b;
180
+ var _a;
181
181
  return _withDirectives(_createVNode("div", _mergeProps({
182
182
  "class": bem("slider"),
183
183
  "ref": popupRef,
184
184
  "style": style.value,
185
185
  "onKeydown": onKeydown
186
- }, attrs), [(_a = slots.default) == null ? void 0 : _a.call(slots), renderCloseIcon(), _createVNode("div", {
186
+ }, attrs), [renderCloseIcon(), _createVNode("div", {
187
187
  "class": bem("slider-title"),
188
188
  "style": `height:${touchAreaHeight}px;`,
189
189
  "ref": root
@@ -192,7 +192,7 @@ var stdin_default = defineComponent({
192
192
  }, null)]), _createVNode("div", {
193
193
  "class": bem("slider-content"),
194
194
  "style": contentStyle.value
195
- }, [(_b = slots.default) == null ? void 0 : _b.call(slots)])]), [[_vShow, props.show]]);
195
+ }, [(_a = slots.default) == null ? void 0 : _a.call(slots)])]), [[_vShow, props.show]]);
196
196
  });
197
197
  const renderTransition = () => {
198
198
  const {
@@ -1 +1 @@
1
- :root{--zt-popup-background: var(--zt-background-2);--zt-popup-transition: transform var(--zt-duration-base);--zt-popup-round-radius: 16px;--zt-popup-close-icon-color: var(--zt-gray-a6);--zt-popup-close-icon-margin: 16px;--zt-popup-close-icon-z-index: 1}.zt-overflow-hidden{overflow:hidden!important}.zt-popup{position:fixed;max-height:100%;overflow-y:auto;background:var(--zt-popup-background);transition:var(--zt-popup-transition);-webkit-overflow-scrolling:touch}.zt-popup__slider{position:fixed;width:100%;bottom:0;left:0;border-radius:16px 16px 0 0;background-color:var(--zt-popup-background)}.zt-popup__slider-title{height:40px;text-align:center}.zt-popup__slider-bar{display:inline-block;width:32px;height:4px;transform:scaleY(-1);background:rgba(45,75,115,.2);border-radius:3px}.zt-popup__slider-content{overflow-y:auto}.zt-popup--center{top:50%;left:50%;transform:translate3d(-50%,-50%,0)}.zt-popup--center.zt-popup--round{border-radius:var(--zt-popup-round-radius)}.zt-popup--top{top:0;left:0;width:100%}.zt-popup--top.zt-popup--round{border-radius:0 0 var(--zt-popup-round-radius) var(--zt-popup-round-radius)}.zt-popup--right{top:50%;right:0;transform:translate3d(0,-50%,0)}.zt-popup--right.zt-popup--round{border-radius:var(--zt-popup-round-radius) 0 0 var(--zt-popup-round-radius)}.zt-popup--bottom{bottom:0;left:0;width:100%}.zt-popup--bottom.zt-popup--round{border-radius:var(--zt-popup-round-radius) var(--zt-popup-round-radius) 0 0}.zt-popup--left{top:50%;left:0;transform:translate3d(0,-50%,0)}.zt-popup--left.zt-popup--round{border-radius:0 var(--zt-popup-round-radius) var(--zt-popup-round-radius) 0}.zt-popup-slide-top-enter-active,.zt-popup-slide-left-enter-active,.zt-popup-slide-right-enter-active,.zt-popup-slide-bottom-enter-active{transition-timing-function:var(--zt-ease-out)}.zt-popup-slide-top-leave-active,.zt-popup-slide-left-leave-active,.zt-popup-slide-right-leave-active,.zt-popup-slide-bottom-leave-active{transition-timing-function:var(--zt-ease-in)}.zt-popup-slide-top-enter-from,.zt-popup-slide-top-leave-active{transform:translate3d(0,-100%,0)}.zt-popup-slide-right-enter-from,.zt-popup-slide-right-leave-active{transform:translate3d(100%,-50%,0)}.zt-popup-slide-bottom-enter-from,.zt-popup-slide-bottom-leave-active{transform:translate3d(0,100%,0)}.zt-popup-slide-left-enter-from,.zt-popup-slide-left-leave-active{transform:translate3d(-100%,-50%,0)}.zt-popup__slider-icon{z-index:var(--zt-popup-close-icon-z-index);color:var(--zt-popup-close-icon-color);font-size:var(--zt-font-size-xxxl);cursor:pointer}.zt-popup__close-icon{position:absolute;z-index:var(--zt-popup-close-icon-z-index);color:var(--zt-popup-close-icon-color);font-size:var(--zt-font-size-xxxl)}.zt-popup__close-icon--top-left{top:var(--zt-popup-close-icon-margin);left:var(--zt-popup-close-icon-margin)}.zt-popup__close-icon--top-right{top:var(--zt-popup-close-icon-margin);right:var(--zt-popup-close-icon-margin)}.zt-popup__close-icon--bottom-left{bottom:var(--zt-popup-close-icon-margin);left:var(--zt-popup-close-icon-margin)}.zt-popup__close-icon--bottom-right{right:var(--zt-popup-close-icon-margin);bottom:var(--zt-popup-close-icon-margin)}
1
+ :root{--zt-popup-background: var(--zt-background-popup);--zt-popup-transition: transform var(--zt-duration-base);--zt-popup-round-radius: 16px;--zt-popup-close-icon-color: var(--zt-gray-a6);--zt-popup-close-icon-margin: 16px;--zt-popup-close-icon-z-index: 1}.zt-overflow-hidden{overflow:hidden!important}.zt-popup{position:fixed;max-height:100%;overflow-y:auto;background:var(--zt-popup-background);transition:var(--zt-popup-transition);-webkit-overflow-scrolling:touch}.zt-popup__slider{position:fixed;width:100%;bottom:0;left:0;border-radius:16px 16px 0 0;background-color:var(--zt-popup-background)}.zt-popup__slider-title{height:40px;text-align:center}.zt-popup__slider-bar{display:inline-block;width:32px;height:4px;transform:scaleY(-1);background:rgba(45,75,115,.2);border-radius:3px}.zt-popup__slider-content{overflow-y:auto}.zt-popup--center{top:50%;left:50%;transform:translate3d(-50%,-50%,0)}.zt-popup--center.zt-popup--round{border-radius:var(--zt-popup-round-radius)}.zt-popup--top{top:0;left:0;width:100%}.zt-popup--top.zt-popup--round{border-radius:0 0 var(--zt-popup-round-radius) var(--zt-popup-round-radius)}.zt-popup--right{top:50%;right:0;transform:translate3d(0,-50%,0)}.zt-popup--right.zt-popup--round{border-radius:var(--zt-popup-round-radius) 0 0 var(--zt-popup-round-radius)}.zt-popup--bottom{bottom:0;left:0;width:100%}.zt-popup--bottom.zt-popup--round{border-radius:var(--zt-popup-round-radius) var(--zt-popup-round-radius) 0 0}.zt-popup--left{top:50%;left:0;transform:translate3d(0,-50%,0)}.zt-popup--left.zt-popup--round{border-radius:0 var(--zt-popup-round-radius) var(--zt-popup-round-radius) 0}.zt-popup-slide-top-enter-active,.zt-popup-slide-left-enter-active,.zt-popup-slide-right-enter-active,.zt-popup-slide-bottom-enter-active{transition-timing-function:var(--zt-ease-out)}.zt-popup-slide-top-leave-active,.zt-popup-slide-left-leave-active,.zt-popup-slide-right-leave-active,.zt-popup-slide-bottom-leave-active{transition-timing-function:var(--zt-ease-in)}.zt-popup-slide-top-enter-from,.zt-popup-slide-top-leave-active{transform:translate3d(0,-100%,0)}.zt-popup-slide-right-enter-from,.zt-popup-slide-right-leave-active{transform:translate3d(100%,-50%,0)}.zt-popup-slide-bottom-enter-from,.zt-popup-slide-bottom-leave-active{transform:translate3d(0,100%,0)}.zt-popup-slide-left-enter-from,.zt-popup-slide-left-leave-active{transform:translate3d(-100%,-50%,0)}.zt-popup__slider-icon{z-index:var(--zt-popup-close-icon-z-index);color:var(--zt-popup-close-icon-color);font-size:var(--zt-font-size-xxxl);cursor:pointer}.zt-popup__close-icon{position:absolute;z-index:var(--zt-popup-close-icon-z-index);color:var(--zt-popup-close-icon-color);font-size:var(--zt-font-size-xxxl)}.zt-popup__close-icon--top-left{top:var(--zt-popup-close-icon-margin);left:var(--zt-popup-close-icon-margin)}.zt-popup__close-icon--top-right{top:var(--zt-popup-close-icon-margin);right:var(--zt-popup-close-icon-margin)}.zt-popup__close-icon--bottom-left{bottom:var(--zt-popup-close-icon-margin);left:var(--zt-popup-close-icon-margin)}.zt-popup__close-icon--bottom-right{right:var(--zt-popup-close-icon-margin);bottom:var(--zt-popup-close-icon-margin)}
@@ -41,7 +41,7 @@ declare const _default: import("vue").DefineComponent<{
41
41
  type: (NumberConstructor | StringConstructor)[];
42
42
  default: number;
43
43
  };
44
- }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "update:modelValue" | "refresh")[], "change" | "update:modelValue" | "refresh", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
44
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change" | "refresh")[], "update:modelValue" | "change" | "refresh", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
45
45
  disabled: BooleanConstructor;
46
46
  modelValue: BooleanConstructor;
47
47
  headHeight: {
@@ -18,7 +18,7 @@ export declare const PullRefresh: import("../utils").WithInstall<import("vue").D
18
18
  type: (NumberConstructor | StringConstructor)[];
19
19
  default: number;
20
20
  };
21
- }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "update:modelValue" | "refresh")[], "change" | "update:modelValue" | "refresh", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
21
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change" | "refresh")[], "update:modelValue" | "change" | "refresh", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
22
22
  disabled: BooleanConstructor;
23
23
  modelValue: BooleanConstructor;
24
24
  headHeight: {
@@ -26,7 +26,7 @@ declare const _default: import("vue").DefineComponent<{
26
26
  };
27
27
  modelValue: import("vue").PropType<unknown>;
28
28
  checkedColor: StringConstructor;
29
- }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "update:modelValue")[], "change" | "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
29
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
30
30
  disabled: BooleanConstructor;
31
31
  iconSize: (NumberConstructor | StringConstructor)[];
32
32
  direction: {
@@ -7,7 +7,7 @@ export declare const RadioGroup: import("../utils").WithInstall<import("vue").De
7
7
  };
8
8
  modelValue: import("vue").PropType<unknown>;
9
9
  checkedColor: StringConstructor;
10
- }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "update:modelValue")[], "change" | "update:modelValue", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
10
+ }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
11
11
  disabled: BooleanConstructor;
12
12
  iconSize: (NumberConstructor | StringConstructor)[];
13
13
  direction: {