AssetLine.style.tsx 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. import styled from '@emotion/styled'
  2. import { Text } from '@/shared/components'
  3. import { colors, sizes, media } from '@/shared/theme'
  4. type FileLineProps = {
  5. isLast?: boolean
  6. }
  7. export const FileLineContainer = styled.div<FileLineProps>`
  8. display: flex;
  9. align-items: center;
  10. margin: ${sizes(6)} 0;
  11. ${media.small} {
  12. margin: ${sizes(2)} 0;
  13. }
  14. `
  15. export const FileLinePoint = styled.div`
  16. display: none;
  17. width: 35px;
  18. height: 32px;
  19. border-left: 2px solid ${colors.gray[500]};
  20. flex-shrink: 0;
  21. &:after {
  22. content: '';
  23. position: absolute;
  24. border-top: 2px solid ${colors.gray[500]};
  25. width: 33px;
  26. height: 32px;
  27. transform: translateY(calc(50% - 1px));
  28. }
  29. ${media.small} {
  30. display: block;
  31. margin-left: ${sizes(4)};
  32. }
  33. ${media.medium} {
  34. margin-left: ${sizes(13)};
  35. }
  36. `
  37. export const FileLineLastPoint = styled.div`
  38. display: none;
  39. width: 35px;
  40. height: 17px;
  41. flex-shrink: 0;
  42. border-left: 2px solid ${colors.gray[500]};
  43. border-bottom: 2px solid ${colors.gray[500]};
  44. transform: translateY(calc(-50% + 1px));
  45. ${media.small} {
  46. display: block;
  47. margin-left: ${sizes(4)};
  48. }
  49. ${media.medium} {
  50. margin-left: ${sizes(13)};
  51. }
  52. `
  53. export const StatusMessage = styled(Text)`
  54. width: 100%;
  55. max-width: ${sizes(16)};
  56. height: 48px;
  57. margin-left: auto;
  58. margin-right: ${sizes(6)};
  59. color: ${colors.gray[300]};
  60. display: flex;
  61. align-items: center;
  62. justify-content: flex-end;
  63. ${media.medium} {
  64. max-width: ${sizes(42)};
  65. }
  66. `
  67. export const FileStatusContainer = styled.div`
  68. display: flex;
  69. justify-content: center;
  70. align-items: center;
  71. width: ${sizes(6)};
  72. height: ${sizes(6)};
  73. margin-left: ${sizes(4)};
  74. flex-shrink: 0;
  75. `
  76. export const FileInfoContainer = styled.div`
  77. display: grid;
  78. grid-template-columns: 1fr;
  79. grid-template-rows: 1fr;
  80. width: 100%;
  81. max-width: 600px;
  82. margin-left: ${sizes(2)};
  83. color: ${colors.gray[300]};
  84. p {
  85. display: flex;
  86. align-items: center;
  87. }
  88. ${media.small} {
  89. margin-left: ${sizes(6)};
  90. grid-template-columns: repeat(3, 1fr);
  91. }
  92. `
  93. export const FileInfoType = styled.div`
  94. display: flex;
  95. align-items: center;
  96. height: ${sizes(6)};
  97. color: ${colors.white};
  98. svg {
  99. margin-right: 10px;
  100. }
  101. `
  102. export const ProgressbarContainer = styled.div`
  103. width: ${sizes(5)};
  104. height: ${sizes(5)};
  105. `