@fountain-ui/core 3.0.0-alpha.11 → 3.0.0-alpha.12

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 (49) hide show
  1. package/build/commonjs/Badge/Badge.js +4 -3
  2. package/build/commonjs/Badge/Badge.js.map +1 -1
  3. package/build/commonjs/Badge/BadgeProps.js.map +1 -1
  4. package/build/commonjs/Dialog/useDialogSectionStyle.js +3 -1
  5. package/build/commonjs/Dialog/useDialogSectionStyle.js.map +1 -1
  6. package/build/commonjs/DialogTitle/DialogLargeTitle.js +80 -0
  7. package/build/commonjs/DialogTitle/DialogLargeTitle.js.map +1 -0
  8. package/build/commonjs/DialogTitle/DialogTitle.js +2 -5
  9. package/build/commonjs/DialogTitle/DialogTitle.js.map +1 -1
  10. package/build/commonjs/ListItem/ListItem.js +3 -13
  11. package/build/commonjs/ListItem/ListItem.js.map +1 -1
  12. package/build/commonjs/Tab/Tab.js +11 -3
  13. package/build/commonjs/Tab/Tab.js.map +1 -1
  14. package/build/module/Badge/Badge.js +4 -3
  15. package/build/module/Badge/Badge.js.map +1 -1
  16. package/build/module/Badge/BadgeProps.js.map +1 -1
  17. package/build/module/Dialog/useDialogSectionStyle.js +3 -1
  18. package/build/module/Dialog/useDialogSectionStyle.js.map +1 -1
  19. package/build/module/DialogTitle/DialogLargeTitle.js +65 -0
  20. package/build/module/DialogTitle/DialogLargeTitle.js.map +1 -0
  21. package/build/module/DialogTitle/DialogTitle.js +2 -4
  22. package/build/module/DialogTitle/DialogTitle.js.map +1 -1
  23. package/build/module/ListItem/ListItem.js +3 -13
  24. package/build/module/ListItem/ListItem.js.map +1 -1
  25. package/build/module/Tab/Tab.js +11 -3
  26. package/build/module/Tab/Tab.js.map +1 -1
  27. package/build/typescript/Badge/BadgeProps.d.ts +10 -5
  28. package/build/typescript/DialogTitle/DialogLargeTitle.d.ts +9 -0
  29. package/build/typescript/DialogTitle/DialogTitle.d.ts +2 -4
  30. package/package.json +3 -3
  31. package/src/Badge/Badge.tsx +4 -3
  32. package/src/Badge/BadgeProps.ts +12 -6
  33. package/src/Dialog/useDialogSectionStyle.ts +3 -1
  34. package/src/DialogTitle/DialogLargeTitle.tsx +95 -0
  35. package/src/DialogTitle/DialogTitle.tsx +2 -5
  36. package/src/ListItem/ListItem.tsx +3 -13
  37. package/src/Tab/Tab.tsx +20 -6
  38. package/build/commonjs/DialogTitle/BackButton.js +0 -47
  39. package/build/commonjs/DialogTitle/BackButton.js.map +0 -1
  40. package/build/commonjs/DialogTitle/CloseButton.js +0 -45
  41. package/build/commonjs/DialogTitle/CloseButton.js.map +0 -1
  42. package/build/module/DialogTitle/BackButton.js +0 -32
  43. package/build/module/DialogTitle/BackButton.js.map +0 -1
  44. package/build/module/DialogTitle/CloseButton.js +0 -30
  45. package/build/module/DialogTitle/CloseButton.js.map +0 -1
  46. package/build/typescript/DialogTitle/BackButton.d.ts +0 -6
  47. package/build/typescript/DialogTitle/CloseButton.d.ts +0 -6
  48. package/src/DialogTitle/BackButton.tsx +0 -44
  49. package/src/DialogTitle/CloseButton.tsx +0 -42
@@ -1 +1 @@
1
- {"version":3,"names":["React","Platform","Text","View","typographyOf","ButtonBase","Row","createFontStyle","css","useTheme","useStyles","theme","content","gap","spacing","paddingVertical","paddingHorizontal","width","description","paddingRight","divider","borderBottomColor","palette","border","weak","borderBottomWidth","dividerWrapper","ListItem","props","alignItems","button","children","disabled","onPress","style","otherProps","styles","rootComponentProps","accessibilityRole","OS","undefined","contentWrapperStyle","descriptionFontStyle","selector","_","fontSize","lineHeight","fontFamily","letterSpacing","color","text","base"],"sources":["ListItem.tsx"],"sourcesContent":["import React from 'react';\nimport type { FlexStyle } from 'react-native';\nimport { Platform, Text, View } from 'react-native';\nimport type { NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport { typographyOf } from '@fountain-ui/styles';\nimport ButtonBase from '../ButtonBase';\nimport Row from '../Row';\nimport { createFontStyle, css, useTheme } from '../styles';\nimport type ListItemProps from './ListItemProps';\n\ntype ListItemStyles = NamedStylesStringUnion<'content' | 'description' | 'divider' | 'dividerWrapper'>;\n\nconst useStyles: UseStyles<ListItemStyles> = function (): ListItemStyles {\n const theme = useTheme();\n\n return {\n content: {\n gap: theme.spacing(2),\n paddingVertical: theme.spacing(3.75),\n paddingHorizontal: theme.spacing(4),\n width: '100%',\n },\n description: {\n paddingRight: theme.spacing(20),\n },\n divider: {\n borderBottomColor: theme.palette.border.weak,\n borderBottomWidth: 0.5,\n },\n dividerWrapper: {\n paddingHorizontal: theme.spacing(4),\n },\n };\n};\n\nexport default function ListItem(props: ListItemProps) {\n const {\n alignItems = 'center' as FlexStyle['alignItems'],\n button = false,\n children,\n description,\n disabled = false,\n onPress,\n style,\n ...otherProps\n } = props;\n\n const theme = useTheme();\n\n const styles = useStyles();\n\n const rootComponentProps = {\n accessibilityRole: Platform.OS === 'web' ? 'listitem' : undefined,\n ...otherProps,\n };\n\n const contentWrapperStyle = css([\n styles.content,\n style,\n ]);\n\n const descriptionFontStyle = createFontStyle(theme, {\n selector: (_) => typographyOf({\n fontSize: 14,\n lineHeight: 19.6,\n fontFamily: 'PretendardStd-Regular',\n letterSpacing: 0,\n }),\n color: theme.palette.text.base,\n });\n\n const content = (\n <React.Fragment>\n <Row alignItems={alignItems}>\n {children}\n </Row>\n\n {description ? (\n <Text style={css([\n styles.description,\n descriptionFontStyle,\n ])}>\n {description}\n </Text>\n ) : null}\n </React.Fragment>\n );\n\n return (\n // @ts-ignore\n <View {...rootComponentProps}>\n {button ? (\n <ButtonBase\n disabled={disabled}\n onPress={onPress}\n style={contentWrapperStyle}\n >\n {content}\n </ButtonBase>\n ) : (\n <View style={contentWrapperStyle}>\n {content}\n </View>\n )}\n\n <View style={styles.dividerWrapper}>\n <View style={styles.divider}/>\n </View>\n </View>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","Platform","Text","View","typographyOf","ButtonBase","Row","createFontStyle","css","useTheme","useStyles","theme","content","borderBottomColor","palette","border","weak","borderBottomWidth","gap","spacing","paddingVertical","width","description","paddingRight","ListItem","props","alignItems","button","children","disabled","onPress","style","otherProps","styles","rootComponentProps","accessibilityRole","OS","undefined","contentWrapperStyle","descriptionFontStyle","selector","_","fontSize","lineHeight","fontFamily","letterSpacing","color","text","base"],"sources":["ListItem.tsx"],"sourcesContent":["import React from 'react';\nimport type { FlexStyle } from 'react-native';\nimport { Platform, Text, View } from 'react-native';\nimport type { NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';\nimport { typographyOf } from '@fountain-ui/styles';\nimport ButtonBase from '../ButtonBase';\nimport Row from '../Row';\nimport { createFontStyle, css, useTheme } from '../styles';\nimport type ListItemProps from './ListItemProps';\n\ntype ListItemStyles = NamedStylesStringUnion<'content' | 'description'>;\n\nconst useStyles: UseStyles<ListItemStyles> = function (): ListItemStyles {\n const theme = useTheme();\n\n return {\n content: {\n borderBottomColor: theme.palette.border.weak,\n borderBottomWidth: 0.5,\n gap: theme.spacing(2),\n paddingVertical: theme.spacing(3.75),\n width: '100%',\n },\n description: {\n paddingRight: theme.spacing(20),\n },\n };\n};\n\nexport default function ListItem(props: ListItemProps) {\n const {\n alignItems = 'center' as FlexStyle['alignItems'],\n button = false,\n children,\n description,\n disabled = false,\n onPress,\n style,\n ...otherProps\n } = props;\n\n const theme = useTheme();\n\n const styles = useStyles();\n\n const rootComponentProps = {\n accessibilityRole: Platform.OS === 'web' ? 'listitem' : undefined,\n ...otherProps,\n };\n\n const contentWrapperStyle = css([\n styles.content,\n style,\n ]);\n\n const descriptionFontStyle = createFontStyle(theme, {\n selector: (_) => typographyOf({\n fontSize: 14,\n lineHeight: 19.6,\n fontFamily: 'PretendardStd-Regular',\n letterSpacing: 0,\n }),\n color: theme.palette.text.base,\n });\n\n const content = (\n <React.Fragment>\n <Row alignItems={alignItems}>\n {children}\n </Row>\n\n {description ? (\n <Text style={css([\n styles.description,\n descriptionFontStyle,\n ])}>\n {description}\n </Text>\n ) : null}\n </React.Fragment>\n );\n\n return (\n // @ts-ignore\n <View {...rootComponentProps}>\n {button ? (\n <ButtonBase\n disabled={disabled}\n onPress={onPress}\n style={contentWrapperStyle}\n >\n {content}\n </ButtonBase>\n ) : (\n <View style={contentWrapperStyle}>\n {content}\n </View>\n )}\n </View>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,SAASC,QAAT,EAAmBC,IAAnB,EAAyBC,IAAzB,QAAqC,cAArC;AAEA,SAASC,YAAT,QAA6B,qBAA7B;AACA,OAAOC,UAAP,MAAuB,eAAvB;AACA,OAAOC,GAAP,MAAgB,QAAhB;AACA,SAASC,eAAT,EAA0BC,GAA1B,EAA+BC,QAA/B,QAA+C,WAA/C;;AAKA,MAAMC,SAAoC,GAAG,YAA4B;EACrE,MAAMC,KAAK,GAAGF,QAAQ,EAAtB;EAEA,OAAO;IACHG,OAAO,EAAE;MACLC,iBAAiB,EAAEF,KAAK,CAACG,OAAN,CAAcC,MAAd,CAAqBC,IADnC;MAELC,iBAAiB,EAAE,GAFd;MAGLC,GAAG,EAAEP,KAAK,CAACQ,OAAN,CAAc,CAAd,CAHA;MAILC,eAAe,EAAET,KAAK,CAACQ,OAAN,CAAc,IAAd,CAJZ;MAKLE,KAAK,EAAE;IALF,CADN;IAQHC,WAAW,EAAE;MACTC,YAAY,EAAEZ,KAAK,CAACQ,OAAN,CAAc,EAAd;IADL;EARV,CAAP;AAYH,CAfD;;AAiBA,eAAe,SAASK,QAAT,CAAkBC,KAAlB,EAAwC;EACnD,MAAM;IACFC,UAAU,GAAG,QADX;IAEFC,MAAM,GAAG,KAFP;IAGFC,QAHE;IAIFN,WAJE;IAKFO,QAAQ,GAAG,KALT;IAMFC,OANE;IAOFC,KAPE;IAQF,GAAGC;EARD,IASFP,KATJ;EAWA,MAAMd,KAAK,GAAGF,QAAQ,EAAtB;EAEA,MAAMwB,MAAM,GAAGvB,SAAS,EAAxB;EAEA,MAAMwB,kBAAkB,GAAG;IACvBC,iBAAiB,EAAElC,QAAQ,CAACmC,EAAT,KAAgB,KAAhB,GAAwB,UAAxB,GAAqCC,SADjC;IAEvB,GAAGL;EAFoB,CAA3B;EAKA,MAAMM,mBAAmB,GAAG9B,GAAG,CAAC,CAC5ByB,MAAM,CAACrB,OADqB,EAE5BmB,KAF4B,CAAD,CAA/B;EAKA,MAAMQ,oBAAoB,GAAGhC,eAAe,CAACI,KAAD,EAAQ;IAChD6B,QAAQ,EAAGC,CAAD,IAAOrC,YAAY,CAAC;MAC1BsC,QAAQ,EAAE,EADgB;MAE1BC,UAAU,EAAE,IAFc;MAG1BC,UAAU,EAAE,uBAHc;MAI1BC,aAAa,EAAE;IAJW,CAAD,CADmB;IAOhDC,KAAK,EAAEnC,KAAK,CAACG,OAAN,CAAciC,IAAd,CAAmBC;EAPsB,CAAR,CAA5C;EAUA,MAAMpC,OAAO,gBACT,oBAAC,KAAD,CAAO,QAAP,qBACI,oBAAC,GAAD;IAAK,UAAU,EAAEc;EAAjB,GACKE,QADL,CADJ,EAKKN,WAAW,gBACR,oBAAC,IAAD;IAAM,KAAK,EAAEd,GAAG,CAAC,CACbyB,MAAM,CAACX,WADM,EAEbiB,oBAFa,CAAD;EAAhB,GAIKjB,WAJL,CADQ,GAOR,IAZR,CADJ;EAiBA;IAAA;IACI;IACA,oBAAC,IAAD,EAAUY,kBAAV,EACKP,MAAM,gBACH,oBAAC,UAAD;MACI,QAAQ,EAAEE,QADd;MAEI,OAAO,EAAEC,OAFb;MAGI,KAAK,EAAEQ;IAHX,GAKK1B,OALL,CADG,gBASH,oBAAC,IAAD;MAAM,KAAK,EAAE0B;IAAb,GACK1B,OADL,CAVR;EAFJ;AAkBH;AAAA"}
@@ -50,12 +50,20 @@ export default function Tab(props) {
50
50
  const tabElement = typeof children !== 'string' ? cloneElementSafely(children, {
51
51
  selected
52
52
  }) : /*#__PURE__*/React.createElement(React.Fragment, null, iconElement ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Badge, {
53
- invisible: !badgeVisible
53
+ horizontalOffset: -6,
54
+ invisible: !badgeVisible,
55
+ verticalOffset: -4.5
54
56
  }, iconElement), /*#__PURE__*/React.createElement(Spacer, {
55
57
  size: 1.25
56
- })) : null, /*#__PURE__*/React.createElement(Text, {
58
+ }), /*#__PURE__*/React.createElement(Text, {
57
59
  style: css(labelStyle)
58
- }, children));
60
+ }, children)) : /*#__PURE__*/React.createElement(Badge, {
61
+ horizontalOffset: -7,
62
+ invisible: !badgeVisible,
63
+ verticalOffset: 3
64
+ }, /*#__PURE__*/React.createElement(Text, {
65
+ style: css(labelStyle)
66
+ }, children)));
59
67
  return /*#__PURE__*/React.createElement(TabBase, _extends({
60
68
  pressEffect: pressEffect,
61
69
  style: tabBaseStyle,
@@ -1 +1 @@
1
- {"version":3,"names":["React","Platform","Text","View","Badge","Spacer","TabBase","css","StyleSheet","useTheme","cloneElementSafely","useVariantStyleMap","styles","create","root","OS","minWidth","filledInner","alignItems","justifyContent","Tab","props","badgeVisible","children","enableIndicator","icon","defaultIcon","selected","selectedIcon","variant","style","styleProp","onTabInnerLayout","otherProps","theme","vertical","container","containerStyle","inner","innerStyle","label","labelStyle","tabBaseStyle","tabInnerStyle","pressEffect","iconColor","palette","strong","base","iconElement","fill","tabElement"],"sources":["Tab.tsx"],"sourcesContent":["import React from 'react';\nimport { Platform, Text, View } from 'react-native';\nimport Badge from '../Badge';\nimport Spacer from '../Spacer';\nimport TabBase from '../TabBase';\nimport { css, StyleSheet, useTheme } from '../styles';\nimport { cloneElementSafely } from '../utils';\nimport type TabProps from './TabProps';\nimport type { TabVariant } from './TabProps';\nimport useVariantStyleMap from './useVariantStyleMap';\n\nconst styles = StyleSheet.create({\n root: {\n // TODO: Remove redundant platform checking\n ...(Platform.OS === 'web' ? { minWidth: 'auto' } : {}),\n },\n filledInner: {\n alignItems: 'center',\n justifyContent: 'center',\n },\n});\n\nexport default function Tab(props: TabProps) {\n const {\n badgeVisible = false,\n children,\n enableIndicator = false,\n icon: defaultIcon,\n selected = false,\n selectedIcon,\n variant = 'default' as TabVariant,\n style: styleProp,\n onTabInnerLayout,\n ...otherProps\n } = props;\n\n const theme = useTheme();\n\n const vertical = variant === 'bottom-navigation';\n\n const {\n container: containerStyle,\n inner: innerStyle,\n label: labelStyle,\n } = useVariantStyleMap(variant, selected);\n\n const tabBaseStyle = css([\n styles.root,\n containerStyle,\n styleProp,\n ]);\n\n const tabInnerStyle = css([\n styles.filledInner,\n innerStyle,\n ]);\n\n const pressEffect = selected ? 'none' : 'opacity';\n\n const icon = selected ? (selectedIcon || defaultIcon) : defaultIcon;\n const iconColor = selected ? theme.palette.icon.strong : theme.palette.icon.base;\n const iconElement = cloneElementSafely(icon, { fill: iconColor });\n\n const tabElement = typeof children !== 'string' ? (\n cloneElementSafely(children, {\n selected,\n })\n ) : (\n <React.Fragment>\n {iconElement ? (\n <React.Fragment>\n <Badge invisible={!badgeVisible}>\n {iconElement}\n </Badge>\n\n <Spacer size={1.25}/>\n </React.Fragment>\n ) : null}\n\n <Text style={css(labelStyle)}>\n {children}\n </Text>\n </React.Fragment>\n );\n\n return (\n <TabBase\n pressEffect={pressEffect}\n style={tabBaseStyle}\n vertical={vertical}\n {...otherProps}\n >\n <View onLayout={onTabInnerLayout} style={tabInnerStyle}>\n {tabElement}\n </View>\n </TabBase>\n );\n};\n"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,QAAT,EAAmBC,IAAnB,EAAyBC,IAAzB,QAAqC,cAArC;AACA,OAAOC,KAAP,MAAkB,UAAlB;AACA,OAAOC,MAAP,MAAmB,WAAnB;AACA,OAAOC,OAAP,MAAoB,YAApB;AACA,SAASC,GAAT,EAAcC,UAAd,EAA0BC,QAA1B,QAA0C,WAA1C;AACA,SAASC,kBAAT,QAAmC,UAAnC;AAGA,OAAOC,kBAAP,MAA+B,sBAA/B;AAEA,MAAMC,MAAM,GAAGJ,UAAU,CAACK,MAAX,CAAkB;EAC7BC,IAAI,EAAE,EACF;IACA,IAAIb,QAAQ,CAACc,EAAT,KAAgB,KAAhB,GAAwB;MAAEC,QAAQ,EAAE;IAAZ,CAAxB,GAA+C,EAAnD;EAFE,CADuB;EAK7BC,WAAW,EAAE;IACTC,UAAU,EAAE,QADH;IAETC,cAAc,EAAE;EAFP;AALgB,CAAlB,CAAf;AAWA,eAAe,SAASC,GAAT,CAAaC,KAAb,EAA8B;EACzC,MAAM;IACFC,YAAY,GAAG,KADb;IAEFC,QAFE;IAGFC,eAAe,GAAG,KAHhB;IAIFC,IAAI,EAAEC,WAJJ;IAKFC,QAAQ,GAAG,KALT;IAMFC,YANE;IAOFC,OAAO,GAAG,SAPR;IAQFC,KAAK,EAAEC,SARL;IASFC,gBATE;IAUF,GAAGC;EAVD,IAWFZ,KAXJ;EAaA,MAAMa,KAAK,GAAGzB,QAAQ,EAAtB;EAEA,MAAM0B,QAAQ,GAAGN,OAAO,KAAK,mBAA7B;EAEA,MAAM;IACFO,SAAS,EAAEC,cADT;IAEFC,KAAK,EAAEC,UAFL;IAGFC,KAAK,EAAEC;EAHL,IAIF9B,kBAAkB,CAACkB,OAAD,EAAUF,QAAV,CAJtB;EAMA,MAAMe,YAAY,GAAGnC,GAAG,CAAC,CACrBK,MAAM,CAACE,IADc,EAErBuB,cAFqB,EAGrBN,SAHqB,CAAD,CAAxB;EAMA,MAAMY,aAAa,GAAGpC,GAAG,CAAC,CACtBK,MAAM,CAACK,WADe,EAEtBsB,UAFsB,CAAD,CAAzB;EAKA,MAAMK,WAAW,GAAGjB,QAAQ,GAAG,MAAH,GAAY,SAAxC;EAEA,MAAMF,IAAI,GAAGE,QAAQ,GAAIC,YAAY,IAAIF,WAApB,GAAmCA,WAAxD;EACA,MAAMmB,SAAS,GAAGlB,QAAQ,GAAGO,KAAK,CAACY,OAAN,CAAcrB,IAAd,CAAmBsB,MAAtB,GAA+Bb,KAAK,CAACY,OAAN,CAAcrB,IAAd,CAAmBuB,IAA5E;EACA,MAAMC,WAAW,GAAGvC,kBAAkB,CAACe,IAAD,EAAO;IAAEyB,IAAI,EAAEL;EAAR,CAAP,CAAtC;EAEA,MAAMM,UAAU,GAAG,OAAO5B,QAAP,KAAoB,QAApB,GACfb,kBAAkB,CAACa,QAAD,EAAW;IACzBI;EADyB,CAAX,CADH,gBAKf,oBAAC,KAAD,CAAO,QAAP,QACKsB,WAAW,gBACR,oBAAC,KAAD,CAAO,QAAP,qBACI,oBAAC,KAAD;IAAO,SAAS,EAAE,CAAC3B;EAAnB,GACK2B,WADL,CADJ,eAKI,oBAAC,MAAD;IAAQ,IAAI,EAAE;EAAd,EALJ,CADQ,GAQR,IATR,eAWI,oBAAC,IAAD;IAAM,KAAK,EAAE1C,GAAG,CAACkC,UAAD;EAAhB,GACKlB,QADL,CAXJ,CALJ;EAsBA,oBACI,oBAAC,OAAD;IACI,WAAW,EAAEqB,WADjB;IAEI,KAAK,EAAEF,YAFX;IAGI,QAAQ,EAAEP;EAHd,GAIQF,UAJR,gBAMI,oBAAC,IAAD;IAAM,QAAQ,EAAED,gBAAhB;IAAkC,KAAK,EAAEW;EAAzC,GACKQ,UADL,CANJ,CADJ;AAYH;AAAA"}
1
+ {"version":3,"names":["React","Platform","Text","View","Badge","Spacer","TabBase","css","StyleSheet","useTheme","cloneElementSafely","useVariantStyleMap","styles","create","root","OS","minWidth","filledInner","alignItems","justifyContent","Tab","props","badgeVisible","children","enableIndicator","icon","defaultIcon","selected","selectedIcon","variant","style","styleProp","onTabInnerLayout","otherProps","theme","vertical","container","containerStyle","inner","innerStyle","label","labelStyle","tabBaseStyle","tabInnerStyle","pressEffect","iconColor","palette","strong","base","iconElement","fill","tabElement"],"sources":["Tab.tsx"],"sourcesContent":["import React from 'react';\nimport { Platform, Text, View } from 'react-native';\nimport Badge from '../Badge';\nimport Spacer from '../Spacer';\nimport TabBase from '../TabBase';\nimport { css, StyleSheet, useTheme } from '../styles';\nimport { cloneElementSafely } from '../utils';\nimport type TabProps from './TabProps';\nimport type { TabVariant } from './TabProps';\nimport useVariantStyleMap from './useVariantStyleMap';\n\nconst styles = StyleSheet.create({\n root: {\n // TODO: Remove redundant platform checking\n ...(Platform.OS === 'web' ? { minWidth: 'auto' } : {}),\n },\n filledInner: {\n alignItems: 'center',\n justifyContent: 'center',\n },\n});\n\nexport default function Tab(props: TabProps) {\n const {\n badgeVisible = false,\n children,\n enableIndicator = false,\n icon: defaultIcon,\n selected = false,\n selectedIcon,\n variant = 'default' as TabVariant,\n style: styleProp,\n onTabInnerLayout,\n ...otherProps\n } = props;\n\n const theme = useTheme();\n\n const vertical = variant === 'bottom-navigation';\n\n const {\n container: containerStyle,\n inner: innerStyle,\n label: labelStyle,\n } = useVariantStyleMap(variant, selected);\n\n const tabBaseStyle = css([\n styles.root,\n containerStyle,\n styleProp,\n ]);\n\n const tabInnerStyle = css([\n styles.filledInner,\n innerStyle,\n ]);\n\n const pressEffect = selected ? 'none' : 'opacity';\n\n const icon = selected ? (selectedIcon || defaultIcon) : defaultIcon;\n const iconColor = selected ? theme.palette.icon.strong : theme.palette.icon.base;\n const iconElement = cloneElementSafely(icon, { fill: iconColor });\n\n const tabElement = typeof children !== 'string' ? (\n cloneElementSafely(children, {\n selected,\n })\n ) : (\n <React.Fragment>\n {iconElement ? (\n <React.Fragment>\n <Badge\n horizontalOffset={-6}\n invisible={!badgeVisible}\n verticalOffset={-4.5}\n >\n {iconElement}\n </Badge>\n\n <Spacer size={1.25}/>\n\n <Text style={css(labelStyle)}>\n {children}\n </Text>\n </React.Fragment>\n ) : (\n <Badge\n horizontalOffset={-7}\n invisible={!badgeVisible}\n verticalOffset={3}\n >\n <Text style={css(labelStyle)}>\n {children}\n </Text>\n </Badge>\n )}\n </React.Fragment>\n );\n\n return (\n <TabBase\n pressEffect={pressEffect}\n style={tabBaseStyle}\n vertical={vertical}\n {...otherProps}\n >\n <View onLayout={onTabInnerLayout} style={tabInnerStyle}>\n {tabElement}\n </View>\n </TabBase>\n );\n};\n"],"mappings":"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"}
@@ -29,6 +29,11 @@ export default interface BadgeProps extends OverridableComponentProps<ViewProps,
29
29
  * (only number variant)
30
30
  */
31
31
  content?: number;
32
+ /**
33
+ * The horizontal offset of the badge.
34
+ * @default 0
35
+ */
36
+ horizontalOffset?: number;
32
37
  /**
33
38
  * If `true`, the badge is invisible.
34
39
  * @default false
@@ -42,11 +47,6 @@ export default interface BadgeProps extends OverridableComponentProps<ViewProps,
42
47
  * }
43
48
  */
44
49
  position?: BadgePosition;
45
- /**
46
- * The offset of the badge.
47
- * @default 0
48
- */
49
- offset?: number;
50
50
  /**
51
51
  *
52
52
  */
@@ -56,5 +56,10 @@ export default interface BadgeProps extends OverridableComponentProps<ViewProps,
56
56
  * @default 'dot'
57
57
  */
58
58
  variant?: BadgeVariant;
59
+ /**
60
+ * The vertical offset of the badge.
61
+ * @default 0
62
+ */
63
+ verticalOffset?: number;
59
64
  }> {
60
65
  }
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import type { DialogProps } from '../Dialog';
3
+ import type DialogTitleProps from './DialogTitleProps';
4
+ interface DialogLargeTitleProps extends DialogTitleProps {
5
+ closeButtonType?: 'back' | 'close';
6
+ onClose: DialogProps['onClose'];
7
+ }
8
+ export default function DialogLargeTitle(props: DialogLargeTitleProps): JSX.Element;
9
+ export {};
@@ -1,10 +1,8 @@
1
1
  /// <reference types="react" />
2
- import BackButton from './BackButton';
3
- import CloseButton from './CloseButton';
2
+ import DialogLargeTitle from './DialogLargeTitle';
4
3
  import type DialogTitleProps from './DialogTitleProps';
5
4
  declare const DialogTitle: {
6
5
  (props: DialogTitleProps): JSX.Element;
7
- BackButton: typeof BackButton;
8
- CloseButton: typeof CloseButton;
6
+ Large: typeof DialogLargeTitle;
9
7
  };
10
8
  export default DialogTitle;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fountain-ui/core",
3
- "version": "3.0.0-alpha.11",
3
+ "version": "3.0.0-alpha.12",
4
4
  "author": "Fountain-UI Team",
5
5
  "description": "React components that implement Tappytoon's Fountain Design.",
6
6
  "license": "MIT",
@@ -14,7 +14,7 @@
14
14
  "prepare": "bob build"
15
15
  },
16
16
  "dependencies": {
17
- "@fountain-ui/styles": "^3.0.0-alpha.7",
17
+ "@fountain-ui/styles": "^3.0.0-alpha.8",
18
18
  "@fountain-ui/utils": "^3.0.0-alpha.1"
19
19
  },
20
20
  "peerDependencies": {
@@ -67,5 +67,5 @@
67
67
  "publishConfig": {
68
68
  "access": "public"
69
69
  },
70
- "gitHead": "3261dc43532e6f39bbddce1a59eddd677d84dc3c"
70
+ "gitHead": "41dd1275144940053eca67f53504c81eee6eac2b"
71
71
  }
@@ -15,12 +15,13 @@ export default function Badge(props: BadgeProps) {
15
15
  children,
16
16
  color = 'accent' as BadgeColor,
17
17
  content,
18
+ horizontalOffset = 0,
18
19
  invisible = false,
19
20
  position = defaultPosition,
20
21
  size = 'medium' as BadgeSize,
21
22
  style: styleProp,
22
- offset = 0,
23
23
  variant = 'dot' as BadgeVariant,
24
+ verticalOffset = 0,
24
25
  ...otherProps
25
26
  } = props;
26
27
 
@@ -36,8 +37,8 @@ export default function Badge(props: BadgeProps) {
36
37
  const badgeStyle = css([
37
38
  baseBadgeStyle,
38
39
  {
39
- [position.vertical]: offset,
40
- [position.horizontal]: offset,
40
+ [position.vertical]: verticalOffset,
41
+ [position.horizontal]: horizontalOffset,
41
42
  },
42
43
  ]);
43
44
 
@@ -39,6 +39,12 @@ export default interface BadgeProps extends OverridableComponentProps<ViewProps,
39
39
  */
40
40
  content?: number;
41
41
 
42
+ /**
43
+ * The horizontal offset of the badge.
44
+ * @default 0
45
+ */
46
+ horizontalOffset?: number;
47
+
42
48
  /**
43
49
  * If `true`, the badge is invisible.
44
50
  * @default false
@@ -54,12 +60,6 @@ export default interface BadgeProps extends OverridableComponentProps<ViewProps,
54
60
  */
55
61
  position?: BadgePosition;
56
62
 
57
- /**
58
- * The offset of the badge.
59
- * @default 0
60
- */
61
- offset?: number;
62
-
63
63
  /**
64
64
  *
65
65
  */
@@ -70,4 +70,10 @@ export default interface BadgeProps extends OverridableComponentProps<ViewProps,
70
70
  * @default 'dot'
71
71
  */
72
72
  variant?: BadgeVariant;
73
+
74
+ /**
75
+ * The vertical offset of the badge.
76
+ * @default 0
77
+ */
78
+ verticalOffset?: number;
73
79
  }> {}
@@ -23,7 +23,9 @@ export default function useDialogSectionStyle() {
23
23
  large: {
24
24
  paddingHorizontal: 32,
25
25
  },
26
- full: {},
26
+ full: {
27
+ paddingHorizontal: windowWidth >= 448 ? 32 : 24,
28
+ },
27
29
  };
28
30
 
29
31
  return sizePaddingHorizontalMap[size];
@@ -0,0 +1,95 @@
1
+ import React from 'react';
2
+ import { StyleSheet, Text, View } from 'react-native';
3
+ import type { DialogProps } from '../Dialog';
4
+ import type DialogTitleProps from './DialogTitleProps';
5
+ import { createFontStyle, css, useTheme } from '../styles';
6
+ import IconButton from '../IconButton';
7
+ import { ChevronLeft, Close } from '../internal';
8
+
9
+ const styles = StyleSheet.create({
10
+ root: {
11
+ alignItems: 'center',
12
+ height: 64,
13
+ justifyContent: 'center',
14
+ paddingHorizontal: 80,
15
+ width: '100%',
16
+ },
17
+ backButton: {
18
+ height: 40,
19
+ left: 20,
20
+ paddingLeft: 5,
21
+ paddingRight: 11,
22
+ paddingVertical: 8,
23
+ position: 'absolute',
24
+ width: 40,
25
+ },
26
+ closeButton: {
27
+ height: 40,
28
+ left: 20,
29
+ padding: 8,
30
+ position: 'absolute',
31
+ width: 40,
32
+ },
33
+ });
34
+
35
+ interface DialogLargeTitleProps extends DialogTitleProps {
36
+ closeButtonType?: 'back' | 'close';
37
+ onClose: DialogProps['onClose'];
38
+ }
39
+
40
+ export default function DialogLargeTitle(props: DialogLargeTitleProps) {
41
+ const {
42
+ children,
43
+ closeButtonType = 'close',
44
+ onClose,
45
+ style: styleProp,
46
+ ...otherProps
47
+ } = props;
48
+
49
+ const theme = useTheme();
50
+
51
+ const fontStyle = createFontStyle(theme, {
52
+ selector: (typo) => typo.header4.semiBold,
53
+ color: theme.palette.text.strong,
54
+ });
55
+
56
+ const rootStyle = css([
57
+ styles.root,
58
+ styleProp,
59
+ ]);
60
+
61
+ return (
62
+ <View
63
+ style={rootStyle}
64
+ {...otherProps}
65
+ >
66
+ {typeof onClose === 'function' ? (
67
+ closeButtonType === 'back' ? (
68
+ <IconButton
69
+ style={styles.backButton}
70
+ onPress={onClose}
71
+ >
72
+ <ChevronLeft
73
+ color={'strong'}
74
+ size={'large'}
75
+ />
76
+ </IconButton>
77
+ ) : (
78
+ <IconButton
79
+ style={styles.closeButton}
80
+ onPress={onClose}
81
+ >
82
+ <Close
83
+ color={'strong'}
84
+ size={'large'}
85
+ />
86
+ </IconButton>
87
+ )
88
+ ) : null}
89
+
90
+ <Text style={fontStyle}>
91
+ {children}
92
+ </Text>
93
+ </View>
94
+ );
95
+ }
@@ -3,8 +3,7 @@ import { Text, View } from 'react-native';
3
3
  import type { NamedStylesStringUnion, UseStyles } from '@fountain-ui/styles';
4
4
  import { useDialogSectionStyle } from '../Dialog';
5
5
  import { createFontStyle, css, useTheme } from '../styles';
6
- import BackButton from './BackButton';
7
- import CloseButton from './CloseButton';
6
+ import DialogLargeTitle from './DialogLargeTitle';
8
7
  import type DialogTitleProps from './DialogTitleProps';
9
8
 
10
9
  type DialogTitleStyles = NamedStylesStringUnion<'root' | 'title'>;
@@ -65,8 +64,6 @@ const DialogTitle = (props: DialogTitleProps) => {
65
64
  );
66
65
  };
67
66
 
68
- DialogTitle.BackButton = BackButton;
69
-
70
- DialogTitle.CloseButton = CloseButton;
67
+ DialogTitle.Large = DialogLargeTitle;
71
68
 
72
69
  export default DialogTitle;
@@ -8,28 +8,22 @@ import Row from '../Row';
8
8
  import { createFontStyle, css, useTheme } from '../styles';
9
9
  import type ListItemProps from './ListItemProps';
10
10
 
11
- type ListItemStyles = NamedStylesStringUnion<'content' | 'description' | 'divider' | 'dividerWrapper'>;
11
+ type ListItemStyles = NamedStylesStringUnion<'content' | 'description'>;
12
12
 
13
13
  const useStyles: UseStyles<ListItemStyles> = function (): ListItemStyles {
14
14
  const theme = useTheme();
15
15
 
16
16
  return {
17
17
  content: {
18
+ borderBottomColor: theme.palette.border.weak,
19
+ borderBottomWidth: 0.5,
18
20
  gap: theme.spacing(2),
19
21
  paddingVertical: theme.spacing(3.75),
20
- paddingHorizontal: theme.spacing(4),
21
22
  width: '100%',
22
23
  },
23
24
  description: {
24
25
  paddingRight: theme.spacing(20),
25
26
  },
26
- divider: {
27
- borderBottomColor: theme.palette.border.weak,
28
- borderBottomWidth: 0.5,
29
- },
30
- dividerWrapper: {
31
- paddingHorizontal: theme.spacing(4),
32
- },
33
27
  };
34
28
  };
35
29
 
@@ -102,10 +96,6 @@ export default function ListItem(props: ListItemProps) {
102
96
  {content}
103
97
  </View>
104
98
  )}
105
-
106
- <View style={styles.dividerWrapper}>
107
- <View style={styles.divider}/>
108
- </View>
109
99
  </View>
110
100
  );
111
101
  };
package/src/Tab/Tab.tsx CHANGED
@@ -69,17 +69,31 @@ export default function Tab(props: TabProps) {
69
69
  <React.Fragment>
70
70
  {iconElement ? (
71
71
  <React.Fragment>
72
- <Badge invisible={!badgeVisible}>
72
+ <Badge
73
+ horizontalOffset={-6}
74
+ invisible={!badgeVisible}
75
+ verticalOffset={-4.5}
76
+ >
73
77
  {iconElement}
74
78
  </Badge>
75
79
 
76
80
  <Spacer size={1.25}/>
77
- </React.Fragment>
78
- ) : null}
79
81
 
80
- <Text style={css(labelStyle)}>
81
- {children}
82
- </Text>
82
+ <Text style={css(labelStyle)}>
83
+ {children}
84
+ </Text>
85
+ </React.Fragment>
86
+ ) : (
87
+ <Badge
88
+ horizontalOffset={-7}
89
+ invisible={!badgeVisible}
90
+ verticalOffset={3}
91
+ >
92
+ <Text style={css(labelStyle)}>
93
+ {children}
94
+ </Text>
95
+ </Badge>
96
+ )}
83
97
  </React.Fragment>
84
98
  );
85
99
 
@@ -1,47 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = BackButton;
7
-
8
- var _react = _interopRequireDefault(require("react"));
9
-
10
- var _reactNative = require("react-native");
11
-
12
- var _IconButton = _interopRequireDefault(require("../IconButton"));
13
-
14
- var _internal = require("../internal");
15
-
16
- var _styles = require("@fountain-ui/styles");
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
-
20
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
21
-
22
- const styles = _reactNative.StyleSheet.create({
23
- root: {
24
- height: 40,
25
- left: 20,
26
- paddingLeft: 5,
27
- paddingRight: 11,
28
- paddingVertical: 8,
29
- position: 'absolute',
30
- width: 40
31
- }
32
- });
33
-
34
- function BackButton(props) {
35
- const {
36
- style: styleProp,
37
- ...otherProps
38
- } = props;
39
- const rootStyle = (0, _styles.css)([styles.root, styleProp]);
40
- return /*#__PURE__*/_react.default.createElement(_IconButton.default, _extends({
41
- style: rootStyle
42
- }, otherProps), /*#__PURE__*/_react.default.createElement(_internal.ChevronLeft, {
43
- color: 'strong',
44
- size: 'large'
45
- }));
46
- }
47
- //# sourceMappingURL=BackButton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["styles","StyleSheet","create","root","height","left","paddingLeft","paddingRight","paddingVertical","position","width","BackButton","props","style","styleProp","otherProps","rootStyle","css"],"sources":["BackButton.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet } from 'react-native';\nimport type { IconButtonProps } from '../IconButton';\nimport IconButton from '../IconButton';\nimport { ChevronLeft } from '../internal';\nimport { css } from '@fountain-ui/styles';\n\nconst styles = StyleSheet.create({\n root: {\n height: 40,\n left: 20,\n paddingLeft: 5,\n paddingRight: 11,\n paddingVertical: 8,\n position: 'absolute',\n width: 40,\n },\n});\n\ninterface BackButtonProps extends Omit<IconButtonProps, 'children'> {}\n\nexport default function BackButton(props: BackButtonProps) {\n const {\n style: styleProp,\n ...otherProps\n } = props;\n\n const rootStyle = css([\n styles.root,\n styleProp,\n ]);\n\n return (\n <IconButton\n style={rootStyle}\n {...otherProps}\n >\n <ChevronLeft\n color={'strong'}\n size={'large'}\n />\n </IconButton>\n );\n}\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;;;;;AAEA,MAAMA,MAAM,GAAGC,uBAAA,CAAWC,MAAX,CAAkB;EAC7BC,IAAI,EAAE;IACFC,MAAM,EAAE,EADN;IAEFC,IAAI,EAAE,EAFJ;IAGFC,WAAW,EAAE,CAHX;IAIFC,YAAY,EAAE,EAJZ;IAKFC,eAAe,EAAE,CALf;IAMFC,QAAQ,EAAE,UANR;IAOFC,KAAK,EAAE;EAPL;AADuB,CAAlB,CAAf;;AAce,SAASC,UAAT,CAAoBC,KAApB,EAA4C;EACvD,MAAM;IACFC,KAAK,EAAEC,SADL;IAEF,GAAGC;EAFD,IAGFH,KAHJ;EAKA,MAAMI,SAAS,GAAG,IAAAC,WAAA,EAAI,CAClBjB,MAAM,CAACG,IADW,EAElBW,SAFkB,CAAJ,CAAlB;EAKA,oBACI,6BAAC,mBAAD;IACI,KAAK,EAAEE;EADX,GAEQD,UAFR,gBAII,6BAAC,qBAAD;IACI,KAAK,EAAE,QADX;IAEI,IAAI,EAAE;EAFV,EAJJ,CADJ;AAWH"}
@@ -1,45 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = CloseButton;
7
-
8
- var _react = _interopRequireDefault(require("react"));
9
-
10
- var _reactNative = require("react-native");
11
-
12
- var _IconButton = _interopRequireDefault(require("../IconButton"));
13
-
14
- var _internal = require("../internal");
15
-
16
- var _styles = require("@fountain-ui/styles");
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
-
20
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
21
-
22
- const styles = _reactNative.StyleSheet.create({
23
- root: {
24
- height: 40,
25
- left: 20,
26
- padding: 8,
27
- position: 'absolute',
28
- width: 40
29
- }
30
- });
31
-
32
- function CloseButton(props) {
33
- const {
34
- style: styleProp,
35
- ...otherProps
36
- } = props;
37
- const rootStyle = (0, _styles.css)([styles.root, styleProp]);
38
- return /*#__PURE__*/_react.default.createElement(_IconButton.default, _extends({
39
- style: rootStyle
40
- }, otherProps), /*#__PURE__*/_react.default.createElement(_internal.Close, {
41
- color: 'strong',
42
- size: 'large'
43
- }));
44
- }
45
- //# sourceMappingURL=CloseButton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["styles","StyleSheet","create","root","height","left","padding","position","width","CloseButton","props","style","styleProp","otherProps","rootStyle","css"],"sources":["CloseButton.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet } from 'react-native';\nimport type { IconButtonProps } from '../IconButton';\nimport IconButton from '../IconButton';\nimport { Close } from '../internal';\nimport { css } from '@fountain-ui/styles';\n\nconst styles = StyleSheet.create({\n root: {\n height: 40,\n left: 20,\n padding: 8,\n position: 'absolute',\n width: 40,\n },\n});\n\ninterface CloseButtonProps extends Omit<IconButtonProps, 'children'> {}\n\nexport default function CloseButton(props: CloseButtonProps) {\n const {\n style: styleProp,\n ...otherProps\n } = props;\n\n const rootStyle = css([\n styles.root,\n styleProp,\n ]);\n\n return (\n <IconButton\n style={rootStyle}\n {...otherProps}\n >\n <Close\n color={'strong'}\n size={'large'}\n />\n </IconButton>\n );\n}\n"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;;;;;AAEA,MAAMA,MAAM,GAAGC,uBAAA,CAAWC,MAAX,CAAkB;EAC7BC,IAAI,EAAE;IACFC,MAAM,EAAE,EADN;IAEFC,IAAI,EAAE,EAFJ;IAGFC,OAAO,EAAE,CAHP;IAIFC,QAAQ,EAAE,UAJR;IAKFC,KAAK,EAAE;EALL;AADuB,CAAlB,CAAf;;AAYe,SAASC,WAAT,CAAqBC,KAArB,EAA8C;EACzD,MAAM;IACFC,KAAK,EAAEC,SADL;IAEF,GAAGC;EAFD,IAGFH,KAHJ;EAKA,MAAMI,SAAS,GAAG,IAAAC,WAAA,EAAI,CAClBf,MAAM,CAACG,IADW,EAElBS,SAFkB,CAAJ,CAAlB;EAKA,oBACI,6BAAC,mBAAD;IACI,KAAK,EAAEE;EADX,GAEQD,UAFR,gBAII,6BAAC,eAAD;IACI,KAAK,EAAE,QADX;IAEI,IAAI,EAAE;EAFV,EAJJ,CADJ;AAWH"}
@@ -1,32 +0,0 @@
1
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
3
- import React from 'react';
4
- import { StyleSheet } from 'react-native';
5
- import IconButton from '../IconButton';
6
- import { ChevronLeft } from '../internal';
7
- import { css } from '@fountain-ui/styles';
8
- const styles = StyleSheet.create({
9
- root: {
10
- height: 40,
11
- left: 20,
12
- paddingLeft: 5,
13
- paddingRight: 11,
14
- paddingVertical: 8,
15
- position: 'absolute',
16
- width: 40
17
- }
18
- });
19
- export default function BackButton(props) {
20
- const {
21
- style: styleProp,
22
- ...otherProps
23
- } = props;
24
- const rootStyle = css([styles.root, styleProp]);
25
- return /*#__PURE__*/React.createElement(IconButton, _extends({
26
- style: rootStyle
27
- }, otherProps), /*#__PURE__*/React.createElement(ChevronLeft, {
28
- color: 'strong',
29
- size: 'large'
30
- }));
31
- }
32
- //# sourceMappingURL=BackButton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","StyleSheet","IconButton","ChevronLeft","css","styles","create","root","height","left","paddingLeft","paddingRight","paddingVertical","position","width","BackButton","props","style","styleProp","otherProps","rootStyle"],"sources":["BackButton.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet } from 'react-native';\nimport type { IconButtonProps } from '../IconButton';\nimport IconButton from '../IconButton';\nimport { ChevronLeft } from '../internal';\nimport { css } from '@fountain-ui/styles';\n\nconst styles = StyleSheet.create({\n root: {\n height: 40,\n left: 20,\n paddingLeft: 5,\n paddingRight: 11,\n paddingVertical: 8,\n position: 'absolute',\n width: 40,\n },\n});\n\ninterface BackButtonProps extends Omit<IconButtonProps, 'children'> {}\n\nexport default function BackButton(props: BackButtonProps) {\n const {\n style: styleProp,\n ...otherProps\n } = props;\n\n const rootStyle = css([\n styles.root,\n styleProp,\n ]);\n\n return (\n <IconButton\n style={rootStyle}\n {...otherProps}\n >\n <ChevronLeft\n color={'strong'}\n size={'large'}\n />\n </IconButton>\n );\n}\n"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,UAAT,QAA2B,cAA3B;AAEA,OAAOC,UAAP,MAAuB,eAAvB;AACA,SAASC,WAAT,QAA4B,aAA5B;AACA,SAASC,GAAT,QAAoB,qBAApB;AAEA,MAAMC,MAAM,GAAGJ,UAAU,CAACK,MAAX,CAAkB;EAC7BC,IAAI,EAAE;IACFC,MAAM,EAAE,EADN;IAEFC,IAAI,EAAE,EAFJ;IAGFC,WAAW,EAAE,CAHX;IAIFC,YAAY,EAAE,EAJZ;IAKFC,eAAe,EAAE,CALf;IAMFC,QAAQ,EAAE,UANR;IAOFC,KAAK,EAAE;EAPL;AADuB,CAAlB,CAAf;AAcA,eAAe,SAASC,UAAT,CAAoBC,KAApB,EAA4C;EACvD,MAAM;IACFC,KAAK,EAAEC,SADL;IAEF,GAAGC;EAFD,IAGFH,KAHJ;EAKA,MAAMI,SAAS,GAAGhB,GAAG,CAAC,CAClBC,MAAM,CAACE,IADW,EAElBW,SAFkB,CAAD,CAArB;EAKA,oBACI,oBAAC,UAAD;IACI,KAAK,EAAEE;EADX,GAEQD,UAFR,gBAII,oBAAC,WAAD;IACI,KAAK,EAAE,QADX;IAEI,IAAI,EAAE;EAFV,EAJJ,CADJ;AAWH"}
@@ -1,30 +0,0 @@
1
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
3
- import React from 'react';
4
- import { StyleSheet } from 'react-native';
5
- import IconButton from '../IconButton';
6
- import { Close } from '../internal';
7
- import { css } from '@fountain-ui/styles';
8
- const styles = StyleSheet.create({
9
- root: {
10
- height: 40,
11
- left: 20,
12
- padding: 8,
13
- position: 'absolute',
14
- width: 40
15
- }
16
- });
17
- export default function CloseButton(props) {
18
- const {
19
- style: styleProp,
20
- ...otherProps
21
- } = props;
22
- const rootStyle = css([styles.root, styleProp]);
23
- return /*#__PURE__*/React.createElement(IconButton, _extends({
24
- style: rootStyle
25
- }, otherProps), /*#__PURE__*/React.createElement(Close, {
26
- color: 'strong',
27
- size: 'large'
28
- }));
29
- }
30
- //# sourceMappingURL=CloseButton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["React","StyleSheet","IconButton","Close","css","styles","create","root","height","left","padding","position","width","CloseButton","props","style","styleProp","otherProps","rootStyle"],"sources":["CloseButton.tsx"],"sourcesContent":["import React from 'react';\nimport { StyleSheet } from 'react-native';\nimport type { IconButtonProps } from '../IconButton';\nimport IconButton from '../IconButton';\nimport { Close } from '../internal';\nimport { css } from '@fountain-ui/styles';\n\nconst styles = StyleSheet.create({\n root: {\n height: 40,\n left: 20,\n padding: 8,\n position: 'absolute',\n width: 40,\n },\n});\n\ninterface CloseButtonProps extends Omit<IconButtonProps, 'children'> {}\n\nexport default function CloseButton(props: CloseButtonProps) {\n const {\n style: styleProp,\n ...otherProps\n } = props;\n\n const rootStyle = css([\n styles.root,\n styleProp,\n ]);\n\n return (\n <IconButton\n style={rootStyle}\n {...otherProps}\n >\n <Close\n color={'strong'}\n size={'large'}\n />\n </IconButton>\n );\n}\n"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,UAAT,QAA2B,cAA3B;AAEA,OAAOC,UAAP,MAAuB,eAAvB;AACA,SAASC,KAAT,QAAsB,aAAtB;AACA,SAASC,GAAT,QAAoB,qBAApB;AAEA,MAAMC,MAAM,GAAGJ,UAAU,CAACK,MAAX,CAAkB;EAC7BC,IAAI,EAAE;IACFC,MAAM,EAAE,EADN;IAEFC,IAAI,EAAE,EAFJ;IAGFC,OAAO,EAAE,CAHP;IAIFC,QAAQ,EAAE,UAJR;IAKFC,KAAK,EAAE;EALL;AADuB,CAAlB,CAAf;AAYA,eAAe,SAASC,WAAT,CAAqBC,KAArB,EAA8C;EACzD,MAAM;IACFC,KAAK,EAAEC,SADL;IAEF,GAAGC;EAFD,IAGFH,KAHJ;EAKA,MAAMI,SAAS,GAAGd,GAAG,CAAC,CAClBC,MAAM,CAACE,IADW,EAElBS,SAFkB,CAAD,CAArB;EAKA,oBACI,oBAAC,UAAD;IACI,KAAK,EAAEE;EADX,GAEQD,UAFR,gBAII,oBAAC,KAAD;IACI,KAAK,EAAE,QADX;IAEI,IAAI,EAAE;EAFV,EAJJ,CADJ;AAWH"}
@@ -1,6 +0,0 @@
1
- /// <reference types="react" />
2
- import type { IconButtonProps } from '../IconButton';
3
- interface BackButtonProps extends Omit<IconButtonProps, 'children'> {
4
- }
5
- export default function BackButton(props: BackButtonProps): JSX.Element;
6
- export {};
@@ -1,6 +0,0 @@
1
- /// <reference types="react" />
2
- import type { IconButtonProps } from '../IconButton';
3
- interface CloseButtonProps extends Omit<IconButtonProps, 'children'> {
4
- }
5
- export default function CloseButton(props: CloseButtonProps): JSX.Element;
6
- export {};