From d2a0f6125b9c8dc4ab837596b10cadb5a66bcf00 Mon Sep 17 00:00:00 2001 From: Semir Date: Thu, 15 May 2025 08:40:12 +0200 Subject: [PATCH] feat: Basic Calendar without any functions --- package.json | 3 +- src/app/home/page.tsx | 121 ++++++++++- yarn.lock | 484 +++++++++++++++++++++++++----------------- 3 files changed, 402 insertions(+), 206 deletions(-) diff --git a/package.json b/package.json index 9d282dd..dfd3eef 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,8 @@ "next": "15.3.3", "next-auth": "^5.0.0-beta.25", "next-themes": "^0.4.6", - "react": "^19.0.0", + "react": "^19.1.0", + "react-calendar": "^5.1.0", "react-dom": "^19.0.0", "tailwind-merge": "^3.2.0" }, diff --git a/src/app/home/page.tsx b/src/app/home/page.tsx index 4e6773b..527b231 100644 --- a/src/app/home/page.tsx +++ b/src/app/home/page.tsx @@ -1,15 +1,114 @@ -import { RedirectButton } from '@/components/user/redirect-button'; -import { ThemePicker } from '@/components/user/theme-picker'; +import React from 'react'; + +const Calendar: React.FC = () => { + const today = new Date(); + const currentYear = today.getFullYear(); + const currentMonth = today.getMonth(); + const currentDate = today.getDate(); + + const firstDayMonth = new Date(currentYear, currentMonth, 1); + const lastDayMonth = new Date(currentYear, currentMonth + 1, 0); + const startDay = (firstDayMonth.getDay() + 6) % 7; + const daysMonth = lastDayMonth.getDate(); + + const weeks: (number | null)[][] = []; + let currentDay = 1; + + const firstWeek: (number | null)[] = []; + for (let i = 0; i < 7; i++) { + if (i < startDay) { + firstWeek.push(null); + } else { + firstWeek.push(currentDay); + currentDay++; + } + } + weeks.push(firstWeek); + + while (currentDay <= daysMonth) { + const week: (number | null)[] = []; + for (let i = 0; i < 7; i++) { + if (currentDay <= daysMonth) { + week.push(currentDay); + currentDay++; + } else { + week.push(null); + } + } + weeks.push(week); + } + + const weekdays = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']; -export default function Home() { return ( -
-
{}
-
-

Home

- - -
+
+

+ {new Date(currentYear, currentMonth).toLocaleString('en-EN', { + month: 'long', + year: 'numeric' + })} +

+ + + + {weekdays.map((day, index) => ( + + ))} + + + + {weeks.map((week, weekIndex) => ( + + {week.map((day, dayIndex) => ( + + ))} + + ))} + +
+ {day} +
+ {day && ( +
+ {day} +
+ )} +
); -} +}; + +export default Calendar; \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 3cfc4ae..0430071 100644 --- a/yarn.lock +++ b/yarn.lock @@ -104,20 +104,20 @@ __metadata: linkType: hard "@eslint/config-array@npm:^0.20.0": - version: 0.20.0 - resolution: "@eslint/config-array@npm:0.20.0" + version: 0.20.1 + resolution: "@eslint/config-array@npm:0.20.1" dependencies: "@eslint/object-schema": "npm:^2.1.6" debug: "npm:^4.3.1" minimatch: "npm:^3.1.2" - checksum: 10c0/94bc5d0abb96dc5295ff559925242ff75a54eacfb3576677e95917e42f7175e1c4b87bf039aa2a872f949b4852ad9724bf2f7529aaea6b98f28bb3fca7f1d659 + checksum: 10c0/709108c3925d83c2166024646829ab61ba5fa85c6568daefd32508899f46ed8dc36d7153042df6dcc7e58ad543bc93298b646575daecb5eb4e39a43d838dab42 languageName: node linkType: hard "@eslint/config-helpers@npm:^0.2.1": - version: 0.2.2 - resolution: "@eslint/config-helpers@npm:0.2.2" - checksum: 10c0/98f7cefe484bb754674585d9e73cf1414a3ab4fd0783c385465288d13eb1a8d8e7d7b0611259fc52b76b396c11a13517be5036d1f48eeb877f6f0a6b9c4f03ad + version: 0.2.3 + resolution: "@eslint/config-helpers@npm:0.2.3" + checksum: 10c0/8fd36d7f33013628787947c81894807c7498b31eacf6648efa6d7c7a99aac6bf0d59a8a4d14f968ec2aeebefb76a1a7e4fd4cd556a296323d4711b3d7a7cda22 languageName: node linkType: hard @@ -130,6 +130,15 @@ __metadata: languageName: node linkType: hard +"@eslint/core@npm:^0.15.0": + version: 0.15.0 + resolution: "@eslint/core@npm:0.15.0" + dependencies: + "@types/json-schema": "npm:^7.0.15" + checksum: 10c0/9882c69acfe29743ce473a619d5248589c6687561afaabe8ec8d7ffed07592db16edcca3af022f33ea92fe5f6cfbe3545ee53e89292579d22a944ebaeddcf72d + languageName: node + linkType: hard + "@eslint/eslintrc@npm:3.3.1, @eslint/eslintrc@npm:^3.3.1": version: 3.3.1 resolution: "@eslint/eslintrc@npm:3.3.1" @@ -162,12 +171,12 @@ __metadata: linkType: hard "@eslint/plugin-kit@npm:^0.3.1": - version: 0.3.1 - resolution: "@eslint/plugin-kit@npm:0.3.1" + version: 0.3.2 + resolution: "@eslint/plugin-kit@npm:0.3.2" dependencies: - "@eslint/core": "npm:^0.14.0" + "@eslint/core": "npm:^0.15.0" levn: "npm:^0.4.1" - checksum: 10c0/a75f0b5d38430318a551b83e27bee570747eb50beeb76b03f64b0e78c2c27ef3d284cfda3443134df028db3251719bc0850c105f778122f6ad762d5270ec8063 + checksum: 10c0/e069b0a46eb9fa595a1ac7dea4540a9daa493afba88875ee054e9117609c1c41555e779303cb4cff36cf88f603ba6eba2556a927e8ced77002828206ee17fc7e languageName: node linkType: hard @@ -542,14 +551,14 @@ __metadata: languageName: node linkType: hard -"@napi-rs/wasm-runtime@npm:^0.2.10": - version: 0.2.10 - resolution: "@napi-rs/wasm-runtime@npm:0.2.10" +"@napi-rs/wasm-runtime@npm:^0.2.10, @napi-rs/wasm-runtime@npm:^0.2.11": + version: 0.2.11 + resolution: "@napi-rs/wasm-runtime@npm:0.2.11" dependencies: "@emnapi/core": "npm:^1.4.3" "@emnapi/runtime": "npm:^1.4.3" "@tybys/wasm-util": "npm:^0.9.0" - checksum: 10c0/4dce9bbb94a8969805574e1b55fdbeb7623348190265d77f6507ba32e535610deeb53a33ba0bb8b05a6520f379d418b92e8a01c5cd7b9486b136d2c0c26be0bd + checksum: 10c0/049bd14c58b99fbe0967b95e9921c5503df196b59be22948d2155f17652eb305cff6728efd8685338b855da7e476dd2551fbe3a313fc2d810938f0717478441e languageName: node linkType: hard @@ -1669,104 +1678,104 @@ __metadata: linkType: hard "@typescript-eslint/eslint-plugin@npm:^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0": - version: 8.33.1 - resolution: "@typescript-eslint/eslint-plugin@npm:8.33.1" + version: 8.34.0 + resolution: "@typescript-eslint/eslint-plugin@npm:8.34.0" dependencies: "@eslint-community/regexpp": "npm:^4.10.0" - "@typescript-eslint/scope-manager": "npm:8.33.1" - "@typescript-eslint/type-utils": "npm:8.33.1" - "@typescript-eslint/utils": "npm:8.33.1" - "@typescript-eslint/visitor-keys": "npm:8.33.1" + "@typescript-eslint/scope-manager": "npm:8.34.0" + "@typescript-eslint/type-utils": "npm:8.34.0" + "@typescript-eslint/utils": "npm:8.34.0" + "@typescript-eslint/visitor-keys": "npm:8.34.0" graphemer: "npm:^1.4.0" ignore: "npm:^7.0.0" natural-compare: "npm:^1.4.0" ts-api-utils: "npm:^2.1.0" peerDependencies: - "@typescript-eslint/parser": ^8.33.1 + "@typescript-eslint/parser": ^8.34.0 eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <5.9.0" - checksum: 10c0/35544068f175ca25296b42d0905065b40653a92c62e55414be68f62ddab580d7d768ee3c1276195fd8b8dd49de738ab7b41b8685e6fe2cd341cfca7320569166 + checksum: 10c0/905a05d15f4b0367838ec445f9890321d87470198bf7a589278fc0f38c82cf3ccc1efce4acd3c9c94ee6149d5579ef58606fb7c50f4db50c830de65af8c27c6d languageName: node linkType: hard "@typescript-eslint/parser@npm:^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0": - version: 8.33.1 - resolution: "@typescript-eslint/parser@npm:8.33.1" + version: 8.34.0 + resolution: "@typescript-eslint/parser@npm:8.34.0" dependencies: - "@typescript-eslint/scope-manager": "npm:8.33.1" - "@typescript-eslint/types": "npm:8.33.1" - "@typescript-eslint/typescript-estree": "npm:8.33.1" - "@typescript-eslint/visitor-keys": "npm:8.33.1" + "@typescript-eslint/scope-manager": "npm:8.34.0" + "@typescript-eslint/types": "npm:8.34.0" + "@typescript-eslint/typescript-estree": "npm:8.34.0" + "@typescript-eslint/visitor-keys": "npm:8.34.0" debug: "npm:^4.3.4" peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <5.9.0" - checksum: 10c0/be1c1313c342d956f5adfbd56f79865894cc9cabf93992515a690559c3758538868270671b222f90e4cabc2dcab82256aeb3ccea7502de9cc69e47b9b17ed45f + checksum: 10c0/a829be00ea3455c1e50983c8b44476fbfc9329d019764e407c4d591a95dbd168f83f13e309751242bb4fdc02f89cb51ca5cdc912a12b10f69eebcb1c46dcc39b languageName: node linkType: hard -"@typescript-eslint/project-service@npm:8.33.1": - version: 8.33.1 - resolution: "@typescript-eslint/project-service@npm:8.33.1" +"@typescript-eslint/project-service@npm:8.34.0": + version: 8.34.0 + resolution: "@typescript-eslint/project-service@npm:8.34.0" dependencies: - "@typescript-eslint/tsconfig-utils": "npm:^8.33.1" - "@typescript-eslint/types": "npm:^8.33.1" + "@typescript-eslint/tsconfig-utils": "npm:^8.34.0" + "@typescript-eslint/types": "npm:^8.34.0" debug: "npm:^4.3.4" peerDependencies: typescript: ">=4.8.4 <5.9.0" - checksum: 10c0/b2ff7653aef4648bdff8aafc69b9de434184827216709f8a36427536ac7082a8adf1c5ac12a0a2bb023b46dfad8f6fee238028acc94af622956af7f22362de6f + checksum: 10c0/88e64b8daf7db9603277fcbeb9e585e70ec6d6e34fa10d4b60f421e48081cc7c1f6acb01e1ee9dd95e10c0601f164c1defbfe6c9d1edc9822089bb72dbb0fc80 languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:8.33.1": - version: 8.33.1 - resolution: "@typescript-eslint/scope-manager@npm:8.33.1" +"@typescript-eslint/scope-manager@npm:8.34.0": + version: 8.34.0 + resolution: "@typescript-eslint/scope-manager@npm:8.34.0" dependencies: - "@typescript-eslint/types": "npm:8.33.1" - "@typescript-eslint/visitor-keys": "npm:8.33.1" - checksum: 10c0/03a6fd2b0a8ebeb62083a8f51658f0c42391cbfb632411542569a3a227d53bdb0332026ef4d5adc4780e5350d1d8b89e5b19667ed899afd26506e60c70192692 + "@typescript-eslint/types": "npm:8.34.0" + "@typescript-eslint/visitor-keys": "npm:8.34.0" + checksum: 10c0/35af36bddc4c227cb0bac42192c40b38179ced30866b6aac642781e21c3f3b1c72051eb4f685d7c99517c3296dd6ba83dd8360e4072e8dcf604aae266eece1b4 languageName: node linkType: hard -"@typescript-eslint/tsconfig-utils@npm:8.33.1, @typescript-eslint/tsconfig-utils@npm:^8.33.1": - version: 8.33.1 - resolution: "@typescript-eslint/tsconfig-utils@npm:8.33.1" +"@typescript-eslint/tsconfig-utils@npm:8.34.0, @typescript-eslint/tsconfig-utils@npm:^8.34.0": + version: 8.34.0 + resolution: "@typescript-eslint/tsconfig-utils@npm:8.34.0" peerDependencies: typescript: ">=4.8.4 <5.9.0" - checksum: 10c0/242e8f271d2e6e51446d337e1e59e8c91b66c0241da0fb861f536eb86cc3b53d1727c41e12e1ba070fa2451c8bc517c1ec50decaffa92a7c612b2aba29872777 + checksum: 10c0/98246f89d169d3feb453a6a8552c51d10225cb00c4ff1501549b7846e564ad0e218b644cd94ce779dceed07dcb9035c53fd32186b4c0223b7b2a1f7295b120c3 languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:8.33.1": - version: 8.33.1 - resolution: "@typescript-eslint/type-utils@npm:8.33.1" +"@typescript-eslint/type-utils@npm:8.34.0": + version: 8.34.0 + resolution: "@typescript-eslint/type-utils@npm:8.34.0" dependencies: - "@typescript-eslint/typescript-estree": "npm:8.33.1" - "@typescript-eslint/utils": "npm:8.33.1" + "@typescript-eslint/typescript-estree": "npm:8.34.0" + "@typescript-eslint/utils": "npm:8.34.0" debug: "npm:^4.3.4" ts-api-utils: "npm:^2.1.0" peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <5.9.0" - checksum: 10c0/59843eeb7c652306d130104d7cb0f7dea1cc95a6cf6345609efbae130f24e3c4a9472780332af4247337e152b7955540b15fd9b907c04a5d265b888139818266 + checksum: 10c0/7c25d7f4186411190142390467160e81384d400cfb21183d8a305991c723da0a74e5528cdce30b5f2cb6d9d2f6af7c0981c20c18b45fc084b35632429270ae80 languageName: node linkType: hard -"@typescript-eslint/types@npm:8.33.1, @typescript-eslint/types@npm:^8.33.1": - version: 8.33.1 - resolution: "@typescript-eslint/types@npm:8.33.1" - checksum: 10c0/3083c184c882475eed1f9d1a8961dad30ef834c662bc826ff9a959ff1eed49aad21a73b2b93c4062799feafff5f5f24aebb1df17e198808aa19d4c8de1e64095 +"@typescript-eslint/types@npm:8.34.0, @typescript-eslint/types@npm:^8.34.0": + version: 8.34.0 + resolution: "@typescript-eslint/types@npm:8.34.0" + checksum: 10c0/5d32b2ac03e4cbc1ac1777a53ee83d6d7887a783363bab4f0a6f7550a9e9df0254971cdf71e13b988e2215f2939e7592404856b8acb086ec63c4479c0225c742 languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:8.33.1": - version: 8.33.1 - resolution: "@typescript-eslint/typescript-estree@npm:8.33.1" +"@typescript-eslint/typescript-estree@npm:8.34.0": + version: 8.34.0 + resolution: "@typescript-eslint/typescript-estree@npm:8.34.0" dependencies: - "@typescript-eslint/project-service": "npm:8.33.1" - "@typescript-eslint/tsconfig-utils": "npm:8.33.1" - "@typescript-eslint/types": "npm:8.33.1" - "@typescript-eslint/visitor-keys": "npm:8.33.1" + "@typescript-eslint/project-service": "npm:8.34.0" + "@typescript-eslint/tsconfig-utils": "npm:8.34.0" + "@typescript-eslint/types": "npm:8.34.0" + "@typescript-eslint/visitor-keys": "npm:8.34.0" debug: "npm:^4.3.4" fast-glob: "npm:^3.3.2" is-glob: "npm:^4.0.3" @@ -1775,156 +1784,177 @@ __metadata: ts-api-utils: "npm:^2.1.0" peerDependencies: typescript: ">=4.8.4 <5.9.0" - checksum: 10c0/293a93d25046e05fdc3887232191c3f3ee771c0f5b1426d63deaf0541db1cb80b4307a80805c78b092206c9b267884a7e6b5905dc1b3c26f28bb4de47fd9ee8f + checksum: 10c0/e678982b0009e895aee2b4ccc55bb9ea5473a32e846a97c63d0c6a978c72e1a29e506e6a5f9dda45e9b7803e6c3e3abcdf4c316af1c59146abef4e10e0e94129 languageName: node linkType: hard -"@typescript-eslint/utils@npm:8.33.1": - version: 8.33.1 - resolution: "@typescript-eslint/utils@npm:8.33.1" +"@typescript-eslint/utils@npm:8.34.0": + version: 8.34.0 + resolution: "@typescript-eslint/utils@npm:8.34.0" dependencies: "@eslint-community/eslint-utils": "npm:^4.7.0" - "@typescript-eslint/scope-manager": "npm:8.33.1" - "@typescript-eslint/types": "npm:8.33.1" - "@typescript-eslint/typescript-estree": "npm:8.33.1" + "@typescript-eslint/scope-manager": "npm:8.34.0" + "@typescript-eslint/types": "npm:8.34.0" + "@typescript-eslint/typescript-estree": "npm:8.34.0" peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: ">=4.8.4 <5.9.0" - checksum: 10c0/12263df6eb32e8175236ad899687c062b50cfe4a0e66307d25ad2bf85a3e911faacbfbea4df180a59ebb5913fe1cc1f53fe3914695c7d802dd318bbc846fea26 + checksum: 10c0/d759cf6f1b1b23d7d8ab922345e7b68b7c829f4bad841164312cfa3a3e8e818b962dd0d96c1aca7fd7c10248d56538d9714df5f3cfec9f159ca0a139feac60b9 languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:8.33.1": - version: 8.33.1 - resolution: "@typescript-eslint/visitor-keys@npm:8.33.1" +"@typescript-eslint/visitor-keys@npm:8.34.0": + version: 8.34.0 + resolution: "@typescript-eslint/visitor-keys@npm:8.34.0" dependencies: - "@typescript-eslint/types": "npm:8.33.1" + "@typescript-eslint/types": "npm:8.34.0" eslint-visitor-keys: "npm:^4.2.0" - checksum: 10c0/3eb99072e7c2741d5dfc38945d1e7617b15ed10d06b24658a6e919e4153983b3d3c5f5f775ce140f83a84dbde219948d187de97defb09c1a91f3cf0a96704a94 + checksum: 10c0/d50997e921a178589913d08ffe14d02eba40666c90bdc0c9751f2b87ce500598f64027e2d866dfc975647b2f8b907158503d0722d6b1976c8f1cf5dd8e1d6d69 languageName: node linkType: hard -"@unrs/resolver-binding-darwin-arm64@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-darwin-arm64@npm:1.7.11" +"@unrs/resolver-binding-android-arm-eabi@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-android-arm-eabi@npm:1.9.0" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@unrs/resolver-binding-android-arm64@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-android-arm64@npm:1.9.0" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@unrs/resolver-binding-darwin-arm64@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-darwin-arm64@npm:1.9.0" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@unrs/resolver-binding-darwin-x64@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-darwin-x64@npm:1.7.11" +"@unrs/resolver-binding-darwin-x64@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-darwin-x64@npm:1.9.0" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@unrs/resolver-binding-freebsd-x64@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-freebsd-x64@npm:1.7.11" +"@unrs/resolver-binding-freebsd-x64@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-freebsd-x64@npm:1.9.0" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.7.11" +"@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.9.0" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@unrs/resolver-binding-linux-arm-musleabihf@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-arm-musleabihf@npm:1.7.11" +"@unrs/resolver-binding-linux-arm-musleabihf@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-linux-arm-musleabihf@npm:1.9.0" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@unrs/resolver-binding-linux-arm64-gnu@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-arm64-gnu@npm:1.7.11" +"@unrs/resolver-binding-linux-arm64-gnu@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-linux-arm64-gnu@npm:1.9.0" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@unrs/resolver-binding-linux-arm64-musl@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-arm64-musl@npm:1.7.11" +"@unrs/resolver-binding-linux-arm64-musl@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-linux-arm64-musl@npm:1.9.0" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@unrs/resolver-binding-linux-ppc64-gnu@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-ppc64-gnu@npm:1.7.11" +"@unrs/resolver-binding-linux-ppc64-gnu@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-linux-ppc64-gnu@npm:1.9.0" conditions: os=linux & cpu=ppc64 & libc=glibc languageName: node linkType: hard -"@unrs/resolver-binding-linux-riscv64-gnu@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-riscv64-gnu@npm:1.7.11" +"@unrs/resolver-binding-linux-riscv64-gnu@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-linux-riscv64-gnu@npm:1.9.0" conditions: os=linux & cpu=riscv64 & libc=glibc languageName: node linkType: hard -"@unrs/resolver-binding-linux-riscv64-musl@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-riscv64-musl@npm:1.7.11" +"@unrs/resolver-binding-linux-riscv64-musl@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-linux-riscv64-musl@npm:1.9.0" conditions: os=linux & cpu=riscv64 & libc=musl languageName: node linkType: hard -"@unrs/resolver-binding-linux-s390x-gnu@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-s390x-gnu@npm:1.7.11" +"@unrs/resolver-binding-linux-s390x-gnu@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-linux-s390x-gnu@npm:1.9.0" conditions: os=linux & cpu=s390x & libc=glibc languageName: node linkType: hard -"@unrs/resolver-binding-linux-x64-gnu@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-x64-gnu@npm:1.7.11" +"@unrs/resolver-binding-linux-x64-gnu@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-linux-x64-gnu@npm:1.9.0" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@unrs/resolver-binding-linux-x64-musl@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-linux-x64-musl@npm:1.7.11" +"@unrs/resolver-binding-linux-x64-musl@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-linux-x64-musl@npm:1.9.0" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@unrs/resolver-binding-wasm32-wasi@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-wasm32-wasi@npm:1.7.11" +"@unrs/resolver-binding-wasm32-wasi@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-wasm32-wasi@npm:1.9.0" dependencies: - "@napi-rs/wasm-runtime": "npm:^0.2.10" + "@napi-rs/wasm-runtime": "npm:^0.2.11" conditions: cpu=wasm32 languageName: node linkType: hard -"@unrs/resolver-binding-win32-arm64-msvc@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-win32-arm64-msvc@npm:1.7.11" +"@unrs/resolver-binding-win32-arm64-msvc@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-win32-arm64-msvc@npm:1.9.0" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@unrs/resolver-binding-win32-ia32-msvc@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-win32-ia32-msvc@npm:1.7.11" +"@unrs/resolver-binding-win32-ia32-msvc@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-win32-ia32-msvc@npm:1.9.0" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@unrs/resolver-binding-win32-x64-msvc@npm:1.7.11": - version: 1.7.11 - resolution: "@unrs/resolver-binding-win32-x64-msvc@npm:1.7.11" +"@unrs/resolver-binding-win32-x64-msvc@npm:1.9.0": + version: 1.9.0 + resolution: "@unrs/resolver-binding-win32-x64-msvc@npm:1.9.0" conditions: os=win32 & cpu=x64 languageName: node linkType: hard +"@wojtekmaj/date-utils@npm:^1.1.3": + version: 1.5.1 + resolution: "@wojtekmaj/date-utils@npm:1.5.1" + checksum: 10c0/7c213cca5ab6b84ef61b9aea2b9fb8a04bf4c9764b28a97ffc4ee46a3e81560532a74d106a6f8aeef4792e1aaa6ea3dfd3c4a639dddbea560eb3f33cd62b8d7d + languageName: node + linkType: hard + "acorn-jsx@npm:^5.3.2": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" @@ -1934,12 +1964,12 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.14.0": - version: 8.14.1 - resolution: "acorn@npm:8.14.1" +"acorn@npm:^8.15.0": + version: 8.15.0 + resolution: "acorn@npm:8.15.0" bin: acorn: bin/acorn - checksum: 10c0/dbd36c1ed1d2fa3550140000371fcf721578095b18777b85a79df231ca093b08edc6858d75d6e48c73e431c174dcf9214edbd7e6fa5911b93bd8abfa54e47123 + checksum: 10c0/dec73ff59b7d6628a01eebaece7f2bdb8bb62b9b5926dcad0f8931f2b8b79c2be21f6c68ac095592adb5adb15831a3635d9343e6a91d028bbe85d564875ec3ec languageName: node linkType: hard @@ -2139,21 +2169,21 @@ __metadata: linkType: hard "brace-expansion@npm:^1.1.7": - version: 1.1.11 - resolution: "brace-expansion@npm:1.1.11" + version: 1.1.12 + resolution: "brace-expansion@npm:1.1.12" dependencies: balanced-match: "npm:^1.0.0" concat-map: "npm:0.0.1" - checksum: 10c0/695a56cd058096a7cb71fb09d9d6a7070113c7be516699ed361317aca2ec169f618e28b8af352e02ab4233fb54eb0168460a40dc320bab0034b36ab59aaad668 + checksum: 10c0/975fecac2bb7758c062c20d0b3b6288c7cc895219ee25f0a64a9de662dbac981ff0b6e89909c3897c1f84fa353113a721923afdec5f8b2350255b097f12b1f73 languageName: node linkType: hard "brace-expansion@npm:^2.0.1": - version: 2.0.1 - resolution: "brace-expansion@npm:2.0.1" + version: 2.0.2 + resolution: "brace-expansion@npm:2.0.2" dependencies: balanced-match: "npm:^1.0.0" - checksum: 10c0/b358f2fe060e2d7a87aa015979ecea07f3c37d4018f8d6deb5bd4c229ad3a0384fe6029bb76cd8be63c81e516ee52d1a0673edbe2023d53a5191732ae3c3e49f + checksum: 10c0/6d117a4c793488af86b83172deb6af143e94c17bc53b0b3cec259733923b4ca84679d506ac261f4ba3c7ed37c46018e2ff442f9ce453af8643ecd64f4a54e6cf languageName: node linkType: hard @@ -2215,9 +2245,9 @@ __metadata: linkType: hard "caniuse-lite@npm:^1.0.30001579": - version: 1.0.30001721 - resolution: "caniuse-lite@npm:1.0.30001721" - checksum: 10c0/fa3a8926899824b385279f1f886fe34c5efb1321c9ece1b9df25c8d567a2706db8450cc5b4d969e769e641593e08ea644909324aba93636a43e4949a75f81c4c + version: 1.0.30001722 + resolution: "caniuse-lite@npm:1.0.30001722" + checksum: 10c0/a1e344c392e0b138f0b215525108877d725665217a5e8e7504897e30379a5a9b858bc44799ccc0e19f4a64bf1e05c15b4a58eb1c9032293f894aa24e8d9f470f languageName: node linkType: hard @@ -2254,7 +2284,7 @@ __metadata: languageName: node linkType: hard -"clsx@npm:^2.1.1": +"clsx@npm:^2.0.0, clsx@npm:^2.1.1": version: 2.1.1 resolution: "clsx@npm:2.1.1" checksum: 10c0/c4c8eb865f8c82baab07e71bfa8897c73454881c4f99d6bc81585aecd7c441746c1399d08363dc096c550cceaf97bd4ce1e8854e1771e9998d9f94c4fe075839 @@ -2813,12 +2843,12 @@ __metadata: linkType: hard "eslint-scope@npm:^8.3.0": - version: 8.3.0 - resolution: "eslint-scope@npm:8.3.0" + version: 8.4.0 + resolution: "eslint-scope@npm:8.4.0" dependencies: esrecurse: "npm:^4.3.0" estraverse: "npm:^5.2.0" - checksum: 10c0/23bf54345573201fdf06d29efa345ab508b355492f6c6cc9e2b9f6d02b896f369b6dd5315205be94b8853809776c4d13353b85c6b531997b164ff6c3328ecf5b + checksum: 10c0/407f6c600204d0f3705bd557f81bd0189e69cd7996f408f8971ab5779c0af733d1af2f1412066b40ee1588b085874fc37a2333986c6521669cdbdd36ca5058e0 languageName: node linkType: hard @@ -2829,10 +2859,10 @@ __metadata: languageName: node linkType: hard -"eslint-visitor-keys@npm:^4.2.0": - version: 4.2.0 - resolution: "eslint-visitor-keys@npm:4.2.0" - checksum: 10c0/2ed81c663b147ca6f578312919483eb040295bbab759e5a371953456c636c5b49a559883e2677112453728d66293c0a4c90ab11cab3428cf02a0236d2e738269 +"eslint-visitor-keys@npm:^4.2.0, eslint-visitor-keys@npm:^4.2.1": + version: 4.2.1 + resolution: "eslint-visitor-keys@npm:4.2.1" + checksum: 10c0/fcd43999199d6740db26c58dbe0c2594623e31ca307e616ac05153c9272f12f1364f5a0b1917a8e962268fdecc6f3622c1c2908b4fcc2e047a106fe6de69dc43 languageName: node linkType: hard @@ -2887,13 +2917,13 @@ __metadata: linkType: hard "espree@npm:^10.0.1, espree@npm:^10.3.0": - version: 10.3.0 - resolution: "espree@npm:10.3.0" + version: 10.4.0 + resolution: "espree@npm:10.4.0" dependencies: - acorn: "npm:^8.14.0" + acorn: "npm:^8.15.0" acorn-jsx: "npm:^5.3.2" - eslint-visitor-keys: "npm:^4.2.0" - checksum: 10c0/272beeaca70d0a1a047d61baff64db04664a33d7cfb5d144f84bc8a5c6194c6c8ebe9cc594093ca53add88baa23e59b01e69e8a0160ab32eac570482e165c462 + eslint-visitor-keys: "npm:^4.2.1" + checksum: 10c0/c63fe06131c26c8157b4083313cb02a9a54720a08e21543300e55288c40e06c3fc284bdecf108d3a1372c5934a0a88644c98714f38b6ae8ed272b40d9ea08d6b languageName: node linkType: hard @@ -2986,14 +3016,14 @@ __metadata: linkType: hard "fdir@npm:^6.4.4": - version: 6.4.5 - resolution: "fdir@npm:6.4.5" + version: 6.4.6 + resolution: "fdir@npm:6.4.6" peerDependencies: picomatch: ^3 || ^4 peerDependenciesMeta: picomatch: optional: true - checksum: 10c0/5d63330a1b97165e9b0fb20369fafc7cf826bc4b3e374efcb650bc77d7145ac01193b5da1a7591eab89ae6fd6b15cdd414085910b2a2b42296b1480c9f2677af + checksum: 10c0/45b559cff889934ebb8bc498351e5acba40750ada7e7d6bde197768d2fa67c149be8ae7f8ff34d03f4e1eb20f2764116e56440aaa2f6689e9a4aa7ef06acafe9 languageName: node linkType: hard @@ -3134,6 +3164,15 @@ __metadata: languageName: node linkType: hard +"get-user-locale@npm:^2.2.1": + version: 2.3.2 + resolution: "get-user-locale@npm:2.3.2" + dependencies: + mem: "npm:^8.0.0" + checksum: 10c0/2796b3fc3782b1f4826f31e899642cf72eeb23e296e1cf55280aab5caf7a25f4b906491ee1508a001519d6a410902ccf8fa8edaa895b7aee5dfd422ffe5523b9 + languageName: node + linkType: hard + "glob-parent@npm:^5.1.2": version: 5.1.2 resolution: "glob-parent@npm:5.1.2" @@ -3804,7 +3843,7 @@ __metadata: languageName: node linkType: hard -"loose-envify@npm:^1.4.0": +"loose-envify@npm:^1.0.0, loose-envify@npm:^1.4.0": version: 1.4.0 resolution: "loose-envify@npm:1.4.0" dependencies: @@ -3833,6 +3872,15 @@ __metadata: languageName: node linkType: hard +"map-age-cleaner@npm:^0.1.3": + version: 0.1.3 + resolution: "map-age-cleaner@npm:0.1.3" + dependencies: + p-defer: "npm:^1.0.0" + checksum: 10c0/7495236c7b0950956c144fd8b4bc6399d4e78072a8840a4232fe1c4faccbb5eb5d842e5c0a56a60afc36d723f315c1c672325ca03c1b328650f7fcc478f385fd + languageName: node + linkType: hard + "math-intrinsics@npm:^1.1.0": version: 1.1.0 resolution: "math-intrinsics@npm:1.1.0" @@ -3878,7 +3926,8 @@ __metadata: postcss: "npm:8.5.5" prettier: "npm:3.5.3" prisma: "npm:6.9.0" - react: "npm:^19.0.0" + react: "npm:^19.1.0" + react-calendar: "npm:^5.1.0" react-dom: "npm:^19.0.0" tailwind-merge: "npm:^3.2.0" tailwindcss: "npm:4.1.10" @@ -3887,6 +3936,16 @@ __metadata: languageName: unknown linkType: soft +"mem@npm:^8.0.0": + version: 8.1.1 + resolution: "mem@npm:8.1.1" + dependencies: + map-age-cleaner: "npm:^0.1.3" + mimic-fn: "npm:^3.1.0" + checksum: 10c0/5829c404d024c1accaf76ebacbc7eae9b59e5ce5722d184aa24e8387a8097a499f6aa7e181021003c51eb87b2dcdc9a2270050c58753cce761de206643cba91c + languageName: node + linkType: hard + "merge2@npm:^1.3.0": version: 1.4.1 resolution: "merge2@npm:1.4.1" @@ -3904,6 +3963,13 @@ __metadata: languageName: node linkType: hard +"mimic-fn@npm:^3.1.0": + version: 3.1.0 + resolution: "mimic-fn@npm:3.1.0" + checksum: 10c0/a07cdd8ed6490c2dff5b11f889b245d9556b80f5a653a552a651d17cff5a2d156e632d235106c2369f00cccef4071704589574cf3601bc1b1400a1f620dff067 + languageName: node + linkType: hard + "minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" @@ -4080,9 +4146,9 @@ __metadata: linkType: hard "oauth4webapi@npm:^3.3.0": - version: 3.5.1 - resolution: "oauth4webapi@npm:3.5.1" - checksum: 10c0/5d57ba4299d61173b28ff0612fdfcc550b02c2ce4afcd1641103960c02af18268b55a70f26d47bbfc956680967c307546284b4a0b1f13845589e247f798ff395 + version: 3.5.2 + resolution: "oauth4webapi@npm:3.5.2" + checksum: 10c0/fd056001ce67c9e4aba9b170b6aabe26315bd9ce67787534575ea66a475115fdae7c68b8b193e8607156a8e97a56a3eef552abb34ec3447b28cfe7c18749468a languageName: node linkType: hard @@ -4193,6 +4259,13 @@ __metadata: languageName: node linkType: hard +"p-defer@npm:^1.0.0": + version: 1.0.0 + resolution: "p-defer@npm:1.0.0" + checksum: 10c0/ed603c3790e74b061ac2cb07eb6e65802cf58dce0fbee646c113a7b71edb711101329ad38f99e462bd2e343a74f6e9366b496a35f1d766c187084d3109900487 + languageName: node + linkType: hard + "p-limit@npm:^3.0.2": version: 3.1.0 resolution: "p-limit@npm:3.1.0" @@ -4280,7 +4353,7 @@ __metadata: languageName: node linkType: hard -"postcss@npm:8.5.5": +"postcss@npm:8.5.5, postcss@npm:^8.4.41": version: 8.5.5 resolution: "postcss@npm:8.5.5" dependencies: @@ -4291,17 +4364,6 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.4.41": - version: 8.5.4 - resolution: "postcss@npm:8.5.4" - dependencies: - nanoid: "npm:^3.3.11" - picocolors: "npm:^1.1.1" - source-map-js: "npm:^1.2.1" - checksum: 10c0/0feff648614a834f7cd5396ea6b05b658ca0507e10a4eaad03b56c348f6aec93f42a885fc1b30522630c6a7e49ae53b38a061e3cba526f2d9857afbe095a22bb - languageName: node - linkType: hard - "preact-render-to-string@npm:6.5.11": version: 6.5.11 resolution: "preact-render-to-string@npm:6.5.11" @@ -4376,6 +4438,25 @@ __metadata: languageName: node linkType: hard +"react-calendar@npm:^5.1.0": + version: 5.1.0 + resolution: "react-calendar@npm:5.1.0" + dependencies: + "@wojtekmaj/date-utils": "npm:^1.1.3" + clsx: "npm:^2.0.0" + get-user-locale: "npm:^2.2.1" + warning: "npm:^4.0.0" + peerDependencies: + "@types/react": ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + peerDependenciesMeta: + "@types/react": + optional: true + checksum: 10c0/27673f639c5d6296342a2a888436b31a5d602faeaae01be83b2beb98ff568b0a3d1514f5cc50fcacf3ac50b9c0b9d2fb423b0c001a8f5f1a22816671409e2616 + languageName: node + linkType: hard + "react-dom@npm:^19.0.0": version: 19.1.0 resolution: "react-dom@npm:19.1.0" @@ -4445,7 +4526,7 @@ __metadata: languageName: node linkType: hard -"react@npm:^19.0.0": +"react@npm:^19.1.0": version: 19.1.0 resolution: "react@npm:19.1.0" checksum: 10c0/530fb9a62237d54137a13d2cfb67a7db6a2156faed43eecc423f4713d9b20c6f2728b026b45e28fcd72e8eadb9e9ed4b089e99f5e295d2f0ad3134251bdd3698 @@ -5156,28 +5237,34 @@ __metadata: linkType: hard "unrs-resolver@npm:^1.6.2": - version: 1.7.11 - resolution: "unrs-resolver@npm:1.7.11" + version: 1.9.0 + resolution: "unrs-resolver@npm:1.9.0" dependencies: - "@unrs/resolver-binding-darwin-arm64": "npm:1.7.11" - "@unrs/resolver-binding-darwin-x64": "npm:1.7.11" - "@unrs/resolver-binding-freebsd-x64": "npm:1.7.11" - "@unrs/resolver-binding-linux-arm-gnueabihf": "npm:1.7.11" - "@unrs/resolver-binding-linux-arm-musleabihf": "npm:1.7.11" - "@unrs/resolver-binding-linux-arm64-gnu": "npm:1.7.11" - "@unrs/resolver-binding-linux-arm64-musl": "npm:1.7.11" - "@unrs/resolver-binding-linux-ppc64-gnu": "npm:1.7.11" - "@unrs/resolver-binding-linux-riscv64-gnu": "npm:1.7.11" - "@unrs/resolver-binding-linux-riscv64-musl": "npm:1.7.11" - "@unrs/resolver-binding-linux-s390x-gnu": "npm:1.7.11" - "@unrs/resolver-binding-linux-x64-gnu": "npm:1.7.11" - "@unrs/resolver-binding-linux-x64-musl": "npm:1.7.11" - "@unrs/resolver-binding-wasm32-wasi": "npm:1.7.11" - "@unrs/resolver-binding-win32-arm64-msvc": "npm:1.7.11" - "@unrs/resolver-binding-win32-ia32-msvc": "npm:1.7.11" - "@unrs/resolver-binding-win32-x64-msvc": "npm:1.7.11" + "@unrs/resolver-binding-android-arm-eabi": "npm:1.9.0" + "@unrs/resolver-binding-android-arm64": "npm:1.9.0" + "@unrs/resolver-binding-darwin-arm64": "npm:1.9.0" + "@unrs/resolver-binding-darwin-x64": "npm:1.9.0" + "@unrs/resolver-binding-freebsd-x64": "npm:1.9.0" + "@unrs/resolver-binding-linux-arm-gnueabihf": "npm:1.9.0" + "@unrs/resolver-binding-linux-arm-musleabihf": "npm:1.9.0" + "@unrs/resolver-binding-linux-arm64-gnu": "npm:1.9.0" + "@unrs/resolver-binding-linux-arm64-musl": "npm:1.9.0" + "@unrs/resolver-binding-linux-ppc64-gnu": "npm:1.9.0" + "@unrs/resolver-binding-linux-riscv64-gnu": "npm:1.9.0" + "@unrs/resolver-binding-linux-riscv64-musl": "npm:1.9.0" + "@unrs/resolver-binding-linux-s390x-gnu": "npm:1.9.0" + "@unrs/resolver-binding-linux-x64-gnu": "npm:1.9.0" + "@unrs/resolver-binding-linux-x64-musl": "npm:1.9.0" + "@unrs/resolver-binding-wasm32-wasi": "npm:1.9.0" + "@unrs/resolver-binding-win32-arm64-msvc": "npm:1.9.0" + "@unrs/resolver-binding-win32-ia32-msvc": "npm:1.9.0" + "@unrs/resolver-binding-win32-x64-msvc": "npm:1.9.0" napi-postinstall: "npm:^0.2.2" dependenciesMeta: + "@unrs/resolver-binding-android-arm-eabi": + optional: true + "@unrs/resolver-binding-android-arm64": + optional: true "@unrs/resolver-binding-darwin-arm64": optional: true "@unrs/resolver-binding-darwin-x64": @@ -5212,7 +5299,7 @@ __metadata: optional: true "@unrs/resolver-binding-win32-x64-msvc": optional: true - checksum: 10c0/37e6caf2884b7ce65f77fc5b945997b94523656d477ae0e67fb8df970939930b674091f3fac6beee93b0370fa64a925ad707edc76897aa8cb14866efbe4a6693 + checksum: 10c0/73c184514a82197145539c0506dd6633a28fc380192b1677d31348537c2783405e7392cf2bf18b96d84b8068f502868de3ae741edd580683ddb39f10d46d49e8 languageName: node linkType: hard @@ -5256,6 +5343,15 @@ __metadata: languageName: node linkType: hard +"warning@npm:^4.0.0": + version: 4.0.3 + resolution: "warning@npm:4.0.3" + dependencies: + loose-envify: "npm:^1.0.0" + checksum: 10c0/aebab445129f3e104c271f1637fa38e55eb25f968593e3825bd2f7a12bd58dc3738bb70dc8ec85826621d80b4acfed5a29ebc9da17397c6125864d72301b937e + languageName: node + linkType: hard + "which-boxed-primitive@npm:^1.1.0, which-boxed-primitive@npm:^1.1.1": version: 1.1.1 resolution: "which-boxed-primitive@npm:1.1.1"