stylesheet.ts 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. import {
  2. type ViewStyle,
  3. StyleSheet
  4. } from "react-native";
  5. import type {
  6. YearSelectorDynamicStyle
  7. } from "./type";
  8. import type {
  9. Mutable
  10. } from "../../types";
  11. const stylesheet = StyleSheet.create({
  12. container: {
  13. flex: 1
  14. },
  15. contentContainer: {
  16. justifyContent: "space-between",
  17. flexDirection: "column",
  18. alignItems: "center"
  19. },
  20. columnContainer: {
  21. justifyContent: "center",
  22. flexDirection: "column",
  23. alignItems: "center",
  24. flexShrink: 1,
  25. flex: 1
  26. },
  27. day: {
  28. justifyContent: "center",
  29. alignItems: "center",
  30. position: "relative",
  31. flexShrink: 1,
  32. width: "100%",
  33. flex: 1
  34. },
  35. todayIndicator: {
  36. position: "absolute",
  37. zIndex: 999
  38. },
  39. nextPrevToolContainer: {
  40. justifyContent: "space-between",
  41. flexDirection: "row",
  42. alignItems: "center",
  43. flex: 1
  44. },
  45. rowContainer: {
  46. flexDirection: "row"
  47. }
  48. });
  49. export const useStyles = ({
  50. radiuses,
  51. borders,
  52. spaces,
  53. colors
  54. }: YearSelectorDynamicStyle) => {
  55. const styles = {
  56. day: {
  57. borderBottomRightRadius: radiuses.full,
  58. borderBottomLeftRadius: radiuses.full,
  59. borderTopRightRadius: radiuses.full,
  60. borderTopLeftRadius: radiuses.full,
  61. borderColor: "transparent",
  62. borderWidth: borders.line,
  63. padding: spaces.spacingSm
  64. } as Mutable<ViewStyle>,
  65. todayIndicator: {
  66. borderColor: colors.content.border.default,
  67. borderBottomRightRadius: radiuses.full,
  68. borderBottomLeftRadius: radiuses.full,
  69. borderTopRightRadius: radiuses.full,
  70. borderTopLeftRadius: radiuses.full,
  71. borderWidth: borders.line,
  72. bottom: spaces.spacingXs,
  73. right: spaces.spacingXs,
  74. left: spaces.spacingXs,
  75. top: spaces.spacingXs
  76. } as Mutable<ViewStyle>,
  77. nextPrevToolContainer: {
  78. marginBottom: spaces.spacingMd
  79. } as Mutable<ViewStyle>,
  80. nextPrevToolChevronButton: {
  81. padding: spaces.spacingSm
  82. } as Mutable<ViewStyle>
  83. };
  84. return styles;
  85. };
  86. export default stylesheet;