From c3f64590195f3854409356ab4b6469d1543bca07 Mon Sep 17 00:00:00 2001 From: sajjad isvand Date: Wed, 24 Dec 2025 18:36:24 +0330 Subject: [PATCH] feat: add Christmas snowfall effect to widgetify card --- bun.lock | 5 +++++ package.json | 1 + src/layouts/widgetify-card/widgetify.layout.tsx | 2 ++ 3 files changed, 8 insertions(+) diff --git a/bun.lock b/bun.lock index 5c10b801..d94683e9 100644 --- a/bun.lock +++ b/bun.lock @@ -26,6 +26,7 @@ "react-hot-toast": "2.6.0", "react-icons": "5.5.0", "react-joyride": "2.9.3", + "react-snowfall": "^2.4.0", "swiper": "12.0.2", "tailwind-merge": "^3.4.0", "uuid": "13.0.0", @@ -1009,6 +1010,8 @@ "react-dom": ["react-dom@19.2.3", "", { "dependencies": { "scheduler": "^0.27.0" }, "peerDependencies": { "react": "^19.2.3" } }, "sha512-yELu4WmLPw5Mr/lmeEpox5rw3RETacE++JgHqQzd2dg+YbJuat3jH4ingc+WPZhxaoFzdv9y33G+F7Nl5O0GBg=="], + "react-fast-compare": ["react-fast-compare@3.2.2", "", {}, "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ=="], + "react-floater": ["react-floater@0.7.9", "", { "dependencies": { "deepmerge": "^4.3.1", "is-lite": "^0.8.2", "popper.js": "^1.16.0", "prop-types": "^15.8.1", "tree-changes": "^0.9.1" }, "peerDependencies": { "react": "15 - 18", "react-dom": "15 - 18" } }, "sha512-NXqyp9o8FAXOATOEo0ZpyaQ2KPb4cmPMXGWkx377QtJkIXHlHRAGer7ai0r0C1kG5gf+KJ6Gy+gdNIiosvSicg=="], "react-ga4": ["react-ga4@2.1.0", "", {}, "sha512-ZKS7PGNFqqMd3PJ6+C2Jtz/o1iU9ggiy8Y8nUeksgVuvNISbmrQtJiZNvC/TjDsqD0QlU5Wkgs7i+w9+OjHhhQ=="], @@ -1025,6 +1028,8 @@ "react-refresh": ["react-refresh@0.18.0", "", {}, "sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw=="], + "react-snowfall": ["react-snowfall@2.4.0", "", { "dependencies": { "react-fast-compare": "^3.2.2" }, "peerDependencies": { "react": "^16.8 || 17.x || 18.x || 19.x", "react-dom": "^16.8 || 17.x || 18.x || 19.x" } }, "sha512-KAPMiGnxt11PEgC2pTVrTQsvk5jt1kLUtG+ZamiKLphTZ7GiYT1Aa5kX6jp4jKWq1kqJHchnGT9CDm4g86A5Gg=="], + "readable-stream": ["readable-stream@2.3.8", "", { "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", "isarray": "~1.0.0", "process-nextick-args": "~2.0.0", "safe-buffer": "~5.1.1", "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" } }, "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA=="], "readdirp": ["readdirp@4.1.2", "", {}, "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg=="], diff --git a/package.json b/package.json index faab097f..6b09afd6 100644 --- a/package.json +++ b/package.json @@ -39,6 +39,7 @@ "react-hot-toast": "2.6.0", "react-icons": "5.5.0", "react-joyride": "2.9.3", + "react-snowfall": "^2.4.0", "swiper": "12.0.2", "tailwind-merge": "^3.4.0", "uuid": "13.0.0", diff --git a/src/layouts/widgetify-card/widgetify.layout.tsx b/src/layouts/widgetify-card/widgetify.layout.tsx index bfae8cdc..2d4787b8 100644 --- a/src/layouts/widgetify-card/widgetify.layout.tsx +++ b/src/layouts/widgetify-card/widgetify.layout.tsx @@ -8,6 +8,7 @@ import { NotificationCenter } from './notification-center/notification-center' import { TodoOverviewCard } from './overviewCards/todo-overviewCard' import { Pet } from './pets/pet' import { PetProvider } from './pets/pet.context' +import Snowfall from 'react-snowfall' export const WidgetifyLayout = () => { const { user, isAuthenticated } = useAuth() @@ -29,6 +30,7 @@ export const WidgetifyLayout = () => { return (
+ {