@hero-design/rn 8.81.3-alpha.0 → 8.82.0-alpha.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 (336) hide show
  1. package/CHANGELOG.md +5 -1
  2. package/package.json +1 -1
  3. package/sonar-project.properties +1 -1
  4. package/src/components/DatePicker/DatePickerAndroid.tsx +23 -5
  5. package/src/components/DatePicker/DatePickerIOS.tsx +39 -19
  6. package/src/components/DatePicker/__tests__/DatePickerAndroid.spec.tsx +25 -0
  7. package/src/components/DatePicker/__tests__/DatePickerIOS.spec.tsx +29 -0
  8. package/src/components/DatePicker/index.tsx +2 -2
  9. package/src/components/DatePicker/types.ts +2 -1
  10. package/testUtils/setup.tsx +22 -11
  11. package/es/index.js +0 -37346
  12. package/lib/assets/fonts/hero-icons-mobile.ttf +0 -0
  13. package/lib/index.js +0 -37443
  14. package/types/components/Accordion/AccordionItem.d.ts +0 -15
  15. package/types/components/Accordion/StyledAccordion.d.ts +0 -32
  16. package/types/components/Accordion/index.d.ts +0 -39
  17. package/types/components/Alert/StyledAlert.d.ts +0 -53
  18. package/types/components/Alert/index.d.ts +0 -58
  19. package/types/components/AnimatedScroller/AnimatedFAB.d.ts +0 -12
  20. package/types/components/AnimatedScroller/AnimatedScrollable.d.ts +0 -16
  21. package/types/components/AnimatedScroller/FlatListWithFAB.d.ts +0 -12
  22. package/types/components/AnimatedScroller/ScrollViewWithFAB.d.ts +0 -12
  23. package/types/components/AnimatedScroller/SectionListWithFAB.d.ts +0 -12
  24. package/types/components/AnimatedScroller/index.d.ts +0 -4
  25. package/types/components/Attachment/StyledAttachment.d.ts +0 -28
  26. package/types/components/Attachment/index.d.ts +0 -38
  27. package/types/components/Avatar/Avatar.d.ts +0 -34
  28. package/types/components/Avatar/AvatarStack/StyledAvatarStack.d.ts +0 -30
  29. package/types/components/Avatar/AvatarStack/index.d.ts +0 -35
  30. package/types/components/Avatar/AvatarStack/utils.d.ts +0 -4
  31. package/types/components/Avatar/StyledAvatar.d.ts +0 -34
  32. package/types/components/Avatar/index.d.ts +0 -6
  33. package/types/components/Badge/Status.d.ts +0 -24
  34. package/types/components/Badge/StyledBadge.d.ts +0 -33
  35. package/types/components/Badge/index.d.ts +0 -6
  36. package/types/components/Badge/types.d.ts +0 -53
  37. package/types/components/BottomNavigation/StyledBottomNavigation.d.ts +0 -51
  38. package/types/components/BottomNavigation/index.d.ts +0 -45
  39. package/types/components/BottomSheet/BottomSheetContext.d.ts +0 -5
  40. package/types/components/BottomSheet/Footer.d.ts +0 -7
  41. package/types/components/BottomSheet/Header.d.ts +0 -10
  42. package/types/components/BottomSheet/ScrollView.d.ts +0 -3
  43. package/types/components/BottomSheet/StyledBottomSheet.d.ts +0 -61
  44. package/types/components/BottomSheet/index.d.ts +0 -74
  45. package/types/components/Box/StyledBox.d.ts +0 -15
  46. package/types/components/Box/config.d.ts +0 -170
  47. package/types/components/Box/index.d.ts +0 -6
  48. package/types/components/Box/types.d.ts +0 -31
  49. package/types/components/Button/Button.d.ts +0 -57
  50. package/types/components/Button/IconButton.d.ts +0 -39
  51. package/types/components/Button/LoadingIndicator/StyledLoadingIndicator.d.ts +0 -20
  52. package/types/components/Button/LoadingIndicator/index.d.ts +0 -27
  53. package/types/components/Button/StyledButton.d.ts +0 -48
  54. package/types/components/Button/UtilityButton/StyledUtilityButton.d.ts +0 -17
  55. package/types/components/Button/UtilityButton/index.d.ts +0 -24
  56. package/types/components/Button/index.d.ts +0 -10
  57. package/types/components/Calendar/CalendarRowItem.d.ts +0 -12
  58. package/types/components/Calendar/StyledCalendar.d.ts +0 -62
  59. package/types/components/Calendar/helpers.d.ts +0 -3
  60. package/types/components/Calendar/index.d.ts +0 -58
  61. package/types/components/Card/DataCard/StyledDataCard.d.ts +0 -16
  62. package/types/components/Card/DataCard/index.d.ts +0 -22
  63. package/types/components/Card/StyledCard.d.ts +0 -11
  64. package/types/components/Card/index.d.ts +0 -25
  65. package/types/components/Carousel/CardCarousel.d.ts +0 -42
  66. package/types/components/Carousel/CarouselItem.d.ts +0 -7
  67. package/types/components/Carousel/StyledCardCarousel.d.ts +0 -24
  68. package/types/components/Carousel/StyledCarousel.d.ts +0 -54
  69. package/types/components/Carousel/contants.d.ts +0 -2
  70. package/types/components/Carousel/index.d.ts +0 -44
  71. package/types/components/Carousel/types.d.ts +0 -14
  72. package/types/components/Checkbox/StyledCheckbox.d.ts +0 -35
  73. package/types/components/Checkbox/index.d.ts +0 -44
  74. package/types/components/Chip/StyledChip.d.ts +0 -16
  75. package/types/components/Chip/index.d.ts +0 -31
  76. package/types/components/Collapse/StyledCollapse.d.ts +0 -23
  77. package/types/components/Collapse/index.d.ts +0 -20
  78. package/types/components/ContentNavigator/StyledContentNavigator.d.ts +0 -8
  79. package/types/components/ContentNavigator/index.d.ts +0 -43
  80. package/types/components/DatePicker/DatePickerAndroid.d.ts +0 -4
  81. package/types/components/DatePicker/DatePickerCalendar.d.ts +0 -4
  82. package/types/components/DatePicker/DatePickerIOS.d.ts +0 -4
  83. package/types/components/DatePicker/StyledDatePicker.d.ts +0 -9
  84. package/types/components/DatePicker/index.d.ts +0 -4
  85. package/types/components/DatePicker/types.d.ts +0 -78
  86. package/types/components/DatePicker/useCalculateDate.d.ts +0 -4
  87. package/types/components/Divider/StyledDivider.d.ts +0 -12
  88. package/types/components/Divider/index.d.ts +0 -22
  89. package/types/components/Drawer/DragableDrawer/helpers.d.ts +0 -8
  90. package/types/components/Drawer/DragableDrawer/index.d.ts +0 -33
  91. package/types/components/Drawer/StyledDrawer.d.ts +0 -49
  92. package/types/components/Drawer/index.d.ts +0 -27
  93. package/types/components/Empty/StyledEmpty.d.ts +0 -21
  94. package/types/components/Empty/index.d.ts +0 -31
  95. package/types/components/Error/StyledError.d.ts +0 -53
  96. package/types/components/Error/index.d.ts +0 -56
  97. package/types/components/FAB/ActionGroup/ActionItem.d.ts +0 -18
  98. package/types/components/FAB/ActionGroup/StyledActionGroup.d.ts +0 -27
  99. package/types/components/FAB/ActionGroup/StyledActionItem.d.ts +0 -18
  100. package/types/components/FAB/ActionGroup/index.d.ts +0 -54
  101. package/types/components/FAB/AnimatedFABIcon.d.ts +0 -7
  102. package/types/components/FAB/FAB.d.ts +0 -40
  103. package/types/components/FAB/Pair/StyledFAB.d.ts +0 -12
  104. package/types/components/FAB/Pair/index.d.ts +0 -16
  105. package/types/components/FAB/StyledFAB.d.ts +0 -21
  106. package/types/components/FAB/index.d.ts +0 -5
  107. package/types/components/FloatingIsland/StyledFloatingIsland.d.ts +0 -19
  108. package/types/components/FloatingIsland/index.d.ts +0 -23
  109. package/types/components/HeroDesignProvider/index.d.ts +0 -4
  110. package/types/components/Icon/AnimatedIcon.d.ts +0 -6
  111. package/types/components/Icon/HeroIcon/index.d.ts +0 -12
  112. package/types/components/Icon/IconList.d.ts +0 -2
  113. package/types/components/Icon/index.d.ts +0 -35
  114. package/types/components/Icon/utils.d.ts +0 -2
  115. package/types/components/Image/index.d.ts +0 -17
  116. package/types/components/List/BasicListItem.d.ts +0 -43
  117. package/types/components/List/ListItem.d.ts +0 -52
  118. package/types/components/List/StyledBasicListItem.d.ts +0 -29
  119. package/types/components/List/StyledListItem.d.ts +0 -51
  120. package/types/components/List/index.d.ts +0 -8
  121. package/types/components/MapPin/Focussed.d.ts +0 -13
  122. package/types/components/MapPin/StyledMapPin.d.ts +0 -31
  123. package/types/components/MapPin/index.d.ts +0 -5
  124. package/types/components/MapPin/types.d.ts +0 -38
  125. package/types/components/Modal/index.d.ts +0 -37
  126. package/types/components/PageControl/StyledPageControl.d.ts +0 -12
  127. package/types/components/PageControl/index.d.ts +0 -22
  128. package/types/components/PinInput/PinCell.d.ts +0 -9
  129. package/types/components/PinInput/StyledPinInput.d.ts +0 -69
  130. package/types/components/PinInput/index.d.ts +0 -69
  131. package/types/components/Portal/PortalHost.d.ts +0 -5
  132. package/types/components/Portal/PortalProvider.d.ts +0 -7
  133. package/types/components/Portal/constants.d.ts +0 -8
  134. package/types/components/Portal/contexts.d.ts +0 -9
  135. package/types/components/Portal/index.d.ts +0 -18
  136. package/types/components/Portal/reducer.d.ts +0 -5
  137. package/types/components/Portal/types.d.ts +0 -22
  138. package/types/components/Portal/usePortal.d.ts +0 -8
  139. package/types/components/Portal/usePortalState.d.ts +0 -1
  140. package/types/components/Progress/ProgressBar.d.ts +0 -18
  141. package/types/components/Progress/ProgressCircle.d.ts +0 -20
  142. package/types/components/Progress/ProgressStep.d.ts +0 -20
  143. package/types/components/Progress/StyledProgressBar.d.ts +0 -18
  144. package/types/components/Progress/StyledProgressCircle.d.ts +0 -46
  145. package/types/components/Progress/StyledStep.d.ts +0 -23
  146. package/types/components/Progress/__tests__/index.spec.d.ts +0 -1
  147. package/types/components/Progress/constants.d.ts +0 -15
  148. package/types/components/Progress/index.d.ts +0 -6
  149. package/types/components/Progress/types.d.ts +0 -1
  150. package/types/components/Radio/Radio.d.ts +0 -38
  151. package/types/components/Radio/RadioGroup.d.ts +0 -36
  152. package/types/components/Radio/StyledRadio.d.ts +0 -30
  153. package/types/components/Radio/index.d.ts +0 -4
  154. package/types/components/Radio/types.d.ts +0 -8
  155. package/types/components/Rate/StyledRate.d.ts +0 -10
  156. package/types/components/Rate/index.d.ts +0 -29
  157. package/types/components/RefreshControl/index.d.ts +0 -5
  158. package/types/components/RichTextEditor/EditorEvent.d.ts +0 -4
  159. package/types/components/RichTextEditor/EditorToolbar.d.ts +0 -18
  160. package/types/components/RichTextEditor/MentionList.d.ts +0 -17
  161. package/types/components/RichTextEditor/RichTextEditor.d.ts +0 -70
  162. package/types/components/RichTextEditor/StyledRichTextEditor.d.ts +0 -16
  163. package/types/components/RichTextEditor/StyledToolbar.d.ts +0 -21
  164. package/types/components/RichTextEditor/__mocks__/heroEditorApp.d.ts +0 -2
  165. package/types/components/RichTextEditor/constants.d.ts +0 -9
  166. package/types/components/RichTextEditor/heroEditorApp.d.ts +0 -2
  167. package/types/components/RichTextEditor/index.d.ts +0 -7
  168. package/types/components/RichTextEditor/types.d.ts +0 -1
  169. package/types/components/RichTextEditor/utils/events.d.ts +0 -8
  170. package/types/components/RichTextEditor/utils/rnWebView.d.ts +0 -7
  171. package/types/components/Search/SearchOneLine.d.ts +0 -69
  172. package/types/components/Search/SearchSuffixIcon.d.ts +0 -24
  173. package/types/components/Search/SearchTwoLine.d.ts +0 -36
  174. package/types/components/Search/StyledSearch.d.ts +0 -49
  175. package/types/components/Search/index.d.ts +0 -10
  176. package/types/components/Search/utils.d.ts +0 -8
  177. package/types/components/SectionHeading/StyledHeading.d.ts +0 -23
  178. package/types/components/SectionHeading/index.d.ts +0 -45
  179. package/types/components/Select/BaseOptionList.d.ts +0 -8
  180. package/types/components/Select/Footer.d.ts +0 -6
  181. package/types/components/Select/MultiSelect/Option.d.ts +0 -10
  182. package/types/components/Select/MultiSelect/OptionList.d.ts +0 -9
  183. package/types/components/Select/MultiSelect/index.d.ts +0 -30
  184. package/types/components/Select/SingleSelect/Option.d.ts +0 -10
  185. package/types/components/Select/SingleSelect/OptionList.d.ts +0 -11
  186. package/types/components/Select/SingleSelect/StyledSingleSelect.d.ts +0 -1
  187. package/types/components/Select/SingleSelect/index.d.ts +0 -23
  188. package/types/components/Select/StyledSelect.d.ts +0 -21
  189. package/types/components/Select/helpers.d.ts +0 -14
  190. package/types/components/Select/index.d.ts +0 -8
  191. package/types/components/Select/types.d.ts +0 -84
  192. package/types/components/Skeleton/StyledSkeleton.d.ts +0 -16
  193. package/types/components/Skeleton/index.d.ts +0 -14
  194. package/types/components/Slider/index.d.ts +0 -53
  195. package/types/components/Spinner/AnimatedSpinner.d.ts +0 -6
  196. package/types/components/Spinner/StyledSpinner.d.ts +0 -34
  197. package/types/components/Spinner/index.d.ts +0 -18
  198. package/types/components/Success/StyledSuccess.d.ts +0 -49
  199. package/types/components/Success/index.d.ts +0 -50
  200. package/types/components/Swipeable/StyledSwipeable.d.ts +0 -10
  201. package/types/components/Swipeable/SwipeableAction.d.ts +0 -27
  202. package/types/components/Swipeable/index.d.ts +0 -49
  203. package/types/components/Switch/SelectorSwitch/Option.d.ts +0 -16
  204. package/types/components/Switch/SelectorSwitch/StyledSelectorSwitch.d.ts +0 -19
  205. package/types/components/Switch/SelectorSwitch/index.d.ts +0 -37
  206. package/types/components/Switch/StyledSwitch.d.ts +0 -15
  207. package/types/components/Switch/index.d.ts +0 -28
  208. package/types/components/Tabs/ActiveTabIndicator.d.ts +0 -9
  209. package/types/components/Tabs/SceneView.d.ts +0 -10
  210. package/types/components/Tabs/ScrollableTabs.d.ts +0 -7
  211. package/types/components/Tabs/ScrollableTabsHeader/ScrollableTabsHeader.d.ts +0 -40
  212. package/types/components/Tabs/ScrollableTabsHeader/hooks/useInitHighlightedAnimation.d.ts +0 -9
  213. package/types/components/Tabs/ScrollableTabsHeader/hooks/useInitUnderlinedAnimation.d.ts +0 -10
  214. package/types/components/Tabs/StyledScrollableTabs.d.ts +0 -55
  215. package/types/components/Tabs/StyledTabs.d.ts +0 -51
  216. package/types/components/Tabs/TabWithBadge.d.ts +0 -16
  217. package/types/components/Tabs/index.d.ts +0 -62
  218. package/types/components/Tabs/useHandlePageScroll.d.ts +0 -8
  219. package/types/components/Tabs/useIsFocused.d.ts +0 -6
  220. package/types/components/Tabs/utils.d.ts +0 -2
  221. package/types/components/Tag/StyledTag.d.ts +0 -17
  222. package/types/components/Tag/index.d.ts +0 -27
  223. package/types/components/TextInput/StyledTextInput.d.ts +0 -86
  224. package/types/components/TextInput/index.d.ts +0 -124
  225. package/types/components/TimePicker/StyledTimePicker.d.ts +0 -9
  226. package/types/components/TimePicker/TimePickerAndroid.d.ts +0 -4
  227. package/types/components/TimePicker/TimePickerIOS.d.ts +0 -4
  228. package/types/components/TimePicker/index.d.ts +0 -4
  229. package/types/components/TimePicker/types.d.ts +0 -61
  230. package/types/components/Toast/StyledToast.d.ts +0 -59
  231. package/types/components/Toast/Toast.d.ts +0 -3
  232. package/types/components/Toast/ToastContainer.d.ts +0 -5
  233. package/types/components/Toast/ToastContext.d.ts +0 -12
  234. package/types/components/Toast/ToastProvider.d.ts +0 -11
  235. package/types/components/Toast/index.d.ts +0 -8
  236. package/types/components/Toast/types.d.ts +0 -72
  237. package/types/components/Toolbar/StyledToolbar.d.ts +0 -71
  238. package/types/components/Toolbar/ToolbarGroup.d.ts +0 -14
  239. package/types/components/Toolbar/ToolbarItem.d.ts +0 -31
  240. package/types/components/Toolbar/ToolbarMessage.d.ts +0 -59
  241. package/types/components/Toolbar/index.d.ts +0 -14
  242. package/types/components/Typography/Body/StyledBody.d.ts +0 -14
  243. package/types/components/Typography/Body/__tests__/StyledBody.d.ts +0 -1
  244. package/types/components/Typography/Body/index.d.ts +0 -33
  245. package/types/components/Typography/Caption/StyledCaption.d.ts +0 -12
  246. package/types/components/Typography/Caption/index.d.ts +0 -27
  247. package/types/components/Typography/Label/StyledLabel.d.ts +0 -11
  248. package/types/components/Typography/Label/__tests__/StyledLabel.d.ts +0 -1
  249. package/types/components/Typography/Label/index.d.ts +0 -23
  250. package/types/components/Typography/Text/StyledText.d.ts +0 -13
  251. package/types/components/Typography/Text/index.d.ts +0 -37
  252. package/types/components/Typography/Title/StyledTitle.d.ts +0 -14
  253. package/types/components/Typography/Title/__tests__/StyledTitle.d.ts +0 -1
  254. package/types/components/Typography/Title/index.d.ts +0 -33
  255. package/types/components/Typography/index.d.ts +0 -17
  256. package/types/components/Typography/types.d.ts +0 -6
  257. package/types/index.d.ts +0 -57
  258. package/types/testHelpers/renderWithTheme.d.ts +0 -3
  259. package/types/testHelpers/utils.d.ts +0 -1
  260. package/types/theme/ThemeProvider.d.ts +0 -12
  261. package/types/theme/ThemeSwitcher.d.ts +0 -8
  262. package/types/theme/components/accordion.d.ts +0 -13
  263. package/types/theme/components/alert.d.ts +0 -36
  264. package/types/theme/components/attachment.d.ts +0 -21
  265. package/types/theme/components/avatar.d.ts +0 -50
  266. package/types/theme/components/badge.d.ts +0 -56
  267. package/types/theme/components/bottomNavigation.d.ts +0 -23
  268. package/types/theme/components/bottomSheet.d.ts +0 -38
  269. package/types/theme/components/button.d.ts +0 -72
  270. package/types/theme/components/calendar.d.ts +0 -28
  271. package/types/theme/components/card.d.ts +0 -21
  272. package/types/theme/components/cardCarousel.d.ts +0 -15
  273. package/types/theme/components/carousel.d.ts +0 -36
  274. package/types/theme/components/checkbox.d.ts +0 -27
  275. package/types/theme/components/chip.d.ts +0 -43
  276. package/types/theme/components/contentNavigator.d.ts +0 -7
  277. package/types/theme/components/datePicker.d.ts +0 -7
  278. package/types/theme/components/divider.d.ts +0 -17
  279. package/types/theme/components/drawer.d.ts +0 -30
  280. package/types/theme/components/empty.d.ts +0 -37
  281. package/types/theme/components/error.d.ts +0 -51
  282. package/types/theme/components/fab.d.ts +0 -71
  283. package/types/theme/components/floatingIsland.d.ts +0 -32
  284. package/types/theme/components/icon.d.ts +0 -23
  285. package/types/theme/components/image.d.ts +0 -8
  286. package/types/theme/components/list.d.ts +0 -46
  287. package/types/theme/components/mapPin.d.ts +0 -39
  288. package/types/theme/components/pageControl.d.ts +0 -18
  289. package/types/theme/components/pinInput.d.ts +0 -57
  290. package/types/theme/components/progress.d.ts +0 -51
  291. package/types/theme/components/radio.d.ts +0 -24
  292. package/types/theme/components/rate.d.ts +0 -11
  293. package/types/theme/components/refreshControl.d.ts +0 -7
  294. package/types/theme/components/richTextEditor.d.ts +0 -28
  295. package/types/theme/components/search.d.ts +0 -64
  296. package/types/theme/components/sectionHeading.d.ts +0 -14
  297. package/types/theme/components/select.d.ts +0 -18
  298. package/types/theme/components/skeleton.d.ts +0 -17
  299. package/types/theme/components/slider.d.ts +0 -9
  300. package/types/theme/components/spinner.d.ts +0 -27
  301. package/types/theme/components/success.d.ts +0 -43
  302. package/types/theme/components/swipeable.d.ts +0 -16
  303. package/types/theme/components/switch.d.ts +0 -38
  304. package/types/theme/components/tabs.d.ts +0 -30
  305. package/types/theme/components/tag.d.ts +0 -53
  306. package/types/theme/components/textInput.d.ts +0 -87
  307. package/types/theme/components/timePicker.d.ts +0 -7
  308. package/types/theme/components/toast.d.ts +0 -50
  309. package/types/theme/components/toolbar.d.ts +0 -47
  310. package/types/theme/components/typography.d.ts +0 -165
  311. package/types/theme/getTheme.d.ts +0 -106
  312. package/types/theme/global/borders.d.ts +0 -18
  313. package/types/theme/global/colors/eBens.d.ts +0 -3
  314. package/types/theme/global/colors/global.d.ts +0 -3
  315. package/types/theme/global/colors/globalDark.d.ts +0 -3
  316. package/types/theme/global/colors/jobs.d.ts +0 -3
  317. package/types/theme/global/colors/swag.d.ts +0 -3
  318. package/types/theme/global/colors/swagDark.d.ts +0 -3
  319. package/types/theme/global/colors/swagLight.d.ts +0 -3
  320. package/types/theme/global/colors/swagLightGlobal.d.ts +0 -3
  321. package/types/theme/global/colors/swagLightJobs.d.ts +0 -48
  322. package/types/theme/global/colors/types.d.ts +0 -50
  323. package/types/theme/global/colors/wallet.d.ts +0 -3
  324. package/types/theme/global/colors/work.d.ts +0 -3
  325. package/types/theme/global/index.d.ts +0 -82
  326. package/types/theme/global/scale.d.ts +0 -14
  327. package/types/theme/global/shadows.d.ts +0 -16
  328. package/types/theme/global/sizes.d.ts +0 -14
  329. package/types/theme/global/space.d.ts +0 -16
  330. package/types/theme/global/typography.d.ts +0 -31
  331. package/types/theme/index.d.ts +0 -9
  332. package/types/types.d.ts +0 -14
  333. package/types/utils/functions.d.ts +0 -1
  334. package/types/utils/helpers.d.ts +0 -4
  335. package/types/utils/hooks.d.ts +0 -3
  336. package/types/utils/scale.d.ts +0 -3
package/CHANGELOG.md CHANGED
@@ -1,6 +1,10 @@
1
1
  # @hero-design/rn
2
2
 
3
- ## 8.81.3-alpha.0
3
+ ## 8.82.0-alpha.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#3538](https://github.com/Thinkei/hero-design/pull/3538) [`5ed5328f70f9fc624f55d7528fb406a0b4536987`](https://github.com/Thinkei/hero-design/commit/5ed5328f70f9fc624f55d7528fb406a0b4536987) Thanks [@ttkien](https://github.com/ttkien)! - [DatePicker] add variant month-year
4
8
 
5
9
  ### Patch Changes
6
10
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hero-design/rn",
3
- "version": "8.81.3-alpha.0",
3
+ "version": "8.82.0-alpha.0",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
@@ -4,6 +4,6 @@ sonar.organization=thinkei
4
4
 
5
5
  sonar.sources=.
6
6
  sonar.inclusions=**/*
7
- sonar.exclusions=**/__tests__/**,**/public/**,**/stats/**,**.config.js
7
+ sonar.exclusions=**/__tests__/**,**/public/**,**/stats/**,**.config.js,**/testUtils/**
8
8
  sonar.java.binaries=**/src/main/java
9
9
  sonar.javascript.lcov.reportPaths=./coverage/lcov.info
@@ -3,10 +3,17 @@ import formatDate from 'date-fns/fp/format';
3
3
  import React, { useState } from 'react';
4
4
  import { TouchableOpacity, View } from 'react-native';
5
5
 
6
+ import { MonthYearPickerDialogueAndroid } from '@hero-design/react-native-month-year-picker';
6
7
  import TextInput from '../TextInput';
7
8
  import type { DatePickerProps } from './types';
8
9
  import useCalculateDate from './useCalculateDate';
9
10
 
11
+ type DatePickerAndroidProps = Omit<
12
+ DatePickerProps,
13
+ 'variant' | 'monthPickerConfirmLabel' | 'monthPickerCancelLabel'
14
+ > & {
15
+ variant?: 'default' | 'month-year';
16
+ };
10
17
  const DatePickerAndroid = ({
11
18
  value,
12
19
  minDate,
@@ -21,10 +28,8 @@ const DatePickerAndroid = ({
21
28
  helpText,
22
29
  style,
23
30
  testID,
24
- }: Omit<
25
- DatePickerProps,
26
- 'variant' | 'monthPickerConfirmLabel' | 'monthPickerCancelLabel'
27
- >) => {
31
+ variant = 'default',
32
+ }: DatePickerAndroidProps) => {
28
33
  const [open, setOpen] = useState(false);
29
34
  const displayValue = value ? formatDate(displayFormat, value) : '';
30
35
  const pickerInitValue = value || new Date();
@@ -47,7 +52,20 @@ const DatePickerAndroid = ({
47
52
  testID={testID}
48
53
  />
49
54
  </View>
50
- {open ? (
55
+ {open && variant === 'month-year' ? (
56
+ <MonthYearPickerDialogueAndroid
57
+ value={value}
58
+ minimumDate={minDate}
59
+ maximumDate={maxDate}
60
+ onChange={(action, date) => {
61
+ setOpen(false);
62
+ if (action === 'dateSetAction' && !!date) {
63
+ onChange(date);
64
+ }
65
+ }}
66
+ />
67
+ ) : null}
68
+ {open && variant === 'default' ? (
51
69
  <DateTimePicker
52
70
  testID="datePickerAndroid"
53
71
  mode="date"
@@ -3,6 +3,7 @@ import formatDate from 'date-fns/fp/format';
3
3
  import React, { useState } from 'react';
4
4
  import { TouchableOpacity, View } from 'react-native';
5
5
 
6
+ import { MonthYearPickerViewIOS } from '@hero-design/react-native-month-year-picker';
6
7
  import { useTheme } from '../../theme';
7
8
  import BottomSheet from '../BottomSheet';
8
9
  import Button from '../Button';
@@ -11,6 +12,12 @@ import { StyledPickerWrapper } from './StyledDatePicker';
11
12
  import type { DatePickerProps } from './types';
12
13
  import useCalculateDate, { getDateValue } from './useCalculateDate';
13
14
 
15
+ type DatePickerIOSProps = Omit<
16
+ DatePickerProps,
17
+ 'variant' | 'monthPickerConfirmLabel' | 'monthPickerCancelLabel'
18
+ > & {
19
+ variant?: 'default' | 'month-year';
20
+ };
14
21
  const DatePickerIOS = ({
15
22
  value,
16
23
  minDate,
@@ -27,10 +34,8 @@ const DatePickerIOS = ({
27
34
  style,
28
35
  testID,
29
36
  supportedOrientations = ['portrait'],
30
- }: Omit<
31
- DatePickerProps,
32
- 'variant' | 'monthPickerConfirmLabel' | 'monthPickerCancelLabel'
33
- >) => {
37
+ variant = 'default',
38
+ }: DatePickerIOSProps) => {
34
39
  const [selectingDate, setSelectingDate] = useState<Date>(
35
40
  getDateValue(value || new Date(), minDate, maxDate)
36
41
  );
@@ -75,21 +80,36 @@ const DatePickerIOS = ({
75
80
  supportedOrientations={supportedOrientations}
76
81
  >
77
82
  <StyledPickerWrapper>
78
- <DateTimePicker
79
- testID="datePickerIOS"
80
- value={selectingDate}
81
- minimumDate={minDate}
82
- maximumDate={maxDate}
83
- mode="date"
84
- onChange={(_: any, date: Date | undefined) => {
85
- if (date) {
86
- setSelectingDate(date);
87
- }
88
- }}
89
- display="spinner"
90
- style={{ flex: 1 }}
91
- textColor={theme.colors.onDefaultGlobalSurface}
92
- />
83
+ {variant === 'month-year' ? (
84
+ <MonthYearPickerViewIOS
85
+ value={value}
86
+ minimumDate={minDate}
87
+ maximumDate={maxDate}
88
+ onChange={(date: Date | undefined) => {
89
+ if (date) {
90
+ setSelectingDate(date);
91
+ }
92
+ }}
93
+ style={{ flex: 1 }}
94
+ />
95
+ ) : null}
96
+ {variant === 'default' ? (
97
+ <DateTimePicker
98
+ testID="datePickerIOS"
99
+ value={selectingDate}
100
+ minimumDate={minDate}
101
+ maximumDate={maxDate}
102
+ mode="date"
103
+ onChange={(_: any, date: Date | undefined) => {
104
+ if (date) {
105
+ setSelectingDate(date);
106
+ }
107
+ }}
108
+ display="spinner"
109
+ style={{ flex: 1 }}
110
+ textColor={theme.colors.onDefaultGlobalSurface}
111
+ />
112
+ ) : null}
93
113
  </StyledPickerWrapper>
94
114
  </BottomSheet>
95
115
  </TouchableOpacity>
@@ -54,4 +54,29 @@ describe('DatePickerAndroid', () => {
54
54
 
55
55
  expect(getByText('This is help text')).toBeTruthy();
56
56
  });
57
+
58
+ it('renders month-year picker', () => {
59
+ const onChangeSpy = jest.fn();
60
+ const { getByTestId, queryByText, getByText } = renderWithTheme(
61
+ <DatePickerAndroid
62
+ value={new Date('December 21, 1995')}
63
+ variant="month-year"
64
+ label="Start date"
65
+ confirmLabel="Confirm"
66
+ onChange={onChangeSpy}
67
+ displayFormat="MMMM yyyy"
68
+ />
69
+ );
70
+
71
+ expect(queryByText('Start date')).toBeDefined();
72
+ const textInput = getByTestId('text-input');
73
+ expect(textInput).toHaveProp('value', 'December 1995');
74
+ fireEvent.press(queryByText('Start date'));
75
+ expect(queryByText('Android month year picker')).toBeDefined();
76
+
77
+ // mock change date
78
+ fireEvent.press(getByText('Android month year picker'));
79
+ expect(queryByText('Android month year picker')).toBeNull();
80
+ expect(onChangeSpy).toBeCalledWith(new Date('2019-09-01'));
81
+ });
57
82
  });
@@ -115,4 +115,33 @@ describe('DatePickerIOS', () => {
115
115
 
116
116
  expect(getByText('This is help text')).toBeTruthy();
117
117
  });
118
+
119
+ it('renders month-year picker', () => {
120
+ const onChangeSpy = jest.fn();
121
+ const { queryByText, getByText, getByTestId, queryByTestId } =
122
+ renderWithTheme(
123
+ <DatePickerIOS
124
+ value={new Date('December 21, 1995')}
125
+ variant="month-year"
126
+ label="Start date"
127
+ confirmLabel="Confirm"
128
+ onChange={onChangeSpy}
129
+ displayFormat="MMMM yyyy"
130
+ />
131
+ );
132
+
133
+ expect(getByText('Start date')).toBeDefined();
134
+ const textInput = getByTestId('text-input');
135
+ expect(textInput).toHaveProp('value', 'December 1995');
136
+ fireEvent.press(getByText('Start date'));
137
+ expect(getByText('Confirm')).toBeDefined();
138
+ expect(queryByTestId('datePickerIOS')).toBeFalsy();
139
+ expect(getByText('IOS month year picker')).toBeDefined();
140
+
141
+ // mock change date
142
+ fireEvent.press(getByText('IOS month year picker'));
143
+ fireEvent.press(getByText('Confirm'));
144
+ expect(queryByText('iOS month year picker')).toBeNull();
145
+ expect(onChangeSpy).toBeCalledWith(new Date('2019-09-01'));
146
+ });
118
147
  });
@@ -10,10 +10,10 @@ const DatePicker = ({ variant = 'default', ...props }: DatePickerProps) => {
10
10
  return <DatePickerCalendar {...props} />;
11
11
  }
12
12
  if (Platform.OS === 'ios') {
13
- return <DatePickerIOS {...props} />;
13
+ return <DatePickerIOS {...props} variant={variant} />;
14
14
  }
15
15
 
16
- return <DatePickerAndroid {...props} />;
16
+ return <DatePickerAndroid {...props} variant={variant} />;
17
17
  };
18
18
 
19
19
  export default DatePicker;
@@ -13,8 +13,9 @@ export interface DatePickerProps {
13
13
  * Datepicker variants.
14
14
  * - default: is default UI of Android or iOS
15
15
  * - calendar: calendar UI
16
+ * - month-year: month and year UI
16
17
  */
17
- variant?: 'default' | 'calendar';
18
+ variant?: 'default' | 'calendar' | 'month-year';
18
19
  /**
19
20
  * Mininum date. Restrict the range of possible date values.
20
21
  */
@@ -107,28 +107,39 @@ jest.mock('react-native-gesture-handler', () => {
107
107
  };
108
108
  });
109
109
 
110
- jest.mock("@hero-design/react-native-month-year-picker", () => {
111
- const React = jest.requireActual("react");
112
- const { View, Text } = jest.requireActual("react-native");
110
+ jest.mock('@hero-design/react-native-month-year-picker', () => {
111
+ const React = jest.requireActual('react');
112
+ const { View, Text } = jest.requireActual('react-native');
113
113
 
114
114
  return {
115
- MonthYearPickerDialogueAndroid: () => (
116
- <View>
117
- <Text>Android picker</Text>
115
+ MonthYearPickerDialogueAndroid: ({ onChange }) => (
116
+ <View
117
+ onPress={() => {
118
+ if (onChange) {
119
+ onChange('dateSetAction', new Date('2019-09-01'));
120
+ }
121
+ }}
122
+ >
123
+ <Text>Android month year picker</Text>
118
124
  </View>
119
125
  ),
120
- MonthYearPickerViewIOS: () => (
121
- <View>
122
- <Text>IOS picker</Text>
126
+ MonthYearPickerViewIOS: ({ onChange }) => (
127
+ <View
128
+ onPress={() => {
129
+ if (onChange) {
130
+ onChange(new Date('2019-09-01'));
131
+ }
132
+ }}
133
+ >
134
+ <Text>IOS month year picker</Text>
123
135
  </View>
124
136
  ),
125
137
  };
126
138
  });
127
139
 
128
-
129
140
  jest.mock('react-native/Libraries/Utilities/BackHandler', () => {
130
141
  return jest.requireActual(
131
- 'react-native/Libraries/Utilities/__mocks__/BackHandler.js',
142
+ 'react-native/Libraries/Utilities/__mocks__/BackHandler.js'
132
143
  );
133
144
  });
134
145