Migrate to a monorepo setup - step 1 * Move web to subfolder /apps/scandic-web * Yarn + transitive deps - Move to yarn - design-system package removed for now since yarn doesn't support the parameter for token (ie project currently broken) - Add missing transitive dependencies as Yarn otherwise prevents these imports - VS Code doesn't pick up TS path aliases unless you open /apps/scandic-web instead of root (will be fixed with monorepo) * Pin framer-motion to temporarily fix typing issue https://github.com/adobe/react-spectrum/issues/7494 * Pin zod to avoid typ error There seems to have been a breaking change in the types returned by zod where error is now returned as undefined instead of missing in the type. We should just handle this but to avoid merge conflicts just pin the dependency for now. * Pin react-intl version Pin version of react-intl to avoid tiny type issue where formatMessage does not accept a generic any more. This will be fixed in a future commit, but to avoid merge conflicts just pin for now. * Pin typescript version Temporarily pin version as newer versions as stricter and results in a type error. Will be fixed in future commit after merge. * Setup workspaces * Add design-system as a monorepo package * Remove unused env var DESIGN_SYSTEM_ACCESS_TOKEN * Fix husky for monorepo setup * Update netlify.toml * Add lint script to root package.json * Add stub readme * Fix react-intl formatMessage types * Test netlify.toml in root * Remove root toml * Update netlify.toml publish path * Remove package-lock.json * Update build for branch/preview builds Approved-by: Linus Flood
364 lines
8.3 KiB
TypeScript
364 lines
8.3 KiB
TypeScript
import {
|
|
AccesoriesIcon,
|
|
AccessibilityIcon,
|
|
AccountCircleIcon,
|
|
AirIcon,
|
|
AirplaneIcon,
|
|
ArrowRightIcon,
|
|
BarIcon,
|
|
BedIcon,
|
|
BikingIcon,
|
|
BusinessIcon,
|
|
CalendarIcon,
|
|
CameraIcon,
|
|
CellphoneIcon,
|
|
CheckCircleIcon,
|
|
CheckIcon,
|
|
ChevronDownIcon,
|
|
ChevronDownSmallIcon,
|
|
ChevronLeftIcon,
|
|
ChevronLeftSmallIcon,
|
|
ChevronRightIcon,
|
|
ChevronRightSmallIcon,
|
|
ChevronUpIcon,
|
|
ChevronUpSmallIcon,
|
|
CloseIcon,
|
|
CloseLargeIcon,
|
|
CoffeeAltIcon,
|
|
CoinIcon,
|
|
ConciergeIcon,
|
|
ConvenienceStore24hIcon,
|
|
CoolIcon,
|
|
CroissantCoffeeEggIcon,
|
|
CrossCircle,
|
|
CrossCircleOutlineIcon,
|
|
CulturalIcon,
|
|
CutleryOneIcon,
|
|
CutleryTwoIcon,
|
|
DiamondIcon,
|
|
DirectionsIcon,
|
|
DoorOpenIcon,
|
|
DresserIcon,
|
|
ElectricBikeIcon,
|
|
ElectricCarIcon,
|
|
EmailIcon,
|
|
EyeHideIcon,
|
|
EyeShowIcon,
|
|
FacebookIcon,
|
|
FanIcon,
|
|
FitnessIcon,
|
|
FootstoolIcon,
|
|
GalleryIcon,
|
|
GarageIcon,
|
|
GiftIcon,
|
|
GiftOpenIcon,
|
|
GlobeIcon,
|
|
GolfIcon,
|
|
GroceriesIcon,
|
|
HandKeyIcon,
|
|
HangerAltIcon,
|
|
HangerIcon,
|
|
HeatIcon,
|
|
HotelNightIcon,
|
|
HouseIcon,
|
|
ImageIcon,
|
|
InfoCircleIcon,
|
|
InstagramIcon,
|
|
KayakingIcon,
|
|
KettleIcon,
|
|
KidsIcon,
|
|
KidsMocktailIcon,
|
|
LampIcon,
|
|
LaundryMachineIcon,
|
|
LinkIcon,
|
|
LocalBarIcon,
|
|
LocationIcon,
|
|
LockIcon,
|
|
MagicWandIcon,
|
|
MapIcon,
|
|
MinusIcon,
|
|
MoneyHandIcon,
|
|
MuseumIcon,
|
|
NatureIcon,
|
|
NightlifeIcon,
|
|
NoSmokingIcon,
|
|
OpenInNewIcon,
|
|
OpenInNewSmallIcon,
|
|
OutdoorFurnitureIcon,
|
|
ParkingIcon,
|
|
People2Icon,
|
|
PersonIcon,
|
|
PetsIcon,
|
|
PhoneIcon,
|
|
PlusCircleIcon,
|
|
PlusIcon,
|
|
PriceTagIcon,
|
|
RestaurantIcon,
|
|
RoomServiceIcon,
|
|
SaunaIcon,
|
|
SearchIcon,
|
|
ServiceIcon,
|
|
ShoppingIcon,
|
|
SkateboardingIcon,
|
|
SmokingIcon,
|
|
SnowflakeIcon,
|
|
SpaIcon,
|
|
StarFilledIcon,
|
|
StreetIcon,
|
|
SwimIcon,
|
|
ThermostatIcon,
|
|
TrainIcon,
|
|
TripAdvisorIcon,
|
|
TshirtIcon,
|
|
TshirtWashIcon,
|
|
TvCastingIcon,
|
|
VoucherIcon,
|
|
WarningTriangle,
|
|
WifiIcon,
|
|
} from "."
|
|
|
|
import type { FC } from "react"
|
|
|
|
import { IconName, type IconProps } from "@/types/components/icon"
|
|
|
|
export function getIconByIconName(
|
|
icon: IconName | null = null
|
|
): FC<IconProps> | null {
|
|
switch (icon) {
|
|
case IconName.Accesories:
|
|
return AccesoriesIcon
|
|
case IconName.Accessibility:
|
|
return AccessibilityIcon
|
|
case IconName.AccountCircle:
|
|
return AccountCircleIcon
|
|
case IconName.Air:
|
|
return AirIcon
|
|
case IconName.Airplane:
|
|
return AirplaneIcon
|
|
case IconName.ArrowRight:
|
|
return ArrowRightIcon
|
|
case IconName.Bar:
|
|
return BarIcon
|
|
case IconName.Bed:
|
|
return BedIcon
|
|
case IconName.Biking:
|
|
return BikingIcon
|
|
case IconName.Business:
|
|
return BusinessIcon
|
|
case IconName.Calendar:
|
|
return CalendarIcon
|
|
case IconName.Camera:
|
|
return CameraIcon
|
|
case IconName.Cellphone:
|
|
return CellphoneIcon
|
|
case IconName.Check:
|
|
return CheckIcon
|
|
case IconName.CrossCircle:
|
|
return CrossCircle
|
|
case IconName.CrossCircleOutline:
|
|
return CrossCircleOutlineIcon
|
|
case IconName.CheckCircle:
|
|
return CheckCircleIcon
|
|
case IconName.ChevronDown:
|
|
return ChevronDownIcon
|
|
case IconName.ChevronDownSmall:
|
|
return ChevronDownSmallIcon
|
|
case IconName.ChevronLeft:
|
|
return ChevronLeftIcon
|
|
case IconName.ChevronLeftSmall:
|
|
return ChevronLeftSmallIcon
|
|
case IconName.ChevronRight:
|
|
return ChevronRightIcon
|
|
case IconName.ChevronRightSmall:
|
|
return ChevronRightSmallIcon
|
|
case IconName.ChevronUp:
|
|
return ChevronUpIcon
|
|
case IconName.ChevronUpSmall:
|
|
return ChevronUpSmallIcon
|
|
case IconName.Close:
|
|
return CloseIcon
|
|
case IconName.CloseLarge:
|
|
return CloseLargeIcon
|
|
case IconName.ConvenienceStore24h:
|
|
return ConvenienceStore24hIcon
|
|
case IconName.Cool:
|
|
return CoolIcon
|
|
case IconName.Coin:
|
|
return CoinIcon
|
|
case IconName.CoffeeAlt:
|
|
return CoffeeAltIcon
|
|
case IconName.Concierge:
|
|
return ConciergeIcon
|
|
case IconName.CroissantCoffeeEgg:
|
|
return CroissantCoffeeEggIcon
|
|
case IconName.Cultural:
|
|
return CulturalIcon
|
|
case IconName.CutleryOne:
|
|
return CutleryOneIcon
|
|
case IconName.CutleryTwo:
|
|
return CutleryTwoIcon
|
|
case IconName.Diamond:
|
|
return DiamondIcon
|
|
case IconName.Directions:
|
|
return DirectionsIcon
|
|
case IconName.DoorOpen:
|
|
return DoorOpenIcon
|
|
case IconName.Dresser:
|
|
return DresserIcon
|
|
case IconName.ElectricBike:
|
|
return ElectricBikeIcon
|
|
case IconName.ElectricCar:
|
|
return ElectricCarIcon
|
|
case IconName.Email:
|
|
return EmailIcon
|
|
case IconName.EyeHide:
|
|
return EyeHideIcon
|
|
case IconName.EyeShow:
|
|
return EyeShowIcon
|
|
case IconName.Fan:
|
|
return FanIcon
|
|
case IconName.Facebook:
|
|
return FacebookIcon
|
|
case IconName.Fitness:
|
|
return FitnessIcon
|
|
case IconName.Footstool:
|
|
return FootstoolIcon
|
|
case IconName.Gallery:
|
|
return GalleryIcon
|
|
case IconName.Garage:
|
|
return GarageIcon
|
|
case IconName.Gift:
|
|
return GiftIcon
|
|
case IconName.GiftOpen:
|
|
return GiftOpenIcon
|
|
case IconName.Globe:
|
|
return GlobeIcon
|
|
case IconName.Golf:
|
|
return GolfIcon
|
|
case IconName.Groceries:
|
|
return GroceriesIcon
|
|
case IconName.HandKey:
|
|
return HandKeyIcon
|
|
case IconName.Hanger:
|
|
return HangerIcon
|
|
case IconName.HangerAlt:
|
|
return HangerAltIcon
|
|
case IconName.Heat:
|
|
return HeatIcon
|
|
case IconName.HotelNight:
|
|
return HotelNightIcon
|
|
case IconName.House:
|
|
return HouseIcon
|
|
case IconName.Image:
|
|
return ImageIcon
|
|
case IconName.InfoCircle:
|
|
return InfoCircleIcon
|
|
case IconName.Instagram:
|
|
return InstagramIcon
|
|
case IconName.Kayaking:
|
|
return KayakingIcon
|
|
case IconName.Kettle:
|
|
return KettleIcon
|
|
case IconName.Kids:
|
|
return KidsIcon
|
|
case IconName.KidsMocktail:
|
|
return KidsMocktailIcon
|
|
case IconName.Lamp:
|
|
return LampIcon
|
|
case IconName.LaundryMachine:
|
|
return LaundryMachineIcon
|
|
case IconName.Link:
|
|
return LinkIcon
|
|
case IconName.LocalBar:
|
|
return LocalBarIcon
|
|
case IconName.Location:
|
|
return LocationIcon
|
|
case IconName.Lock:
|
|
return LockIcon
|
|
case IconName.Map:
|
|
return MapIcon
|
|
case IconName.Minus:
|
|
return MinusIcon
|
|
case IconName.MagicWand:
|
|
return MagicWandIcon
|
|
case IconName.MoneyHand:
|
|
return MoneyHandIcon
|
|
case IconName.Museum:
|
|
return MuseumIcon
|
|
case IconName.Nature:
|
|
return NatureIcon
|
|
case IconName.Nightlife:
|
|
return NightlifeIcon
|
|
case IconName.NoSmoking:
|
|
return NoSmokingIcon
|
|
case IconName.OpenInNew:
|
|
return OpenInNewIcon
|
|
case IconName.OpenInNewSmall:
|
|
return OpenInNewSmallIcon
|
|
case IconName.OutdoorFurniture:
|
|
return OutdoorFurnitureIcon
|
|
case IconName.Parking:
|
|
return ParkingIcon
|
|
case IconName.Person:
|
|
return PersonIcon
|
|
case IconName.People2:
|
|
return People2Icon
|
|
case IconName.Pets:
|
|
return PetsIcon
|
|
case IconName.Phone:
|
|
return PhoneIcon
|
|
case IconName.Plus:
|
|
return PlusIcon
|
|
case IconName.PlusCircle:
|
|
return PlusCircleIcon
|
|
case IconName.PriceTag:
|
|
return PriceTagIcon
|
|
case IconName.Restaurant:
|
|
return RestaurantIcon
|
|
case IconName.RoomService:
|
|
return RoomServiceIcon
|
|
case IconName.Smoking:
|
|
return SmokingIcon
|
|
case IconName.Spa:
|
|
return SpaIcon
|
|
case IconName.Sauna:
|
|
return SaunaIcon
|
|
case IconName.Search:
|
|
return SearchIcon
|
|
case IconName.Service:
|
|
return ServiceIcon
|
|
case IconName.Shopping:
|
|
return ShoppingIcon
|
|
case IconName.Skateboarding:
|
|
return SkateboardingIcon
|
|
case IconName.Snowflake:
|
|
return SnowflakeIcon
|
|
case IconName.StarFilled:
|
|
return StarFilledIcon
|
|
case IconName.Street:
|
|
return StreetIcon
|
|
case IconName.Swim:
|
|
return SwimIcon
|
|
case IconName.Thermostat:
|
|
return ThermostatIcon
|
|
case IconName.Tshirt:
|
|
return TshirtIcon
|
|
case IconName.Train:
|
|
return TrainIcon
|
|
case IconName.Tripadvisor:
|
|
return TripAdvisorIcon
|
|
case IconName.TshirtWash:
|
|
return TshirtWashIcon
|
|
case IconName.TvCasting:
|
|
return TvCastingIcon
|
|
case IconName.WarningTriangle:
|
|
return WarningTriangle
|
|
case IconName.Voucher:
|
|
return VoucherIcon
|
|
case IconName.Wifi:
|
|
return WifiIcon
|
|
default:
|
|
return null
|
|
}
|
|
}
|