feat(admin-ui): Add new feature badge for categories and inventory (#3657)
* Add new feature badge for categories and inventory * Add changeset
This commit is contained in:
@@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
"@medusajs/admin-ui": patch
|
||||||
|
---
|
||||||
|
|
||||||
|
feat(admin-ui): Add new feature badge for categories and inventory
|
||||||
@@ -10,6 +10,7 @@ type BadgeProps = {
|
|||||||
| "ghost"
|
| "ghost"
|
||||||
| "default"
|
| "default"
|
||||||
| "disabled"
|
| "disabled"
|
||||||
|
| "new-feature"
|
||||||
} & React.HTMLAttributes<HTMLDivElement>
|
} & React.HTMLAttributes<HTMLDivElement>
|
||||||
|
|
||||||
const Badge: React.FC<BadgeProps> = ({
|
const Badge: React.FC<BadgeProps> = ({
|
||||||
@@ -27,6 +28,8 @@ const Badge: React.FC<BadgeProps> = ({
|
|||||||
["badge-ghost"]: variant === "ghost",
|
["badge-ghost"]: variant === "ghost",
|
||||||
["badge-default"]: variant === "default",
|
["badge-default"]: variant === "default",
|
||||||
["badge-disabled"]: variant === "disabled",
|
["badge-disabled"]: variant === "disabled",
|
||||||
|
["bg-blue-10 border-blue-30 border font-normal text-blue-50"]:
|
||||||
|
variant === "new-feature",
|
||||||
})
|
})
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import React, { useCallback } from "react"
|
import React, { useCallback } from "react"
|
||||||
import Collapsible from "react-collapsible"
|
import Collapsible from "react-collapsible"
|
||||||
import { NavLink } from "react-router-dom"
|
import { NavLink } from "react-router-dom"
|
||||||
|
import Badge from "../../fundamentals/badge"
|
||||||
|
|
||||||
type SidebarMenuSubitemProps = {
|
type SidebarMenuSubitemProps = {
|
||||||
pageLink: string
|
pageLink: string
|
||||||
@@ -13,6 +14,7 @@ type SidebarMenuItemProps = {
|
|||||||
icon: JSX.Element
|
icon: JSX.Element
|
||||||
triggerHandler: () => any
|
triggerHandler: () => any
|
||||||
subItems?: SidebarMenuSubitemProps[]
|
subItems?: SidebarMenuSubitemProps[]
|
||||||
|
isNew?: boolean
|
||||||
}
|
}
|
||||||
|
|
||||||
const SidebarMenuItem: React.FC<SidebarMenuItemProps> & {
|
const SidebarMenuItem: React.FC<SidebarMenuItemProps> & {
|
||||||
@@ -23,6 +25,7 @@ const SidebarMenuItem: React.FC<SidebarMenuItemProps> & {
|
|||||||
text,
|
text,
|
||||||
triggerHandler,
|
triggerHandler,
|
||||||
subItems = [],
|
subItems = [],
|
||||||
|
isNew,
|
||||||
}: SidebarMenuItemProps) => {
|
}: SidebarMenuItemProps) => {
|
||||||
const styles =
|
const styles =
|
||||||
"group py-1.5 my-0.5 rounded-rounded flex text-grey-50 hover:bg-grey-10 items-center px-2"
|
"group py-1.5 my-0.5 rounded-rounded flex text-grey-50 hover:bg-grey-10 items-center px-2"
|
||||||
@@ -41,6 +44,11 @@ const SidebarMenuItem: React.FC<SidebarMenuItemProps> & {
|
|||||||
<NavLink className={classNameFn} to={pageLink}>
|
<NavLink className={classNameFn} to={pageLink}>
|
||||||
<span className="items-start">{icon}</span>
|
<span className="items-start">{icon}</span>
|
||||||
<span className="group-[.is-active]:text-grey-90 ml-3">{text}</span>
|
<span className="group-[.is-active]:text-grey-90 ml-3">{text}</span>
|
||||||
|
{isNew && (
|
||||||
|
<Badge variant={"new-feature"} className="ml-auto">
|
||||||
|
New
|
||||||
|
</Badge>
|
||||||
|
)}
|
||||||
</NavLink>
|
</NavLink>
|
||||||
}
|
}
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -70,6 +70,7 @@ const Sidebar: React.FC = () => {
|
|||||||
icon={<SwatchIcon size={ICON_SIZE} />}
|
icon={<SwatchIcon size={ICON_SIZE} />}
|
||||||
text={"Categories"}
|
text={"Categories"}
|
||||||
triggerHandler={triggerHandler}
|
triggerHandler={triggerHandler}
|
||||||
|
isNew
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
<SidebarMenuItem
|
<SidebarMenuItem
|
||||||
@@ -84,6 +85,7 @@ const Sidebar: React.FC = () => {
|
|||||||
icon={<BuildingsIcon size={ICON_SIZE} />}
|
icon={<BuildingsIcon size={ICON_SIZE} />}
|
||||||
triggerHandler={triggerHandler}
|
triggerHandler={triggerHandler}
|
||||||
text={"Inventory"}
|
text={"Inventory"}
|
||||||
|
isNew
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
<SidebarMenuItem
|
<SidebarMenuItem
|
||||||
|
|||||||
Reference in New Issue
Block a user