@bestow-ui/react 0.6.0 → 0.7.0

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.
package/dist/index.d.ts CHANGED
@@ -273,6 +273,22 @@ declare function usePortalProps(): {
273
273
  */
274
274
  declare function usePortalClassName(): string;
275
275
 
276
+ interface AvatarProps extends HTMLAttributes<HTMLSpanElement> {
277
+ /** 이미지 주소. 없거나 불러오지 못하면 fallback 을 보여 준다 */
278
+ src?: string;
279
+ /** 스크린리더가 읽을 이름. 없으면 `name` 을 쓰고, 둘 다 없으면 장식용으로 숨긴다 */
280
+ alt?: string;
281
+ /** 사용자 이름. fallback 이니셜과 기본 접근 가능한 이름에 쓴다 */
282
+ name?: string;
283
+ /** fallback 을 직접 지정한다 (기본: 이니셜 → 사용자 아이콘) */
284
+ fallback?: ReactNode;
285
+ /** 크기 (sm 28px, md 36px, lg 48px) */
286
+ size?: 'sm' | 'md' | 'lg';
287
+ /** 모양 */
288
+ shape?: 'circle' | 'square';
289
+ }
290
+ declare const Avatar: react.ForwardRefExoticComponent<AvatarProps & react.RefAttributes<HTMLSpanElement>>;
291
+
276
292
  interface BadgeProps extends Omit<HTMLAttributes<HTMLSpanElement>, 'color'> {
277
293
  /** 시각적 스타일 */
278
294
  variant?: 'solid' | 'soft' | 'outline';
@@ -336,6 +352,19 @@ interface CheckboxProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'siz
336
352
  }
337
353
  declare const Checkbox: react.ForwardRefExoticComponent<CheckboxProps & react.RefAttributes<HTMLInputElement>>;
338
354
 
355
+ interface DividerProps extends HTMLAttributes<HTMLDivElement> {
356
+ /** 방향. vertical 은 flex 행 안에서 부모 높이를 채운다 */
357
+ orientation?: 'horizontal' | 'vertical';
358
+ /** 시각적 구분만 하고 의미가 없으면 true — 스크린리더에서 숨긴다 */
359
+ decorative?: boolean;
360
+ /**
361
+ * 가운데에 표시할 텍스트 (예: "또는"). horizontal 에서만 쓴다.
362
+ * separator 역할의 자식은 스크린리더가 읽지 않으므로, 텍스트가 있으면 선만 숨기고 텍스트는 읽히게 둔다.
363
+ */
364
+ children?: ReactNode;
365
+ }
366
+ declare const Divider: react.ForwardRefExoticComponent<DividerProps & react.RefAttributes<HTMLDivElement>>;
367
+
339
368
  interface InputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size'> {
340
369
  /** 크기 */
341
370
  size?: 'sm' | 'md' | 'lg';
@@ -471,6 +500,22 @@ interface SelectProps {
471
500
  }
472
501
  declare const Select: react.ForwardRefExoticComponent<SelectProps & react.RefAttributes<HTMLButtonElement>>;
473
502
 
503
+ interface SkeletonProps extends HTMLAttributes<HTMLSpanElement> {
504
+ /** 모양. text 는 글자 높이(1em), circle 은 width 를 지름으로 쓴다 */
505
+ variant?: 'text' | 'rect' | 'circle';
506
+ /** 너비. 숫자는 px (기본: text·rect 100%, circle 40px) */
507
+ width?: number | string;
508
+ /** 높이. 숫자는 px (기본: text 1em, rect 100px, circle 은 width 와 같음) */
509
+ height?: number | string;
510
+ /** text 에서 여러 줄을 그린다. 마지막 줄은 60% 너비 */
511
+ lines?: number;
512
+ }
513
+ /**
514
+ * 콘텐츠를 불러오는 동안 자리를 표시한다. 장식용이라 스크린리더에서 숨긴다 —
515
+ * 로딩 중인 영역(감싸는 요소)에 `aria-busy="true"` 를 붙여 상태를 알린다.
516
+ */
517
+ declare const Skeleton: react.ForwardRefExoticComponent<SkeletonProps & react.RefAttributes<HTMLSpanElement>>;
518
+
474
519
  interface SpinnerProps extends Omit<HTMLAttributes<HTMLSpanElement>, 'color'> {
475
520
  /** 크기 (sm 16px, md 20px, lg 28px) */
476
521
  size?: 'sm' | 'md' | 'lg';
@@ -620,4 +665,4 @@ interface TypographyProps extends Omit<HTMLAttributes<HTMLElement>, 'color'> {
620
665
  }
621
666
  declare const Typography: react.ForwardRefExoticComponent<TypographyProps & react.RefAttributes<HTMLElement>>;
622
667
 
623
- export { Badge, type BadgeProps, type BestowTheme, Button, type ButtonProps, Card, CardBody, CardFooter, CardHeader, type CardProps, type CardSectionProps, Checkbox, type CheckboxProps, type DeepPartial, Input, type InputProps, type IntentName, Modal, ModalClose, type ModalProps, RadioGroup, type RadioGroupProps, type RadioOption, Select, type SelectOption, type SelectProps, Spinner, type SpinnerProps, Stack, type StackProps, Switch, type SwitchProps, TextField, type TextFieldProps, Textarea, type TextareaProps, type ThemeInput, type ThemeName, type ThemeOverrides, ThemeProvider, type ThemeProviderProps, type ThemeTokens, type ToastOptions, ToastProvider, type ToastProviderProps, Tooltip, type TooltipProps, Typography, type TypographyProps, type TypographyVariant, contrastRatio, createIntentColors, createTheme, themeClass, usePortalClassName, usePortalProps, useTheme, useToast, vars };
668
+ export { Avatar, type AvatarProps, Badge, type BadgeProps, type BestowTheme, Button, type ButtonProps, Card, CardBody, CardFooter, CardHeader, type CardProps, type CardSectionProps, Checkbox, type CheckboxProps, type DeepPartial, Divider, type DividerProps, Input, type InputProps, type IntentName, Modal, ModalClose, type ModalProps, RadioGroup, type RadioGroupProps, type RadioOption, Select, type SelectOption, type SelectProps, Skeleton, type SkeletonProps, Spinner, type SpinnerProps, Stack, type StackProps, Switch, type SwitchProps, TextField, type TextFieldProps, Textarea, type TextareaProps, type ThemeInput, type ThemeName, type ThemeOverrides, ThemeProvider, type ThemeProviderProps, type ThemeTokens, type ToastOptions, ToastProvider, type ToastProviderProps, Tooltip, type TooltipProps, Typography, type TypographyProps, type TypographyVariant, contrastRatio, createIntentColors, createTheme, themeClass, usePortalClassName, usePortalProps, useTheme, useToast, vars };