@nutui/nutui-react-taro 2.0.0-alpha.13 → 2.0.0-alpha.15

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 (273) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/dist/esm/ActionSheet/style/style.css +1 -1
  3. package/dist/esm/Address/style/style.css +1 -1
  4. package/dist/esm/Address.js +2 -2
  5. package/dist/esm/Audio.js +4 -4
  6. package/dist/esm/Avatar.js +3 -3
  7. package/dist/esm/Barrage/style/style.css +1 -1
  8. package/dist/esm/Barrage.js +2 -3
  9. package/dist/esm/Calendar/style/style.css +1 -1
  10. package/dist/esm/Calendar.js +3 -3
  11. package/dist/esm/CalendarItem.js +2 -2
  12. package/dist/esm/Card/style/style.css +1 -1
  13. package/dist/esm/Card.js +2 -4
  14. package/dist/esm/Cascader/style/style.css +1 -1
  15. package/dist/esm/CircleProgress.js +2 -2
  16. package/dist/esm/ConfigProvider.js +2 -2
  17. package/dist/esm/CountDown.js +2 -2
  18. package/dist/esm/DatePicker/style/style.css +1 -1
  19. package/dist/esm/DatePicker.js +4 -4
  20. package/dist/esm/Dialog.js +2 -2
  21. package/dist/esm/Ellipsis.js +2 -2
  22. package/dist/esm/Empty.js +2 -2
  23. package/dist/esm/FixedNav.js +2 -2
  24. package/dist/esm/Grid.js +3 -3
  25. package/dist/esm/GridItem.js +2 -2
  26. package/dist/esm/Image.js +2 -2
  27. package/dist/esm/ImagePreview/style/style.css +1 -1
  28. package/dist/esm/ImagePreview.js +1 -1
  29. package/dist/esm/InfiniteLoading/style/style.css +1 -0
  30. package/dist/esm/InfiniteLoading.js +10 -0
  31. package/dist/esm/Input.js +2 -2
  32. package/dist/esm/Menu.js +1 -1
  33. package/dist/esm/MenuItem.js +2 -2
  34. package/dist/esm/NoticeBar.js +2 -2
  35. package/dist/esm/NumberKeyboard/style/style.css +1 -1
  36. package/dist/esm/NumberKeyboard.js +2 -2
  37. package/dist/esm/Pagination.js +2 -2
  38. package/dist/esm/Picker/style/style.css +1 -1
  39. package/dist/esm/Picker.js +3 -3
  40. package/dist/esm/Popover/style/index.js +1 -1
  41. package/dist/esm/Popover/style/style.css +1 -1
  42. package/dist/esm/Popover.js +9 -3
  43. package/dist/esm/Popup/style/style.css +1 -1
  44. package/dist/esm/PullToRefresh.js +2 -2
  45. package/dist/esm/Range.js +2 -2
  46. package/dist/esm/SearchBar.js +2 -2
  47. package/dist/esm/ShortPassword/style/style.css +1 -1
  48. package/dist/esm/ShortPassword.js +2 -2
  49. package/dist/esm/SideNavBar/style/style.css +1 -1
  50. package/dist/esm/SideNavBar.js +3 -3
  51. package/dist/esm/SideNavBarItem/style/style.css +1 -1
  52. package/dist/esm/SideNavBarItem.js +1 -1
  53. package/dist/esm/Signature/style/index.js +1 -1
  54. package/dist/esm/Signature/style/style.css +1 -1
  55. package/dist/esm/Signature.js +1 -7
  56. package/dist/esm/Skeleton.js +4 -4
  57. package/dist/esm/Sticky.js +2 -2
  58. package/dist/esm/SubSideNavBar/style/style.css +1 -1
  59. package/dist/esm/SubSideNavBar.js +2 -2
  60. package/dist/esm/Swipe.js +2 -2
  61. package/dist/esm/Table.js +2 -2
  62. package/dist/esm/Tag/style/style.css +1 -1
  63. package/dist/esm/Tag.js +1 -1
  64. package/dist/esm/TextArea/style/style.css +1 -1
  65. package/dist/esm/TextArea.js +2 -2
  66. package/dist/esm/TimeDetail/style/style.css +1 -1
  67. package/dist/esm/TimeDetail.js +3 -4
  68. package/dist/esm/TimeSelect/style/index.js +0 -1
  69. package/dist/esm/TimeSelect/style/style.css +1 -1
  70. package/dist/esm/TimeSelect.js +4 -7
  71. package/dist/esm/Uploader.js +3 -3
  72. package/dist/esm/WaterMark.js +2 -2
  73. package/dist/esm/{address.taro-1a8ab3f1.js → address.taro-cc879a1d.js} +1 -1
  74. package/dist/esm/{audio.taro-bbd39f93.js → audio.taro-64b15071.js} +4 -4
  75. package/dist/esm/{avatar.taro-01536aff.js → avatar.taro-8a26cd6c.js} +1 -1
  76. package/dist/esm/{barrage.taro-c8cb9864.js → barrage.taro-e87bc58e.js} +32 -32
  77. package/dist/esm/{calendar.taro-10a6cb11.js → calendar.taro-02195ddb.js} +2 -2
  78. package/dist/esm/{calendaritem.taro-3e5f114e.js → calendaritem.taro-4230e5c4.js} +1 -1
  79. package/dist/esm/card.taro-92fe9733.js +64 -0
  80. package/dist/esm/{circleprogress.taro-7149e09d.js → circleprogress.taro-9064d69c.js} +1 -1
  81. package/dist/esm/{configprovider.taro-25758d9f.js → configprovider.taro-372b1525.js} +1 -1
  82. package/dist/esm/{countdown.taro-c399cc08.js → countdown.taro-8f19d21b.js} +1 -1
  83. package/dist/esm/{datepicker.taro-65dbeceb.js → datepicker.taro-8c9230b6.js} +2 -2
  84. package/dist/esm/{dialog.taro-290eb9a6.js → dialog.taro-e5c2cb03.js} +1 -1
  85. package/dist/esm/{ellipsis.taro-f423affa.js → ellipsis.taro-5653d0b2.js} +12 -12
  86. package/dist/esm/{empty.taro-ca792f57.js → empty.taro-8345ac72.js} +1 -1
  87. package/dist/esm/{fixednav.taro-b9ecf0d5.js → fixednav.taro-6c69ad79.js} +1 -1
  88. package/dist/esm/{grid.taro-fbbd8618.js → grid.taro-9b63aca5.js} +1 -1
  89. package/dist/esm/{griditem.taro-b0c37077.js → griditem.taro-48971911.js} +1 -1
  90. package/dist/esm/{image.taro-767aa000.js → image.taro-fde6e649.js} +1 -1
  91. package/dist/esm/{imagepreview.taro-daa5a84f.js → imagepreview.taro-cfe0a4cc.js} +3 -2
  92. package/dist/esm/{index-e3184f19.js → index-0a89a47b.js} +7 -1
  93. package/dist/esm/{infiniteloading.taro-f8f23ac6.js → infiniteloading.taro-53eeb1ec.js} +17 -33
  94. package/dist/esm/{input.taro-27d686c9.js → input.taro-69c08268.js} +1 -1
  95. package/dist/esm/{menu.taro-cd0fef41.js → menu.taro-40d36e0a.js} +3 -3
  96. package/dist/esm/{menuitem.taro-6076bffa.js → menuitem.taro-6aa35a00.js} +1 -1
  97. package/dist/esm/{noticebar.taro-2f02b2ad.js → noticebar.taro-8d496dd6.js} +1 -1
  98. package/dist/esm/{numberkeyboard.taro-ad8afaf9.js → numberkeyboard.taro-18879f04.js} +1 -1
  99. package/dist/esm/nutui-react.es.js +53 -55
  100. package/dist/esm/{pagination.taro-63607c3b.js → pagination.taro-592bca05.js} +1 -1
  101. package/dist/esm/{picker.taro-0570ec32.js → picker.taro-6b672469.js} +45 -41
  102. package/dist/esm/popover.taro-ba6c323a.js +229 -0
  103. package/dist/esm/{pulltorefresh.taro-5b36a881.js → pulltorefresh.taro-3719fdfb.js} +1 -1
  104. package/dist/esm/{range.taro-615e193a.js → range.taro-a1d1ad25.js} +1 -1
  105. package/dist/esm/{searchbar.taro-09468fff.js → searchbar.taro-39351331.js} +1 -1
  106. package/dist/esm/{shortpassword.taro-eabbde1b.js → shortpassword.taro-cff61e4e.js} +1 -1
  107. package/dist/esm/{sidenavbar.taro-9f210df4.js → sidenavbar.taro-1aefdd3c.js} +13 -10
  108. package/dist/esm/sidenavbaritem.taro-7d805f92.js +13 -0
  109. package/dist/esm/{signature.taro-c57469aa.js → signature.taro-4f68516a.js} +20 -21
  110. package/dist/esm/{skeleton.taro-0552c2ec.js → skeleton.taro-ce714b06.js} +1 -1
  111. package/dist/esm/{sticky.taro-f8ae8d5e.js → sticky.taro-6bc62a96.js} +2 -2
  112. package/dist/esm/{subsidenavbar.taro-abe07673.js → subsidenavbar.taro-47bb6e74.js} +10 -9
  113. package/dist/esm/{swipe.taro-de80fcd8.js → swipe.taro-966af6d3.js} +1 -1
  114. package/dist/esm/{table.taro-15a55c5d.js → table.taro-a20f15f2.js} +1 -1
  115. package/dist/esm/tag.taro-614758eb.js +76 -0
  116. package/dist/esm/{textarea.taro-c110565e.js → textarea.taro-593cd471.js} +1 -1
  117. package/dist/esm/timedetail.taro-d7aa4c1b.js +48 -0
  118. package/dist/esm/timeselect.taro-9e37e648.js +114 -0
  119. package/dist/esm/types/src/locales/base.d.ts +1 -1
  120. package/dist/esm/types/src/packages/barrage/barrage.d.ts +6 -7
  121. package/dist/esm/types/src/packages/barrage/barrage.taro.d.ts +6 -7
  122. package/dist/esm/types/src/packages/barrage/index.d.ts +1 -0
  123. package/dist/esm/types/src/packages/barrage/index.taro.d.ts +1 -0
  124. package/dist/esm/types/src/packages/button/button.d.ts +1 -0
  125. package/dist/esm/types/src/packages/card/card.d.ts +8 -9
  126. package/dist/esm/types/src/packages/card/card.taro.d.ts +8 -9
  127. package/dist/esm/types/src/packages/card/index.d.ts +1 -0
  128. package/dist/esm/types/src/packages/card/index.taro.d.ts +1 -0
  129. package/dist/esm/types/src/packages/configprovider/types.d.ts +1 -1
  130. package/dist/esm/types/src/packages/imagepreview/imagepreview.taro.d.ts +1 -0
  131. package/dist/esm/types/src/packages/infiniteloading/demo.taro.d.ts +2 -2
  132. package/dist/esm/types/src/packages/infiniteloading/index.d.ts +3 -2
  133. package/dist/esm/types/src/packages/infiniteloading/index.taro.d.ts +3 -2
  134. package/dist/esm/types/src/packages/infiniteloading/infiniteloading.d.ts +9 -14
  135. package/dist/esm/types/src/packages/infiniteloading/infiniteloading.taro.d.ts +8 -12
  136. package/dist/esm/types/src/packages/input/input.taro.d.ts +1 -1
  137. package/dist/esm/types/src/packages/menu/menu.taro.d.ts +1 -1
  138. package/dist/esm/types/src/packages/nutui.react.build.d.ts +2 -3
  139. package/dist/esm/types/src/packages/nutui.react.d.ts +2 -4
  140. package/dist/esm/types/src/packages/nutui.react.scss.d.ts +0 -1
  141. package/dist/esm/types/src/packages/nutui.react.taro.d.ts +2 -4
  142. package/dist/esm/types/src/packages/nutui.react.taro.scss.d.ts +0 -1
  143. package/dist/esm/types/src/packages/nutui.taro.react.build.d.ts +2 -3
  144. package/dist/esm/types/src/packages/picker/doc.en.d.ts +9 -9
  145. package/dist/esm/types/src/packages/popover/demo.d.ts +3 -2
  146. package/dist/esm/types/src/packages/popover/demo.taro.d.ts +2 -2
  147. package/dist/esm/types/src/packages/popover/index.d.ts +1 -0
  148. package/dist/esm/types/src/packages/popover/index.taro.d.ts +1 -0
  149. package/dist/esm/types/src/packages/popover/popover.d.ts +20 -9
  150. package/dist/esm/types/src/packages/popover/popover.taro.d.ts +20 -10
  151. package/dist/esm/types/src/packages/sidenavbar/index.d.ts +1 -0
  152. package/dist/esm/types/src/packages/sidenavbar/index.taro.d.ts +1 -0
  153. package/dist/esm/types/src/packages/sidenavbar/sidenavbar.d.ts +5 -9
  154. package/dist/esm/types/src/packages/sidenavbar/sidenavbar.taro.d.ts +5 -9
  155. package/dist/esm/types/src/packages/sidenavbaritem/index.d.ts +1 -0
  156. package/dist/esm/types/src/packages/sidenavbaritem/index.taro.d.ts +1 -0
  157. package/dist/esm/types/src/packages/sidenavbaritem/sidenavbaritem.d.ts +3 -3
  158. package/dist/esm/types/src/packages/sidenavbaritem/sidenavbaritem.taro.d.ts +3 -3
  159. package/dist/esm/types/src/packages/signature/index.d.ts +1 -0
  160. package/dist/esm/types/src/packages/signature/index.taro.d.ts +1 -0
  161. package/dist/esm/types/src/packages/signature/signature.d.ts +10 -8
  162. package/dist/esm/types/src/packages/signature/signature.taro.d.ts +7 -12
  163. package/dist/esm/types/src/packages/subsidenavbar/index.d.ts +1 -0
  164. package/dist/esm/types/src/packages/subsidenavbar/index.taro.d.ts +1 -0
  165. package/dist/esm/types/src/packages/subsidenavbar/subsidenavbar.d.ts +3 -3
  166. package/dist/esm/types/src/packages/subsidenavbar/subsidenavbar.taro.d.ts +3 -3
  167. package/dist/esm/types/src/packages/tag/index.d.ts +1 -0
  168. package/dist/esm/types/src/packages/tag/index.taro.d.ts +1 -0
  169. package/dist/esm/types/src/packages/tag/tag.d.ts +4 -6
  170. package/dist/esm/types/src/packages/tag/tag.taro.d.ts +4 -6
  171. package/dist/esm/types/src/packages/timedetail/index.d.ts +1 -2
  172. package/dist/esm/types/src/packages/timedetail/timedetail.d.ts +9 -11
  173. package/dist/esm/types/src/packages/timedetail/timedetail.taro.d.ts +9 -11
  174. package/dist/esm/types/src/packages/timeselect/demo.taro.d.ts +0 -4
  175. package/dist/esm/types/src/packages/timeselect/index.d.ts +1 -0
  176. package/dist/esm/types/src/packages/timeselect/index.taro.d.ts +1 -0
  177. package/dist/esm/types/src/packages/timeselect/timeselect.d.ts +25 -20
  178. package/dist/esm/types/src/packages/timeselect/timeselect.taro.d.ts +25 -20
  179. package/dist/esm/types/src/utils/index.d.ts +1 -0
  180. package/dist/esm/types/src/utils/use-click-away.d.ts +3 -0
  181. package/dist/esm/{uploader.taro-7e38fc37.js → uploader.taro-5ad88f83.js} +2 -2
  182. package/dist/esm/use-client-rect-2bb6c562.js +40 -0
  183. package/dist/esm/{watermark.taro-e2245bb1.js → watermark.taro-b6b1ae18.js} +1 -1
  184. package/dist/locales/base.d.ts +1 -1
  185. package/dist/locales/base.js +1 -1
  186. package/dist/locales/en-US.js +2 -2
  187. package/dist/locales/id-ID.js +2 -2
  188. package/dist/locales/tr-TR.js +2 -2
  189. package/dist/locales/zh-CN.js +2 -2
  190. package/dist/locales/zh-TW.js +2 -2
  191. package/dist/locales/zh-UG.js +2 -2
  192. package/dist/nutui.react.es.js +970 -874
  193. package/dist/nutui.react.umd.js +969 -873
  194. package/dist/packages/barrage/barrage.scss +0 -13
  195. package/dist/packages/card/card.scss +8 -14
  196. package/dist/packages/infiniteloading/infiniteloading.scss +2 -25
  197. package/dist/packages/popover/popover.scss +158 -230
  198. package/dist/packages/popup/popup.scss +36 -0
  199. package/dist/packages/sidenavbar/sidenavbar.scss +10 -16
  200. package/dist/packages/sidenavbaritem/sidenavbaritem.scss +7 -19
  201. package/dist/packages/signature/signature.scss +1 -18
  202. package/dist/packages/subsidenavbar/subsidenavbar.scss +10 -19
  203. package/dist/packages/tag/tag.scss +10 -17
  204. package/dist/packages/timedetail/timedetail.scss +12 -37
  205. package/dist/packages/timeselect/timeselect.scss +15 -44
  206. package/dist/style.css +1 -1
  207. package/dist/style.mjs +1 -1
  208. package/dist/styles/themes/default.scss +0 -1
  209. package/dist/styles/variables-jmapp.scss +85 -144
  210. package/dist/styles/variables.scss +96 -155
  211. package/dist/types/index.d.ts +2 -3
  212. package/dist/types/locales/base.d.ts +1 -1
  213. package/dist/types/packages/barrage/barrage.taro.d.ts +32 -9
  214. package/dist/types/packages/barrage/index.taro.d.ts +1 -0
  215. package/dist/types/packages/card/card.taro.d.ts +57 -14
  216. package/dist/types/packages/card/index.taro.d.ts +1 -0
  217. package/dist/types/packages/configprovider/types.d.ts +1 -1
  218. package/dist/types/packages/imagepreview/imagepreview.taro.d.ts +5 -0
  219. package/dist/types/packages/infiniteloading/index.taro.d.ts +3 -2
  220. package/dist/types/packages/infiniteloading/infiniteloading.taro.d.ts +52 -16
  221. package/dist/types/packages/input/input.taro.d.ts +1 -1
  222. package/dist/types/packages/menu/menu.taro.d.ts +5 -1
  223. package/dist/types/packages/popover/index.taro.d.ts +1 -0
  224. package/dist/types/packages/popover/popover.taro.d.ts +99 -13
  225. package/dist/types/packages/sidenavbar/index.taro.d.ts +1 -0
  226. package/dist/types/packages/sidenavbar/sidenavbar.taro.d.ts +33 -13
  227. package/dist/types/packages/sidenavbaritem/index.taro.d.ts +1 -0
  228. package/dist/types/packages/sidenavbaritem/sidenavbaritem.taro.d.ts +3 -3
  229. package/dist/types/packages/signature/index.taro.d.ts +1 -0
  230. package/dist/types/packages/signature/signature.taro.d.ts +32 -17
  231. package/dist/types/packages/subsidenavbar/index.taro.d.ts +1 -0
  232. package/dist/types/packages/subsidenavbar/subsidenavbar.taro.d.ts +3 -3
  233. package/dist/types/packages/tag/index.taro.d.ts +1 -0
  234. package/dist/types/packages/tag/tag.taro.d.ts +52 -14
  235. package/dist/types/packages/timedetail/timedetail.taro.d.ts +9 -11
  236. package/dist/types/packages/timeselect/index.taro.d.ts +1 -0
  237. package/dist/types/packages/timeselect/timeselect.taro.d.ts +62 -21
  238. package/dist/types/packages/toast/toast.taro.d.ts +60 -12
  239. package/dist/types/utils/index.d.ts +1 -0
  240. package/package.json +1 -1
  241. package/dist/esm/Infiniteloading/style/style.css +0 -1
  242. package/dist/esm/Infiniteloading.js +0 -12
  243. package/dist/esm/TimePannel/style/css.js +0 -1
  244. package/dist/esm/TimePannel/style/index.js +0 -2
  245. package/dist/esm/TimePannel/style/style.css +0 -1
  246. package/dist/esm/TimePannel.js +0 -8
  247. package/dist/esm/card.taro-2080f4d2.js +0 -51
  248. package/dist/esm/popover.taro-ad483372.js +0 -162
  249. package/dist/esm/sidenavbaritem.taro-32a45ce6.js +0 -12
  250. package/dist/esm/tag.taro-1b4134a5.js +0 -92
  251. package/dist/esm/timedetail.taro-8d2acbbf.js +0 -41
  252. package/dist/esm/timepannel.taro-ee4c5dfa.js +0 -22
  253. package/dist/esm/timeselect.taro-069deedd.js +0 -133
  254. package/dist/esm/types/src/packages/popover/Trigger.d.ts +0 -19
  255. package/dist/esm/types/src/packages/sidenavbar/type.d.ts +0 -34
  256. package/dist/esm/types/src/packages/timedetail/demo.d.ts +0 -3
  257. package/dist/esm/types/src/packages/timedetail/demo.taro.d.ts +0 -3
  258. package/dist/esm/types/src/packages/timepannel/demo.d.ts +0 -3
  259. package/dist/esm/types/src/packages/timepannel/demo.taro.d.ts +0 -3
  260. package/dist/esm/types/src/packages/timepannel/index.d.ts +0 -2
  261. package/dist/esm/types/src/packages/timepannel/index.taro.d.ts +0 -2
  262. package/dist/esm/types/src/packages/timepannel/timepannel.d.ts +0 -8
  263. package/dist/esm/types/src/packages/timepannel/timepannel.taro.d.ts +0 -8
  264. package/dist/esm/use-client-rect-f317804e.js +0 -10
  265. package/dist/packages/timepannel/timepannel.scss +0 -17
  266. package/dist/types/packages/popover/Trigger.d.ts +0 -19
  267. package/dist/types/packages/timepannel/index.taro.d.ts +0 -2
  268. package/dist/types/packages/timepannel/timepannel.taro.d.ts +0 -8
  269. /package/dist/esm/{Infiniteloading → InfiniteLoading}/style/css.js +0 -0
  270. /package/dist/esm/{Infiniteloading → InfiniteLoading}/style/index.js +0 -0
  271. /package/dist/esm/{offsetContext-f32a9246.js → context-f32a9246.js} +0 -0
  272. /package/dist/esm/types/src/packages/sidenavbar/{offsetContext.d.ts → context.d.ts} +0 -0
  273. /package/dist/types/packages/sidenavbar/{offsetContext.d.ts → context.d.ts} +0 -0
@@ -0,0 +1,229 @@
1
+ import React, { useRef, useState, useEffect } from "react";
2
+ import classNames from "classnames";
3
+ import { P as Popup } from "./popup.taro-e756f3fc.js";
4
+ import Taro from "@tarojs/taro";
5
+ import { a as getRect, g as getRectByTaro } from "./use-client-rect-2bb6c562.js";
6
+ import { u as upperCaseFirst } from "./index-0a89a47b.js";
7
+ import { C as ComponentDefaults } from "./typings-11d83a22.js";
8
+ const defaultProps = {
9
+ ...ComponentDefaults,
10
+ list: [],
11
+ location: "bottom",
12
+ visible: false,
13
+ offset: [0, 12],
14
+ targetId: "",
15
+ className: "",
16
+ background: "",
17
+ color: "",
18
+ showArrow: true,
19
+ duration: 0.3,
20
+ overlay: false,
21
+ overlayClassName: "",
22
+ overlayStyle: {},
23
+ closeOnClickOutside: true,
24
+ closeOnClickAction: true,
25
+ closeOnOverlayClick: true,
26
+ onClick: () => {
27
+ },
28
+ onOpen: () => {
29
+ },
30
+ onClose: () => {
31
+ },
32
+ onSelect: (item, index) => {
33
+ }
34
+ };
35
+ const classPrefix = `nut-popover`;
36
+ const Popover = (props) => {
37
+ const { children, list, location, visible, offset, targetId, overlay, overlayStyle, overlayClassName, closeOnClickOutside, closeOnClickAction, closeOnOverlayClick, className, showArrow, style, background, color, onClick, onOpen, onClose, onSelect, ...reset } = {
38
+ ...defaultProps,
39
+ ...props
40
+ };
41
+ const popoverRef = useRef(null);
42
+ const popoverContentRef = useRef(null);
43
+ const [showPopup, setShowPopup] = useState(false);
44
+ const [elWidth, setElWidth] = useState(0);
45
+ const [elHeight, setElHeight] = useState(0);
46
+ const [rootPosition, setRootPosition] = useState();
47
+ useEffect(() => {
48
+ setShowPopup(visible);
49
+ if (visible) {
50
+ setTimeout(() => {
51
+ getContentWidth();
52
+ }, 0);
53
+ }
54
+ }, [visible]);
55
+ const getContentWidth = async () => {
56
+ let rect;
57
+ if (targetId) {
58
+ if (Taro.getEnv() == Taro.ENV_TYPE.WEB) {
59
+ rect = getRect(document.querySelector(`#${targetId}`));
60
+ } else {
61
+ rect = await getRectTaro(targetId);
62
+ }
63
+ } else {
64
+ rect = await getRectByTaro(popoverRef.current);
65
+ }
66
+ setRootPosition({
67
+ width: rect.width,
68
+ height: rect.height,
69
+ left: rect.left,
70
+ top: rect.top,
71
+ right: rect.right
72
+ });
73
+ setTimeout(() => {
74
+ getPopoverContentW();
75
+ }, 300);
76
+ };
77
+ const getRectTaro = async (targetId2) => {
78
+ return new Promise((resolve) => {
79
+ const query = Taro.createSelectorQuery();
80
+ query.select(`#${targetId2}`) && query.select(`#${targetId2}`).boundingClientRect();
81
+ query.exec(function(res) {
82
+ resolve(res[0]);
83
+ });
84
+ });
85
+ };
86
+ const getPopoverContentW = async () => {
87
+ let rectContent = await getRectByTaro(popoverContentRef.current);
88
+ setElWidth(rectContent.width);
89
+ setElHeight(rectContent.height);
90
+ };
91
+ const clickAway = () => {
92
+ if (closeOnClickOutside) {
93
+ props.onClick && props.onClick();
94
+ onClose && onClose();
95
+ }
96
+ };
97
+ const classes = classNames({
98
+ [`${classPrefix}`]: true
99
+ }, className);
100
+ const customStyle = () => {
101
+ const styles = {};
102
+ if (background) {
103
+ styles.background = background;
104
+ }
105
+ if (color) {
106
+ styles.color = color;
107
+ }
108
+ return styles;
109
+ };
110
+ const popoverArrow = () => {
111
+ const prefixCls = "nut-popover-arrow";
112
+ const loca = location;
113
+ const direction = loca.split("-")[0];
114
+ return `${prefixCls} ${prefixCls}-${direction} ${prefixCls}--${loca}`;
115
+ };
116
+ const popoverArrowStyle = () => {
117
+ const styles = {};
118
+ const { background: background2 } = props;
119
+ const direction = location.split("-")[0];
120
+ if (background2) {
121
+ styles[`border${upperCaseFirst(direction)}Color`] = background2;
122
+ }
123
+ return styles;
124
+ };
125
+ const getRootPosition = () => {
126
+ let styles = {};
127
+ if (!rootPosition) {
128
+ styles.visibility = "hidden";
129
+ return styles;
130
+ }
131
+ const contentWidth = elWidth;
132
+ const contentHeight = elHeight;
133
+ const { width, height, left, top, right } = rootPosition;
134
+ const direction = location.split("-")[0];
135
+ const skew = location.split("-")[1];
136
+ let cross = 0;
137
+ let parallel = 0;
138
+ if (Array.isArray(offset) && offset.length == 2) {
139
+ cross += +offset[1];
140
+ parallel += +offset[0];
141
+ }
142
+ if (width) {
143
+ if (["bottom", "top"].includes(direction)) {
144
+ const h = direction == "bottom" ? height + cross : -(contentHeight + cross);
145
+ styles.top = `${top + h}px`;
146
+ if (!skew) {
147
+ styles.left = `${-(contentWidth - width) / 2 + left + parallel}px`;
148
+ }
149
+ if (skew == "start") {
150
+ styles.left = `${left + parallel}px`;
151
+ }
152
+ if (skew == "end") {
153
+ styles.left = `${right + parallel}px`;
154
+ }
155
+ }
156
+ if (["left", "right"].includes(direction)) {
157
+ const contentW = direction == "left" ? -(contentWidth + cross) : width + cross;
158
+ styles.left = `${left + contentW}px`;
159
+ if (!skew) {
160
+ styles.top = `${top - contentHeight / 2 + height / 2 - 4 + parallel}px`;
161
+ }
162
+ if (skew == "start") {
163
+ styles.top = `${top + parallel}px`;
164
+ }
165
+ if (skew == "end") {
166
+ styles.top = `${top + height + parallel}px`;
167
+ }
168
+ }
169
+ }
170
+ if (elWidth === 0) {
171
+ styles.visibility = "hidden";
172
+ } else {
173
+ styles.visibility = "initial";
174
+ }
175
+ return styles;
176
+ };
177
+ const handleSelect = (item, index) => {
178
+ if (!item.disabled) {
179
+ onSelect(item, index);
180
+ }
181
+ if (closeOnClickAction) {
182
+ props.onClick && props.onClick();
183
+ onClose && onClose();
184
+ }
185
+ };
186
+ return React.createElement(
187
+ React.Fragment,
188
+ null,
189
+ !targetId && React.createElement("div", { className: "nut-popover-wrapper", ref: popoverRef, onClick: () => {
190
+ props.onClick && props.onClick();
191
+ if (!visible) {
192
+ onOpen && onOpen();
193
+ } else {
194
+ onClose && onClose();
195
+ }
196
+ }, style }, Array.isArray(children) ? children[0] : children),
197
+ React.createElement(
198
+ "div",
199
+ { className: classes, style: getRootPosition(), ...reset },
200
+ React.createElement(
201
+ Popup,
202
+ { className: `nut-popover-content nut-popover-content--${location}`, style: customStyle(), position: "default", overlay, overlayStyle, overlayClassName, closeOnOverlayClick, visible: showPopup },
203
+ React.createElement(
204
+ "div",
205
+ { className: "nut-popover-content-group", ref: popoverContentRef },
206
+ showArrow && React.createElement("div", { className: popoverArrow(), style: popoverArrowStyle() }),
207
+ Array.isArray(children) ? children[1] : "",
208
+ list.map((item, index) => {
209
+ return React.createElement(
210
+ "div",
211
+ { className: classNames({
212
+ "nut-popover-menu-item": true,
213
+ "nut-popover-menu-disabled": item.disabled
214
+ }, item.className), key: item.key, onClick: () => handleSelect(item, index) },
215
+ item.icon ? item.icon : null,
216
+ React.createElement("div", { className: "nut-popover-menu-item-name" }, item.name)
217
+ );
218
+ })
219
+ )
220
+ ),
221
+ showPopup && React.createElement("div", { className: "nut-popover-content-bg", onClick: clickAway, onTouchMove: clickAway })
222
+ )
223
+ );
224
+ };
225
+ Popover.defaultProps = defaultProps;
226
+ Popover.displayName = "NutPopover";
227
+ export {
228
+ Popover as P
229
+ };
@@ -1,6 +1,6 @@
1
1
  import React, { useRef, useState } from "react";
2
2
  import { View } from "@tarojs/components";
3
- import { u as useConfig } from "./configprovider.taro-25758d9f.js";
3
+ import { u as useConfig } from "./configprovider.taro-372b1525.js";
4
4
  import { u as useTouch } from "./use-touch-ff43512c.js";
5
5
  import { C as ComponentDefaults } from "./typings-11d83a22.js";
6
6
  function bound(position, min, max) {
@@ -2,7 +2,7 @@ import React, { useState, useRef, useEffect, useCallback } from "react";
2
2
  import classNames from "classnames";
3
3
  import { View } from "@tarojs/components";
4
4
  import { u as useTouch } from "./use-touch-ff43512c.js";
5
- import { g as getRectByTaro } from "./use-client-rect-f317804e.js";
5
+ import { g as getRectByTaro } from "./use-client-rect-2bb6c562.js";
6
6
  import { C as ComponentDefaults } from "./typings-11d83a22.js";
7
7
  import { u as usePropsValue } from "./use-props-value-7ac1b1b5.js";
8
8
  const defaultProps = {
@@ -1,6 +1,6 @@
1
1
  import React, { useRef, useState, useEffect } from "react";
2
2
  import { Search, CircleClose } from "@nutui/icons-react-taro";
3
- import { u as useConfig } from "./configprovider.taro-25758d9f.js";
3
+ import { u as useConfig } from "./configprovider.taro-372b1525.js";
4
4
  import { C as ComponentDefaults } from "./typings-11d83a22.js";
5
5
  const defaultProps = {
6
6
  ...ComponentDefaults,
@@ -2,7 +2,7 @@ import React, { useMemo, useEffect } from "react";
2
2
  import { Tips } from "@nutui/icons-react-taro";
3
3
  import classNames from "classnames";
4
4
  import { P as Popup } from "./popup.taro-e756f3fc.js";
5
- import { u as useConfig } from "./configprovider.taro-25758d9f.js";
5
+ import { u as useConfig } from "./configprovider.taro-372b1525.js";
6
6
  import { C as ComponentDefaults } from "./typings-11d83a22.js";
7
7
  import { u as usePropsValue } from "./use-props-value-7ac1b1b5.js";
8
8
  const defaultProps = {
@@ -1,17 +1,20 @@
1
1
  import React, { useState } from "react";
2
+ import classNames from "classnames";
2
3
  import { P as Popup } from "./popup.taro-e756f3fc.js";
3
- import { O as OffsetContext } from "./offsetContext-f32a9246.js";
4
+ import { O as OffsetContext } from "./context-f32a9246.js";
5
+ import { C as ComponentDefaults } from "./typings-11d83a22.js";
4
6
  const defaultProps = {
5
- showhead: false,
7
+ ...ComponentDefaults,
6
8
  position: "left",
7
9
  width: "80%"
8
10
  };
9
11
  const SideNavBar = (props) => {
10
- const { title, visible, width, position, children, className, showhead, onClose, ...rest } = {
12
+ const classPrefix = "nut-sidenavbar";
13
+ const { title, visible, width, position, children, className, onClose, ...rest } = {
11
14
  ...defaultProps,
12
15
  ...props
13
16
  };
14
- const offset = props.offset ? Number(props.offset) : 20;
17
+ const indent = props.indent ? Number(props.indent) : 20;
15
18
  const [sidenavbarShow, setSidenavbarShow] = useState(true);
16
19
  const handleClick = () => {
17
20
  setSidenavbarShow(!sidenavbarShow);
@@ -21,23 +24,23 @@ const SideNavBar = (props) => {
21
24
  { visible, style: { width, height: "100%" }, position, onClose },
22
25
  React.createElement(
23
26
  "div",
24
- { className: className ? `${className} nut-sidenavbar` : "nut-sidenavbar", ...rest },
27
+ { className: classNames(className, classPrefix), ...rest },
25
28
  React.createElement(
26
29
  "div",
27
- { className: "nut-sidenavbar__content" },
30
+ { className: `${classPrefix}__content` },
28
31
  React.createElement(
29
32
  "div",
30
- { className: `nut-sidenavbar__list ${sidenavbarShow ? "nutShow" : "nutHide"}`, onClick: handleClick },
33
+ { className: `${classPrefix}__list ${sidenavbarShow ? "sidenavbar-show" : "sidenavbar-hide"}`, onClick: handleClick },
31
34
  React.createElement(
32
35
  "div",
33
- { className: "nut-sidenavbar__title border-bt ", style: { paddingLeft: `${offset}px` } },
36
+ { className: `${classPrefix}__title ${classPrefix}-border-bt`, style: { paddingLeft: `${indent}px` } },
34
37
  title,
35
38
  React.createElement("i", { className: `arrow-icon ${sidenavbarShow ? "arrow-up" : "arrow-down"}` })
36
39
  ),
37
40
  React.createElement(
38
41
  OffsetContext.Provider,
39
- { value: offset },
40
- React.createElement("div", { className: "nut-sidenavbar__content" }, children)
42
+ { value: indent },
43
+ React.createElement("div", { className: `${classPrefix}__content` }, children)
41
44
  )
42
45
  )
43
46
  )
@@ -0,0 +1,13 @@
1
+ import React from "react";
2
+ const SideNavBarItem = (props) => {
3
+ const classPrefix = "nut-subsidenavbar";
4
+ const { title, value, children, onClick, ...rest } = props;
5
+ const clickFn = (e) => {
6
+ e.stopPropagation();
7
+ onClick && onClick({ title, value });
8
+ };
9
+ return React.createElement("div", { className: `${classPrefix}__item ${classPrefix}-border-bt`, onClick: clickFn, ...rest }, title);
10
+ };
11
+ export {
12
+ SideNavBarItem as S
13
+ };
@@ -1,22 +1,19 @@
1
- import React, { useRef, useState, useEffect } from "react";
1
+ import React, { useRef, useState, useImperativeHandle, useEffect } from "react";
2
2
  import { getEnv, nextTick, createSelectorQuery, canvasToTempFilePath } from "@tarojs/taro";
3
- import { B as Button } from "./button.taro-01eae688.js";
4
- import { c as cn } from "./bem-cdccae08.js";
5
- import { u as useConfig } from "./configprovider.taro-25758d9f.js";
3
+ import { C as ComponentDefaults } from "./typings-11d83a22.js";
6
4
  const defaultProps = {
5
+ ...ComponentDefaults,
7
6
  canvasId: "spcanvas",
8
7
  type: "png",
9
8
  lineWidth: 2,
10
- strokeStyle: "#000",
11
- className: ""
9
+ strokeStyle: "#000"
12
10
  };
13
- const Signature = (props) => {
14
- const { locale } = useConfig();
15
- const { canvasId, type, lineWidth, strokeStyle, unSupportTpl, className, confirm, clear, onConfirm, onClear, ...rest } = {
11
+ const InternalSignature = (props, ref) => {
12
+ const { canvasId, type, lineWidth, strokeStyle, className, style, onConfirm, onClear, ...rest } = {
16
13
  ...defaultProps,
17
14
  ...props
18
15
  };
19
- const b = cn("signature");
16
+ const classPrefix = `nut-signature`;
20
17
  const canvasRef = useRef(null);
21
18
  const wrapRef = useRef(null);
22
19
  const [canvasHeight, setCanvasHeight] = useState(0);
@@ -54,12 +51,8 @@ const Signature = (props) => {
54
51
  ctx.current.clearRect(0, 0, canvasWidth, canvasHeight);
55
52
  ctx.current.closePath();
56
53
  }
57
- clear && clear();
58
54
  onClear && onClear();
59
55
  };
60
- const handleConfirmBtn = () => {
61
- onSave();
62
- };
63
56
  const onSave = () => {
64
57
  createSelectorQuery().select(`#${canvasId}`).fields({
65
58
  node: true,
@@ -71,11 +64,10 @@ const Signature = (props) => {
71
64
  canvasId: `${canvasId}`,
72
65
  success: (res2) => {
73
66
  handleClearBtn();
74
- confirm && confirm(res2.tempFilePath);
75
67
  onConfirm && onConfirm(res2.tempFilePath);
76
68
  },
77
69
  fail: (res2) => {
78
- console.log("保存失败");
70
+ console.warn("保存失败");
79
71
  }
80
72
  });
81
73
  });
@@ -95,6 +87,14 @@ const Signature = (props) => {
95
87
  ctx.current.strokeStyle = strokeStyle;
96
88
  }
97
89
  };
90
+ useImperativeHandle(ref, () => ({
91
+ confirm: () => {
92
+ onSave();
93
+ },
94
+ clear: () => {
95
+ handleClearBtn();
96
+ }
97
+ }));
98
98
  const initCanvas = () => {
99
99
  nextTick(() => {
100
100
  setTimeout(() => {
@@ -122,8 +122,8 @@ const Signature = (props) => {
122
122
  }, []);
123
123
  return React.createElement(
124
124
  "div",
125
- { className: `${b()} ${className}`, ...rest },
126
- React.createElement("div", { className: `${b("inner")} spcanvas_WEAPP`, ref: wrapRef }, getEnv() === "WEAPP" || getEnv() === "JD" ? React.createElement("canvas", {
125
+ { className: `${classPrefix} ${className}`, ...rest },
126
+ React.createElement("div", { className: `${classPrefix}__inner spcanvas_WEAPP`, ref: wrapRef }, getEnv() === "WEAPP" || getEnv() === "JD" ? React.createElement("canvas", {
127
127
  id: canvasId,
128
128
  ref: canvasRef,
129
129
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
@@ -134,11 +134,10 @@ const Signature = (props) => {
134
134
  onTouchStart: startEventHandler,
135
135
  onTouchMove: moveEventHandler,
136
136
  onTouchEnd: endEventHandler
137
- }) : React.createElement("canvas", { id: canvasId, ref: canvasRef, "canvas-id": canvasId, "disalbe-scroll": disalbeScroll, onTouchStart: startEventHandler, onTouchMove: moveEventHandler, onTouchEnd: endEventHandler, onTouchCancel: endEventHandler })),
138
- React.createElement(Button, { className: `${b("btn")}`, type: "default", onClick: () => handleClearBtn() }, locale.signature.reSign),
139
- React.createElement(Button, { className: `${b("btn")}`, type: "primary", onClick: () => handleConfirmBtn() }, locale.confirm)
137
+ }) : React.createElement("canvas", { id: canvasId, ref: canvasRef, "canvas-id": canvasId, "disalbe-scroll": disalbeScroll, onTouchStart: startEventHandler, onTouchMove: moveEventHandler, onTouchEnd: endEventHandler, onTouchCancel: endEventHandler }))
140
138
  );
141
139
  };
140
+ const Signature = React.forwardRef(InternalSignature);
142
141
  Signature.defaultProps = defaultProps;
143
142
  Signature.displayName = "NutSignature";
144
143
  export {
@@ -1,6 +1,6 @@
1
1
  import React from "react";
2
2
  import classNames from "classnames";
3
- import { A as Avatar } from "./avatar.taro-01536aff.js";
3
+ import { A as Avatar } from "./avatar.taro-8a26cd6c.js";
4
4
  import { C as ComponentDefaults } from "./typings-11d83a22.js";
5
5
  const defaultProps = {
6
6
  ...ComponentDefaults,
@@ -2,7 +2,7 @@ import React, { useRef, useEffect, useState, useMemo, useCallback } from "react"
2
2
  import classNames from "classnames";
3
3
  import { getEnv, usePageScroll, getSystemInfoSync } from "@tarojs/taro";
4
4
  import { C as ComponentDefaults } from "./typings-11d83a22.js";
5
- import { g as getRectByTaro } from "./use-client-rect-f317804e.js";
5
+ import { g as getRectByTaro } from "./use-client-rect-2bb6c562.js";
6
6
  import { c as canUseDom } from "./can-use-dom-0e539bd3.js";
7
7
  function useWatch(dep, callback, config = { immediate: false }) {
8
8
  const { immediate } = config;
@@ -118,7 +118,7 @@ const Sticky = (props) => {
118
118
  setFixed(windowHeight - threshold < curRootRect.bottom);
119
119
  }
120
120
  } else {
121
- console.log("getRectByTaro获取失败", { stickyRect, curRootRect });
121
+ console.warn("getRectByTaro获取失败", { stickyRect, curRootRect });
122
122
  }
123
123
  };
124
124
  const getElement = useCallback(() => {
@@ -1,10 +1,11 @@
1
1
  import React, { useState, useContext, useRef, useCallback, useEffect } from "react";
2
- import { O as OffsetContext } from "./offsetContext-f32a9246.js";
2
+ import { O as OffsetContext } from "./context-f32a9246.js";
3
3
  const defaultProps = {
4
4
  open: true
5
5
  };
6
6
  const SubSideNavBar = (props) => {
7
- const { title, key, children, onClick, open, ...rest } = {
7
+ const classPrefix = "nut-subsidenavbar";
8
+ const { title, value, children, onClick, open, ...rest } = {
8
9
  ...defaultProps,
9
10
  ...props
10
11
  };
@@ -13,18 +14,18 @@ const SubSideNavBar = (props) => {
13
14
  const listRef = useRef(null);
14
15
  const setListLevel = useCallback((nodeList, level = 1) => {
15
16
  const titleClass = nodeList[0].className;
16
- if (titleClass.includes("nut-subsidenavbar__title")) {
17
+ if (titleClass.includes(`${classPrefix}__title`)) {
17
18
  const left = offset * (level + 1);
18
19
  nodeList[0].style.paddingLeft = `${left}px`;
19
20
  }
20
21
  const childNodes = nodeList[1] && nodeList[1].children && Array.from(nodeList[1].children).filter((item) => item.nodeType !== 3 && item.nodeType !== 8);
21
22
  childNodes.forEach((item) => {
22
23
  const itemClass = item.className;
23
- if (itemClass.includes("nut-subsidenavbar__item")) {
24
+ if (itemClass.includes(`${classPrefix}__item`)) {
24
25
  const left = offset * (level + 2);
25
26
  item.style.paddingLeft = `${left}px`;
26
27
  }
27
- if (itemClass.includes("nut-subsidenavbar__list")) {
28
+ if (itemClass.includes(`${classPrefix}__list`)) {
28
29
  let level2 = item.getAttribute("level") ? Number(item.getAttribute("level")) : 1;
29
30
  level2 += 1;
30
31
  item.setAttribute("level", level2.toString());
@@ -36,7 +37,7 @@ const SubSideNavBar = (props) => {
36
37
  e.stopPropagation();
37
38
  setSubShow(!subShow);
38
39
  const isShow = !subShow;
39
- onClick && onClick({ title, key, isShow });
40
+ onClick && onClick({ title, value, isShow });
40
41
  };
41
42
  useEffect(() => {
42
43
  var _a, _b;
@@ -44,19 +45,19 @@ const SubSideNavBar = (props) => {
44
45
  (_b = listRef.current) == null ? void 0 : _b.setAttribute("level", "1");
45
46
  childNodes && setListLevel(childNodes);
46
47
  }, [setListLevel]);
47
- const divClass = subShow ? "nut-subsidenavbar__list nutShow" : "nut-subsidenavbar__list nutHide";
48
+ const divClass = subShow ? `${classPrefix}__list sidenavbar-show` : `${classPrefix}__list sidenavbar-hide`;
48
49
  const iconClass = subShow ? "arrow-icon arrow-down" : "arrow-icon arrow-up";
49
50
  return React.createElement(
50
51
  "div",
51
52
  { className: divClass, ref: listRef, onClick: clickFn, ...rest },
52
53
  React.createElement(
53
54
  "div",
54
- { className: "nut-subsidenavbar__title border-bt" },
55
+ { className: `${classPrefix}__title ${classPrefix}-border-bt` },
55
56
  title,
56
57
  " ",
57
58
  React.createElement("i", { className: iconClass })
58
59
  ),
59
- React.createElement("div", { className: "nut-subsidenavbar__content" }, children)
60
+ React.createElement("div", { className: `${classPrefix}__content` }, children)
60
61
  );
61
62
  };
62
63
  export {
@@ -3,7 +3,7 @@ import classNames from "classnames";
3
3
  import { useReady, nextTick } from "@tarojs/taro";
4
4
  import { c as cn } from "./bem-cdccae08.js";
5
5
  import { u as useTouch } from "./use-touch-ff43512c.js";
6
- import { g as getRectByTaro } from "./use-client-rect-f317804e.js";
6
+ import { g as getRectByTaro } from "./use-client-rect-2bb6c562.js";
7
7
  function preventDefault(event, isStopPropagation) {
8
8
  if (typeof event.cancelable !== "boolean" || event.cancelable) {
9
9
  event.preventDefault();
@@ -1,7 +1,7 @@
1
1
  import React, { useState, useEffect } from "react";
2
2
  import classNames from "classnames";
3
3
  import { DownArrow } from "@nutui/icons-react-taro";
4
- import { u as useConfig } from "./configprovider.taro-25758d9f.js";
4
+ import { u as useConfig } from "./configprovider.taro-372b1525.js";
5
5
  import { C as ComponentDefaults } from "./typings-11d83a22.js";
6
6
  const defaultProps = {
7
7
  ...ComponentDefaults,
@@ -0,0 +1,76 @@
1
+ import React, { useState, useEffect } from "react";
2
+ import { Close } from "@nutui/icons-react-taro";
3
+ import classNames from "classnames";
4
+ import { C as ComponentDefaults } from "./typings-11d83a22.js";
5
+ const defaultProps = {
6
+ ...ComponentDefaults,
7
+ type: "default",
8
+ background: "",
9
+ color: "",
10
+ plain: false,
11
+ round: false,
12
+ mark: false,
13
+ closeable: false,
14
+ closeIcon: null,
15
+ onClose: (e) => {
16
+ },
17
+ onClick: (e) => {
18
+ }
19
+ };
20
+ const Tag = (props) => {
21
+ const { className, style, background, plain, type, round, children, mark, closeable, closeIcon, color, onClick, onClose } = {
22
+ ...defaultProps,
23
+ ...props
24
+ };
25
+ const [tagClass, setTagClass] = useState("");
26
+ const [visible, setVisible] = useState(true);
27
+ const classPrefix = "nut-tag";
28
+ const classes = () => {
29
+ return classNames({
30
+ [classPrefix]: true,
31
+ [`${classPrefix}--${type}`]: type,
32
+ [`${classPrefix}--plain`]: plain,
33
+ [`${classPrefix}--round`]: round,
34
+ [`${classPrefix}--mark`]: mark,
35
+ [`${classPrefix}--close`]: closeable,
36
+ [`${className}`]: className
37
+ });
38
+ };
39
+ useEffect(() => {
40
+ setTagClass(classes());
41
+ }, [type, background, color, plain, round, mark, closeable, className]);
42
+ const handleClick = (e) => {
43
+ onClick && onClick(e);
44
+ };
45
+ const getStyle = () => {
46
+ const style2 = {};
47
+ if (color) {
48
+ style2.color = color;
49
+ } else if (background && plain) {
50
+ style2.color = background;
51
+ }
52
+ if (plain) {
53
+ style2.borderColor = background;
54
+ } else if (background) {
55
+ style2.background = background;
56
+ }
57
+ return style2;
58
+ };
59
+ return React.createElement(React.Fragment, null, closeable ? visible && React.createElement(
60
+ "div",
61
+ { className: tagClass, style: { ...style, ...getStyle() }, onClick: (e) => handleClick(e) },
62
+ children && React.createElement("span", { className: `${classPrefix}-text` }, children),
63
+ React.isValidElement(closeIcon) ? React.createElement("i", { className: `${classPrefix}-custom-icon`, onClick: (e) => {
64
+ setVisible(false);
65
+ onClose && onClose(e);
66
+ } }, closeIcon) : React.createElement(Close, { size: 12, onClick: (e) => {
67
+ setVisible(false);
68
+ onClose && onClose(e);
69
+ } })
70
+ ) : React.createElement("div", { className: tagClass, style: { ...style, ...getStyle() }, onClick: (e) => handleClick(e) }, children && React.createElement("span", { className: `${classPrefix}-text` }, children)));
71
+ };
72
+ Tag.defaultProps = defaultProps;
73
+ Tag.displayName = "NutTag";
74
+ export {
75
+ Tag as T
76
+ };
@@ -2,7 +2,7 @@ import React, { useRef } from "react";
2
2
  import classNames from "classnames";
3
3
  import Taro from "@tarojs/taro";
4
4
  import { Textarea } from "@tarojs/components";
5
- import { u as useConfig } from "./configprovider.taro-25758d9f.js";
5
+ import { u as useConfig } from "./configprovider.taro-372b1525.js";
6
6
  import { C as ComponentDefaults } from "./typings-11d83a22.js";
7
7
  import { u as usePropsValue } from "./use-props-value-7ac1b1b5.js";
8
8
  const defaultProps = {