@fountain-ui/core 3.0.0-alpha.4 → 3.0.0-alpha.40

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 (494) hide show
  1. package/build/commonjs/Accordion/Accordion.js +20 -13
  2. package/build/commonjs/Accordion/Accordion.js.map +1 -1
  3. package/build/commonjs/Accordion/AccordionProps.js.map +1 -1
  4. package/build/commonjs/Accordion/useVariantStyleMap.js +15 -8
  5. package/build/commonjs/Accordion/useVariantStyleMap.js.map +1 -1
  6. package/build/commonjs/AppBar/AppBar.js +1 -1
  7. package/build/commonjs/AppBar/AppBar.js.map +1 -1
  8. package/build/commonjs/Badge/Badge.js +4 -3
  9. package/build/commonjs/Badge/Badge.js.map +1 -1
  10. package/build/commonjs/Badge/BadgeProps.js.map +1 -1
  11. package/build/commonjs/Badge/useVariantStyleMap.js +2 -2
  12. package/build/commonjs/Badge/useVariantStyleMap.js.map +1 -1
  13. package/build/commonjs/BottomSheetTitle/BottomSheetTitle.js +6 -2
  14. package/build/commonjs/BottomSheetTitle/BottomSheetTitle.js.map +1 -1
  15. package/build/commonjs/BottomSheetTitle/BottomSheetTitleProps.js.map +1 -1
  16. package/build/commonjs/Button/Button.js +26 -12
  17. package/build/commonjs/Button/Button.js.map +1 -1
  18. package/build/commonjs/Button/ButtonProps.js.map +1 -1
  19. package/build/commonjs/Button/useVariantStyleMap.js +9 -0
  20. package/build/commonjs/Button/useVariantStyleMap.js.map +1 -1
  21. package/build/commonjs/ButtonBase/ButtonBase.js +1 -1
  22. package/build/commonjs/ButtonBase/ButtonBase.js.map +1 -1
  23. package/build/commonjs/ButtonBase/index.js +2 -2
  24. package/build/commonjs/ButtonBase/index.js.map +1 -1
  25. package/build/commonjs/Checkbox/Checkbox.js +4 -1
  26. package/build/commonjs/Checkbox/Checkbox.js.map +1 -1
  27. package/build/commonjs/Checkbox/useVariantStyleMap.js +6 -2
  28. package/build/commonjs/Checkbox/useVariantStyleMap.js.map +1 -1
  29. package/build/commonjs/Chip/Chip.js +25 -14
  30. package/build/commonjs/Chip/Chip.js.map +1 -1
  31. package/build/commonjs/Chip/ChipProps.js +3 -1
  32. package/build/commonjs/Chip/ChipProps.js.map +1 -1
  33. package/build/commonjs/Chip/index.js +6 -0
  34. package/build/commonjs/Chip/index.js.map +1 -1
  35. package/build/commonjs/Chip/useChipStyle.js +51 -31
  36. package/build/commonjs/Chip/useChipStyle.js.map +1 -1
  37. package/build/commonjs/Dialog/Dialog.js +10 -12
  38. package/build/commonjs/Dialog/Dialog.js.map +1 -1
  39. package/build/commonjs/Dialog/DialogProps.js +1 -1
  40. package/build/commonjs/Dialog/DialogProps.js.map +1 -1
  41. package/build/commonjs/Dialog/useDialogSectionStyle.js +6 -4
  42. package/build/commonjs/Dialog/useDialogSectionStyle.js.map +1 -1
  43. package/build/commonjs/Dialog/useDialogStyle.js +19 -8
  44. package/build/commonjs/Dialog/useDialogStyle.js.map +1 -1
  45. package/build/commonjs/DialogActions/DialogActions.js +0 -1
  46. package/build/commonjs/DialogActions/DialogActions.js.map +1 -1
  47. package/build/commonjs/DialogTitle/DialogLargeTitle.js +80 -0
  48. package/build/commonjs/DialogTitle/DialogLargeTitle.js.map +1 -0
  49. package/build/commonjs/DialogTitle/DialogTitle.js +8 -4
  50. package/build/commonjs/DialogTitle/DialogTitle.js.map +1 -1
  51. package/build/commonjs/Divider/Divider.js +17 -9
  52. package/build/commonjs/Divider/Divider.js.map +1 -1
  53. package/build/commonjs/Divider/DividerProps.js +1 -1
  54. package/build/commonjs/Divider/DividerProps.js.map +1 -1
  55. package/build/commonjs/Empty/Empty.js +1 -1
  56. package/build/commonjs/Empty/Empty.js.map +1 -1
  57. package/build/commonjs/Flexbox/Flexbox.js +2 -0
  58. package/build/commonjs/Flexbox/Flexbox.js.map +1 -1
  59. package/build/commonjs/Flexbox/FlexboxProps.js.map +1 -1
  60. package/build/commonjs/IconButton/IconButton.js +3 -0
  61. package/build/commonjs/IconButton/IconButton.js.map +1 -1
  62. package/build/commonjs/IconButton/IconButtonProps.js +1 -1
  63. package/build/commonjs/IconButton/IconButtonProps.js.map +1 -1
  64. package/build/commonjs/Image/Image.js +2 -2
  65. package/build/commonjs/Image/Image.js.map +1 -1
  66. package/build/commonjs/ImageCore/ImageCoreNative.js +1 -1
  67. package/build/commonjs/ImageCore/ImageCoreNative.js.map +1 -1
  68. package/build/commonjs/ListItem/ListItem.js +38 -26
  69. package/build/commonjs/ListItem/ListItem.js.map +1 -1
  70. package/build/commonjs/ListItem/ListItemProps.js.map +1 -1
  71. package/build/commonjs/ListItemIcon/ListItemIcon.js +1 -2
  72. package/build/commonjs/ListItemIcon/ListItemIcon.js.map +1 -1
  73. package/build/commonjs/ListItemSecondaryAction/ListItemSecondaryAction.js +2 -0
  74. package/build/commonjs/ListItemSecondaryAction/ListItemSecondaryAction.js.map +1 -1
  75. package/build/commonjs/ListItemText/ListItemText.js +20 -21
  76. package/build/commonjs/ListItemText/ListItemText.js.map +1 -1
  77. package/build/commonjs/ListItemText/ListItemTextProps.js.map +1 -1
  78. package/build/commonjs/ListSubheader/ListSubheader.js +1 -1
  79. package/build/commonjs/ListSubheader/ListSubheader.js.map +1 -1
  80. package/build/commonjs/Modal/Modal.js +1 -1
  81. package/build/commonjs/Modal/Modal.js.map +1 -1
  82. package/build/commonjs/Pagination/NumberPagination.js +4 -2
  83. package/build/commonjs/Pagination/NumberPagination.js.map +1 -1
  84. package/build/commonjs/Pagination/Pagination.js +2 -0
  85. package/build/commonjs/Pagination/Pagination.js.map +1 -1
  86. package/build/commonjs/Pagination/PaginationProps.js +3 -1
  87. package/build/commonjs/Pagination/PaginationProps.js.map +1 -1
  88. package/build/commonjs/Pagination/index.js +6 -0
  89. package/build/commonjs/Pagination/index.js.map +1 -1
  90. package/build/commonjs/PaginationItem/PaginationItem.js +32 -22
  91. package/build/commonjs/PaginationItem/PaginationItem.js.map +1 -1
  92. package/build/commonjs/PaginationItem/PaginationItemProps.js.map +1 -1
  93. package/build/commonjs/Radio/Radio.js +11 -4
  94. package/build/commonjs/Radio/Radio.js.map +1 -1
  95. package/build/commonjs/RadioGroup/RadioGroup.js +2 -27
  96. package/build/commonjs/RadioGroup/RadioGroup.js.map +1 -1
  97. package/build/commonjs/Section/Section.js +32 -0
  98. package/build/commonjs/Section/Section.js.map +1 -0
  99. package/build/commonjs/Section/SectionProps.js +2 -0
  100. package/build/commonjs/Section/SectionProps.js.map +1 -0
  101. package/build/commonjs/Section/index.js +16 -0
  102. package/build/commonjs/Section/index.js.map +1 -0
  103. package/build/commonjs/ShadowView/ShadowView.native.js +4 -0
  104. package/build/commonjs/ShadowView/ShadowView.native.js.map +1 -1
  105. package/build/commonjs/SnackbarContent/SnackbarContent.js +26 -9
  106. package/build/commonjs/SnackbarContent/SnackbarContent.js.map +1 -1
  107. package/build/commonjs/Tab/Tab.js +21 -19
  108. package/build/commonjs/Tab/Tab.js.map +1 -1
  109. package/build/commonjs/Tab/TabProps.js +4 -2
  110. package/build/commonjs/Tab/TabProps.js.map +1 -1
  111. package/build/commonjs/Tab/index.js +14 -0
  112. package/build/commonjs/Tab/index.js.map +1 -1
  113. package/build/commonjs/Tab/useVariantStyleMap.js +59 -18
  114. package/build/commonjs/Tab/useVariantStyleMap.js.map +1 -1
  115. package/build/commonjs/TabBase/TabBase.js +1 -8
  116. package/build/commonjs/TabBase/TabBase.js.map +1 -1
  117. package/build/commonjs/TabBase/TabBaseProps.js.map +1 -1
  118. package/build/commonjs/Tabs/Tabs.js +23 -7
  119. package/build/commonjs/Tabs/Tabs.js.map +1 -1
  120. package/build/commonjs/Tabs/TabsProps.js.map +1 -1
  121. package/build/commonjs/Tabs/index.js.map +1 -1
  122. package/build/commonjs/Tabs/useTabsStyle.js +81 -0
  123. package/build/commonjs/Tabs/useTabsStyle.js.map +1 -0
  124. package/build/commonjs/TextField/TextField.js +60 -15
  125. package/build/commonjs/TextField/TextField.js.map +1 -1
  126. package/build/commonjs/TextField/useVariantStyleMap.js +29 -29
  127. package/build/commonjs/TextField/useVariantStyleMap.js.map +1 -1
  128. package/build/commonjs/Toolbar/BackButton/BackButton.js +47 -0
  129. package/build/commonjs/Toolbar/BackButton/BackButton.js.map +1 -0
  130. package/build/commonjs/Toolbar/BackButton/BackButtonProps.js +2 -0
  131. package/build/commonjs/Toolbar/BackButton/BackButtonProps.js.map +1 -0
  132. package/build/commonjs/Toolbar/BackButton/index.js +16 -0
  133. package/build/commonjs/Toolbar/BackButton/index.js.map +1 -0
  134. package/build/commonjs/Toolbar/Toolbar.js +22 -12
  135. package/build/commonjs/Toolbar/Toolbar.js.map +1 -1
  136. package/build/commonjs/Toolbar/ToolbarProps.js.map +1 -1
  137. package/build/commonjs/Tooltip/Beaks/index.js +32 -0
  138. package/build/commonjs/Tooltip/Beaks/index.js.map +1 -1
  139. package/build/commonjs/Tooltip/Tooltip.js +18 -22
  140. package/build/commonjs/Tooltip/Tooltip.js.map +1 -1
  141. package/build/commonjs/Tooltip/TooltipProps.js.map +1 -1
  142. package/build/commonjs/Tooltip/index.js +19 -0
  143. package/build/commonjs/Tooltip/index.js.map +1 -1
  144. package/build/commonjs/Typography/Typography.js +9 -2
  145. package/build/commonjs/Typography/Typography.js.map +1 -1
  146. package/build/commonjs/Typography/TypographyProps.js.map +1 -1
  147. package/build/commonjs/hooks/useBreakpointUp.js +4 -1
  148. package/build/commonjs/hooks/useBreakpointUp.js.map +1 -1
  149. package/build/commonjs/hooks/useCollapsibleAppBar.js +11 -13
  150. package/build/commonjs/hooks/useCollapsibleAppBar.js.map +1 -1
  151. package/build/commonjs/hooks/useContentContainerStyle.js +39 -25
  152. package/build/commonjs/hooks/useContentContainerStyle.js.map +1 -1
  153. package/build/commonjs/hooks/useFadeInAppBar.js +4 -4
  154. package/build/commonjs/hooks/useFadeInAppBar.js.map +1 -1
  155. package/build/commonjs/index.js +21 -0
  156. package/build/commonjs/index.js.map +1 -1
  157. package/build/commonjs/internal/icons/AppBarChevronLeft.js +23 -0
  158. package/build/commonjs/internal/icons/AppBarChevronLeft.js.map +1 -0
  159. package/build/commonjs/internal/icons/ChevronLeft.js +4 -2
  160. package/build/commonjs/internal/icons/ChevronLeft.js.map +1 -1
  161. package/build/commonjs/internal/icons/ChevronRight.js +4 -2
  162. package/build/commonjs/internal/icons/ChevronRight.js.map +1 -1
  163. package/build/commonjs/internal/icons/ChipClose.js +23 -0
  164. package/build/commonjs/internal/icons/ChipClose.js.map +1 -0
  165. package/build/commonjs/internal/icons/Clear.js +3 -3
  166. package/build/commonjs/internal/icons/Clear.js.map +1 -1
  167. package/build/commonjs/internal/icons/Close.js +4 -2
  168. package/build/commonjs/internal/icons/Close.js.map +1 -1
  169. package/build/commonjs/internal/icons/Search.js +2 -2
  170. package/build/commonjs/internal/icons/Search.js.map +1 -1
  171. package/build/commonjs/internal/icons/index.js +16 -0
  172. package/build/commonjs/internal/icons/index.js.map +1 -1
  173. package/build/module/Accordion/Accordion.js +20 -13
  174. package/build/module/Accordion/Accordion.js.map +1 -1
  175. package/build/module/Accordion/AccordionProps.js.map +1 -1
  176. package/build/module/Accordion/useVariantStyleMap.js +15 -8
  177. package/build/module/Accordion/useVariantStyleMap.js.map +1 -1
  178. package/build/module/AppBar/AppBar.js +1 -1
  179. package/build/module/AppBar/AppBar.js.map +1 -1
  180. package/build/module/Badge/Badge.js +4 -3
  181. package/build/module/Badge/Badge.js.map +1 -1
  182. package/build/module/Badge/BadgeProps.js.map +1 -1
  183. package/build/module/Badge/useVariantStyleMap.js +2 -2
  184. package/build/module/Badge/useVariantStyleMap.js.map +1 -1
  185. package/build/module/BottomSheetTitle/BottomSheetTitle.js +6 -2
  186. package/build/module/BottomSheetTitle/BottomSheetTitle.js.map +1 -1
  187. package/build/module/BottomSheetTitle/BottomSheetTitleProps.js.map +1 -1
  188. package/build/module/Button/Button.js +27 -13
  189. package/build/module/Button/Button.js.map +1 -1
  190. package/build/module/Button/ButtonProps.js.map +1 -1
  191. package/build/module/Button/useVariantStyleMap.js +9 -0
  192. package/build/module/Button/useVariantStyleMap.js.map +1 -1
  193. package/build/module/ButtonBase/ButtonBase.js +1 -1
  194. package/build/module/ButtonBase/ButtonBase.js.map +1 -1
  195. package/build/module/ButtonBase/index.js +1 -1
  196. package/build/module/ButtonBase/index.js.map +1 -1
  197. package/build/module/Checkbox/Checkbox.js +4 -1
  198. package/build/module/Checkbox/Checkbox.js.map +1 -1
  199. package/build/module/Checkbox/useVariantStyleMap.js +6 -2
  200. package/build/module/Checkbox/useVariantStyleMap.js.map +1 -1
  201. package/build/module/Chip/Chip.js +21 -13
  202. package/build/module/Chip/Chip.js.map +1 -1
  203. package/build/module/Chip/ChipProps.js +1 -0
  204. package/build/module/Chip/ChipProps.js.map +1 -1
  205. package/build/module/Chip/index.js +1 -1
  206. package/build/module/Chip/index.js.map +1 -1
  207. package/build/module/Chip/useChipStyle.js +51 -31
  208. package/build/module/Chip/useChipStyle.js.map +1 -1
  209. package/build/module/Dialog/Dialog.js +10 -11
  210. package/build/module/Dialog/Dialog.js.map +1 -1
  211. package/build/module/Dialog/DialogProps.js +1 -1
  212. package/build/module/Dialog/DialogProps.js.map +1 -1
  213. package/build/module/Dialog/useDialogSectionStyle.js +6 -4
  214. package/build/module/Dialog/useDialogSectionStyle.js.map +1 -1
  215. package/build/module/Dialog/useDialogStyle.js +18 -8
  216. package/build/module/Dialog/useDialogStyle.js.map +1 -1
  217. package/build/module/DialogActions/DialogActions.js +0 -1
  218. package/build/module/DialogActions/DialogActions.js.map +1 -1
  219. package/build/module/DialogTitle/DialogLargeTitle.js +65 -0
  220. package/build/module/DialogTitle/DialogLargeTitle.js.map +1 -0
  221. package/build/module/DialogTitle/DialogTitle.js +6 -3
  222. package/build/module/DialogTitle/DialogTitle.js.map +1 -1
  223. package/build/module/Divider/Divider.js +7 -0
  224. package/build/module/Divider/Divider.js.map +1 -1
  225. package/build/module/Divider/DividerProps.js +1 -1
  226. package/build/module/Divider/DividerProps.js.map +1 -1
  227. package/build/module/Empty/Empty.js +1 -1
  228. package/build/module/Empty/Empty.js.map +1 -1
  229. package/build/module/Flexbox/Flexbox.js +2 -0
  230. package/build/module/Flexbox/Flexbox.js.map +1 -1
  231. package/build/module/Flexbox/FlexboxProps.js.map +1 -1
  232. package/build/module/IconButton/IconButton.js +3 -0
  233. package/build/module/IconButton/IconButton.js.map +1 -1
  234. package/build/module/IconButton/IconButtonProps.js +1 -1
  235. package/build/module/IconButton/IconButtonProps.js.map +1 -1
  236. package/build/module/Image/Image.js +2 -2
  237. package/build/module/Image/Image.js.map +1 -1
  238. package/build/module/ImageCore/ImageCoreNative.js +1 -1
  239. package/build/module/ImageCore/ImageCoreNative.js.map +1 -1
  240. package/build/module/ListItem/ListItem.js +36 -28
  241. package/build/module/ListItem/ListItem.js.map +1 -1
  242. package/build/module/ListItem/ListItemProps.js.map +1 -1
  243. package/build/module/ListItemIcon/ListItemIcon.js +1 -2
  244. package/build/module/ListItemIcon/ListItemIcon.js.map +1 -1
  245. package/build/module/ListItemSecondaryAction/ListItemSecondaryAction.js +2 -0
  246. package/build/module/ListItemSecondaryAction/ListItemSecondaryAction.js.map +1 -1
  247. package/build/module/ListItemText/ListItemText.js +17 -19
  248. package/build/module/ListItemText/ListItemText.js.map +1 -1
  249. package/build/module/ListItemText/ListItemTextProps.js.map +1 -1
  250. package/build/module/ListSubheader/ListSubheader.js +1 -1
  251. package/build/module/ListSubheader/ListSubheader.js.map +1 -1
  252. package/build/module/Modal/Modal.js +1 -1
  253. package/build/module/Modal/Modal.js.map +1 -1
  254. package/build/module/Pagination/NumberPagination.js +4 -2
  255. package/build/module/Pagination/NumberPagination.js.map +1 -1
  256. package/build/module/Pagination/Pagination.js +2 -0
  257. package/build/module/Pagination/Pagination.js.map +1 -1
  258. package/build/module/Pagination/PaginationProps.js +1 -0
  259. package/build/module/Pagination/PaginationProps.js.map +1 -1
  260. package/build/module/Pagination/index.js +1 -1
  261. package/build/module/Pagination/index.js.map +1 -1
  262. package/build/module/PaginationItem/PaginationItem.js +28 -21
  263. package/build/module/PaginationItem/PaginationItem.js.map +1 -1
  264. package/build/module/PaginationItem/PaginationItemProps.js.map +1 -1
  265. package/build/module/Radio/Radio.js +10 -4
  266. package/build/module/Radio/Radio.js.map +1 -1
  267. package/build/module/RadioGroup/RadioGroup.js +2 -20
  268. package/build/module/RadioGroup/RadioGroup.js.map +1 -1
  269. package/build/module/Section/Section.js +19 -0
  270. package/build/module/Section/Section.js.map +1 -0
  271. package/build/module/Section/SectionProps.js +2 -0
  272. package/build/module/Section/SectionProps.js.map +1 -0
  273. package/build/module/Section/index.js +2 -0
  274. package/build/module/Section/index.js.map +1 -0
  275. package/build/module/ShadowView/ShadowView.native.js +4 -0
  276. package/build/module/ShadowView/ShadowView.native.js.map +1 -1
  277. package/build/module/SnackbarContent/SnackbarContent.js +26 -9
  278. package/build/module/SnackbarContent/SnackbarContent.js.map +1 -1
  279. package/build/module/Tab/Tab.js +22 -19
  280. package/build/module/Tab/Tab.js.map +1 -1
  281. package/build/module/Tab/TabProps.js +2 -1
  282. package/build/module/Tab/TabProps.js.map +1 -1
  283. package/build/module/Tab/index.js +1 -0
  284. package/build/module/Tab/index.js.map +1 -1
  285. package/build/module/Tab/useVariantStyleMap.js +59 -18
  286. package/build/module/Tab/useVariantStyleMap.js.map +1 -1
  287. package/build/module/TabBase/TabBase.js +1 -8
  288. package/build/module/TabBase/TabBase.js.map +1 -1
  289. package/build/module/TabBase/TabBaseProps.js.map +1 -1
  290. package/build/module/Tabs/Tabs.js +21 -7
  291. package/build/module/Tabs/Tabs.js.map +1 -1
  292. package/build/module/Tabs/TabsProps.js.map +1 -1
  293. package/build/module/Tabs/index.js.map +1 -1
  294. package/build/module/Tabs/useTabsStyle.js +71 -0
  295. package/build/module/Tabs/useTabsStyle.js.map +1 -0
  296. package/build/module/TextField/TextField.js +60 -15
  297. package/build/module/TextField/TextField.js.map +1 -1
  298. package/build/module/TextField/useVariantStyleMap.js +29 -29
  299. package/build/module/TextField/useVariantStyleMap.js.map +1 -1
  300. package/build/module/Toolbar/BackButton/BackButton.js +32 -0
  301. package/build/module/Toolbar/BackButton/BackButton.js.map +1 -0
  302. package/build/module/Toolbar/BackButton/BackButtonProps.js +2 -0
  303. package/build/module/Toolbar/BackButton/BackButtonProps.js.map +1 -0
  304. package/build/module/Toolbar/BackButton/index.js +2 -0
  305. package/build/module/Toolbar/BackButton/index.js.map +1 -0
  306. package/build/module/Toolbar/Toolbar.js +20 -12
  307. package/build/module/Toolbar/Toolbar.js.map +1 -1
  308. package/build/module/Toolbar/ToolbarProps.js.map +1 -1
  309. package/build/module/Tooltip/Beaks/index.js +4 -0
  310. package/build/module/Tooltip/Beaks/index.js.map +1 -1
  311. package/build/module/Tooltip/Tooltip.js +11 -14
  312. package/build/module/Tooltip/Tooltip.js.map +1 -1
  313. package/build/module/Tooltip/TooltipProps.js.map +1 -1
  314. package/build/module/Tooltip/index.js +1 -0
  315. package/build/module/Tooltip/index.js.map +1 -1
  316. package/build/module/Typography/Typography.js +9 -2
  317. package/build/module/Typography/Typography.js.map +1 -1
  318. package/build/module/Typography/TypographyProps.js.map +1 -1
  319. package/build/module/hooks/useBreakpointUp.js +4 -1
  320. package/build/module/hooks/useBreakpointUp.js.map +1 -1
  321. package/build/module/hooks/useCollapsibleAppBar.js +12 -13
  322. package/build/module/hooks/useCollapsibleAppBar.js.map +1 -1
  323. package/build/module/hooks/useContentContainerStyle.js +43 -25
  324. package/build/module/hooks/useContentContainerStyle.js.map +1 -1
  325. package/build/module/hooks/useFadeInAppBar.js +4 -4
  326. package/build/module/hooks/useFadeInAppBar.js.map +1 -1
  327. package/build/module/index.js +2 -0
  328. package/build/module/index.js.map +1 -1
  329. package/build/module/internal/icons/AppBarChevronLeft.js +9 -0
  330. package/build/module/internal/icons/AppBarChevronLeft.js.map +1 -0
  331. package/build/module/internal/icons/ChevronLeft.js +4 -2
  332. package/build/module/internal/icons/ChevronLeft.js.map +1 -1
  333. package/build/module/internal/icons/ChevronRight.js +4 -2
  334. package/build/module/internal/icons/ChevronRight.js.map +1 -1
  335. package/build/module/internal/icons/ChipClose.js +9 -0
  336. package/build/module/internal/icons/ChipClose.js.map +1 -0
  337. package/build/module/internal/icons/Clear.js +3 -3
  338. package/build/module/internal/icons/Clear.js.map +1 -1
  339. package/build/module/internal/icons/Close.js +4 -2
  340. package/build/module/internal/icons/Close.js.map +1 -1
  341. package/build/module/internal/icons/Search.js +2 -2
  342. package/build/module/internal/icons/Search.js.map +1 -1
  343. package/build/module/internal/icons/index.js +2 -0
  344. package/build/module/internal/icons/index.js.map +1 -1
  345. package/build/typescript/Accordion/AccordionProps.d.ts +4 -1
  346. package/build/typescript/Accordion/useVariantStyleMap.d.ts +1 -0
  347. package/build/typescript/Badge/BadgeProps.d.ts +10 -5
  348. package/build/typescript/BottomSheetTitle/BottomSheetTitleProps.d.ts +1 -0
  349. package/build/typescript/Button/ButtonProps.d.ts +5 -0
  350. package/build/typescript/ButtonBase/index.d.ts +1 -1
  351. package/build/typescript/Checkbox/useVariantStyleMap.d.ts +1 -0
  352. package/build/typescript/Chip/ChipProps.d.ts +11 -4
  353. package/build/typescript/Chip/index.d.ts +1 -1
  354. package/build/typescript/Chip/useChipStyle.d.ts +6 -3
  355. package/build/typescript/Dialog/DialogProps.d.ts +1 -6
  356. package/build/typescript/Dialog/useDialogStyle.d.ts +1 -1
  357. package/build/typescript/DialogTitle/DialogLargeTitle.d.ts +9 -0
  358. package/build/typescript/DialogTitle/DialogTitle.d.ts +6 -1
  359. package/build/typescript/Divider/DividerProps.d.ts +1 -1
  360. package/build/typescript/Flexbox/FlexboxProps.d.ts +4 -0
  361. package/build/typescript/IconButton/IconButtonProps.d.ts +1 -1
  362. package/build/typescript/ListItem/ListItem.d.ts +1 -1
  363. package/build/typescript/ListItem/ListItemProps.d.ts +4 -0
  364. package/build/typescript/ListItemText/ListItemTextProps.d.ts +2 -9
  365. package/build/typescript/Pagination/PaginationProps.d.ts +12 -0
  366. package/build/typescript/Pagination/index.d.ts +2 -2
  367. package/build/typescript/PaginationItem/PaginationItemProps.d.ts +6 -0
  368. package/build/typescript/Section/Section.d.ts +3 -0
  369. package/build/typescript/Section/SectionProps.d.ts +6 -0
  370. package/build/typescript/Section/index.d.ts +2 -0
  371. package/build/typescript/Tab/TabProps.d.ts +21 -2
  372. package/build/typescript/Tab/index.d.ts +2 -1
  373. package/build/typescript/Tab/useVariantStyleMap.d.ts +4 -2
  374. package/build/typescript/TabBase/TabBaseProps.d.ts +0 -5
  375. package/build/typescript/Tabs/Tabs.d.ts +1 -1
  376. package/build/typescript/Tabs/TabsProps.d.ts +6 -1
  377. package/build/typescript/Tabs/index.d.ts +1 -1
  378. package/build/typescript/Tabs/useTabsStyle.d.ts +8 -0
  379. package/build/typescript/TextField/useVariantStyleMap.d.ts +2 -0
  380. package/build/typescript/Toolbar/BackButton/BackButton.d.ts +3 -0
  381. package/build/typescript/Toolbar/BackButton/BackButtonProps.d.ts +4 -0
  382. package/build/typescript/Toolbar/BackButton/index.d.ts +2 -0
  383. package/build/typescript/Toolbar/Toolbar.d.ts +6 -1
  384. package/build/typescript/Toolbar/ToolbarProps.d.ts +0 -5
  385. package/build/typescript/Tooltip/Beaks/index.d.ts +4 -0
  386. package/build/typescript/Tooltip/TooltipProps.d.ts +2 -2
  387. package/build/typescript/Tooltip/index.d.ts +1 -0
  388. package/build/typescript/Typography/TypographyProps.d.ts +4 -0
  389. package/build/typescript/hooks/useCollapsibleAppBar.d.ts +1 -1
  390. package/build/typescript/hooks/useContentContainerStyle.d.ts +5 -8
  391. package/build/typescript/index.d.ts +2 -0
  392. package/build/typescript/internal/icons/AppBarChevronLeft.d.ts +131 -0
  393. package/build/typescript/internal/icons/ChipClose.d.ts +131 -0
  394. package/build/typescript/internal/icons/index.d.ts +2 -0
  395. package/package.json +5 -5
  396. package/src/Accordion/Accordion.tsx +23 -14
  397. package/src/Accordion/AccordionProps.ts +4 -2
  398. package/src/Accordion/useVariantStyleMap.ts +14 -6
  399. package/src/AppBar/AppBar.tsx +2 -2
  400. package/src/Badge/Badge.tsx +4 -3
  401. package/src/Badge/BadgeProps.ts +12 -6
  402. package/src/Badge/useVariantStyleMap.ts +2 -2
  403. package/src/BottomSheetTitle/BottomSheetTitle.tsx +5 -1
  404. package/src/BottomSheetTitle/BottomSheetTitleProps.ts +1 -0
  405. package/src/Button/Button.tsx +28 -12
  406. package/src/Button/ButtonProps.ts +6 -0
  407. package/src/Button/useVariantStyleMap.ts +9 -0
  408. package/src/ButtonBase/ButtonBase.tsx +1 -1
  409. package/src/ButtonBase/index.ts +1 -1
  410. package/src/Checkbox/Checkbox.tsx +11 -8
  411. package/src/Checkbox/useVariantStyleMap.ts +6 -1
  412. package/src/Chip/Chip.tsx +24 -13
  413. package/src/Chip/ChipProps.ts +13 -4
  414. package/src/Chip/index.ts +1 -1
  415. package/src/Chip/useChipStyle.ts +59 -29
  416. package/src/Dialog/Dialog.tsx +12 -11
  417. package/src/Dialog/DialogProps.ts +1 -7
  418. package/src/Dialog/useDialogSectionStyle.ts +6 -4
  419. package/src/Dialog/useDialogStyle.ts +19 -7
  420. package/src/DialogActions/DialogActions.tsx +0 -1
  421. package/src/DialogTitle/DialogLargeTitle.tsx +95 -0
  422. package/src/DialogTitle/DialogTitle.tsx +6 -1
  423. package/src/Divider/Divider.tsx +5 -0
  424. package/src/Divider/DividerProps.ts +1 -1
  425. package/src/Empty/Empty.tsx +1 -1
  426. package/src/Flexbox/Flexbox.tsx +2 -0
  427. package/src/Flexbox/FlexboxProps.ts +5 -0
  428. package/src/IconButton/IconButton.tsx +2 -0
  429. package/src/IconButton/IconButtonProps.ts +1 -0
  430. package/src/Image/Image.tsx +3 -3
  431. package/src/ImageCore/ImageCoreNative.tsx +1 -1
  432. package/src/ListItem/ListItem.tsx +61 -30
  433. package/src/ListItem/ListItemProps.ts +5 -0
  434. package/src/ListItemIcon/ListItemIcon.tsx +1 -2
  435. package/src/ListItemSecondaryAction/ListItemSecondaryAction.tsx +2 -0
  436. package/src/ListItemText/ListItemText.tsx +20 -28
  437. package/src/ListItemText/ListItemTextProps.ts +2 -10
  438. package/src/ListSubheader/ListSubheader.tsx +1 -1
  439. package/src/Modal/Modal.tsx +1 -1
  440. package/src/Pagination/NumberPagination.tsx +7 -2
  441. package/src/Pagination/Pagination.tsx +3 -2
  442. package/src/Pagination/PaginationProps.ts +15 -0
  443. package/src/Pagination/index.ts +2 -2
  444. package/src/PaginationItem/PaginationItem.tsx +31 -24
  445. package/src/PaginationItem/PaginationItemProps.ts +7 -0
  446. package/src/Radio/Radio.tsx +12 -3
  447. package/src/RadioGroup/RadioGroup.tsx +2 -28
  448. package/src/Section/Section.tsx +26 -0
  449. package/src/Section/SectionProps.ts +6 -0
  450. package/src/Section/index.ts +2 -0
  451. package/src/ShadowView/ShadowView.native.tsx +4 -0
  452. package/src/SnackbarContent/SnackbarContent.tsx +36 -15
  453. package/src/Tab/Tab.tsx +32 -22
  454. package/src/Tab/TabProps.ts +25 -2
  455. package/src/Tab/index.ts +2 -1
  456. package/src/Tab/useVariantStyleMap.ts +72 -19
  457. package/src/TabBase/TabBase.tsx +1 -9
  458. package/src/TabBase/TabBaseProps.ts +0 -6
  459. package/src/Tabs/Tabs.tsx +26 -8
  460. package/src/Tabs/TabsProps.ts +7 -1
  461. package/src/Tabs/index.ts +1 -1
  462. package/src/Tabs/useTabsStyle.ts +79 -0
  463. package/src/TextField/TextField.tsx +99 -45
  464. package/src/TextField/useVariantStyleMap.ts +29 -27
  465. package/src/Toolbar/BackButton/BackButton.tsx +44 -0
  466. package/src/Toolbar/BackButton/BackButtonProps.ts +4 -0
  467. package/src/Toolbar/BackButton/index.ts +2 -0
  468. package/src/Toolbar/Toolbar.tsx +26 -17
  469. package/src/Toolbar/ToolbarProps.ts +0 -6
  470. package/src/Tooltip/Beaks/index.ts +4 -0
  471. package/src/Tooltip/Tooltip.tsx +10 -12
  472. package/src/Tooltip/TooltipProps.ts +2 -2
  473. package/src/Tooltip/index.ts +1 -0
  474. package/src/Typography/Typography.tsx +3 -1
  475. package/src/Typography/TypographyProps.ts +5 -0
  476. package/src/hooks/useBreakpointUp.ts +3 -1
  477. package/src/hooks/useCollapsibleAppBar.ts +10 -24
  478. package/src/hooks/useContentContainerStyle.ts +43 -31
  479. package/src/hooks/useFadeInAppBar.ts +4 -4
  480. package/src/index.ts +3 -0
  481. package/src/internal/icons/AppBarChevronLeft.tsx +15 -0
  482. package/src/internal/icons/ChevronLeft.tsx +4 -1
  483. package/src/internal/icons/ChevronRight.tsx +4 -1
  484. package/src/internal/icons/ChipClose.tsx +13 -0
  485. package/src/internal/icons/Clear.tsx +3 -3
  486. package/src/internal/icons/Close.tsx +4 -1
  487. package/src/internal/icons/Search.tsx +2 -2
  488. package/src/internal/icons/index.ts +2 -0
  489. package/build/commonjs/ButtonBase/LegacyButtonBase.js +0 -126
  490. package/build/commonjs/ButtonBase/LegacyButtonBase.js.map +0 -1
  491. package/build/module/ButtonBase/LegacyButtonBase.js +0 -106
  492. package/build/module/ButtonBase/LegacyButtonBase.js.map +0 -1
  493. package/build/typescript/ButtonBase/LegacyButtonBase.d.ts +0 -5
  494. package/src/ButtonBase/LegacyButtonBase.tsx +0 -135
@@ -16,9 +16,36 @@ const styles = StyleSheet.create({
16
16
  input: {
17
17
  flexGrow: 1
18
18
  },
19
+ inputWrapper: {
20
+ flexGrow: 1,
21
+ flexShrink: 1
22
+ },
23
+ placeholderWrapper: { ...StyleSheet.absoluteFillObject,
24
+ justifyContent: 'center'
25
+ },
19
26
  secureToggleButton: {
20
27
  alignItems: 'flex-end',
21
- padding: 0
28
+ padding: 0,
29
+ position: 'absolute',
30
+ right: 0
31
+ },
32
+ searchIconContainer: {
33
+ left: 12,
34
+ position: 'absolute'
35
+ },
36
+ loadingSinner: {
37
+ height: 19,
38
+ width: 19
39
+ },
40
+ clearButton: {
41
+ height: 36,
42
+ position: 'absolute',
43
+ right: 2,
44
+ width: 32
45
+ },
46
+ secureButtonContainer: {
47
+ justifyContent: 'center',
48
+ width: 32
22
49
  }
23
50
  });
24
51
  const TextField = /*#__PURE__*/React.forwardRef(function TextField(props, ref) {
@@ -31,6 +58,7 @@ const TextField = /*#__PURE__*/React.forwardRef(function TextField(props, ref) {
31
58
  onBlur,
32
59
  onChangeText: onChangeTextProp,
33
60
  onFocus,
61
+ placeholder: placeholderProp,
34
62
  placeholderTextColor: placeholderTextColorProp,
35
63
  secureTextEntry: secureTextEntryProp,
36
64
  showClearButton: showClearButtonProp,
@@ -72,13 +100,15 @@ const TextField = /*#__PURE__*/React.forwardRef(function TextField(props, ref) {
72
100
 
73
101
  const showClearButton = showClearButtonProp ?? isSearch;
74
102
  const titleFontStyle = createFontStyle(theme, {
75
- // selector: (typography) => typography.caption1['semiBold']
103
+ selector: typography => typography.caption1['semiBold'],
76
104
  color: theme.palette.text.strong
77
105
  });
78
- const inputStyle = css([styles.input, variantStyles.inputStyle, Platform.OS === 'web' ? {
106
+ const inputStyle = css([styles.input, variantStyles.inputStyle, variantStyles.inputFontStyle, Platform.OS === 'web' ? {
79
107
  outlineWidth: 0
80
108
  } : {}, styleProp]);
81
- const placeholderTextColor = placeholderTextColorProp ?? theme.palette.status.disabledLabel;
109
+ const placeholderFontStyle = css([variantStyles.inputFontStyle, {
110
+ color: placeholderTextColorProp ?? theme.palette.status.disabledLabel
111
+ }]);
82
112
  const containerStyle = css([styles.root, variantStyles.containerStyle, {
83
113
  opacity: disabled ? 0.3 : 1
84
114
  }, containerStyleProp]);
@@ -87,29 +117,44 @@ const TextField = /*#__PURE__*/React.forwardRef(function TextField(props, ref) {
87
117
  style: titleFontStyle
88
118
  }) : null, /*#__PURE__*/React.createElement(Row, {
89
119
  style: containerStyle
90
- }, isSearch ? isLoading ? /*#__PURE__*/React.createElement(LoadingSpinner, null) : /*#__PURE__*/React.createElement(Search, {
120
+ }, /*#__PURE__*/React.createElement(React.Fragment, null, isSearch ? /*#__PURE__*/React.createElement(View, {
121
+ style: styles.searchIconContainer
122
+ }, isLoading ? /*#__PURE__*/React.createElement(LoadingSpinner, {
123
+ style: styles.loadingSinner
124
+ }) : /*#__PURE__*/React.createElement(Search, {
91
125
  color: 'base',
92
- height: 18,
93
- width: 18
94
- }) : null, /*#__PURE__*/React.createElement(TextInput, _extends({
126
+ height: 19,
127
+ width: 19
128
+ })) : null, /*#__PURE__*/React.createElement(View, {
129
+ style: styles.inputWrapper
130
+ }, /*#__PURE__*/React.createElement(View, {
131
+ pointerEvents: 'none',
132
+ style: styles.placeholderWrapper
133
+ }, placeholderProp && !value ? /*#__PURE__*/React.createElement(Text, {
134
+ children: placeholderProp,
135
+ numberOfLines: 1,
136
+ style: placeholderFontStyle
137
+ }) : null), /*#__PURE__*/React.createElement(TextInput, _extends({
95
138
  autoFocus: autoFocus,
96
139
  editable: !disabled,
97
140
  onBlur: handleBlur,
98
141
  onChangeText: handleChangeText,
99
142
  onFocus: handleFocus,
100
- placeholderTextColor: placeholderTextColor,
101
143
  ref: ref,
102
144
  secureTextEntry: secureTextEntry,
103
145
  style: inputStyle,
104
146
  value: value
105
- }, otherProps)), showClearButton && value !== null && value !== void 0 && value.length && value.length > 0 ? /*#__PURE__*/React.createElement(IconButton, {
147
+ }, otherProps)))), showClearButton && value !== null && value !== void 0 && value.length && value.length > 0 ? /*#__PURE__*/React.createElement(IconButton, {
106
148
  color: 'base',
107
149
  children: /*#__PURE__*/React.createElement(Clear, {
108
- height: 13.75,
109
- width: 15
150
+ height: 17.31,
151
+ width: 15.9
110
152
  }),
111
- onPress: handleClear
112
- }) : null, secureTextEntryProp && !isSearch ? /*#__PURE__*/React.createElement(IconButton, {
153
+ onPress: handleClear,
154
+ style: styles.clearButton
155
+ }) : null, secureTextEntryProp && !isSearch ? /*#__PURE__*/React.createElement(View, {
156
+ style: styles.secureButtonContainer
157
+ }, /*#__PURE__*/React.createElement(IconButton, {
113
158
  color: 'base',
114
159
  onPress: handleSecureTogglePress,
115
160
  style: styles.secureToggleButton
@@ -119,7 +164,7 @@ const TextField = /*#__PURE__*/React.forwardRef(function TextField(props, ref) {
119
164
  }) : /*#__PURE__*/React.createElement(EyeOn, {
120
165
  height: 19,
121
166
  width: 17.42
122
- })) : null), hint && !isSearch ? /*#__PURE__*/React.createElement(Text, {
167
+ }))) : null), hint && !isSearch ? /*#__PURE__*/React.createElement(Text, {
123
168
  children: hint,
124
169
  style: variantStyles.hintStyle
125
170
  }) : null);
@@ -1 +1 @@
1
- {"version":3,"names":["React","useState","Platform","StyleSheet","Text","TextInput","View","css","IconButton","Clear","EyeOff","EyeOn","LoadingSpinner","Search","Row","createFontStyle","useTheme","useVariantStyleMap","styles","create","root","alignItems","flexGrow","input","secureToggleButton","padding","TextField","forwardRef","props","ref","autoFocus","containerStyle","containerStyleProp","editable","hint","isLoading","onBlur","onChangeText","onChangeTextProp","onFocus","placeholderTextColor","placeholderTextColorProp","secureTextEntry","secureTextEntryProp","showClearButton","showClearButtonProp","status","style","styleProp","title","value","variant","otherProps","isSearch","disabled","theme","isFocused","setIsFocused","setSecureTextEntry","variantStyles","handleBlur","event","handleFocus","handleSecureTogglePress","current","handleChangeText","text","handleClear","titleFontStyle","color","palette","strong","inputStyle","OS","outlineWidth","disabledLabel","opacity","length","hintStyle"],"sources":["TextField.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport type { NativeSyntheticEvent, TextInputFocusEventData } from 'react-native';\nimport { Platform, StyleSheet, Text, TextInput, View } from 'react-native';\nimport type { FountainUiStyle } from '@fountain-ui/styles';\nimport { css } from '@fountain-ui/styles';\nimport IconButton from '../IconButton/IconButton';\nimport { Clear, EyeOff, EyeOn, LoadingSpinner, Search } from '../internal/icons';\nimport Row from '../Row';\nimport { createFontStyle, useTheme } from '../styles';\nimport type TextFieldProps from './TextFieldProps';\nimport type { TextFieldStatus, TextFieldVariant } from './TextFieldProps';\nimport useVariantStyleMap from './useVariantStyleMap';\n\nconst styles = StyleSheet.create({\n root: {\n alignItems: 'center',\n flexGrow: 1,\n },\n input: {\n flexGrow: 1,\n },\n secureToggleButton: {\n alignItems: 'flex-end',\n padding: 0,\n },\n});\n\nconst TextField = React.forwardRef<TextInput, TextFieldProps>(function TextField(props, ref) {\n const {\n autoFocus,\n containerStyle: containerStyleProp,\n editable = true,\n hint,\n isLoading,\n onBlur,\n onChangeText: onChangeTextProp,\n onFocus,\n placeholderTextColor: placeholderTextColorProp,\n secureTextEntry: secureTextEntryProp,\n showClearButton: showClearButtonProp,\n status = 'default' as TextFieldStatus,\n style: styleProp,\n title,\n value,\n variant = 'default' as TextFieldVariant,\n ...otherProps\n } = props;\n\n const isSearch = variant === 'search';\n\n const disabled = !editable || isLoading;\n\n const theme = useTheme();\n\n const [isFocused, setIsFocused] = useState<boolean>(autoFocus ?? false);\n const [secureTextEntry, setSecureTextEntry] = useState<boolean>(secureTextEntryProp ?? false);\n\n const variantStyles = useVariantStyleMap(variant, status, isFocused);\n\n const handleBlur = (event: NativeSyntheticEvent<TextInputFocusEventData>) => {\n setIsFocused(false);\n onBlur?.(event);\n };\n\n const handleFocus = (event: NativeSyntheticEvent<TextInputFocusEventData>) => {\n setIsFocused(true);\n onFocus?.(event);\n };\n\n const handleSecureTogglePress = () => {\n setSecureTextEntry((current) => !current);\n };\n\n const handleChangeText = (text: string) => {\n onChangeTextProp?.(text);\n };\n\n const handleClear = () => {\n handleChangeText('');\n };\n\n const showClearButton = showClearButtonProp ?? isSearch;\n\n const titleFontStyle = createFontStyle(theme, {\n // selector: (typography) => typography.caption1['semiBold']\n color: theme.palette.text.strong,\n });\n\n const inputStyle = css([\n styles.input,\n variantStyles.inputStyle,\n Platform.OS === 'web' ? { outlineWidth: 0 } as FountainUiStyle : {},\n styleProp,\n ]);\n\n const placeholderTextColor = placeholderTextColorProp ?? theme.palette.status.disabledLabel;\n\n const containerStyle = css([\n styles.root,\n variantStyles.containerStyle,\n { opacity: disabled ? 0.3 : 1 },\n containerStyleProp,\n ]);\n\n return (\n <View>\n {title && !isSearch ? (\n <Text\n children={title}\n style={titleFontStyle}\n />\n ) : null}\n\n <Row style={containerStyle}>\n {isSearch ? (\n isLoading ? (\n <LoadingSpinner/>\n ) : (\n <Search\n color={'base'}\n height={18}\n width={18}\n />\n )\n ) : null}\n\n <TextInput\n autoFocus={autoFocus}\n editable={!disabled}\n onBlur={handleBlur}\n onChangeText={handleChangeText}\n onFocus={handleFocus}\n placeholderTextColor={placeholderTextColor}\n ref={ref}\n secureTextEntry={secureTextEntry}\n style={inputStyle}\n value={value}\n {...otherProps}\n />\n\n {showClearButton && value?.length && value.length > 0 ? (\n <IconButton\n color={'base'}\n children={\n <Clear\n height={13.75}\n width={15}\n />\n }\n onPress={handleClear}\n />\n ) : null}\n\n {secureTextEntryProp && !isSearch ? (\n <IconButton\n color={'base'}\n onPress={handleSecureTogglePress}\n style={styles.secureToggleButton}\n >\n {secureTextEntry ? (\n <EyeOff\n height={19}\n width={17.42}\n />\n ) : (\n <EyeOn\n height={19}\n width={17.42}\n />\n )}\n </IconButton>\n ) : null}\n </Row>\n\n {hint && !isSearch ? (\n <Text\n children={hint}\n style={variantStyles.hintStyle}\n />\n ) : null}\n </View>\n );\n});\n\nexport default TextField;\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","useState","Platform","StyleSheet","Text","TextInput","View","css","IconButton","Clear","EyeOff","EyeOn","LoadingSpinner","Search","Row","createFontStyle","useTheme","useVariantStyleMap","styles","create","root","alignItems","flexGrow","input","inputWrapper","flexShrink","placeholderWrapper","absoluteFillObject","justifyContent","secureToggleButton","padding","position","right","searchIconContainer","left","loadingSinner","height","width","clearButton","secureButtonContainer","TextField","forwardRef","props","ref","autoFocus","containerStyle","containerStyleProp","editable","hint","isLoading","onBlur","onChangeText","onChangeTextProp","onFocus","placeholder","placeholderProp","placeholderTextColor","placeholderTextColorProp","secureTextEntry","secureTextEntryProp","showClearButton","showClearButtonProp","status","style","styleProp","title","value","variant","otherProps","isSearch","disabled","theme","isFocused","setIsFocused","setSecureTextEntry","variantStyles","handleBlur","event","handleFocus","handleSecureTogglePress","current","handleChangeText","text","handleClear","titleFontStyle","selector","typography","caption1","color","palette","strong","inputStyle","inputFontStyle","OS","outlineWidth","placeholderFontStyle","disabledLabel","opacity","length","hintStyle"],"sources":["TextField.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport type { NativeSyntheticEvent, TextInputFocusEventData } from 'react-native';\nimport { Platform, StyleSheet, Text, TextInput, View } from 'react-native';\nimport type { FountainUiStyle } from '@fountain-ui/styles';\nimport { css } from '@fountain-ui/styles';\nimport IconButton from '../IconButton/IconButton';\nimport { Clear, EyeOff, EyeOn, LoadingSpinner, Search } from '../internal/icons';\nimport Row from '../Row';\nimport { createFontStyle, useTheme } from '../styles';\nimport type TextFieldProps from './TextFieldProps';\nimport type { TextFieldStatus, TextFieldVariant } from './TextFieldProps';\nimport useVariantStyleMap from './useVariantStyleMap';\n\nconst styles = StyleSheet.create({\n root: {\n alignItems: 'center',\n flexGrow: 1,\n },\n input: {\n flexGrow: 1,\n },\n inputWrapper: {\n flexGrow: 1,\n flexShrink: 1,\n },\n placeholderWrapper: {\n ...StyleSheet.absoluteFillObject,\n justifyContent: 'center',\n },\n secureToggleButton: {\n alignItems: 'flex-end',\n padding: 0,\n position: 'absolute',\n right: 0,\n },\n searchIconContainer: {\n left: 12,\n position: 'absolute',\n },\n loadingSinner: {\n height: 19,\n width: 19,\n },\n clearButton: {\n height: 36,\n position: 'absolute',\n right: 2,\n width: 32,\n },\n secureButtonContainer: {\n justifyContent: 'center',\n width: 32,\n },\n});\n\nconst TextField = React.forwardRef<TextInput, TextFieldProps>(function TextField(props, ref) {\n const {\n autoFocus,\n containerStyle: containerStyleProp,\n editable = true,\n hint,\n isLoading,\n onBlur,\n onChangeText: onChangeTextProp,\n onFocus,\n placeholder: placeholderProp,\n placeholderTextColor: placeholderTextColorProp,\n secureTextEntry: secureTextEntryProp,\n showClearButton: showClearButtonProp,\n status = 'default' as TextFieldStatus,\n style: styleProp,\n title,\n value,\n variant = 'default' as TextFieldVariant,\n ...otherProps\n } = props;\n\n const isSearch = variant === 'search';\n\n const disabled = !editable || isLoading;\n\n const theme = useTheme();\n\n const [isFocused, setIsFocused] = useState<boolean>(autoFocus ?? false);\n const [secureTextEntry, setSecureTextEntry] = useState<boolean>(secureTextEntryProp ?? false);\n\n const variantStyles = useVariantStyleMap(variant, status, isFocused);\n\n const handleBlur = (event: NativeSyntheticEvent<TextInputFocusEventData>) => {\n setIsFocused(false);\n onBlur?.(event);\n };\n\n const handleFocus = (event: NativeSyntheticEvent<TextInputFocusEventData>) => {\n setIsFocused(true);\n onFocus?.(event);\n };\n\n const handleSecureTogglePress = () => {\n setSecureTextEntry((current) => !current);\n };\n\n const handleChangeText = (text: string) => {\n onChangeTextProp?.(text);\n };\n\n const handleClear = () => {\n handleChangeText('');\n };\n\n const showClearButton = showClearButtonProp ?? isSearch;\n\n const titleFontStyle = createFontStyle(theme, {\n selector: (typography) => typography.caption1['semiBold'],\n color: theme.palette.text.strong,\n });\n\n const inputStyle = css([\n styles.input,\n variantStyles.inputStyle,\n variantStyles.inputFontStyle,\n Platform.OS === 'web' ? { outlineWidth: 0 } as FountainUiStyle : {},\n styleProp,\n ]);\n\n const placeholderFontStyle = css([\n variantStyles.inputFontStyle,\n { color: placeholderTextColorProp ?? theme.palette.status.disabledLabel },\n ]);\n\n const containerStyle = css([\n styles.root,\n variantStyles.containerStyle,\n { opacity: disabled ? 0.3 : 1 },\n containerStyleProp,\n ]);\n\n return (\n <View>\n {title && !isSearch ? (\n <Text\n children={title}\n style={titleFontStyle}\n />\n ) : null}\n\n <Row style={containerStyle}>\n <React.Fragment>\n {isSearch ? (\n <View style={styles.searchIconContainer}>\n {isLoading ? (\n <LoadingSpinner style={styles.loadingSinner}/>\n ) : (\n <Search\n color={'base'}\n height={19}\n width={19}\n />\n )}\n </View>\n ) : null}\n\n <View style={styles.inputWrapper}>\n <View\n pointerEvents={'none'}\n style={styles.placeholderWrapper}\n >\n {placeholderProp && !value ? (\n <Text\n children={placeholderProp}\n numberOfLines={1}\n style={placeholderFontStyle}\n />\n ) : null}\n </View>\n\n <TextInput\n autoFocus={autoFocus}\n editable={!disabled}\n onBlur={handleBlur}\n onChangeText={handleChangeText}\n onFocus={handleFocus}\n ref={ref}\n secureTextEntry={secureTextEntry}\n style={inputStyle}\n value={value}\n {...otherProps}\n />\n </View>\n </React.Fragment>\n\n {showClearButton && value?.length && value.length > 0 ? (\n <IconButton\n color={'base'}\n children={\n <Clear\n height={17.31}\n width={15.9}\n />\n }\n onPress={handleClear}\n style={styles.clearButton}\n />\n ) : null}\n\n {secureTextEntryProp && !isSearch ? (\n <View style={styles.secureButtonContainer}>\n <IconButton\n color={'base'}\n onPress={handleSecureTogglePress}\n style={styles.secureToggleButton}\n >\n {secureTextEntry ? (\n <EyeOff\n height={19}\n width={17.42}\n />\n ) : (\n <EyeOn\n height={19}\n width={17.42}\n />\n )}\n </IconButton>\n </View>\n ) : null}\n </Row>\n\n {hint && !isSearch ? (\n <Text\n children={hint}\n style={variantStyles.hintStyle}\n />\n ) : null}\n </View>\n );\n});\n\nexport default TextField;\n"],"mappings":"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"}
@@ -38,25 +38,27 @@ export default function useVariantStyleMap(variant, status, isFocused) {
38
38
  return {
39
39
  containerStyle: {
40
40
  borderBottomColor: status === 'default' && isFocused ? theme.palette.border.strong : borderColor,
41
- borderBottomWidth: 1
41
+ borderBottomWidth: 1,
42
+ gap: 16,
43
+ minHeight: 60,
44
+ paddingVertical: 16
42
45
  },
43
46
  inputStyle: {
44
- paddingRight: theme.spacing(4),
45
- paddingVertical: theme.spacing(4),
46
- ...createFontStyle(theme, {
47
- selector: _ => typographyOf({
48
- fontSize: 18,
49
- lineHeight: 27,
50
- fontFamily: 'Pretendard-SemiBold',
51
- letterSpacing: 0
52
- }),
53
- color: theme.palette.text.strong
54
- })
47
+ padding: 0
55
48
  },
49
+ inputFontStyle: createFontStyle(theme, {
50
+ selector: _ => typographyOf({
51
+ fontSize: 18,
52
+ lineHeight: 27,
53
+ fontFamily: 'PretendardStd-SemiBold',
54
+ letterSpacing: 0
55
+ }),
56
+ color: theme.palette.text.strong
57
+ }),
56
58
  hintStyle: {
57
59
  marginTop: theme.spacing(2),
58
60
  ...createFontStyle(theme, {
59
- // selector: (typography) => typography.caption1['regular']
61
+ selector: typography => typography.caption1['regular'],
60
62
  color: hintColor
61
63
  })
62
64
  }
@@ -69,24 +71,22 @@ export default function useVariantStyleMap(variant, status, isFocused) {
69
71
  borderColor: theme.palette.border.base,
70
72
  borderRadius: theme.shape.radius.md,
71
73
  borderWidth: 0.5,
72
- paddingLeft: theme.spacing(3),
73
- paddingRight: theme.spacing(0.5)
74
+ paddingBottom: 12,
75
+ paddingHorizontal: 39,
76
+ paddingTop: 11
74
77
  },
75
78
  inputStyle: {
76
- paddingBottom: theme.spacing(2.5),
77
- paddingLeft: theme.spacing(2),
78
- paddingRight: theme.spacing(1),
79
- paddingTop: theme.spacing(2.25),
80
- ...createFontStyle(theme, {
81
- selector: _ => typographyOf({
82
- fontSize: 16,
83
- lineHeight: 19.2,
84
- fontFamily: 'Pretendard-SemiBold',
85
- letterSpacing: -0.16
86
- }),
87
- color: theme.palette.text.strong
88
- })
89
- }
79
+ padding: 0
80
+ },
81
+ inputFontStyle: createFontStyle(theme, {
82
+ selector: _ => typographyOf({
83
+ fontSize: 16,
84
+ lineHeight: 19.2,
85
+ fontFamily: 'PretendardStd-SemiBold',
86
+ letterSpacing: -0.16
87
+ }),
88
+ color: theme.palette.text.strong
89
+ })
90
90
  };
91
91
  }
92
92
  }, [theme, borderColor, hintColor, variant, isFocused]);
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","typographyOf","createFontStyle","useTheme","useStatusColor","theme","status","borderColor","palette","border","base","hintColor","text","weak","success","danger","useVariantStyleMap","variant","isFocused","containerStyle","borderBottomColor","strong","borderBottomWidth","inputStyle","paddingRight","spacing","paddingVertical","selector","_","fontSize","lineHeight","fontFamily","letterSpacing","color","hintStyle","marginTop","backgroundColor","surface","supportive","borderRadius","shape","radius","md","borderWidth","paddingLeft","paddingBottom","paddingTop"],"sources":["useVariantStyleMap.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport type { FountainUiStyle, Theme } from '@fountain-ui/styles';\nimport { typographyOf } from '@fountain-ui/styles';\nimport { createFontStyle, useTheme } from '../styles';\nimport type { TextFieldStatus, TextFieldVariant } from './TextFieldProps';\n\ninterface VariantStyleMap {\n containerStyle?: FountainUiStyle;\n inputStyle?: FountainUiStyle;\n hintStyle?: FountainUiStyle;\n}\n\nfunction useStatusColor(theme: Theme, status: TextFieldStatus): { borderColor: string; hintColor: string; } {\n switch (status) {\n default:\n case 'default':\n return {\n borderColor: theme.palette.border.base,\n hintColor: theme.palette.text.weak,\n };\n case 'success':\n return {\n borderColor: theme.palette.status.success,\n hintColor: theme.palette.status.success,\n };\n case 'error':\n return {\n borderColor: theme.palette.status.danger,\n hintColor: theme.palette.status.danger,\n };\n }\n}\n\nexport default function useVariantStyleMap(variant: TextFieldVariant, status: TextFieldStatus, isFocused: boolean): VariantStyleMap {\n const theme = useTheme();\n\n const {\n borderColor,\n hintColor,\n } = useStatusColor(theme, status);\n\n return useMemo(() => {\n switch (variant) {\n default:\n case 'default':\n return {\n containerStyle: {\n borderBottomColor: status === 'default' && isFocused ? theme.palette.border.strong : borderColor,\n borderBottomWidth: 1,\n },\n inputStyle: {\n paddingRight: theme.spacing(4),\n paddingVertical: theme.spacing(4),\n ...createFontStyle(theme, {\n selector: (_) => typographyOf({\n fontSize: 18,\n lineHeight: 27,\n fontFamily: 'Pretendard-SemiBold',\n letterSpacing: 0,\n }),\n color: theme.palette.text.strong,\n }),\n },\n hintStyle: {\n marginTop: theme.spacing(2),\n ...createFontStyle(theme, {\n // selector: (typography) => typography.caption1['regular']\n color: hintColor,\n }),\n },\n };\n case 'search':\n return {\n containerStyle: {\n backgroundColor: theme.palette.surface.supportive,\n borderColor: theme.palette.border.base,\n borderRadius: theme.shape.radius.md,\n borderWidth: 0.5,\n paddingLeft: theme.spacing(3),\n paddingRight: theme.spacing(0.5),\n },\n inputStyle: {\n paddingBottom: theme.spacing(2.5),\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(1),\n paddingTop: theme.spacing(2.25),\n ...createFontStyle(theme, {\n selector: (_) => typographyOf({\n fontSize: 16,\n lineHeight: 19.2,\n fontFamily: 'Pretendard-SemiBold',\n letterSpacing: -0.16,\n }),\n color: theme.palette.text.strong,\n }),\n },\n };\n }\n }, [theme, borderColor, hintColor, variant, isFocused]);\n}\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,OAAxB;AAEA,SAASC,YAAT,QAA6B,qBAA7B;AACA,SAASC,eAAT,EAA0BC,QAA1B,QAA0C,WAA1C;;AASA,SAASC,cAAT,CAAwBC,KAAxB,EAAsCC,MAAtC,EAA4G;EACxG,QAAQA,MAAR;IACI;IACA,KAAK,SAAL;MACI,OAAO;QACHC,WAAW,EAAEF,KAAK,CAACG,OAAN,CAAcC,MAAd,CAAqBC,IAD/B;QAEHC,SAAS,EAAEN,KAAK,CAACG,OAAN,CAAcI,IAAd,CAAmBC;MAF3B,CAAP;;IAIJ,KAAK,SAAL;MACI,OAAO;QACHN,WAAW,EAAEF,KAAK,CAACG,OAAN,CAAcF,MAAd,CAAqBQ,OAD/B;QAEHH,SAAS,EAAEN,KAAK,CAACG,OAAN,CAAcF,MAAd,CAAqBQ;MAF7B,CAAP;;IAIJ,KAAK,OAAL;MACI,OAAO;QACHP,WAAW,EAAEF,KAAK,CAACG,OAAN,CAAcF,MAAd,CAAqBS,MAD/B;QAEHJ,SAAS,EAAEN,KAAK,CAACG,OAAN,CAAcF,MAAd,CAAqBS;MAF7B,CAAP;EAbR;AAkBH;;AAED,eAAe,SAASC,kBAAT,CAA4BC,OAA5B,EAAuDX,MAAvD,EAAgFY,SAAhF,EAAqH;EAChI,MAAMb,KAAK,GAAGF,QAAQ,EAAtB;EAEA,MAAM;IACFI,WADE;IAEFI;EAFE,IAGFP,cAAc,CAACC,KAAD,EAAQC,MAAR,CAHlB;EAKA,OAAON,OAAO,CAAC,MAAM;IACjB,QAAQiB,OAAR;MACI;MACA,KAAK,SAAL;QACI,OAAO;UACHE,cAAc,EAAE;YACZC,iBAAiB,EAAEd,MAAM,KAAK,SAAX,IAAwBY,SAAxB,GAAoCb,KAAK,CAACG,OAAN,CAAcC,MAAd,CAAqBY,MAAzD,GAAkEd,WADzE;YAEZe,iBAAiB,EAAE;UAFP,CADb;UAKHC,UAAU,EAAE;YACRC,YAAY,EAAEnB,KAAK,CAACoB,OAAN,CAAc,CAAd,CADN;YAERC,eAAe,EAAErB,KAAK,CAACoB,OAAN,CAAc,CAAd,CAFT;YAGR,GAAGvB,eAAe,CAACG,KAAD,EAAQ;cACtBsB,QAAQ,EAAGC,CAAD,IAAO3B,YAAY,CAAC;gBAC1B4B,QAAQ,EAAE,EADgB;gBAE1BC,UAAU,EAAE,EAFc;gBAG1BC,UAAU,EAAE,qBAHc;gBAI1BC,aAAa,EAAE;cAJW,CAAD,CADP;cAOtBC,KAAK,EAAE5B,KAAK,CAACG,OAAN,CAAcI,IAAd,CAAmBS;YAPJ,CAAR;UAHV,CALT;UAkBHa,SAAS,EAAE;YACPC,SAAS,EAAE9B,KAAK,CAACoB,OAAN,CAAc,CAAd,CADJ;YAEP,GAAGvB,eAAe,CAACG,KAAD,EAAQ;cACtB;cACA4B,KAAK,EAAEtB;YAFe,CAAR;UAFX;QAlBR,CAAP;;MA0BJ,KAAK,QAAL;QACI,OAAO;UACHQ,cAAc,EAAE;YACZiB,eAAe,EAAE/B,KAAK,CAACG,OAAN,CAAc6B,OAAd,CAAsBC,UAD3B;YAEZ/B,WAAW,EAAEF,KAAK,CAACG,OAAN,CAAcC,MAAd,CAAqBC,IAFtB;YAGZ6B,YAAY,EAAElC,KAAK,CAACmC,KAAN,CAAYC,MAAZ,CAAmBC,EAHrB;YAIZC,WAAW,EAAE,GAJD;YAKZC,WAAW,EAAEvC,KAAK,CAACoB,OAAN,CAAc,CAAd,CALD;YAMZD,YAAY,EAAEnB,KAAK,CAACoB,OAAN,CAAc,GAAd;UANF,CADb;UASHF,UAAU,EAAE;YACRsB,aAAa,EAAExC,KAAK,CAACoB,OAAN,CAAc,GAAd,CADP;YAERmB,WAAW,EAAEvC,KAAK,CAACoB,OAAN,CAAc,CAAd,CAFL;YAGRD,YAAY,EAAEnB,KAAK,CAACoB,OAAN,CAAc,CAAd,CAHN;YAIRqB,UAAU,EAAEzC,KAAK,CAACoB,OAAN,CAAc,IAAd,CAJJ;YAKR,GAAGvB,eAAe,CAACG,KAAD,EAAQ;cACtBsB,QAAQ,EAAGC,CAAD,IAAO3B,YAAY,CAAC;gBAC1B4B,QAAQ,EAAE,EADgB;gBAE1BC,UAAU,EAAE,IAFc;gBAG1BC,UAAU,EAAE,qBAHc;gBAI1BC,aAAa,EAAE,CAAC;cAJU,CAAD,CADP;cAOtBC,KAAK,EAAE5B,KAAK,CAACG,OAAN,CAAcI,IAAd,CAAmBS;YAPJ,CAAR;UALV;QATT,CAAP;IA9BR;EAwDH,CAzDa,EAyDX,CAAChB,KAAD,EAAQE,WAAR,EAAqBI,SAArB,EAAgCM,OAAhC,EAAyCC,SAAzC,CAzDW,CAAd;AA0DH"}
1
+ {"version":3,"names":["useMemo","typographyOf","createFontStyle","useTheme","useStatusColor","theme","status","borderColor","palette","border","base","hintColor","text","weak","success","danger","useVariantStyleMap","variant","isFocused","containerStyle","borderBottomColor","strong","borderBottomWidth","gap","minHeight","paddingVertical","inputStyle","padding","inputFontStyle","selector","_","fontSize","lineHeight","fontFamily","letterSpacing","color","hintStyle","marginTop","spacing","typography","caption1","backgroundColor","surface","supportive","borderRadius","shape","radius","md","borderWidth","paddingBottom","paddingHorizontal","paddingTop"],"sources":["useVariantStyleMap.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport type { TextStyle } from 'react-native';\nimport type { FountainUiStyle, Theme } from '@fountain-ui/styles';\nimport { typographyOf } from '@fountain-ui/styles';\nimport { createFontStyle, useTheme } from '../styles';\nimport type { TextFieldStatus, TextFieldVariant } from './TextFieldProps';\n\ninterface VariantStyleMap {\n containerStyle?: FountainUiStyle;\n inputFontStyle?: TextStyle;\n inputStyle?: FountainUiStyle;\n hintStyle?: FountainUiStyle;\n}\n\nfunction useStatusColor(theme: Theme, status: TextFieldStatus): { borderColor: string; hintColor: string; } {\n switch (status) {\n default:\n case 'default':\n return {\n borderColor: theme.palette.border.base,\n hintColor: theme.palette.text.weak,\n };\n case 'success':\n return {\n borderColor: theme.palette.status.success,\n hintColor: theme.palette.status.success,\n };\n case 'error':\n return {\n borderColor: theme.palette.status.danger,\n hintColor: theme.palette.status.danger,\n };\n }\n}\n\nexport default function useVariantStyleMap(variant: TextFieldVariant, status: TextFieldStatus, isFocused: boolean): VariantStyleMap {\n const theme = useTheme();\n\n const {\n borderColor,\n hintColor,\n } = useStatusColor(theme, status);\n\n return useMemo(() => {\n switch (variant) {\n default:\n case 'default':\n return {\n containerStyle: {\n borderBottomColor: status === 'default' && isFocused ? theme.palette.border.strong : borderColor,\n borderBottomWidth: 1,\n gap: 16,\n minHeight: 60,\n paddingVertical: 16,\n },\n inputStyle: {\n padding: 0,\n },\n inputFontStyle: createFontStyle(theme, {\n selector: (_) => typographyOf({\n fontSize: 18,\n lineHeight: 27,\n fontFamily: 'PretendardStd-SemiBold',\n letterSpacing: 0,\n }),\n color: theme.palette.text.strong,\n }),\n hintStyle: {\n marginTop: theme.spacing(2),\n ...createFontStyle(theme, {\n selector: (typography) => typography.caption1['regular'],\n color: hintColor,\n }),\n },\n };\n case 'search':\n return {\n containerStyle: {\n backgroundColor: theme.palette.surface.supportive,\n borderColor: theme.palette.border.base,\n borderRadius: theme.shape.radius.md,\n borderWidth: 0.5,\n paddingBottom: 12,\n paddingHorizontal: 39,\n paddingTop: 11,\n },\n inputStyle: {\n padding: 0,\n },\n inputFontStyle: createFontStyle(theme, {\n selector: (_) => typographyOf({\n fontSize: 16,\n lineHeight: 19.2,\n fontFamily: 'PretendardStd-SemiBold',\n letterSpacing: -0.16,\n }),\n color: theme.palette.text.strong,\n }),\n };\n }\n }, [theme, borderColor, hintColor, variant, isFocused]);\n}\n"],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
3
+ import React from 'react';
4
+ import { StyleSheet } from 'react-native';
5
+ import IconButton from '../../IconButton';
6
+ import { AppBarChevronLeft } from '../../internal';
7
+ import { css } from '@fountain-ui/styles';
8
+ const styles = StyleSheet.create({
9
+ root: {
10
+ height: 40,
11
+ left: 4,
12
+ paddingLeft: 5,
13
+ paddingRight: 11,
14
+ paddingVertical: 8,
15
+ position: 'absolute',
16
+ width: 40
17
+ }
18
+ });
19
+ export default function BackButton(props) {
20
+ const {
21
+ style: styleProp,
22
+ ...otherProps
23
+ } = props;
24
+ const rootStyle = css([styles.root, styleProp]);
25
+ return /*#__PURE__*/React.createElement(IconButton, _extends({
26
+ style: rootStyle
27
+ }, otherProps), /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(AppBarChevronLeft, {
28
+ height: 24,
29
+ width: 24
30
+ })));
31
+ }
32
+ //# sourceMappingURL=BackButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","StyleSheet","IconButton","AppBarChevronLeft","css","styles","create","root","height","left","paddingLeft","paddingRight","paddingVertical","position","width","BackButton","props","style","styleProp","otherProps","rootStyle"],"sources":["BackButton.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet } from 'react-native';\nimport IconButton from '../../IconButton';\nimport { AppBarChevronLeft } from '../../internal';\nimport type BackButtonProps from './BackButtonProps';\nimport { css } from '@fountain-ui/styles';\n\nconst styles = StyleSheet.create({\n root: {\n height: 40,\n left: 4,\n paddingLeft: 5,\n paddingRight: 11,\n paddingVertical: 8,\n position: 'absolute',\n width: 40,\n },\n});\n\nexport default function BackButton(props: BackButtonProps) {\n const {\n style: styleProp,\n ...otherProps\n } = props;\n\n const rootStyle = css([\n styles.root,\n styleProp,\n ]);\n\n return (\n <IconButton\n style={rootStyle}\n {...otherProps}\n >\n <React.Fragment>\n <AppBarChevronLeft\n height={24}\n width={24}\n />\n </React.Fragment>\n </IconButton>\n );\n}\n"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,UAAT,QAA2B,cAA3B;AACA,OAAOC,UAAP,MAAuB,kBAAvB;AACA,SAASC,iBAAT,QAAkC,gBAAlC;AAEA,SAASC,GAAT,QAAoB,qBAApB;AAEA,MAAMC,MAAM,GAAGJ,UAAU,CAACK,MAAX,CAAkB;EAC7BC,IAAI,EAAE;IACFC,MAAM,EAAE,EADN;IAEFC,IAAI,EAAE,CAFJ;IAGFC,WAAW,EAAE,CAHX;IAIFC,YAAY,EAAE,EAJZ;IAKFC,eAAe,EAAE,CALf;IAMFC,QAAQ,EAAE,UANR;IAOFC,KAAK,EAAE;EAPL;AADuB,CAAlB,CAAf;AAYA,eAAe,SAASC,UAAT,CAAoBC,KAApB,EAA4C;EACvD,MAAM;IACFC,KAAK,EAAEC,SADL;IAEF,GAAGC;EAFD,IAGFH,KAHJ;EAKA,MAAMI,SAAS,GAAGhB,GAAG,CAAC,CAClBC,MAAM,CAACE,IADW,EAElBW,SAFkB,CAAD,CAArB;EAKA,oBACI,oBAAC,UAAD;IACI,KAAK,EAAEE;EADX,GAEQD,UAFR,gBAII,oBAAC,KAAD,CAAO,QAAP,qBACI,oBAAC,iBAAD;IACI,MAAM,EAAE,EADZ;IAEI,KAAK,EAAE;EAFX,EADJ,CAJJ,CADJ;AAaH"}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=BackButtonProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["BackButtonProps.ts"],"sourcesContent":["import type { IconButtonProps } from '../../IconButton';\nimport type { OverridableComponentProps } from '../../types';\n\nexport default interface BackButtonProps extends OverridableComponentProps<Omit<IconButtonProps, 'children'>, {}> {}\n"],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export { default } from './BackButton';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["default"],"sources":["index.ts"],"sourcesContent":["export { default } from './BackButton';\nexport type { default as BackButtonProps } from './BackButtonProps';\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,cAAxB"}
@@ -1,18 +1,21 @@
1
1
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
2
 
3
3
  import React from 'react';
4
+ import { View } from 'react-native';
4
5
  import Row from '../Row';
5
- import { css, useTheme } from '../styles';
6
+ import { useBreakpointUp } from '../hooks';
7
+ import { css } from '../styles';
8
+ import BackButton from './BackButton';
6
9
 
7
10
  const useStyles = function () {
8
- const theme = useTheme();
11
+ const shouldApplyHorizontalPadding = useBreakpointUp('sm', true, false);
9
12
  return {
13
+ container: {
14
+ paddingHorizontal: shouldApplyHorizontalPadding ? 8 : 0
15
+ },
10
16
  root: {
11
17
  alignItems: 'center',
12
18
  flexWrap: 'nowrap'
13
- },
14
- gutters: {
15
- paddingHorizontal: theme.spacing(4)
16
19
  }
17
20
  };
18
21
  };
@@ -28,17 +31,22 @@ const sizeMap = {
28
31
  height: 56
29
32
  }
30
33
  };
31
- export default function Toolbar(props) {
34
+
35
+ const Toolbar = props => {
32
36
  const {
33
- disableGutters = false,
34
37
  size = 'medium',
35
38
  style,
36
39
  ...otherProps
37
40
  } = props;
38
41
  const styles = useStyles();
39
- return /*#__PURE__*/React.createElement(Row, _extends({
40
- style: css([styles.root, !disableGutters ? styles.gutters : undefined, sizeMap[size], style])
41
- }, otherProps));
42
- }
43
- ;
42
+ const rootStyle = css([styles.root, sizeMap[size], style]);
43
+ return /*#__PURE__*/React.createElement(View, {
44
+ style: styles.container
45
+ }, /*#__PURE__*/React.createElement(Row, _extends({
46
+ style: rootStyle
47
+ }, otherProps)));
48
+ };
49
+
50
+ Toolbar.BackButton = BackButton;
51
+ export default Toolbar;
44
52
  //# sourceMappingURL=Toolbar.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","Row","css","useTheme","useStyles","theme","root","alignItems","flexWrap","gutters","paddingHorizontal","spacing","sizeMap","small","height","medium","large","Toolbar","props","disableGutters","size","style","otherProps","styles","undefined"],"sources":["Toolbar.tsx"],"sourcesContent":["import React from 'react';\nimport type { FountainUiStyle, NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport Row from '../Row';\nimport { css, useTheme } from '../styles';\nimport type ToolbarProps from './ToolbarProps';\nimport type { ToolbarSize } from './ToolbarProps';\n\ntype ToolbarStyles = NamedStylesStringUnion<'root' | 'gutters'>;\n\nconst useStyles: UseStyles<ToolbarStyles> = function (): ToolbarStyles {\n const theme = useTheme();\n\n return {\n root: {\n alignItems: 'center',\n flexWrap: 'nowrap',\n },\n gutters: {\n paddingHorizontal: theme.spacing(4),\n },\n };\n};\n\nconst sizeMap: Record<ToolbarSize, FountainUiStyle> = {\n small: { height: 48 },\n medium: { height: 50 },\n large: { height: 56 },\n};\n\nexport default function Toolbar(props: ToolbarProps) {\n const {\n disableGutters = false,\n size = 'medium',\n style,\n ...otherProps\n } = props;\n\n const styles = useStyles();\n\n return (\n <Row\n style={css([\n styles.root,\n !disableGutters ? styles.gutters : undefined,\n sizeMap[size],\n style,\n ])}\n {...otherProps}\n />\n );\n};\n"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,OAAOC,GAAP,MAAgB,QAAhB;AACA,SAASC,GAAT,EAAcC,QAAd,QAA8B,WAA9B;;AAMA,MAAMC,SAAmC,GAAG,YAA2B;EACnE,MAAMC,KAAK,GAAGF,QAAQ,EAAtB;EAEA,OAAO;IACHG,IAAI,EAAE;MACFC,UAAU,EAAE,QADV;MAEFC,QAAQ,EAAE;IAFR,CADH;IAKHC,OAAO,EAAE;MACLC,iBAAiB,EAAEL,KAAK,CAACM,OAAN,CAAc,CAAd;IADd;EALN,CAAP;AASH,CAZD;;AAcA,MAAMC,OAA6C,GAAG;EAClDC,KAAK,EAAE;IAAEC,MAAM,EAAE;EAAV,CAD2C;EAElDC,MAAM,EAAE;IAAED,MAAM,EAAE;EAAV,CAF0C;EAGlDE,KAAK,EAAE;IAAEF,MAAM,EAAE;EAAV;AAH2C,CAAtD;AAMA,eAAe,SAASG,OAAT,CAAiBC,KAAjB,EAAsC;EACjD,MAAM;IACFC,cAAc,GAAG,KADf;IAEFC,IAAI,GAAG,QAFL;IAGFC,KAHE;IAIF,GAAGC;EAJD,IAKFJ,KALJ;EAOA,MAAMK,MAAM,GAAGnB,SAAS,EAAxB;EAEA,oBACI,oBAAC,GAAD;IACI,KAAK,EAAEF,GAAG,CAAC,CACPqB,MAAM,CAACjB,IADA,EAEP,CAACa,cAAD,GAAkBI,MAAM,CAACd,OAAzB,GAAmCe,SAF5B,EAGPZ,OAAO,CAACQ,IAAD,CAHA,EAIPC,KAJO,CAAD;EADd,GAOQC,UAPR,EADJ;AAWH;AAAA"}
1
+ {"version":3,"names":["React","View","Row","useBreakpointUp","css","BackButton","useStyles","shouldApplyHorizontalPadding","container","paddingHorizontal","root","alignItems","flexWrap","sizeMap","small","height","medium","large","Toolbar","props","size","style","otherProps","styles","rootStyle"],"sources":["Toolbar.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport type { FountainUiStyle, NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport Row from '../Row';\nimport { useBreakpointUp } from '../hooks';\nimport { css } from '../styles';\nimport BackButton from './BackButton';\nimport type ToolbarProps from './ToolbarProps';\nimport type { ToolbarSize } from './ToolbarProps';\n\ntype ToolbarStyles = NamedStylesStringUnion<'container' | 'root'>;\n\nconst useStyles: UseStyles<ToolbarStyles> = function (): ToolbarStyles {\n const shouldApplyHorizontalPadding = useBreakpointUp('sm', true, false);\n\n return {\n container: {\n paddingHorizontal: shouldApplyHorizontalPadding ? 8 : 0,\n },\n root: {\n alignItems: 'center',\n flexWrap: 'nowrap',\n },\n };\n};\n\nconst sizeMap: Record<ToolbarSize, FountainUiStyle> = {\n small: { height: 48 },\n medium: { height: 50 },\n large: { height: 56 },\n};\n\nconst Toolbar = (props: ToolbarProps) => {\n const {\n size = 'medium',\n style,\n ...otherProps\n } = props;\n\n const styles = useStyles();\n\n const rootStyle = css([\n styles.root,\n sizeMap[size],\n style,\n ]);\n\n return (\n <View style={styles.container}>\n <Row\n style={rootStyle}\n {...otherProps}\n />\n </View>\n );\n};\n\nToolbar.BackButton = BackButton;\n\nexport default Toolbar;\n"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,IAAT,QAAqB,cAArB;AAEA,OAAOC,GAAP,MAAgB,QAAhB;AACA,SAASC,eAAT,QAAgC,UAAhC;AACA,SAASC,GAAT,QAAoB,WAApB;AACA,OAAOC,UAAP,MAAuB,cAAvB;;AAMA,MAAMC,SAAmC,GAAG,YAA2B;EACnE,MAAMC,4BAA4B,GAAGJ,eAAe,CAAC,IAAD,EAAO,IAAP,EAAa,KAAb,CAApD;EAEA,OAAO;IACHK,SAAS,EAAE;MACPC,iBAAiB,EAAEF,4BAA4B,GAAG,CAAH,GAAO;IAD/C,CADR;IAIHG,IAAI,EAAE;MACFC,UAAU,EAAE,QADV;MAEFC,QAAQ,EAAE;IAFR;EAJH,CAAP;AASH,CAZD;;AAcA,MAAMC,OAA6C,GAAG;EAClDC,KAAK,EAAE;IAAEC,MAAM,EAAE;EAAV,CAD2C;EAElDC,MAAM,EAAE;IAAED,MAAM,EAAE;EAAV,CAF0C;EAGlDE,KAAK,EAAE;IAAEF,MAAM,EAAE;EAAV;AAH2C,CAAtD;;AAMA,MAAMG,OAAO,GAAIC,KAAD,IAAyB;EACrC,MAAM;IACFC,IAAI,GAAG,QADL;IAEFC,KAFE;IAGF,GAAGC;EAHD,IAIFH,KAJJ;EAMA,MAAMI,MAAM,GAAGjB,SAAS,EAAxB;EAEA,MAAMkB,SAAS,GAAGpB,GAAG,CAAC,CAClBmB,MAAM,CAACb,IADW,EAElBG,OAAO,CAACO,IAAD,CAFW,EAGlBC,KAHkB,CAAD,CAArB;EAMA,oBACI,oBAAC,IAAD;IAAM,KAAK,EAAEE,MAAM,CAACf;EAApB,gBACI,oBAAC,GAAD;IACI,KAAK,EAAEgB;EADX,GAEQF,UAFR,EADJ,CADJ;AAQH,CAvBD;;AAyBAJ,OAAO,CAACb,UAAR,GAAqBA,UAArB;AAEA,eAAea,OAAf"}
@@ -1 +1 @@
1
- {"version":3,"names":["toolbarSizes"],"sources":["ToolbarProps.ts"],"sourcesContent":["import React from 'react';\nimport type { RowProps } from '../Row';\nimport type { OverridableComponentProps } from '../types';\n\nexport const toolbarSizes = ['small', 'medium', 'large'] as const;\nexport type ToolbarSize = typeof toolbarSizes[number];\n\nexport default interface ToolbarProps extends OverridableComponentProps<RowProps, {\n /**\n * The content of the component.\n */\n children: React.ReactNode,\n\n /**\n * If `true`, disables gutter padding.\n * @default false\n */\n disableGutters?: boolean,\n\n /**\n * Determines the height of the toolbar.\n * @default 'medium'\n */\n size?: ToolbarSize;\n}> {}\n"],"mappings":"AAIA,OAAO,MAAMA,YAAY,GAAG,CAAC,OAAD,EAAU,QAAV,EAAoB,OAApB,CAArB"}
1
+ {"version":3,"names":["toolbarSizes"],"sources":["ToolbarProps.ts"],"sourcesContent":["import React from 'react';\nimport type { RowProps } from '../Row';\nimport type { OverridableComponentProps } from '../types';\n\nexport const toolbarSizes = ['small', 'medium', 'large'] as const;\nexport type ToolbarSize = typeof toolbarSizes[number];\n\nexport default interface ToolbarProps extends OverridableComponentProps<RowProps, {\n /**\n * The content of the component.\n */\n children: React.ReactNode,\n\n /**\n * Determines the height of the toolbar.\n * @default 'medium'\n */\n size?: ToolbarSize;\n}> {}\n"],"mappings":"AAIA,OAAO,MAAMA,YAAY,GAAG,CAAC,OAAD,EAAU,QAAV,EAAoB,OAApB,CAArB"}
@@ -1,2 +1,6 @@
1
1
  export { default } from './Beak';
2
+ export { default as HorizontalLargeBeak } from './HorizontalLargeBeak';
3
+ export { default as HorizontalSmallBeak } from './HorizontalSmallBeak';
4
+ export { default as VerticalLargeBeak } from './VerticalLargeBeak';
5
+ export { default as VerticalSmallBeak } from './VerticalSmallBeak';
2
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["default"],"sources":["index.ts"],"sourcesContent":["export { default } from './Beak';\nexport type { default as BeakProps } from './BeakProps';\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,QAAxB"}
1
+ {"version":3,"names":["default","HorizontalLargeBeak","HorizontalSmallBeak","VerticalLargeBeak","VerticalSmallBeak"],"sources":["index.ts"],"sourcesContent":["export { default } from './Beak';\nexport type { default as BeakProps } from './BeakProps';\nexport { default as HorizontalLargeBeak } from './HorizontalLargeBeak';\nexport { default as HorizontalSmallBeak } from './HorizontalSmallBeak';\nexport { default as VerticalLargeBeak } from './VerticalLargeBeak';\nexport { default as VerticalSmallBeak } from './VerticalSmallBeak';\n"],"mappings":"AAAA,SAASA,OAAT,QAAwB,QAAxB;AAEA,SAASA,OAAO,IAAIC,mBAApB,QAA+C,uBAA/C;AACA,SAASD,OAAO,IAAIE,mBAApB,QAA+C,uBAA/C;AACA,SAASF,OAAO,IAAIG,iBAApB,QAA6C,qBAA7C;AACA,SAASH,OAAO,IAAII,iBAApB,QAA6C,qBAA7C"}
@@ -1,7 +1,8 @@
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
1
3
  import React, { useEffect, useState } from 'react';
2
4
  import { Platform, Text, View } from 'react-native';
3
5
  import Animated, { useAnimatedStyle, useSharedValue, withTiming } from 'react-native-reanimated';
4
- import { typographyOf } from '@fountain-ui/styles';
5
6
  import ButtonBase from '../ButtonBase';
6
7
  import { createFontStyle, css, useTheme } from '../styles';
7
8
  import Beak from './Beaks';
@@ -50,14 +51,14 @@ const useStyles = function () {
50
51
  },
51
52
  small: {
52
53
  borderRadius: theme.shape.radius.sm,
54
+ paddingBottom: theme.spacing(1.75),
53
55
  paddingHorizontal: theme.spacing(2),
54
- paddingVertical: theme.spacing(1.5)
56
+ paddingTop: theme.spacing(1.5)
55
57
  },
56
58
  large: {
57
59
  borderRadius: 5,
58
- paddingBottom: theme.spacing(2.5),
59
60
  paddingHorizontal: theme.spacing(4),
60
- paddingTop: theme.spacing(2)
61
+ paddingVertical: theme.spacing(2)
61
62
  }
62
63
  };
63
64
  };
@@ -77,7 +78,8 @@ export default function Tooltip(props) {
77
78
  title,
78
79
  tooltipStyle,
79
80
  verticalOffset = 4,
80
- visible = false
81
+ visible = false,
82
+ ...otherProps
81
83
  } = props;
82
84
  const {
83
85
  offset: beakOffset,
@@ -91,7 +93,7 @@ export default function Tooltip(props) {
91
93
  transform: [{
92
94
  scale: scale.value
93
95
  }]
94
- }), []);
96
+ }), [scale]);
95
97
  const flexDirection = getFlexDirection(placement);
96
98
  const isVerticalPlacement = placement === 'top' || placement === 'bottom';
97
99
  const totalOffset = -((isVerticalPlacement ? layout.height : layout.width) + verticalOffset);
@@ -121,12 +123,7 @@ export default function Tooltip(props) {
121
123
  scale.value = withTiming(nextScaleValue, ANIMATION_CONFIG);
122
124
  }, [visible]);
123
125
  const fontStyle = createFontStyle(theme, {
124
- selector: typo => size === 'large' ? typographyOf({
125
- fontSize: 13,
126
- lineHeight: 19.5,
127
- fontFamily: 'Pretendard-Regular',
128
- letterSpacing: 0
129
- }) : typo.caption2.regular,
126
+ selector: typo => size === 'large' ? typo.body3.regular : typo.caption2.regular,
130
127
  color: theme.palette.text.strongInverse
131
128
  });
132
129
  const textStyle = css([fontStyle, {
@@ -155,9 +152,9 @@ export default function Tooltip(props) {
155
152
  placement: placement,
156
153
  size: size
157
154
  }));
158
- return /*#__PURE__*/React.createElement(View, {
155
+ return /*#__PURE__*/React.createElement(View, _extends({
159
156
  style: style
160
- }, children, /*#__PURE__*/React.createElement(Animated.View, {
157
+ }, otherProps), children, /*#__PURE__*/React.createElement(Animated.View, {
161
158
  onLayout: event => {
162
159
  if (event.nativeEvent.layout.height === 0) {
163
160
  return;
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useState","Platform","Text","View","Animated","useAnimatedStyle","useSharedValue","withTiming","typographyOf","ButtonBase","createFontStyle","css","useTheme","Beak","DEFAULT_BEAK_LAYOUT","offset","placement","INITIAL_LAYOUT","width","height","x","y","ANIMATION_CONFIG","duration","getFlexDirection","useStyles","theme","root","position","zIndex","tooltip","content","backgroundColor","palette","fill","base","paddingHorizontal","spacing","paddingVertical","small","borderRadius","shape","radius","sm","large","paddingBottom","paddingTop","Tooltip","props","beakLayout","children","initialLayout","left","onClose","right","numberOfTitleLines","size","style","title","tooltipStyle","verticalOffset","visible","beakOffset","beakPlacement","styles","layout","setLayout","scale","animatedStyle","transform","value","flexDirection","isVerticalPlacement","totalOffset","tooltipLayoutStyle","alignItems","undefined","overflow","select","web","display","default","contentStyle","flexGrow","flexShrink","nextScaleValue","fontStyle","selector","typo","fontSize","lineHeight","fontFamily","letterSpacing","caption2","regular","color","text","strongInverse","textStyle","beakStyle","translateX","translateY","buttonElem","beakElem","event","nativeEvent"],"sources":["Tooltip.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { Platform, Text, View, ViewProps } from 'react-native';\nimport type { WithTimingConfig } from 'react-native-reanimated';\nimport Animated, { useAnimatedStyle, useSharedValue, withTiming } from 'react-native-reanimated';\nimport type { NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport { typographyOf } from '@fountain-ui/styles';\nimport ButtonBase from '../ButtonBase';\nimport { createFontStyle, css, useTheme } from '../styles';\nimport type TooltipProps from './TooltipProps';\nimport type { TooltipBeakLayout, TooltipPlacement, TooltipSize } from './TooltipProps';\nimport Beak from './Beaks';\n\nconst DEFAULT_BEAK_LAYOUT: TooltipBeakLayout = {\n offset: 0,\n placement: 'middle',\n};\n\nconst INITIAL_LAYOUT = { width: 0, height: 0, x: 0, y: 0 };\n\nconst ANIMATION_CONFIG: Readonly<WithTimingConfig> = { duration: 150 };\n\ntype FlexDirection = 'row' | 'column' | 'row-reverse' | 'column-reverse';\n\nconst getFlexDirection = (placement: TooltipPlacement): FlexDirection => {\n switch (placement) {\n case 'right':\n return 'row-reverse';\n case 'bottom':\n return 'column-reverse';\n case 'left':\n return 'row';\n case 'top':\n default:\n return 'column';\n }\n};\n\ntype TooltipStyles = NamedStylesStringUnion<'root' | 'content' | 'small' | 'large'>;\n\nconst useStyles: UseStyles<TooltipStyles> = function (): TooltipStyles {\n const theme = useTheme();\n\n return {\n root: {\n position: 'absolute',\n zIndex: theme.zIndex.tooltip,\n },\n content: {\n backgroundColor: theme.palette.fill.base,\n paddingHorizontal: theme.spacing(2),\n paddingVertical: theme.spacing(1.5),\n },\n small: {\n borderRadius: theme.shape.radius.sm,\n paddingHorizontal: theme.spacing(2),\n paddingVertical: theme.spacing(1.5),\n },\n large: {\n borderRadius: 5,\n paddingBottom: theme.spacing(2.5),\n paddingHorizontal: theme.spacing(4),\n paddingTop: theme.spacing(2),\n },\n };\n};\n\nexport default function Tooltip(props: TooltipProps) {\n const {\n beakLayout = DEFAULT_BEAK_LAYOUT,\n children,\n initialLayout = INITIAL_LAYOUT,\n left,\n onClose,\n placement = 'top' as TooltipPlacement,\n right,\n numberOfTitleLines = 1,\n size = 'small' as TooltipSize,\n style,\n title,\n tooltipStyle,\n verticalOffset = 4,\n visible = false,\n } = props;\n\n const {\n offset: beakOffset,\n placement: beakPlacement,\n } = beakLayout;\n\n const theme = useTheme();\n\n const styles = useStyles();\n\n const [layout, setLayout] = useState(initialLayout);\n\n const scale = useSharedValue(0);\n\n const animatedStyle = useAnimatedStyle(() => ({\n transform: [{ scale: scale.value }],\n }), []);\n\n const flexDirection = getFlexDirection(placement);\n\n const isVerticalPlacement = placement === 'top' || placement === 'bottom';\n\n const totalOffset = -((isVerticalPlacement ? layout.height : layout.width) + verticalOffset);\n const tooltipLayoutStyle: ViewProps['style'] = {\n alignItems: beakPlacement === 'start'\n ? 'flex-start'\n : beakPlacement === 'end'\n ? 'flex-end'\n : 'center',\n flexDirection,\n left,\n right,\n height: visible ? undefined : 0,\n overflow: visible ? undefined : 'hidden',\n ...Platform.select({\n web: {\n display: visible ? 'flex' : 'none',\n },\n default: {},\n }),\n [placement]: totalOffset,\n };\n\n const contentStyle = css([\n styles.content,\n styles[size],\n isVerticalPlacement\n ? { width: '100%' }\n : { flexGrow: 1, flexShrink: 1 },\n ]);\n\n useEffect(() => {\n const nextScaleValue = visible ? 1 : 0;\n\n scale.value = withTiming(nextScaleValue, ANIMATION_CONFIG);\n }, [visible]);\n\n const fontStyle = createFontStyle(theme, {\n selector: (typo) => size === 'large'\n ? typographyOf({\n fontSize: 13,\n lineHeight: 19.5,\n fontFamily: 'Pretendard-Regular',\n letterSpacing: 0,\n })\n : typo.caption2.regular,\n color: theme.palette.text.strongInverse,\n });\n\n const textStyle = css([\n fontStyle,\n { flexShrink: 1 },\n ]);\n\n const beakStyle = css({\n transform: [isVerticalPlacement ? { translateX: beakOffset } : { translateY: beakOffset }],\n });\n\n const buttonElem = (\n <ButtonBase\n pressEffect={'none'}\n onPress={onClose}\n style={contentStyle}\n >\n <Text\n // TODO: Should we provide text prop customization?\n numberOfLines={numberOfTitleLines}\n style={textStyle}\n >\n {title}\n </Text>\n </ButtonBase>\n );\n\n const beakElem = (\n <View style={beakStyle}>\n <Beak\n fill={theme.palette.fill.base}\n placement={placement}\n size={size}\n />\n </View>\n );\n\n return (\n <View style={style}>\n {children}\n\n <Animated.View\n onLayout={(event) => {\n if (event.nativeEvent.layout.height === 0) {\n return;\n }\n\n setLayout(event.nativeEvent.layout);\n }}\n style={[\n styles.root,\n animatedStyle,\n tooltipLayoutStyle,\n tooltipStyle,\n ]}\n >\n {buttonElem}\n\n {beakElem}\n </Animated.View>\n </View>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","useEffect","useState","Platform","Text","View","Animated","useAnimatedStyle","useSharedValue","withTiming","ButtonBase","createFontStyle","css","useTheme","Beak","DEFAULT_BEAK_LAYOUT","offset","placement","INITIAL_LAYOUT","width","height","x","y","ANIMATION_CONFIG","duration","getFlexDirection","useStyles","theme","root","position","zIndex","tooltip","content","backgroundColor","palette","fill","base","paddingHorizontal","spacing","paddingVertical","small","borderRadius","shape","radius","sm","paddingBottom","paddingTop","large","Tooltip","props","beakLayout","children","initialLayout","left","onClose","right","numberOfTitleLines","size","style","title","tooltipStyle","verticalOffset","visible","otherProps","beakOffset","beakPlacement","styles","layout","setLayout","scale","animatedStyle","transform","value","flexDirection","isVerticalPlacement","totalOffset","tooltipLayoutStyle","alignItems","undefined","overflow","select","web","display","default","contentStyle","flexGrow","flexShrink","nextScaleValue","fontStyle","selector","typo","body3","regular","caption2","color","text","strongInverse","textStyle","beakStyle","translateX","translateY","buttonElem","beakElem","event","nativeEvent"],"sources":["Tooltip.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { Platform, Text, View, ViewProps } from 'react-native';\nimport type { WithTimingConfig } from 'react-native-reanimated';\nimport Animated, { useAnimatedStyle, useSharedValue, withTiming } from 'react-native-reanimated';\nimport type { NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport ButtonBase from '../ButtonBase';\nimport { createFontStyle, css, useTheme } from '../styles';\nimport type TooltipProps from './TooltipProps';\nimport type { TooltipBeakLayout, TooltipPlacement, TooltipSize } from './TooltipProps';\nimport Beak from './Beaks';\n\nconst DEFAULT_BEAK_LAYOUT: TooltipBeakLayout = {\n offset: 0,\n placement: 'middle',\n};\n\nconst INITIAL_LAYOUT = { width: 0, height: 0, x: 0, y: 0 };\n\nconst ANIMATION_CONFIG: Readonly<WithTimingConfig> = { duration: 150 };\n\ntype FlexDirection = 'row' | 'column' | 'row-reverse' | 'column-reverse';\n\nconst getFlexDirection = (placement: TooltipPlacement): FlexDirection => {\n switch (placement) {\n case 'right':\n return 'row-reverse';\n case 'bottom':\n return 'column-reverse';\n case 'left':\n return 'row';\n case 'top':\n default:\n return 'column';\n }\n};\n\ntype TooltipStyles = NamedStylesStringUnion<'root' | 'content' | 'small' | 'large'>;\n\nconst useStyles: UseStyles<TooltipStyles> = function (): TooltipStyles {\n const theme = useTheme();\n\n return {\n root: {\n position: 'absolute',\n zIndex: theme.zIndex.tooltip,\n },\n content: {\n backgroundColor: theme.palette.fill.base,\n paddingHorizontal: theme.spacing(2),\n paddingVertical: theme.spacing(1.5),\n },\n small: {\n borderRadius: theme.shape.radius.sm,\n paddingBottom: theme.spacing(1.75),\n paddingHorizontal: theme.spacing(2),\n paddingTop: theme.spacing(1.5),\n },\n large: {\n borderRadius: 5,\n paddingHorizontal: theme.spacing(4),\n paddingVertical: theme.spacing(2),\n },\n };\n};\n\nexport default function Tooltip(props: TooltipProps) {\n const {\n beakLayout = DEFAULT_BEAK_LAYOUT,\n children,\n initialLayout = INITIAL_LAYOUT,\n left,\n onClose,\n placement = 'top' as TooltipPlacement,\n right,\n numberOfTitleLines = 1,\n size = 'small' as TooltipSize,\n style,\n title,\n tooltipStyle,\n verticalOffset = 4,\n visible = false,\n ...otherProps\n } = props;\n\n const {\n offset: beakOffset,\n placement: beakPlacement,\n } = beakLayout;\n\n const theme = useTheme();\n\n const styles = useStyles();\n\n const [layout, setLayout] = useState(initialLayout);\n\n const scale = useSharedValue(0);\n\n const animatedStyle = useAnimatedStyle(() => ({\n transform: [{ scale: scale.value }],\n }), [scale]);\n\n const flexDirection = getFlexDirection(placement);\n\n const isVerticalPlacement = placement === 'top' || placement === 'bottom';\n\n const totalOffset = -((isVerticalPlacement ? layout.height : layout.width) + verticalOffset);\n const tooltipLayoutStyle: ViewProps['style'] = {\n alignItems: beakPlacement === 'start'\n ? 'flex-start'\n : beakPlacement === 'end'\n ? 'flex-end'\n : 'center',\n flexDirection,\n left,\n right,\n height: visible ? undefined : 0,\n overflow: visible ? undefined : 'hidden',\n ...Platform.select({\n web: {\n display: visible ? 'flex' : 'none',\n },\n default: {},\n }),\n [placement]: totalOffset,\n };\n\n const contentStyle = css([\n styles.content,\n styles[size],\n isVerticalPlacement\n ? { width: '100%' }\n : { flexGrow: 1, flexShrink: 1 },\n ]);\n\n useEffect(() => {\n const nextScaleValue = visible ? 1 : 0;\n\n scale.value = withTiming(nextScaleValue, ANIMATION_CONFIG);\n }, [visible]);\n\n const fontStyle = createFontStyle(theme, {\n selector: (typo) => size === 'large'\n ? typo.body3.regular\n : typo.caption2.regular,\n color: theme.palette.text.strongInverse,\n });\n\n const textStyle = css([\n fontStyle,\n { flexShrink: 1 },\n ]);\n\n const beakStyle = css({\n transform: [isVerticalPlacement ? { translateX: beakOffset } : { translateY: beakOffset }],\n });\n\n const buttonElem = (\n <ButtonBase\n pressEffect={'none'}\n onPress={onClose}\n style={contentStyle}\n >\n <Text\n // TODO: Should we provide text prop customization?\n numberOfLines={numberOfTitleLines}\n style={textStyle}\n >\n {title}\n </Text>\n </ButtonBase>\n );\n\n const beakElem = (\n <View style={beakStyle}>\n <Beak\n fill={theme.palette.fill.base}\n placement={placement}\n size={size}\n />\n </View>\n );\n\n return (\n <View\n style={style}\n {...otherProps}\n >\n {children}\n\n <Animated.View\n onLayout={(event) => {\n if (event.nativeEvent.layout.height === 0) {\n return;\n }\n\n setLayout(event.nativeEvent.layout);\n }}\n style={[\n styles.root,\n animatedStyle,\n tooltipLayoutStyle,\n tooltipStyle,\n ]}\n >\n {buttonElem}\n\n {beakElem}\n </Animated.View>\n </View>\n );\n};\n"],"mappings":";;AAAA,OAAOA,KAAP,IAAgBC,SAAhB,EAA2BC,QAA3B,QAA2C,OAA3C;AACA,SAASC,QAAT,EAAmBC,IAAnB,EAAyBC,IAAzB,QAAgD,cAAhD;AAEA,OAAOC,QAAP,IAAmBC,gBAAnB,EAAqCC,cAArC,EAAqDC,UAArD,QAAuE,yBAAvE;AAEA,OAAOC,UAAP,MAAuB,eAAvB;AACA,SAASC,eAAT,EAA0BC,GAA1B,EAA+BC,QAA/B,QAA+C,WAA/C;AAGA,OAAOC,IAAP,MAAiB,SAAjB;AAEA,MAAMC,mBAAsC,GAAG;EAC3CC,MAAM,EAAE,CADmC;EAE3CC,SAAS,EAAE;AAFgC,CAA/C;AAKA,MAAMC,cAAc,GAAG;EAAEC,KAAK,EAAE,CAAT;EAAYC,MAAM,EAAE,CAApB;EAAuBC,CAAC,EAAE,CAA1B;EAA6BC,CAAC,EAAE;AAAhC,CAAvB;AAEA,MAAMC,gBAA4C,GAAG;EAAEC,QAAQ,EAAE;AAAZ,CAArD;;AAIA,MAAMC,gBAAgB,GAAIR,SAAD,IAAgD;EACrE,QAAQA,SAAR;IACI,KAAK,OAAL;MACI,OAAO,aAAP;;IACJ,KAAK,QAAL;MACI,OAAO,gBAAP;;IACJ,KAAK,MAAL;MACI,OAAO,KAAP;;IACJ,KAAK,KAAL;IACA;MACI,OAAO,QAAP;EATR;AAWH,CAZD;;AAgBA,MAAMS,SAAmC,GAAG,YAA2B;EACnE,MAAMC,KAAK,GAAGd,QAAQ,EAAtB;EAEA,OAAO;IACHe,IAAI,EAAE;MACFC,QAAQ,EAAE,UADR;MAEFC,MAAM,EAAEH,KAAK,CAACG,MAAN,CAAaC;IAFnB,CADH;IAKHC,OAAO,EAAE;MACLC,eAAe,EAAEN,KAAK,CAACO,OAAN,CAAcC,IAAd,CAAmBC,IAD/B;MAELC,iBAAiB,EAAEV,KAAK,CAACW,OAAN,CAAc,CAAd,CAFd;MAGLC,eAAe,EAAEZ,KAAK,CAACW,OAAN,CAAc,GAAd;IAHZ,CALN;IAUHE,KAAK,EAAE;MACHC,YAAY,EAAEd,KAAK,CAACe,KAAN,CAAYC,MAAZ,CAAmBC,EAD9B;MAEHC,aAAa,EAAElB,KAAK,CAACW,OAAN,CAAc,IAAd,CAFZ;MAGHD,iBAAiB,EAAEV,KAAK,CAACW,OAAN,CAAc,CAAd,CAHhB;MAIHQ,UAAU,EAAEnB,KAAK,CAACW,OAAN,CAAc,GAAd;IAJT,CAVJ;IAgBHS,KAAK,EAAE;MACHN,YAAY,EAAE,CADX;MAEHJ,iBAAiB,EAAEV,KAAK,CAACW,OAAN,CAAc,CAAd,CAFhB;MAGHC,eAAe,EAAEZ,KAAK,CAACW,OAAN,CAAc,CAAd;IAHd;EAhBJ,CAAP;AAsBH,CAzBD;;AA2BA,eAAe,SAASU,OAAT,CAAiBC,KAAjB,EAAsC;EACjD,MAAM;IACFC,UAAU,GAAGnC,mBADX;IAEFoC,QAFE;IAGFC,aAAa,GAAGlC,cAHd;IAIFmC,IAJE;IAKFC,OALE;IAMFrC,SAAS,GAAG,KANV;IAOFsC,KAPE;IAQFC,kBAAkB,GAAG,CARnB;IASFC,IAAI,GAAG,OATL;IAUFC,KAVE;IAWFC,KAXE;IAYFC,YAZE;IAaFC,cAAc,GAAG,CAbf;IAcFC,OAAO,GAAG,KAdR;IAeF,GAAGC;EAfD,IAgBFd,KAhBJ;EAkBA,MAAM;IACFjC,MAAM,EAAEgD,UADN;IAEF/C,SAAS,EAAEgD;EAFT,IAGFf,UAHJ;EAKA,MAAMvB,KAAK,GAAGd,QAAQ,EAAtB;EAEA,MAAMqD,MAAM,GAAGxC,SAAS,EAAxB;EAEA,MAAM,CAACyC,MAAD,EAASC,SAAT,IAAsBlE,QAAQ,CAACkD,aAAD,CAApC;EAEA,MAAMiB,KAAK,GAAG7D,cAAc,CAAC,CAAD,CAA5B;EAEA,MAAM8D,aAAa,GAAG/D,gBAAgB,CAAC,OAAO;IAC1CgE,SAAS,EAAE,CAAC;MAAEF,KAAK,EAAEA,KAAK,CAACG;IAAf,CAAD;EAD+B,CAAP,CAAD,EAElC,CAACH,KAAD,CAFkC,CAAtC;EAIA,MAAMI,aAAa,GAAGhD,gBAAgB,CAACR,SAAD,CAAtC;EAEA,MAAMyD,mBAAmB,GAAGzD,SAAS,KAAK,KAAd,IAAuBA,SAAS,KAAK,QAAjE;EAEA,MAAM0D,WAAW,GAAG,EAAE,CAACD,mBAAmB,GAAGP,MAAM,CAAC/C,MAAV,GAAmB+C,MAAM,CAAChD,KAA9C,IAAuD0C,cAAzD,CAApB;EACA,MAAMe,kBAAsC,GAAG;IAC3CC,UAAU,EAAEZ,aAAa,KAAK,OAAlB,GACN,YADM,GAENA,aAAa,KAAK,KAAlB,GACI,UADJ,GAEI,QALiC;IAM3CQ,aAN2C;IAO3CpB,IAP2C;IAQ3CE,KAR2C;IAS3CnC,MAAM,EAAE0C,OAAO,GAAGgB,SAAH,GAAe,CATa;IAU3CC,QAAQ,EAAEjB,OAAO,GAAGgB,SAAH,GAAe,QAVW;IAW3C,GAAG3E,QAAQ,CAAC6E,MAAT,CAAgB;MACfC,GAAG,EAAE;QACDC,OAAO,EAAEpB,OAAO,GAAG,MAAH,GAAY;MAD3B,CADU;MAIfqB,OAAO,EAAE;IAJM,CAAhB,CAXwC;IAiB3C,CAAClE,SAAD,GAAa0D;EAjB8B,CAA/C;EAoBA,MAAMS,YAAY,GAAGxE,GAAG,CAAC,CACrBsD,MAAM,CAAClC,OADc,EAErBkC,MAAM,CAACT,IAAD,CAFe,EAGrBiB,mBAAmB,GACb;IAAEvD,KAAK,EAAE;EAAT,CADa,GAEb;IAAEkE,QAAQ,EAAE,CAAZ;IAAeC,UAAU,EAAE;EAA3B,CALe,CAAD,CAAxB;EAQArF,SAAS,CAAC,MAAM;IACZ,MAAMsF,cAAc,GAAGzB,OAAO,GAAG,CAAH,GAAO,CAArC;IAEAO,KAAK,CAACG,KAAN,GAAc/D,UAAU,CAAC8E,cAAD,EAAiBhE,gBAAjB,CAAxB;EACH,CAJQ,EAIN,CAACuC,OAAD,CAJM,CAAT;EAMA,MAAM0B,SAAS,GAAG7E,eAAe,CAACgB,KAAD,EAAQ;IACrC8D,QAAQ,EAAGC,IAAD,IAAUjC,IAAI,KAAK,OAAT,GACdiC,IAAI,CAACC,KAAL,CAAWC,OADG,GAEdF,IAAI,CAACG,QAAL,CAAcD,OAHiB;IAIrCE,KAAK,EAAEnE,KAAK,CAACO,OAAN,CAAc6D,IAAd,CAAmBC;EAJW,CAAR,CAAjC;EAOA,MAAMC,SAAS,GAAGrF,GAAG,CAAC,CAClB4E,SADkB,EAElB;IAAEF,UAAU,EAAE;EAAd,CAFkB,CAAD,CAArB;EAKA,MAAMY,SAAS,GAAGtF,GAAG,CAAC;IAClB2D,SAAS,EAAE,CAACG,mBAAmB,GAAG;MAAEyB,UAAU,EAAEnC;IAAd,CAAH,GAAgC;MAAEoC,UAAU,EAAEpC;IAAd,CAApD;EADO,CAAD,CAArB;EAIA,MAAMqC,UAAU,gBACZ,oBAAC,UAAD;IACI,WAAW,EAAE,MADjB;IAEI,OAAO,EAAE/C,OAFb;IAGI,KAAK,EAAE8B;EAHX,gBAKI,oBAAC,IAAD,CACI;EADJ;IAEI,aAAa,EAAE5B,kBAFnB;IAGI,KAAK,EAAEyC;EAHX,GAKKtC,KALL,CALJ,CADJ;EAgBA,MAAM2C,QAAQ,gBACV,oBAAC,IAAD;IAAM,KAAK,EAAEJ;EAAb,gBACI,oBAAC,IAAD;IACI,IAAI,EAAEvE,KAAK,CAACO,OAAN,CAAcC,IAAd,CAAmBC,IAD7B;IAEI,SAAS,EAAEnB,SAFf;IAGI,IAAI,EAAEwC;EAHV,EADJ,CADJ;EAUA,oBACI,oBAAC,IAAD;IACI,KAAK,EAAEC;EADX,GAEQK,UAFR,GAIKZ,QAJL,eAMI,oBAAC,QAAD,CAAU,IAAV;IACI,QAAQ,EAAGoD,KAAD,IAAW;MACjB,IAAIA,KAAK,CAACC,WAAN,CAAkBrC,MAAlB,CAAyB/C,MAAzB,KAAoC,CAAxC,EAA2C;QACvC;MACH;;MAEDgD,SAAS,CAACmC,KAAK,CAACC,WAAN,CAAkBrC,MAAnB,CAAT;IACH,CAPL;IAQI,KAAK,EAAE,CACHD,MAAM,CAACtC,IADJ,EAEH0C,aAFG,EAGHM,kBAHG,EAIHhB,YAJG;EARX,GAeKyC,UAfL,EAiBKC,QAjBL,CANJ,CADJ;AA4BH;AAAA"}