+
+
+ 별점
+
+ *
+
+
+
{starList.map((star) => (
-
+
))}
-
+
);
};
export default StarRate;
-
-const StarRateContainer = styled.div`
- display: flex;
- flex-direction: column;
- justify-content: center;
- align-items: center;
-`;
-
-const RequiredMark = styled.sup`
- color: ${({ theme }) => theme.colors.error};
-`;
-
-const SvgIconWrapper = styled(SvgIcon)`
- transition: all 0.3s ease-out;
-`;
diff --git a/src/components/Review/ReviewRegisterForm/StarRate/starRate.css.ts b/src/components/Review/ReviewRegisterForm/StarRate/starRate.css.ts
new file mode 100644
index 000000000..89b2c801e
--- /dev/null
+++ b/src/components/Review/ReviewRegisterForm/StarRate/starRate.css.ts
@@ -0,0 +1,10 @@
+import { style } from '@vanilla-extract/css';
+
+export const starWrapper = style({
+ display: 'flex',
+ gap: 8,
+});
+
+export const starIcon = style({
+ transition: 'all 0.3s ease-out',
+});
diff --git a/src/components/Review/ReviewRegisterForm/reviewRegisterForm.css.ts b/src/components/Review/ReviewRegisterForm/reviewRegisterForm.css.ts
new file mode 100644
index 000000000..f9e43fc24
--- /dev/null
+++ b/src/components/Review/ReviewRegisterForm/reviewRegisterForm.css.ts
@@ -0,0 +1,44 @@
+import { vars } from '@/styles/theme.css';
+import { style } from '@vanilla-extract/css';
+
+export const itemTitle = style({
+ fontSize: '1.3rem',
+ fontWeight: 600,
+ marginBottom: 8,
+});
+
+export const requiredMark = style({
+ color: vars.colors.error,
+});
+
+export const tagAddButton = style({
+ display: 'flex',
+ alignItems: 'center',
+ justifyContent: 'center',
+ width: '100%',
+ height: 44,
+ fontSize: '1.4rem',
+ fontWeight: 500,
+ borderRadius: 6,
+ border: `1px solid ${vars.colors.border.default}`,
+ color: vars.colors.gray3,
+});
+
+export const tagList = style({
+ display: 'flex',
+ flexWrap: 'wrap',
+ gap: 4,
+ marginTop: 12,
+});
+
+export const tagButton = style({
+ display: 'flex',
+ alignItems: 'center',
+ gap: 4,
+ height: 28,
+ padding: '0 6px',
+ fontSize: '1.3rem',
+ fontWeight: 500,
+ borderRadius: 4,
+ backgroundColor: vars.colors.gray2,
+});
diff --git a/src/components/Review/ReviewTagItem/ReviewTagItem.stories.tsx b/src/components/Review/ReviewTagItem/ReviewTagItem.stories.tsx
deleted file mode 100644
index 572ffe079..000000000
--- a/src/components/Review/ReviewTagItem/ReviewTagItem.stories.tsx
+++ /dev/null
@@ -1,33 +0,0 @@
-import type { Meta, StoryObj } from '@storybook/react';
-
-import ReviewTagItem from './ReviewTagItem';
-
-import ReviewFormProvider from '@/contexts/ReviewFormContext';
-
-const meta: Meta
= {
- title: 'review/ReviewTagItem',
- component: ReviewTagItem,
- args: {
- id: 0,
- name: '단짠단짠',
- isSelected: false,
- },
- decorators: [
- (Story) => (
-
-
-
- ),
- ],
-};
-
-export default meta;
-type Story = StoryObj;
-
-export const Default: Story = {};
-
-export const Selected: Story = {
- args: {
- isSelected: true,
- },
-};
diff --git a/src/components/Review/ReviewTagItem/ReviewTagItem.tsx b/src/components/Review/ReviewTagItem/ReviewTagItem.tsx
deleted file mode 100644
index 7ca589fc9..000000000
--- a/src/components/Review/ReviewTagItem/ReviewTagItem.tsx
+++ /dev/null
@@ -1,65 +0,0 @@
-import { Badge, Button, useTheme } from '@fun-eat/design-system';
-import type { RuleSet } from 'styled-components';
-import styled, { css } from 'styled-components';
-
-import { useReviewFormActionContext } from '@/hooks/context';
-import type { TagVariants } from '@/types/common';
-
-interface ReviewTagItemProps {
- id: number;
- name: string;
- variant: TagVariants;
- isSelected: boolean;
-}
-
-const ReviewTagItem = ({ id, name, variant, isSelected }: ReviewTagItemProps) => {
- const { handleReviewFormValue } = useReviewFormActionContext();
- const theme = useTheme();
-
- const handleReviewTag = () => {
- handleReviewFormValue({ target: 'tagIds', value: id, isSelected });
- };
-
- return (
-
- );
-};
-
-export default ReviewTagItem;
-
-type TagStyleProps = Pick;
-
-type TagVariantStyles = Record RuleSet