taro-ui 3.3.3 → 3.4.0

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 (312) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +85 -0
  3. package/dist/common/utils.d.ts +2 -1
  4. package/dist/common/utils.js +3 -0
  5. package/dist/common/utils.js.map +1 -1
  6. package/dist/components/accordion/index.d.ts +16 -13
  7. package/dist/components/accordion/index.js +77 -97
  8. package/dist/components/accordion/index.js.map +1 -1
  9. package/dist/components/action-sheet/body/index.d.ts +2 -4
  10. package/dist/components/action-sheet/body/index.js +8 -6
  11. package/dist/components/action-sheet/body/index.js.map +1 -1
  12. package/dist/components/action-sheet/body/item/index.d.ts +7 -7
  13. package/dist/components/action-sheet/body/item/index.js +14 -14
  14. package/dist/components/action-sheet/body/item/index.js.map +1 -1
  15. package/dist/components/action-sheet/footer/index.d.ts +7 -7
  16. package/dist/components/action-sheet/footer/index.js +14 -17
  17. package/dist/components/action-sheet/footer/index.js.map +1 -1
  18. package/dist/components/action-sheet/header/index.d.ts +2 -4
  19. package/dist/components/action-sheet/header/index.js +8 -9
  20. package/dist/components/action-sheet/header/index.js.map +1 -1
  21. package/dist/components/action-sheet/index.d.ts +12 -13
  22. package/dist/components/action-sheet/index.js +53 -57
  23. package/dist/components/action-sheet/index.js.map +1 -1
  24. package/dist/components/activity-indicator/index.d.ts +12 -6
  25. package/dist/components/activity-indicator/index.js +19 -22
  26. package/dist/components/activity-indicator/index.js.map +1 -1
  27. package/dist/components/avatar/index.d.ts +14 -8
  28. package/dist/components/avatar/index.js +36 -43
  29. package/dist/components/avatar/index.js.map +1 -1
  30. package/dist/components/badge/index.d.ts +11 -8
  31. package/dist/components/badge/index.js +18 -34
  32. package/dist/components/badge/index.js.map +1 -1
  33. package/dist/components/button/index.d.ts +29 -14
  34. package/dist/components/button/index.js +97 -112
  35. package/dist/components/button/index.js.map +1 -1
  36. package/dist/components/calendar/body/index.d.ts +3 -26
  37. package/dist/components/calendar/body/index.js +215 -235
  38. package/dist/components/calendar/body/index.js.map +1 -1
  39. package/dist/components/calendar/controller/index.d.ts +3 -5
  40. package/dist/components/calendar/controller/index.js +47 -43
  41. package/dist/components/calendar/controller/index.js.map +1 -1
  42. package/dist/components/calendar/index.d.ts +3 -20
  43. package/dist/components/calendar/index.js +219 -201
  44. package/dist/components/calendar/index.js.map +1 -1
  45. package/dist/components/calendar/ui/date-list/index.d.ts +2 -6
  46. package/dist/components/calendar/ui/date-list/index.js +36 -41
  47. package/dist/components/calendar/ui/date-list/index.js.map +1 -1
  48. package/dist/components/calendar/ui/day-list/index.d.ts +2 -4
  49. package/dist/components/calendar/ui/day-list/index.js +6 -5
  50. package/dist/components/calendar/ui/day-list/index.js.map +1 -1
  51. package/dist/components/card/index.d.ts +15 -7
  52. package/dist/components/card/index.js +42 -43
  53. package/dist/components/card/index.js.map +1 -1
  54. package/dist/components/checkbox/index.d.ts +11 -7
  55. package/dist/components/checkbox/index.js +30 -35
  56. package/dist/components/checkbox/index.js.map +1 -1
  57. package/dist/components/config-provider/context.d.ts +6 -0
  58. package/dist/components/config-provider/context.js +13 -0
  59. package/dist/components/config-provider/context.js.map +1 -0
  60. package/dist/components/config-provider/index.d.ts +7 -0
  61. package/dist/components/config-provider/index.js +15 -0
  62. package/dist/components/config-provider/index.js.map +1 -0
  63. package/dist/components/countdown/index.d.ts +19 -19
  64. package/dist/components/countdown/index.js +183 -118
  65. package/dist/components/countdown/index.js.map +1 -1
  66. package/dist/components/countdown/item/index.d.ts +8 -7
  67. package/dist/components/countdown/item/index.js +10 -13
  68. package/dist/components/countdown/item/index.js.map +1 -1
  69. package/dist/components/curtain/index.d.ts +11 -8
  70. package/dist/components/curtain/index.js +36 -45
  71. package/dist/components/curtain/index.js.map +1 -1
  72. package/dist/components/divider/index.d.ts +13 -6
  73. package/dist/components/divider/index.js +29 -38
  74. package/dist/components/divider/index.js.map +1 -1
  75. package/dist/components/drawer/index.d.ts +13 -15
  76. package/dist/components/drawer/index.js +100 -93
  77. package/dist/components/drawer/index.js.map +1 -1
  78. package/dist/components/fab/index.d.ts +8 -7
  79. package/dist/components/fab/index.js +16 -16
  80. package/dist/components/fab/index.js.map +1 -1
  81. package/dist/components/flex/index.d.ts +11 -5
  82. package/dist/components/flex/index.js +17 -18
  83. package/dist/components/flex/index.js.map +1 -1
  84. package/dist/components/flex/item/index.d.ts +11 -5
  85. package/dist/components/flex/item/index.js +17 -18
  86. package/dist/components/flex/item/index.js.map +1 -1
  87. package/dist/components/float-layout/index.d.ts +20 -12
  88. package/dist/components/float-layout/index.js +56 -72
  89. package/dist/components/float-layout/index.js.map +1 -1
  90. package/dist/components/form/index.d.ts +11 -8
  91. package/dist/components/form/index.js +28 -28
  92. package/dist/components/form/index.js.map +1 -1
  93. package/dist/components/grid/index.d.ts +22 -7
  94. package/dist/components/grid/index.js +61 -66
  95. package/dist/components/grid/index.js.map +1 -1
  96. package/dist/components/icon/index.d.ts +13 -7
  97. package/dist/components/icon/index.js +24 -34
  98. package/dist/components/icon/index.js.map +1 -1
  99. package/dist/components/image-picker/index.d.ts +19 -9
  100. package/dist/components/image-picker/index.js +83 -102
  101. package/dist/components/image-picker/index.js.map +1 -1
  102. package/dist/components/indexes/index.d.ts +16 -28
  103. package/dist/components/indexes/index.js +198 -209
  104. package/dist/components/indexes/index.js.map +1 -1
  105. package/dist/components/input/index.d.ts +37 -15
  106. package/dist/components/input/index.js +152 -161
  107. package/dist/components/input/index.js.map +1 -1
  108. package/dist/components/input-number/index.d.ts +20 -11
  109. package/dist/components/input-number/index.js +107 -126
  110. package/dist/components/input-number/index.js.map +1 -1
  111. package/dist/components/list/index.d.ts +7 -6
  112. package/dist/components/list/index.js +15 -15
  113. package/dist/components/list/index.js.map +1 -1
  114. package/dist/components/list/item/index.d.ts +27 -9
  115. package/dist/components/list/item/index.js +89 -117
  116. package/dist/components/list/item/index.js.map +1 -1
  117. package/dist/components/load-more/index.d.ts +15 -7
  118. package/dist/components/load-more/index.js +29 -50
  119. package/dist/components/load-more/index.js.map +1 -1
  120. package/dist/components/loading/index.d.ts +8 -7
  121. package/dist/components/loading/index.js +14 -20
  122. package/dist/components/loading/index.js.map +1 -1
  123. package/dist/components/message/index.d.ts +9 -14
  124. package/dist/components/message/index.js +45 -59
  125. package/dist/components/message/index.js.map +1 -1
  126. package/dist/components/modal/action/index.d.ts +7 -6
  127. package/dist/components/modal/action/index.js +15 -15
  128. package/dist/components/modal/action/index.js.map +1 -1
  129. package/dist/components/modal/content/index.d.ts +2 -4
  130. package/dist/components/modal/content/index.js +8 -6
  131. package/dist/components/modal/content/index.js.map +1 -1
  132. package/dist/components/modal/header/index.d.ts +2 -4
  133. package/dist/components/modal/header/index.js +8 -6
  134. package/dist/components/modal/header/index.js.map +1 -1
  135. package/dist/components/modal/index.d.ts +16 -14
  136. package/dist/components/modal/index.js +63 -77
  137. package/dist/components/modal/index.js.map +1 -1
  138. package/dist/components/nav-bar/index.d.ts +20 -10
  139. package/dist/components/nav-bar/index.js +146 -162
  140. package/dist/components/nav-bar/index.js.map +1 -1
  141. package/dist/components/noticebar/index.d.ts +17 -15
  142. package/dist/components/noticebar/index.js +115 -128
  143. package/dist/components/noticebar/index.js.map +1 -1
  144. package/dist/components/pagination/index.d.ts +13 -11
  145. package/dist/components/pagination/index.js +64 -120
  146. package/dist/components/pagination/index.js.map +1 -1
  147. package/dist/components/progress/index.d.ts +11 -5
  148. package/dist/components/progress/index.js +39 -36
  149. package/dist/components/progress/index.js.map +1 -1
  150. package/dist/components/radio/index.d.ts +11 -7
  151. package/dist/components/radio/index.js +29 -33
  152. package/dist/components/radio/index.js.map +1 -1
  153. package/dist/components/range/index.d.ts +19 -21
  154. package/dist/components/range/index.js +146 -153
  155. package/dist/components/range/index.js.map +1 -1
  156. package/dist/components/rate/index.d.ts +13 -7
  157. package/dist/components/rate/index.js +47 -62
  158. package/dist/components/rate/index.js.map +1 -1
  159. package/dist/components/search-bar/index.d.ts +23 -15
  160. package/dist/components/search-bar/index.js +120 -146
  161. package/dist/components/search-bar/index.js.map +1 -1
  162. package/dist/components/segmented-control/index.d.ts +14 -7
  163. package/dist/components/segmented-control/index.js +52 -66
  164. package/dist/components/segmented-control/index.js.map +1 -1
  165. package/dist/components/slider/index.d.ts +21 -12
  166. package/dist/components/slider/index.js +66 -90
  167. package/dist/components/slider/index.js.map +1 -1
  168. package/dist/components/steps/index.d.ts +11 -7
  169. package/dist/components/steps/index.js +43 -48
  170. package/dist/components/steps/index.js.map +1 -1
  171. package/dist/components/swipe-action/index.d.ts +12 -25
  172. package/dist/components/swipe-action/index.js +118 -115
  173. package/dist/components/swipe-action/index.js.map +1 -1
  174. package/dist/components/swipe-action/options/index.d.ts +2 -4
  175. package/dist/components/swipe-action/options/index.js +18 -17
  176. package/dist/components/swipe-action/options/index.js.map +1 -1
  177. package/dist/components/switch/index.d.ts +14 -7
  178. package/dist/components/switch/index.js +36 -41
  179. package/dist/components/switch/index.js.map +1 -1
  180. package/dist/components/tab-bar/index.d.ts +17 -7
  181. package/dist/components/tab-bar/index.js +108 -135
  182. package/dist/components/tab-bar/index.js.map +1 -1
  183. package/dist/components/tabs/index.d.ts +17 -23
  184. package/dist/components/tabs/index.js +185 -174
  185. package/dist/components/tabs/index.js.map +1 -1
  186. package/dist/components/tabs-pane/index.d.ts +11 -6
  187. package/dist/components/tabs-pane/index.js +26 -28
  188. package/dist/components/tabs-pane/index.js.map +1 -1
  189. package/dist/components/tag/index.d.ts +14 -7
  190. package/dist/components/tag/index.js +31 -40
  191. package/dist/components/tag/index.js.map +1 -1
  192. package/dist/components/textarea/index.d.ts +29 -11
  193. package/dist/components/textarea/index.js +72 -92
  194. package/dist/components/textarea/index.js.map +1 -1
  195. package/dist/components/timeline/index.d.ts +9 -6
  196. package/dist/components/timeline/index.js +50 -56
  197. package/dist/components/timeline/index.js.map +1 -1
  198. package/dist/components/toast/img.json +3 -6
  199. package/dist/components/toast/index.d.ts +16 -15
  200. package/dist/components/toast/index.js +85 -94
  201. package/dist/components/toast/index.js.map +1 -1
  202. package/dist/hooks/useComponentLocale.d.ts +2 -0
  203. package/dist/hooks/useComponentLocale.js +12 -0
  204. package/dist/hooks/useComponentLocale.js.map +1 -0
  205. package/dist/index.d.ts +3 -0
  206. package/dist/index.esm.js +4006 -4404
  207. package/dist/index.esm.js.map +1 -1
  208. package/dist/index.js +4032 -4434
  209. package/dist/index.js.map +1 -1
  210. package/dist/locale/en_US.d.ts +3 -0
  211. package/dist/locale/en_US.js +34 -0
  212. package/dist/locale/en_US.js.map +1 -0
  213. package/dist/locale/index.d.ts +4 -0
  214. package/dist/locale/index.js +10 -0
  215. package/dist/locale/index.js.map +1 -0
  216. package/dist/locale/types.d.ts +34 -0
  217. package/dist/locale/types.js +1 -0
  218. package/dist/locale/types.js.map +1 -0
  219. package/dist/locale/zh_CN.d.ts +3 -0
  220. package/dist/locale/zh_CN.js +34 -0
  221. package/dist/locale/zh_CN.js.map +1 -0
  222. package/dist/style/components/avatar.scss +1 -1
  223. package/dist/style/components/badge.scss +7 -2
  224. package/dist/style/components/calendar.scss +1 -1
  225. package/dist/style/components/countdown.scss +2 -1
  226. package/dist/style/components/flex.scss +1 -1
  227. package/dist/style/components/grid.scss +2 -2
  228. package/dist/style/components/icon.scss +302 -101
  229. package/dist/style/components/input.scss +2 -2
  230. package/dist/style/components/progress.scss +1 -1
  231. package/dist/style/components/search-bar.scss +1 -1
  232. package/dist/style/components/steps.scss +2 -2
  233. package/dist/style/components/tabs.scss +1 -1
  234. package/dist/style/components/tag.scss +1 -1
  235. package/dist/style/components/timeline.scss +1 -1
  236. package/dist/style/components/toast.scss +7 -3
  237. package/dist/style/index.css +176 -176
  238. package/dist/style/index.css.map +1 -1
  239. package/dist/style/mixins/libs/hairline.scss +4 -19
  240. package/dist/style/mixins/libs/shade.scss +3 -6
  241. package/dist/style/mixins/libs/tint.scss +4 -7
  242. package/dist/style/themes/purple.scss +15 -15
  243. package/dist/style/themes/red.scss +16 -13
  244. package/dist/style/variables/default.scss +69 -73
  245. package/package.json +5 -3
  246. package/rn/components/accordion/index.tsx +2 -9
  247. package/rn/components/action-sheet/body/index.tsx +1 -3
  248. package/rn/components/action-sheet/body/item/index.tsx +1 -3
  249. package/rn/components/action-sheet/footer/index.tsx +1 -3
  250. package/rn/components/action-sheet/header/index.tsx +1 -3
  251. package/rn/components/activity-indicator/index.tsx +1 -3
  252. package/rn/components/avatar/index.tsx +5 -5
  253. package/rn/components/calendar/controller/index.tsx +2 -7
  254. package/rn/components/card/index.tsx +4 -4
  255. package/rn/components/countdown/index.scss +5 -4
  256. package/rn/components/countdown/item/index.tsx +1 -3
  257. package/rn/components/curtain/index.tsx +5 -5
  258. package/rn/components/flex/index.scss +2 -2
  259. package/rn/components/flex/item/index.scss +2 -2
  260. package/rn/components/grid/index.tsx +15 -15
  261. package/rn/components/icon/index.tsx +4 -4
  262. package/rn/components/image-picker/index.tsx +7 -7
  263. package/rn/components/pagination/index.tsx +7 -7
  264. package/rn/components/progress/index.tsx +5 -5
  265. package/rn/components/radio/index.tsx +7 -7
  266. package/rn/components/rate/index.tsx +4 -4
  267. package/rn/components/segmented-control/index.tsx +8 -8
  268. package/rn/components/slider/index.tsx +9 -9
  269. package/rn/components/steps/index.tsx +8 -8
  270. package/rn/components/swipe-action/options/index.tsx +1 -3
  271. package/rn/components/switch/index.tsx +2 -9
  272. package/rn/components/toast/img.json +3 -6
  273. package/rn/components/toast/index.tsx +8 -8
  274. package/rn/style/components/accordion.scss +1 -1
  275. package/rn/style/components/action-sheet.scss +1 -1
  276. package/rn/style/components/avatar.scss +1 -1
  277. package/rn/style/components/badge.scss +8 -3
  278. package/rn/style/components/button.scss +1 -1
  279. package/rn/style/components/calendar.scss +1 -1
  280. package/rn/style/components/checkbox.scss +1 -1
  281. package/rn/style/components/curtain.scss +1 -1
  282. package/rn/style/components/fab.scss +1 -4
  283. package/rn/style/components/flex.scss +1 -1
  284. package/rn/style/components/grid.scss +2 -6
  285. package/rn/style/components/icon.scss +302 -101
  286. package/rn/style/components/index.scss +41 -41
  287. package/rn/style/components/input.scss +1 -1
  288. package/rn/style/components/list.scss +2 -4
  289. package/rn/style/components/loading.scss +4 -4
  290. package/rn/style/components/message.scss +1 -1
  291. package/rn/style/components/modal.scss +0 -2
  292. package/rn/style/components/nav-bar.scss +3 -3
  293. package/rn/style/components/noticebar.scss +0 -4
  294. package/rn/style/components/progress.scss +1 -1
  295. package/rn/style/components/radio.scss +2 -2
  296. package/rn/style/components/range.scss +1 -1
  297. package/rn/style/components/search-bar.scss +1 -1
  298. package/rn/style/components/segmented-control.scss +4 -1
  299. package/rn/style/components/slider.scss +0 -1
  300. package/rn/style/components/steps.scss +3 -3
  301. package/rn/style/components/switch.scss +0 -1
  302. package/rn/style/components/tabs.scss +2 -2
  303. package/rn/style/components/tag.scss +1 -1
  304. package/rn/style/components/timeline.scss +0 -2
  305. package/rn/style/components/toast.scss +5 -2
  306. package/rn/style/index.scss +1 -1
  307. package/rn/style/mixins/libs/hairline.scss +4 -22
  308. package/rn/style/mixins/libs/shade.scss +1 -4
  309. package/rn/style/mixins/libs/tint.scss +2 -5
  310. package/rn/style/themes/purple.scss +15 -15
  311. package/rn/style/themes/red.scss +16 -13
  312. package/rn/style/variables/default.scss +69 -73
@@ -1,78 +1,64 @@
1
1
  import classNames from "classnames";
2
2
  import PropTypes from "prop-types";
3
- import React from "react";
3
+ import React, { useCallback, useEffect, useRef, useState } from "react";
4
4
  import { View } from "@tarojs/components";
5
- import Taro from "@tarojs/taro";
6
- class AtMessage extends React.Component {
7
- constructor(props) {
8
- super(props);
9
- this.state = {
10
- _isOpened: false,
11
- _message: "",
12
- _type: "info",
13
- _duration: 3e3
14
- };
15
- this._timer = null;
16
- }
17
- bindMessageListener() {
5
+ import Taro, { useDidHide, useDidShow } from "@tarojs/taro";
6
+ function AtMessage({
7
+ customStyle = "",
8
+ className = ""
9
+ }) {
10
+ const [_isOpened, setIsOpened] = useState(false);
11
+ const [_message, setMessage] = useState("");
12
+ const [_type, setType] = useState("info");
13
+ const durationRef = useRef(3e3);
14
+ const timerRef = useRef(null);
15
+ const bindMessageListener = useCallback(() => {
18
16
  Taro.eventCenter.on("atMessage", (options = {}) => {
19
17
  const { message, type, duration } = options;
20
- const newState = {
21
- _isOpened: true,
22
- _message: message,
23
- _type: type,
24
- _duration: duration || this.state._duration
25
- };
26
- this.setState(newState, () => {
27
- clearTimeout(this._timer);
28
- this._timer = setTimeout(() => {
29
- this.setState({
30
- _isOpened: false
31
- });
32
- }, this.state._duration);
33
- });
18
+ const newDuration = duration || durationRef.current;
19
+ durationRef.current = newDuration;
20
+ setIsOpened(true);
21
+ setMessage(message);
22
+ setType(type);
23
+ clearTimeout(timerRef.current);
24
+ timerRef.current = setTimeout(() => {
25
+ setIsOpened(false);
26
+ }, newDuration);
34
27
  });
35
28
  Taro.atMessage = Taro.eventCenter.trigger.bind(
36
29
  Taro.eventCenter,
37
30
  "atMessage"
38
31
  );
39
- }
40
- componentDidShow() {
41
- this.bindMessageListener();
42
- }
43
- componentDidMount() {
44
- this.bindMessageListener();
45
- }
46
- componentDidHide() {
47
- Taro.eventCenter.off("atMessage");
48
- }
49
- componentWillUnmount() {
32
+ }, []);
33
+ useEffect(() => {
34
+ bindMessageListener();
35
+ return () => {
36
+ Taro.eventCenter.off("atMessage");
37
+ };
38
+ }, [bindMessageListener]);
39
+ useDidShow(() => {
40
+ bindMessageListener();
41
+ });
42
+ useDidHide(() => {
50
43
  Taro.eventCenter.off("atMessage");
51
- }
52
- render() {
53
- const { className, customStyle } = this.props;
54
- const { _message, _isOpened, _type } = this.state;
55
- const rootCls = classNames(
56
- {
57
- "at-message": true,
58
- "at-message--show": _isOpened,
59
- "at-message--hidden": !_isOpened
60
- },
61
- `at-message--${_type}`,
62
- className
63
- );
64
- return /* @__PURE__ */ React.createElement(View, { className: rootCls, style: customStyle }, _message);
65
- }
44
+ });
45
+ const rootCls = classNames(
46
+ {
47
+ "at-message": true,
48
+ "at-message--show": _isOpened,
49
+ "at-message--hidden": !_isOpened
50
+ },
51
+ `at-message--${_type}`,
52
+ className
53
+ );
54
+ return /* @__PURE__ */ React.createElement(View, { className: rootCls, style: customStyle }, _message);
66
55
  }
67
- AtMessage.defaultProps = {
68
- customStyle: "",
69
- className: ""
70
- };
71
56
  AtMessage.propTypes = {
72
57
  customStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),
73
58
  className: PropTypes.oneOfType([PropTypes.array, PropTypes.string])
74
59
  };
60
+ var message_default = AtMessage;
75
61
  export {
76
- AtMessage as default
62
+ message_default as default
77
63
  };
78
64
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/message/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport PropTypes, { InferProps } from 'prop-types'\nimport React from 'react'\nimport { View } from '@tarojs/components'\nimport Taro from '@tarojs/taro'\nimport { AtMessageProps, AtMessageState } from '../../../types/message'\n\nexport default class AtMessage extends React.Component<\n AtMessageProps,\n AtMessageState\n> {\n public static defaultProps: AtMessageProps\n public static propTypes: InferProps<AtMessageProps>\n\n private _timer: NodeJS.Timeout | number | null\n\n public constructor(props: AtMessageProps) {\n super(props)\n this.state = {\n _isOpened: false,\n _message: '',\n _type: 'info',\n _duration: 3000\n }\n this._timer = null\n }\n\n private bindMessageListener(): void {\n Taro.eventCenter.on('atMessage', (options = {}) => {\n const { message, type, duration } = options\n const newState = {\n _isOpened: true,\n _message: message,\n _type: type,\n _duration: duration || this.state._duration\n }\n this.setState(newState, () => {\n clearTimeout(this._timer as number)\n this._timer = setTimeout(() => {\n this.setState({\n _isOpened: false\n })\n }, this.state._duration)\n })\n })\n // 绑定函数\n Taro.atMessage = Taro.eventCenter.trigger.bind(\n Taro.eventCenter,\n 'atMessage'\n )\n }\n\n public componentDidShow(): void {\n this.bindMessageListener()\n }\n\n public componentDidMount(): void {\n this.bindMessageListener()\n }\n\n public componentDidHide(): void {\n Taro.eventCenter.off('atMessage')\n }\n\n public componentWillUnmount(): void {\n Taro.eventCenter.off('atMessage')\n }\n\n public render(): JSX.Element {\n const { className, customStyle } = this.props\n const { _message, _isOpened, _type } = this.state\n const rootCls = classNames(\n {\n 'at-message': true,\n 'at-message--show': _isOpened,\n 'at-message--hidden': !_isOpened\n },\n `at-message--${_type}`,\n className\n )\n\n return (\n <View className={rootCls} style={customStyle}>\n {_message}\n </View>\n )\n }\n}\n\nAtMessage.defaultProps = {\n customStyle: '',\n className: ''\n}\n\nAtMessage.propTypes = {\n customStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n className: PropTypes.oneOfType([PropTypes.array, PropTypes.string])\n}\n"],"mappings":"AAAA,OAAO,gBAAgB;AACvB,OAAO,eAA+B;AACtC,OAAO,WAAW;AAClB,SAAS,YAAY;AACrB,OAAO,UAAU;AAGjB,MAAO,kBAAgC,MAAM,UAG3C;AAAA,EAMO,YAAY,OAAuB;AACxC,UAAM,KAAK;AACX,SAAK,QAAQ;AAAA,MACX,WAAW;AAAA,MACX,UAAU;AAAA,MACV,OAAO;AAAA,MACP,WAAW;AAAA,IACb;AACA,SAAK,SAAS;AAAA,EAChB;AAAA,EAEQ,sBAA4B;AAClC,SAAK,YAAY,GAAG,aAAa,CAAC,UAAU,CAAC,MAAM;AACjD,YAAM,EAAE,SAAS,MAAM,SAAS,IAAI;AACpC,YAAM,WAAW;AAAA,QACf,WAAW;AAAA,QACX,UAAU;AAAA,QACV,OAAO;AAAA,QACP,WAAW,YAAY,KAAK,MAAM;AAAA,MACpC;AACA,WAAK,SAAS,UAAU,MAAM;AAC5B,qBAAa,KAAK,MAAgB;AAClC,aAAK,SAAS,WAAW,MAAM;AAC7B,eAAK,SAAS;AAAA,YACZ,WAAW;AAAA,UACb,CAAC;AAAA,QACH,GAAG,KAAK,MAAM,SAAS;AAAA,MACzB,CAAC;AAAA,IACH,CAAC;AAED,SAAK,YAAY,KAAK,YAAY,QAAQ;AAAA,MACxC,KAAK;AAAA,MACL;AAAA,IACF;AAAA,EACF;AAAA,EAEO,mBAAyB;AAC9B,SAAK,oBAAoB;AAAA,EAC3B;AAAA,EAEO,oBAA0B;AAC/B,SAAK,oBAAoB;AAAA,EAC3B;AAAA,EAEO,mBAAyB;AAC9B,SAAK,YAAY,IAAI,WAAW;AAAA,EAClC;AAAA,EAEO,uBAA6B;AAClC,SAAK,YAAY,IAAI,WAAW;AAAA,EAClC;AAAA,EAEO,SAAsB;AAC3B,UAAM,EAAE,WAAW,YAAY,IAAI,KAAK;AACxC,UAAM,EAAE,UAAU,WAAW,MAAM,IAAI,KAAK;AAC5C,UAAM,UAAU;AAAA,MACd;AAAA,QACE,cAAc;AAAA,QACd,oBAAoB;AAAA,QACpB,sBAAsB,CAAC;AAAA,MACzB;AAAA,MACA,eAAe,KAAK;AAAA,MACpB;AAAA,IACF;AAEA,WACE,oCAAC,QAAK,WAAW,SAAS,OAAO,eAC9B,QACH;AAAA,EAEJ;AACF;AAEA,UAAU,eAAe;AAAA,EACvB,aAAa;AAAA,EACb,WAAW;AACb;AAEA,UAAU,YAAY;AAAA,EACpB,aAAa,UAAU,UAAU,CAAC,UAAU,QAAQ,UAAU,MAAM,CAAC;AAAA,EACrE,WAAW,UAAU,UAAU,CAAC,UAAU,OAAO,UAAU,MAAM,CAAC;AACpE;","names":[]}
1
+ {"version":3,"sources":["../../../src/components/message/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport PropTypes from 'prop-types'\nimport React, { useCallback, useEffect, useRef, useState } from 'react'\nimport { View } from '@tarojs/components'\nimport Taro, { useDidHide, useDidShow } from '@tarojs/taro'\nimport { AtMessageProps } from '../../../types/message'\n\nfunction AtMessage({\n customStyle = '',\n className = ''\n}: AtMessageProps): JSX.Element {\n const [_isOpened, setIsOpened] = useState(false)\n const [_message, setMessage] = useState('')\n const [_type, setType] = useState('info')\n const durationRef = useRef(3000)\n const timerRef = useRef<NodeJS.Timeout | number | null>(null)\n\n const bindMessageListener = useCallback((): void => {\n Taro.eventCenter.on('atMessage', (options = {}) => {\n const { message, type, duration } = options\n const newDuration = duration || durationRef.current\n durationRef.current = newDuration\n setIsOpened(true)\n setMessage(message)\n setType(type)\n clearTimeout(timerRef.current as number)\n timerRef.current = setTimeout(() => {\n setIsOpened(false)\n }, newDuration)\n })\n Taro.atMessage = Taro.eventCenter.trigger.bind(\n Taro.eventCenter,\n 'atMessage'\n )\n }, [])\n\n useEffect(() => {\n bindMessageListener()\n return () => {\n Taro.eventCenter.off('atMessage')\n }\n }, [bindMessageListener])\n\n useDidShow(() => {\n bindMessageListener()\n })\n\n useDidHide(() => {\n Taro.eventCenter.off('atMessage')\n })\n\n const rootCls = classNames(\n {\n 'at-message': true,\n 'at-message--show': _isOpened,\n 'at-message--hidden': !_isOpened\n },\n `at-message--${_type}`,\n className\n )\n\n return (\n <View className={rootCls} style={customStyle}>\n {_message}\n </View>\n )\n}\n\nAtMessage.propTypes = {\n customStyle: PropTypes.oneOfType([PropTypes.object, PropTypes.string]),\n className: PropTypes.oneOfType([PropTypes.array, PropTypes.string])\n}\n\nexport default AtMessage\n"],"mappings":"AAAA,OAAO,gBAAgB;AACvB,OAAO,eAAe;AACtB,OAAO,SAAS,aAAa,WAAW,QAAQ,gBAAgB;AAChE,SAAS,YAAY;AACrB,OAAO,QAAQ,YAAY,kBAAkB;AAG7C,SAAS,UAAU;AAAA,EACjB,cAAc;AAAA,EACd,YAAY;AACd,GAAgC;AAC9B,QAAM,CAAC,WAAW,WAAW,IAAI,SAAS,KAAK;AAC/C,QAAM,CAAC,UAAU,UAAU,IAAI,SAAS,EAAE;AAC1C,QAAM,CAAC,OAAO,OAAO,IAAI,SAAS,MAAM;AACxC,QAAM,cAAc,OAAO,GAAI;AAC/B,QAAM,WAAW,OAAuC,IAAI;AAE5D,QAAM,sBAAsB,YAAY,MAAY;AAClD,SAAK,YAAY,GAAG,aAAa,CAAC,UAAU,CAAC,MAAM;AACjD,YAAM,EAAE,SAAS,MAAM,SAAS,IAAI;AACpC,YAAM,cAAc,YAAY,YAAY;AAC5C,kBAAY,UAAU;AACtB,kBAAY,IAAI;AAChB,iBAAW,OAAO;AAClB,cAAQ,IAAI;AACZ,mBAAa,SAAS,OAAiB;AACvC,eAAS,UAAU,WAAW,MAAM;AAClC,oBAAY,KAAK;AAAA,MACnB,GAAG,WAAW;AAAA,IAChB,CAAC;AACD,SAAK,YAAY,KAAK,YAAY,QAAQ;AAAA,MACxC,KAAK;AAAA,MACL;AAAA,IACF;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,YAAU,MAAM;AACd,wBAAoB;AACpB,WAAO,MAAM;AACX,WAAK,YAAY,IAAI,WAAW;AAAA,IAClC;AAAA,EACF,GAAG,CAAC,mBAAmB,CAAC;AAExB,aAAW,MAAM;AACf,wBAAoB;AAAA,EACtB,CAAC;AAED,aAAW,MAAM;AACf,SAAK,YAAY,IAAI,WAAW;AAAA,EAClC,CAAC;AAED,QAAM,UAAU;AAAA,IACd;AAAA,MACE,cAAc;AAAA,MACd,oBAAoB;AAAA,MACpB,sBAAsB,CAAC;AAAA,IACzB;AAAA,IACA,eAAe,KAAK;AAAA,IACpB;AAAA,EACF;AAEA,SACE,oCAAC,QAAK,WAAW,SAAS,OAAO,eAC9B,QACH;AAEJ;AAEA,UAAU,YAAY;AAAA,EACpB,aAAa,UAAU,UAAU,CAAC,UAAU,QAAQ,UAAU,MAAM,CAAC;AAAA,EACrE,WAAW,UAAU,UAAU,CAAC,UAAU,OAAO,UAAU,MAAM,CAAC;AACpE;AAEA,IAAO,kBAAQ;","names":[]}
@@ -1,8 +1,9 @@
1
- import { InferProps } from 'prop-types';
2
- import React from 'react';
1
+ import PropTypes from 'prop-types';
3
2
  import { AtModalActionProps } from '../../../../types/modal';
4
- export default class AtModalAction extends React.Component<AtModalActionProps> {
5
- static defaultProps: AtModalActionProps;
6
- static propTypes: InferProps<AtModalActionProps>;
7
- render(): JSX.Element;
3
+ declare function AtModalAction({ isSimple, className, children }: AtModalActionProps): JSX.Element;
4
+ declare namespace AtModalAction {
5
+ var propTypes: {
6
+ isSimple: PropTypes.Requireable<boolean>;
7
+ };
8
8
  }
9
+ export default AtModalAction;
@@ -2,25 +2,25 @@ import classNames from "classnames";
2
2
  import PropTypes from "prop-types";
3
3
  import React from "react";
4
4
  import { View } from "@tarojs/components";
5
- class AtModalAction extends React.Component {
6
- render() {
7
- const rootClass = classNames(
8
- "at-modal__footer",
9
- {
10
- "at-modal__footer--simple": this.props.isSimple
11
- },
12
- this.props.className
13
- );
14
- return /* @__PURE__ */ React.createElement(View, { className: rootClass }, /* @__PURE__ */ React.createElement(View, { className: "at-modal__action" }, this.props.children));
15
- }
5
+ function AtModalAction({
6
+ isSimple = false,
7
+ className,
8
+ children
9
+ }) {
10
+ const rootClass = classNames(
11
+ "at-modal__footer",
12
+ {
13
+ "at-modal__footer--simple": isSimple
14
+ },
15
+ className
16
+ );
17
+ return /* @__PURE__ */ React.createElement(View, { className: rootClass }, /* @__PURE__ */ React.createElement(View, { className: "at-modal__action" }, children));
16
18
  }
17
- AtModalAction.defaultProps = {
18
- isSimple: false
19
- };
20
19
  AtModalAction.propTypes = {
21
20
  isSimple: PropTypes.bool
22
21
  };
22
+ var action_default = AtModalAction;
23
23
  export {
24
- AtModalAction as default
24
+ action_default as default
25
25
  };
26
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/modal/action/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport PropTypes, { InferProps } from 'prop-types'\nimport React from 'react'\nimport { View } from '@tarojs/components'\nimport { AtModalActionProps } from '../../../../types/modal'\n\nexport default class AtModalAction extends React.Component<AtModalActionProps> {\n public static defaultProps: AtModalActionProps\n public static propTypes: InferProps<AtModalActionProps>\n\n public render(): JSX.Element {\n const rootClass = classNames(\n 'at-modal__footer',\n {\n 'at-modal__footer--simple': this.props.isSimple\n },\n this.props.className\n )\n\n return (\n <View className={rootClass}>\n <View className='at-modal__action'>{this.props.children}</View>\n </View>\n )\n }\n}\n\nAtModalAction.defaultProps = {\n isSimple: false\n}\n\nAtModalAction.propTypes = {\n isSimple: PropTypes.bool\n}\n"],"mappings":"AAAA,OAAO,gBAAgB;AACvB,OAAO,eAA+B;AACtC,OAAO,WAAW;AAClB,SAAS,YAAY;AAGrB,MAAO,sBAAoC,MAAM,UAA8B;AAAA,EAItE,SAAsB;AAC3B,UAAM,YAAY;AAAA,MAChB;AAAA,MACA;AAAA,QACE,4BAA4B,KAAK,MAAM;AAAA,MACzC;AAAA,MACA,KAAK,MAAM;AAAA,IACb;AAEA,WACE,oCAAC,QAAK,WAAW,aACf,oCAAC,QAAK,WAAU,sBAAoB,KAAK,MAAM,QAAS,CAC1D;AAAA,EAEJ;AACF;AAEA,cAAc,eAAe;AAAA,EAC3B,UAAU;AACZ;AAEA,cAAc,YAAY;AAAA,EACxB,UAAU,UAAU;AACtB;","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/modal/action/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport PropTypes from 'prop-types'\nimport React from 'react'\nimport { View } from '@tarojs/components'\nimport { AtModalActionProps } from '../../../../types/modal'\n\nfunction AtModalAction({\n isSimple = false,\n className,\n children\n}: AtModalActionProps): JSX.Element {\n const rootClass = classNames(\n 'at-modal__footer',\n {\n 'at-modal__footer--simple': isSimple\n },\n className\n )\n\n return (\n <View className={rootClass}>\n <View className='at-modal__action'>{children}</View>\n </View>\n )\n}\n\nAtModalAction.propTypes = {\n isSimple: PropTypes.bool\n}\n\nexport default AtModalAction\n"],"mappings":"AAAA,OAAO,gBAAgB;AACvB,OAAO,eAAe;AACtB,OAAO,WAAW;AAClB,SAAS,YAAY;AAGrB,SAAS,cAAc;AAAA,EACrB,WAAW;AAAA,EACX;AAAA,EACA;AACF,GAAoC;AAClC,QAAM,YAAY;AAAA,IAChB;AAAA,IACA;AAAA,MACE,4BAA4B;AAAA,IAC9B;AAAA,IACA;AAAA,EACF;AAEA,SACE,oCAAC,QAAK,WAAW,aACf,oCAAC,QAAK,WAAU,sBAAoB,QAAS,CAC/C;AAEJ;AAEA,cAAc,YAAY;AAAA,EACxB,UAAU,UAAU;AACtB;AAEA,IAAO,iBAAQ;","names":[]}
@@ -1,5 +1,3 @@
1
- import React from 'react';
2
1
  import { AtModalContentProps } from '../../../../types/modal';
3
- export default class AtModalContent extends React.Component<AtModalContentProps> {
4
- render(): JSX.Element;
5
- }
2
+ declare function AtModalContent({ className, children }: AtModalContentProps): JSX.Element;
3
+ export default AtModalContent;
@@ -1,13 +1,15 @@
1
1
  import classNames from "classnames";
2
2
  import React from "react";
3
3
  import { ScrollView } from "@tarojs/components";
4
- class AtModalContent extends React.Component {
5
- render() {
6
- const rootClass = classNames("at-modal__content", this.props.className);
7
- return /* @__PURE__ */ React.createElement(ScrollView, { scrollY: true, className: rootClass }, this.props.children);
8
- }
4
+ function AtModalContent({
5
+ className,
6
+ children
7
+ }) {
8
+ const rootClass = classNames("at-modal__content", className);
9
+ return /* @__PURE__ */ React.createElement(ScrollView, { scrollY: true, className: rootClass }, children);
9
10
  }
11
+ var content_default = AtModalContent;
10
12
  export {
11
- AtModalContent as default
13
+ content_default as default
12
14
  };
13
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/modal/content/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport React from 'react'\nimport { ScrollView } from '@tarojs/components'\nimport { AtModalContentProps } from '../../../../types/modal'\n\nexport default class AtModalContent extends React.Component<AtModalContentProps> {\n public render(): JSX.Element {\n const rootClass = classNames('at-modal__content', this.props.className)\n return (\n <ScrollView scrollY className={rootClass}>\n {this.props.children}\n </ScrollView>\n )\n }\n}\n"],"mappings":"AAAA,OAAO,gBAAgB;AACvB,OAAO,WAAW;AAClB,SAAS,kBAAkB;AAG3B,MAAO,uBAAqC,MAAM,UAA+B;AAAA,EACxE,SAAsB;AAC3B,UAAM,YAAY,WAAW,qBAAqB,KAAK,MAAM,SAAS;AACtE,WACE,oCAAC,cAAW,SAAO,MAAC,WAAW,aAC5B,KAAK,MAAM,QACd;AAAA,EAEJ;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/modal/content/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport React from 'react'\nimport { ScrollView } from '@tarojs/components'\nimport { AtModalContentProps } from '../../../../types/modal'\n\nfunction AtModalContent({\n className,\n children\n}: AtModalContentProps): JSX.Element {\n const rootClass = classNames('at-modal__content', className)\n return (\n <ScrollView scrollY className={rootClass}>\n {children}\n </ScrollView>\n )\n}\n\nexport default AtModalContent\n"],"mappings":"AAAA,OAAO,gBAAgB;AACvB,OAAO,WAAW;AAClB,SAAS,kBAAkB;AAG3B,SAAS,eAAe;AAAA,EACtB;AAAA,EACA;AACF,GAAqC;AACnC,QAAM,YAAY,WAAW,qBAAqB,SAAS;AAC3D,SACE,oCAAC,cAAW,SAAO,MAAC,WAAW,aAC5B,QACH;AAEJ;AAEA,IAAO,kBAAQ;","names":[]}
@@ -1,5 +1,3 @@
1
- import React from 'react';
2
1
  import { AtModalHeaderProps } from '../../../../types/modal';
3
- export default class AtModalHeader extends React.Component<AtModalHeaderProps> {
4
- render(): JSX.Element;
5
- }
2
+ declare function AtModalHeader({ className, children }: AtModalHeaderProps): JSX.Element;
3
+ export default AtModalHeader;
@@ -1,13 +1,15 @@
1
1
  import classNames from "classnames";
2
2
  import React from "react";
3
3
  import { View } from "@tarojs/components";
4
- class AtModalHeader extends React.Component {
5
- render() {
6
- const rootClass = classNames("at-modal__header", this.props.className);
7
- return /* @__PURE__ */ React.createElement(View, { className: rootClass }, this.props.children);
8
- }
4
+ function AtModalHeader({
5
+ className,
6
+ children
7
+ }) {
8
+ const rootClass = classNames("at-modal__header", className);
9
+ return /* @__PURE__ */ React.createElement(View, { className: rootClass }, children);
9
10
  }
11
+ var header_default = AtModalHeader;
10
12
  export {
11
- AtModalHeader as default
13
+ header_default as default
12
14
  };
13
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/modal/header/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport React from 'react'\nimport { View } from '@tarojs/components'\nimport { AtModalHeaderProps } from '../../../../types/modal'\n\nexport default class AtModalHeader extends React.Component<AtModalHeaderProps> {\n public render(): JSX.Element {\n const rootClass = classNames('at-modal__header', this.props.className)\n return <View className={rootClass}>{this.props.children}</View>\n }\n}\n"],"mappings":"AAAA,OAAO,gBAAgB;AACvB,OAAO,WAAW;AAClB,SAAS,YAAY;AAGrB,MAAO,sBAAoC,MAAM,UAA8B;AAAA,EACtE,SAAsB;AAC3B,UAAM,YAAY,WAAW,oBAAoB,KAAK,MAAM,SAAS;AACrE,WAAO,oCAAC,QAAK,WAAW,aAAY,KAAK,MAAM,QAAS;AAAA,EAC1D;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/modal/header/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport React from 'react'\nimport { View } from '@tarojs/components'\nimport { AtModalHeaderProps } from '../../../../types/modal'\n\nfunction AtModalHeader({\n className,\n children\n}: AtModalHeaderProps): JSX.Element {\n const rootClass = classNames('at-modal__header', className)\n return <View className={rootClass}>{children}</View>\n}\n\nexport default AtModalHeader\n"],"mappings":"AAAA,OAAO,gBAAgB;AACvB,OAAO,WAAW;AAClB,SAAS,YAAY;AAGrB,SAAS,cAAc;AAAA,EACrB;AAAA,EACA;AACF,GAAoC;AAClC,QAAM,YAAY,WAAW,oBAAoB,SAAS;AAC1D,SAAO,oCAAC,QAAK,WAAW,aAAY,QAAS;AAC/C;AAEA,IAAO,iBAAQ;","names":[]}
@@ -1,15 +1,17 @@
1
- import { InferProps } from 'prop-types';
2
- import React from 'react';
3
- import { AtModalProps, AtModalState } from '../../../types/modal';
4
- export default class AtModal extends React.Component<AtModalProps, AtModalState> {
5
- static defaultProps: AtModalProps;
6
- static propTypes: InferProps<AtModalProps>;
7
- constructor(props: AtModalProps);
8
- UNSAFE_componentWillReceiveProps(nextProps: AtModalProps): void;
9
- private handleClickOverlay;
10
- private handleClose;
11
- private handleCancel;
12
- private handleConfirm;
13
- private handleTouchMove;
14
- render(): JSX.Element;
1
+ import PropTypes from 'prop-types';
2
+ import { AtModalProps } from '../../../types/modal';
3
+ declare function AtModal({ isOpened, closeOnClickOverlay, title, content, cancelText, confirmText, className, children, onClose, onCancel, onConfirm }: AtModalProps): JSX.Element;
4
+ declare namespace AtModal {
5
+ var propTypes: {
6
+ title: PropTypes.Requireable<string>;
7
+ isOpened: PropTypes.Requireable<boolean>;
8
+ onCancel: PropTypes.Requireable<(...args: any[]) => any>;
9
+ onConfirm: PropTypes.Requireable<(...args: any[]) => any>;
10
+ onClose: PropTypes.Requireable<(...args: any[]) => any>;
11
+ content: PropTypes.Requireable<string>;
12
+ closeOnClickOverlay: PropTypes.Requireable<boolean>;
13
+ cancelText: PropTypes.Requireable<string>;
14
+ confirmText: PropTypes.Requireable<string>;
15
+ };
15
16
  }
17
+ export default AtModal;
@@ -1,94 +1,79 @@
1
1
  import classNames from "classnames";
2
2
  import PropTypes from "prop-types";
3
- import React from "react";
3
+ import React, { useEffect, useRef, useState } from "react";
4
4
  import { Button, Text, View } from "@tarojs/components";
5
5
  import Taro from "@tarojs/taro";
6
6
  import { handleTouchScroll } from "../../common/utils";
7
7
  import AtModalAction from "./action/index";
8
8
  import AtModalContent from "./content/index";
9
9
  import AtModalHeader from "./header/index";
10
- class AtModal extends React.Component {
11
- constructor(props) {
12
- super(props);
13
- this.handleClickOverlay = () => {
14
- if (this.props.closeOnClickOverlay) {
15
- this.setState(
16
- {
17
- _isOpened: false
18
- },
19
- this.handleClose
20
- );
21
- }
22
- };
23
- this.handleClose = (event) => {
24
- if (typeof this.props.onClose === "function") {
25
- this.props.onClose(event);
26
- }
27
- };
28
- this.handleCancel = (event) => {
29
- if (typeof this.props.onCancel === "function") {
30
- this.props.onCancel(event);
31
- }
32
- };
33
- this.handleConfirm = (event) => {
34
- if (typeof this.props.onConfirm === "function") {
35
- this.props.onConfirm(event);
36
- }
37
- };
38
- this.handleTouchMove = (e) => {
39
- e.stopPropagation();
40
- };
41
- const { isOpened } = props;
42
- this.state = {
43
- _isOpened: isOpened,
44
- isWEB: Taro.getEnv() === Taro.ENV_TYPE.WEB
45
- };
46
- }
47
- UNSAFE_componentWillReceiveProps(nextProps) {
48
- const { isOpened } = nextProps;
49
- if (this.props.isOpened !== isOpened) {
10
+ function AtModal({
11
+ isOpened = false,
12
+ closeOnClickOverlay = true,
13
+ title,
14
+ content,
15
+ cancelText,
16
+ confirmText,
17
+ className,
18
+ children,
19
+ onClose,
20
+ onCancel,
21
+ onConfirm
22
+ }) {
23
+ const [_isOpened, setIsOpened] = useState(isOpened);
24
+ const prevIsOpenedPropRef = useRef(isOpened);
25
+ const isWEB = Taro.getEnv() === Taro.ENV_TYPE.WEB;
26
+ useEffect(() => {
27
+ if (prevIsOpenedPropRef.current !== isOpened) {
50
28
  handleTouchScroll(isOpened);
29
+ prevIsOpenedPropRef.current = isOpened;
51
30
  }
52
- if (isOpened !== this.state._isOpened) {
53
- this.setState({
54
- _isOpened: isOpened
55
- });
31
+ setIsOpened((prev) => isOpened !== prev ? isOpened : prev);
32
+ }, [isOpened]);
33
+ const handleClose = (event) => {
34
+ if (typeof onClose === "function") {
35
+ onClose(event);
56
36
  }
57
- }
58
- render() {
59
- const { _isOpened, isWEB } = this.state;
60
- const { title, content, cancelText, confirmText } = this.props;
61
- const rootClass = classNames(
62
- "at-modal",
37
+ };
38
+ const handleClickOverlay = () => {
39
+ if (closeOnClickOverlay) {
40
+ setIsOpened(false);
41
+ handleClose();
42
+ }
43
+ };
44
+ const handleCancel = (event) => {
45
+ if (typeof onCancel === "function") {
46
+ onCancel(event);
47
+ }
48
+ };
49
+ const handleConfirm = (event) => {
50
+ if (typeof onConfirm === "function") {
51
+ onConfirm(event);
52
+ }
53
+ };
54
+ const handleTouchMove = (e) => {
55
+ e.stopPropagation();
56
+ };
57
+ const rootClass = classNames(
58
+ "at-modal",
59
+ {
60
+ "at-modal--active": _isOpened
61
+ },
62
+ className
63
+ );
64
+ if (title || content) {
65
+ const isRenderAction = cancelText || confirmText;
66
+ return /* @__PURE__ */ React.createElement(View, { className: rootClass }, /* @__PURE__ */ React.createElement(View, { onClick: handleClickOverlay, className: "at-modal__overlay" }), /* @__PURE__ */ React.createElement(View, { className: "at-modal__container" }, title && /* @__PURE__ */ React.createElement(AtModalHeader, null, /* @__PURE__ */ React.createElement(Text, null, title)), content && /* @__PURE__ */ React.createElement(AtModalContent, null, /* @__PURE__ */ React.createElement(View, { className: "content-simple" }, isWEB ? /* @__PURE__ */ React.createElement(
67
+ Text,
63
68
  {
64
- "at-modal--active": _isOpened
65
- },
66
- this.props.className
67
- );
68
- if (title || content) {
69
- const isRenderAction = cancelText || confirmText;
70
- return /* @__PURE__ */ React.createElement(View, { className: rootClass }, /* @__PURE__ */ React.createElement(
71
- View,
72
- {
73
- onClick: this.handleClickOverlay,
74
- className: "at-modal__overlay"
75
- }
76
- ), /* @__PURE__ */ React.createElement(View, { className: "at-modal__container" }, title && /* @__PURE__ */ React.createElement(AtModalHeader, null, /* @__PURE__ */ React.createElement(Text, null, title)), content && /* @__PURE__ */ React.createElement(AtModalContent, null, /* @__PURE__ */ React.createElement(View, { className: "content-simple" }, isWEB ? /* @__PURE__ */ React.createElement(
77
- Text,
78
- {
79
- dangerouslySetInnerHTML: {
80
- __html: content.replace(/\\n/g, "<br/>")
81
- }
69
+ dangerouslySetInnerHTML: {
70
+ __html: content.replace(/\\n/g, "<br/>")
82
71
  }
83
- ) : /* @__PURE__ */ React.createElement(Text, null, content))), isRenderAction && /* @__PURE__ */ React.createElement(AtModalAction, { isSimple: true }, cancelText && /* @__PURE__ */ React.createElement(Button, { onClick: this.handleCancel }, cancelText), confirmText && /* @__PURE__ */ React.createElement(Button, { onClick: this.handleConfirm }, confirmText))));
84
- }
85
- return /* @__PURE__ */ React.createElement(View, { onTouchMove: this.handleTouchMove, className: rootClass }, /* @__PURE__ */ React.createElement(View, { className: "at-modal__overlay", onClick: this.handleClickOverlay }), /* @__PURE__ */ React.createElement(View, { className: "at-modal__container" }, this.props.children));
72
+ }
73
+ ) : /* @__PURE__ */ React.createElement(Text, null, content))), isRenderAction && /* @__PURE__ */ React.createElement(AtModalAction, { isSimple: true }, cancelText && /* @__PURE__ */ React.createElement(Button, { onClick: handleCancel }, cancelText), confirmText && /* @__PURE__ */ React.createElement(Button, { onClick: handleConfirm }, confirmText))));
86
74
  }
75
+ return /* @__PURE__ */ React.createElement(View, { onTouchMove: handleTouchMove, className: rootClass }, /* @__PURE__ */ React.createElement(View, { className: "at-modal__overlay", onClick: handleClickOverlay }), /* @__PURE__ */ React.createElement(View, { className: "at-modal__container" }, children));
87
76
  }
88
- AtModal.defaultProps = {
89
- isOpened: false,
90
- closeOnClickOverlay: true
91
- };
92
77
  AtModal.propTypes = {
93
78
  title: PropTypes.string,
94
79
  isOpened: PropTypes.bool,
@@ -100,7 +85,8 @@ AtModal.propTypes = {
100
85
  cancelText: PropTypes.string,
101
86
  confirmText: PropTypes.string
102
87
  };
88
+ var modal_default = AtModal;
103
89
  export {
104
- AtModal as default
90
+ modal_default as default
105
91
  };
106
92
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/modal/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport PropTypes, { InferProps } from 'prop-types'\nimport React from 'react'\nimport { Button, Text, View } from '@tarojs/components'\nimport { CommonEvent } from '@tarojs/components/types/common'\nimport Taro from '@tarojs/taro'\nimport { AtModalProps, AtModalState } from '../../../types/modal'\nimport { handleTouchScroll } from '../../common/utils'\nimport AtModalAction from './action/index'\nimport AtModalContent from './content/index'\nimport AtModalHeader from './header/index'\n\nexport default class AtModal extends React.Component<\n AtModalProps,\n AtModalState\n> {\n public static defaultProps: AtModalProps\n public static propTypes: InferProps<AtModalProps>\n\n public constructor(props: AtModalProps) {\n super(props)\n const { isOpened } = props\n this.state = {\n _isOpened: isOpened,\n isWEB: Taro.getEnv() === Taro.ENV_TYPE.WEB\n }\n }\n\n public UNSAFE_componentWillReceiveProps(nextProps: AtModalProps): void {\n const { isOpened } = nextProps\n\n if (this.props.isOpened !== isOpened) {\n handleTouchScroll(isOpened)\n }\n\n if (isOpened !== this.state._isOpened) {\n this.setState({\n _isOpened: isOpened\n })\n }\n }\n\n private handleClickOverlay = (): void => {\n if (this.props.closeOnClickOverlay) {\n this.setState(\n {\n _isOpened: false\n },\n this.handleClose\n )\n }\n }\n\n private handleClose = (event?: CommonEvent): void => {\n if (typeof this.props.onClose === 'function') {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n this.props.onClose(event!)\n }\n }\n\n private handleCancel = (event: CommonEvent): void => {\n if (typeof this.props.onCancel === 'function') {\n this.props.onCancel(event)\n }\n }\n\n private handleConfirm = (event: CommonEvent): void => {\n if (typeof this.props.onConfirm === 'function') {\n this.props.onConfirm(event)\n }\n }\n\n private handleTouchMove = (e: CommonEvent): void => {\n e.stopPropagation()\n }\n\n public render(): JSX.Element {\n const { _isOpened, isWEB } = this.state\n const { title, content, cancelText, confirmText } = this.props\n const rootClass = classNames(\n 'at-modal',\n {\n 'at-modal--active': _isOpened\n },\n this.props.className\n )\n\n if (title || content) {\n const isRenderAction = cancelText || confirmText\n return (\n <View className={rootClass}>\n <View\n onClick={this.handleClickOverlay}\n className='at-modal__overlay'\n />\n <View className='at-modal__container'>\n {title && (\n <AtModalHeader>\n <Text>{title}</Text>\n </AtModalHeader>\n )}\n {content && (\n <AtModalContent>\n <View className='content-simple'>\n {isWEB ? (\n <Text\n dangerouslySetInnerHTML={{\n __html: content.replace(/\\\\n/g, '<br/>')\n }}\n ></Text>\n ) : (\n <Text>{content}</Text>\n )}\n </View>\n </AtModalContent>\n )}\n {isRenderAction && (\n <AtModalAction isSimple>\n {cancelText && (\n <Button onClick={this.handleCancel}>{cancelText}</Button>\n )}\n {confirmText && (\n <Button onClick={this.handleConfirm}>{confirmText}</Button>\n )}\n </AtModalAction>\n )}\n </View>\n </View>\n )\n }\n\n return (\n <View onTouchMove={this.handleTouchMove} className={rootClass}>\n <View className='at-modal__overlay' onClick={this.handleClickOverlay} />\n <View className='at-modal__container'>{this.props.children}</View>\n </View>\n )\n }\n}\n\nAtModal.defaultProps = {\n isOpened: false,\n closeOnClickOverlay: true\n}\n\nAtModal.propTypes = {\n title: PropTypes.string,\n isOpened: PropTypes.bool,\n onCancel: PropTypes.func,\n onConfirm: PropTypes.func,\n onClose: PropTypes.func,\n content: PropTypes.string,\n closeOnClickOverlay: PropTypes.bool,\n cancelText: PropTypes.string,\n confirmText: PropTypes.string\n}\n"],"mappings":"AAAA,OAAO,gBAAgB;AACvB,OAAO,eAA+B;AACtC,OAAO,WAAW;AAClB,SAAS,QAAQ,MAAM,YAAY;AAEnC,OAAO,UAAU;AAEjB,SAAS,yBAAyB;AAClC,OAAO,mBAAmB;AAC1B,OAAO,oBAAoB;AAC3B,OAAO,mBAAmB;AAE1B,MAAO,gBAA8B,MAAM,UAGzC;AAAA,EAIO,YAAY,OAAqB;AACtC,UAAM,KAAK;AAsBb,SAAQ,qBAAqB,MAAY;AACvC,UAAI,KAAK,MAAM,qBAAqB;AAClC,aAAK;AAAA,UACH;AAAA,YACE,WAAW;AAAA,UACb;AAAA,UACA,KAAK;AAAA,QACP;AAAA,MACF;AAAA,IACF;AAEA,SAAQ,cAAc,CAAC,UAA8B;AACnD,UAAI,OAAO,KAAK,MAAM,YAAY,YAAY;AAE5C,aAAK,MAAM,QAAQ,KAAM;AAAA,MAC3B;AAAA,IACF;AAEA,SAAQ,eAAe,CAAC,UAA6B;AACnD,UAAI,OAAO,KAAK,MAAM,aAAa,YAAY;AAC7C,aAAK,MAAM,SAAS,KAAK;AAAA,MAC3B;AAAA,IACF;AAEA,SAAQ,gBAAgB,CAAC,UAA6B;AACpD,UAAI,OAAO,KAAK,MAAM,cAAc,YAAY;AAC9C,aAAK,MAAM,UAAU,KAAK;AAAA,MAC5B;AAAA,IACF;AAEA,SAAQ,kBAAkB,CAAC,MAAyB;AAClD,QAAE,gBAAgB;AAAA,IACpB;AArDE,UAAM,EAAE,SAAS,IAAI;AACrB,SAAK,QAAQ;AAAA,MACX,WAAW;AAAA,MACX,OAAO,KAAK,OAAO,MAAM,KAAK,SAAS;AAAA,IACzC;AAAA,EACF;AAAA,EAEO,iCAAiC,WAA+B;AACrE,UAAM,EAAE,SAAS,IAAI;AAErB,QAAI,KAAK,MAAM,aAAa,UAAU;AACpC,wBAAkB,QAAQ;AAAA,IAC5B;AAEA,QAAI,aAAa,KAAK,MAAM,WAAW;AACrC,WAAK,SAAS;AAAA,QACZ,WAAW;AAAA,MACb,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EAoCO,SAAsB;AAC3B,UAAM,EAAE,WAAW,MAAM,IAAI,KAAK;AAClC,UAAM,EAAE,OAAO,SAAS,YAAY,YAAY,IAAI,KAAK;AACzD,UAAM,YAAY;AAAA,MAChB;AAAA,MACA;AAAA,QACE,oBAAoB;AAAA,MACtB;AAAA,MACA,KAAK,MAAM;AAAA,IACb;AAEA,QAAI,SAAS,SAAS;AACpB,YAAM,iBAAiB,cAAc;AACrC,aACE,oCAAC,QAAK,WAAW,aACf;AAAA,QAAC;AAAA;AAAA,UACC,SAAS,KAAK;AAAA,UACd,WAAU;AAAA;AAAA,MACZ,GACA,oCAAC,QAAK,WAAU,yBACb,SACC,oCAAC,qBACC,oCAAC,YAAM,KAAM,CACf,GAED,WACC,oCAAC,sBACC,oCAAC,QAAK,WAAU,oBACb,QACC;AAAA,QAAC;AAAA;AAAA,UACC,yBAAyB;AAAA,YACvB,QAAQ,QAAQ,QAAQ,QAAQ,OAAO;AAAA,UACzC;AAAA;AAAA,MACD,IAED,oCAAC,YAAM,OAAQ,CAEnB,CACF,GAED,kBACC,oCAAC,iBAAc,UAAQ,QACpB,cACC,oCAAC,UAAO,SAAS,KAAK,gBAAe,UAAW,GAEjD,eACC,oCAAC,UAAO,SAAS,KAAK,iBAAgB,WAAY,CAEtD,CAEJ,CACF;AAAA,IAEJ;AAEA,WACE,oCAAC,QAAK,aAAa,KAAK,iBAAiB,WAAW,aAClD,oCAAC,QAAK,WAAU,qBAAoB,SAAS,KAAK,oBAAoB,GACtE,oCAAC,QAAK,WAAU,yBAAuB,KAAK,MAAM,QAAS,CAC7D;AAAA,EAEJ;AACF;AAEA,QAAQ,eAAe;AAAA,EACrB,UAAU;AAAA,EACV,qBAAqB;AACvB;AAEA,QAAQ,YAAY;AAAA,EAClB,OAAO,UAAU;AAAA,EACjB,UAAU,UAAU;AAAA,EACpB,UAAU,UAAU;AAAA,EACpB,WAAW,UAAU;AAAA,EACrB,SAAS,UAAU;AAAA,EACnB,SAAS,UAAU;AAAA,EACnB,qBAAqB,UAAU;AAAA,EAC/B,YAAY,UAAU;AAAA,EACtB,aAAa,UAAU;AACzB;","names":[]}
1
+ {"version":3,"sources":["../../../src/components/modal/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport PropTypes from 'prop-types'\nimport React, { useEffect, useRef, useState } from 'react'\nimport { Button, Text, View } from '@tarojs/components'\nimport { CommonEvent } from '@tarojs/components/types/common'\nimport Taro from '@tarojs/taro'\nimport { AtModalProps } from '../../../types/modal'\nimport { handleTouchScroll } from '../../common/utils'\nimport AtModalAction from './action/index'\nimport AtModalContent from './content/index'\nimport AtModalHeader from './header/index'\n\nfunction AtModal({\n isOpened = false,\n closeOnClickOverlay = true,\n title,\n content,\n cancelText,\n confirmText,\n className,\n children,\n onClose,\n onCancel,\n onConfirm\n}: AtModalProps): JSX.Element {\n const [_isOpened, setIsOpened] = useState(isOpened)\n const prevIsOpenedPropRef = useRef(isOpened)\n const isWEB = Taro.getEnv() === Taro.ENV_TYPE.WEB\n\n useEffect(() => {\n if (prevIsOpenedPropRef.current !== isOpened) {\n handleTouchScroll(isOpened)\n prevIsOpenedPropRef.current = isOpened\n }\n setIsOpened(prev => (isOpened !== prev ? isOpened : prev))\n }, [isOpened])\n\n const handleClose = (event?: CommonEvent): void => {\n if (typeof onClose === 'function') {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n onClose(event!)\n }\n }\n\n const handleClickOverlay = (): void => {\n if (closeOnClickOverlay) {\n setIsOpened(false)\n handleClose()\n }\n }\n\n const handleCancel = (event: CommonEvent): void => {\n if (typeof onCancel === 'function') {\n onCancel(event)\n }\n }\n\n const handleConfirm = (event: CommonEvent): void => {\n if (typeof onConfirm === 'function') {\n onConfirm(event)\n }\n }\n\n const handleTouchMove = (e: CommonEvent): void => {\n e.stopPropagation()\n }\n\n const rootClass = classNames(\n 'at-modal',\n {\n 'at-modal--active': _isOpened\n },\n className\n )\n\n if (title || content) {\n const isRenderAction = cancelText || confirmText\n return (\n <View className={rootClass}>\n <View onClick={handleClickOverlay} className='at-modal__overlay' />\n <View className='at-modal__container'>\n {title && (\n <AtModalHeader>\n <Text>{title}</Text>\n </AtModalHeader>\n )}\n {content && (\n <AtModalContent>\n <View className='content-simple'>\n {isWEB ? (\n <Text\n dangerouslySetInnerHTML={{\n __html: content.replace(/\\\\n/g, '<br/>')\n }}\n ></Text>\n ) : (\n <Text>{content}</Text>\n )}\n </View>\n </AtModalContent>\n )}\n {isRenderAction && (\n <AtModalAction isSimple>\n {cancelText && (\n <Button onClick={handleCancel}>{cancelText}</Button>\n )}\n {confirmText && (\n <Button onClick={handleConfirm}>{confirmText}</Button>\n )}\n </AtModalAction>\n )}\n </View>\n </View>\n )\n }\n\n return (\n <View onTouchMove={handleTouchMove} className={rootClass}>\n <View className='at-modal__overlay' onClick={handleClickOverlay} />\n <View className='at-modal__container'>{children}</View>\n </View>\n )\n}\n\nAtModal.propTypes = {\n title: PropTypes.string,\n isOpened: PropTypes.bool,\n onCancel: PropTypes.func,\n onConfirm: PropTypes.func,\n onClose: PropTypes.func,\n content: PropTypes.string,\n closeOnClickOverlay: PropTypes.bool,\n cancelText: PropTypes.string,\n confirmText: PropTypes.string\n}\n\nexport default AtModal\n"],"mappings":"AAAA,OAAO,gBAAgB;AACvB,OAAO,eAAe;AACtB,OAAO,SAAS,WAAW,QAAQ,gBAAgB;AACnD,SAAS,QAAQ,MAAM,YAAY;AAEnC,OAAO,UAAU;AAEjB,SAAS,yBAAyB;AAClC,OAAO,mBAAmB;AAC1B,OAAO,oBAAoB;AAC3B,OAAO,mBAAmB;AAE1B,SAAS,QAAQ;AAAA,EACf,WAAW;AAAA,EACX,sBAAsB;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA8B;AAC5B,QAAM,CAAC,WAAW,WAAW,IAAI,SAAS,QAAQ;AAClD,QAAM,sBAAsB,OAAO,QAAQ;AAC3C,QAAM,QAAQ,KAAK,OAAO,MAAM,KAAK,SAAS;AAE9C,YAAU,MAAM;AACd,QAAI,oBAAoB,YAAY,UAAU;AAC5C,wBAAkB,QAAQ;AAC1B,0BAAoB,UAAU;AAAA,IAChC;AACA,gBAAY,UAAS,aAAa,OAAO,WAAW,IAAK;AAAA,EAC3D,GAAG,CAAC,QAAQ,CAAC;AAEb,QAAM,cAAc,CAAC,UAA8B;AACjD,QAAI,OAAO,YAAY,YAAY;AAEjC,cAAQ,KAAM;AAAA,IAChB;AAAA,EACF;AAEA,QAAM,qBAAqB,MAAY;AACrC,QAAI,qBAAqB;AACvB,kBAAY,KAAK;AACjB,kBAAY;AAAA,IACd;AAAA,EACF;AAEA,QAAM,eAAe,CAAC,UAA6B;AACjD,QAAI,OAAO,aAAa,YAAY;AAClC,eAAS,KAAK;AAAA,IAChB;AAAA,EACF;AAEA,QAAM,gBAAgB,CAAC,UAA6B;AAClD,QAAI,OAAO,cAAc,YAAY;AACnC,gBAAU,KAAK;AAAA,IACjB;AAAA,EACF;AAEA,QAAM,kBAAkB,CAAC,MAAyB;AAChD,MAAE,gBAAgB;AAAA,EACpB;AAEA,QAAM,YAAY;AAAA,IAChB;AAAA,IACA;AAAA,MACE,oBAAoB;AAAA,IACtB;AAAA,IACA;AAAA,EACF;AAEA,MAAI,SAAS,SAAS;AACpB,UAAM,iBAAiB,cAAc;AACrC,WACE,oCAAC,QAAK,WAAW,aACf,oCAAC,QAAK,SAAS,oBAAoB,WAAU,qBAAoB,GACjE,oCAAC,QAAK,WAAU,yBACb,SACC,oCAAC,qBACC,oCAAC,YAAM,KAAM,CACf,GAED,WACC,oCAAC,sBACC,oCAAC,QAAK,WAAU,oBACb,QACC;AAAA,MAAC;AAAA;AAAA,QACC,yBAAyB;AAAA,UACvB,QAAQ,QAAQ,QAAQ,QAAQ,OAAO;AAAA,QACzC;AAAA;AAAA,IACD,IAED,oCAAC,YAAM,OAAQ,CAEnB,CACF,GAED,kBACC,oCAAC,iBAAc,UAAQ,QACpB,cACC,oCAAC,UAAO,SAAS,gBAAe,UAAW,GAE5C,eACC,oCAAC,UAAO,SAAS,iBAAgB,WAAY,CAEjD,CAEJ,CACF;AAAA,EAEJ;AAEA,SACE,oCAAC,QAAK,aAAa,iBAAiB,WAAW,aAC7C,oCAAC,QAAK,WAAU,qBAAoB,SAAS,oBAAoB,GACjE,oCAAC,QAAK,WAAU,yBAAuB,QAAS,CAClD;AAEJ;AAEA,QAAQ,YAAY;AAAA,EAClB,OAAO,UAAU;AAAA,EACjB,UAAU,UAAU;AAAA,EACpB,UAAU,UAAU;AAAA,EACpB,WAAW,UAAU;AAAA,EACrB,SAAS,UAAU;AAAA,EACnB,SAAS,UAAU;AAAA,EACnB,qBAAqB,UAAU;AAAA,EAC/B,YAAY,UAAU;AAAA,EACtB,aAAa,UAAU;AACzB;AAEA,IAAO,gBAAQ;","names":[]}
@@ -1,12 +1,22 @@
1
- import { InferProps } from 'prop-types';
2
- import React from 'react';
1
+ import PropTypes from 'prop-types';
3
2
  import { AtNavBarProps } from '../../../types/nav-bar';
4
- export default class AtNavBar extends React.Component<AtNavBarProps> {
5
- static defaultProps: AtNavBarProps;
6
- static propTypes: InferProps<AtNavBarProps>;
7
- private handleClickLeftView;
8
- private handleClickSt;
9
- private handleClickNd;
10
- private handleClickTitle;
11
- render(): JSX.Element;
3
+ declare function AtNavBar({ customStyle, className, fixed, border, color, leftIconType, leftText, title, rightFirstIconType, rightSecondIconType, children, onClickLeftIcon, onClickRgIconSt, onClickRgIconNd, onClickTitle }: AtNavBarProps): JSX.Element;
4
+ declare namespace AtNavBar {
5
+ var propTypes: {
6
+ customStyle: PropTypes.Requireable<NonNullable<string | object | null | undefined>>;
7
+ className: PropTypes.Requireable<NonNullable<string | any[] | null | undefined>>;
8
+ fixed: PropTypes.Requireable<boolean>;
9
+ border: PropTypes.Requireable<boolean>;
10
+ color: PropTypes.Requireable<string>;
11
+ leftIconType: PropTypes.Requireable<NonNullable<string | object | null | undefined>>;
12
+ leftText: PropTypes.Requireable<string>;
13
+ title: PropTypes.Requireable<string>;
14
+ rightFirstIconType: PropTypes.Requireable<NonNullable<string | object | null | undefined>>;
15
+ rightSecondIconType: PropTypes.Requireable<NonNullable<string | object | null | undefined>>;
16
+ onClickLeftIcon: PropTypes.Requireable<(...args: any[]) => any>;
17
+ onClickRgIconSt: PropTypes.Requireable<(...args: any[]) => any>;
18
+ onClickRgIconNd: PropTypes.Requireable<(...args: any[]) => any>;
19
+ onClickTitle: PropTypes.Requireable<(...args: any[]) => any>;
20
+ };
12
21
  }
22
+ export default AtNavBar;