@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.
- package/CHANGELOG.md +30 -0
- package/dist/esm/ActionSheet/style/style.css +1 -1
- package/dist/esm/Address/style/style.css +1 -1
- package/dist/esm/Address.js +2 -2
- package/dist/esm/Audio.js +4 -4
- package/dist/esm/Avatar.js +3 -3
- package/dist/esm/Barrage/style/style.css +1 -1
- package/dist/esm/Barrage.js +2 -3
- package/dist/esm/Calendar/style/style.css +1 -1
- package/dist/esm/Calendar.js +3 -3
- package/dist/esm/CalendarItem.js +2 -2
- package/dist/esm/Card/style/style.css +1 -1
- package/dist/esm/Card.js +2 -4
- package/dist/esm/Cascader/style/style.css +1 -1
- package/dist/esm/CircleProgress.js +2 -2
- package/dist/esm/ConfigProvider.js +2 -2
- package/dist/esm/CountDown.js +2 -2
- package/dist/esm/DatePicker/style/style.css +1 -1
- package/dist/esm/DatePicker.js +4 -4
- package/dist/esm/Dialog.js +2 -2
- package/dist/esm/Ellipsis.js +2 -2
- package/dist/esm/Empty.js +2 -2
- package/dist/esm/FixedNav.js +2 -2
- package/dist/esm/Grid.js +3 -3
- package/dist/esm/GridItem.js +2 -2
- package/dist/esm/Image.js +2 -2
- package/dist/esm/ImagePreview/style/style.css +1 -1
- package/dist/esm/ImagePreview.js +1 -1
- package/dist/esm/InfiniteLoading/style/style.css +1 -0
- package/dist/esm/InfiniteLoading.js +10 -0
- package/dist/esm/Input.js +2 -2
- package/dist/esm/Menu.js +1 -1
- package/dist/esm/MenuItem.js +2 -2
- package/dist/esm/NoticeBar.js +2 -2
- package/dist/esm/NumberKeyboard/style/style.css +1 -1
- package/dist/esm/NumberKeyboard.js +2 -2
- package/dist/esm/Pagination.js +2 -2
- package/dist/esm/Picker/style/style.css +1 -1
- package/dist/esm/Picker.js +3 -3
- package/dist/esm/Popover/style/index.js +1 -1
- package/dist/esm/Popover/style/style.css +1 -1
- package/dist/esm/Popover.js +9 -3
- package/dist/esm/Popup/style/style.css +1 -1
- package/dist/esm/PullToRefresh.js +2 -2
- package/dist/esm/Range.js +2 -2
- package/dist/esm/SearchBar.js +2 -2
- package/dist/esm/ShortPassword/style/style.css +1 -1
- package/dist/esm/ShortPassword.js +2 -2
- package/dist/esm/SideNavBar/style/style.css +1 -1
- package/dist/esm/SideNavBar.js +3 -3
- package/dist/esm/SideNavBarItem/style/style.css +1 -1
- package/dist/esm/SideNavBarItem.js +1 -1
- package/dist/esm/Signature/style/index.js +1 -1
- package/dist/esm/Signature/style/style.css +1 -1
- package/dist/esm/Signature.js +1 -7
- package/dist/esm/Skeleton.js +4 -4
- package/dist/esm/Sticky.js +2 -2
- package/dist/esm/SubSideNavBar/style/style.css +1 -1
- package/dist/esm/SubSideNavBar.js +2 -2
- package/dist/esm/Swipe.js +2 -2
- package/dist/esm/Table.js +2 -2
- package/dist/esm/Tag/style/style.css +1 -1
- package/dist/esm/Tag.js +1 -1
- package/dist/esm/TextArea/style/style.css +1 -1
- package/dist/esm/TextArea.js +2 -2
- package/dist/esm/TimeDetail/style/style.css +1 -1
- package/dist/esm/TimeDetail.js +3 -4
- package/dist/esm/TimeSelect/style/index.js +0 -1
- package/dist/esm/TimeSelect/style/style.css +1 -1
- package/dist/esm/TimeSelect.js +4 -7
- package/dist/esm/Uploader.js +3 -3
- package/dist/esm/WaterMark.js +2 -2
- package/dist/esm/{address.taro-1a8ab3f1.js → address.taro-cc879a1d.js} +1 -1
- package/dist/esm/{audio.taro-bbd39f93.js → audio.taro-64b15071.js} +4 -4
- package/dist/esm/{avatar.taro-01536aff.js → avatar.taro-8a26cd6c.js} +1 -1
- package/dist/esm/{barrage.taro-c8cb9864.js → barrage.taro-e87bc58e.js} +32 -32
- package/dist/esm/{calendar.taro-10a6cb11.js → calendar.taro-02195ddb.js} +2 -2
- package/dist/esm/{calendaritem.taro-3e5f114e.js → calendaritem.taro-4230e5c4.js} +1 -1
- package/dist/esm/card.taro-92fe9733.js +64 -0
- package/dist/esm/{circleprogress.taro-7149e09d.js → circleprogress.taro-9064d69c.js} +1 -1
- package/dist/esm/{configprovider.taro-25758d9f.js → configprovider.taro-372b1525.js} +1 -1
- package/dist/esm/{countdown.taro-c399cc08.js → countdown.taro-8f19d21b.js} +1 -1
- package/dist/esm/{datepicker.taro-65dbeceb.js → datepicker.taro-8c9230b6.js} +2 -2
- package/dist/esm/{dialog.taro-290eb9a6.js → dialog.taro-e5c2cb03.js} +1 -1
- package/dist/esm/{ellipsis.taro-f423affa.js → ellipsis.taro-5653d0b2.js} +12 -12
- package/dist/esm/{empty.taro-ca792f57.js → empty.taro-8345ac72.js} +1 -1
- package/dist/esm/{fixednav.taro-b9ecf0d5.js → fixednav.taro-6c69ad79.js} +1 -1
- package/dist/esm/{grid.taro-fbbd8618.js → grid.taro-9b63aca5.js} +1 -1
- package/dist/esm/{griditem.taro-b0c37077.js → griditem.taro-48971911.js} +1 -1
- package/dist/esm/{image.taro-767aa000.js → image.taro-fde6e649.js} +1 -1
- package/dist/esm/{imagepreview.taro-daa5a84f.js → imagepreview.taro-cfe0a4cc.js} +3 -2
- package/dist/esm/{index-e3184f19.js → index-0a89a47b.js} +7 -1
- package/dist/esm/{infiniteloading.taro-f8f23ac6.js → infiniteloading.taro-53eeb1ec.js} +17 -33
- package/dist/esm/{input.taro-27d686c9.js → input.taro-69c08268.js} +1 -1
- package/dist/esm/{menu.taro-cd0fef41.js → menu.taro-40d36e0a.js} +3 -3
- package/dist/esm/{menuitem.taro-6076bffa.js → menuitem.taro-6aa35a00.js} +1 -1
- package/dist/esm/{noticebar.taro-2f02b2ad.js → noticebar.taro-8d496dd6.js} +1 -1
- package/dist/esm/{numberkeyboard.taro-ad8afaf9.js → numberkeyboard.taro-18879f04.js} +1 -1
- package/dist/esm/nutui-react.es.js +53 -55
- package/dist/esm/{pagination.taro-63607c3b.js → pagination.taro-592bca05.js} +1 -1
- package/dist/esm/{picker.taro-0570ec32.js → picker.taro-6b672469.js} +45 -41
- package/dist/esm/popover.taro-ba6c323a.js +229 -0
- package/dist/esm/{pulltorefresh.taro-5b36a881.js → pulltorefresh.taro-3719fdfb.js} +1 -1
- package/dist/esm/{range.taro-615e193a.js → range.taro-a1d1ad25.js} +1 -1
- package/dist/esm/{searchbar.taro-09468fff.js → searchbar.taro-39351331.js} +1 -1
- package/dist/esm/{shortpassword.taro-eabbde1b.js → shortpassword.taro-cff61e4e.js} +1 -1
- package/dist/esm/{sidenavbar.taro-9f210df4.js → sidenavbar.taro-1aefdd3c.js} +13 -10
- package/dist/esm/sidenavbaritem.taro-7d805f92.js +13 -0
- package/dist/esm/{signature.taro-c57469aa.js → signature.taro-4f68516a.js} +20 -21
- package/dist/esm/{skeleton.taro-0552c2ec.js → skeleton.taro-ce714b06.js} +1 -1
- package/dist/esm/{sticky.taro-f8ae8d5e.js → sticky.taro-6bc62a96.js} +2 -2
- package/dist/esm/{subsidenavbar.taro-abe07673.js → subsidenavbar.taro-47bb6e74.js} +10 -9
- package/dist/esm/{swipe.taro-de80fcd8.js → swipe.taro-966af6d3.js} +1 -1
- package/dist/esm/{table.taro-15a55c5d.js → table.taro-a20f15f2.js} +1 -1
- package/dist/esm/tag.taro-614758eb.js +76 -0
- package/dist/esm/{textarea.taro-c110565e.js → textarea.taro-593cd471.js} +1 -1
- package/dist/esm/timedetail.taro-d7aa4c1b.js +48 -0
- package/dist/esm/timeselect.taro-9e37e648.js +114 -0
- package/dist/esm/types/src/locales/base.d.ts +1 -1
- package/dist/esm/types/src/packages/barrage/barrage.d.ts +6 -7
- package/dist/esm/types/src/packages/barrage/barrage.taro.d.ts +6 -7
- package/dist/esm/types/src/packages/barrage/index.d.ts +1 -0
- package/dist/esm/types/src/packages/barrage/index.taro.d.ts +1 -0
- package/dist/esm/types/src/packages/button/button.d.ts +1 -0
- package/dist/esm/types/src/packages/card/card.d.ts +8 -9
- package/dist/esm/types/src/packages/card/card.taro.d.ts +8 -9
- package/dist/esm/types/src/packages/card/index.d.ts +1 -0
- package/dist/esm/types/src/packages/card/index.taro.d.ts +1 -0
- package/dist/esm/types/src/packages/configprovider/types.d.ts +1 -1
- package/dist/esm/types/src/packages/imagepreview/imagepreview.taro.d.ts +1 -0
- package/dist/esm/types/src/packages/infiniteloading/demo.taro.d.ts +2 -2
- package/dist/esm/types/src/packages/infiniteloading/index.d.ts +3 -2
- package/dist/esm/types/src/packages/infiniteloading/index.taro.d.ts +3 -2
- package/dist/esm/types/src/packages/infiniteloading/infiniteloading.d.ts +9 -14
- package/dist/esm/types/src/packages/infiniteloading/infiniteloading.taro.d.ts +8 -12
- package/dist/esm/types/src/packages/input/input.taro.d.ts +1 -1
- package/dist/esm/types/src/packages/menu/menu.taro.d.ts +1 -1
- package/dist/esm/types/src/packages/nutui.react.build.d.ts +2 -3
- package/dist/esm/types/src/packages/nutui.react.d.ts +2 -4
- package/dist/esm/types/src/packages/nutui.react.scss.d.ts +0 -1
- package/dist/esm/types/src/packages/nutui.react.taro.d.ts +2 -4
- package/dist/esm/types/src/packages/nutui.react.taro.scss.d.ts +0 -1
- package/dist/esm/types/src/packages/nutui.taro.react.build.d.ts +2 -3
- package/dist/esm/types/src/packages/picker/doc.en.d.ts +9 -9
- package/dist/esm/types/src/packages/popover/demo.d.ts +3 -2
- package/dist/esm/types/src/packages/popover/demo.taro.d.ts +2 -2
- package/dist/esm/types/src/packages/popover/index.d.ts +1 -0
- package/dist/esm/types/src/packages/popover/index.taro.d.ts +1 -0
- package/dist/esm/types/src/packages/popover/popover.d.ts +20 -9
- package/dist/esm/types/src/packages/popover/popover.taro.d.ts +20 -10
- package/dist/esm/types/src/packages/sidenavbar/index.d.ts +1 -0
- package/dist/esm/types/src/packages/sidenavbar/index.taro.d.ts +1 -0
- package/dist/esm/types/src/packages/sidenavbar/sidenavbar.d.ts +5 -9
- package/dist/esm/types/src/packages/sidenavbar/sidenavbar.taro.d.ts +5 -9
- package/dist/esm/types/src/packages/sidenavbaritem/index.d.ts +1 -0
- package/dist/esm/types/src/packages/sidenavbaritem/index.taro.d.ts +1 -0
- package/dist/esm/types/src/packages/sidenavbaritem/sidenavbaritem.d.ts +3 -3
- package/dist/esm/types/src/packages/sidenavbaritem/sidenavbaritem.taro.d.ts +3 -3
- package/dist/esm/types/src/packages/signature/index.d.ts +1 -0
- package/dist/esm/types/src/packages/signature/index.taro.d.ts +1 -0
- package/dist/esm/types/src/packages/signature/signature.d.ts +10 -8
- package/dist/esm/types/src/packages/signature/signature.taro.d.ts +7 -12
- package/dist/esm/types/src/packages/subsidenavbar/index.d.ts +1 -0
- package/dist/esm/types/src/packages/subsidenavbar/index.taro.d.ts +1 -0
- package/dist/esm/types/src/packages/subsidenavbar/subsidenavbar.d.ts +3 -3
- package/dist/esm/types/src/packages/subsidenavbar/subsidenavbar.taro.d.ts +3 -3
- package/dist/esm/types/src/packages/tag/index.d.ts +1 -0
- package/dist/esm/types/src/packages/tag/index.taro.d.ts +1 -0
- package/dist/esm/types/src/packages/tag/tag.d.ts +4 -6
- package/dist/esm/types/src/packages/tag/tag.taro.d.ts +4 -6
- package/dist/esm/types/src/packages/timedetail/index.d.ts +1 -2
- package/dist/esm/types/src/packages/timedetail/timedetail.d.ts +9 -11
- package/dist/esm/types/src/packages/timedetail/timedetail.taro.d.ts +9 -11
- package/dist/esm/types/src/packages/timeselect/demo.taro.d.ts +0 -4
- package/dist/esm/types/src/packages/timeselect/index.d.ts +1 -0
- package/dist/esm/types/src/packages/timeselect/index.taro.d.ts +1 -0
- package/dist/esm/types/src/packages/timeselect/timeselect.d.ts +25 -20
- package/dist/esm/types/src/packages/timeselect/timeselect.taro.d.ts +25 -20
- package/dist/esm/types/src/utils/index.d.ts +1 -0
- package/dist/esm/types/src/utils/use-click-away.d.ts +3 -0
- package/dist/esm/{uploader.taro-7e38fc37.js → uploader.taro-5ad88f83.js} +2 -2
- package/dist/esm/use-client-rect-2bb6c562.js +40 -0
- package/dist/esm/{watermark.taro-e2245bb1.js → watermark.taro-b6b1ae18.js} +1 -1
- package/dist/locales/base.d.ts +1 -1
- package/dist/locales/base.js +1 -1
- package/dist/locales/en-US.js +2 -2
- package/dist/locales/id-ID.js +2 -2
- package/dist/locales/tr-TR.js +2 -2
- package/dist/locales/zh-CN.js +2 -2
- package/dist/locales/zh-TW.js +2 -2
- package/dist/locales/zh-UG.js +2 -2
- package/dist/nutui.react.es.js +970 -874
- package/dist/nutui.react.umd.js +969 -873
- package/dist/packages/barrage/barrage.scss +0 -13
- package/dist/packages/card/card.scss +8 -14
- package/dist/packages/infiniteloading/infiniteloading.scss +2 -25
- package/dist/packages/popover/popover.scss +158 -230
- package/dist/packages/popup/popup.scss +36 -0
- package/dist/packages/sidenavbar/sidenavbar.scss +10 -16
- package/dist/packages/sidenavbaritem/sidenavbaritem.scss +7 -19
- package/dist/packages/signature/signature.scss +1 -18
- package/dist/packages/subsidenavbar/subsidenavbar.scss +10 -19
- package/dist/packages/tag/tag.scss +10 -17
- package/dist/packages/timedetail/timedetail.scss +12 -37
- package/dist/packages/timeselect/timeselect.scss +15 -44
- package/dist/style.css +1 -1
- package/dist/style.mjs +1 -1
- package/dist/styles/themes/default.scss +0 -1
- package/dist/styles/variables-jmapp.scss +85 -144
- package/dist/styles/variables.scss +96 -155
- package/dist/types/index.d.ts +2 -3
- package/dist/types/locales/base.d.ts +1 -1
- package/dist/types/packages/barrage/barrage.taro.d.ts +32 -9
- package/dist/types/packages/barrage/index.taro.d.ts +1 -0
- package/dist/types/packages/card/card.taro.d.ts +57 -14
- package/dist/types/packages/card/index.taro.d.ts +1 -0
- package/dist/types/packages/configprovider/types.d.ts +1 -1
- package/dist/types/packages/imagepreview/imagepreview.taro.d.ts +5 -0
- package/dist/types/packages/infiniteloading/index.taro.d.ts +3 -2
- package/dist/types/packages/infiniteloading/infiniteloading.taro.d.ts +52 -16
- package/dist/types/packages/input/input.taro.d.ts +1 -1
- package/dist/types/packages/menu/menu.taro.d.ts +5 -1
- package/dist/types/packages/popover/index.taro.d.ts +1 -0
- package/dist/types/packages/popover/popover.taro.d.ts +99 -13
- package/dist/types/packages/sidenavbar/index.taro.d.ts +1 -0
- package/dist/types/packages/sidenavbar/sidenavbar.taro.d.ts +33 -13
- package/dist/types/packages/sidenavbaritem/index.taro.d.ts +1 -0
- package/dist/types/packages/sidenavbaritem/sidenavbaritem.taro.d.ts +3 -3
- package/dist/types/packages/signature/index.taro.d.ts +1 -0
- package/dist/types/packages/signature/signature.taro.d.ts +32 -17
- package/dist/types/packages/subsidenavbar/index.taro.d.ts +1 -0
- package/dist/types/packages/subsidenavbar/subsidenavbar.taro.d.ts +3 -3
- package/dist/types/packages/tag/index.taro.d.ts +1 -0
- package/dist/types/packages/tag/tag.taro.d.ts +52 -14
- package/dist/types/packages/timedetail/timedetail.taro.d.ts +9 -11
- package/dist/types/packages/timeselect/index.taro.d.ts +1 -0
- package/dist/types/packages/timeselect/timeselect.taro.d.ts +62 -21
- package/dist/types/packages/toast/toast.taro.d.ts +60 -12
- package/dist/types/utils/index.d.ts +1 -0
- package/package.json +1 -1
- package/dist/esm/Infiniteloading/style/style.css +0 -1
- package/dist/esm/Infiniteloading.js +0 -12
- package/dist/esm/TimePannel/style/css.js +0 -1
- package/dist/esm/TimePannel/style/index.js +0 -2
- package/dist/esm/TimePannel/style/style.css +0 -1
- package/dist/esm/TimePannel.js +0 -8
- package/dist/esm/card.taro-2080f4d2.js +0 -51
- package/dist/esm/popover.taro-ad483372.js +0 -162
- package/dist/esm/sidenavbaritem.taro-32a45ce6.js +0 -12
- package/dist/esm/tag.taro-1b4134a5.js +0 -92
- package/dist/esm/timedetail.taro-8d2acbbf.js +0 -41
- package/dist/esm/timepannel.taro-ee4c5dfa.js +0 -22
- package/dist/esm/timeselect.taro-069deedd.js +0 -133
- package/dist/esm/types/src/packages/popover/Trigger.d.ts +0 -19
- package/dist/esm/types/src/packages/sidenavbar/type.d.ts +0 -34
- package/dist/esm/types/src/packages/timedetail/demo.d.ts +0 -3
- package/dist/esm/types/src/packages/timedetail/demo.taro.d.ts +0 -3
- package/dist/esm/types/src/packages/timepannel/demo.d.ts +0 -3
- package/dist/esm/types/src/packages/timepannel/demo.taro.d.ts +0 -3
- package/dist/esm/types/src/packages/timepannel/index.d.ts +0 -2
- package/dist/esm/types/src/packages/timepannel/index.taro.d.ts +0 -2
- package/dist/esm/types/src/packages/timepannel/timepannel.d.ts +0 -8
- package/dist/esm/types/src/packages/timepannel/timepannel.taro.d.ts +0 -8
- package/dist/esm/use-client-rect-f317804e.js +0 -10
- package/dist/packages/timepannel/timepannel.scss +0 -17
- package/dist/types/packages/popover/Trigger.d.ts +0 -19
- package/dist/types/packages/timepannel/index.taro.d.ts +0 -2
- package/dist/types/packages/timepannel/timepannel.taro.d.ts +0 -8
- /package/dist/esm/{Infiniteloading → InfiniteLoading}/style/css.js +0 -0
- /package/dist/esm/{Infiniteloading → InfiniteLoading}/style/index.js +0 -0
- /package/dist/esm/{offsetContext-f32a9246.js → context-f32a9246.js} +0 -0
- /package/dist/esm/types/src/packages/sidenavbar/{offsetContext.d.ts → context.d.ts} +0 -0
- /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-
|
|
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-
|
|
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-
|
|
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-
|
|
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 "./
|
|
4
|
+
import { O as OffsetContext } from "./context-f32a9246.js";
|
|
5
|
+
import { C as ComponentDefaults } from "./typings-11d83a22.js";
|
|
4
6
|
const defaultProps = {
|
|
5
|
-
|
|
7
|
+
...ComponentDefaults,
|
|
6
8
|
position: "left",
|
|
7
9
|
width: "80%"
|
|
8
10
|
};
|
|
9
11
|
const SideNavBar = (props) => {
|
|
10
|
-
const
|
|
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
|
|
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
|
|
27
|
+
{ className: classNames(className, classPrefix), ...rest },
|
|
25
28
|
React.createElement(
|
|
26
29
|
"div",
|
|
27
|
-
{ className:
|
|
30
|
+
{ className: `${classPrefix}__content` },
|
|
28
31
|
React.createElement(
|
|
29
32
|
"div",
|
|
30
|
-
{ className:
|
|
33
|
+
{ className: `${classPrefix}__list ${sidenavbarShow ? "sidenavbar-show" : "sidenavbar-hide"}`, onClick: handleClick },
|
|
31
34
|
React.createElement(
|
|
32
35
|
"div",
|
|
33
|
-
{ className:
|
|
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:
|
|
40
|
-
React.createElement("div", { className:
|
|
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 {
|
|
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
|
|
14
|
-
const {
|
|
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
|
|
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.
|
|
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: `${
|
|
126
|
-
React.createElement("div", { className: `${
|
|
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-
|
|
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-
|
|
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.
|
|
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 "./
|
|
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
|
|
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(
|
|
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(
|
|
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(
|
|
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,
|
|
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 ?
|
|
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:
|
|
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:
|
|
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-
|
|
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-
|
|
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-
|
|
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 = {
|