@fountain-ui/core 3.0.0-alpha.2 → 3.0.0-alpha.20

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 (433) hide show
  1. package/build/commonjs/Accordion/Accordion.js +7 -4
  2. package/build/commonjs/Accordion/Accordion.js.map +1 -1
  3. package/build/commonjs/Accordion/useVariantStyleMap.js +15 -8
  4. package/build/commonjs/Accordion/useVariantStyleMap.js.map +1 -1
  5. package/build/commonjs/AppBar/AppBar.js +6 -1
  6. package/build/commonjs/AppBar/AppBar.js.map +1 -1
  7. package/build/commonjs/Badge/Badge.js +4 -3
  8. package/build/commonjs/Badge/Badge.js.map +1 -1
  9. package/build/commonjs/Badge/BadgeProps.js.map +1 -1
  10. package/build/commonjs/Badge/useVariantStyleMap.js +2 -2
  11. package/build/commonjs/Badge/useVariantStyleMap.js.map +1 -1
  12. package/build/commonjs/BottomSheetTitle/BottomSheetTitle.js +5 -2
  13. package/build/commonjs/BottomSheetTitle/BottomSheetTitle.js.map +1 -1
  14. package/build/commonjs/BottomSheetTitle/BottomSheetTitleProps.js.map +1 -1
  15. package/build/commonjs/Button/Button.js +26 -12
  16. package/build/commonjs/Button/Button.js.map +1 -1
  17. package/build/commonjs/Button/ButtonProps.js.map +1 -1
  18. package/build/commonjs/Button/useVariantStyleMap.js +3 -1
  19. package/build/commonjs/Button/useVariantStyleMap.js.map +1 -1
  20. package/build/commonjs/ButtonBase/index.js +2 -2
  21. package/build/commonjs/ButtonBase/index.js.map +1 -1
  22. package/build/commonjs/Checkbox/Checkbox.js +4 -1
  23. package/build/commonjs/Checkbox/Checkbox.js.map +1 -1
  24. package/build/commonjs/Checkbox/useVariantStyleMap.js +6 -2
  25. package/build/commonjs/Checkbox/useVariantStyleMap.js.map +1 -1
  26. package/build/commonjs/Chip/Chip.js +21 -14
  27. package/build/commonjs/Chip/Chip.js.map +1 -1
  28. package/build/commonjs/Chip/ChipProps.js +3 -1
  29. package/build/commonjs/Chip/ChipProps.js.map +1 -1
  30. package/build/commonjs/Chip/index.js +6 -0
  31. package/build/commonjs/Chip/index.js.map +1 -1
  32. package/build/commonjs/Chip/useChipStyle.js +29 -19
  33. package/build/commonjs/Chip/useChipStyle.js.map +1 -1
  34. package/build/commonjs/Dialog/Dialog.js +7 -10
  35. package/build/commonjs/Dialog/Dialog.js.map +1 -1
  36. package/build/commonjs/Dialog/DialogProps.js +1 -1
  37. package/build/commonjs/Dialog/DialogProps.js.map +1 -1
  38. package/build/commonjs/Dialog/useDialogSectionStyle.js +6 -4
  39. package/build/commonjs/Dialog/useDialogSectionStyle.js.map +1 -1
  40. package/build/commonjs/Dialog/useDialogStyle.js +19 -8
  41. package/build/commonjs/Dialog/useDialogStyle.js.map +1 -1
  42. package/build/commonjs/DialogActions/DialogActions.js +0 -1
  43. package/build/commonjs/DialogActions/DialogActions.js.map +1 -1
  44. package/build/commonjs/DialogTitle/DialogLargeTitle.js +80 -0
  45. package/build/commonjs/DialogTitle/DialogLargeTitle.js.map +1 -0
  46. package/build/commonjs/DialogTitle/DialogTitle.js +8 -4
  47. package/build/commonjs/DialogTitle/DialogTitle.js.map +1 -1
  48. package/build/commonjs/Divider/Divider.js +17 -9
  49. package/build/commonjs/Divider/Divider.js.map +1 -1
  50. package/build/commonjs/Divider/DividerProps.js +1 -1
  51. package/build/commonjs/Divider/DividerProps.js.map +1 -1
  52. package/build/commonjs/Empty/Empty.js +1 -1
  53. package/build/commonjs/Empty/Empty.js.map +1 -1
  54. package/build/commonjs/Flexbox/Flexbox.js +2 -0
  55. package/build/commonjs/Flexbox/Flexbox.js.map +1 -1
  56. package/build/commonjs/Flexbox/FlexboxProps.js.map +1 -1
  57. package/build/commonjs/IconButton/IconButton.js +3 -0
  58. package/build/commonjs/IconButton/IconButton.js.map +1 -1
  59. package/build/commonjs/IconButton/IconButtonProps.js +1 -1
  60. package/build/commonjs/IconButton/IconButtonProps.js.map +1 -1
  61. package/build/commonjs/ImageCore/ImageCoreNative.js +1 -1
  62. package/build/commonjs/ImageCore/ImageCoreNative.js.map +1 -1
  63. package/build/commonjs/ListItem/ListItem.js +38 -26
  64. package/build/commonjs/ListItem/ListItem.js.map +1 -1
  65. package/build/commonjs/ListItem/ListItemProps.js.map +1 -1
  66. package/build/commonjs/ListItemIcon/ListItemIcon.js +1 -2
  67. package/build/commonjs/ListItemIcon/ListItemIcon.js.map +1 -1
  68. package/build/commonjs/ListItemSecondaryAction/ListItemSecondaryAction.js +2 -0
  69. package/build/commonjs/ListItemSecondaryAction/ListItemSecondaryAction.js.map +1 -1
  70. package/build/commonjs/ListItemText/ListItemText.js +20 -21
  71. package/build/commonjs/ListItemText/ListItemText.js.map +1 -1
  72. package/build/commonjs/ListItemText/ListItemTextProps.js.map +1 -1
  73. package/build/commonjs/ListSubheader/ListSubheader.js +1 -1
  74. package/build/commonjs/ListSubheader/ListSubheader.js.map +1 -1
  75. package/build/commonjs/Pagination/NumberPagination.js +1 -1
  76. package/build/commonjs/Pagination/NumberPagination.js.map +1 -1
  77. package/build/commonjs/Pagination/Pagination.js +2 -0
  78. package/build/commonjs/Pagination/Pagination.js.map +1 -1
  79. package/build/commonjs/Pagination/PaginationProps.js +3 -1
  80. package/build/commonjs/Pagination/PaginationProps.js.map +1 -1
  81. package/build/commonjs/Pagination/index.js +6 -0
  82. package/build/commonjs/Pagination/index.js.map +1 -1
  83. package/build/commonjs/PaginationItem/PaginationItem.js +32 -22
  84. package/build/commonjs/PaginationItem/PaginationItem.js.map +1 -1
  85. package/build/commonjs/PaginationItem/PaginationItemProps.js.map +1 -1
  86. package/build/commonjs/Radio/Radio.js +11 -4
  87. package/build/commonjs/Radio/Radio.js.map +1 -1
  88. package/build/commonjs/RadioGroup/RadioGroup.js +2 -27
  89. package/build/commonjs/RadioGroup/RadioGroup.js.map +1 -1
  90. package/build/commonjs/Section/Section.js +32 -0
  91. package/build/commonjs/Section/Section.js.map +1 -0
  92. package/build/commonjs/Section/SectionProps.js +2 -0
  93. package/build/commonjs/Section/SectionProps.js.map +1 -0
  94. package/build/commonjs/Section/index.js +16 -0
  95. package/build/commonjs/Section/index.js.map +1 -0
  96. package/build/commonjs/ShadowView/ShadowView.native.js +4 -0
  97. package/build/commonjs/ShadowView/ShadowView.native.js.map +1 -1
  98. package/build/commonjs/SnackbarContent/SnackbarContent.js +26 -9
  99. package/build/commonjs/SnackbarContent/SnackbarContent.js.map +1 -1
  100. package/build/commonjs/Tab/Tab.js +18 -18
  101. package/build/commonjs/Tab/Tab.js.map +1 -1
  102. package/build/commonjs/Tab/TabProps.js +4 -2
  103. package/build/commonjs/Tab/TabProps.js.map +1 -1
  104. package/build/commonjs/Tab/index.js +14 -0
  105. package/build/commonjs/Tab/index.js.map +1 -1
  106. package/build/commonjs/Tab/useVariantStyleMap.js +60 -16
  107. package/build/commonjs/Tab/useVariantStyleMap.js.map +1 -1
  108. package/build/commonjs/TabBase/TabBase.js +1 -8
  109. package/build/commonjs/TabBase/TabBase.js.map +1 -1
  110. package/build/commonjs/TabBase/TabBaseProps.js.map +1 -1
  111. package/build/commonjs/Tabs/Tabs.js +9 -5
  112. package/build/commonjs/Tabs/Tabs.js.map +1 -1
  113. package/build/commonjs/Tabs/TabsProps.js.map +1 -1
  114. package/build/commonjs/Tabs/useTabsStyle.js +54 -0
  115. package/build/commonjs/Tabs/useTabsStyle.js.map +1 -0
  116. package/build/commonjs/TextField/TextField.js +1 -1
  117. package/build/commonjs/TextField/TextField.js.map +1 -1
  118. package/build/commonjs/TextField/useVariantStyleMap.js +4 -3
  119. package/build/commonjs/TextField/useVariantStyleMap.js.map +1 -1
  120. package/build/commonjs/Toolbar/BackButton/BackButton.js +47 -0
  121. package/build/commonjs/Toolbar/BackButton/BackButton.js.map +1 -0
  122. package/build/commonjs/Toolbar/BackButton/BackButtonProps.js +2 -0
  123. package/build/commonjs/Toolbar/BackButton/BackButtonProps.js.map +1 -0
  124. package/build/commonjs/Toolbar/BackButton/index.js +16 -0
  125. package/build/commonjs/Toolbar/BackButton/index.js.map +1 -0
  126. package/build/commonjs/Toolbar/Toolbar.js +8 -4
  127. package/build/commonjs/Toolbar/Toolbar.js.map +1 -1
  128. package/build/commonjs/Tooltip/Beaks/index.js +32 -0
  129. package/build/commonjs/Tooltip/Beaks/index.js.map +1 -1
  130. package/build/commonjs/Tooltip/Tooltip.js +11 -18
  131. package/build/commonjs/Tooltip/Tooltip.js.map +1 -1
  132. package/build/commonjs/Tooltip/index.js +19 -0
  133. package/build/commonjs/Tooltip/index.js.map +1 -1
  134. package/build/commonjs/Typography/Typography.js +9 -2
  135. package/build/commonjs/Typography/Typography.js.map +1 -1
  136. package/build/commonjs/Typography/TypographyProps.js.map +1 -1
  137. package/build/commonjs/hooks/useBreakpointUp.js +4 -1
  138. package/build/commonjs/hooks/useBreakpointUp.js.map +1 -1
  139. package/build/commonjs/hooks/useCollapsibleAppBar.js +1 -1
  140. package/build/commonjs/hooks/useCollapsibleAppBar.js.map +1 -1
  141. package/build/commonjs/hooks/useContentContainerStyle.js +21 -28
  142. package/build/commonjs/hooks/useContentContainerStyle.js.map +1 -1
  143. package/build/commonjs/hooks/useFadeInAppBar.js +1 -1
  144. package/build/commonjs/hooks/useFadeInAppBar.js.map +1 -1
  145. package/build/commonjs/index.js +21 -0
  146. package/build/commonjs/index.js.map +1 -1
  147. package/build/commonjs/internal/icons/ChevronLeft.js +4 -2
  148. package/build/commonjs/internal/icons/ChevronLeft.js.map +1 -1
  149. package/build/commonjs/internal/icons/ChevronRight.js +4 -2
  150. package/build/commonjs/internal/icons/ChevronRight.js.map +1 -1
  151. package/build/commonjs/internal/icons/Close.js +4 -2
  152. package/build/commonjs/internal/icons/Close.js.map +1 -1
  153. package/build/module/Accordion/Accordion.js +7 -4
  154. package/build/module/Accordion/Accordion.js.map +1 -1
  155. package/build/module/Accordion/useVariantStyleMap.js +15 -8
  156. package/build/module/Accordion/useVariantStyleMap.js.map +1 -1
  157. package/build/module/AppBar/AppBar.js +5 -1
  158. package/build/module/AppBar/AppBar.js.map +1 -1
  159. package/build/module/Badge/Badge.js +4 -3
  160. package/build/module/Badge/Badge.js.map +1 -1
  161. package/build/module/Badge/BadgeProps.js.map +1 -1
  162. package/build/module/Badge/useVariantStyleMap.js +2 -2
  163. package/build/module/Badge/useVariantStyleMap.js.map +1 -1
  164. package/build/module/BottomSheetTitle/BottomSheetTitle.js +5 -2
  165. package/build/module/BottomSheetTitle/BottomSheetTitle.js.map +1 -1
  166. package/build/module/BottomSheetTitle/BottomSheetTitleProps.js.map +1 -1
  167. package/build/module/Button/Button.js +27 -13
  168. package/build/module/Button/Button.js.map +1 -1
  169. package/build/module/Button/ButtonProps.js.map +1 -1
  170. package/build/module/Button/useVariantStyleMap.js +3 -1
  171. package/build/module/Button/useVariantStyleMap.js.map +1 -1
  172. package/build/module/ButtonBase/index.js +1 -1
  173. package/build/module/ButtonBase/index.js.map +1 -1
  174. package/build/module/Checkbox/Checkbox.js +4 -1
  175. package/build/module/Checkbox/Checkbox.js.map +1 -1
  176. package/build/module/Checkbox/useVariantStyleMap.js +6 -2
  177. package/build/module/Checkbox/useVariantStyleMap.js.map +1 -1
  178. package/build/module/Chip/Chip.js +17 -13
  179. package/build/module/Chip/Chip.js.map +1 -1
  180. package/build/module/Chip/ChipProps.js +1 -0
  181. package/build/module/Chip/ChipProps.js.map +1 -1
  182. package/build/module/Chip/index.js +1 -1
  183. package/build/module/Chip/index.js.map +1 -1
  184. package/build/module/Chip/useChipStyle.js +29 -19
  185. package/build/module/Chip/useChipStyle.js.map +1 -1
  186. package/build/module/Dialog/Dialog.js +7 -9
  187. package/build/module/Dialog/Dialog.js.map +1 -1
  188. package/build/module/Dialog/DialogProps.js +1 -1
  189. package/build/module/Dialog/DialogProps.js.map +1 -1
  190. package/build/module/Dialog/useDialogSectionStyle.js +6 -4
  191. package/build/module/Dialog/useDialogSectionStyle.js.map +1 -1
  192. package/build/module/Dialog/useDialogStyle.js +18 -8
  193. package/build/module/Dialog/useDialogStyle.js.map +1 -1
  194. package/build/module/DialogActions/DialogActions.js +0 -1
  195. package/build/module/DialogActions/DialogActions.js.map +1 -1
  196. package/build/module/DialogTitle/DialogLargeTitle.js +65 -0
  197. package/build/module/DialogTitle/DialogLargeTitle.js.map +1 -0
  198. package/build/module/DialogTitle/DialogTitle.js +6 -3
  199. package/build/module/DialogTitle/DialogTitle.js.map +1 -1
  200. package/build/module/Divider/Divider.js +7 -0
  201. package/build/module/Divider/Divider.js.map +1 -1
  202. package/build/module/Divider/DividerProps.js +1 -1
  203. package/build/module/Divider/DividerProps.js.map +1 -1
  204. package/build/module/Empty/Empty.js +1 -1
  205. package/build/module/Empty/Empty.js.map +1 -1
  206. package/build/module/Flexbox/Flexbox.js +2 -0
  207. package/build/module/Flexbox/Flexbox.js.map +1 -1
  208. package/build/module/Flexbox/FlexboxProps.js.map +1 -1
  209. package/build/module/IconButton/IconButton.js +3 -0
  210. package/build/module/IconButton/IconButton.js.map +1 -1
  211. package/build/module/IconButton/IconButtonProps.js +1 -1
  212. package/build/module/IconButton/IconButtonProps.js.map +1 -1
  213. package/build/module/ImageCore/ImageCoreNative.js +1 -1
  214. package/build/module/ImageCore/ImageCoreNative.js.map +1 -1
  215. package/build/module/ListItem/ListItem.js +36 -28
  216. package/build/module/ListItem/ListItem.js.map +1 -1
  217. package/build/module/ListItem/ListItemProps.js.map +1 -1
  218. package/build/module/ListItemIcon/ListItemIcon.js +1 -2
  219. package/build/module/ListItemIcon/ListItemIcon.js.map +1 -1
  220. package/build/module/ListItemSecondaryAction/ListItemSecondaryAction.js +2 -0
  221. package/build/module/ListItemSecondaryAction/ListItemSecondaryAction.js.map +1 -1
  222. package/build/module/ListItemText/ListItemText.js +17 -19
  223. package/build/module/ListItemText/ListItemText.js.map +1 -1
  224. package/build/module/ListItemText/ListItemTextProps.js.map +1 -1
  225. package/build/module/ListSubheader/ListSubheader.js +1 -1
  226. package/build/module/ListSubheader/ListSubheader.js.map +1 -1
  227. package/build/module/Pagination/NumberPagination.js +1 -1
  228. package/build/module/Pagination/NumberPagination.js.map +1 -1
  229. package/build/module/Pagination/Pagination.js +2 -0
  230. package/build/module/Pagination/Pagination.js.map +1 -1
  231. package/build/module/Pagination/PaginationProps.js +1 -0
  232. package/build/module/Pagination/PaginationProps.js.map +1 -1
  233. package/build/module/Pagination/index.js +1 -1
  234. package/build/module/Pagination/index.js.map +1 -1
  235. package/build/module/PaginationItem/PaginationItem.js +28 -21
  236. package/build/module/PaginationItem/PaginationItem.js.map +1 -1
  237. package/build/module/PaginationItem/PaginationItemProps.js.map +1 -1
  238. package/build/module/Radio/Radio.js +10 -4
  239. package/build/module/Radio/Radio.js.map +1 -1
  240. package/build/module/RadioGroup/RadioGroup.js +2 -20
  241. package/build/module/RadioGroup/RadioGroup.js.map +1 -1
  242. package/build/module/Section/Section.js +19 -0
  243. package/build/module/Section/Section.js.map +1 -0
  244. package/build/module/Section/SectionProps.js +2 -0
  245. package/build/module/Section/SectionProps.js.map +1 -0
  246. package/build/module/Section/index.js +2 -0
  247. package/build/module/Section/index.js.map +1 -0
  248. package/build/module/ShadowView/ShadowView.native.js +4 -0
  249. package/build/module/ShadowView/ShadowView.native.js.map +1 -1
  250. package/build/module/SnackbarContent/SnackbarContent.js +26 -9
  251. package/build/module/SnackbarContent/SnackbarContent.js.map +1 -1
  252. package/build/module/Tab/Tab.js +19 -18
  253. package/build/module/Tab/Tab.js.map +1 -1
  254. package/build/module/Tab/TabProps.js +2 -1
  255. package/build/module/Tab/TabProps.js.map +1 -1
  256. package/build/module/Tab/index.js +1 -0
  257. package/build/module/Tab/index.js.map +1 -1
  258. package/build/module/Tab/useVariantStyleMap.js +60 -16
  259. package/build/module/Tab/useVariantStyleMap.js.map +1 -1
  260. package/build/module/TabBase/TabBase.js +1 -8
  261. package/build/module/TabBase/TabBase.js.map +1 -1
  262. package/build/module/TabBase/TabBaseProps.js.map +1 -1
  263. package/build/module/Tabs/Tabs.js +8 -5
  264. package/build/module/Tabs/Tabs.js.map +1 -1
  265. package/build/module/Tabs/TabsProps.js.map +1 -1
  266. package/build/module/Tabs/useTabsStyle.js +44 -0
  267. package/build/module/Tabs/useTabsStyle.js.map +1 -0
  268. package/build/module/TextField/TextField.js +1 -1
  269. package/build/module/TextField/TextField.js.map +1 -1
  270. package/build/module/TextField/useVariantStyleMap.js +4 -3
  271. package/build/module/TextField/useVariantStyleMap.js.map +1 -1
  272. package/build/module/Toolbar/BackButton/BackButton.js +32 -0
  273. package/build/module/Toolbar/BackButton/BackButton.js.map +1 -0
  274. package/build/module/Toolbar/BackButton/BackButtonProps.js +2 -0
  275. package/build/module/Toolbar/BackButton/BackButtonProps.js.map +1 -0
  276. package/build/module/Toolbar/BackButton/index.js +2 -0
  277. package/build/module/Toolbar/BackButton/index.js.map +1 -0
  278. package/build/module/Toolbar/Toolbar.js +7 -3
  279. package/build/module/Toolbar/Toolbar.js.map +1 -1
  280. package/build/module/Tooltip/Beaks/index.js +4 -0
  281. package/build/module/Tooltip/Beaks/index.js.map +1 -1
  282. package/build/module/Tooltip/Tooltip.js +4 -10
  283. package/build/module/Tooltip/Tooltip.js.map +1 -1
  284. package/build/module/Tooltip/index.js +1 -0
  285. package/build/module/Tooltip/index.js.map +1 -1
  286. package/build/module/Typography/Typography.js +9 -2
  287. package/build/module/Typography/Typography.js.map +1 -1
  288. package/build/module/Typography/TypographyProps.js.map +1 -1
  289. package/build/module/hooks/useBreakpointUp.js +4 -1
  290. package/build/module/hooks/useBreakpointUp.js.map +1 -1
  291. package/build/module/hooks/useCollapsibleAppBar.js +1 -1
  292. package/build/module/hooks/useCollapsibleAppBar.js.map +1 -1
  293. package/build/module/hooks/useContentContainerStyle.js +23 -26
  294. package/build/module/hooks/useContentContainerStyle.js.map +1 -1
  295. package/build/module/hooks/useFadeInAppBar.js +1 -1
  296. package/build/module/hooks/useFadeInAppBar.js.map +1 -1
  297. package/build/module/index.js +2 -0
  298. package/build/module/index.js.map +1 -1
  299. package/build/module/internal/icons/ChevronLeft.js +4 -2
  300. package/build/module/internal/icons/ChevronLeft.js.map +1 -1
  301. package/build/module/internal/icons/ChevronRight.js +4 -2
  302. package/build/module/internal/icons/ChevronRight.js.map +1 -1
  303. package/build/module/internal/icons/Close.js +4 -2
  304. package/build/module/internal/icons/Close.js.map +1 -1
  305. package/build/typescript/Accordion/useVariantStyleMap.d.ts +1 -0
  306. package/build/typescript/Badge/BadgeProps.d.ts +10 -5
  307. package/build/typescript/BottomSheetTitle/BottomSheetTitleProps.d.ts +1 -0
  308. package/build/typescript/Button/ButtonProps.d.ts +5 -0
  309. package/build/typescript/ButtonBase/index.d.ts +1 -1
  310. package/build/typescript/Checkbox/useVariantStyleMap.d.ts +1 -0
  311. package/build/typescript/Chip/ChipProps.d.ts +11 -4
  312. package/build/typescript/Chip/index.d.ts +1 -1
  313. package/build/typescript/Chip/useChipStyle.d.ts +4 -3
  314. package/build/typescript/Dialog/DialogProps.d.ts +1 -6
  315. package/build/typescript/Dialog/useDialogStyle.d.ts +1 -1
  316. package/build/typescript/DialogTitle/DialogLargeTitle.d.ts +9 -0
  317. package/build/typescript/DialogTitle/DialogTitle.d.ts +6 -1
  318. package/build/typescript/Divider/DividerProps.d.ts +1 -1
  319. package/build/typescript/Flexbox/FlexboxProps.d.ts +4 -0
  320. package/build/typescript/IconButton/IconButtonProps.d.ts +1 -1
  321. package/build/typescript/ListItem/ListItem.d.ts +1 -1
  322. package/build/typescript/ListItem/ListItemProps.d.ts +4 -0
  323. package/build/typescript/ListItemText/ListItemTextProps.d.ts +2 -9
  324. package/build/typescript/Pagination/PaginationProps.d.ts +12 -0
  325. package/build/typescript/Pagination/index.d.ts +2 -2
  326. package/build/typescript/PaginationItem/PaginationItemProps.d.ts +6 -0
  327. package/build/typescript/Section/Section.d.ts +3 -0
  328. package/build/typescript/Section/SectionProps.d.ts +6 -0
  329. package/build/typescript/Section/index.d.ts +2 -0
  330. package/build/typescript/Tab/TabProps.d.ts +8 -1
  331. package/build/typescript/Tab/index.d.ts +2 -1
  332. package/build/typescript/Tab/useVariantStyleMap.d.ts +3 -2
  333. package/build/typescript/TabBase/TabBaseProps.d.ts +0 -5
  334. package/build/typescript/Tabs/Tabs.d.ts +1 -1
  335. package/build/typescript/Tabs/TabsProps.d.ts +6 -1
  336. package/build/typescript/Tabs/useTabsStyle.d.ts +7 -0
  337. package/build/typescript/Toolbar/BackButton/BackButton.d.ts +3 -0
  338. package/build/typescript/Toolbar/BackButton/BackButtonProps.d.ts +4 -0
  339. package/build/typescript/Toolbar/BackButton/index.d.ts +2 -0
  340. package/build/typescript/Toolbar/Toolbar.d.ts +6 -1
  341. package/build/typescript/Tooltip/Beaks/index.d.ts +4 -0
  342. package/build/typescript/Tooltip/index.d.ts +1 -0
  343. package/build/typescript/Typography/TypographyProps.d.ts +4 -0
  344. package/build/typescript/hooks/useContentContainerStyle.d.ts +4 -8
  345. package/build/typescript/index.d.ts +2 -0
  346. package/package.json +5 -5
  347. package/src/Accordion/Accordion.tsx +11 -8
  348. package/src/Accordion/useVariantStyleMap.ts +14 -6
  349. package/src/AppBar/AppBar.tsx +4 -0
  350. package/src/Badge/Badge.tsx +4 -3
  351. package/src/Badge/BadgeProps.ts +12 -6
  352. package/src/Badge/useVariantStyleMap.ts +2 -2
  353. package/src/BottomSheetTitle/BottomSheetTitle.tsx +4 -1
  354. package/src/BottomSheetTitle/BottomSheetTitleProps.ts +1 -0
  355. package/src/Button/Button.tsx +28 -12
  356. package/src/Button/ButtonProps.ts +6 -0
  357. package/src/Button/useVariantStyleMap.ts +1 -1
  358. package/src/ButtonBase/index.ts +1 -1
  359. package/src/Checkbox/Checkbox.tsx +11 -8
  360. package/src/Checkbox/useVariantStyleMap.ts +6 -1
  361. package/src/Chip/Chip.tsx +20 -13
  362. package/src/Chip/ChipProps.ts +13 -4
  363. package/src/Chip/index.ts +1 -1
  364. package/src/Chip/useChipStyle.ts +34 -17
  365. package/src/Dialog/Dialog.tsx +8 -9
  366. package/src/Dialog/DialogProps.ts +1 -7
  367. package/src/Dialog/useDialogSectionStyle.ts +6 -4
  368. package/src/Dialog/useDialogStyle.ts +19 -7
  369. package/src/DialogActions/DialogActions.tsx +0 -1
  370. package/src/DialogTitle/DialogLargeTitle.tsx +95 -0
  371. package/src/DialogTitle/DialogTitle.tsx +6 -1
  372. package/src/Divider/Divider.tsx +5 -0
  373. package/src/Divider/DividerProps.ts +1 -1
  374. package/src/Empty/Empty.tsx +1 -1
  375. package/src/Flexbox/Flexbox.tsx +2 -0
  376. package/src/Flexbox/FlexboxProps.ts +5 -0
  377. package/src/IconButton/IconButton.tsx +2 -0
  378. package/src/IconButton/IconButtonProps.ts +1 -0
  379. package/src/ImageCore/ImageCoreNative.tsx +1 -1
  380. package/src/ListItem/ListItem.tsx +61 -30
  381. package/src/ListItem/ListItemProps.ts +5 -0
  382. package/src/ListItemIcon/ListItemIcon.tsx +1 -2
  383. package/src/ListItemSecondaryAction/ListItemSecondaryAction.tsx +2 -0
  384. package/src/ListItemText/ListItemText.tsx +20 -28
  385. package/src/ListItemText/ListItemTextProps.ts +2 -10
  386. package/src/ListSubheader/ListSubheader.tsx +1 -1
  387. package/src/Pagination/NumberPagination.tsx +1 -1
  388. package/src/Pagination/Pagination.tsx +3 -2
  389. package/src/Pagination/PaginationProps.ts +15 -0
  390. package/src/Pagination/index.ts +2 -2
  391. package/src/PaginationItem/PaginationItem.tsx +31 -24
  392. package/src/PaginationItem/PaginationItemProps.ts +7 -0
  393. package/src/Radio/Radio.tsx +12 -3
  394. package/src/RadioGroup/RadioGroup.tsx +2 -28
  395. package/src/Section/Section.tsx +26 -0
  396. package/src/Section/SectionProps.ts +6 -0
  397. package/src/Section/index.ts +2 -0
  398. package/src/ShadowView/ShadowView.native.tsx +4 -0
  399. package/src/SnackbarContent/SnackbarContent.tsx +36 -15
  400. package/src/Tab/Tab.tsx +28 -22
  401. package/src/Tab/TabProps.ts +10 -1
  402. package/src/Tab/index.ts +2 -1
  403. package/src/Tab/useVariantStyleMap.ts +65 -17
  404. package/src/TabBase/TabBase.tsx +1 -9
  405. package/src/TabBase/TabBaseProps.ts +0 -6
  406. package/src/Tabs/Tabs.tsx +7 -6
  407. package/src/Tabs/TabsProps.ts +7 -1
  408. package/src/Tabs/useTabsStyle.ts +49 -0
  409. package/src/TextField/TextField.tsx +1 -1
  410. package/src/TextField/useVariantStyleMap.ts +4 -3
  411. package/src/Toolbar/BackButton/BackButton.tsx +42 -0
  412. package/src/Toolbar/BackButton/BackButtonProps.ts +4 -0
  413. package/src/Toolbar/BackButton/index.ts +2 -0
  414. package/src/Toolbar/Toolbar.tsx +6 -1
  415. package/src/Tooltip/Beaks/index.ts +4 -0
  416. package/src/Tooltip/Tooltip.tsx +4 -9
  417. package/src/Tooltip/index.ts +1 -0
  418. package/src/Typography/Typography.tsx +3 -1
  419. package/src/Typography/TypographyProps.ts +5 -0
  420. package/src/hooks/useBreakpointUp.ts +3 -1
  421. package/src/hooks/useCollapsibleAppBar.ts +1 -1
  422. package/src/hooks/useContentContainerStyle.ts +26 -34
  423. package/src/hooks/useFadeInAppBar.ts +1 -1
  424. package/src/index.ts +3 -0
  425. package/src/internal/icons/ChevronLeft.tsx +4 -1
  426. package/src/internal/icons/ChevronRight.tsx +4 -1
  427. package/src/internal/icons/Close.tsx +4 -1
  428. package/build/commonjs/ButtonBase/LegacyButtonBase.js +0 -126
  429. package/build/commonjs/ButtonBase/LegacyButtonBase.js.map +0 -1
  430. package/build/module/ButtonBase/LegacyButtonBase.js +0 -106
  431. package/build/module/ButtonBase/LegacyButtonBase.js.map +0 -1
  432. package/build/typescript/ButtonBase/LegacyButtonBase.d.ts +0 -5
  433. package/src/ButtonBase/LegacyButtonBase.tsx +0 -135
@@ -75,6 +75,7 @@ function Accordion(props) {
75
75
  container: containerStyle,
76
76
  content: contentStyle,
77
77
  contentFont: contentFontStyle,
78
+ iconContainer: iconContainerStyle,
78
79
  subTitleFont: subTitleFontStyle,
79
80
  title: titleStyle,
80
81
  titleFont: titleFontStyle
@@ -126,21 +127,23 @@ function Accordion(props) {
126
127
  flexShrink: 1
127
128
  }, /*#__PURE__*/_react.default.createElement(_Row.default, {
128
129
  alignItems: 'center'
129
- }, LeftComponent ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, LeftComponent, /*#__PURE__*/_react.default.createElement(_Spacer.default, {
130
+ }, LeftComponent ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
131
+ style: iconContainerStyle
132
+ }, LeftComponent), /*#__PURE__*/_react.default.createElement(_Spacer.default, {
130
133
  size: 1.5
131
134
  })) : null, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
132
135
  allowFontScaling: false,
133
136
  children: title,
134
137
  numberOfLines: 1,
135
138
  style: titleFontStyle
136
- })), subTitle && variant === 'solid' ? typeof subTitle === 'string' ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Spacer.default, {
139
+ })), subTitle && variant === 'solid' ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Spacer.default, {
137
140
  size: 1.5
138
- }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
141
+ }), typeof subTitle === 'string' ? /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
139
142
  allowFontScaling: false,
140
143
  children: subTitle,
141
144
  numberOfLines: 1,
142
145
  style: subTitleFontStyle
143
- })) : subTitle : null), /*#__PURE__*/_react.default.createElement(_Spacer.default, {
146
+ }) : subTitle) : null), /*#__PURE__*/_react.default.createElement(_Spacer.default, {
144
147
  flex: 1
145
148
  }), /*#__PURE__*/_react.default.createElement(_Spacer.default, {
146
149
  size: 3
@@ -1 +1 @@
1
- {"version":3,"names":["ROTATE_HIDE_DEGREE","ROTATE_SHOW_DEGREE","ANIMATION_CONFIG","duration","INITIAL_EXPANDED_DELAY_MILLIS","CONTENT_OPACITY_DELAY_MILLIS","useStyles","theme","useTheme","root","marginBottom","spacing","rightIcon","alignItems","height","justifyContent","width","Accordion","props","title","subTitle","content","RightIcon","LeftComponent","isInitialExpanded","variant","styles","CONTENT_MARGIN_HEIGHT","isExpanded","setIsExpanded","useState","shouldInitialExpandedRef","useRef","container","containerStyle","contentStyle","contentFont","contentFontStyle","subTitleFont","subTitleFontStyle","titleStyle","titleFont","titleFontStyle","useVariantStyleMap","rotate","useSharedValue","animatedOpacity","animatedHeight","contentHeight","setContentHeight","animatedChevronDownStyles","useAnimatedStyle","transform","value","animatedContentBackgroundStyles","overflow","animatedContentStyle","opacity","onPress","prev","onLayout","event","nativeEvent","layout","current","setTimeout","useEffect","withTiming","withDelay","rootStyle","css"],"sources":["Accordion.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { LayoutChangeEvent, Text, View, ViewStyle } from 'react-native';\nimport Animated, {\n useAnimatedStyle,\n useSharedValue,\n withDelay,\n withTiming,\n WithTimingConfig,\n} from 'react-native-reanimated';\nimport { css, NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport { useTheme } from '../styles';\nimport { ChevronDown } from '../internal/icons';\nimport ButtonBase from '../ButtonBase';\nimport Column from '../Column';\nimport Row from '../Row';\nimport Spacer from '../Spacer';\nimport type AccordionProps from './AccordionProps';\nimport type { AccordionVariant } from './AccordionProps';\nimport useVariantStyleMap from './useVariantStyleMap';\n\ntype AccordionStyles = NamedStylesStringUnion<'root' | 'rightIcon'>;\n\nconst ROTATE_HIDE_DEGREE = 0;\nconst ROTATE_SHOW_DEGREE = 180;\nconst ANIMATION_CONFIG: Readonly<WithTimingConfig> = { duration: 200 };\nconst INITIAL_EXPANDED_DELAY_MILLIS = 100;\nconst CONTENT_OPACITY_DELAY_MILLIS = 200;\n\nconst useStyles: UseStyles<AccordionStyles> = function (): AccordionStyles {\n const theme = useTheme();\n\n return {\n root: { marginBottom: theme.spacing(3) },\n rightIcon: {\n alignItems: 'center',\n height: 32,\n justifyContent: 'center',\n width: 32,\n },\n };\n};\n\nexport default function Accordion(props: AccordionProps) {\n const {\n title,\n subTitle,\n content,\n RightIcon,\n LeftComponent,\n isInitialExpanded = false,\n variant = 'solid' as AccordionVariant,\n } = props;\n\n const styles = useStyles();\n const theme = useTheme();\n const CONTENT_MARGIN_HEIGHT = theme.spacing(2);\n\n const [isExpanded, setIsExpanded] = useState<boolean>(false);\n const shouldInitialExpandedRef = useRef<boolean>(isInitialExpanded);\n\n const {\n container: containerStyle,\n content: contentStyle,\n contentFont: contentFontStyle,\n subTitleFont: subTitleFontStyle,\n title: titleStyle,\n titleFont: titleFontStyle,\n } = useVariantStyleMap(variant);\n\n const rotate = useSharedValue(ROTATE_HIDE_DEGREE);\n const animatedOpacity = useSharedValue(0);\n\n const animatedHeight = useSharedValue(0);\n const [contentHeight, setContentHeight] = useState(0);\n\n const animatedChevronDownStyles = useAnimatedStyle(() => ({\n transform: [{ rotate: `${rotate.value}deg` }],\n }), []);\n\n const animatedContentBackgroundStyles = useAnimatedStyle(() => ({\n height: animatedHeight.value,\n overflow: 'hidden',\n } as ViewStyle), []);\n\n const animatedContentStyle = useAnimatedStyle(() => ({\n opacity: animatedOpacity.value,\n }), []);\n\n const onPress = () => {\n setIsExpanded(prev => !prev);\n };\n\n const onLayout = (event: LayoutChangeEvent) => {\n const height = event.nativeEvent.layout.height + CONTENT_MARGIN_HEIGHT;\n setContentHeight(height);\n\n if (shouldInitialExpandedRef.current) {\n shouldInitialExpandedRef.current = false;\n setTimeout(() => setIsExpanded(true), INITIAL_EXPANDED_DELAY_MILLIS);\n }\n };\n\n useEffect(() => {\n rotate.value = withTiming(isExpanded ? ROTATE_SHOW_DEGREE : ROTATE_HIDE_DEGREE, ANIMATION_CONFIG);\n\n animatedHeight.value = withTiming(isExpanded ? contentHeight : 0, ANIMATION_CONFIG);\n\n animatedOpacity.value = isExpanded\n ? withDelay(CONTENT_OPACITY_DELAY_MILLIS, withTiming(1, ANIMATION_CONFIG))\n : withTiming(0, ANIMATION_CONFIG);\n }, [isExpanded, contentHeight]);\n\n const rootStyle = css([\n styles.root,\n containerStyle,\n ]);\n\n return (\n <Column style={rootStyle}>\n <ButtonBase onPress={onPress}>\n <Row style={titleStyle}>\n <Column flexShrink={1}>\n <Row alignItems={'center'}>\n {LeftComponent ? (\n <React.Fragment>\n {LeftComponent}\n\n <Spacer size={1.5}/>\n </React.Fragment>\n ) : null}\n\n <Text\n allowFontScaling={false}\n children={title}\n numberOfLines={1}\n style={titleFontStyle}\n />\n </Row>\n\n {subTitle && variant === 'solid' ?\n typeof subTitle === 'string' ? (\n <React.Fragment>\n <Spacer size={1.5}/>\n\n <Text\n allowFontScaling={false}\n children={subTitle}\n numberOfLines={1}\n style={subTitleFontStyle}\n />\n </React.Fragment>\n ) : (subTitle)\n : null}\n </Column>\n\n <Spacer flex={1}/>\n\n <Spacer size={3}/>\n\n <Animated.View style={animatedChevronDownStyles}>\n <View style={styles.rightIcon}>\n {RightIcon ? RightIcon : (\n <ChevronDown\n width={16}\n height={16}\n color={'base'}\n />\n )}\n </View>\n </Animated.View>\n </Row>\n </ButtonBase>\n\n <Animated.View style={animatedContentBackgroundStyles}>\n <View\n onLayout={onLayout}\n style={contentStyle}\n >\n <Animated.View style={animatedContentStyle}>\n {typeof content === 'string' ? (\n <Text\n allowFontScaling={false}\n children={content}\n style={contentFontStyle}\n />\n ) : (content)}\n </Animated.View>\n </View>\n </Animated.View>\n </Column>\n );\n}\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAOA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAGA;;;;;;;;AAIA,MAAMA,kBAAkB,GAAG,CAA3B;AACA,MAAMC,kBAAkB,GAAG,GAA3B;AACA,MAAMC,gBAA4C,GAAG;EAAEC,QAAQ,EAAE;AAAZ,CAArD;AACA,MAAMC,6BAA6B,GAAG,GAAtC;AACA,MAAMC,4BAA4B,GAAG,GAArC;;AAEA,MAAMC,SAAqC,GAAG,YAA6B;EACvE,MAAMC,KAAK,GAAG,IAAAC,iBAAA,GAAd;EAEA,OAAO;IACHC,IAAI,EAAE;MAAEC,YAAY,EAAEH,KAAK,CAACI,OAAN,CAAc,CAAd;IAAhB,CADH;IAEHC,SAAS,EAAE;MACPC,UAAU,EAAE,QADL;MAEPC,MAAM,EAAE,EAFD;MAGPC,cAAc,EAAE,QAHT;MAIPC,KAAK,EAAE;IAJA;EAFR,CAAP;AASH,CAZD;;AAce,SAASC,SAAT,CAAmBC,KAAnB,EAA0C;EACrD,MAAM;IACFC,KADE;IAEFC,QAFE;IAGFC,OAHE;IAIFC,SAJE;IAKFC,aALE;IAMFC,iBAAiB,GAAG,KANlB;IAOFC,OAAO,GAAG;EAPR,IAQFP,KARJ;EAUA,MAAMQ,MAAM,GAAGpB,SAAS,EAAxB;EACA,MAAMC,KAAK,GAAG,IAAAC,iBAAA,GAAd;EACA,MAAMmB,qBAAqB,GAAGpB,KAAK,CAACI,OAAN,CAAc,CAAd,CAA9B;EAEA,MAAM,CAACiB,UAAD,EAAaC,aAAb,IAA8B,IAAAC,eAAA,EAAkB,KAAlB,CAApC;EACA,MAAMC,wBAAwB,GAAG,IAAAC,aAAA,EAAgBR,iBAAhB,CAAjC;EAEA,MAAM;IACFS,SAAS,EAAEC,cADT;IAEFb,OAAO,EAAEc,YAFP;IAGFC,WAAW,EAAEC,gBAHX;IAIFC,YAAY,EAAEC,iBAJZ;IAKFpB,KAAK,EAAEqB,UALL;IAMFC,SAAS,EAAEC;EANT,IAOF,IAAAC,2BAAA,EAAmBlB,OAAnB,CAPJ;EASA,MAAMmB,MAAM,GAAG,IAAAC,qCAAA,EAAe7C,kBAAf,CAAf;EACA,MAAM8C,eAAe,GAAG,IAAAD,qCAAA,EAAe,CAAf,CAAxB;EAEA,MAAME,cAAc,GAAG,IAAAF,qCAAA,EAAe,CAAf,CAAvB;EACA,MAAM,CAACG,aAAD,EAAgBC,gBAAhB,IAAoC,IAAAnB,eAAA,EAAS,CAAT,CAA1C;EAEA,MAAMoB,yBAAyB,GAAG,IAAAC,uCAAA,EAAiB,OAAO;IACtDC,SAAS,EAAE,CAAC;MAAER,MAAM,EAAG,GAAEA,MAAM,CAACS,KAAM;IAA1B,CAAD;EAD2C,CAAP,CAAjB,EAE9B,EAF8B,CAAlC;EAIA,MAAMC,+BAA+B,GAAG,IAAAH,uCAAA,EAAiB,OAAO;IAC5DrC,MAAM,EAAEiC,cAAc,CAACM,KADqC;IAE5DE,QAAQ,EAAE;EAFkD,CAAP,CAAjB,EAGvB,EAHuB,CAAxC;EAKA,MAAMC,oBAAoB,GAAG,IAAAL,uCAAA,EAAiB,OAAO;IACjDM,OAAO,EAAEX,eAAe,CAACO;EADwB,CAAP,CAAjB,EAEzB,EAFyB,CAA7B;;EAIA,MAAMK,OAAO,GAAG,MAAM;IAClB7B,aAAa,CAAC8B,IAAI,IAAI,CAACA,IAAV,CAAb;EACH,CAFD;;EAIA,MAAMC,QAAQ,GAAIC,KAAD,IAA8B;IAC3C,MAAM/C,MAAM,GAAG+C,KAAK,CAACC,WAAN,CAAkBC,MAAlB,CAAyBjD,MAAzB,GAAkCa,qBAAjD;IACAsB,gBAAgB,CAACnC,MAAD,CAAhB;;IAEA,IAAIiB,wBAAwB,CAACiC,OAA7B,EAAsC;MAClCjC,wBAAwB,CAACiC,OAAzB,GAAmC,KAAnC;MACAC,UAAU,CAAC,MAAMpC,aAAa,CAAC,IAAD,CAApB,EAA4BzB,6BAA5B,CAAV;IACH;EACJ,CARD;;EAUA,IAAA8D,gBAAA,EAAU,MAAM;IACZtB,MAAM,CAACS,KAAP,GAAe,IAAAc,iCAAA,EAAWvC,UAAU,GAAG3B,kBAAH,GAAwBD,kBAA7C,EAAiEE,gBAAjE,CAAf;IAEA6C,cAAc,CAACM,KAAf,GAAuB,IAAAc,iCAAA,EAAWvC,UAAU,GAAGoB,aAAH,GAAmB,CAAxC,EAA2C9C,gBAA3C,CAAvB;IAEA4C,eAAe,CAACO,KAAhB,GAAwBzB,UAAU,GAC5B,IAAAwC,gCAAA,EAAU/D,4BAAV,EAAwC,IAAA8D,iCAAA,EAAW,CAAX,EAAcjE,gBAAd,CAAxC,CAD4B,GAE5B,IAAAiE,iCAAA,EAAW,CAAX,EAAcjE,gBAAd,CAFN;EAGH,CARD,EAQG,CAAC0B,UAAD,EAAaoB,aAAb,CARH;EAUA,MAAMqB,SAAS,GAAG,IAAAC,WAAA,EAAI,CAClB5C,MAAM,CAACjB,IADW,EAElByB,cAFkB,CAAJ,CAAlB;EAKA,oBACI,6BAAC,eAAD;IAAQ,KAAK,EAAEmC;EAAf,gBACI,6BAAC,mBAAD;IAAY,OAAO,EAAEX;EAArB,gBACI,6BAAC,YAAD;IAAK,KAAK,EAAElB;EAAZ,gBACI,6BAAC,eAAD;IAAQ,UAAU,EAAE;EAApB,gBACI,6BAAC,YAAD;IAAK,UAAU,EAAE;EAAjB,GACKjB,aAAa,gBACV,6BAAC,cAAD,CAAO,QAAP,QACKA,aADL,eAGI,6BAAC,eAAD;IAAQ,IAAI,EAAE;EAAd,EAHJ,CADU,GAMV,IAPR,eASI,6BAAC,iBAAD;IACI,gBAAgB,EAAE,KADtB;IAEI,QAAQ,EAAEJ,KAFd;IAGI,aAAa,EAAE,CAHnB;IAII,KAAK,EAAEuB;EAJX,EATJ,CADJ,EAkBKtB,QAAQ,IAAIK,OAAO,KAAK,OAAxB,GACG,OAAOL,QAAP,KAAoB,QAApB,gBACI,6BAAC,cAAD,CAAO,QAAP,qBACI,6BAAC,eAAD;IAAQ,IAAI,EAAE;EAAd,EADJ,eAGI,6BAAC,iBAAD;IACI,gBAAgB,EAAE,KADtB;IAEI,QAAQ,EAAEA,QAFd;IAGI,aAAa,EAAE,CAHnB;IAII,KAAK,EAAEmB;EAJX,EAHJ,CADJ,GAWKnB,QAZR,GAaK,IA/BV,CADJ,eAmCI,6BAAC,eAAD;IAAQ,IAAI,EAAE;EAAd,EAnCJ,eAqCI,6BAAC,eAAD;IAAQ,IAAI,EAAE;EAAd,EArCJ,eAuCI,6BAAC,8BAAD,CAAU,IAAV;IAAe,KAAK,EAAE8B;EAAtB,gBACI,6BAAC,iBAAD;IAAM,KAAK,EAAExB,MAAM,CAACd;EAApB,GACKU,SAAS,GAAGA,SAAH,gBACN,6BAAC,kBAAD;IACI,KAAK,EAAE,EADX;IAEI,MAAM,EAAE,EAFZ;IAGI,KAAK,EAAE;EAHX,EAFR,CADJ,CAvCJ,CADJ,CADJ,eAuDI,6BAAC,8BAAD,CAAU,IAAV;IAAe,KAAK,EAAEgC;EAAtB,gBACI,6BAAC,iBAAD;IACI,QAAQ,EAAEM,QADd;IAEI,KAAK,EAAEzB;EAFX,gBAII,6BAAC,8BAAD,CAAU,IAAV;IAAe,KAAK,EAAEqB;EAAtB,GACK,OAAOnC,OAAP,KAAmB,QAAnB,gBACG,6BAAC,iBAAD;IACI,gBAAgB,EAAE,KADtB;IAEI,QAAQ,EAAEA,OAFd;IAGI,KAAK,EAAEgB;EAHX,EADH,GAMIhB,OAPT,CAJJ,CADJ,CAvDJ,CADJ;AA0EH"}
1
+ {"version":3,"names":["ROTATE_HIDE_DEGREE","ROTATE_SHOW_DEGREE","ANIMATION_CONFIG","duration","INITIAL_EXPANDED_DELAY_MILLIS","CONTENT_OPACITY_DELAY_MILLIS","useStyles","theme","useTheme","root","marginBottom","spacing","rightIcon","alignItems","height","justifyContent","width","Accordion","props","title","subTitle","content","RightIcon","LeftComponent","isInitialExpanded","variant","styles","CONTENT_MARGIN_HEIGHT","isExpanded","setIsExpanded","useState","shouldInitialExpandedRef","useRef","container","containerStyle","contentStyle","contentFont","contentFontStyle","iconContainer","iconContainerStyle","subTitleFont","subTitleFontStyle","titleStyle","titleFont","titleFontStyle","useVariantStyleMap","rotate","useSharedValue","animatedOpacity","animatedHeight","contentHeight","setContentHeight","animatedChevronDownStyles","useAnimatedStyle","transform","value","animatedContentBackgroundStyles","overflow","animatedContentStyle","opacity","onPress","prev","onLayout","event","nativeEvent","layout","current","setTimeout","useEffect","withTiming","withDelay","rootStyle","css"],"sources":["Accordion.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\nimport { LayoutChangeEvent, Text, View, ViewStyle } from 'react-native';\nimport Animated, {\n useAnimatedStyle,\n useSharedValue,\n withDelay,\n withTiming,\n WithTimingConfig,\n} from 'react-native-reanimated';\nimport { css, NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport { useTheme } from '../styles';\nimport { ChevronDown } from '../internal/icons';\nimport ButtonBase from '../ButtonBase';\nimport Column from '../Column';\nimport Row from '../Row';\nimport Spacer from '../Spacer';\nimport type AccordionProps from './AccordionProps';\nimport type { AccordionVariant } from './AccordionProps';\nimport useVariantStyleMap from './useVariantStyleMap';\n\ntype AccordionStyles = NamedStylesStringUnion<'root' | 'rightIcon'>;\n\nconst ROTATE_HIDE_DEGREE = 0;\nconst ROTATE_SHOW_DEGREE = 180;\nconst ANIMATION_CONFIG: Readonly<WithTimingConfig> = { duration: 200 };\nconst INITIAL_EXPANDED_DELAY_MILLIS = 100;\nconst CONTENT_OPACITY_DELAY_MILLIS = 200;\n\nconst useStyles: UseStyles<AccordionStyles> = function (): AccordionStyles {\n const theme = useTheme();\n\n return {\n root: { marginBottom: theme.spacing(3) },\n rightIcon: {\n alignItems: 'center',\n height: 32,\n justifyContent: 'center',\n width: 32,\n },\n };\n};\n\nexport default function Accordion(props: AccordionProps) {\n const {\n title,\n subTitle,\n content,\n RightIcon,\n LeftComponent,\n isInitialExpanded = false,\n variant = 'solid' as AccordionVariant,\n } = props;\n\n const styles = useStyles();\n const theme = useTheme();\n const CONTENT_MARGIN_HEIGHT = theme.spacing(2);\n\n const [isExpanded, setIsExpanded] = useState<boolean>(false);\n const shouldInitialExpandedRef = useRef<boolean>(isInitialExpanded);\n\n const {\n container: containerStyle,\n content: contentStyle,\n contentFont: contentFontStyle,\n iconContainer: iconContainerStyle,\n subTitleFont: subTitleFontStyle,\n title: titleStyle,\n titleFont: titleFontStyle,\n } = useVariantStyleMap(variant);\n\n const rotate = useSharedValue(ROTATE_HIDE_DEGREE);\n const animatedOpacity = useSharedValue(0);\n\n const animatedHeight = useSharedValue(0);\n const [contentHeight, setContentHeight] = useState(0);\n\n const animatedChevronDownStyles = useAnimatedStyle(() => ({\n transform: [{ rotate: `${rotate.value}deg` }],\n }), []);\n\n const animatedContentBackgroundStyles = useAnimatedStyle(() => ({\n height: animatedHeight.value,\n overflow: 'hidden',\n } as ViewStyle), []);\n\n const animatedContentStyle = useAnimatedStyle(() => ({\n opacity: animatedOpacity.value,\n }), []);\n\n const onPress = () => {\n setIsExpanded(prev => !prev);\n };\n\n const onLayout = (event: LayoutChangeEvent) => {\n const height = event.nativeEvent.layout.height + CONTENT_MARGIN_HEIGHT;\n setContentHeight(height);\n\n if (shouldInitialExpandedRef.current) {\n shouldInitialExpandedRef.current = false;\n setTimeout(() => setIsExpanded(true), INITIAL_EXPANDED_DELAY_MILLIS);\n }\n };\n\n useEffect(() => {\n rotate.value = withTiming(isExpanded ? ROTATE_SHOW_DEGREE : ROTATE_HIDE_DEGREE, ANIMATION_CONFIG);\n\n animatedHeight.value = withTiming(isExpanded ? contentHeight : 0, ANIMATION_CONFIG);\n\n animatedOpacity.value = isExpanded\n ? withDelay(CONTENT_OPACITY_DELAY_MILLIS, withTiming(1, ANIMATION_CONFIG))\n : withTiming(0, ANIMATION_CONFIG);\n }, [isExpanded, contentHeight]);\n\n const rootStyle = css([\n styles.root,\n containerStyle,\n ]);\n\n return (\n <Column style={rootStyle}>\n <ButtonBase onPress={onPress}>\n <Row style={titleStyle}>\n <Column flexShrink={1}>\n <Row alignItems={'center'}>\n {LeftComponent ? (\n <React.Fragment>\n <View style={iconContainerStyle}>\n {LeftComponent}\n </View>\n\n <Spacer size={1.5}/>\n </React.Fragment>\n ) : null}\n\n <Text\n allowFontScaling={false}\n children={title}\n numberOfLines={1}\n style={titleFontStyle}\n />\n </Row>\n\n {subTitle && variant === 'solid' ? (\n <React.Fragment>\n <Spacer size={1.5}/>\n\n {typeof subTitle === 'string' ? (\n <Text\n allowFontScaling={false}\n children={subTitle}\n numberOfLines={1}\n style={subTitleFontStyle}\n />\n ) : (subTitle)}\n </React.Fragment>\n ) : null}\n </Column>\n\n <Spacer flex={1}/>\n\n <Spacer size={3}/>\n\n <Animated.View style={animatedChevronDownStyles}>\n <View style={styles.rightIcon}>\n {RightIcon ? RightIcon : (\n <ChevronDown\n width={16}\n height={16}\n color={'base'}\n />\n )}\n </View>\n </Animated.View>\n </Row>\n </ButtonBase>\n\n <Animated.View style={animatedContentBackgroundStyles}>\n <View\n onLayout={onLayout}\n style={contentStyle}\n >\n <Animated.View style={animatedContentStyle}>\n {typeof content === 'string' ? (\n <Text\n allowFontScaling={false}\n children={content}\n style={contentFontStyle}\n />\n ) : (content)}\n </Animated.View>\n </View>\n </Animated.View>\n </Column>\n );\n}\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAOA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAGA;;;;;;;;AAIA,MAAMA,kBAAkB,GAAG,CAA3B;AACA,MAAMC,kBAAkB,GAAG,GAA3B;AACA,MAAMC,gBAA4C,GAAG;EAAEC,QAAQ,EAAE;AAAZ,CAArD;AACA,MAAMC,6BAA6B,GAAG,GAAtC;AACA,MAAMC,4BAA4B,GAAG,GAArC;;AAEA,MAAMC,SAAqC,GAAG,YAA6B;EACvE,MAAMC,KAAK,GAAG,IAAAC,iBAAA,GAAd;EAEA,OAAO;IACHC,IAAI,EAAE;MAAEC,YAAY,EAAEH,KAAK,CAACI,OAAN,CAAc,CAAd;IAAhB,CADH;IAEHC,SAAS,EAAE;MACPC,UAAU,EAAE,QADL;MAEPC,MAAM,EAAE,EAFD;MAGPC,cAAc,EAAE,QAHT;MAIPC,KAAK,EAAE;IAJA;EAFR,CAAP;AASH,CAZD;;AAce,SAASC,SAAT,CAAmBC,KAAnB,EAA0C;EACrD,MAAM;IACFC,KADE;IAEFC,QAFE;IAGFC,OAHE;IAIFC,SAJE;IAKFC,aALE;IAMFC,iBAAiB,GAAG,KANlB;IAOFC,OAAO,GAAG;EAPR,IAQFP,KARJ;EAUA,MAAMQ,MAAM,GAAGpB,SAAS,EAAxB;EACA,MAAMC,KAAK,GAAG,IAAAC,iBAAA,GAAd;EACA,MAAMmB,qBAAqB,GAAGpB,KAAK,CAACI,OAAN,CAAc,CAAd,CAA9B;EAEA,MAAM,CAACiB,UAAD,EAAaC,aAAb,IAA8B,IAAAC,eAAA,EAAkB,KAAlB,CAApC;EACA,MAAMC,wBAAwB,GAAG,IAAAC,aAAA,EAAgBR,iBAAhB,CAAjC;EAEA,MAAM;IACFS,SAAS,EAAEC,cADT;IAEFb,OAAO,EAAEc,YAFP;IAGFC,WAAW,EAAEC,gBAHX;IAIFC,aAAa,EAAEC,kBAJb;IAKFC,YAAY,EAAEC,iBALZ;IAMFtB,KAAK,EAAEuB,UANL;IAOFC,SAAS,EAAEC;EAPT,IAQF,IAAAC,2BAAA,EAAmBpB,OAAnB,CARJ;EAUA,MAAMqB,MAAM,GAAG,IAAAC,qCAAA,EAAe/C,kBAAf,CAAf;EACA,MAAMgD,eAAe,GAAG,IAAAD,qCAAA,EAAe,CAAf,CAAxB;EAEA,MAAME,cAAc,GAAG,IAAAF,qCAAA,EAAe,CAAf,CAAvB;EACA,MAAM,CAACG,aAAD,EAAgBC,gBAAhB,IAAoC,IAAArB,eAAA,EAAS,CAAT,CAA1C;EAEA,MAAMsB,yBAAyB,GAAG,IAAAC,uCAAA,EAAiB,OAAO;IACtDC,SAAS,EAAE,CAAC;MAAER,MAAM,EAAG,GAAEA,MAAM,CAACS,KAAM;IAA1B,CAAD;EAD2C,CAAP,CAAjB,EAE9B,EAF8B,CAAlC;EAIA,MAAMC,+BAA+B,GAAG,IAAAH,uCAAA,EAAiB,OAAO;IAC5DvC,MAAM,EAAEmC,cAAc,CAACM,KADqC;IAE5DE,QAAQ,EAAE;EAFkD,CAAP,CAAjB,EAGvB,EAHuB,CAAxC;EAKA,MAAMC,oBAAoB,GAAG,IAAAL,uCAAA,EAAiB,OAAO;IACjDM,OAAO,EAAEX,eAAe,CAACO;EADwB,CAAP,CAAjB,EAEzB,EAFyB,CAA7B;;EAIA,MAAMK,OAAO,GAAG,MAAM;IAClB/B,aAAa,CAACgC,IAAI,IAAI,CAACA,IAAV,CAAb;EACH,CAFD;;EAIA,MAAMC,QAAQ,GAAIC,KAAD,IAA8B;IAC3C,MAAMjD,MAAM,GAAGiD,KAAK,CAACC,WAAN,CAAkBC,MAAlB,CAAyBnD,MAAzB,GAAkCa,qBAAjD;IACAwB,gBAAgB,CAACrC,MAAD,CAAhB;;IAEA,IAAIiB,wBAAwB,CAACmC,OAA7B,EAAsC;MAClCnC,wBAAwB,CAACmC,OAAzB,GAAmC,KAAnC;MACAC,UAAU,CAAC,MAAMtC,aAAa,CAAC,IAAD,CAApB,EAA4BzB,6BAA5B,CAAV;IACH;EACJ,CARD;;EAUA,IAAAgE,gBAAA,EAAU,MAAM;IACZtB,MAAM,CAACS,KAAP,GAAe,IAAAc,iCAAA,EAAWzC,UAAU,GAAG3B,kBAAH,GAAwBD,kBAA7C,EAAiEE,gBAAjE,CAAf;IAEA+C,cAAc,CAACM,KAAf,GAAuB,IAAAc,iCAAA,EAAWzC,UAAU,GAAGsB,aAAH,GAAmB,CAAxC,EAA2ChD,gBAA3C,CAAvB;IAEA8C,eAAe,CAACO,KAAhB,GAAwB3B,UAAU,GAC5B,IAAA0C,gCAAA,EAAUjE,4BAAV,EAAwC,IAAAgE,iCAAA,EAAW,CAAX,EAAcnE,gBAAd,CAAxC,CAD4B,GAE5B,IAAAmE,iCAAA,EAAW,CAAX,EAAcnE,gBAAd,CAFN;EAGH,CARD,EAQG,CAAC0B,UAAD,EAAasB,aAAb,CARH;EAUA,MAAMqB,SAAS,GAAG,IAAAC,WAAA,EAAI,CAClB9C,MAAM,CAACjB,IADW,EAElByB,cAFkB,CAAJ,CAAlB;EAKA,oBACI,6BAAC,eAAD;IAAQ,KAAK,EAAEqC;EAAf,gBACI,6BAAC,mBAAD;IAAY,OAAO,EAAEX;EAArB,gBACI,6BAAC,YAAD;IAAK,KAAK,EAAElB;EAAZ,gBACI,6BAAC,eAAD;IAAQ,UAAU,EAAE;EAApB,gBACI,6BAAC,YAAD;IAAK,UAAU,EAAE;EAAjB,GACKnB,aAAa,gBACV,6BAAC,cAAD,CAAO,QAAP,qBACI,6BAAC,iBAAD;IAAM,KAAK,EAAEgB;EAAb,GACKhB,aADL,CADJ,eAKI,6BAAC,eAAD;IAAQ,IAAI,EAAE;EAAd,EALJ,CADU,GAQV,IATR,eAWI,6BAAC,iBAAD;IACI,gBAAgB,EAAE,KADtB;IAEI,QAAQ,EAAEJ,KAFd;IAGI,aAAa,EAAE,CAHnB;IAII,KAAK,EAAEyB;EAJX,EAXJ,CADJ,EAoBKxB,QAAQ,IAAIK,OAAO,KAAK,OAAxB,gBACG,6BAAC,cAAD,CAAO,QAAP,qBACI,6BAAC,eAAD;IAAQ,IAAI,EAAE;EAAd,EADJ,EAGK,OAAOL,QAAP,KAAoB,QAApB,gBACG,6BAAC,iBAAD;IACI,gBAAgB,EAAE,KADtB;IAEI,QAAQ,EAAEA,QAFd;IAGI,aAAa,EAAE,CAHnB;IAII,KAAK,EAAEqB;EAJX,EADH,GAOIrB,QAVT,CADH,GAaG,IAjCR,CADJ,eAqCI,6BAAC,eAAD;IAAQ,IAAI,EAAE;EAAd,EArCJ,eAuCI,6BAAC,eAAD;IAAQ,IAAI,EAAE;EAAd,EAvCJ,eAyCI,6BAAC,8BAAD,CAAU,IAAV;IAAe,KAAK,EAAEgC;EAAtB,gBACI,6BAAC,iBAAD;IAAM,KAAK,EAAE1B,MAAM,CAACd;EAApB,GACKU,SAAS,GAAGA,SAAH,gBACN,6BAAC,kBAAD;IACI,KAAK,EAAE,EADX;IAEI,MAAM,EAAE,EAFZ;IAGI,KAAK,EAAE;EAHX,EAFR,CADJ,CAzCJ,CADJ,CADJ,eAyDI,6BAAC,8BAAD,CAAU,IAAV;IAAe,KAAK,EAAEkC;EAAtB,gBACI,6BAAC,iBAAD;IACI,QAAQ,EAAEM,QADd;IAEI,KAAK,EAAE3B;EAFX,gBAII,6BAAC,8BAAD,CAAU,IAAV;IAAe,KAAK,EAAEuB;EAAtB,GACK,OAAOrC,OAAP,KAAmB,QAAnB,gBACG,6BAAC,iBAAD;IACI,gBAAgB,EAAE,KADtB;IAEI,QAAQ,EAAEA,OAFd;IAGI,KAAK,EAAEgB;EAHX,EADH,GAMIhB,OAPT,CAJJ,CADJ,CAzDJ,CADJ;AA4EH"}
@@ -25,10 +25,12 @@ function useVariantStyleMap(variant) {
25
25
  content: {
26
26
  borderTopColor: theme.palette.border.weak,
27
27
  borderTopWidth: 0.5,
28
+ left: 0,
28
29
  marginHorizontal: theme.spacing(4),
29
30
  paddingBottom: theme.spacing(5),
30
31
  paddingTop: theme.spacing(4),
31
- position: 'absolute'
32
+ position: 'absolute',
33
+ right: 0
32
34
  },
33
35
  contentFont: (0, _styles2.createFontStyle)(theme, {
34
36
  selector: typography => typography.body3.regular,
@@ -46,9 +48,9 @@ function useVariantStyleMap(variant) {
46
48
  },
47
49
  titleFont: (0, _styles2.createFontStyle)(theme, {
48
50
  selector: _ => (0, _styles.typographyOf)({
49
- fontSize: 15,
50
- lineHeight: 19.5,
51
- fontFamily: 'Pretendard-SemiBold',
51
+ fontSize: 16,
52
+ lineHeight: 20.8,
53
+ fontFamily: 'PretendardStd-SemiBold',
52
54
  letterSpacing: 0
53
55
  }),
54
56
  color: theme.palette.text.strong
@@ -65,15 +67,20 @@ function useVariantStyleMap(variant) {
65
67
  content: {
66
68
  borderTopColor: theme.palette.border.weak,
67
69
  borderTopWidth: 0.5,
70
+ left: 0,
68
71
  marginHorizontal: theme.spacing(4),
69
72
  paddingBottom: theme.spacing(4),
70
73
  paddingTop: theme.spacing(3),
71
- position: 'absolute'
74
+ position: 'absolute',
75
+ right: 0
72
76
  },
73
77
  contentFont: (0, _styles2.createFontStyle)(theme, {
74
78
  selector: typography => typography.caption2.regular,
75
79
  color: theme.palette.text.base
76
80
  }),
81
+ iconContainer: {
82
+ paddingTop: 1
83
+ },
77
84
  title: {
78
85
  alignItems: 'center',
79
86
  paddingBottom: theme.spacing(1),
@@ -112,9 +119,9 @@ function useVariantStyleMap(variant) {
112
119
  },
113
120
  titleFont: (0, _styles2.createFontStyle)(theme, {
114
121
  selector: _ => (0, _styles.typographyOf)({
115
- fontSize: 15,
116
- lineHeight: 19.5,
117
- fontFamily: 'Pretendard-SemiBold',
122
+ fontSize: 16,
123
+ lineHeight: 20.8,
124
+ fontFamily: 'PretendardStd-SemiBold',
118
125
  letterSpacing: 0
119
126
  }),
120
127
  color: theme.palette.text.strong
@@ -1 +1 @@
1
- {"version":3,"names":["useVariantStyleMap","variant","theme","useTheme","useMemo","container","backgroundColor","palette","surface","supportive","borderRadius","shape","radius","md","content","borderTopColor","border","weak","borderTopWidth","marginHorizontal","spacing","paddingBottom","paddingTop","position","contentFont","createFontStyle","selector","typography","body3","regular","color","text","base","subTitleFont","caption1","title","alignItems","paddingLeft","paddingRight","paddingVertical","titleFont","_","typographyOf","fontSize","lineHeight","fontFamily","letterSpacing","strong","borderColor","borderWidth","caption2","caption1short","semiBold","borderBottomColor","borderBottomWidth"],"sources":["useVariantStyleMap.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport type { TextStyle } from 'react-native';\nimport type { FountainUiStyle } from '@fountain-ui/styles';\nimport { typographyOf } from '@fountain-ui/styles';\nimport { createFontStyle, useTheme } from '../styles';\nimport type { AccordionVariant } from './AccordionProps';\n\ninterface VariantStyle {\n container: FountainUiStyle;\n content: FountainUiStyle;\n contentFont: TextStyle;\n subTitleFont?: TextStyle;\n title: FountainUiStyle;\n titleFont: TextStyle;\n}\n\nexport default function useVariantStyleMap(variant: AccordionVariant): VariantStyle {\n const theme = useTheme();\n\n return useMemo(() => {\n switch (variant) {\n default:\n case 'solid':\n return {\n container: {\n backgroundColor: theme.palette.surface.supportive,\n borderRadius: theme.shape.radius.md,\n },\n content: {\n borderTopColor: theme.palette.border.weak,\n borderTopWidth: 0.5,\n marginHorizontal: theme.spacing(4),\n paddingBottom: theme.spacing(5),\n paddingTop: theme.spacing(4),\n position: 'absolute',\n },\n contentFont: createFontStyle(theme, {\n selector: (typography) => typography.body3.regular,\n color: theme.palette.text.base,\n }),\n subTitleFont: createFontStyle(theme, {\n selector: (typography) => typography.caption1.regular,\n color: theme.palette.text.base,\n }),\n title: {\n alignItems: 'center',\n paddingLeft: theme.spacing(4),\n paddingRight: theme.spacing(2),\n paddingVertical: theme.spacing(4),\n },\n titleFont: createFontStyle(theme, {\n selector: (_) => typographyOf({\n fontSize: 15,\n lineHeight: 19.5,\n fontFamily: 'Pretendard-SemiBold',\n letterSpacing: 0,\n }),\n color: theme.palette.text.strong,\n }),\n };\n case 'line':\n return {\n container: {\n borderColor: theme.palette.border.weak,\n borderRadius: theme.shape.radius.md,\n borderWidth: 1,\n },\n content: {\n borderTopColor: theme.palette.border.weak,\n borderTopWidth: 0.5,\n marginHorizontal: theme.spacing(4),\n paddingBottom: theme.spacing(4),\n paddingTop: theme.spacing(3),\n position: 'absolute',\n },\n contentFont: createFontStyle(theme, {\n selector: (typography) => typography.caption2.regular,\n color: theme.palette.text.base,\n }),\n title: {\n alignItems: 'center',\n paddingBottom: theme.spacing(1),\n paddingLeft: theme.spacing(4),\n paddingRight: theme.spacing(2),\n paddingTop: theme.spacing(0.75),\n },\n titleFont: createFontStyle(theme, {\n selector: (typography) => typography.caption1short.semiBold,\n color: theme.palette.text.base,\n }),\n };\n case 'underline':\n return {\n container: {\n borderBottomColor: theme.palette.border.weak,\n borderBottomWidth: 1,\n },\n content: {\n borderTopColor: theme.palette.border.weak,\n borderTopWidth: 0.5,\n paddingBottom: theme.spacing(5),\n paddingLeft: theme.spacing(0.5),\n paddingRight: theme.spacing(2),\n paddingTop: theme.spacing(4),\n },\n contentFont: createFontStyle(theme, {\n selector: (typography) => typography.body3.regular,\n color: theme.palette.text.base,\n }),\n title: {\n alignItems: 'center',\n paddingLeft: theme.spacing(0.5),\n paddingVertical: theme.spacing(2),\n },\n titleFont: createFontStyle(theme, {\n selector: (_) => typographyOf({\n fontSize: 15,\n lineHeight: 19.5,\n fontFamily: 'Pretendard-SemiBold',\n letterSpacing: 0,\n }),\n color: theme.palette.text.strong,\n }),\n };\n }\n }, [theme, variant]);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["useVariantStyleMap","variant","theme","useTheme","useMemo","container","backgroundColor","palette","surface","supportive","borderRadius","shape","radius","md","content","borderTopColor","border","weak","borderTopWidth","left","marginHorizontal","spacing","paddingBottom","paddingTop","position","right","contentFont","createFontStyle","selector","typography","body3","regular","color","text","base","subTitleFont","caption1","title","alignItems","paddingLeft","paddingRight","paddingVertical","titleFont","_","typographyOf","fontSize","lineHeight","fontFamily","letterSpacing","strong","borderColor","borderWidth","caption2","iconContainer","caption1short","semiBold","borderBottomColor","borderBottomWidth"],"sources":["useVariantStyleMap.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport type { TextStyle } from 'react-native';\nimport type { FountainUiStyle } from '@fountain-ui/styles';\nimport { typographyOf } from '@fountain-ui/styles';\nimport { createFontStyle, useTheme } from '../styles';\nimport type { AccordionVariant } from './AccordionProps';\n\ninterface VariantStyle {\n container: FountainUiStyle;\n content: FountainUiStyle;\n contentFont: TextStyle;\n iconContainer?: FountainUiStyle;\n subTitleFont?: TextStyle;\n title: FountainUiStyle;\n titleFont: TextStyle;\n}\n\nexport default function useVariantStyleMap(variant: AccordionVariant): VariantStyle {\n const theme = useTheme();\n\n return useMemo(() => {\n switch (variant) {\n default:\n case 'solid':\n return {\n container: {\n backgroundColor: theme.palette.surface.supportive,\n borderRadius: theme.shape.radius.md,\n },\n content: {\n borderTopColor: theme.palette.border.weak,\n borderTopWidth: 0.5,\n left: 0,\n marginHorizontal: theme.spacing(4),\n paddingBottom: theme.spacing(5),\n paddingTop: theme.spacing(4),\n position: 'absolute',\n right: 0,\n },\n contentFont: createFontStyle(theme, {\n selector: (typography) => typography.body3.regular,\n color: theme.palette.text.base,\n }),\n subTitleFont: createFontStyle(theme, {\n selector: (typography) => typography.caption1.regular,\n color: theme.palette.text.base,\n }),\n title: {\n alignItems: 'center',\n paddingLeft: theme.spacing(4),\n paddingRight: theme.spacing(2),\n paddingVertical: theme.spacing(4),\n },\n titleFont: createFontStyle(theme, {\n selector: (_) => typographyOf({\n fontSize: 16,\n lineHeight: 20.8,\n fontFamily: 'PretendardStd-SemiBold',\n letterSpacing: 0,\n }),\n color: theme.palette.text.strong,\n }),\n };\n case 'line':\n return {\n container: {\n borderColor: theme.palette.border.weak,\n borderRadius: theme.shape.radius.md,\n borderWidth: 1,\n },\n content: {\n borderTopColor: theme.palette.border.weak,\n borderTopWidth: 0.5,\n left: 0,\n marginHorizontal: theme.spacing(4),\n paddingBottom: theme.spacing(4),\n paddingTop: theme.spacing(3),\n position: 'absolute',\n right: 0,\n },\n contentFont: createFontStyle(theme, {\n selector: (typography) => typography.caption2.regular,\n color: theme.palette.text.base,\n }),\n iconContainer: {\n paddingTop: 1,\n },\n title: {\n alignItems: 'center',\n paddingBottom: theme.spacing(1),\n paddingLeft: theme.spacing(4),\n paddingRight: theme.spacing(2),\n paddingTop: theme.spacing(0.75),\n },\n titleFont: createFontStyle(theme, {\n selector: (typography) => typography.caption1short.semiBold,\n color: theme.palette.text.base,\n }),\n };\n case 'underline':\n return {\n container: {\n borderBottomColor: theme.palette.border.weak,\n borderBottomWidth: 1,\n },\n content: {\n borderTopColor: theme.palette.border.weak,\n borderTopWidth: 0.5,\n paddingBottom: theme.spacing(5),\n paddingLeft: theme.spacing(0.5),\n paddingRight: theme.spacing(2),\n paddingTop: theme.spacing(4),\n },\n contentFont: createFontStyle(theme, {\n selector: (typography) => typography.body3.regular,\n color: theme.palette.text.base,\n }),\n title: {\n alignItems: 'center',\n paddingLeft: theme.spacing(0.5),\n paddingVertical: theme.spacing(2),\n },\n titleFont: createFontStyle(theme, {\n selector: (_) => typographyOf({\n fontSize: 16,\n lineHeight: 20.8,\n fontFamily: 'PretendardStd-SemiBold',\n letterSpacing: 0,\n }),\n color: theme.palette.text.strong,\n }),\n };\n }\n }, [theme, variant]);\n}\n"],"mappings":"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"}
@@ -9,6 +9,8 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _reactNative = require("react-native");
11
11
 
12
+ var _hooks = require("../hooks");
13
+
12
14
  var _styles = require("../styles");
13
15
 
14
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -34,6 +36,7 @@ const AppBar = /*#__PURE__*/_react.default.forwardRef(function AppBar(props, ref
34
36
  ...otherProps
35
37
  } = props;
36
38
  const theme = (0, _styles.useTheme)();
39
+ const isDesktop = (0, _hooks.useBreakpointUp)('md', true, false);
37
40
  const styles = useStyles();
38
41
  const backgroundColorMap = {
39
42
  default: theme.palette.background.default,
@@ -41,7 +44,9 @@ const AppBar = /*#__PURE__*/_react.default.forwardRef(function AppBar(props, ref
41
44
  };
42
45
  const paperStyle = (0, _styles.css)([styles.root, {
43
46
  backgroundColor: backgroundColorMap[color]
44
- }, style]);
47
+ }, isDesktop ? {
48
+ paddingHorizontal: 8
49
+ } : undefined, style]);
45
50
  return /*#__PURE__*/_react.default.createElement(_reactNative.View, _extends({
46
51
  ref: ref,
47
52
  style: paperStyle
@@ -1 +1 @@
1
- {"version":3,"names":["useStyles","theme","useTheme","root","flexDirection","flexShrink","width","zIndex","appBar","AppBar","React","forwardRef","props","ref","color","style","otherProps","styles","backgroundColorMap","default","palette","background","alt","paperStyle","css","backgroundColor"],"sources":["AppBar.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport { NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport { css, useTheme } from '../styles';\nimport type AppBarProps from './AppBarProps';\nimport type { AppBarColor } from './AppBarProps';\n\ntype AppBarStyleKeys = 'root';\n\ntype AppBarStyles = NamedStylesStringUnion<AppBarStyleKeys>;\n\nconst useStyles: UseStyles<AppBarStyles> = function (): AppBarStyles {\n const theme = useTheme();\n\n return {\n root: {\n flexDirection: 'column',\n flexShrink: 0,\n width: '100%',\n zIndex: theme.zIndex.appBar,\n },\n };\n};\n\nconst AppBar = React.forwardRef<View, AppBarProps>(function AppBar(props, ref) {\n const {\n color = 'default',\n style,\n ...otherProps\n } = props;\n\n const theme = useTheme();\n\n const styles = useStyles();\n\n const backgroundColorMap: Record<AppBarColor, string> = {\n default: theme.palette.background.default,\n alt: theme.palette.background.alt,\n };\n\n const paperStyle = css([\n styles.root,\n { backgroundColor: backgroundColorMap[color] },\n style,\n ]);\n\n return (\n <View\n ref={ref}\n style={paperStyle}\n {...otherProps}\n />\n );\n});\n\nexport default AppBar;\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;;;;;AAQA,MAAMA,SAAkC,GAAG,YAA0B;EACjE,MAAMC,KAAK,GAAG,IAAAC,gBAAA,GAAd;EAEA,OAAO;IACHC,IAAI,EAAE;MACFC,aAAa,EAAE,QADb;MAEFC,UAAU,EAAE,CAFV;MAGFC,KAAK,EAAE,MAHL;MAIFC,MAAM,EAAEN,KAAK,CAACM,MAAN,CAAaC;IAJnB;EADH,CAAP;AAQH,CAXD;;AAaA,MAAMC,MAAM,gBAAGC,cAAA,CAAMC,UAAN,CAAoC,SAASF,MAAT,CAAgBG,KAAhB,EAAuBC,GAAvB,EAA4B;EAC3E,MAAM;IACFC,KAAK,GAAG,SADN;IAEFC,KAFE;IAGF,GAAGC;EAHD,IAIFJ,KAJJ;EAMA,MAAMX,KAAK,GAAG,IAAAC,gBAAA,GAAd;EAEA,MAAMe,MAAM,GAAGjB,SAAS,EAAxB;EAEA,MAAMkB,kBAA+C,GAAG;IACpDC,OAAO,EAAElB,KAAK,CAACmB,OAAN,CAAcC,UAAd,CAAyBF,OADkB;IAEpDG,GAAG,EAAErB,KAAK,CAACmB,OAAN,CAAcC,UAAd,CAAyBC;EAFsB,CAAxD;EAKA,MAAMC,UAAU,GAAG,IAAAC,WAAA,EAAI,CACnBP,MAAM,CAACd,IADY,EAEnB;IAAEsB,eAAe,EAAEP,kBAAkB,CAACJ,KAAD;EAArC,CAFmB,EAGnBC,KAHmB,CAAJ,CAAnB;EAMA,oBACI,6BAAC,iBAAD;IACI,GAAG,EAAEF,GADT;IAEI,KAAK,EAAEU;EAFX,GAGQP,UAHR,EADJ;AAOH,CA7Bc,CAAf;;eA+BeP,M"}
1
+ {"version":3,"names":["useStyles","theme","useTheme","root","flexDirection","flexShrink","width","zIndex","appBar","AppBar","React","forwardRef","props","ref","color","style","otherProps","isDesktop","useBreakpointUp","styles","backgroundColorMap","default","palette","background","alt","paperStyle","css","backgroundColor","paddingHorizontal","undefined"],"sources":["AppBar.tsx"],"sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport { NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport { useBreakpointUp } from '../hooks';\nimport { css, useTheme } from '../styles';\nimport type AppBarProps from './AppBarProps';\nimport type { AppBarColor } from './AppBarProps';\n\ntype AppBarStyleKeys = 'root';\n\ntype AppBarStyles = NamedStylesStringUnion<AppBarStyleKeys>;\n\nconst useStyles: UseStyles<AppBarStyles> = function (): AppBarStyles {\n const theme = useTheme();\n\n return {\n root: {\n flexDirection: 'column',\n flexShrink: 0,\n width: '100%',\n zIndex: theme.zIndex.appBar,\n },\n };\n};\n\nconst AppBar = React.forwardRef<View, AppBarProps>(function AppBar(props, ref) {\n const {\n color = 'default',\n style,\n ...otherProps\n } = props;\n\n const theme = useTheme();\n\n const isDesktop = useBreakpointUp('md', true, false);\n\n const styles = useStyles();\n\n const backgroundColorMap: Record<AppBarColor, string> = {\n default: theme.palette.background.default,\n alt: theme.palette.background.alt,\n };\n\n const paperStyle = css([\n styles.root,\n { backgroundColor: backgroundColorMap[color] },\n isDesktop ? { paddingHorizontal: 8 } : undefined,\n style,\n ]);\n\n return (\n <View\n ref={ref}\n style={paperStyle}\n {...otherProps}\n />\n );\n});\n\nexport default AppBar;\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;;;;;AAQA,MAAMA,SAAkC,GAAG,YAA0B;EACjE,MAAMC,KAAK,GAAG,IAAAC,gBAAA,GAAd;EAEA,OAAO;IACHC,IAAI,EAAE;MACFC,aAAa,EAAE,QADb;MAEFC,UAAU,EAAE,CAFV;MAGFC,KAAK,EAAE,MAHL;MAIFC,MAAM,EAAEN,KAAK,CAACM,MAAN,CAAaC;IAJnB;EADH,CAAP;AAQH,CAXD;;AAaA,MAAMC,MAAM,gBAAGC,cAAA,CAAMC,UAAN,CAAoC,SAASF,MAAT,CAAgBG,KAAhB,EAAuBC,GAAvB,EAA4B;EAC3E,MAAM;IACFC,KAAK,GAAG,SADN;IAEFC,KAFE;IAGF,GAAGC;EAHD,IAIFJ,KAJJ;EAMA,MAAMX,KAAK,GAAG,IAAAC,gBAAA,GAAd;EAEA,MAAMe,SAAS,GAAG,IAAAC,sBAAA,EAAgB,IAAhB,EAAsB,IAAtB,EAA4B,KAA5B,CAAlB;EAEA,MAAMC,MAAM,GAAGnB,SAAS,EAAxB;EAEA,MAAMoB,kBAA+C,GAAG;IACpDC,OAAO,EAAEpB,KAAK,CAACqB,OAAN,CAAcC,UAAd,CAAyBF,OADkB;IAEpDG,GAAG,EAAEvB,KAAK,CAACqB,OAAN,CAAcC,UAAd,CAAyBC;EAFsB,CAAxD;EAKA,MAAMC,UAAU,GAAG,IAAAC,WAAA,EAAI,CACnBP,MAAM,CAAChB,IADY,EAEnB;IAAEwB,eAAe,EAAEP,kBAAkB,CAACN,KAAD;EAArC,CAFmB,EAGnBG,SAAS,GAAG;IAAEW,iBAAiB,EAAE;EAArB,CAAH,GAA8BC,SAHpB,EAInBd,KAJmB,CAAJ,CAAnB;EAOA,oBACI,6BAAC,iBAAD;IACI,GAAG,EAAEF,GADT;IAEI,KAAK,EAAEY;EAFX,GAGQT,UAHR,EADJ;AAOH,CAhCc,CAAf;;eAkCeP,M"}
@@ -27,12 +27,13 @@ function Badge(props) {
27
27
  children,
28
28
  color = 'accent',
29
29
  content,
30
+ horizontalOffset = 0,
30
31
  invisible = false,
31
32
  position = defaultPosition,
32
33
  size = 'medium',
33
34
  style: styleProp,
34
- offset = 0,
35
35
  variant = 'dot',
36
+ verticalOffset = 0,
36
37
  ...otherProps
37
38
  } = props;
38
39
  const {
@@ -41,8 +42,8 @@ function Badge(props) {
41
42
  } = (0, _useVariantStyleMap.default)(variant, size, color);
42
43
  const rootStyle = (0, _styles.css)([styleProp]);
43
44
  const badgeStyle = (0, _styles.css)([baseBadgeStyle, {
44
- [position.vertical]: offset,
45
- [position.horizontal]: offset
45
+ [position.vertical]: verticalOffset,
46
+ [position.horizontal]: horizontalOffset
46
47
  }]);
47
48
  return /*#__PURE__*/_react.default.createElement(_reactNative.View, _extends({
48
49
  style: rootStyle
@@ -1 +1 @@
1
- {"version":3,"names":["defaultPosition","vertical","horizontal","Badge","props","children","color","content","invisible","position","size","style","styleProp","offset","variant","otherProps","badge","baseBadgeStyle","contentFont","contentFontStyle","useVariantStyleMap","rootStyle","css","badgeStyle","undefined"],"sources":["Badge.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View } from 'react-native';\nimport { css } from '../styles';\nimport type BadgeProps from './BadgeProps';\nimport type { BadgeColor, BadgePosition, BadgeSize, BadgeVariant } from './BadgeProps';\nimport useVariantStyleMap from './useVariantStyleMap';\n\nconst defaultPosition: BadgePosition = {\n vertical: 'top',\n horizontal: 'right',\n};\n\nexport default function Badge(props: BadgeProps) {\n const {\n children,\n color = 'accent' as BadgeColor,\n content,\n invisible = false,\n position = defaultPosition,\n size = 'medium' as BadgeSize,\n style: styleProp,\n offset = 0,\n variant = 'dot' as BadgeVariant,\n ...otherProps\n } = props;\n\n const {\n badge: baseBadgeStyle,\n contentFont: contentFontStyle,\n } = useVariantStyleMap(variant, size, color);\n\n const rootStyle = css([\n styleProp,\n ]);\n\n const badgeStyle = css([\n baseBadgeStyle,\n {\n [position.vertical]: offset,\n [position.horizontal]: offset,\n },\n ]);\n\n return (\n <View\n style={rootStyle}\n {...otherProps}\n >\n {children}\n\n {!invisible ? (\n <View style={badgeStyle}>\n {content !== undefined && content !== null ? (\n <Text style={contentFontStyle}>{content}</Text>\n ) : null}\n </View>\n ) : null}\n </View>\n );\n};\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAGA;;;;;;AAEA,MAAMA,eAA8B,GAAG;EACnCC,QAAQ,EAAE,KADyB;EAEnCC,UAAU,EAAE;AAFuB,CAAvC;;AAKe,SAASC,KAAT,CAAeC,KAAf,EAAkC;EAC7C,MAAM;IACFC,QADE;IAEFC,KAAK,GAAG,QAFN;IAGFC,OAHE;IAIFC,SAAS,GAAG,KAJV;IAKFC,QAAQ,GAAGT,eALT;IAMFU,IAAI,GAAG,QANL;IAOFC,KAAK,EAAEC,SAPL;IAQFC,MAAM,GAAG,CARP;IASFC,OAAO,GAAG,KATR;IAUF,GAAGC;EAVD,IAWFX,KAXJ;EAaA,MAAM;IACFY,KAAK,EAAEC,cADL;IAEFC,WAAW,EAAEC;EAFX,IAGF,IAAAC,2BAAA,EAAmBN,OAAnB,EAA4BJ,IAA5B,EAAkCJ,KAAlC,CAHJ;EAKA,MAAMe,SAAS,GAAG,IAAAC,WAAA,EAAI,CAClBV,SADkB,CAAJ,CAAlB;EAIA,MAAMW,UAAU,GAAG,IAAAD,WAAA,EAAI,CACnBL,cADmB,EAEnB;IACI,CAACR,QAAQ,CAACR,QAAV,GAAqBY,MADzB;IAEI,CAACJ,QAAQ,CAACP,UAAV,GAAuBW;EAF3B,CAFmB,CAAJ,CAAnB;EAQA,oBACI,6BAAC,iBAAD;IACI,KAAK,EAAEQ;EADX,GAEQN,UAFR,GAIKV,QAJL,EAMK,CAACG,SAAD,gBACG,6BAAC,iBAAD;IAAM,KAAK,EAAEe;EAAb,GACKhB,OAAO,KAAKiB,SAAZ,IAAyBjB,OAAO,KAAK,IAArC,gBACG,6BAAC,iBAAD;IAAM,KAAK,EAAEY;EAAb,GAAgCZ,OAAhC,CADH,GAEG,IAHR,CADH,GAMG,IAZR,CADJ;AAgBH;;AAAA"}
1
+ {"version":3,"names":["defaultPosition","vertical","horizontal","Badge","props","children","color","content","horizontalOffset","invisible","position","size","style","styleProp","variant","verticalOffset","otherProps","badge","baseBadgeStyle","contentFont","contentFontStyle","useVariantStyleMap","rootStyle","css","badgeStyle","undefined"],"sources":["Badge.tsx"],"sourcesContent":["import React from 'react';\nimport { Text, View } from 'react-native';\nimport { css } from '../styles';\nimport type BadgeProps from './BadgeProps';\nimport type { BadgeColor, BadgePosition, BadgeSize, BadgeVariant } from './BadgeProps';\nimport useVariantStyleMap from './useVariantStyleMap';\n\nconst defaultPosition: BadgePosition = {\n vertical: 'top',\n horizontal: 'right',\n};\n\nexport default function Badge(props: BadgeProps) {\n const {\n children,\n color = 'accent' as BadgeColor,\n content,\n horizontalOffset = 0,\n invisible = false,\n position = defaultPosition,\n size = 'medium' as BadgeSize,\n style: styleProp,\n variant = 'dot' as BadgeVariant,\n verticalOffset = 0,\n ...otherProps\n } = props;\n\n const {\n badge: baseBadgeStyle,\n contentFont: contentFontStyle,\n } = useVariantStyleMap(variant, size, color);\n\n const rootStyle = css([\n styleProp,\n ]);\n\n const badgeStyle = css([\n baseBadgeStyle,\n {\n [position.vertical]: verticalOffset,\n [position.horizontal]: horizontalOffset,\n },\n ]);\n\n return (\n <View\n style={rootStyle}\n {...otherProps}\n >\n {children}\n\n {!invisible ? (\n <View style={badgeStyle}>\n {content !== undefined && content !== null ? (\n <Text style={contentFontStyle}>{content}</Text>\n ) : null}\n </View>\n ) : null}\n </View>\n );\n};\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAGA;;;;;;AAEA,MAAMA,eAA8B,GAAG;EACnCC,QAAQ,EAAE,KADyB;EAEnCC,UAAU,EAAE;AAFuB,CAAvC;;AAKe,SAASC,KAAT,CAAeC,KAAf,EAAkC;EAC7C,MAAM;IACFC,QADE;IAEFC,KAAK,GAAG,QAFN;IAGFC,OAHE;IAIFC,gBAAgB,GAAG,CAJjB;IAKFC,SAAS,GAAG,KALV;IAMFC,QAAQ,GAAGV,eANT;IAOFW,IAAI,GAAG,QAPL;IAQFC,KAAK,EAAEC,SARL;IASFC,OAAO,GAAG,KATR;IAUFC,cAAc,GAAG,CAVf;IAWF,GAAGC;EAXD,IAYFZ,KAZJ;EAcA,MAAM;IACFa,KAAK,EAAEC,cADL;IAEFC,WAAW,EAAEC;EAFX,IAGF,IAAAC,2BAAA,EAAmBP,OAAnB,EAA4BH,IAA5B,EAAkCL,KAAlC,CAHJ;EAKA,MAAMgB,SAAS,GAAG,IAAAC,WAAA,EAAI,CAClBV,SADkB,CAAJ,CAAlB;EAIA,MAAMW,UAAU,GAAG,IAAAD,WAAA,EAAI,CACnBL,cADmB,EAEnB;IACI,CAACR,QAAQ,CAACT,QAAV,GAAqBc,cADzB;IAEI,CAACL,QAAQ,CAACR,UAAV,GAAuBM;EAF3B,CAFmB,CAAJ,CAAnB;EAQA,oBACI,6BAAC,iBAAD;IACI,KAAK,EAAEc;EADX,GAEQN,UAFR,GAIKX,QAJL,EAMK,CAACI,SAAD,gBACG,6BAAC,iBAAD;IAAM,KAAK,EAAEe;EAAb,GACKjB,OAAO,KAAKkB,SAAZ,IAAyBlB,OAAO,KAAK,IAArC,gBACG,6BAAC,iBAAD;IAAM,KAAK,EAAEa;EAAb,GAAgCb,OAAhC,CADH,GAEG,IAHR,CADH,GAMG,IAZR,CADJ;AAgBH;;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"names":["badgeHorizontalPositions","badgeVerticalPositions","badgeColors","badgeSizes","badgeVariants"],"sources":["BadgeProps.ts"],"sourcesContent":["import React from 'react';\nimport type { ViewProps } from 'react-native';\nimport type { OverridableComponentProps } from '../types';\n\nexport const badgeHorizontalPositions = ['right', 'left'] as const;\nexport type BadgeHorizontalPosition = typeof badgeHorizontalPositions[number];\n\nexport const badgeVerticalPositions = ['top', 'bottom'] as const;\nexport type BadgeVerticalPosition = typeof badgeVerticalPositions[number];\n\nexport interface BadgePosition {\n vertical: BadgeVerticalPosition;\n horizontal: BadgeHorizontalPosition;\n}\n\nexport const badgeColors = ['accent', 'danger'] as const;\nexport type BadgeColor = typeof badgeColors[number];\n\nexport const badgeSizes = ['large', 'medium'] as const;\nexport type BadgeSize = typeof badgeSizes[number];\n\nexport const badgeVariants = ['dot', 'number'] as const;\nexport type BadgeVariant = typeof badgeVariants[number];\n\nexport default interface BadgeProps extends OverridableComponentProps<ViewProps, {\n /**\n * The badge will be added relative to this node.\n */\n children?: React.ReactNode;\n\n /**\n *\n * @default 'accent'\n */\n color?: BadgeColor;\n\n /**\n * (only number variant)\n */\n content?: number;\n\n /**\n * If `true`, the badge is invisible.\n * @default false\n */\n invisible?: boolean;\n\n /**\n * The position of the badge.\n * @default {\n * vertical: 'top',\n * horizontal: 'right',\n * }\n */\n position?: BadgePosition;\n\n /**\n * The offset of the badge.\n * @default 0\n */\n offset?: number;\n\n /**\n *\n */\n size?: BadgeSize;\n\n /**\n *\n * @default 'dot'\n */\n variant?: BadgeVariant;\n}> {}\n"],"mappings":";;;;;;AAIO,MAAMA,wBAAwB,GAAG,CAAC,OAAD,EAAU,MAAV,CAAjC;;AAGA,MAAMC,sBAAsB,GAAG,CAAC,KAAD,EAAQ,QAAR,CAA/B;;AAQA,MAAMC,WAAW,GAAG,CAAC,QAAD,EAAW,QAAX,CAApB;;AAGA,MAAMC,UAAU,GAAG,CAAC,OAAD,EAAU,QAAV,CAAnB;;AAGA,MAAMC,aAAa,GAAG,CAAC,KAAD,EAAQ,QAAR,CAAtB"}
1
+ {"version":3,"names":["badgeHorizontalPositions","badgeVerticalPositions","badgeColors","badgeSizes","badgeVariants"],"sources":["BadgeProps.ts"],"sourcesContent":["import React from 'react';\nimport type { ViewProps } from 'react-native';\nimport type { OverridableComponentProps } from '../types';\n\nexport const badgeHorizontalPositions = ['right', 'left'] as const;\nexport type BadgeHorizontalPosition = typeof badgeHorizontalPositions[number];\n\nexport const badgeVerticalPositions = ['top', 'bottom'] as const;\nexport type BadgeVerticalPosition = typeof badgeVerticalPositions[number];\n\nexport interface BadgePosition {\n vertical: BadgeVerticalPosition;\n horizontal: BadgeHorizontalPosition;\n}\n\nexport const badgeColors = ['accent', 'danger'] as const;\nexport type BadgeColor = typeof badgeColors[number];\n\nexport const badgeSizes = ['large', 'medium'] as const;\nexport type BadgeSize = typeof badgeSizes[number];\n\nexport const badgeVariants = ['dot', 'number'] as const;\nexport type BadgeVariant = typeof badgeVariants[number];\n\nexport default interface BadgeProps extends OverridableComponentProps<ViewProps, {\n /**\n * The badge will be added relative to this node.\n */\n children?: React.ReactNode;\n\n /**\n *\n * @default 'accent'\n */\n color?: BadgeColor;\n\n /**\n * (only number variant)\n */\n content?: number;\n\n /**\n * The horizontal offset of the badge.\n * @default 0\n */\n horizontalOffset?: number;\n\n /**\n * If `true`, the badge is invisible.\n * @default false\n */\n invisible?: boolean;\n\n /**\n * The position of the badge.\n * @default {\n * vertical: 'top',\n * horizontal: 'right',\n * }\n */\n position?: BadgePosition;\n\n /**\n *\n */\n size?: BadgeSize;\n\n /**\n *\n * @default 'dot'\n */\n variant?: BadgeVariant;\n\n /**\n * The vertical offset of the badge.\n * @default 0\n */\n verticalOffset?: number;\n}> {}\n"],"mappings":";;;;;;AAIO,MAAMA,wBAAwB,GAAG,CAAC,OAAD,EAAU,MAAV,CAAjC;;AAGA,MAAMC,sBAAsB,GAAG,CAAC,KAAD,EAAQ,QAAR,CAA/B;;AAQA,MAAMC,WAAW,GAAG,CAAC,QAAD,EAAW,QAAX,CAApB;;AAGA,MAAMC,UAAU,GAAG,CAAC,OAAD,EAAU,QAAV,CAAnB;;AAGA,MAAMC,aAAa,GAAG,CAAC,KAAD,EAAQ,QAAR,CAAtB"}
@@ -47,13 +47,13 @@ function useVariantStyleMap(variant, size, color) {
47
47
  large: (0, _styles.typographyOf)({
48
48
  fontSize: 14,
49
49
  lineHeight: 14,
50
- fontFamily: 'Pretendard-Bold',
50
+ fontFamily: 'PretendardStd-Bold',
51
51
  letterSpacing: -0.7
52
52
  }),
53
53
  medium: (0, _styles.typographyOf)({
54
54
  fontSize: 12,
55
55
  lineHeight: 12,
56
- fontFamily: 'Pretendard-Bold',
56
+ fontFamily: 'PretendardStd-Bold',
57
57
  letterSpacing: -0.6
58
58
  })
59
59
  };
@@ -1 +1 @@
1
- {"version":3,"names":["sizeMap","dot","medium","number","large","getColorMap","theme","accent","palette","fill","danger","status","useVariantStyleMap","variant","size","color","useTheme","useMemo","badgeSize","process","env","NODE_ENV","undefined","console","warn","colorMap","commonBadgeStyle","backgroundColor","borderRadius","shape","radius","full","height","position","width","fontStyleMap","typographyOf","fontSize","lineHeight","fontFamily","letterSpacing","badge","alignItems","justifyContent","contentFont","createFontStyle","selector","_","commonColors","opacity","white"],"sources":["useVariantStyleMap.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport type { TextStyle } from 'react-native';\nimport type { FontStyle, FountainUiStyle, Theme } from '@fountain-ui/styles';\nimport { commonColors, typographyOf } from '@fountain-ui/styles';\nimport { createFontStyle, useTheme } from '../styles';\nimport type { BadgeColor, BadgeSize, BadgeVariant } from './BadgeProps';\n\nconst sizeMap: Record<BadgeVariant, Partial<Record<BadgeSize, number>>> = {\n dot: {\n medium: 4,\n },\n number: {\n large: 26,\n medium: 22,\n },\n};\n\nconst getColorMap = (theme: Theme): Record<BadgeColor, string> => ({\n accent: theme.palette.fill.accent,\n danger: theme.palette.status.danger,\n});\n\ninterface VariantStyle {\n badge: FountainUiStyle;\n contentFont?: TextStyle;\n}\n\nexport default function useVariantStyleMap(variant: BadgeVariant, size: BadgeSize, color: BadgeColor): VariantStyle {\n const theme = useTheme();\n\n return useMemo<VariantStyle>(() => {\n const badgeSize = sizeMap[variant][size] ?? sizeMap[variant].medium;\n\n if (process.env.NODE_ENV !== 'production' && sizeMap[variant][size] === undefined) {\n console.warn('The selected size is not supported for the chosen variant.');\n }\n\n const colorMap = getColorMap(theme);\n\n const commonBadgeStyle: FountainUiStyle = {\n backgroundColor: colorMap[color],\n borderRadius: theme.shape.radius.full,\n height: badgeSize,\n position: 'absolute',\n width: badgeSize,\n };\n\n const fontStyleMap: Record<BadgeSize, FontStyle> = {\n large: typographyOf({\n fontSize: 14,\n lineHeight: 14,\n fontFamily: 'Pretendard-Bold',\n letterSpacing: -0.7,\n }),\n medium: typographyOf({\n fontSize: 12,\n lineHeight: 12,\n fontFamily: 'Pretendard-Bold',\n letterSpacing: -0.6,\n }),\n };\n\n switch (variant) {\n default:\n case 'dot':\n return {\n badge: { ...commonBadgeStyle },\n };\n case 'number':\n return {\n badge: {\n ...commonBadgeStyle,\n alignItems: 'center',\n justifyContent: 'center',\n },\n contentFont: createFontStyle(theme, {\n selector: (_) => fontStyleMap[size],\n color: commonColors.opacity.white['100'],\n }),\n };\n }\n }, [theme, variant, size, color]);\n}\n"],"mappings":";;;;;;;AAAA;;AAGA;;AACA;;AAGA,MAAMA,OAAiE,GAAG;EACtEC,GAAG,EAAE;IACDC,MAAM,EAAE;EADP,CADiE;EAItEC,MAAM,EAAE;IACJC,KAAK,EAAE,EADH;IAEJF,MAAM,EAAE;EAFJ;AAJ8D,CAA1E;;AAUA,MAAMG,WAAW,GAAIC,KAAD,KAA+C;EAC/DC,MAAM,EAAED,KAAK,CAACE,OAAN,CAAcC,IAAd,CAAmBF,MADoC;EAE/DG,MAAM,EAAEJ,KAAK,CAACE,OAAN,CAAcG,MAAd,CAAqBD;AAFkC,CAA/C,CAApB;;AAUe,SAASE,kBAAT,CAA4BC,OAA5B,EAAmDC,IAAnD,EAAoEC,KAApE,EAAqG;EAChH,MAAMT,KAAK,GAAG,IAAAU,iBAAA,GAAd;EAEA,OAAO,IAAAC,cAAA,EAAsB,MAAM;IAC/B,MAAMC,SAAS,GAAGlB,OAAO,CAACa,OAAD,CAAP,CAAiBC,IAAjB,KAA0Bd,OAAO,CAACa,OAAD,CAAP,CAAiBX,MAA7D;;IAEA,IAAIiB,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,YAAzB,IAAyCrB,OAAO,CAACa,OAAD,CAAP,CAAiBC,IAAjB,MAA2BQ,SAAxE,EAAmF;MAC/EC,OAAO,CAACC,IAAR,CAAa,4DAAb;IACH;;IAED,MAAMC,QAAQ,GAAGpB,WAAW,CAACC,KAAD,CAA5B;IAEA,MAAMoB,gBAAiC,GAAG;MACtCC,eAAe,EAAEF,QAAQ,CAACV,KAAD,CADa;MAEtCa,YAAY,EAAEtB,KAAK,CAACuB,KAAN,CAAYC,MAAZ,CAAmBC,IAFK;MAGtCC,MAAM,EAAEd,SAH8B;MAItCe,QAAQ,EAAE,UAJ4B;MAKtCC,KAAK,EAAEhB;IAL+B,CAA1C;IAQA,MAAMiB,YAA0C,GAAG;MAC/C/B,KAAK,EAAE,IAAAgC,oBAAA,EAAa;QAChBC,QAAQ,EAAE,EADM;QAEhBC,UAAU,EAAE,EAFI;QAGhBC,UAAU,EAAE,iBAHI;QAIhBC,aAAa,EAAE,CAAC;MAJA,CAAb,CADwC;MAO/CtC,MAAM,EAAE,IAAAkC,oBAAA,EAAa;QACjBC,QAAQ,EAAE,EADO;QAEjBC,UAAU,EAAE,EAFK;QAGjBC,UAAU,EAAE,iBAHK;QAIjBC,aAAa,EAAE,CAAC;MAJC,CAAb;IAPuC,CAAnD;;IAeA,QAAQ3B,OAAR;MACI;MACA,KAAK,KAAL;QACI,OAAO;UACH4B,KAAK,EAAE,EAAE,GAAGf;UAAL;QADJ,CAAP;;MAGJ,KAAK,QAAL;QACI,OAAO;UACHe,KAAK,EAAE,EACH,GAAGf,gBADA;YAEHgB,UAAU,EAAE,QAFT;YAGHC,cAAc,EAAE;UAHb,CADJ;UAMHC,WAAW,EAAE,IAAAC,wBAAA,EAAgBvC,KAAhB,EAAuB;YAChCwC,QAAQ,EAAGC,CAAD,IAAOZ,YAAY,CAACrB,IAAD,CADG;YAEhCC,KAAK,EAAEiC,oBAAA,CAAaC,OAAb,CAAqBC,KAArB,CAA2B,KAA3B;UAFyB,CAAvB;QANV,CAAP;IAPR;EAmBH,CAnDM,EAmDJ,CAAC5C,KAAD,EAAQO,OAAR,EAAiBC,IAAjB,EAAuBC,KAAvB,CAnDI,CAAP;AAoDH"}
1
+ {"version":3,"names":["sizeMap","dot","medium","number","large","getColorMap","theme","accent","palette","fill","danger","status","useVariantStyleMap","variant","size","color","useTheme","useMemo","badgeSize","process","env","NODE_ENV","undefined","console","warn","colorMap","commonBadgeStyle","backgroundColor","borderRadius","shape","radius","full","height","position","width","fontStyleMap","typographyOf","fontSize","lineHeight","fontFamily","letterSpacing","badge","alignItems","justifyContent","contentFont","createFontStyle","selector","_","commonColors","opacity","white"],"sources":["useVariantStyleMap.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport type { TextStyle } from 'react-native';\nimport type { FontStyle, FountainUiStyle, Theme } from '@fountain-ui/styles';\nimport { commonColors, typographyOf } from '@fountain-ui/styles';\nimport { createFontStyle, useTheme } from '../styles';\nimport type { BadgeColor, BadgeSize, BadgeVariant } from './BadgeProps';\n\nconst sizeMap: Record<BadgeVariant, Partial<Record<BadgeSize, number>>> = {\n dot: {\n medium: 4,\n },\n number: {\n large: 26,\n medium: 22,\n },\n};\n\nconst getColorMap = (theme: Theme): Record<BadgeColor, string> => ({\n accent: theme.palette.fill.accent,\n danger: theme.palette.status.danger,\n});\n\ninterface VariantStyle {\n badge: FountainUiStyle;\n contentFont?: TextStyle;\n}\n\nexport default function useVariantStyleMap(variant: BadgeVariant, size: BadgeSize, color: BadgeColor): VariantStyle {\n const theme = useTheme();\n\n return useMemo<VariantStyle>(() => {\n const badgeSize = sizeMap[variant][size] ?? sizeMap[variant].medium;\n\n if (process.env.NODE_ENV !== 'production' && sizeMap[variant][size] === undefined) {\n console.warn('The selected size is not supported for the chosen variant.');\n }\n\n const colorMap = getColorMap(theme);\n\n const commonBadgeStyle: FountainUiStyle = {\n backgroundColor: colorMap[color],\n borderRadius: theme.shape.radius.full,\n height: badgeSize,\n position: 'absolute',\n width: badgeSize,\n };\n\n const fontStyleMap: Record<BadgeSize, FontStyle> = {\n large: typographyOf({\n fontSize: 14,\n lineHeight: 14,\n fontFamily: 'PretendardStd-Bold',\n letterSpacing: -0.7,\n }),\n medium: typographyOf({\n fontSize: 12,\n lineHeight: 12,\n fontFamily: 'PretendardStd-Bold',\n letterSpacing: -0.6,\n }),\n };\n\n switch (variant) {\n default:\n case 'dot':\n return {\n badge: { ...commonBadgeStyle },\n };\n case 'number':\n return {\n badge: {\n ...commonBadgeStyle,\n alignItems: 'center',\n justifyContent: 'center',\n },\n contentFont: createFontStyle(theme, {\n selector: (_) => fontStyleMap[size],\n color: commonColors.opacity.white['100'],\n }),\n };\n }\n }, [theme, variant, size, color]);\n}\n"],"mappings":";;;;;;;AAAA;;AAGA;;AACA;;AAGA,MAAMA,OAAiE,GAAG;EACtEC,GAAG,EAAE;IACDC,MAAM,EAAE;EADP,CADiE;EAItEC,MAAM,EAAE;IACJC,KAAK,EAAE,EADH;IAEJF,MAAM,EAAE;EAFJ;AAJ8D,CAA1E;;AAUA,MAAMG,WAAW,GAAIC,KAAD,KAA+C;EAC/DC,MAAM,EAAED,KAAK,CAACE,OAAN,CAAcC,IAAd,CAAmBF,MADoC;EAE/DG,MAAM,EAAEJ,KAAK,CAACE,OAAN,CAAcG,MAAd,CAAqBD;AAFkC,CAA/C,CAApB;;AAUe,SAASE,kBAAT,CAA4BC,OAA5B,EAAmDC,IAAnD,EAAoEC,KAApE,EAAqG;EAChH,MAAMT,KAAK,GAAG,IAAAU,iBAAA,GAAd;EAEA,OAAO,IAAAC,cAAA,EAAsB,MAAM;IAC/B,MAAMC,SAAS,GAAGlB,OAAO,CAACa,OAAD,CAAP,CAAiBC,IAAjB,KAA0Bd,OAAO,CAACa,OAAD,CAAP,CAAiBX,MAA7D;;IAEA,IAAIiB,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,YAAzB,IAAyCrB,OAAO,CAACa,OAAD,CAAP,CAAiBC,IAAjB,MAA2BQ,SAAxE,EAAmF;MAC/EC,OAAO,CAACC,IAAR,CAAa,4DAAb;IACH;;IAED,MAAMC,QAAQ,GAAGpB,WAAW,CAACC,KAAD,CAA5B;IAEA,MAAMoB,gBAAiC,GAAG;MACtCC,eAAe,EAAEF,QAAQ,CAACV,KAAD,CADa;MAEtCa,YAAY,EAAEtB,KAAK,CAACuB,KAAN,CAAYC,MAAZ,CAAmBC,IAFK;MAGtCC,MAAM,EAAEd,SAH8B;MAItCe,QAAQ,EAAE,UAJ4B;MAKtCC,KAAK,EAAEhB;IAL+B,CAA1C;IAQA,MAAMiB,YAA0C,GAAG;MAC/C/B,KAAK,EAAE,IAAAgC,oBAAA,EAAa;QAChBC,QAAQ,EAAE,EADM;QAEhBC,UAAU,EAAE,EAFI;QAGhBC,UAAU,EAAE,oBAHI;QAIhBC,aAAa,EAAE,CAAC;MAJA,CAAb,CADwC;MAO/CtC,MAAM,EAAE,IAAAkC,oBAAA,EAAa;QACjBC,QAAQ,EAAE,EADO;QAEjBC,UAAU,EAAE,EAFK;QAGjBC,UAAU,EAAE,oBAHK;QAIjBC,aAAa,EAAE,CAAC;MAJC,CAAb;IAPuC,CAAnD;;IAeA,QAAQ3B,OAAR;MACI;MACA,KAAK,KAAL;QACI,OAAO;UACH4B,KAAK,EAAE,EAAE,GAAGf;UAAL;QADJ,CAAP;;MAGJ,KAAK,QAAL;QACI,OAAO;UACHe,KAAK,EAAE,EACH,GAAGf,gBADA;YAEHgB,UAAU,EAAE,QAFT;YAGHC,cAAc,EAAE;UAHb,CADJ;UAMHC,WAAW,EAAE,IAAAC,wBAAA,EAAgBvC,KAAhB,EAAuB;YAChCwC,QAAQ,EAAGC,CAAD,IAAOZ,YAAY,CAACrB,IAAD,CADG;YAEhCC,KAAK,EAAEiC,oBAAA,CAAaC,OAAb,CAAqBC,KAArB,CAA2B,KAA3B;UAFyB,CAAvB;QANV,CAAP;IAPR;EAmBH,CAnDM,EAmDJ,CAAC5C,KAAD,EAAQO,OAAR,EAAiBC,IAAjB,EAAuBC,KAAvB,CAnDI,CAAP;AAoDH"}
@@ -23,7 +23,7 @@ const useStyles = function () {
23
23
  const theme = (0, _styles.useTheme)();
24
24
  return {
25
25
  root: {
26
- alignItems: 'center',
26
+ alignItems: 'flex-start',
27
27
  gap: theme.spacing(8),
28
28
  justifyContent: 'space-between',
29
29
  marginBottom: theme.spacing(4),
@@ -31,7 +31,8 @@ const useStyles = function () {
31
31
  },
32
32
  title: {
33
33
  paddingBottom: theme.spacing(1.25),
34
- paddingTop: theme.spacing(1)
34
+ paddingTop: theme.spacing(1),
35
+ minWidth: 0
35
36
  },
36
37
  actionButton: {
37
38
  paddingBottom: theme.spacing(1.75),
@@ -64,8 +65,10 @@ function BottomSheetTitle(props) {
64
65
  }), actionButtonProps ? /*#__PURE__*/_react.default.createElement(_Button.default, {
65
66
  children: actionButtonProps.title,
66
67
  color: 'accent',
68
+ disabled: actionButtonProps.disabled ?? false,
67
69
  disableMinWidth: true,
68
70
  onPress: actionButtonProps.onPress,
71
+ size: 'large',
69
72
  style: styles.actionButton,
70
73
  variant: 'text'
71
74
  }) : null);
@@ -1 +1 @@
1
- {"version":3,"names":["useStyles","theme","useTheme","root","alignItems","gap","spacing","justifyContent","marginBottom","paddingHorizontal","title","paddingBottom","paddingTop","actionButton","BottomSheetTitle","props","actionButtonProps","children","style","styleProp","otherProps","styles","rootStyle","css","titleFontStyle","createFontStyle","selector","typography","header3","semiBold","color","palette","text","strong","titleStyle","onPress"],"sources":["BottomSheetTitle.tsx"],"sourcesContent":["import React from 'react';\nimport { Text } from 'react-native';\nimport type { NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport Button from '../Button/Button';\nimport Row from '../Row';\nimport { createFontStyle, css, useTheme } from '../styles';\nimport type BottomSheetTitleProps from './BottomSheetTitleProps';\n\ntype BottomSheetTitleStyles = NamedStylesStringUnion<'root' | 'title' | 'actionButton'>;\n\nconst useStyles: UseStyles<BottomSheetTitleStyles> = function (): BottomSheetTitleStyles {\n const theme = useTheme();\n\n return {\n root: {\n alignItems: 'center',\n gap: theme.spacing(8),\n justifyContent: 'space-between',\n marginBottom: theme.spacing(4),\n paddingHorizontal: theme.spacing(6),\n },\n title: {\n paddingBottom: theme.spacing(1.25),\n paddingTop: theme.spacing(1),\n },\n actionButton: {\n paddingBottom: theme.spacing(1.75),\n paddingHorizontal: 0,\n paddingTop: theme.spacing(1.25),\n },\n };\n};\n\nexport default function BottomSheetTitle(props: BottomSheetTitleProps) {\n const {\n actionButtonProps,\n children,\n style: styleProp,\n ...otherProps\n } = props;\n\n const theme = useTheme();\n\n const styles = useStyles();\n\n const rootStyle = css([\n styles.root,\n styleProp,\n ]);\n\n const titleFontStyle = createFontStyle(theme, {\n selector: (typography) => typography.header3.semiBold,\n color: theme.palette.text.strong,\n });\n\n const titleStyle = css([\n styles.title,\n titleFontStyle,\n ]);\n\n return (\n <Row\n style={rootStyle}\n {...otherProps}\n >\n <Text\n children={children}\n style={titleStyle}\n />\n\n {actionButtonProps ? (\n <Button\n children={actionButtonProps.title}\n color={'accent'}\n disableMinWidth={true}\n onPress={actionButtonProps.onPress}\n style={styles.actionButton}\n variant={'text'}\n />\n ) : null}\n </Row>\n );\n}\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;;;;;AAKA,MAAMA,SAA4C,GAAG,YAAoC;EACrF,MAAMC,KAAK,GAAG,IAAAC,gBAAA,GAAd;EAEA,OAAO;IACHC,IAAI,EAAE;MACFC,UAAU,EAAE,QADV;MAEFC,GAAG,EAAEJ,KAAK,CAACK,OAAN,CAAc,CAAd,CAFH;MAGFC,cAAc,EAAE,eAHd;MAIFC,YAAY,EAAEP,KAAK,CAACK,OAAN,CAAc,CAAd,CAJZ;MAKFG,iBAAiB,EAAER,KAAK,CAACK,OAAN,CAAc,CAAd;IALjB,CADH;IAQHI,KAAK,EAAE;MACHC,aAAa,EAAEV,KAAK,CAACK,OAAN,CAAc,IAAd,CADZ;MAEHM,UAAU,EAAEX,KAAK,CAACK,OAAN,CAAc,CAAd;IAFT,CARJ;IAYHO,YAAY,EAAE;MACVF,aAAa,EAAEV,KAAK,CAACK,OAAN,CAAc,IAAd,CADL;MAEVG,iBAAiB,EAAE,CAFT;MAGVG,UAAU,EAAEX,KAAK,CAACK,OAAN,CAAc,IAAd;IAHF;EAZX,CAAP;AAkBH,CArBD;;AAuBe,SAASQ,gBAAT,CAA0BC,KAA1B,EAAwD;EACnE,MAAM;IACFC,iBADE;IAEFC,QAFE;IAGFC,KAAK,EAAEC,SAHL;IAIF,GAAGC;EAJD,IAKFL,KALJ;EAOA,MAAMd,KAAK,GAAG,IAAAC,gBAAA,GAAd;EAEA,MAAMmB,MAAM,GAAGrB,SAAS,EAAxB;EAEA,MAAMsB,SAAS,GAAG,IAAAC,WAAA,EAAI,CAClBF,MAAM,CAAClB,IADW,EAElBgB,SAFkB,CAAJ,CAAlB;EAKA,MAAMK,cAAc,GAAG,IAAAC,uBAAA,EAAgBxB,KAAhB,EAAuB;IAC1CyB,QAAQ,EAAGC,UAAD,IAAgBA,UAAU,CAACC,OAAX,CAAmBC,QADH;IAE1CC,KAAK,EAAE7B,KAAK,CAAC8B,OAAN,CAAcC,IAAd,CAAmBC;EAFgB,CAAvB,CAAvB;EAKA,MAAMC,UAAU,GAAG,IAAAX,WAAA,EAAI,CACnBF,MAAM,CAACX,KADY,EAEnBc,cAFmB,CAAJ,CAAnB;EAKA,oBACI,6BAAC,YAAD;IACI,KAAK,EAAEF;EADX,GAEQF,UAFR,gBAII,6BAAC,iBAAD;IACI,QAAQ,EAAEH,QADd;IAEI,KAAK,EAAEiB;EAFX,EAJJ,EASKlB,iBAAiB,gBACd,6BAAC,eAAD;IACI,QAAQ,EAAEA,iBAAiB,CAACN,KADhC;IAEI,KAAK,EAAE,QAFX;IAGI,eAAe,EAAE,IAHrB;IAII,OAAO,EAAEM,iBAAiB,CAACmB,OAJ/B;IAKI,KAAK,EAAEd,MAAM,CAACR,YALlB;IAMI,OAAO,EAAE;EANb,EADc,GASd,IAlBR,CADJ;AAsBH"}
1
+ {"version":3,"names":["useStyles","theme","useTheme","root","alignItems","gap","spacing","justifyContent","marginBottom","paddingHorizontal","title","paddingBottom","paddingTop","minWidth","actionButton","BottomSheetTitle","props","actionButtonProps","children","style","styleProp","otherProps","styles","rootStyle","css","titleFontStyle","createFontStyle","selector","typography","header3","semiBold","color","palette","text","strong","titleStyle","disabled","onPress"],"sources":["BottomSheetTitle.tsx"],"sourcesContent":["import React from 'react';\nimport { Text } from 'react-native';\nimport type { NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport Button from '../Button/Button';\nimport Row from '../Row';\nimport { createFontStyle, css, useTheme } from '../styles';\nimport type BottomSheetTitleProps from './BottomSheetTitleProps';\n\ntype BottomSheetTitleStyles = NamedStylesStringUnion<'root' | 'title' | 'actionButton'>;\n\nconst useStyles: UseStyles<BottomSheetTitleStyles> = function (): BottomSheetTitleStyles {\n const theme = useTheme();\n\n return {\n root: {\n alignItems: 'flex-start',\n gap: theme.spacing(8),\n justifyContent: 'space-between',\n marginBottom: theme.spacing(4),\n paddingHorizontal: theme.spacing(6),\n },\n title: {\n paddingBottom: theme.spacing(1.25),\n paddingTop: theme.spacing(1),\n minWidth: 0,\n },\n actionButton: {\n paddingBottom: theme.spacing(1.75),\n paddingHorizontal: 0,\n paddingTop: theme.spacing(1.25),\n },\n };\n};\n\nexport default function BottomSheetTitle(props: BottomSheetTitleProps) {\n const {\n actionButtonProps,\n children,\n style: styleProp,\n ...otherProps\n } = props;\n\n const theme = useTheme();\n\n const styles = useStyles();\n\n const rootStyle = css([\n styles.root,\n styleProp,\n ]);\n\n const titleFontStyle = createFontStyle(theme, {\n selector: (typography) => typography.header3.semiBold,\n color: theme.palette.text.strong,\n });\n\n const titleStyle = css([\n styles.title,\n titleFontStyle,\n ]);\n\n return (\n <Row\n style={rootStyle}\n {...otherProps}\n >\n <Text\n children={children}\n style={titleStyle}\n />\n\n {actionButtonProps ? (\n <Button\n children={actionButtonProps.title}\n color={'accent'}\n disabled={actionButtonProps.disabled ?? false}\n disableMinWidth={true}\n onPress={actionButtonProps.onPress}\n size={'large'}\n style={styles.actionButton}\n variant={'text'}\n />\n ) : null}\n </Row>\n );\n}\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;;;;;AAKA,MAAMA,SAA4C,GAAG,YAAoC;EACrF,MAAMC,KAAK,GAAG,IAAAC,gBAAA,GAAd;EAEA,OAAO;IACHC,IAAI,EAAE;MACFC,UAAU,EAAE,YADV;MAEFC,GAAG,EAAEJ,KAAK,CAACK,OAAN,CAAc,CAAd,CAFH;MAGFC,cAAc,EAAE,eAHd;MAIFC,YAAY,EAAEP,KAAK,CAACK,OAAN,CAAc,CAAd,CAJZ;MAKFG,iBAAiB,EAAER,KAAK,CAACK,OAAN,CAAc,CAAd;IALjB,CADH;IAQHI,KAAK,EAAE;MACHC,aAAa,EAAEV,KAAK,CAACK,OAAN,CAAc,IAAd,CADZ;MAEHM,UAAU,EAAEX,KAAK,CAACK,OAAN,CAAc,CAAd,CAFT;MAGHO,QAAQ,EAAE;IAHP,CARJ;IAaHC,YAAY,EAAE;MACVH,aAAa,EAAEV,KAAK,CAACK,OAAN,CAAc,IAAd,CADL;MAEVG,iBAAiB,EAAE,CAFT;MAGVG,UAAU,EAAEX,KAAK,CAACK,OAAN,CAAc,IAAd;IAHF;EAbX,CAAP;AAmBH,CAtBD;;AAwBe,SAASS,gBAAT,CAA0BC,KAA1B,EAAwD;EACnE,MAAM;IACFC,iBADE;IAEFC,QAFE;IAGFC,KAAK,EAAEC,SAHL;IAIF,GAAGC;EAJD,IAKFL,KALJ;EAOA,MAAMf,KAAK,GAAG,IAAAC,gBAAA,GAAd;EAEA,MAAMoB,MAAM,GAAGtB,SAAS,EAAxB;EAEA,MAAMuB,SAAS,GAAG,IAAAC,WAAA,EAAI,CAClBF,MAAM,CAACnB,IADW,EAElBiB,SAFkB,CAAJ,CAAlB;EAKA,MAAMK,cAAc,GAAG,IAAAC,uBAAA,EAAgBzB,KAAhB,EAAuB;IAC1C0B,QAAQ,EAAGC,UAAD,IAAgBA,UAAU,CAACC,OAAX,CAAmBC,QADH;IAE1CC,KAAK,EAAE9B,KAAK,CAAC+B,OAAN,CAAcC,IAAd,CAAmBC;EAFgB,CAAvB,CAAvB;EAKA,MAAMC,UAAU,GAAG,IAAAX,WAAA,EAAI,CACnBF,MAAM,CAACZ,KADY,EAEnBe,cAFmB,CAAJ,CAAnB;EAKA,oBACI,6BAAC,YAAD;IACI,KAAK,EAAEF;EADX,GAEQF,UAFR,gBAII,6BAAC,iBAAD;IACI,QAAQ,EAAEH,QADd;IAEI,KAAK,EAAEiB;EAFX,EAJJ,EASKlB,iBAAiB,gBACd,6BAAC,eAAD;IACI,QAAQ,EAAEA,iBAAiB,CAACP,KADhC;IAEI,KAAK,EAAE,QAFX;IAGI,QAAQ,EAAEO,iBAAiB,CAACmB,QAAlB,IAA8B,KAH5C;IAII,eAAe,EAAE,IAJrB;IAKI,OAAO,EAAEnB,iBAAiB,CAACoB,OAL/B;IAMI,IAAI,EAAE,OANV;IAOI,KAAK,EAAEf,MAAM,CAACR,YAPlB;IAQI,OAAO,EAAE;EARb,EADc,GAWd,IApBR,CADJ;AAwBH"}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["BottomSheetTitleProps.ts"],"sourcesContent":["import type { OverridableComponentProps } from '../types';\nimport type { RowProps } from '../Row';\n\ntype ActionButtonProps = {\n title: string;\n onPress: () => void;\n};\n\nexport default interface BottomSheetTitleProps extends OverridableComponentProps<RowProps, {\n children: string;\n actionButtonProps?: ActionButtonProps;\n}> {}\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["BottomSheetTitleProps.ts"],"sourcesContent":["import type { OverridableComponentProps } from '../types';\nimport type { RowProps } from '../Row';\n\ntype ActionButtonProps = {\n disabled?: boolean | undefined;\n title: string;\n onPress: () => void;\n};\n\nexport default interface BottomSheetTitleProps extends OverridableComponentProps<RowProps, {\n children: string;\n actionButtonProps?: ActionButtonProps;\n}> {}\n"],"mappings":""}
@@ -32,30 +32,34 @@ const useStyles = function () {
32
32
  alignItems: 'center',
33
33
  borderRadius: theme.shape.radius.sm,
34
34
  flexDirection: 'row',
35
- justifyContent: 'center'
35
+ justifyContent: 'center',
36
+ minHeight: 32
36
37
  },
37
38
  fullWidth: {
38
39
  width: '100%'
39
40
  },
40
41
  large: {
41
- gap: theme.spacing(2),
42
+ gap: 8,
42
43
  minWidth: 104,
43
- paddingHorizontal: theme.spacing(6),
44
- paddingVertical: theme.spacing(3.5)
44
+ paddingHorizontal: 24,
45
+ paddingVertical: 14
45
46
  },
46
47
  medium: {
47
- gap: theme.spacing(1.5),
48
+ gap: 6,
48
49
  minWidth: 88,
49
- paddingHorizontal: theme.spacing(6),
50
- paddingVertical: theme.spacing(2.75)
50
+ paddingHorizontal: 16,
51
+ paddingVertical: 11
51
52
  },
52
53
  small: {
53
54
  minWidth: 64,
54
- paddingHorizontal: theme.spacing(6),
55
- paddingVertical: theme.spacing(2)
55
+ paddingHorizontal: 10,
56
+ paddingVertical: 8
56
57
  },
57
58
  loadingSpinner: {
58
59
  position: 'absolute'
60
+ },
61
+ iconContainer: {
62
+ paddingTop: 1
59
63
  }
60
64
  };
61
65
  };
@@ -95,6 +99,7 @@ function Button(props) {
95
99
  color: colorProp = 'primary',
96
100
  disabled: disabledProp = false,
97
101
  disableMinWidth = false,
102
+ disablePadding = false,
98
103
  endIcon: endIconProp,
99
104
  fullWidth = false,
100
105
  href,
@@ -120,10 +125,19 @@ function Button(props) {
120
125
  fill: iconColor,
121
126
  opacity: isLoading ? 0 : 1
122
127
  };
123
- const startIcon = (0, _utils.cloneElementSafely)(startIconProp, iconProps);
124
- const endIcon = (0, _utils.cloneElementSafely)(endIconProp, iconProps);
125
- const buttonBaseStyle = (0, _styles2.css)([styles.root, containerStyle, styles[size], fullWidth ? styles.fullWidth : undefined, disableMinWidth ? {
128
+ const startIcon = startIconProp ? /*#__PURE__*/_react.default.createElement(_reactNative.View, {
129
+ style: styles.iconContainer
130
+ }, (0, _utils.cloneElementSafely)(startIconProp, iconProps)) : null;
131
+ const endIcon = endIconProp ? /*#__PURE__*/_react.default.createElement(_reactNative.View, {
132
+ style: styles.iconContainer
133
+ }, (0, _utils.cloneElementSafely)(endIconProp, iconProps)) : null;
134
+ const buttonBaseStyle = (0, _styles2.css)([styles.root, containerStyle, styles[size], (variant === 'capsuleSolid' || variant === 'capsuleOutlined') && size === 'small' ? {
135
+ paddingHorizontal: 12
136
+ } : undefined, fullWidth ? styles.fullWidth : undefined, disableMinWidth ? {
126
137
  minWidth: 0
138
+ } : undefined, disablePadding ? {
139
+ paddingHorizontal: 0,
140
+ paddingVertical: 0
127
141
  } : undefined, styleProp]);
128
142
  const fontStyle = (0, _styles2.createFontStyle)(theme, {
129
143
  selector: _ => fontStyleMap[size],
@@ -1 +1 @@
1
- {"version":3,"names":["useStyles","theme","useTheme","root","alignItems","borderRadius","shape","radius","sm","flexDirection","justifyContent","fullWidth","width","large","gap","spacing","minWidth","paddingHorizontal","paddingVertical","medium","small","loadingSpinner","position","fontStyleMap","typographyOf","fontSize","lineHeight","fontFamily","letterSpacing","getLoadingSpinnerColor","variant","color","Button","props","children","colorProp","disabled","disabledProp","disableMinWidth","endIcon","endIconProp","href","isLoading","onPress","pressEffect","size","startIcon","startIconProp","style","styleProp","otherProps","styles","container","containerStyle","iconColor","labelColor","useVariantStyleMap","iconProps","fill","opacity","cloneElementSafely","buttonBaseStyle","css","undefined","fontStyle","createFontStyle","selector","_","textStyle","textAlign","modifiedPressEffect","handlePress","Linking","canOpenURL","openURL","loadingSpinnerColor"],"sources":["Button.tsx"],"sourcesContent":["import React from 'react';\nimport { Linking, Text } from 'react-native';\nimport type { FontStyle, NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport { typographyOf } from '@fountain-ui/styles';\nimport ButtonBase from '../ButtonBase/ButtonBase';\nimport { LoadingSpinner } from '../internal/icons';\nimport { createFontStyle, css, useTheme } from '../styles';\nimport { cloneElementSafely } from '../utils';\nimport type ButtonProps from './ButtonProps';\nimport type { ButtonColor, ButtonSize, ButtonVariant } from './ButtonProps';\nimport useVariantStyleMap from './useVariantStyleMap';\n\ntype ButtonStyles = NamedStylesStringUnion<'root' | 'fullWidth' | 'large' | 'medium' | 'small' | 'loadingSpinner'>;\n\nconst useStyles: UseStyles<ButtonStyles> = function (): ButtonStyles {\n const theme = useTheme();\n\n return {\n root: {\n alignItems: 'center',\n borderRadius: theme.shape.radius.sm,\n flexDirection: 'row',\n justifyContent: 'center',\n },\n fullWidth: {\n width: '100%',\n },\n large: {\n gap: theme.spacing(2),\n minWidth: 104,\n paddingHorizontal: theme.spacing(6),\n paddingVertical: theme.spacing(3.5),\n },\n medium: {\n gap: theme.spacing(1.5),\n minWidth: 88,\n paddingHorizontal: theme.spacing(6),\n paddingVertical: theme.spacing(2.75),\n },\n small: {\n minWidth: 64,\n paddingHorizontal: theme.spacing(6),\n paddingVertical: theme.spacing(2),\n },\n loadingSpinner: {\n position: 'absolute',\n },\n };\n};\n\nconst fontStyleMap: Record<ButtonSize, FontStyle> = {\n large: typographyOf({\n fontSize: 16,\n lineHeight: 20,\n fontFamily: 'LexendDeca-SemiBold',\n letterSpacing: -0.32,\n }),\n medium: typographyOf({\n fontSize: 15,\n lineHeight: 19.5,\n fontFamily: 'LexendDeca-SemiBold',\n letterSpacing: -0.3,\n }),\n small: typographyOf({\n fontSize: 13,\n lineHeight: 16.9,\n fontFamily: 'LexendDeca-SemiBold',\n letterSpacing: -0.26,\n }),\n};\n\nfunction getLoadingSpinnerColor(variant: ButtonVariant, color: ButtonColor) {\n if (variant === 'solid' || (variant === 'capsuleSolid' && color !== 'secondary')) {\n return 'white';\n }\n return 'gray';\n}\n\nexport default function Button(props: ButtonProps) {\n const {\n children,\n color: colorProp = 'primary' as ButtonColor,\n disabled: disabledProp = false,\n disableMinWidth = false,\n endIcon: endIconProp,\n fullWidth = false,\n href,\n isLoading = false,\n onPress,\n pressEffect,\n size = 'medium' as ButtonSize,\n startIcon: startIconProp,\n style: styleProp,\n variant = 'solid' as ButtonVariant,\n ...otherProps\n } = props;\n\n const theme = useTheme();\n\n const styles = useStyles();\n\n const disabled = disabledProp || isLoading;\n\n const color = disabledProp ? 'disabled' : colorProp;\n const {\n container: containerStyle,\n iconColor,\n labelColor,\n } = useVariantStyleMap(variant, color);\n\n const iconProps = {\n fill: iconColor,\n opacity: isLoading ? 0 : 1,\n };\n\n const startIcon = cloneElementSafely(startIconProp, iconProps);\n const endIcon = cloneElementSafely(endIconProp, iconProps);\n\n const buttonBaseStyle = css([\n styles.root,\n containerStyle,\n styles[size],\n fullWidth ? styles.fullWidth : undefined,\n disableMinWidth ? { minWidth: 0 } : undefined,\n styleProp,\n ]);\n\n const fontStyle = createFontStyle(theme, {\n selector: (_) => fontStyleMap[size],\n color: labelColor,\n });\n\n const textStyle = css([\n fontStyle,\n {\n opacity: isLoading ? 0 : 1,\n textAlign: 'center',\n },\n ]);\n\n const modifiedPressEffect = variant !== 'text' && !pressEffect\n ? 'scale'\n : pressEffect;\n\n const handlePress = async () => {\n if (disabled) {\n return;\n }\n if (onPress) {\n onPress();\n return;\n }\n if (href) {\n if (await Linking.canOpenURL(href)) {\n await Linking.openURL(href);\n }\n }\n };\n\n const loadingSpinnerColor = getLoadingSpinnerColor(variant, color);\n\n return (\n <ButtonBase\n disabled={disabled}\n onPress={handlePress}\n style={buttonBaseStyle}\n pressEffect={modifiedPressEffect}\n {...otherProps}\n >\n {startIcon}\n\n <Text style={textStyle}>\n {children}\n </Text>\n\n {endIcon}\n\n {isLoading ? (\n <LoadingSpinner\n color={loadingSpinnerColor}\n size={size}\n style={styles.loadingSpinner}\n />\n ) : null}\n </ButtonBase>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["useStyles","theme","useTheme","root","alignItems","borderRadius","shape","radius","sm","flexDirection","justifyContent","minHeight","fullWidth","width","large","gap","minWidth","paddingHorizontal","paddingVertical","medium","small","loadingSpinner","position","iconContainer","paddingTop","fontStyleMap","typographyOf","fontSize","lineHeight","fontFamily","letterSpacing","getLoadingSpinnerColor","variant","color","Button","props","children","colorProp","disabled","disabledProp","disableMinWidth","disablePadding","endIcon","endIconProp","href","isLoading","onPress","pressEffect","size","startIcon","startIconProp","style","styleProp","otherProps","styles","container","containerStyle","iconColor","labelColor","useVariantStyleMap","iconProps","fill","opacity","cloneElementSafely","buttonBaseStyle","css","undefined","fontStyle","createFontStyle","selector","_","textStyle","textAlign","modifiedPressEffect","handlePress","Linking","canOpenURL","openURL","loadingSpinnerColor"],"sources":["Button.tsx"],"sourcesContent":["import React from 'react';\nimport { Linking, Text, View } from 'react-native';\nimport type { FontStyle, NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport { typographyOf } from '@fountain-ui/styles';\nimport ButtonBase from '../ButtonBase/ButtonBase';\nimport { LoadingSpinner } from '../internal/icons';\nimport { createFontStyle, css, useTheme } from '../styles';\nimport { cloneElementSafely } from '../utils';\nimport type ButtonProps from './ButtonProps';\nimport type { ButtonColor, ButtonSize, ButtonVariant } from './ButtonProps';\nimport useVariantStyleMap from './useVariantStyleMap';\n\ntype ButtonStyles = NamedStylesStringUnion<'root' | 'fullWidth' | 'large' | 'medium' | 'small' | 'loadingSpinner' | 'iconContainer'>;\n\nconst useStyles: UseStyles<ButtonStyles> = function (): ButtonStyles {\n const theme = useTheme();\n\n return {\n root: {\n alignItems: 'center',\n borderRadius: theme.shape.radius.sm,\n flexDirection: 'row',\n justifyContent: 'center',\n minHeight: 32,\n },\n fullWidth: {\n width: '100%',\n },\n large: {\n gap: 8,\n minWidth: 104,\n paddingHorizontal: 24,\n paddingVertical: 14,\n },\n medium: {\n gap: 6,\n minWidth: 88,\n paddingHorizontal: 16,\n paddingVertical: 11,\n },\n small: {\n minWidth: 64,\n paddingHorizontal: 10,\n paddingVertical: 8,\n },\n loadingSpinner: {\n position: 'absolute',\n },\n iconContainer: {\n paddingTop: 1,\n },\n };\n};\n\nconst fontStyleMap: Record<ButtonSize, FontStyle> = {\n large: typographyOf({\n fontSize: 16,\n lineHeight: 20,\n fontFamily: 'LexendDeca-SemiBold',\n letterSpacing: -0.32,\n }),\n medium: typographyOf({\n fontSize: 15,\n lineHeight: 19.5,\n fontFamily: 'LexendDeca-SemiBold',\n letterSpacing: -0.3,\n }),\n small: typographyOf({\n fontSize: 13,\n lineHeight: 16.9,\n fontFamily: 'LexendDeca-SemiBold',\n letterSpacing: -0.26,\n }),\n};\n\nfunction getLoadingSpinnerColor(variant: ButtonVariant, color: ButtonColor) {\n if (variant === 'solid' || (variant === 'capsuleSolid' && color !== 'secondary')) {\n return 'white';\n }\n return 'gray';\n}\n\nexport default function Button(props: ButtonProps) {\n const {\n children,\n color: colorProp = 'primary' as ButtonColor,\n disabled: disabledProp = false,\n disableMinWidth = false,\n disablePadding = false,\n endIcon: endIconProp,\n fullWidth = false,\n href,\n isLoading = false,\n onPress,\n pressEffect,\n size = 'medium' as ButtonSize,\n startIcon: startIconProp,\n style: styleProp,\n variant = 'solid' as ButtonVariant,\n ...otherProps\n } = props;\n\n const theme = useTheme();\n\n const styles = useStyles();\n\n const disabled = disabledProp || isLoading;\n\n const color = disabledProp ? 'disabled' : colorProp;\n const {\n container: containerStyle,\n iconColor,\n labelColor,\n } = useVariantStyleMap(variant, color);\n\n const iconProps = {\n fill: iconColor,\n opacity: isLoading ? 0 : 1,\n };\n\n const startIcon = startIconProp ? (\n <View style={styles.iconContainer}>\n {cloneElementSafely(startIconProp, iconProps)}\n </View>\n ) : null;\n\n const endIcon = endIconProp ? (\n <View style={styles.iconContainer}>\n {cloneElementSafely(endIconProp, iconProps)}\n </View>\n ) : null;\n\n const buttonBaseStyle = css([\n styles.root,\n containerStyle,\n styles[size],\n (variant === 'capsuleSolid' || variant === 'capsuleOutlined') && size === 'small' ? { paddingHorizontal: 12 } : undefined,\n fullWidth ? styles.fullWidth : undefined,\n disableMinWidth ? { minWidth: 0 } : undefined,\n disablePadding ? { paddingHorizontal: 0, paddingVertical: 0 } : undefined,\n styleProp,\n ]);\n\n const fontStyle = createFontStyle(theme, {\n selector: (_) => fontStyleMap[size],\n color: labelColor,\n });\n\n const textStyle = css([\n fontStyle,\n {\n opacity: isLoading ? 0 : 1,\n textAlign: 'center',\n },\n ]);\n\n const modifiedPressEffect = variant !== 'text' && !pressEffect\n ? 'scale'\n : pressEffect;\n\n const handlePress = async () => {\n if (disabled) {\n return;\n }\n if (onPress) {\n onPress();\n return;\n }\n if (href) {\n if (await Linking.canOpenURL(href)) {\n await Linking.openURL(href);\n }\n }\n };\n\n const loadingSpinnerColor = getLoadingSpinnerColor(variant, color);\n\n return (\n <ButtonBase\n disabled={disabled}\n onPress={handlePress}\n style={buttonBaseStyle}\n pressEffect={modifiedPressEffect}\n {...otherProps}\n >\n {startIcon}\n\n <Text style={textStyle}>\n {children}\n </Text>\n\n {endIcon}\n\n {isLoading ? (\n <LoadingSpinner\n color={loadingSpinnerColor}\n size={size}\n style={styles.loadingSpinner}\n />\n ) : null}\n </ButtonBase>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"names":["buttonColors","buttonSizes","buttonVariants"],"sources":["ButtonProps.ts"],"sourcesContent":["import React from 'react';\nimport type { ButtonBaseProps } from '../ButtonBase';\nimport type { OverridableComponentProps } from '../types';\n\nexport const buttonColors = [\n 'accent',\n 'primary',\n 'danger',\n 'disabled',\n 'secondary',\n 'accentAlt',\n] as const;\nexport type ButtonColor = typeof buttonColors[number];\n\nexport const buttonSizes = [\n 'small',\n 'medium',\n 'large',\n] as const;\nexport type ButtonSize = typeof buttonSizes[number];\n\nexport const buttonVariants = [\n 'solid',\n 'outlined',\n 'text',\n 'capsuleSolid',\n 'capsuleOutlined',\n] as const;\nexport type ButtonVariant = typeof buttonVariants[number];\n\nexport default interface ButtonProps extends OverridableComponentProps<ButtonBaseProps, {\n /**\n * The content of the button.\n */\n children: string;\n\n /**\n * The color of the component. It supports those theme colors that make sense for this component.\n * @default 'primary'\n */\n color?: ButtonColor;\n\n /**\n * Determines whether minWidth should be applied.\n * @default false\n */\n disableMinWidth?: boolean;\n\n /**\n * Element placed after the children.\n */\n endIcon?: React.ReactElement;\n\n /**\n * If `true`, the button will take up the full width of its container.\n * @default false\n */\n fullWidth?: boolean;\n\n /**\n * The URL to link to when the button is clicked.\n */\n href?: string;\n\n /**\n * Determines whether to show the loading status or not.\n * @default false\n */\n isLoading?: boolean;\n\n /**\n * The size of the button.\n * @default 'medium'\n */\n size?: ButtonSize;\n\n /**\n * Element placed before the children.\n */\n startIcon?: React.ReactElement;\n\n /**\n * The variant to use.\n * @default 'solid'\n */\n variant?: ButtonVariant;\n}> {}\n"],"mappings":";;;;;;AAIO,MAAMA,YAAY,GAAG,CACxB,QADwB,EAExB,SAFwB,EAGxB,QAHwB,EAIxB,UAJwB,EAKxB,WALwB,EAMxB,WANwB,CAArB;;AAUA,MAAMC,WAAW,GAAG,CACvB,OADuB,EAEvB,QAFuB,EAGvB,OAHuB,CAApB;;AAOA,MAAMC,cAAc,GAAG,CAC1B,OAD0B,EAE1B,UAF0B,EAG1B,MAH0B,EAI1B,cAJ0B,EAK1B,iBAL0B,CAAvB"}
1
+ {"version":3,"names":["buttonColors","buttonSizes","buttonVariants"],"sources":["ButtonProps.ts"],"sourcesContent":["import React from 'react';\nimport type { ButtonBaseProps } from '../ButtonBase';\nimport type { OverridableComponentProps } from '../types';\n\nexport const buttonColors = [\n 'accent',\n 'primary',\n 'danger',\n 'disabled',\n 'secondary',\n 'accentAlt',\n] as const;\nexport type ButtonColor = typeof buttonColors[number];\n\nexport const buttonSizes = [\n 'small',\n 'medium',\n 'large',\n] as const;\nexport type ButtonSize = typeof buttonSizes[number];\n\nexport const buttonVariants = [\n 'solid',\n 'outlined',\n 'text',\n 'capsuleSolid',\n 'capsuleOutlined',\n] as const;\nexport type ButtonVariant = typeof buttonVariants[number];\n\nexport default interface ButtonProps extends OverridableComponentProps<ButtonBaseProps, {\n /**\n * The content of the button.\n */\n children: string;\n\n /**\n * The color of the component. It supports those theme colors that make sense for this component.\n * @default 'primary'\n */\n color?: ButtonColor;\n\n /**\n * Determines whether minWidth should be applied.\n * @default false\n */\n disableMinWidth?: boolean;\n\n /**\n * Determines whether padding should be applied.\n * @default false\n */\n disablePadding?: boolean;\n\n /**\n * Element placed after the children.\n */\n endIcon?: React.ReactElement;\n\n /**\n * If `true`, the button will take up the full width of its container.\n * @default false\n */\n fullWidth?: boolean;\n\n /**\n * The URL to link to when the button is clicked.\n */\n href?: string;\n\n /**\n * Determines whether to show the loading status or not.\n * @default false\n */\n isLoading?: boolean;\n\n /**\n * The size of the button.\n * @default 'medium'\n */\n size?: ButtonSize;\n\n /**\n * Element placed before the children.\n */\n startIcon?: React.ReactElement;\n\n /**\n * The variant to use.\n * @default 'solid'\n */\n variant?: ButtonVariant;\n}> {}\n"],"mappings":";;;;;;AAIO,MAAMA,YAAY,GAAG,CACxB,QADwB,EAExB,SAFwB,EAGxB,QAHwB,EAIxB,UAJwB,EAKxB,WALwB,EAMxB,WANwB,CAArB;;AAUA,MAAMC,WAAW,GAAG,CACvB,OADuB,EAEvB,QAFuB,EAGvB,OAHuB,CAApB;;AAOA,MAAMC,cAAc,GAAG,CAC1B,OAD0B,EAE1B,UAF0B,EAG1B,MAH0B,EAI1B,cAJ0B,EAK1B,iBAL0B,CAAvB"}
@@ -14,6 +14,8 @@ var _styles2 = require("../styles");
14
14
  function useVariantStyleMap(variant, color) {
15
15
  const theme = (0, _styles2.useTheme)();
16
16
  return (0, _react.useMemo)(() => {
17
+ var _variantStyleMap$vari;
18
+
17
19
  const {
18
20
  palette
19
21
  } = theme;
@@ -164,7 +166,7 @@ function useVariantStyleMap(variant, color) {
164
166
  }
165
167
  };
166
168
 
167
- if (variantStyleMap[variant][color]) {
169
+ if ((_variantStyleMap$vari = variantStyleMap[variant]) !== null && _variantStyleMap$vari !== void 0 && _variantStyleMap$vari[color]) {
168
170
  return variantStyleMap[variant][color];
169
171
  }
170
172