Files
Anton Gunnarsson 002d093af4 Merged in feat/sw-2863-move-contentstack-router-to-trpc-package (pull request #2389)
feat(SW-2863): Move contentstack router to trpc package

* Add exports to packages and lint rule to prevent relative imports

* Add env to trpc package

* Add eslint to trpc package

* Apply lint rules

* Use direct imports from trpc package

* Add lint-staged config to trpc

* Move lang enum to common

* Restructure trpc package folder structure

* WIP first step

* update internal imports in trpc

* Fix most errors in scandic-web

Just 100 left...

* Move Props type out of trpc

* Fix CategorizedFilters types

* Move more schemas in hotel router

* Fix deps

* fix getNonContentstackUrls

* Fix import error

* Fix entry error handling

* Fix generateMetadata metrics

* Fix alertType enum

* Fix duplicated types

* lint:fix

* Merge branch 'master' into feat/sw-2863-move-contentstack-router-to-trpc-package

* Fix broken imports

* Merge branch 'master' into feat/sw-2863-move-contentstack-router-to-trpc-package


Approved-by: Linus Flood
2025-06-26 07:53:01 +00:00

82 lines
2.1 KiB
TypeScript

import { MembershipLevelEnum } from "@scandic-hotels/common/constants/membershipLevels"
import {
BestFriend,
BestFriendSingle,
CloseFriend,
CloseFriendSingle,
DearFriend,
DearFriendSingle,
GoodFriend,
GoodFriendSingle,
LoyalFriend,
LoyalFriendSingle,
NewFriend,
NewFriendSingle,
TrueFriend,
TrueFriendSingle,
} from "@/components/Levels"
import type { MembershipLevelIconProps } from "@/types/components/myPages/membership"
export default function MembershipLevelIcon({
level,
rows = 2,
color = "pale",
...props
}: MembershipLevelIconProps) {
switch (level) {
case MembershipLevelEnum.L1:
switch (rows) {
case 1:
return <NewFriendSingle color={color} {...props} />
case 2:
return <NewFriend color={color} {...props} />
}
case MembershipLevelEnum.L2:
switch (rows) {
case 1:
return <GoodFriendSingle color={color} {...props} />
case 2:
return <GoodFriend color={color} {...props} />
}
case MembershipLevelEnum.L3:
switch (rows) {
case 1:
return <CloseFriendSingle color={color} {...props} />
case 2:
return <CloseFriend color={color} {...props} />
}
case MembershipLevelEnum.L4:
switch (rows) {
case 1:
return <DearFriendSingle color={color} {...props} />
case 2:
return <DearFriend color={color} {...props} />
}
case MembershipLevelEnum.L5:
switch (rows) {
case 1:
return <LoyalFriendSingle color={color} {...props} />
case 2:
return <LoyalFriend color={color} {...props} />
}
case MembershipLevelEnum.L6:
switch (rows) {
case 1:
return <TrueFriendSingle color={color} {...props} />
case 2:
return <TrueFriend color={color} {...props} />
}
case MembershipLevelEnum.L7:
switch (rows) {
case 1:
return <BestFriendSingle color={color} {...props} />
case 2:
return <BestFriend color={color} {...props} />
}
default:
return null
}
}