@1d1s/design-system 0.2.5 → 0.2.7

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.
@@ -25,6 +25,7 @@ export interface BannerCarouselProps extends React.HTMLAttributes<HTMLDivElement
25
25
  enableLoop?: boolean;
26
26
  showIndicators?: boolean;
27
27
  aspectRatioClassName?: string;
28
+ minHeightPx?: number;
28
29
  componentId?: string;
29
30
  enableDataLayerTracking?: boolean;
30
31
  impressionMode?: "once" | "always";
@@ -38,4 +39,4 @@ export interface BannerCarouselProps extends React.HTMLAttributes<HTMLDivElement
38
39
  * 메인 배너 슬라이더 컴포넌트. 자동 슬라이드, 무한 루프, 인디케이터를 지원하며
39
40
  * 클릭/노출 추적 콜백 및 dataLayer 이벤트 전송 포인트를 제공합니다.
40
41
  */
41
- export declare function BannerCarousel({ items, autoSlideIntervalMs, initialIndex, enableLoop, showIndicators, aspectRatioClassName, componentId, enableDataLayerTracking, impressionMode, onBannerClick, onBannerImpression, onBannerChange, onItemClick, className, ...props }: BannerCarouselProps): React.ReactElement | null;
42
+ export declare function BannerCarousel({ items, autoSlideIntervalMs, initialIndex, enableLoop, showIndicators, aspectRatioClassName, minHeightPx, componentId, enableDataLayerTracking, impressionMode, onBannerClick, onBannerImpression, onBannerChange, onItemClick, className, ...props }: BannerCarouselProps): React.ReactElement | null;
@@ -5,6 +5,8 @@ export default meta;
5
5
  type Story = StoryObj<typeof ChallengeCard>;
6
6
  export declare const Default: Story;
7
7
  export declare const Recruiting: Story;
8
+ export declare const IndividualParticipant: Story;
9
+ export declare const GroupParticipantCount: Story;
8
10
  export declare const Ended: Story;
9
11
  export declare const Grid3x2: Story;
10
12
  export declare const ChallengeIcons: Story;
@@ -0,0 +1,17 @@
1
+ import { ReactNode } from 'react';
2
+ export interface ChallengeListItemProps {
3
+ challengeTitle: string;
4
+ challengeType: string;
5
+ challengeCategory?: string;
6
+ challengeIcon?: ReactNode;
7
+ imageUrl?: string;
8
+ currentUserCount: number;
9
+ maxUserCount: number;
10
+ startDate: string;
11
+ endDate: string;
12
+ isOngoing: boolean;
13
+ isEnded?: boolean;
14
+ className?: string;
15
+ onClick?(): void;
16
+ }
17
+ export declare function ChallengeListItem({ challengeTitle, challengeType, challengeCategory, challengeIcon, imageUrl, currentUserCount, maxUserCount, startDate, endDate, isOngoing, isEnded, className, onClick, }: ChallengeListItemProps): React.ReactElement;
@@ -0,0 +1,11 @@
1
+ import { Meta, StoryObj } from '@storybook/react';
2
+ import { ChallengeListItem } from './ChallengeListItem';
3
+ declare const meta: Meta<typeof ChallengeListItem>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof ChallengeListItem>;
6
+ export declare const Ongoing: Story;
7
+ export declare const Recruiting: Story;
8
+ export declare const Ended: Story;
9
+ export declare const Individual: Story;
10
+ export declare const WithImage: Story;
11
+ export declare const List: Story;
@@ -0,0 +1 @@
1
+ export * from './ChallengeListItem';
@@ -11,10 +11,11 @@ export interface DiaryCardProps {
11
11
  user: string;
12
12
  userImage?: string;
13
13
  challengeLabel: string;
14
+ totalMemberCount?: number;
14
15
  onChallengeClick?(): void;
15
16
  date: string;
16
17
  emotion: Emotion;
17
18
  onClick?(): void;
18
19
  }
19
- export declare function DiaryCard({ imageUrl, percent, likes, isLiked: isLikedProp, defaultLiked, onLikeToggle, title, user, userImage, challengeLabel, onChallengeClick, date, emotion, onClick, }: DiaryCardProps): React.ReactElement;
20
+ export declare function DiaryCard({ imageUrl, percent, likes, isLiked: isLikedProp, defaultLiked, onLikeToggle, title, user, userImage, challengeLabel, totalMemberCount, onChallengeClick, date, emotion, onClick, }: DiaryCardProps): React.ReactElement;
20
21
  export {};
@@ -0,0 +1,22 @@
1
+ import { default as React } from 'react';
2
+ type Emotion = "happy" | "soso" | "sad";
3
+ export interface DiaryListItemProps {
4
+ title: string;
5
+ imageUrl?: string;
6
+ percent: number;
7
+ emotion: Emotion;
8
+ likes: number;
9
+ isLiked?: boolean;
10
+ defaultLiked?: boolean;
11
+ onLikeToggle?(nextLiked: boolean): void;
12
+ user: string;
13
+ userImage?: string;
14
+ challengeLabel: string;
15
+ totalMemberCount?: number;
16
+ onChallengeClick?(): void;
17
+ date: string;
18
+ onClick?(): void;
19
+ className?: string;
20
+ }
21
+ export declare function DiaryListItem({ title, imageUrl, percent, emotion, likes, isLiked: isLikedProp, defaultLiked, onLikeToggle, user, userImage, challengeLabel, totalMemberCount, onChallengeClick, date, onClick, className, }: DiaryListItemProps): React.ReactElement;
22
+ export {};
@@ -0,0 +1,9 @@
1
+ import { Meta, StoryObj } from '@storybook/react';
2
+ import { DiaryListItem } from './DiaryListItem';
3
+ declare const meta: Meta<typeof DiaryListItem>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof DiaryListItem>;
6
+ export declare const Default: Story;
7
+ export declare const NoImage: Story;
8
+ export declare const ControlledLike: Story;
9
+ export declare const List: Story;
@@ -0,0 +1 @@
1
+ export * from './DiaryListItem';
@@ -10,7 +10,7 @@ export interface RightSidebarChallenge {
10
10
  export interface RightSidebarProps {
11
11
  isLoggedIn?: boolean;
12
12
  userName?: string;
13
- userHandle?: string;
13
+ userSubtitle?: string;
14
14
  userImage?: string;
15
15
  streakDays: number;
16
16
  fixed?: boolean;
@@ -24,6 +24,7 @@ export interface RightSidebarProps {
24
24
  challenges?: RightSidebarChallenge[];
25
25
  emptyChallengeMessage?: string;
26
26
  joinChallengeButtonLabel?: string;
27
+ joinChallengeMaxUserCount?: number;
27
28
  createChallengeButtonLabel?: string;
28
29
  onCollapseClick?(): void;
29
30
  onOpenSettings?(): void;
@@ -33,5 +34,5 @@ export interface RightSidebarProps {
33
34
  onJoinChallenge?(): void;
34
35
  onCreateChallenge?(): void;
35
36
  }
36
- export declare function RightSidebar({ isLoggedIn, userName, userHandle, userImage, streakDays, fixed, className, diaryButtonLabel, myPageButtonLabel, loginButtonLabel, loginPromptMessage, settingButtonLabel, challengeTitle, challenges, emptyChallengeMessage, joinChallengeButtonLabel, createChallengeButtonLabel, onCollapseClick, onOpenSettings, onWriteDiary, onGoMyPage, onLogin, onJoinChallenge, onCreateChallenge, }: RightSidebarProps): React.ReactElement;
37
+ export declare function RightSidebar({ isLoggedIn, userName, userSubtitle, userImage, streakDays, fixed, className, diaryButtonLabel, myPageButtonLabel, loginButtonLabel, loginPromptMessage, settingButtonLabel, challengeTitle, challenges, emptyChallengeMessage, joinChallengeButtonLabel, joinChallengeMaxUserCount, createChallengeButtonLabel, onCollapseClick, onOpenSettings, onWriteDiary, onGoMyPage, onLogin, onJoinChallenge, onCreateChallenge, }: RightSidebarProps): React.ReactElement;
37
38
  export {};
@@ -6,3 +6,4 @@ type Story = StoryObj<typeof RightSidebar>;
6
6
  export declare const Default: Story;
7
7
  export declare const LoggedOut: Story;
8
8
  export declare const EmptyChallenges: Story;
9
+ export declare const EmptyChallengesJoinDisabled: Story;
@@ -4,6 +4,7 @@ export * from './BannerCarousel';
4
4
  export * from './Button';
5
5
  export * from './Calendar';
6
6
  export * from './ChallengeCard';
7
+ export * from './ChallengeListItem';
7
8
  export * from './CheckContainer';
8
9
  export * from './CheckList';
9
10
  export * from './Checkbox';
@@ -12,6 +13,7 @@ export * from './CircularProgress';
12
13
  export * from './DatePicker';
13
14
  export * from './Dialog';
14
15
  export * from './DiaryCard';
16
+ export * from './DiaryListItem';
15
17
  export * from './Dropdown';
16
18
  export * from './GoalAddList';
17
19
  export { Icon } from './Icons/Icon';