@nutui/nutui 3.2.5 → 3.2.6-beta.1

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 (239) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/nutui.es.js +4214 -4444
  3. package/dist/nutui.umd.js +4213 -4543
  4. package/dist/packages/_es/ActionSheet.js +18 -19
  5. package/dist/packages/_es/Address.js +94 -85
  6. package/dist/packages/_es/AddressList.js +25 -12
  7. package/dist/packages/_es/Animate.js +3 -3
  8. package/dist/packages/_es/Audio.js +9 -2
  9. package/dist/packages/_es/AudioOperate.js +5 -1
  10. package/dist/packages/_es/Avatar.js +10 -10
  11. package/dist/packages/_es/AvatarGroup.js +5 -5
  12. package/dist/packages/_es/BackTop.js +55 -108
  13. package/dist/packages/_es/Badge.js +6 -4
  14. package/dist/packages/_es/Barrage.js +79 -103
  15. package/dist/packages/_es/Button.js +5 -3
  16. package/dist/packages/_es/Calendar.js +36 -23
  17. package/dist/packages/_es/CalendarItem.js +4 -3
  18. package/dist/packages/_es/Card.js +15 -5
  19. package/dist/packages/_es/Cascader.js +12 -11
  20. package/dist/packages/_es/Category.js +13 -12
  21. package/dist/packages/_es/CategoryPane.js +17 -13
  22. package/dist/packages/_es/Cell.js +9 -12
  23. package/dist/packages/_es/CellGroup.js +4 -2
  24. package/dist/packages/_es/Checkbox.js +1 -1
  25. package/dist/packages/_es/CheckboxGroup.js +2 -2
  26. package/dist/packages/_es/CircleProgress.js +98 -82
  27. package/dist/packages/_es/Col.js +1 -1
  28. package/dist/packages/_es/Collapse.js +65 -34
  29. package/dist/packages/_es/CollapseItem.js +93 -60
  30. package/dist/packages/_es/Comment.js +43 -19
  31. package/dist/packages/_es/ConfigProvider.js +1 -1
  32. package/dist/packages/_es/CountDown.js +3 -3
  33. package/dist/packages/_es/CountUp.js +47 -52
  34. package/dist/packages/_es/DatePicker.js +37 -54
  35. package/dist/packages/_es/Dialog.js +9 -88
  36. package/dist/packages/_es/Divider.js +3 -3
  37. package/dist/packages/_es/Drag.js +75 -49
  38. package/dist/packages/_es/Ecard.js +20 -18
  39. package/dist/packages/_es/Elevator.js +101 -76
  40. package/dist/packages/_es/Ellipsis.js +140 -100
  41. package/dist/packages/_es/Empty.js +6 -4
  42. package/dist/packages/_es/FixedNav.js +11 -6
  43. package/dist/packages/_es/Form.js +4 -4
  44. package/dist/packages/_es/FormItem.js +3 -1
  45. package/dist/packages/_es/Grid.js +1 -1
  46. package/dist/packages/_es/GridItem.js +10 -27
  47. package/dist/packages/_es/Icon.js +1 -1
  48. package/dist/packages/_es/Image.js +13 -114
  49. package/dist/packages/_es/ImagePreview.js +154 -400
  50. package/dist/packages/_es/Indicator.js +3 -3
  51. package/dist/packages/_es/InfiniteLoading.js +103 -115
  52. package/dist/packages/_es/Input.js +54 -26
  53. package/dist/packages/_es/InputNumber.js +25 -16
  54. package/dist/packages/_es/Invoice.js +6 -5
  55. package/dist/packages/_es/Layout.js +1 -1
  56. package/dist/packages/_es/List.js +47 -34
  57. package/dist/packages/_es/Menu.js +35 -35
  58. package/dist/packages/_es/MenuItem.js +56 -29
  59. package/dist/packages/_es/Navbar.js +49 -39
  60. package/dist/packages/_es/NoticeBar.js +52 -41
  61. package/dist/packages/_es/Notify.js +37 -166
  62. package/dist/packages/_es/NumberKeyboard.js +15 -20
  63. package/dist/packages/_es/OldPicker.js +130 -116
  64. package/dist/packages/_es/OverLay.js +5 -28
  65. package/dist/packages/_es/Pagination.js +8 -5
  66. package/dist/packages/_es/Picker.js +196 -65
  67. package/dist/packages/_es/Popover.js +201 -881
  68. package/dist/packages/_es/Popup.js +28 -84
  69. package/dist/packages/_es/Price.js +22 -6
  70. package/dist/packages/_es/Progress.js +18 -11
  71. package/dist/packages/_es/PullRefresh.js +4 -2
  72. package/dist/packages/_es/Radio.js +3 -3
  73. package/dist/packages/_es/RadioGroup.js +1 -1
  74. package/dist/packages/_es/Range.js +48 -34
  75. package/dist/packages/_es/Rate.js +15 -14
  76. package/dist/packages/_es/Row.js +1 -1
  77. package/dist/packages/_es/SearchBar.js +39 -36
  78. package/dist/packages/_es/ShortPassword.js +97 -66
  79. package/dist/packages/_es/SideNavBar.js +7 -18
  80. package/dist/packages/_es/SideNavBarItem.js +1 -1
  81. package/dist/packages/_es/Signature.js +113 -80
  82. package/dist/packages/_es/Skeleton.js +12 -11
  83. package/dist/packages/_es/Sku.js +63 -38
  84. package/dist/packages/_es/Step.js +7 -2
  85. package/dist/packages/_es/Steps.js +1 -1
  86. package/dist/packages/_es/Sticky.js +33 -23
  87. package/dist/packages/_es/SubSideNavBar.js +4 -2
  88. package/dist/packages/_es/Swipe.js +41 -26
  89. package/dist/packages/_es/Swiper.js +38 -21
  90. package/dist/packages/_es/SwiperItem.js +2 -2
  91. package/dist/packages/_es/Switch.js +8 -8
  92. package/dist/packages/_es/TabPane.js +1 -1
  93. package/dist/packages/_es/Tabbar.js +40 -9
  94. package/dist/packages/_es/TabbarItem.js +24 -30
  95. package/dist/packages/_es/Table.js +22 -17
  96. package/dist/packages/_es/Tabs.js +49 -16
  97. package/dist/packages/_es/Tag.js +6 -5
  98. package/dist/packages/_es/TextArea.js +114 -49
  99. package/dist/packages/_es/TimeDetail.js +4 -3
  100. package/dist/packages/_es/TimePannel.js +3 -3
  101. package/dist/packages/_es/TimeSelect.js +12 -10
  102. package/dist/packages/_es/Toast.js +53 -164
  103. package/dist/packages/_es/TrendArrow.js +6 -4
  104. package/dist/packages/_es/Uploader.js +141 -140
  105. package/dist/packages/_es/Video.js +72 -5
  106. package/dist/packages/_es/WaterMark.js +22 -14
  107. package/dist/packages/_es/common.js +1 -1
  108. package/dist/packages/_es/component.js +1 -1
  109. package/dist/packages/_es/index.js +44 -6
  110. package/dist/packages/_es/{index5.js → index.taro.js} +167 -154
  111. package/dist/packages/_es/index2.js +8 -31
  112. package/dist/packages/_es/index3.js +64 -7
  113. package/dist/packages/_es/index4.js +424 -62
  114. package/dist/packages/_es/plugin-vue_export-helper.js +1 -1
  115. package/dist/packages/_es/pxCheck.js +1 -1
  116. package/dist/packages/_es/raf.js +1 -1
  117. package/dist/packages/_es/style.css +21 -3
  118. package/dist/packages/_es/use-lock-scroll.js +23 -0
  119. package/dist/packages/locale/lang/baseLang.js +1 -1
  120. package/dist/packages/locale/lang/en-US.js +1 -1
  121. package/dist/packages/locale/lang/id-ID.js +1 -1
  122. package/dist/packages/locale/lang/index.js +1 -1
  123. package/dist/packages/locale/lang/zh-CN.js +1 -1
  124. package/dist/packages/locale/lang/zh-TW.js +1 -1
  125. package/dist/packages/signature/index.scss +4 -1
  126. package/dist/packages/swiperitem/index.scss +1 -1
  127. package/dist/smartips/attributes.json +4 -0
  128. package/dist/smartips/tags.json +2 -1
  129. package/dist/smartips/web-types.json +10 -1
  130. package/dist/style.css +1 -1
  131. package/dist/styles/themes/default.scss +44 -44
  132. package/dist/styles/themes/jdb.scss +44 -44
  133. package/dist/styles/themes/jddkh.scss +44 -44
  134. package/dist/styles/themes/jdt.scss +44 -44
  135. package/dist/types/__VUE/actionsheet/{index.vue.d.ts → index.taro.vue.d.ts} +11 -11
  136. package/dist/types/__VUE/address/{index.vue.d.ts → index.taro.vue.d.ts} +74 -34
  137. package/dist/types/__VUE/addresslist/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  138. package/dist/types/__VUE/animate/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  139. package/dist/types/__VUE/avatar/{index.vue.d.ts → index.taro.vue.d.ts} +5 -5
  140. package/dist/types/__VUE/avatargroup/{index.vue.d.ts → index.taro.vue.d.ts} +1 -1
  141. package/dist/types/__VUE/backtop/{index.vue.d.ts → index.taro.vue.d.ts} +14 -36
  142. package/dist/types/__VUE/badge/{index.vue.d.ts → index.taro.vue.d.ts} +1 -1
  143. package/dist/types/__VUE/barrage/{index.vue.d.ts → index.taro.vue.d.ts} +2 -2
  144. package/dist/types/__VUE/button/index.taro.vue.d.ts +116 -0
  145. package/dist/types/__VUE/calendar/{index.vue.d.ts → index.taro.vue.d.ts} +14 -2
  146. package/dist/types/__VUE/calendaritem/{index.vue.d.ts → index.taro.vue.d.ts} +17 -17
  147. package/dist/types/__VUE/card/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  148. package/dist/types/__VUE/cascader/{index.vue.d.ts → index.taro.vue.d.ts} +2 -2
  149. package/dist/types/__VUE/category/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  150. package/dist/types/__VUE/categorypane/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  151. package/dist/types/__VUE/cell/{index.vue.d.ts → index.taro.vue.d.ts} +12 -5
  152. package/dist/types/__VUE/checkbox/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  153. package/dist/types/__VUE/circleprogress/{index.vue.d.ts → index.taro.vue.d.ts} +14 -15
  154. package/dist/types/__VUE/collapse/{index.vue.d.ts → index.taro.vue.d.ts} +1 -1
  155. package/dist/types/__VUE/collapseitem/{index.vue.d.ts → index.taro.vue.d.ts} +1 -9
  156. package/dist/types/__VUE/comment/{index.vue.d.ts → index.taro.vue.d.ts} +1 -2
  157. package/dist/types/__VUE/configprovider/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  158. package/dist/types/__VUE/countdown/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  159. package/dist/types/__VUE/countup/{index.vue.d.ts → index.taro.vue.d.ts} +5 -7
  160. package/dist/types/__VUE/datepicker/{index.vue.d.ts → index.taro.vue.d.ts} +6 -6
  161. package/dist/types/__VUE/dialog/{index.vue.d.ts → index.taro.vue.d.ts} +10 -13
  162. package/dist/types/__VUE/divider/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  163. package/dist/types/__VUE/drag/{index.vue.d.ts → index.taro.vue.d.ts} +2 -1
  164. package/dist/types/__VUE/ecard/{index.vue.d.ts → index.taro.vue.d.ts} +3 -3
  165. package/dist/types/__VUE/elevator/{index.vue.d.ts → index.taro.vue.d.ts} +11 -2
  166. package/dist/types/__VUE/ellipsis/{index.vue.d.ts → index.taro.vue.d.ts} +4 -0
  167. package/dist/types/__VUE/empty/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  168. package/dist/types/__VUE/fixednav/{index.vue.d.ts → index.taro.vue.d.ts} +1 -1
  169. package/dist/types/__VUE/form/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  170. package/dist/types/__VUE/grid/{index.vue.d.ts → index.taro.vue.d.ts} +1 -1
  171. package/dist/types/__VUE/griditem/{index.vue.d.ts → index.taro.vue.d.ts} +2 -27
  172. package/dist/types/__VUE/icon/index.taro.vue.d.ts +74 -0
  173. package/dist/types/__VUE/image/index.taro.vue.d.ts +33 -0
  174. package/dist/types/__VUE/imagepreview/{index.vue.d.ts → index.taro.vue.d.ts} +41 -43
  175. package/dist/types/__VUE/indicator/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  176. package/dist/types/__VUE/infiniteloading/{index.vue.d.ts → index.taro.vue.d.ts} +15 -8
  177. package/dist/types/__VUE/input/{index.vue.d.ts → index.taro.vue.d.ts} +34 -16
  178. package/dist/types/__VUE/inputnumber/{index.vue.d.ts → index.taro.vue.d.ts} +2 -2
  179. package/dist/types/__VUE/invoice/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  180. package/dist/types/__VUE/layout/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  181. package/dist/types/__VUE/list/{index.vue.d.ts → index.taro.vue.d.ts} +2 -2
  182. package/dist/types/__VUE/menu/{index.vue.d.ts → index.taro.vue.d.ts} +2 -1
  183. package/dist/types/__VUE/menuitem/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  184. package/dist/types/__VUE/navbar/{index.vue.d.ts → index.taro.vue.d.ts} +1 -2
  185. package/dist/types/__VUE/noticebar/{index.vue.d.ts → index.taro.vue.d.ts} +6 -5
  186. package/dist/types/__VUE/notify/{index.vue.d.ts → index.taro.vue.d.ts} +10 -25
  187. package/dist/types/__VUE/numberkeyboard/{index.vue.d.ts → index.taro.vue.d.ts} +6 -30
  188. package/dist/types/__VUE/oldpicker/{Column.vue.d.ts → ColumnTaro.vue.d.ts} +28 -17
  189. package/dist/types/__VUE/oldpicker/{index.vue.d.ts → index.taro.vue.d.ts} +65 -45
  190. package/dist/types/__VUE/overlay/index.taro.vue.d.ts +85 -0
  191. package/dist/types/__VUE/pagination/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  192. package/dist/types/__VUE/picker/{Column.vue.d.ts → ColumnTaro.vue.d.ts} +16 -4
  193. package/dist/types/__VUE/picker/{index.vue.d.ts → index.taro.vue.d.ts} +54 -29
  194. package/dist/types/__VUE/popover/{index.vue.d.ts → index.taro.vue.d.ts} +18 -16
  195. package/dist/types/__VUE/popup/index.taro.vue.d.ts +1728 -0
  196. package/dist/types/__VUE/popup/index.vue.d.ts +4 -4
  197. package/dist/types/__VUE/price/{index.vue.d.ts → index.taro.vue.d.ts} +1 -0
  198. package/dist/types/__VUE/progress/{index.vue.d.ts → index.taro.vue.d.ts} +1 -1
  199. package/dist/types/__VUE/radio/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  200. package/dist/types/__VUE/range/{index.vue.d.ts → index.taro.vue.d.ts} +7 -6
  201. package/dist/types/__VUE/rate/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  202. package/dist/types/__VUE/searchbar/{index.vue.d.ts → index.taro.vue.d.ts} +19 -19
  203. package/dist/types/__VUE/shortpassword/{index.vue.d.ts → index.taro.vue.d.ts} +6 -21
  204. package/dist/types/__VUE/sidenavbar/{index.vue.d.ts → index.taro.vue.d.ts} +0 -5
  205. package/dist/types/__VUE/signature/{index.vue.d.ts → index.taro.vue.d.ts} +8 -5
  206. package/dist/types/__VUE/skeleton/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  207. package/dist/types/__VUE/sku/{index.vue.d.ts → index.taro.vue.d.ts} +55 -183
  208. package/dist/types/__VUE/step/index.vue.d.ts +1 -1
  209. package/dist/types/__VUE/steps/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  210. package/dist/types/__VUE/sticky/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  211. package/dist/types/__VUE/swipe/{index.vue.d.ts → index.taro.vue.d.ts} +4 -3
  212. package/dist/types/__VUE/swiper/{index.vue.d.ts → index.taro.vue.d.ts} +2 -1
  213. package/dist/types/__VUE/swiperitem/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  214. package/dist/types/__VUE/switch/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  215. package/dist/types/__VUE/tabbar/{index.vue.d.ts → index.taro.vue.d.ts} +10 -0
  216. package/dist/types/__VUE/tabbaritem/{index.vue.d.ts → index.taro.vue.d.ts} +8 -8
  217. package/dist/types/__VUE/table/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  218. package/dist/types/__VUE/tabs/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  219. package/dist/types/__VUE/tag/{index.vue.d.ts → index.taro.vue.d.ts} +4 -4
  220. package/dist/types/__VUE/textarea/{index.vue.d.ts → index.taro.vue.d.ts} +5 -3
  221. package/dist/types/__VUE/timedetail/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  222. package/dist/types/__VUE/timepannel/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  223. package/dist/types/__VUE/timeselect/{index.vue.d.ts → index.taro.vue.d.ts} +7 -8
  224. package/dist/types/__VUE/toast/{index.vue.d.ts → index.taro.vue.d.ts} +44 -22
  225. package/dist/types/__VUE/trendarrow/{index.vue.d.ts → index.taro.vue.d.ts} +0 -0
  226. package/dist/types/__VUE/uploader/{index.vue.d.ts → index.taro.vue.d.ts} +22 -13
  227. package/dist/types/__VUE/video/index.vue.d.ts +4 -2
  228. package/dist/types/__VUE/watermark/{index.vue.d.ts → index.taro.vue.d.ts} +1 -1
  229. package/dist/types/index.d.ts +1 -1
  230. package/dist/types/nutui.d.ts +89 -89
  231. package/package.json +1 -1
  232. package/dist/types/__VUE/dialog/index.d.ts +0 -48
  233. package/dist/types/__VUE/image/index.vue.d.ts +0 -117
  234. package/dist/types/__VUE/image/type.d.ts +0 -6
  235. package/dist/types/__VUE/imagepreview/imagePreviewItem.vue.d.ts +0 -108
  236. package/dist/types/__VUE/imagepreview/index.d.ts +0 -25
  237. package/dist/types/__VUE/notify/index.d.ts +0 -26
  238. package/dist/types/__VUE/tag/type.d.ts +0 -5
  239. package/dist/types/__VUE/toast/index.d.ts +0 -16
@@ -1,800 +1,143 @@
1
1
  /*!
2
- * @nutui/nutui v3.2.5 Tue Oct 25 2022 18:40:57 GMT+0800 (中国标准时间)
2
+ * @nutui/nutui v3.2.6-beta.1 Mon Oct 31 2022 19:38:22 GMT+0800 (中国标准时间)
3
3
  * (c) 2022 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
6
- import { ref, toRefs, computed, onMounted, onUnmounted, watch, nextTick, resolveComponent, openBlock, createElementBlock, Fragment, createElementVNode, normalizeClass, withModifiers, renderSlot, createVNode, withCtx, createCommentVNode, renderList, mergeProps, toDisplayString } from "vue";
6
+ import { toRefs, computed, resolveComponent, openBlock, createElementBlock, normalizeClass, normalizeStyle, createElementVNode, createBlock, createCommentVNode, createTextVNode, mergeProps, renderSlot, ref, reactive, onMounted, watch, withModifiers, Fragment, renderList, createVNode, toDisplayString } from "vue";
7
7
  import { c as createComponent } from "./component.js";
8
- import Popup, { popupProps } from "./Popup.js";
9
- import Button from "./Button.js";
8
+ import { _ as _sfc_main$2, P as Popup, p as popupProps } from "./index4.js";
10
9
  import { _ as _export_sfc } from "./plugin-vue_export-helper.js";
10
+ import { u as useTaroRect } from "./index.js";
11
+ import Taro from "@tarojs/taro";
11
12
  import "../locale/lang";
12
- import "./OverLay.js";
13
- import "./Icon.js";
13
+ import "./use-lock-scroll.js";
14
14
  import "./pxCheck.js";
15
- function getWindow(node) {
16
- if (node == null) {
17
- return window;
18
- }
19
- if (node.toString() !== "[object Window]") {
20
- var ownerDocument = node.ownerDocument;
21
- return ownerDocument ? ownerDocument.defaultView || window : window;
22
- }
23
- return node;
24
- }
25
- function isElement(node) {
26
- var OwnElement = getWindow(node).Element;
27
- return node instanceof OwnElement || node instanceof Element;
28
- }
29
- function isHTMLElement(node) {
30
- var OwnElement = getWindow(node).HTMLElement;
31
- return node instanceof OwnElement || node instanceof HTMLElement;
32
- }
33
- function isShadowRoot(node) {
34
- if (typeof ShadowRoot === "undefined") {
35
- return false;
36
- }
37
- var OwnElement = getWindow(node).ShadowRoot;
38
- return node instanceof OwnElement || node instanceof ShadowRoot;
39
- }
40
- var round = Math.round;
41
- function getUAString() {
42
- var uaData = navigator.userAgentData;
43
- if (uaData != null && uaData.brands) {
44
- return uaData.brands.map(function(item) {
45
- return item.brand + "/" + item.version;
46
- }).join(" ");
47
- }
48
- return navigator.userAgent;
49
- }
50
- function isLayoutViewport() {
51
- return !/^((?!chrome|android).)*safari/i.test(getUAString());
52
- }
53
- function getBoundingClientRect(element, includeScale, isFixedStrategy) {
54
- if (includeScale === void 0) {
55
- includeScale = false;
56
- }
57
- if (isFixedStrategy === void 0) {
58
- isFixedStrategy = false;
59
- }
60
- var clientRect = element.getBoundingClientRect();
61
- var scaleX = 1;
62
- var scaleY = 1;
63
- if (includeScale && isHTMLElement(element)) {
64
- scaleX = element.offsetWidth > 0 ? round(clientRect.width) / element.offsetWidth || 1 : 1;
65
- scaleY = element.offsetHeight > 0 ? round(clientRect.height) / element.offsetHeight || 1 : 1;
66
- }
67
- var _ref = isElement(element) ? getWindow(element) : window, visualViewport = _ref.visualViewport;
68
- var addVisualOffsets = !isLayoutViewport() && isFixedStrategy;
69
- var x = (clientRect.left + (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) / scaleX;
70
- var y = (clientRect.top + (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) / scaleY;
71
- var width = clientRect.width / scaleX;
72
- var height = clientRect.height / scaleY;
73
- return {
74
- width,
75
- height,
76
- top: y,
77
- right: x + width,
78
- bottom: y + height,
79
- left: x,
80
- x,
81
- y
82
- };
83
- }
84
- function getWindowScroll(node) {
85
- var win = getWindow(node);
86
- var scrollLeft = win.pageXOffset;
87
- var scrollTop = win.pageYOffset;
88
- return {
89
- scrollLeft,
90
- scrollTop
91
- };
92
- }
93
- function getHTMLElementScroll(element) {
94
- return {
95
- scrollLeft: element.scrollLeft,
96
- scrollTop: element.scrollTop
97
- };
98
- }
99
- function getNodeScroll(node) {
100
- if (node === getWindow(node) || !isHTMLElement(node)) {
101
- return getWindowScroll(node);
102
- } else {
103
- return getHTMLElementScroll(node);
104
- }
105
- }
106
- function getNodeName(element) {
107
- return element ? (element.nodeName || "").toLowerCase() : null;
108
- }
109
- function getDocumentElement(element) {
110
- return ((isElement(element) ? element.ownerDocument : element.document) || window.document).documentElement;
111
- }
112
- function getWindowScrollBarX(element) {
113
- return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;
114
- }
115
- function getComputedStyle(element) {
116
- return getWindow(element).getComputedStyle(element);
117
- }
118
- function isScrollParent(element) {
119
- var _getComputedStyle = getComputedStyle(element), overflow = _getComputedStyle.overflow, overflowX = _getComputedStyle.overflowX, overflowY = _getComputedStyle.overflowY;
120
- return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);
121
- }
122
- function isElementScaled(element) {
123
- var rect = element.getBoundingClientRect();
124
- var scaleX = round(rect.width) / element.offsetWidth || 1;
125
- var scaleY = round(rect.height) / element.offsetHeight || 1;
126
- return scaleX !== 1 || scaleY !== 1;
127
- }
128
- function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {
129
- if (isFixed === void 0) {
130
- isFixed = false;
131
- }
132
- var isOffsetParentAnElement = isHTMLElement(offsetParent);
133
- var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);
134
- var documentElement = getDocumentElement(offsetParent);
135
- var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled, isFixed);
136
- var scroll = {
137
- scrollLeft: 0,
138
- scrollTop: 0
139
- };
140
- var offsets = {
141
- x: 0,
142
- y: 0
143
- };
144
- if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
145
- if (getNodeName(offsetParent) !== "body" || isScrollParent(documentElement)) {
146
- scroll = getNodeScroll(offsetParent);
147
- }
148
- if (isHTMLElement(offsetParent)) {
149
- offsets = getBoundingClientRect(offsetParent, true);
150
- offsets.x += offsetParent.clientLeft;
151
- offsets.y += offsetParent.clientTop;
152
- } else if (documentElement) {
153
- offsets.x = getWindowScrollBarX(documentElement);
154
- }
155
- }
156
- return {
157
- x: rect.left + scroll.scrollLeft - offsets.x,
158
- y: rect.top + scroll.scrollTop - offsets.y,
159
- width: rect.width,
160
- height: rect.height
161
- };
162
- }
163
- function getLayoutRect(element) {
164
- var clientRect = getBoundingClientRect(element);
165
- var width = element.offsetWidth;
166
- var height = element.offsetHeight;
167
- if (Math.abs(clientRect.width - width) <= 1) {
168
- width = clientRect.width;
169
- }
170
- if (Math.abs(clientRect.height - height) <= 1) {
171
- height = clientRect.height;
172
- }
173
- return {
174
- x: element.offsetLeft,
175
- y: element.offsetTop,
176
- width,
177
- height
178
- };
179
- }
180
- function getParentNode(element) {
181
- if (getNodeName(element) === "html") {
182
- return element;
183
- }
184
- return element.assignedSlot || element.parentNode || (isShadowRoot(element) ? element.host : null) || getDocumentElement(element);
185
- }
186
- function getScrollParent(node) {
187
- if (["html", "body", "#document"].indexOf(getNodeName(node)) >= 0) {
188
- return node.ownerDocument.body;
189
- }
190
- if (isHTMLElement(node) && isScrollParent(node)) {
191
- return node;
192
- }
193
- return getScrollParent(getParentNode(node));
194
- }
195
- function listScrollParents(element, list) {
196
- var _element$ownerDocumen;
197
- if (list === void 0) {
198
- list = [];
199
- }
200
- var scrollParent = getScrollParent(element);
201
- var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);
202
- var win = getWindow(scrollParent);
203
- var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;
204
- var updatedList = list.concat(target);
205
- return isBody ? updatedList : updatedList.concat(listScrollParents(getParentNode(target)));
206
- }
207
- function isTableElement(element) {
208
- return ["table", "td", "th"].indexOf(getNodeName(element)) >= 0;
209
- }
210
- function getTrueOffsetParent(element) {
211
- if (!isHTMLElement(element) || getComputedStyle(element).position === "fixed") {
212
- return null;
213
- }
214
- return element.offsetParent;
215
- }
216
- function getContainingBlock(element) {
217
- var isFirefox = /firefox/i.test(getUAString());
218
- var isIE = /Trident/i.test(getUAString());
219
- if (isIE && isHTMLElement(element)) {
220
- var elementCss = getComputedStyle(element);
221
- if (elementCss.position === "fixed") {
222
- return null;
223
- }
224
- }
225
- var currentNode = getParentNode(element);
226
- if (isShadowRoot(currentNode)) {
227
- currentNode = currentNode.host;
228
- }
229
- while (isHTMLElement(currentNode) && ["html", "body"].indexOf(getNodeName(currentNode)) < 0) {
230
- var css = getComputedStyle(currentNode);
231
- if (css.transform !== "none" || css.perspective !== "none" || css.contain === "paint" || ["transform", "perspective"].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === "filter" || isFirefox && css.filter && css.filter !== "none") {
232
- return currentNode;
233
- } else {
234
- currentNode = currentNode.parentNode;
235
- }
236
- }
237
- return null;
238
- }
239
- function getOffsetParent(element) {
240
- var window2 = getWindow(element);
241
- var offsetParent = getTrueOffsetParent(element);
242
- while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === "static") {
243
- offsetParent = getTrueOffsetParent(offsetParent);
244
- }
245
- if (offsetParent && (getNodeName(offsetParent) === "html" || getNodeName(offsetParent) === "body" && getComputedStyle(offsetParent).position === "static")) {
246
- return window2;
247
- }
248
- return offsetParent || getContainingBlock(element) || window2;
249
- }
250
- var top = "top";
251
- var bottom = "bottom";
252
- var right = "right";
253
- var left = "left";
254
- var auto = "auto";
255
- var basePlacements = [top, bottom, right, left];
256
- var start = "start";
257
- var end = "end";
258
- var placements = /* @__PURE__ */ [].concat(basePlacements, [auto]).reduce(function(acc, placement) {
259
- return acc.concat([placement, placement + "-" + start, placement + "-" + end]);
260
- }, []);
261
- var beforeRead = "beforeRead";
262
- var read = "read";
263
- var afterRead = "afterRead";
264
- var beforeMain = "beforeMain";
265
- var main = "main";
266
- var afterMain = "afterMain";
267
- var beforeWrite = "beforeWrite";
268
- var write = "write";
269
- var afterWrite = "afterWrite";
270
- var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];
271
- function order(modifiers) {
272
- var map = /* @__PURE__ */ new Map();
273
- var visited = /* @__PURE__ */ new Set();
274
- var result = [];
275
- modifiers.forEach(function(modifier) {
276
- map.set(modifier.name, modifier);
277
- });
278
- function sort(modifier) {
279
- visited.add(modifier.name);
280
- var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);
281
- requires.forEach(function(dep) {
282
- if (!visited.has(dep)) {
283
- var depModifier = map.get(dep);
284
- if (depModifier) {
285
- sort(depModifier);
286
- }
287
- }
288
- });
289
- result.push(modifier);
290
- }
291
- modifiers.forEach(function(modifier) {
292
- if (!visited.has(modifier.name)) {
293
- sort(modifier);
294
- }
295
- });
296
- return result;
297
- }
298
- function orderModifiers(modifiers) {
299
- var orderedModifiers = order(modifiers);
300
- return modifierPhases.reduce(function(acc, phase) {
301
- return acc.concat(orderedModifiers.filter(function(modifier) {
302
- return modifier.phase === phase;
303
- }));
304
- }, []);
305
- }
306
- function debounce(fn2) {
307
- var pending;
308
- return function() {
309
- if (!pending) {
310
- pending = new Promise(function(resolve) {
311
- Promise.resolve().then(function() {
312
- pending = void 0;
313
- resolve(fn2());
314
- });
315
- });
316
- }
317
- return pending;
318
- };
319
- }
320
- function getBasePlacement(placement) {
321
- return placement.split("-")[0];
322
- }
323
- function mergeByName(modifiers) {
324
- var merged = modifiers.reduce(function(merged2, current) {
325
- var existing = merged2[current.name];
326
- merged2[current.name] = existing ? Object.assign({}, existing, current, {
327
- options: Object.assign({}, existing.options, current.options),
328
- data: Object.assign({}, existing.data, current.data)
329
- }) : current;
330
- return merged2;
331
- }, {});
332
- return Object.keys(merged).map(function(key) {
333
- return merged[key];
334
- });
335
- }
336
- function getVariation(placement) {
337
- return placement.split("-")[1];
338
- }
339
- function getMainAxisFromPlacement(placement) {
340
- return ["top", "bottom"].indexOf(placement) >= 0 ? "x" : "y";
341
- }
342
- function computeOffsets(_ref) {
343
- var reference = _ref.reference, element = _ref.element, placement = _ref.placement;
344
- var basePlacement = placement ? getBasePlacement(placement) : null;
345
- var variation = placement ? getVariation(placement) : null;
346
- var commonX = reference.x + reference.width / 2 - element.width / 2;
347
- var commonY = reference.y + reference.height / 2 - element.height / 2;
348
- var offsets;
349
- switch (basePlacement) {
350
- case top:
351
- offsets = {
352
- x: commonX,
353
- y: reference.y - element.height
354
- };
355
- break;
356
- case bottom:
357
- offsets = {
358
- x: commonX,
359
- y: reference.y + reference.height
360
- };
361
- break;
362
- case right:
363
- offsets = {
364
- x: reference.x + reference.width,
365
- y: commonY
366
- };
367
- break;
368
- case left:
369
- offsets = {
370
- x: reference.x - element.width,
371
- y: commonY
372
- };
373
- break;
374
- default:
375
- offsets = {
376
- x: reference.x,
377
- y: reference.y
378
- };
379
- }
380
- var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;
381
- if (mainAxis != null) {
382
- var len = mainAxis === "y" ? "height" : "width";
383
- switch (variation) {
384
- case start:
385
- offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);
386
- break;
387
- case end:
388
- offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);
389
- break;
390
- }
391
- }
392
- return offsets;
393
- }
394
- var DEFAULT_OPTIONS = {
395
- placement: "bottom",
396
- modifiers: [],
397
- strategy: "absolute"
398
- };
399
- function areValidElements() {
400
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
401
- args[_key] = arguments[_key];
402
- }
403
- return !args.some(function(element) {
404
- return !(element && typeof element.getBoundingClientRect === "function");
405
- });
406
- }
407
- function popperGenerator(generatorOptions) {
408
- if (generatorOptions === void 0) {
409
- generatorOptions = {};
410
- }
411
- var _generatorOptions = generatorOptions, _generatorOptions$def = _generatorOptions.defaultModifiers, defaultModifiers2 = _generatorOptions$def === void 0 ? [] : _generatorOptions$def, _generatorOptions$def2 = _generatorOptions.defaultOptions, defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;
412
- return function createPopper2(reference, popper, options) {
413
- if (options === void 0) {
414
- options = defaultOptions;
15
+ const { componentName: componentName$1, create: create$1 } = createComponent("button");
16
+ const _sfc_main$1 = create$1({
17
+ components: {
18
+ [_sfc_main$2.name]: _sfc_main$2
19
+ },
20
+ props: {
21
+ color: String,
22
+ shape: {
23
+ type: String,
24
+ default: "round"
25
+ },
26
+ plain: {
27
+ type: Boolean,
28
+ default: false
29
+ },
30
+ loading: {
31
+ type: Boolean,
32
+ default: false
33
+ },
34
+ disabled: {
35
+ type: Boolean,
36
+ default: false
37
+ },
38
+ type: {
39
+ type: String,
40
+ default: "default"
41
+ },
42
+ size: {
43
+ type: String,
44
+ default: "normal"
45
+ },
46
+ block: {
47
+ type: Boolean,
48
+ default: false
49
+ },
50
+ icon: {
51
+ type: String,
52
+ default: ""
53
+ },
54
+ iconClassPrefix: {
55
+ type: String,
56
+ default: "nut-icon"
57
+ },
58
+ iconFontClassName: {
59
+ type: String,
60
+ default: "nutui-iconfont"
415
61
  }
416
- var state = {
417
- placement: "bottom",
418
- orderedModifiers: [],
419
- options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),
420
- modifiersData: {},
421
- elements: {
422
- reference,
423
- popper
424
- },
425
- attributes: {},
426
- styles: {}
427
- };
428
- var effectCleanupFns = [];
429
- var isDestroyed = false;
430
- var instance = {
431
- state,
432
- setOptions: function setOptions(setOptionsAction) {
433
- var options2 = typeof setOptionsAction === "function" ? setOptionsAction(state.options) : setOptionsAction;
434
- cleanupModifierEffects();
435
- state.options = Object.assign({}, defaultOptions, state.options, options2);
436
- state.scrollParents = {
437
- reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],
438
- popper: listScrollParents(popper)
439
- };
440
- var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers2, state.options.modifiers)));
441
- state.orderedModifiers = orderedModifiers.filter(function(m) {
442
- return m.enabled;
443
- });
444
- runModifierEffects();
445
- return instance.update();
446
- },
447
- forceUpdate: function forceUpdate() {
448
- if (isDestroyed) {
449
- return;
450
- }
451
- var _state$elements = state.elements, reference2 = _state$elements.reference, popper2 = _state$elements.popper;
452
- if (!areValidElements(reference2, popper2)) {
453
- return;
454
- }
455
- state.rects = {
456
- reference: getCompositeRect(reference2, getOffsetParent(popper2), state.options.strategy === "fixed"),
457
- popper: getLayoutRect(popper2)
458
- };
459
- state.reset = false;
460
- state.placement = state.options.placement;
461
- state.orderedModifiers.forEach(function(modifier) {
462
- return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);
463
- });
464
- for (var index2 = 0; index2 < state.orderedModifiers.length; index2++) {
465
- if (state.reset === true) {
466
- state.reset = false;
467
- index2 = -1;
468
- continue;
469
- }
470
- var _state$orderedModifie = state.orderedModifiers[index2], fn2 = _state$orderedModifie.fn, _state$orderedModifie2 = _state$orderedModifie.options, _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2, name = _state$orderedModifie.name;
471
- if (typeof fn2 === "function") {
472
- state = fn2({
473
- state,
474
- options: _options,
475
- name,
476
- instance
477
- }) || state;
478
- }
479
- }
480
- },
481
- update: debounce(function() {
482
- return new Promise(function(resolve) {
483
- instance.forceUpdate();
484
- resolve(state);
485
- });
486
- }),
487
- destroy: function destroy() {
488
- cleanupModifierEffects();
489
- isDestroyed = true;
62
+ },
63
+ emits: ["click"],
64
+ setup(props, { emit, slots }) {
65
+ const { type, size, shape, disabled, loading, color, plain, block } = toRefs(props);
66
+ const handleClick = (event) => {
67
+ if (!loading.value && !disabled.value) {
68
+ emit("click", event);
490
69
  }
491
70
  };
492
- if (!areValidElements(reference, popper)) {
493
- return instance;
494
- }
495
- instance.setOptions(options).then(function(state2) {
496
- if (!isDestroyed && options.onFirstUpdate) {
497
- options.onFirstUpdate(state2);
498
- }
71
+ const classes = computed(() => {
72
+ const prefixCls = componentName$1;
73
+ return {
74
+ [prefixCls]: true,
75
+ [`${prefixCls}--${type.value}`]: type.value,
76
+ [`${prefixCls}--${size.value}`]: size.value,
77
+ [`${prefixCls}--${shape.value}`]: shape.value,
78
+ [`${prefixCls}--plain`]: plain.value,
79
+ [`${prefixCls}--block`]: block.value,
80
+ [`${prefixCls}--disabled`]: disabled.value,
81
+ [`${prefixCls}--loading`]: loading.value
82
+ };
499
83
  });
500
- function runModifierEffects() {
501
- state.orderedModifiers.forEach(function(_ref3) {
502
- var name = _ref3.name, _ref3$options = _ref3.options, options2 = _ref3$options === void 0 ? {} : _ref3$options, effect2 = _ref3.effect;
503
- if (typeof effect2 === "function") {
504
- var cleanupFn = effect2({
505
- state,
506
- name,
507
- instance,
508
- options: options2
509
- });
510
- var noopFn = function noopFn2() {
511
- };
512
- effectCleanupFns.push(cleanupFn || noopFn);
84
+ const getStyle = computed(() => {
85
+ var _a;
86
+ const style = {};
87
+ if (color == null ? void 0 : color.value) {
88
+ if (plain.value) {
89
+ style.color = color.value;
90
+ style.background = "#fff";
91
+ if (!((_a = color.value) == null ? void 0 : _a.includes("gradient"))) {
92
+ style.borderColor = color.value;
93
+ }
94
+ } else {
95
+ style.color = "#fff";
96
+ style.background = color.value;
513
97
  }
514
- });
515
- }
516
- function cleanupModifierEffects() {
517
- effectCleanupFns.forEach(function(fn2) {
518
- return fn2();
519
- });
520
- effectCleanupFns = [];
521
- }
522
- return instance;
523
- };
524
- }
525
- var passive = {
526
- passive: true
527
- };
528
- function effect$1(_ref) {
529
- var state = _ref.state, instance = _ref.instance, options = _ref.options;
530
- var _options$scroll = options.scroll, scroll = _options$scroll === void 0 ? true : _options$scroll, _options$resize = options.resize, resize = _options$resize === void 0 ? true : _options$resize;
531
- var window2 = getWindow(state.elements.popper);
532
- var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);
533
- if (scroll) {
534
- scrollParents.forEach(function(scrollParent) {
535
- scrollParent.addEventListener("scroll", instance.update, passive);
536
- });
537
- }
538
- if (resize) {
539
- window2.addEventListener("resize", instance.update, passive);
540
- }
541
- return function() {
542
- if (scroll) {
543
- scrollParents.forEach(function(scrollParent) {
544
- scrollParent.removeEventListener("scroll", instance.update, passive);
545
- });
546
- }
547
- if (resize) {
548
- window2.removeEventListener("resize", instance.update, passive);
549
- }
550
- };
551
- }
552
- var eventListeners = {
553
- name: "eventListeners",
554
- enabled: true,
555
- phase: "write",
556
- fn: function fn() {
557
- },
558
- effect: effect$1,
559
- data: {}
560
- };
561
- function popperOffsets(_ref) {
562
- var state = _ref.state, name = _ref.name;
563
- state.modifiersData[name] = computeOffsets({
564
- reference: state.rects.reference,
565
- element: state.rects.popper,
566
- strategy: "absolute",
567
- placement: state.placement
568
- });
569
- }
570
- var popperOffsets$1 = {
571
- name: "popperOffsets",
572
- enabled: true,
573
- phase: "read",
574
- fn: popperOffsets,
575
- data: {}
576
- };
577
- var unsetSides = {
578
- top: "auto",
579
- right: "auto",
580
- bottom: "auto",
581
- left: "auto"
582
- };
583
- function roundOffsetsByDPR(_ref) {
584
- var x = _ref.x, y = _ref.y;
585
- var win = window;
586
- var dpr = win.devicePixelRatio || 1;
587
- return {
588
- x: round(x * dpr) / dpr || 0,
589
- y: round(y * dpr) / dpr || 0
590
- };
591
- }
592
- function mapToStyles(_ref2) {
593
- var _Object$assign2;
594
- var popper = _ref2.popper, popperRect = _ref2.popperRect, placement = _ref2.placement, variation = _ref2.variation, offsets = _ref2.offsets, position = _ref2.position, gpuAcceleration = _ref2.gpuAcceleration, adaptive = _ref2.adaptive, roundOffsets = _ref2.roundOffsets, isFixed = _ref2.isFixed;
595
- var _offsets$x = offsets.x, x = _offsets$x === void 0 ? 0 : _offsets$x, _offsets$y = offsets.y, y = _offsets$y === void 0 ? 0 : _offsets$y;
596
- var _ref3 = typeof roundOffsets === "function" ? roundOffsets({
597
- x,
598
- y
599
- }) : {
600
- x,
601
- y
602
- };
603
- x = _ref3.x;
604
- y = _ref3.y;
605
- var hasX = offsets.hasOwnProperty("x");
606
- var hasY = offsets.hasOwnProperty("y");
607
- var sideX = left;
608
- var sideY = top;
609
- var win = window;
610
- if (adaptive) {
611
- var offsetParent = getOffsetParent(popper);
612
- var heightProp = "clientHeight";
613
- var widthProp = "clientWidth";
614
- if (offsetParent === getWindow(popper)) {
615
- offsetParent = getDocumentElement(popper);
616
- if (getComputedStyle(offsetParent).position !== "static" && position === "absolute") {
617
- heightProp = "scrollHeight";
618
- widthProp = "scrollWidth";
619
- }
620
- }
621
- offsetParent = offsetParent;
622
- if (placement === top || (placement === left || placement === right) && variation === end) {
623
- sideY = bottom;
624
- var offsetY = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.height : offsetParent[heightProp];
625
- y -= offsetY - popperRect.height;
626
- y *= gpuAcceleration ? 1 : -1;
627
- }
628
- if (placement === left || (placement === top || placement === bottom) && variation === end) {
629
- sideX = right;
630
- var offsetX = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.width : offsetParent[widthProp];
631
- x -= offsetX - popperRect.width;
632
- x *= gpuAcceleration ? 1 : -1;
633
- }
634
- }
635
- var commonStyles = Object.assign({
636
- position
637
- }, adaptive && unsetSides);
638
- var _ref4 = roundOffsets === true ? roundOffsetsByDPR({
639
- x,
640
- y
641
- }) : {
642
- x,
643
- y
644
- };
645
- x = _ref4.x;
646
- y = _ref4.y;
647
- if (gpuAcceleration) {
648
- var _Object$assign;
649
- return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? "0" : "", _Object$assign[sideX] = hasX ? "0" : "", _Object$assign.transform = (win.devicePixelRatio || 1) <= 1 ? "translate(" + x + "px, " + y + "px)" : "translate3d(" + x + "px, " + y + "px, 0)", _Object$assign));
650
- }
651
- return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + "px" : "", _Object$assign2[sideX] = hasX ? x + "px" : "", _Object$assign2.transform = "", _Object$assign2));
652
- }
653
- function computeStyles(_ref5) {
654
- var state = _ref5.state, options = _ref5.options;
655
- var _options$gpuAccelerat = options.gpuAcceleration, gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat, _options$adaptive = options.adaptive, adaptive = _options$adaptive === void 0 ? true : _options$adaptive, _options$roundOffsets = options.roundOffsets, roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;
656
- var commonStyles = {
657
- placement: getBasePlacement(state.placement),
658
- variation: getVariation(state.placement),
659
- popper: state.elements.popper,
660
- popperRect: state.rects.popper,
661
- gpuAcceleration,
662
- isFixed: state.options.strategy === "fixed"
663
- };
664
- if (state.modifiersData.popperOffsets != null) {
665
- state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {
666
- offsets: state.modifiersData.popperOffsets,
667
- position: state.options.strategy,
668
- adaptive,
669
- roundOffsets
670
- })));
671
- }
672
- if (state.modifiersData.arrow != null) {
673
- state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {
674
- offsets: state.modifiersData.arrow,
675
- position: "absolute",
676
- adaptive: false,
677
- roundOffsets
678
- })));
679
- }
680
- state.attributes.popper = Object.assign({}, state.attributes.popper, {
681
- "data-popper-placement": state.placement
682
- });
683
- }
684
- var computeStyles$1 = {
685
- name: "computeStyles",
686
- enabled: true,
687
- phase: "beforeWrite",
688
- fn: computeStyles,
689
- data: {}
690
- };
691
- function applyStyles(_ref) {
692
- var state = _ref.state;
693
- Object.keys(state.elements).forEach(function(name) {
694
- var style = state.styles[name] || {};
695
- var attributes = state.attributes[name] || {};
696
- var element = state.elements[name];
697
- if (!isHTMLElement(element) || !getNodeName(element)) {
698
- return;
699
- }
700
- Object.assign(element.style, style);
701
- Object.keys(attributes).forEach(function(name2) {
702
- var value = attributes[name2];
703
- if (value === false) {
704
- element.removeAttribute(name2);
705
- } else {
706
- element.setAttribute(name2, value === true ? "" : value);
707
98
  }
99
+ return style;
708
100
  });
709
- });
710
- }
711
- function effect(_ref2) {
712
- var state = _ref2.state;
713
- var initialStyles = {
714
- popper: {
715
- position: state.options.strategy,
716
- left: "0",
717
- top: "0",
718
- margin: "0"
719
- },
720
- arrow: {
721
- position: "absolute"
722
- },
723
- reference: {}
724
- };
725
- Object.assign(state.elements.popper.style, initialStyles.popper);
726
- state.styles = initialStyles;
727
- if (state.elements.arrow) {
728
- Object.assign(state.elements.arrow.style, initialStyles.arrow);
101
+ return {
102
+ handleClick,
103
+ classes,
104
+ getStyle
105
+ };
729
106
  }
730
- return function() {
731
- Object.keys(state.elements).forEach(function(name) {
732
- var element = state.elements[name];
733
- var attributes = state.attributes[name] || {};
734
- var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]);
735
- var style = styleProperties.reduce(function(style2, property) {
736
- style2[property] = "";
737
- return style2;
738
- }, {});
739
- if (!isHTMLElement(element) || !getNodeName(element)) {
740
- return;
741
- }
742
- Object.assign(element.style, style);
743
- Object.keys(attributes).forEach(function(attribute) {
744
- element.removeAttribute(attribute);
745
- });
746
- });
747
- };
748
- }
749
- var applyStyles$1 = {
750
- name: "applyStyles",
751
- enabled: true,
752
- phase: "write",
753
- fn: applyStyles,
754
- effect,
755
- requires: ["computeStyles"]
756
- };
757
- var defaultModifiers = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1];
758
- var createPopper = /* @__PURE__ */ popperGenerator({
759
- defaultModifiers
760
107
  });
761
- function distanceAndSkiddingToXY(placement, rects, offset2) {
762
- var basePlacement = getBasePlacement(placement);
763
- var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;
764
- var _ref = typeof offset2 === "function" ? offset2(Object.assign({}, rects, {
765
- placement
766
- })) : offset2, skidding = _ref[0], distance = _ref[1];
767
- skidding = skidding || 0;
768
- distance = (distance || 0) * invertDistance;
769
- return [left, right].indexOf(basePlacement) >= 0 ? {
770
- x: distance,
771
- y: skidding
772
- } : {
773
- x: skidding,
774
- y: distance
775
- };
776
- }
777
- function offset(_ref2) {
778
- var state = _ref2.state, options = _ref2.options, name = _ref2.name;
779
- var _options$offset = options.offset, offset2 = _options$offset === void 0 ? [0, 0] : _options$offset;
780
- var data = placements.reduce(function(acc, placement) {
781
- acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset2);
782
- return acc;
783
- }, {});
784
- var _data$state$placement = data[state.placement], x = _data$state$placement.x, y = _data$state$placement.y;
785
- if (state.modifiersData.popperOffsets != null) {
786
- state.modifiersData.popperOffsets.x += x;
787
- state.modifiersData.popperOffsets.y += y;
788
- }
789
- state.modifiersData[name] = data;
790
- }
791
- var offsetModifier = {
792
- name: "offset",
793
- enabled: true,
794
- phase: "main",
795
- requires: ["popperOffsets"],
796
- fn: offset
797
- };
108
+ const _hoisted_1$1 = { class: "nut-button__warp" };
109
+ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
110
+ const _component_nut_icon = resolveComponent("nut-icon");
111
+ return openBlock(), createElementBlock("view", {
112
+ class: normalizeClass(_ctx.classes),
113
+ style: normalizeStyle(_ctx.getStyle),
114
+ onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
115
+ }, [
116
+ createElementVNode("view", _hoisted_1$1, [
117
+ _ctx.loading ? (openBlock(), createBlock(_component_nut_icon, {
118
+ key: 0,
119
+ class: "nut-icon-loading"
120
+ })) : createCommentVNode("", true),
121
+ createTextVNode(),
122
+ _ctx.icon && !_ctx.loading ? (openBlock(), createBlock(_component_nut_icon, mergeProps({
123
+ key: 1,
124
+ name: _ctx.icon
125
+ }, _ctx.$attrs, {
126
+ "class-prefix": _ctx.iconClassPrefix,
127
+ "font-class-name": _ctx.iconFontClassName
128
+ }), null, 16, ["name", "class-prefix", "font-class-name"])) : createCommentVNode("", true),
129
+ createTextVNode(),
130
+ _ctx.$slots.default ? (openBlock(), createElementBlock("view", {
131
+ key: 2,
132
+ class: normalizeClass({ text: _ctx.icon || _ctx.loading })
133
+ }, [
134
+ renderSlot(_ctx.$slots, "default")
135
+ ], 2)) : createCommentVNode("", true)
136
+ ])
137
+ ], 6);
138
+ }
139
+ var Button = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1]]);
140
+ var index_taro_vue_vue_type_style_index_0_lang = "";
798
141
  const { componentName, create } = createComponent("popover");
799
142
  const _sfc_main = create({
800
143
  inheritAttrs: false,
@@ -831,19 +174,24 @@ const _sfc_main = create({
831
174
  },
832
175
  emits: ["update", "update:visible", "close", "choose", "open"],
833
176
  setup(props, { emit }) {
834
- let popper;
835
177
  const reference = ref();
836
- const popoverRef = ref();
178
+ const state = reactive({
179
+ elWidth: 0,
180
+ elHeight: 0
181
+ });
837
182
  const showPopup = ref(props.visible);
838
- const { theme, location } = toRefs(props);
183
+ const { theme, location, offset } = toRefs(props);
839
184
  const classes = computed(() => {
840
185
  const prefixCls = componentName;
841
- return `${prefixCls} ${prefixCls}--${theme.value}`;
186
+ return {
187
+ [`${prefixCls}-taro`]: true,
188
+ [`${prefixCls}-taro--${theme.value}`]: theme.value
189
+ };
842
190
  });
843
191
  const popoverContent = computed(() => {
844
192
  const prefixCls = "popover-content";
845
193
  return {
846
- [prefixCls]: true,
194
+ [`${prefixCls}`]: true,
847
195
  [`${prefixCls}--${location.value}`]: location.value
848
196
  };
849
197
  });
@@ -854,66 +202,35 @@ const _sfc_main = create({
854
202
  [`${prefixCls}--${location.value}`]: location.value
855
203
  };
856
204
  });
857
- const createPopperInstance = () => {
858
- if (reference.value && popoverRef.value) {
859
- return createPopper(reference.value, popoverRef.value.popupRef, {
860
- placement: props.location,
861
- modifiers: [
862
- {
863
- name: "computeStyles",
864
- options: {
865
- adaptive: false,
866
- gpuAcceleration: false
867
- }
868
- },
869
- Object.assign({}, offsetModifier, {
870
- options: {
871
- offset: props.offset
872
- }
873
- })
874
- ]
875
- });
876
- }
877
- return null;
878
- };
879
- const clickOverlay = () => {
880
- };
881
- const uploadLocation = () => {
882
- nextTick(() => {
883
- if (!showPopup.value)
884
- return;
885
- if (!popper) {
886
- popper = createPopperInstance();
887
- } else {
888
- popper.setOptions({
889
- placement: props.location
890
- });
891
- }
892
- });
205
+ const getReference = async () => {
206
+ const refe = await useTaroRect(reference, Taro);
207
+ console.log(refe);
208
+ state.elWidth = refe.width;
209
+ state.elHeight = refe.height;
893
210
  };
894
- const clickAway = (event) => {
895
- const element = reference.value;
896
- if (element && !element.contains(event.target)) {
897
- closePopover();
211
+ const getStyle = computed(() => {
212
+ console.log(offset);
213
+ const style = {};
214
+ if (location.value.indexOf("top") !== -1) {
215
+ style.bottom = state.elHeight + offset.value[1] + "px";
216
+ } else if (location.value.indexOf("right") !== -1) {
217
+ style.left = state.elWidth + offset.value[1] + "px";
218
+ } else if (location.value.indexOf("left") !== -1) {
219
+ style.right = state.elWidth + offset.value[1] + "px";
220
+ } else {
221
+ style.top = state.elHeight + offset.value[1] + "px";
898
222
  }
899
- };
900
- onMounted(() => {
901
- window.addEventListener("click", clickAway, true);
223
+ return style;
902
224
  });
903
- onUnmounted(() => {
904
- window.removeEventListener("click", clickAway, true);
225
+ onMounted(() => {
226
+ setTimeout(() => {
227
+ getReference();
228
+ }, 200);
905
229
  });
906
230
  watch(
907
231
  () => props.visible,
908
232
  (value) => {
909
233
  showPopup.value = value;
910
- uploadLocation();
911
- }
912
- );
913
- watch(
914
- () => props.location,
915
- (value) => {
916
- uploadLocation();
917
234
  }
918
235
  );
919
236
  const update = (val) => {
@@ -928,12 +245,10 @@ const _sfc_main = create({
928
245
  emit("close");
929
246
  emit("update:visible", false);
930
247
  };
931
- const chooseItem = (item, index2) => {
932
- if (item.disabled) {
933
- return;
934
- }
935
- emit("choose", item, index2);
248
+ const chooseItem = (item, index) => {
249
+ emit("choose", item, index);
936
250
  };
251
+ const refRandomId = Math.random().toString(36).slice(-8);
937
252
  return {
938
253
  classes,
939
254
  showPopup,
@@ -942,49 +257,54 @@ const _sfc_main = create({
942
257
  popoverArrow,
943
258
  closePopover,
944
259
  chooseItem,
260
+ getReference,
945
261
  reference,
946
- popoverRef,
947
- clickOverlay
262
+ getStyle,
263
+ refRandomId
948
264
  };
949
265
  }
950
266
  });
951
- const _hoisted_1 = ["onClick"];
952
- const _hoisted_2 = { class: "popover-menu-name" };
267
+ const _hoisted_1 = ["id"];
268
+ const _hoisted_2 = { class: "popover-menu" };
269
+ const _hoisted_3 = ["onClick"];
270
+ const _hoisted_4 = { class: "popover-menu-name" };
953
271
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
954
272
  const _component_nut_icon = resolveComponent("nut-icon");
955
- const _component_nut_popup = resolveComponent("nut-popup");
956
- return openBlock(), createElementBlock(Fragment, null, [
957
- createElementVNode("view", {
958
- style: { "display": "inline-block" },
959
- class: normalizeClass(_ctx.customClass),
960
- onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.openPopover && _ctx.openPopover(...args), ["stop"])),
961
- ref: "reference"
273
+ return openBlock(), createElementBlock("view", {
274
+ onClick: _cache[1] || (_cache[1] = withModifiers((...args) => _ctx.openPopover && _ctx.openPopover(...args), ["stop"])),
275
+ class: normalizeClass(_ctx.classes)
276
+ }, [
277
+ createElementVNode("div", {
278
+ ref: "reference",
279
+ id: "reference-" + _ctx.refRandomId,
280
+ class: normalizeClass(_ctx.customClass)
962
281
  }, [
963
282
  renderSlot(_ctx.$slots, "reference")
964
- ], 2),
965
- createVNode(_component_nut_popup, {
966
- ref: "popoverRef",
967
- "pop-class": _ctx.classes,
968
- visible: _ctx.showPopup,
969
- "onUpdate:visible": _cache[1] || (_cache[1] = ($event) => _ctx.showPopup = $event),
970
- overlay: false,
971
- onClickOverlay: _ctx.clickOverlay
972
- }, {
973
- default: withCtx(() => [
283
+ ], 10, _hoisted_1),
284
+ createTextVNode(),
285
+ _ctx.showPopup ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
286
+ createElementVNode("view", {
287
+ class: "more-background",
288
+ onClick: _cache[0] || (_cache[0] = withModifiers((...args) => _ctx.closePopover && _ctx.closePopover(...args), ["stop"]))
289
+ }),
290
+ createTextVNode(),
291
+ createElementVNode("view", {
292
+ class: normalizeClass(_ctx.popoverContent),
293
+ style: normalizeStyle(_ctx.getStyle)
294
+ }, [
974
295
  _ctx.showArrow ? (openBlock(), createElementBlock("view", {
975
296
  key: 0,
976
297
  class: normalizeClass(_ctx.popoverArrow)
977
298
  }, null, 2)) : createCommentVNode("", true),
978
- renderSlot(_ctx.$slots, "content"),
979
- createElementVNode("view", {
980
- class: normalizeClass(["popover-menu", _ctx.popoverContent]),
981
- ref: "popoverMenu"
982
- }, [
983
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.list, (item, index2) => {
299
+ createTextVNode(),
300
+ createElementVNode("view", _hoisted_2, [
301
+ renderSlot(_ctx.$slots, "content"),
302
+ createTextVNode(),
303
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.list, (item, index) => {
984
304
  return openBlock(), createElementBlock("view", {
985
- key: index2,
986
- class: normalizeClass([item.className, { "popover-menu-item": true, disabled: item.disabled }]),
987
- onClick: withModifiers(($event) => _ctx.chooseItem(item, index2), ["stop"])
305
+ key: index,
306
+ class: normalizeClass({ "popover-menu-item": true, disabled: item.disabled }),
307
+ onClick: withModifiers(($event) => _ctx.chooseItem(item, index), ["stop"])
988
308
  }, [
989
309
  item.icon ? renderSlot(_ctx.$slots, "default", { key: 0 }, () => [
990
310
  createVNode(_component_nut_icon, mergeProps(_ctx.$attrs, {
@@ -992,14 +312,14 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
992
312
  name: item.icon
993
313
  }), null, 16, ["name"])
994
314
  ]) : createCommentVNode("", true),
995
- createElementVNode("view", _hoisted_2, toDisplayString(item.name), 1)
996
- ], 10, _hoisted_1);
315
+ createTextVNode(),
316
+ createElementVNode("view", _hoisted_4, toDisplayString(item.name), 1)
317
+ ], 10, _hoisted_3);
997
318
  }), 128))
998
- ], 2)
999
- ]),
1000
- _: 3
1001
- }, 8, ["pop-class", "visible", "onClickOverlay"])
1002
- ], 64);
319
+ ])
320
+ ], 6)
321
+ ], 64)) : createCommentVNode("", true)
322
+ ], 2);
1003
323
  }
1004
- var index = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
1005
- export { index as default };
324
+ var index_taro = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
325
+ export { index_taro as default };