chore (SW-834): Upgrade to Next 15 * wip: apply codemod and upgrade swc plugin * wip: design-system to react 19, fix issues from async (search)params * wip: fix remaining issues from codemod serverClient is now async because context use headers() getLang is now async because it uses headers() * Minor cleanup * Inline react-material-symbols package Package is seemingly not maintained any more and doesn't support React 19. This copies the package source into `design-system`, makes the necessary changes for 19 and export it for others to use. * Fix missing awaits * Disable modal exit animations Enabling modal exit animations via isExiting prop is causing modals to be rendered in "hidden" state and never unmount. Seems to be an issue with react-aria-components, see https://github.com/adobe/react-spectrum/issues/7563. Can probably be fixed by rewriting to a solution similar to https://react-spectrum.adobe.com/react-aria/examples/framer-modal-sheet.html * Remove unstable cache implementation and use in memory cache locally * Fix ref type in SelectFilter * Use cloneElement to add key prop to element Approved-by: Linus Flood
179 lines
10 KiB
JSON
179 lines
10 KiB
JSON
{
|
|
"name": "@scandic-hotels/design-system",
|
|
"private": true,
|
|
"version": "1.0.0-beta.1",
|
|
"type": "module",
|
|
"exports": {
|
|
"./Button": "./dist/components/Button/index.js",
|
|
"./Card": "./dist/components/Card/index.js",
|
|
"./ChipButton": "./dist/components/ChipButton/index.js",
|
|
"./ChipLink": "./dist/components/ChipLink/index.js",
|
|
"./Chips": "./dist/components/Chips/index.js",
|
|
"./Select": "./dist/components/Select/index.js",
|
|
"./Typography": "./dist/components/Typography/index.js",
|
|
"./RegularRateCard": "./dist/components/RateCard/Regular/index.js",
|
|
"./CampaignRateCard": "./dist/components/RateCard/Campaign/index.js",
|
|
"./CodeRateCard": "./dist/components/RateCard/Code/index.js",
|
|
"./PointsRateCard": "./dist/components/RateCard/Points/index.js",
|
|
"./NoRateAvailableCard": "./dist/components/RateCard/NoRateAvailable/index.js",
|
|
"./IconButton": "./dist/components/IconButton/index.js",
|
|
"./Icons": "./dist/components/Icons/index.js",
|
|
"./Icons/BathroomCabinetIcon": "./dist/components/Icons/Nucleo/Amenities_Facilities/bathroom-cabinet-2.js",
|
|
"./Icons/BedHotelIcon": "./dist/components/Icons/Customised/Amenities_Facilities/BedHotel.js",
|
|
"./Icons/BedIcon": "./dist/components/Icons/Illustrations/Bed.js",
|
|
"./Icons/BouquetIcon": "./dist/components/Icons/Nucleo/Benefits/bouquet.js",
|
|
"./Icons/BowlingPinsIcon": "./dist/components/Icons/Nucleo/Experiences/bowling-pins.js",
|
|
"./Icons/BunkBedIcon": "./dist/components/Icons/Customised/Amenities_Facilities/MdiBunkBedOutline.js",
|
|
"./Icons/ChipsIcon": "./dist/components/Icons/Nucleo/Food/chips-3.js",
|
|
"./Icons/CoinIcon": "./dist/components/Icons/Illustrations/Coin.js",
|
|
"./Icons/ConferenceRoomIcon": "./dist/components/Icons/Nucleo/Amenities_Facilities/conference-room.js",
|
|
"./Icons/CoolingIcon": "./dist/components/Icons/Customised/Amenities_Facilities/Cooling.js",
|
|
"./Icons/CouchTableIcon": "./dist/components/Icons/Customised/Amenities_Facilities/CouchTable.js",
|
|
"./Icons/CroissantCoffeeEggIcon": "./dist/components/Icons/Illustrations/CroissantCoffeeEgg.js",
|
|
"./Icons/CutleryOneIcon": "./dist/components/Icons/Illustrations/CutleryOne.js",
|
|
"./Icons/CutleryTwoIcon": "./dist/components/Icons/Illustrations/CutleryTwo.js",
|
|
"./Icons/DiamondAddIcon": "./dist/components/Icons/Customised/Benefits/DiamondAdd.js",
|
|
"./Icons/DiscountIcon": "./dist/components/Icons/Nucleo/Benefits/discount-2-2.js",
|
|
"./Icons/DoorIcon": "./dist/components/Icons/Nucleo/Amenities_Facilities/door-2.js",
|
|
"./Icons/DowntownCamperIcon": "./dist/components/Icons/Logos/DowntownCamper.js",
|
|
"./Icons/FacebookIcon": "./dist/components/Icons/Customised/Socials/Facebook.js",
|
|
"./Icons/FootStoolIcon": "./dist/components/Icons/Customised/Amenities_Facilities/FootStool.js",
|
|
"./Icons/GiftOpenIcon": "./dist/components/Icons/Illustrations/GiftOpen.js",
|
|
"./Icons/GrandHotelOsloIcon": "./dist/components/Icons/Logos/GrandHotelOslo.js",
|
|
"./Icons/HairdryerIcon": "./dist/components/Icons/Customised/Amenities_Facilities/Hairdryer.js",
|
|
"./Icons/HairdresserIcon": "./dist/components/Icons/Nucleo/Amenities_Facilities/hairdresser-1.js",
|
|
"./Icons/HandKeyIcon": "./dist/components/Icons/Illustrations/HandKey.js",
|
|
"./Icons/HandSoapIcon": "./dist/components/Icons/Customised/Amenities_Facilities/HandSoap.js",
|
|
"./Icons/HaymarketIcon": "./dist/components/Icons/Logos/Haymarket.js",
|
|
"./Icons/HotelNightIcon": "./dist/components/Icons/Illustrations/HotelNight.js",
|
|
"./Icons/HotelNorgeIcon": "./dist/components/Icons/Logos/HotelNorge.js",
|
|
"./Icons/IceMachineIcon": "./dist/components/Icons/Customised/Amenities_Facilities/IceMachine.js",
|
|
"./Icons/InstagramIcon": "./dist/components/Icons/Customised/Socials/Instagram.js",
|
|
"./Icons/KidsIcon": "./dist/components/Icons/Illustrations/Kids.js",
|
|
"./Icons/KidsMocktailIcon": "./dist/components/Icons/Illustrations/KidsMocktail.js",
|
|
"./Icons/MagicWandIcon": "./dist/components/Icons/Illustrations/MagicWand.js",
|
|
"./Icons/MarskiLogoIcon": "./dist/components/Icons/Logos/MarskiLogo.js",
|
|
"./Icons/MassageIcon": "./dist/components/Icons/Customised/Amenities_Facilities/Massage.js",
|
|
"./Icons/MaterialIcon": "./dist/components/Icons/MaterialIcon/index.js",
|
|
"./Icons/MaterialIcon/MaterialSymbol": "./dist/components/Icons/MaterialIcon/MaterialSymbol/index.js",
|
|
"./Icons/MinimizeIcon": "./dist/components/Icons/Customised/UI/Minimize.js",
|
|
"./Icons/MirrorIcon": "./dist/components/Icons/Customised/Amenities_Facilities/Mirror.js",
|
|
"./Icons/MoneyHandIcon": "./dist/components/Icons/Illustrations/MoneyHand.js",
|
|
"./Icons/BedBunkExtraIcon": "./dist/components/Icons/Illustrations/BedBunkExtra.js",
|
|
"./Icons/BedGenericIcon": "./dist/components/Icons/Illustrations/BedGeneric.js",
|
|
"./Icons/BedBunkIcon": "./dist/components/Icons/Illustrations/BedBunk.js",
|
|
"./Icons/HotelLogoIcon": "./dist/components/Icons/Logos/index.js",
|
|
"./Icons/BedKingIcon": "./dist/components/Icons/Illustrations/BedKing.js",
|
|
"./Icons/BedQueenIcon": "./dist/components/Icons/Illustrations/BedQueen.js",
|
|
"./Icons/BedSofaIcon": "./dist/components/Icons/Illustrations/BedSofa.js",
|
|
"./Icons/BedSofaExtraIcon": "./dist/components/Icons/Illustrations/BedSofaExtra.js",
|
|
"./Icons/BedTwinIcon": "./dist/components/Icons/Illustrations/BedTwin.js",
|
|
"./Icons/BedWallExtraIcon": "./dist/components/Icons/Illustrations/BedWallExtra.js",
|
|
"./Icons/BreakfastBuffetIcon": "./dist/components/Icons/Illustrations/BreakfastBuffet.js",
|
|
"./Icons/NoBreakfastBuffetIcon": "./dist/components/Icons/Illustrations/NoBreakfastBuffet.js",
|
|
"./Icons/BedSingleIcon": "./dist/components/Icons/Illustrations/BedSingle.js",
|
|
"./Icons/BedPullOutIcon": "./dist/components/Icons/Illustrations/BedPullOut.js",
|
|
"./Icons/BedPullOutExtraIcon": "./dist/components/Icons/Illustrations/BedPullOutExtra.js",
|
|
"./Icons/MovingBedsIcon": "./dist/components/Icons/Customised/Amenities_Facilities/MovingBeds.js",
|
|
"./Icons/PalmTreeIcon": "./dist/components/Icons/Nucleo/Experiences/palm-tree-2.js",
|
|
"./Icons/PopcornIcon": "./dist/components/Icons/Nucleo/Food/popcorn-2.js",
|
|
"./Icons/RecordPlayerIcon": "./dist/components/Icons/Nucleo/Amenities_Facilities/record-player-3.js",
|
|
"./Icons/RoadIcon": "./dist/components/Icons/Customised/Amenities_Facilities/Road.js",
|
|
"./Icons/RugIcon": "./dist/components/Icons/Customised/Amenities_Facilities/Rug.js",
|
|
"./Icons/SafetyBoxIcon": "./dist/components/Icons/Customised/Amenities_Facilities/SafetyBox.js",
|
|
"./Icons/ScandicGoIcon": "./dist/components/Icons/Logos/ScandicGoLogo.js",
|
|
"./Icons/ScandicLogoIcon": "./dist/components/Icons/Logos/ScandicLogo.js",
|
|
"./Icons/SlippersIcon": "./dist/components/Icons/Customised/Amenities_Facilities/Slippers.js",
|
|
"./Icons/SurpriseIcon": "./dist/components/Icons/Illustrations/Surprise.js",
|
|
"./Icons/ToiletIcon": "./dist/components/Icons/Nucleo/Amenities_Facilities/toilet-2.js",
|
|
"./Icons/TowelIcon": "./dist/components/Icons/Customised/Amenities_Facilities/Towel.js",
|
|
"./Icons/TripadvisorIcon": "./dist/components/Icons/Customised/Socials/Tripadvisor.js",
|
|
"./Icons/UserPoliceIcon": "./dist/components/Icons/Nucleo/Amenities_Facilities/user-police-2.js",
|
|
"./Icons/ViewIcon": "./dist/components/Icons/Customised/Amenities_Facilities/View.js",
|
|
"./Icons/VoucherIcon": "./dist/components/Icons/Illustrations/Voucher.js",
|
|
"./Icons/WardIcon": "./dist/components/Icons/Customised/Amenities_Facilities/Ward.js",
|
|
"./Icons/WindowNotAvailableIcon": "./dist/components/Icons/Customised/Amenities_Facilities/WindowNotAvailable.js",
|
|
"./Icons/WoodFloorIcon": "./dist/components/Icons/Customised/Amenities_Facilities/WoodFloor.js",
|
|
"./style.css": "./dist/style.css",
|
|
"./base.css": "./dist/base.css",
|
|
"./globals.css": "./dist/globals.css",
|
|
"./impl.css": "./dist/impl.css",
|
|
"./fonts.css": "./dist/fonts.css",
|
|
"./downtown-camper.css": "./dist/styles/downtown-camper.css",
|
|
"./grand-hotel.css": "./dist/styles/grand-hotel.css",
|
|
"./haymarket.css": "./dist/styles/haymarket.css",
|
|
"./hotel-norge.css": "./dist/styles/hotel-norge.css",
|
|
"./marski.css": "./dist/styles/marski.css",
|
|
"./scandic-go.css": "./dist/styles/scandic-go.css",
|
|
"./scandic.css": "./dist/styles/scandic.css"
|
|
},
|
|
"files": [
|
|
"dist"
|
|
],
|
|
"sideEffects": [
|
|
"**/*.css"
|
|
],
|
|
"scripts": {
|
|
"dev": "cd example && vite",
|
|
"generate": "cd generate && jiti generate.ts",
|
|
"format": "prettier . --write",
|
|
"build": "yarn run generate && tsc --p ./tsconfig-build.json && vite build && yarn run format",
|
|
"lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0 && tsc",
|
|
"lint:fix": "eslint . --ext ts,tsx --report-unused-disable-directives --fix --max-warnings 0 && tsc",
|
|
"storybook": "yarn run generate && storybook dev -p 6006",
|
|
"build-storybook": "storybook build",
|
|
"test": "vitest --watch=false",
|
|
"test:watch": "vitest",
|
|
"prepack": "yarn run build",
|
|
"prepare": "husky && yarn run build",
|
|
"check-types": "tsc --noEmit"
|
|
},
|
|
"peerDependencies": {
|
|
"react": "^19.1.0",
|
|
"react-aria-components": "^1.7.1",
|
|
"react-dom": "^19.1.0"
|
|
},
|
|
"devDependencies": {
|
|
"@storybook/addon-essentials": "^8.6.12",
|
|
"@storybook/addon-interactions": "^8.6.12",
|
|
"@storybook/addon-links": "^8.6.12",
|
|
"@storybook/addon-themes": "^8.6.12",
|
|
"@storybook/blocks": "^8.6.12",
|
|
"@storybook/react": "^8.6.12",
|
|
"@storybook/react-vite": "^8.6.12",
|
|
"@storybook/test": "^8.6.12",
|
|
"@types/css-modules": "^1.0.5",
|
|
"@types/node": "^20.17.17",
|
|
"@types/react": "^19",
|
|
"@types/react-dom": "^19",
|
|
"@typescript-eslint/eslint-plugin": "^8.32.0",
|
|
"@typescript-eslint/parser": "^8.32.0",
|
|
"@vitejs/plugin-react": "^4.4.1",
|
|
"class-variance-authority": "^0.7.1",
|
|
"colord": "^2.9.3",
|
|
"copy-to-clipboard": "^3.3.3",
|
|
"deepmerge-ts": "^7.1.5",
|
|
"eslint": "^8",
|
|
"eslint-plugin-react-hooks": "^5.2.0",
|
|
"eslint-plugin-react-refresh": "^0.4.20",
|
|
"eslint-plugin-storybook": "^0.12.0",
|
|
"glob": "^11.0.2",
|
|
"husky": "^9.1.7",
|
|
"jiti": "^1.21.0",
|
|
"lint-staged": "^15.5.2",
|
|
"motion": "^12.10.0",
|
|
"prettier": "^3.5.3",
|
|
"react": "^19.1.0",
|
|
"react-aria-components": "^1.8.0",
|
|
"react-dom": "^19.1.0",
|
|
"rollup": "^4.40.2",
|
|
"rollup-preserve-directives": "^1.1.3",
|
|
"storybook": "^8.6.12",
|
|
"typescript": "^5.8.3",
|
|
"vite": "^6.3.5",
|
|
"vite-plugin-dts": "^4.5.3",
|
|
"vite-plugin-lib-inject-css": "^2.2.2",
|
|
"vitest": "^3.1.3"
|
|
}
|
|
}
|