@olundot/ui 0.20.0-next.6 → 0.20.0-next.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # @olundot/ui
2
2
 
3
+ ## 0.20.0-next.7
4
+
5
+ ### Minor Changes
6
+
7
+ - dcd6c46: `Alert`의 기본 표식이 상태 점에서 상태별 아이콘으로 바뀐다. `info`는 `Info`, `success`는 `CircleCheck`, `warning`은 `TriangleAlert`, `error`는 `CircleAlert`이고 16px, 상태 색이다. 아이콘은 `aria-hidden`이다. 점을 유지하려면 `marker="dot"`을 준다. `AlertMarker` 타입을 내보낸다.
8
+
9
+ `Alert`의 `title`이 필수다. 호환성을 깨는 변경이다. `title` 없는 `Alert`는 타입 오류가 난다. `InlineAlert`는 그대로다.
10
+
11
+ 배치를 Figma Alert에 맞췄다. 여백은 위아래 8px, 좌우 10px, 모서리는 `--radius-md`다. 제목은 14px `--fw-medium`, 줄 높이 21px이고 표식은 제목 첫 줄 가운데에 놓인다. `subtle` 본문은 `--fs-sm`, `--text-secondary`다. 닫기 버튼은 28px이고 `--bg-surface` 면과 `--border` 테두리를 갖는다.
12
+
13
+ - ffda0cc: 겹침 창 제목을 16px, 굵기 600, 줄 높이 1.5로 통일했다. AlertDialog, ConfirmDialog, 구조형 Dialog와 Sheet는 18px·700에서, `DialogTitle`은 20px·700에서 바뀐다. `SheetTitle`은 크기를 상속하던 것을 16px로 정했다. ActionMenu 메뉴 시트 제목은 15px·600 그대로다.
14
+
15
+ 앱에서 `DialogTitle`이나 `SheetTitle`에 준 `className="text-base font-semibold"`는 지워도 계산 값이 같다.
16
+
3
17
  ## 0.20.0-next.6
4
18
 
5
19
  ### Minor Changes
package/dist/index.d.ts CHANGED
@@ -179,11 +179,14 @@ declare const FileUploadZone: React.ForwardRefExoticComponent<FileUploadZoneProp
179
179
 
180
180
  type AlertVariant = 'info' | 'success' | 'warning' | 'error';
181
181
  type AlertEmphasis = 'subtle' | 'strong';
182
+ type AlertMarker = 'icon' | 'dot';
182
183
  type InlineAlertSurface = 'filled' | 'plain';
183
184
  interface AlertProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title' | 'children'> {
184
185
  variant?: AlertVariant;
185
186
  emphasis?: AlertEmphasis;
186
- title?: ReactNode;
187
+ /** Status mark before the title. `icon` (default) is the status icon, `dot` a small status dot. */
188
+ marker?: AlertMarker;
189
+ title: ReactNode;
187
190
  children: ReactNode;
188
191
  onDismiss?: () => void;
189
192
  }
@@ -2210,4 +2213,4 @@ interface OrganizationLogoProps extends Omit<SVGProps<SVGSVGElement>, "width" |
2210
2213
  }
2211
2214
  declare function OrganizationLogo({ organization, size, className, style, role, "aria-label": ariaLabel, "aria-hidden": ariaHidden, ...props }: OrganizationLogoProps): react_jsx_runtime.JSX.Element;
2212
2215
 
2213
- export { ActionFooter, type ActionFooterAction, type ActionFooterProps, type ActionFooterStatus, ActionMenu, type ActionMenuGroup, type ActionMenuItem, type ActionMenuProps, ActionSheet, type ActionSheetIconProps, type ActionSheetItem, type ActionSheetProps, Alert, AlertDialog, type AlertDialogProps, type AlertDialogTone, type AlertEmphasis, type AlertProps, type AlertVariant, Avatar, AvatarFallback, type AvatarFallbackProps, AvatarImage, Badge, type BadgeProps, type BadgeTone, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, BulkActionBar, type BulkActionBarAction, type BulkActionBarProps, Button, type ButtonProps, type ButtonSize, Card, CardContent, CardDescription, CardFooter, CardHeader, type CardProps, CardProse, CardTitle, type CardVariant, type CardVariantOptions, Checkbox, type CheckboxCheckedState, CheckboxGroup, type CheckboxGroupAppearance, type CheckboxGroupColumns, CheckboxGroupContext, type CheckboxGroupContextValue, type CheckboxGroupDensity, type CheckboxGroupOrientation, type CheckboxGroupProps, type CheckboxProps, type CheckboxSize, Chip, type ChipProps, type ChipSize, type ChipTone, type ChipVariant, ConfirmDialog, type ConfirmDialogProps, ContextMenu, type ContextMenuPosition, type ContextMenuProps, CopyButton, type CopyButtonProps, DataLayout, type DataLayoutProps, DataTable, type DataTableColumn, type DataTableLinkProps, type DataTableMobileCardContent, type DataTableMobileMetaLine, type DataTableProps, type DataTableSort, type DataTableVirtualHandle, type DataTableVirtualOptions, type DataTableVirtualRange, DetailLayout, type DetailLayoutProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogEyebrow, DialogFooter, DialogHeader, type DialogMobilePresentation, DialogOverlay, DialogPortal, type DialogProps, DialogRawContent, type DialogSize, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, type EmptyStateLayout, type EmptyStateProps, type EmptyStateSize, type EmptyStateTone, type EmptyStateVariantOptions, ErrorState, type ErrorStateProps, FileUploadZone, type FileUploadZoneProps, FilterToolbar, type FilterToolbarCollapseBelow, type FilterToolbarProps, FormField, type FormFieldProps, type FormFieldRenderProps, FormLayout, type FormLayoutProps, type FormLayoutSection, FormModal, type FormModalProps, IconButton, type IconButtonBadgeTone, type IconButtonProps, type IconButtonSize, InfoModal, type InfoModalProps, InlineAlert, type InlineAlertProps, type InlineAlertSurface, Input, type InputProps, type InputSize, type InputSizeLegacy, type InputState, Label, type LabelProps, ListCard, type ListCardActions, type ListCardProps, ModeToggle, type ModeToggleOption, type ModeToggleProps, NotificationBadge, type NotificationBadgePlacement, type NotificationBadgeProps, type NotificationBadgeSize, OTPField, type OTPFieldProps, type OTPFieldSize, OlunLogo, OlunSymbol, type OlunTheme, type OlunThemeDuration, type OlunThemeState, OrganizationLogo, type OrganizationLogoId, type OrganizationLogoProps, type OverlayScrim, PageHeader, type PageHeaderProps, PageSizeSelect, type PageSizeSelectProps, type PageSizeSelectSize, Pagination, type PaginationProps, type PaginationSize, PermissionContext, type PermissionEvaluator, type PermissionFallback, PermissionGuard, type PermissionGuardProps, PermissionProvider, type PermissionProviderProps, type PermissionScope, type PermissionState, Popover, PopoverAnchor, PopoverArrow, PopoverClose, PopoverContent, type PopoverContentProps, type PopoverProps, PopoverTrigger, Progress, type ProgressProps, type ProgressStatus, Radio, RadioGroup, type RadioGroupAppearance, type RadioGroupColumns, type RadioGroupDensity, type RadioGroupOrientation, type RadioGroupProps, type RadioProps, ScrollArea, ScrollBar, SearchField, type SearchFieldProps, type SearchFieldSize, Select, type SelectAppearance, type SelectOption, type SelectProps, type SelectSize, type SelectState, type SelectVariant, type SemanticRole, Separator, type SetOlunThemeOptions, Sheet, SheetBody, SheetClose, SheetContent, SheetDescription, SheetDrawer, type SheetDrawerProps, SheetFooter, SheetHeader, type SheetMotionConfig, type SheetMotionDuration, type SheetMotionEasing, type SheetMotionType, type SheetProps, type SheetSize, SheetTitle, SheetTrigger, Skeleton, type SkeletonProps, SkeletonRow, type SkeletonRowColumn, type SkeletonRowProps, SkeletonText, type SkeletonTextProps, Spinner, type SpinnerProps, StatusBadge, type StatusBadgeEmphasis, type StatusBadgeProps, type StatusBadgeSize, type StatusBadgeStatus, StatusDot, type StatusDotProps, type StatusDotTone, type SurfaceLevel, Switch, type SwitchProps, type TabItem, Tabs, TabsContent, type TabsProps, type TabsVariant, Textarea, type TextareaProps, type TextareaSize, type TextareaSizeLegacy, type TextareaState, ThemeFab, type ThemeFabProps, ThemeToggle, Toast, type ToastAction, type ToastItem, type ToastOptions, ToastProvider, ToastRoot, type ToastVariant, ToastViewport, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, type TreeItemRowVariantProps, type TreeItemState, type TreeNode, TreeView, type TreeViewProps, TwoTierBadge, type TwoTierBadgeEmphasis, type TwoTierBadgeProps, type TwoTierBadgeSize, type TwoTierBadgeTone, type UseOlunThemeValue, WizardLayout, type WizardLayoutProps, type WizardStep, type WizardStepState, actionFooterStatusVariants, actionFooterVariants, buttonVariants, cardVariants, checkboxBoxVariants, checkboxFieldVariants, checkboxGroupBoxVariants, checkboxGroupItemVariants, checkboxGroupVariants, checkboxRootVariants, checkboxVariants, chipCountVariants, chipVariants, cn, dataTableRowVariants, dataTableVariants, emptyStateIconVariants, emptyStateVariants, errorStateVariants, evaluatePermission, fileUploadIconVariants, fileUploadZoneVariants, formFieldControlStackClassName, formFieldDescriptionClassName, formFieldErrorClassName, formFieldLabelClassName, formFieldRequiredClassName, formFieldVariants, getOlunThemeState, getToastDuration, iconButtonBadgeVariants, iconButtonVariants, inputMessageVariants, inputVariants, limitToasts, modeToggleItemVariants, modeToggleVariants, notificationBadgeVariants, otpCellVariants, otpFieldGroupVariants, otpFieldMessageVariants, otpFieldVariants, paginationControlVariants, paginationVariants, radioControlVariants, radioGroupVariants, radioVariants, searchFieldInputVariants, searchFieldVariants, selectMessageVariants, selectVariants, setOlunTheme, skeletonVariants, spinnerVariants, tabsBadgeVariants, tabsListVariants, tabsRootVariants, tabsTriggerVariants, textareaMessageVariants, textareaVariants, toast, toastVariants, toastViewportVariants, treeItemRowVariants, treeViewVariants, useOlunTheme, usePermission };
2216
+ export { ActionFooter, type ActionFooterAction, type ActionFooterProps, type ActionFooterStatus, ActionMenu, type ActionMenuGroup, type ActionMenuItem, type ActionMenuProps, ActionSheet, type ActionSheetIconProps, type ActionSheetItem, type ActionSheetProps, Alert, AlertDialog, type AlertDialogProps, type AlertDialogTone, type AlertEmphasis, type AlertMarker, type AlertProps, type AlertVariant, Avatar, AvatarFallback, type AvatarFallbackProps, AvatarImage, Badge, type BadgeProps, type BadgeTone, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, BulkActionBar, type BulkActionBarAction, type BulkActionBarProps, Button, type ButtonProps, type ButtonSize, Card, CardContent, CardDescription, CardFooter, CardHeader, type CardProps, CardProse, CardTitle, type CardVariant, type CardVariantOptions, Checkbox, type CheckboxCheckedState, CheckboxGroup, type CheckboxGroupAppearance, type CheckboxGroupColumns, CheckboxGroupContext, type CheckboxGroupContextValue, type CheckboxGroupDensity, type CheckboxGroupOrientation, type CheckboxGroupProps, type CheckboxProps, type CheckboxSize, Chip, type ChipProps, type ChipSize, type ChipTone, type ChipVariant, ConfirmDialog, type ConfirmDialogProps, ContextMenu, type ContextMenuPosition, type ContextMenuProps, CopyButton, type CopyButtonProps, DataLayout, type DataLayoutProps, DataTable, type DataTableColumn, type DataTableLinkProps, type DataTableMobileCardContent, type DataTableMobileMetaLine, type DataTableProps, type DataTableSort, type DataTableVirtualHandle, type DataTableVirtualOptions, type DataTableVirtualRange, DetailLayout, type DetailLayoutProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogEyebrow, DialogFooter, DialogHeader, type DialogMobilePresentation, DialogOverlay, DialogPortal, type DialogProps, DialogRawContent, type DialogSize, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, type EmptyStateLayout, type EmptyStateProps, type EmptyStateSize, type EmptyStateTone, type EmptyStateVariantOptions, ErrorState, type ErrorStateProps, FileUploadZone, type FileUploadZoneProps, FilterToolbar, type FilterToolbarCollapseBelow, type FilterToolbarProps, FormField, type FormFieldProps, type FormFieldRenderProps, FormLayout, type FormLayoutProps, type FormLayoutSection, FormModal, type FormModalProps, IconButton, type IconButtonBadgeTone, type IconButtonProps, type IconButtonSize, InfoModal, type InfoModalProps, InlineAlert, type InlineAlertProps, type InlineAlertSurface, Input, type InputProps, type InputSize, type InputSizeLegacy, type InputState, Label, type LabelProps, ListCard, type ListCardActions, type ListCardProps, ModeToggle, type ModeToggleOption, type ModeToggleProps, NotificationBadge, type NotificationBadgePlacement, type NotificationBadgeProps, type NotificationBadgeSize, OTPField, type OTPFieldProps, type OTPFieldSize, OlunLogo, OlunSymbol, type OlunTheme, type OlunThemeDuration, type OlunThemeState, OrganizationLogo, type OrganizationLogoId, type OrganizationLogoProps, type OverlayScrim, PageHeader, type PageHeaderProps, PageSizeSelect, type PageSizeSelectProps, type PageSizeSelectSize, Pagination, type PaginationProps, type PaginationSize, PermissionContext, type PermissionEvaluator, type PermissionFallback, PermissionGuard, type PermissionGuardProps, PermissionProvider, type PermissionProviderProps, type PermissionScope, type PermissionState, Popover, PopoverAnchor, PopoverArrow, PopoverClose, PopoverContent, type PopoverContentProps, type PopoverProps, PopoverTrigger, Progress, type ProgressProps, type ProgressStatus, Radio, RadioGroup, type RadioGroupAppearance, type RadioGroupColumns, type RadioGroupDensity, type RadioGroupOrientation, type RadioGroupProps, type RadioProps, ScrollArea, ScrollBar, SearchField, type SearchFieldProps, type SearchFieldSize, Select, type SelectAppearance, type SelectOption, type SelectProps, type SelectSize, type SelectState, type SelectVariant, type SemanticRole, Separator, type SetOlunThemeOptions, Sheet, SheetBody, SheetClose, SheetContent, SheetDescription, SheetDrawer, type SheetDrawerProps, SheetFooter, SheetHeader, type SheetMotionConfig, type SheetMotionDuration, type SheetMotionEasing, type SheetMotionType, type SheetProps, type SheetSize, SheetTitle, SheetTrigger, Skeleton, type SkeletonProps, SkeletonRow, type SkeletonRowColumn, type SkeletonRowProps, SkeletonText, type SkeletonTextProps, Spinner, type SpinnerProps, StatusBadge, type StatusBadgeEmphasis, type StatusBadgeProps, type StatusBadgeSize, type StatusBadgeStatus, StatusDot, type StatusDotProps, type StatusDotTone, type SurfaceLevel, Switch, type SwitchProps, type TabItem, Tabs, TabsContent, type TabsProps, type TabsVariant, Textarea, type TextareaProps, type TextareaSize, type TextareaSizeLegacy, type TextareaState, ThemeFab, type ThemeFabProps, ThemeToggle, Toast, type ToastAction, type ToastItem, type ToastOptions, ToastProvider, ToastRoot, type ToastVariant, ToastViewport, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, type TreeItemRowVariantProps, type TreeItemState, type TreeNode, TreeView, type TreeViewProps, TwoTierBadge, type TwoTierBadgeEmphasis, type TwoTierBadgeProps, type TwoTierBadgeSize, type TwoTierBadgeTone, type UseOlunThemeValue, WizardLayout, type WizardLayoutProps, type WizardStep, type WizardStepState, actionFooterStatusVariants, actionFooterVariants, buttonVariants, cardVariants, checkboxBoxVariants, checkboxFieldVariants, checkboxGroupBoxVariants, checkboxGroupItemVariants, checkboxGroupVariants, checkboxRootVariants, checkboxVariants, chipCountVariants, chipVariants, cn, dataTableRowVariants, dataTableVariants, emptyStateIconVariants, emptyStateVariants, errorStateVariants, evaluatePermission, fileUploadIconVariants, fileUploadZoneVariants, formFieldControlStackClassName, formFieldDescriptionClassName, formFieldErrorClassName, formFieldLabelClassName, formFieldRequiredClassName, formFieldVariants, getOlunThemeState, getToastDuration, iconButtonBadgeVariants, iconButtonVariants, inputMessageVariants, inputVariants, limitToasts, modeToggleItemVariants, modeToggleVariants, notificationBadgeVariants, otpCellVariants, otpFieldGroupVariants, otpFieldMessageVariants, otpFieldVariants, paginationControlVariants, paginationVariants, radioControlVariants, radioGroupVariants, radioVariants, searchFieldInputVariants, searchFieldVariants, selectMessageVariants, selectVariants, setOlunTheme, skeletonVariants, spinnerVariants, tabsBadgeVariants, tabsListVariants, tabsRootVariants, tabsTriggerVariants, textareaMessageVariants, textareaVariants, toast, toastVariants, toastViewportVariants, treeItemRowVariants, treeViewVariants, useOlunTheme, usePermission };
package/dist/index.js CHANGED
@@ -969,6 +969,7 @@ FileUploadZone.displayName = "FileUploadZone";
969
969
 
970
970
  // src/components/ui/alert.tsx
971
971
  import * as React5 from "react";
972
+ import { CircleAlert, CircleCheck, Info, TriangleAlert, X } from "lucide-react";
972
973
  import { jsx as jsx5, jsxs as jsxs5 } from "react/jsx-runtime";
973
974
  var SEM_FG = {
974
975
  info: "var(--semantic-info-fg)",
@@ -982,29 +983,20 @@ var SEM_BG = {
982
983
  warning: "var(--semantic-warning-bg)",
983
984
  error: "var(--semantic-error-bg)"
984
985
  };
986
+ var MARKER_ICON = {
987
+ info: Info,
988
+ success: CircleCheck,
989
+ warning: TriangleAlert,
990
+ error: CircleAlert
991
+ };
992
+ var TITLE_LINE_HEIGHT = 21;
985
993
  var defaultEmphasis = (v) => v === "error" ? "strong" : "subtle";
986
- function XIcon({ size }) {
987
- return /* @__PURE__ */ jsx5(
988
- "svg",
989
- {
990
- width: size,
991
- height: size,
992
- viewBox: "0 0 24 24",
993
- fill: "none",
994
- stroke: "currentColor",
995
- strokeWidth: 1.75,
996
- strokeLinecap: "round",
997
- strokeLinejoin: "round",
998
- "aria-hidden": "true",
999
- children: /* @__PURE__ */ jsx5("path", { d: "M18 6 6 18M6 6l12 12" })
1000
- }
1001
- );
1002
- }
1003
994
  var Alert = React5.forwardRef(
1004
- ({ variant = "info", emphasis, title, children, onDismiss, style, ...rest }, ref) => {
995
+ ({ variant = "info", emphasis, marker = "icon", title, children, onDismiss, style, ...rest }, ref) => {
1005
996
  const weight = emphasis ?? defaultEmphasis(variant);
1006
997
  const strong = weight === "strong";
1007
998
  const fg = SEM_FG[variant];
999
+ const MarkerIcon = MARKER_ICON[variant];
1008
1000
  return /* @__PURE__ */ jsxs5(
1009
1001
  "div",
1010
1002
  {
@@ -1014,16 +1006,16 @@ var Alert = React5.forwardRef(
1014
1006
  "data-slot": "alert",
1015
1007
  "data-variant": variant,
1016
1008
  "data-emphasis": weight,
1009
+ "data-marker": marker,
1017
1010
  style: {
1018
1011
  display: "flex",
1019
1012
  alignItems: "flex-start",
1020
- gap: 11,
1021
- borderRadius: 10,
1013
+ gap: "var(--space-2)",
1014
+ borderRadius: "var(--radius-md)",
1022
1015
  border: "1px solid " + (strong ? "color-mix(in srgb, " + fg + " 26%, transparent)" : "var(--border)"),
1023
1016
  background: strong ? SEM_BG[variant] : "var(--bg-surface)",
1024
1017
  color: "var(--text-primary)",
1025
- padding: "12px 14px",
1026
- paddingInlineEnd: onDismiss ? 10 : 14,
1018
+ padding: "var(--space-2) 10px",
1027
1019
  ...style
1028
1020
  },
1029
1021
  ...rest,
@@ -1032,42 +1024,49 @@ var Alert = React5.forwardRef(
1032
1024
  "span",
1033
1025
  {
1034
1026
  "aria-hidden": "true",
1035
- "data-slot": "alert-dot",
1027
+ "data-slot": "alert-marker",
1036
1028
  style: {
1037
- marginTop: title ? 5 : 4,
1038
- width: 7,
1039
- height: 7,
1029
+ display: "inline-flex",
1030
+ height: TITLE_LINE_HEIGHT,
1040
1031
  flexShrink: 0,
1041
- borderRadius: 9999,
1042
- background: fg
1043
- }
1032
+ alignItems: "center",
1033
+ justifyContent: "center",
1034
+ color: fg
1035
+ },
1036
+ children: marker === "dot" ? /* @__PURE__ */ jsx5(
1037
+ "span",
1038
+ {
1039
+ "data-slot": "alert-dot",
1040
+ style: { width: 7, height: 7, borderRadius: 9999, background: "currentColor" }
1041
+ }
1042
+ ) : /* @__PURE__ */ jsx5(MarkerIcon, { "data-slot": "alert-icon", size: 16, strokeWidth: 2.25 })
1044
1043
  }
1045
1044
  ),
1046
1045
  /* @__PURE__ */ jsxs5("div", { "data-slot": "alert-content", style: { flex: 1, minWidth: 0 }, children: [
1047
- title ? /* @__PURE__ */ jsx5(
1046
+ /* @__PURE__ */ jsx5(
1048
1047
  "div",
1049
1048
  {
1050
1049
  "data-slot": "alert-title",
1051
1050
  style: {
1052
1051
  fontFamily: "var(--font-sans)",
1053
- fontSize: 13,
1054
- fontWeight: 600,
1055
- lineHeight: 1.35,
1052
+ fontSize: 14,
1053
+ fontWeight: "var(--fw-medium)",
1054
+ lineHeight: TITLE_LINE_HEIGHT + "px",
1056
1055
  color: strong ? fg : "var(--text-primary)"
1057
1056
  },
1058
1057
  children: title
1059
1058
  }
1060
- ) : null,
1059
+ ),
1061
1060
  /* @__PURE__ */ jsx5(
1062
1061
  "div",
1063
1062
  {
1064
1063
  "data-slot": "alert-body",
1065
1064
  style: {
1066
- marginTop: title ? 2 : 0,
1065
+ marginTop: 2,
1067
1066
  fontFamily: "var(--font-sans)",
1068
- fontSize: 12.5,
1069
- lineHeight: 1.45,
1070
- color: strong ? "color-mix(in srgb, " + fg + " 88%, var(--text-primary))" : "var(--text-tertiary)"
1067
+ fontSize: "var(--fs-sm)",
1068
+ lineHeight: "var(--lh-normal)",
1069
+ color: strong ? "color-mix(in srgb, " + fg + " 88%, var(--text-primary))" : "var(--text-secondary)"
1071
1070
  },
1072
1071
  children
1073
1072
  }
@@ -1101,21 +1100,20 @@ function DismissButton({
1101
1100
  style: {
1102
1101
  flexShrink: 0,
1103
1102
  display: "inline-flex",
1104
- width: 24,
1105
- height: 24,
1106
- marginTop: -1,
1103
+ width: 28,
1104
+ height: 28,
1107
1105
  alignItems: "center",
1108
1106
  justifyContent: "center",
1109
1107
  borderRadius: "var(--radius-md)",
1110
- border: 0,
1111
- background: hover ? "var(--action-hover)" : "transparent",
1112
- color: hover ? strong ? fg : "var(--text-primary)" : strong ? "color-mix(in srgb, " + fg + " 70%, transparent)" : "var(--text-tertiary)",
1108
+ border: "1px solid var(--border)",
1109
+ background: hover ? "var(--action-hover)" : "var(--bg-surface)",
1110
+ color: hover ? strong ? fg : "var(--text-primary)" : strong ? "color-mix(in srgb, " + fg + " 70%, transparent)" : "var(--text-secondary)",
1113
1111
  cursor: "pointer",
1114
1112
  outline: "none",
1115
1113
  boxShadow: focus ? "0 0 0 2px var(--focus-ring)" : "none",
1116
1114
  transition: "background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard)"
1117
1115
  },
1118
- children: /* @__PURE__ */ jsx5(XIcon, { size: 15 })
1116
+ children: /* @__PURE__ */ jsx5(X, { "aria-hidden": "true", size: 15 })
1119
1117
  }
1120
1118
  );
1121
1119
  }
@@ -3908,7 +3906,7 @@ function OverlayGrabber({
3908
3906
  }
3909
3907
 
3910
3908
  // src/components/ui/overlay-close-button.tsx
3911
- import { X } from "lucide-react";
3909
+ import { X as X2 } from "lucide-react";
3912
3910
  import { Dialog as DialogPrimitive } from "radix-ui";
3913
3911
 
3914
3912
  // src/components/ui/icon-button.tsx
@@ -4106,7 +4104,7 @@ function OverlayCloseButton({
4106
4104
  label = "\uB2EB\uAE30",
4107
4105
  className
4108
4106
  }) {
4109
- return /* @__PURE__ */ jsx23(DialogPrimitive.Close, { asChild: true, children: /* @__PURE__ */ jsx23(IconButton, { appearance: "ghost", size: "md", icon: X, "aria-label": label, className }) });
4107
+ return /* @__PURE__ */ jsx23(DialogPrimitive.Close, { asChild: true, children: /* @__PURE__ */ jsx23(IconButton, { appearance: "ghost", size: "md", icon: X2, "aria-label": label, className }) });
4110
4108
  }
4111
4109
 
4112
4110
  // src/components/ui/overlay-anatomy.tsx
@@ -4233,7 +4231,7 @@ function focusBodyInput(event) {
4233
4231
  }
4234
4232
  }
4235
4233
  var headingClassName = {
4236
- title: "text-[18px] font-bold leading-snug text-foreground",
4234
+ title: "text-base font-semibold leading-normal text-foreground",
4237
4235
  menu: "text-[15px] font-semibold leading-snug text-foreground"
4238
4236
  };
4239
4237
  var descriptionClassName = {
@@ -4665,7 +4663,7 @@ function SheetTitle({
4665
4663
  SheetPrimitive.Title,
4666
4664
  {
4667
4665
  "data-slot": "sheet-title",
4668
- className: cn("font-semibold text-foreground", className),
4666
+ className: cn("text-base font-semibold leading-normal text-foreground", className),
4669
4667
  ...props
4670
4668
  }
4671
4669
  );
@@ -4912,7 +4910,7 @@ var DialogTitle = React26.forwardRef(({ className, ...props }, ref) => /* @__PUR
4912
4910
  {
4913
4911
  ref,
4914
4912
  className: cn(
4915
- "text-xl font-bold leading-tight tracking-tight text-foreground",
4913
+ "text-base font-semibold leading-normal text-foreground",
4916
4914
  className
4917
4915
  ),
4918
4916
  ...props
@@ -5120,7 +5118,7 @@ import { SlidersHorizontal } from "lucide-react";
5120
5118
  // src/components/ui/chip.tsx
5121
5119
  import * as React27 from "react";
5122
5120
  import { cva as cva11 } from "class-variance-authority";
5123
- import { X as X2 } from "lucide-react";
5121
+ import { X as X3 } from "lucide-react";
5124
5122
  import { Slot as Slot2 } from "radix-ui";
5125
5123
  import { jsx as jsx30, jsxs as jsxs26 } from "react/jsx-runtime";
5126
5124
  var chipVariants = cva11(
@@ -5271,7 +5269,7 @@ var Chip = React27.forwardRef(
5271
5269
  disabled,
5272
5270
  onClick,
5273
5271
  className: "inline-flex size-[var(--space-4)] items-center justify-center rounded-[var(--radius-full)] text-text-tertiary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--focus-ring)]",
5274
- children: /* @__PURE__ */ jsx30(X2, { "aria-hidden": "true", size: 14, strokeWidth: 2.25 })
5272
+ children: /* @__PURE__ */ jsx30(X3, { "aria-hidden": "true", size: 14, strokeWidth: 2.25 })
5275
5273
  }
5276
5274
  )
5277
5275
  ]
@@ -7805,7 +7803,7 @@ function ContextMenu({
7805
7803
 
7806
7804
  // src/components/ui/bulk-action-bar.tsx
7807
7805
  import * as React34 from "react";
7808
- import { X as X3 } from "lucide-react";
7806
+ import { X as X4 } from "lucide-react";
7809
7807
  import { jsx as jsx39, jsxs as jsxs35 } from "react/jsx-runtime";
7810
7808
  function ActionButton({ action }) {
7811
7809
  const danger = action.variant === "destructive";
@@ -7890,7 +7888,7 @@ function ClearButton({ onClear }) {
7890
7888
  justifyContent: "center",
7891
7889
  borderRadius: "var(--radius-md)"
7892
7890
  },
7893
- children: /* @__PURE__ */ jsx39(X3, { size: 16, strokeWidth: 1.75, "aria-hidden": "true" })
7891
+ children: /* @__PURE__ */ jsx39(X4, { size: 16, strokeWidth: 1.75, "aria-hidden": "true" })
7894
7892
  }
7895
7893
  );
7896
7894
  }
@@ -10310,7 +10308,7 @@ OTPField.displayName = "OTPField";
10310
10308
 
10311
10309
  // src/components/ui/search-field.tsx
10312
10310
  import * as React47 from "react";
10313
- import { Search, X as X4 } from "lucide-react";
10311
+ import { Search, X as X5 } from "lucide-react";
10314
10312
  import { cva as cva23 } from "class-variance-authority";
10315
10313
  import { jsx as jsx59, jsxs as jsxs47 } from "react/jsx-runtime";
10316
10314
  var searchFieldVariants = cva23("relative flex w-full items-center", {
@@ -10457,7 +10455,7 @@ var SearchField = React47.forwardRef(
10457
10455
  "data-slot": "search-field-clear",
10458
10456
  className: "absolute right-[8px] top-1/2 inline-flex size-[var(--space-4)] -translate-y-1/2 cursor-pointer items-center justify-center rounded-[var(--radius-full)] text-text-tertiary transition-colors hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--focus-ring)]",
10459
10457
  onClick: clearInput,
10460
- children: /* @__PURE__ */ jsx59(X4, { "aria-hidden": "true", size: 16, strokeWidth: 1.75 })
10458
+ children: /* @__PURE__ */ jsx59(X5, { "aria-hidden": "true", size: 16, strokeWidth: 1.75 })
10461
10459
  }
10462
10460
  ) : null
10463
10461
  ]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@olundot/ui",
3
- "version": "0.20.0-next.6",
3
+ "version": "0.20.0-next.7",
4
4
  "description": "OLUN. shared React UI components built on OLUN design tokens",
5
5
  "license": "MIT",
6
6
  "keywords": [