refactor: update layout structure in SubviewLayout and enhance renderValue type in ResponsiveSelect
- Modified SubviewLayout to use a div wrapper for improved layout management and added overflow handling. - Updated the renderValue prop type in ResponsiveSelect to accept a ResponsiveSelectItem instead of a string for better type safety. Signed-off-by: Innei <tukon479@gmail.com>
This commit is contained in:
parent
3578188e02
commit
b6bccdf820
|
|
@ -17,7 +17,7 @@ export const SubviewLayout = () => {
|
|||
})
|
||||
|
||||
return (
|
||||
<>
|
||||
<div className="flex h-svh flex-col">
|
||||
<HeaderTopReturnBackButton className="fixed z-[11] m-3" />
|
||||
|
||||
<m.div
|
||||
|
|
@ -38,8 +38,9 @@ export const SubviewLayout = () => {
|
|||
</div>
|
||||
<div />
|
||||
</m.div>
|
||||
|
||||
<Outlet />
|
||||
</>
|
||||
<div className="h-0 flex-1 overflow-y-auto">
|
||||
<Outlet />
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ export interface ResponsiveSelectProps {
|
|||
onValueChange?: (value: string) => void
|
||||
placeholder?: string
|
||||
items: ResponsiveSelectItem[]
|
||||
renderValue?: (value: string) => React.ReactNode
|
||||
renderValue?: (item: ResponsiveSelectItem) => React.ReactNode
|
||||
renderItem?: (item: ResponsiveSelectItem) => React.ReactNode
|
||||
size?: "sm" | "default"
|
||||
|
||||
|
|
@ -69,7 +69,8 @@ export const ResponsiveSelect = ({
|
|||
)}
|
||||
>
|
||||
<span className="flex">
|
||||
{(renderValue?.(valueInner) ?? valueToLabelMap[valueInner]) || (
|
||||
{(renderValue?.(items.find((item) => item.value === valueInner)!) ??
|
||||
valueToLabelMap[valueInner]) || (
|
||||
<span className="text-text-tertiary">{placeholder}</span>
|
||||
)}
|
||||
</span>
|
||||
|
|
|
|||
Loading…
Reference in New Issue