11 Commits

Author SHA1 Message Date
78d996a989 Move listmonk form into separate module and add captcha
Some checks failed
Build Production Image / Build Production Image (push) Failing after 2m21s
2024-12-19 18:53:40 -08:00
f342b0fa25 Add blog post about 2024-10-20 potluck
All checks were successful
Build Production Image / Build Production Image (push) Successful in 1m22s
2024-10-26 19:10:48 -07:00
8b57fd492d Add listmonk mailing list form
All checks were successful
Build Production Image / Build Production Image (push) Successful in 2m2s
2024-10-22 19:49:37 -07:00
f8971e812e Update board members
All checks were successful
Build Production Image / Build Production Image (push) Successful in 2m1s
2024-10-20 18:32:08 -07:00
e420bb7ca2 Add blog post about 2024-09-21 potluck
All checks were successful
Build Production Image / Build Production Image (push) Successful in 2m22s
2024-09-22 18:41:24 -07:00
41f688fd84 Fix typo 2024-09-22 18:41:03 -07:00
55aa6af239 Correctly start weeks with Sunday
All checks were successful
Build Production Image / Build Production Image (push) Successful in 1m36s
The days of the week already reflected this, but the headers did not
match.
2024-08-23 18:40:58 -07:00
922a8d24dd Set user agent when requesting iCal
All checks were successful
Build Production Image / Build Production Image (push) Successful in 1m5s
2024-05-21 19:57:31 -07:00
7192f527e9 Add Linn as director
All checks were successful
Build Production Image / Build Production Image (push) Successful in 1m15s
2024-04-27 14:22:31 -07:00
4cf7878202 Upgrade dependencies
All checks were successful
Build Production Image / Build Production Image (push) Successful in 55s
2024-04-21 08:42:25 -07:00
346df14a25 Fix page titles
They have West Sound Hall added to the end already.
2024-04-21 08:29:52 -07:00
19 changed files with 413 additions and 238 deletions

438
package-lock.json generated
View File

@ -8,16 +8,20 @@
"name": "wscc-website", "name": "wscc-website",
"version": "0.1.0", "version": "0.1.0",
"dependencies": { "dependencies": {
"@headlessui/react": "1.7.17", "@headlessui/react": "1.7.19",
"@heroicons/react": "^2.0.18", "@heroicons/react": "^2.0.18",
"@mapbox/rehype-prism": "^0.8.0", "@mapbox/rehype-prism": "^0.8.0",
"@mdx-js/loader": "^2.3.0", "@mdx-js/loader": "^2.3.0",
"@mdx-js/react": "^2.3.0", "@mdx-js/react": "^2.3.0",
"@next/mdx": "13.4.16", "@next/mdx": "14.2.2",
"@stripe/react-stripe-js": "2.4.0", "@stripe/react-stripe-js": "2.4.0",
"@stripe/stripe-js": "2.2.1", "@stripe/stripe-js": "2.2.1",
"@tailwindcss/forms": "0.5.7", "@tailwindcss/forms": "0.5.7",
"@tailwindcss/typography": "^0.5.4", "@tailwindcss/typography": "^0.5.4",
"@types/ical": "^0.8.3",
"@types/react": "18.2.18",
"@types/react-dom": "18.2.7",
"@types/webpack-env": "^1.18.1",
"autoprefixer": "^10.4.12", "autoprefixer": "^10.4.12",
"cheerio": "^1.0.0-rc.12", "cheerio": "^1.0.0-rc.12",
"clsx": "^1.2.1", "clsx": "^1.2.1",
@ -25,23 +29,18 @@
"fast-glob": "^3.2.11", "fast-glob": "^3.2.11",
"feed": "^4.2.2", "feed": "^4.2.2",
"ical": "^0.8.0", "ical": "^0.8.0",
"next": "13.4.16", "next": "14.2.2",
"next-themes": "^0.2.1",
"postmark": "4.0.2", "postmark": "4.0.2",
"react": "18.2.0", "react": "18.2.0",
"react-dom": "18.2.0", "react-dom": "18.2.0",
"remark-gfm": "^3.0.1", "remark-gfm": "^3.0.1",
"sharp": "0.32.6", "sharp": "0.32.6",
"stripe": "14.9.0", "stripe": "14.9.0",
"tailwindcss": "^3.3.3", "tailwindcss": "3.4.3",
"typescript": "5.1.6" "typescript": "5.4.5"
}, },
"devDependencies": { "devDependencies": {
"@types/ical": "^0.8.3",
"@types/node": "20.4.7", "@types/node": "20.4.7",
"@types/react": "18.2.18",
"@types/react-dom": "18.2.7",
"@types/webpack-env": "^1.18.1",
"eslint": "8.45.0", "eslint": "8.45.0",
"eslint-config-next": "13.4.16", "eslint-config-next": "13.4.16",
"prettier": "^3.0.1", "prettier": "^3.0.1",
@ -137,10 +136,11 @@
} }
}, },
"node_modules/@headlessui/react": { "node_modules/@headlessui/react": {
"version": "1.7.17", "version": "1.7.19",
"resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.17.tgz", "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.19.tgz",
"integrity": "sha512-4am+tzvkqDSSgiwrsEpGWqgGo9dz8qU5M3znCkC4PgkpY4HcCZzEDEvozltGGGHIKl9jbXbZPSH5TWn4sWJdow==", "integrity": "sha512-Ll+8q3OlMJfJbAKM/+/Y2q6PPYbryqNTXDbryx7SXLIDamkF6iQFbriYHga0dY44PvDhvvBWCx1Xj4U5+G4hOw==",
"dependencies": { "dependencies": {
"@tanstack/react-virtual": "^3.0.0-beta.60",
"client-only": "^0.0.1" "client-only": "^0.0.1"
}, },
"engines": { "engines": {
@ -339,9 +339,9 @@
} }
}, },
"node_modules/@next/env": { "node_modules/@next/env": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.2.tgz",
"integrity": "sha512-pCU0sJBqdfKP9mwDadxvZd+eLz3fZrTlmmDHY12Hdpl3DD0vy8ou5HWKVfG0zZS6tqhL4wnQqRbspdY5nqa7MA==" "integrity": "sha512-sk72qRfM1Q90XZWYRoJKu/UWlTgihrASiYw/scb15u+tyzcze3bOuJ/UV6TBOQEeUaxOkRqGeuGUdiiuxc5oqw=="
}, },
"node_modules/@next/eslint-plugin-next": { "node_modules/@next/eslint-plugin-next": {
"version": "13.4.16", "version": "13.4.16",
@ -353,9 +353,9 @@
} }
}, },
"node_modules/@next/mdx": { "node_modules/@next/mdx": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/mdx/-/mdx-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/mdx/-/mdx-14.2.2.tgz",
"integrity": "sha512-4Yas2f0DFSi1BbtCAaMiv/EdGrBfflMEGBQf/QVAnVISihp/HwXiNhVN7wAt29vN9Mo/J4PtCKt8HQTYD7jbiA==", "integrity": "sha512-Te60j1vMxbYWg2E1CiEuIjzWxjI8y6XKmLnhec0sYQupd7aTLm2bjFSLxei+kiQdWUYB87cmhazI9K2dbNB9wA==",
"dependencies": { "dependencies": {
"source-map": "^0.7.0" "source-map": "^0.7.0"
}, },
@ -373,9 +373,9 @@
} }
}, },
"node_modules/@next/swc-darwin-arm64": { "node_modules/@next/swc-darwin-arm64": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.2.tgz",
"integrity": "sha512-Rl6i1uUq0ciRa3VfEpw6GnWAJTSKo9oM2OrkGXPsm7rMxdd2FR5NkKc0C9xzFCI4+QtmBviWBdF2m3ur3Nqstw==", "integrity": "sha512-3iPgMhzbalizGwHNFUcGnDhFPSgVBHQ8aqSTAMxB5BvJG0oYrDf1WOJZlbXBgunOEj/8KMVbejEur/FpvFsgFQ==",
"cpu": [ "cpu": [
"arm64" "arm64"
], ],
@ -388,9 +388,9 @@
} }
}, },
"node_modules/@next/swc-darwin-x64": { "node_modules/@next/swc-darwin-x64": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.2.tgz",
"integrity": "sha512-o1vIKYbZORyDmTrPV1hApt9NLyWrS5vr2p5hhLGpOnkBY1cz6DAXjv8Lgan8t6X87+83F0EUDlu7klN8ieZ06A==", "integrity": "sha512-x7Afi/jt0ZBRUZHTi49yyej4o8znfIMHO4RvThuoc0P+uli8Jd99y5GKjxoYunPKsXL09xBXEM1+OQy2xEL0Ag==",
"cpu": [ "cpu": [
"x64" "x64"
], ],
@ -403,9 +403,9 @@
} }
}, },
"node_modules/@next/swc-linux-arm64-gnu": { "node_modules/@next/swc-linux-arm64-gnu": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.2.tgz",
"integrity": "sha512-JRyAl8lCfyTng4zoOmE6hNI2f1MFUr7JyTYCHl1RxX42H4a5LMwJhDVQ7a9tmDZ/yj+0hpBn+Aan+d6lA3v0UQ==", "integrity": "sha512-zbfPtkk7L41ODMJwSp5VbmPozPmMMQrzAc0HAUomVeVIIwlDGs/UCqLJvLNDt4jpWgc21SjjyIn762lNGrMaUA==",
"cpu": [ "cpu": [
"arm64" "arm64"
], ],
@ -418,9 +418,9 @@
} }
}, },
"node_modules/@next/swc-linux-arm64-musl": { "node_modules/@next/swc-linux-arm64-musl": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.2.tgz",
"integrity": "sha512-9gqVqNzUMWbUDgDiND18xoUqhwSm2gmksqXgCU0qaOKt6oAjWz8cWYjgpPVD0WICKFylEY/gvPEP1fMZDVFZ/g==", "integrity": "sha512-wPbS3pI/JU16rm3XdLvvTmlsmm1nd+sBa2ohXgBZcShX4TgOjD4R+RqHKlI1cjo/jDZKXt6OxmcU0Iys0OC/yg==",
"cpu": [ "cpu": [
"arm64" "arm64"
], ],
@ -433,9 +433,9 @@
} }
}, },
"node_modules/@next/swc-linux-x64-gnu": { "node_modules/@next/swc-linux-x64-gnu": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.2.tgz",
"integrity": "sha512-KcQGwchAKmZVPa8i5PLTxvTs1/rcFnSltfpTm803Tr/BtBV3AxCkHLfhtoyVtVzx/kl/oue8oS+DSmbepQKwhw==", "integrity": "sha512-NqWOHqqq8iC9tuHvZxjQ2tX+jWy2X9y8NX2mcB4sj2bIccuCxbIZrU/ThFPZZPauygajZuVQ6zediejQHwZHwQ==",
"cpu": [ "cpu": [
"x64" "x64"
], ],
@ -448,9 +448,9 @@
} }
}, },
"node_modules/@next/swc-linux-x64-musl": { "node_modules/@next/swc-linux-x64-musl": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.2.tgz",
"integrity": "sha512-2RbMZNxYnJmW8EPHVBsGZPq5zqWAyBOc/YFxq/jIQ/Yn3RMFZ1dZVCjtIcsiaKmgh7mjA/W0ApbumutHNxRqqQ==", "integrity": "sha512-lGepHhwb9sGhCcU7999+iK1ZZT+6rrIoVg40MP7DZski9GIZP80wORSbt5kJzh9v2x2ev2lxC6VgwMQT0PcgTA==",
"cpu": [ "cpu": [
"x64" "x64"
], ],
@ -463,9 +463,9 @@
} }
}, },
"node_modules/@next/swc-win32-arm64-msvc": { "node_modules/@next/swc-win32-arm64-msvc": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.2.tgz",
"integrity": "sha512-thDcGonELN7edUKzjzlHrdoKkm7y8IAdItQpRvvMxNUXa4d9r0ElofhTZj5emR7AiXft17hpen+QAkcWpqG7Jg==", "integrity": "sha512-TZSh/48SfcLEQ4rD25VVn2kdIgUWmMflRX3OiyPwGNXn3NiyPqhqei/BaqCYXViIQ+6QsG9R0C8LftMqy8JPMA==",
"cpu": [ "cpu": [
"arm64" "arm64"
], ],
@ -478,9 +478,9 @@
} }
}, },
"node_modules/@next/swc-win32-ia32-msvc": { "node_modules/@next/swc-win32-ia32-msvc": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.2.tgz",
"integrity": "sha512-f7SE1Mo4JAchUWl0LQsbtySR9xCa+x55C0taetjUApKtcLR3AgAjASrrP+oE1inmLmw573qRnE1eZN8YJfEBQw==", "integrity": "sha512-M0tBVNMEBJN2ZNQWlcekMn6pvLria7Sa2Fai5znm7CCJz4pP3lrvlSxhKdkCerk0D9E0bqx5yAo3o2Q7RrD4gA==",
"cpu": [ "cpu": [
"ia32" "ia32"
], ],
@ -493,9 +493,9 @@
} }
}, },
"node_modules/@next/swc-win32-x64-msvc": { "node_modules/@next/swc-win32-x64-msvc": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.2.tgz",
"integrity": "sha512-WamDZm1M/OEM4QLce3lOmD1XdLEl37zYZwlmOLhmF7qYJ2G6oYm9+ejZVv+LakQIsIuXhSpVlOvrxIAHqwRkPQ==", "integrity": "sha512-a/20E/wtTJZ3Ykv3f/8F0l7TtgQa2LWHU2oNB9bsu0VjqGuGGHmm/q6waoUNQYTVPYrrlxxaHjJcDV6aiSTt/w==",
"cpu": [ "cpu": [
"x64" "x64"
], ],
@ -591,11 +591,17 @@
"resolved": "https://registry.npmjs.org/@stripe/stripe-js/-/stripe-js-2.2.1.tgz", "resolved": "https://registry.npmjs.org/@stripe/stripe-js/-/stripe-js-2.2.1.tgz",
"integrity": "sha512-Wd81A0u8EwT3cf+Xv1mpMI18RbXVhgh19MtPcF9ojNTlG3kl36B1+XFe1KQfnJxD3WRnVfDuI0rNCK53mcGm6g==" "integrity": "sha512-Wd81A0u8EwT3cf+Xv1mpMI18RbXVhgh19MtPcF9ojNTlG3kl36B1+XFe1KQfnJxD3WRnVfDuI0rNCK53mcGm6g=="
}, },
"node_modules/@swc/counter": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz",
"integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ=="
},
"node_modules/@swc/helpers": { "node_modules/@swc/helpers": {
"version": "0.5.1", "version": "0.5.5",
"resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz", "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz",
"integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==", "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==",
"dependencies": { "dependencies": {
"@swc/counter": "^0.1.3",
"tslib": "^2.4.0" "tslib": "^2.4.0"
} }
}, },
@ -647,6 +653,31 @@
"node": ">=4" "node": ">=4"
} }
}, },
"node_modules/@tanstack/react-virtual": {
"version": "3.4.0",
"resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.4.0.tgz",
"integrity": "sha512-GZN4xn/Tg5w7gvYeVcMVCeL4pEyUhvg+Cp6KX2Z01C4FRNxIWMgIQ9ibgMarNQfo+gt0PVLcEER4A9sNv/jlow==",
"dependencies": {
"@tanstack/virtual-core": "3.4.0"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/tannerlinsley"
},
"peerDependencies": {
"react": "^16.8.0 || ^17.0.0 || ^18.0.0",
"react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0"
}
},
"node_modules/@tanstack/virtual-core": {
"version": "3.4.0",
"resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.4.0.tgz",
"integrity": "sha512-75jXqXxqq5M5Veb9KP1STi8kA5u408uOOAefk2ftHDGCpUk3RP6zX++QqfbmHJTBiU72NQ+ghgCZVts/Wocz8Q==",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/tannerlinsley"
}
},
"node_modules/@types/acorn": { "node_modules/@types/acorn": {
"version": "4.0.6", "version": "4.0.6",
"resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz", "resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz",
@ -708,7 +739,6 @@
"version": "0.8.3", "version": "0.8.3",
"resolved": "https://registry.npmjs.org/@types/ical/-/ical-0.8.3.tgz", "resolved": "https://registry.npmjs.org/@types/ical/-/ical-0.8.3.tgz",
"integrity": "sha512-qPejGORaXOstmqyKzp0Qw9nXDPiWiahiJJcx4zMB0zJVg0rLfJ6bDip/naqagEqYTjKl/LI91399hR8zFwRJ5A==", "integrity": "sha512-qPejGORaXOstmqyKzp0Qw9nXDPiWiahiJJcx4zMB0zJVg0rLfJ6bDip/naqagEqYTjKl/LI91399hR8zFwRJ5A==",
"dev": true,
"dependencies": { "dependencies": {
"rrule": "2.6.4" "rrule": "2.6.4"
} }
@ -717,7 +747,6 @@
"version": "2.6.4", "version": "2.6.4",
"resolved": "https://registry.npmjs.org/rrule/-/rrule-2.6.4.tgz", "resolved": "https://registry.npmjs.org/rrule/-/rrule-2.6.4.tgz",
"integrity": "sha512-sLdnh4lmjUqq8liFiOUXD5kWp/FcnbDLPwq5YAc/RrN6120XOPb86Ae5zxF7ttBVq8O3LxjjORMEit1baluahA==", "integrity": "sha512-sLdnh4lmjUqq8liFiOUXD5kWp/FcnbDLPwq5YAc/RrN6120XOPb86Ae5zxF7ttBVq8O3LxjjORMEit1baluahA==",
"dev": true,
"dependencies": { "dependencies": {
"tslib": "^1.10.0" "tslib": "^1.10.0"
}, },
@ -728,8 +757,7 @@
"node_modules/@types/ical/node_modules/tslib": { "node_modules/@types/ical/node_modules/tslib": {
"version": "1.14.1", "version": "1.14.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
"dev": true
}, },
"node_modules/@types/json-schema": { "node_modules/@types/json-schema": {
"version": "7.0.12", "version": "7.0.12",
@ -785,7 +813,6 @@
"version": "18.2.7", "version": "18.2.7",
"resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.7.tgz", "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.7.tgz",
"integrity": "sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==", "integrity": "sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==",
"dev": true,
"dependencies": { "dependencies": {
"@types/react": "*" "@types/react": "*"
} }
@ -803,8 +830,7 @@
"node_modules/@types/webpack-env": { "node_modules/@types/webpack-env": {
"version": "1.18.1", "version": "1.18.1",
"resolved": "https://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.18.1.tgz", "resolved": "https://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.18.1.tgz",
"integrity": "sha512-D0HJET2/UY6k9L6y3f5BL+IDxZmPkYmPT4+qBrRdmRLYRuV0qNKizMgTvYxXZYn+36zjPeoDZAEYBCM6XB+gww==", "integrity": "sha512-D0HJET2/UY6k9L6y3f5BL+IDxZmPkYmPT4+qBrRdmRLYRuV0qNKizMgTvYxXZYn+36zjPeoDZAEYBCM6XB+gww=="
"dev": true
}, },
"node_modules/@typescript-eslint/parser": { "node_modules/@typescript-eslint/parser": {
"version": "5.62.0", "version": "5.62.0",
@ -1794,9 +1820,9 @@
} }
}, },
"node_modules/caniuse-lite": { "node_modules/caniuse-lite": {
"version": "1.0.30001517", "version": "1.0.30001611",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001611.tgz",
"integrity": "sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA==", "integrity": "sha512-19NuN1/3PjA3QI8Eki55N8my4LzfkMCRLgCVfrl/slbSAchQfV0+GwjPrK3rq37As4UCLlM/DHajbKkAqbv92Q==",
"funding": [ "funding": [
{ {
"type": "opencollective", "type": "opencollective",
@ -3762,7 +3788,8 @@
"node_modules/glob-to-regexp": { "node_modules/glob-to-regexp": {
"version": "0.4.1", "version": "0.4.1",
"resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
"integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==",
"peer": true
}, },
"node_modules/global-dirs": { "node_modules/global-dirs": {
"version": "2.1.0", "version": "2.1.0",
@ -4816,9 +4843,9 @@
} }
}, },
"node_modules/jiti": { "node_modules/jiti": {
"version": "1.19.1", "version": "1.21.0",
"resolved": "https://registry.npmjs.org/jiti/-/jiti-1.19.1.tgz", "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz",
"integrity": "sha512-oVhqoRDaBXf7sjkll95LHVS6Myyyb1zaunVwk4Z0+WPSW4gjS0pl01zYKHScTuyEhQsFxV5L4DR5r+YqSyqyyg==", "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==",
"bin": { "bin": {
"jiti": "bin/jiti.js" "jiti": "bin/jiti.js"
} }
@ -7066,38 +7093,38 @@
"peer": true "peer": true
}, },
"node_modules/next": { "node_modules/next": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/next/-/next-13.4.16.tgz", "resolved": "https://registry.npmjs.org/next/-/next-14.2.2.tgz",
"integrity": "sha512-1xaA/5DrfpPu0eV31Iro7JfPeqO8uxQWb1zYNTe+KDKdzqkAGapLcDYHMLNKXKB7lHjZ7LfKUOf9dyuzcibrhA==", "integrity": "sha512-oGwUaa2bCs47FbuxWMpOoXtBMPYpvTPgdZr3UAo+pu7Ns00z9otmYpoeV1HEiYL06AlRQQIA/ypK526KjJfaxg==",
"dependencies": { "dependencies": {
"@next/env": "13.4.16", "@next/env": "14.2.2",
"@swc/helpers": "0.5.1", "@swc/helpers": "0.5.5",
"busboy": "1.6.0", "busboy": "1.6.0",
"caniuse-lite": "^1.0.30001406", "caniuse-lite": "^1.0.30001579",
"postcss": "8.4.14", "graceful-fs": "^4.2.11",
"styled-jsx": "5.1.1", "postcss": "8.4.31",
"watchpack": "2.4.0", "styled-jsx": "5.1.1"
"zod": "3.21.4"
}, },
"bin": { "bin": {
"next": "dist/bin/next" "next": "dist/bin/next"
}, },
"engines": { "engines": {
"node": ">=16.8.0" "node": ">=18.17.0"
}, },
"optionalDependencies": { "optionalDependencies": {
"@next/swc-darwin-arm64": "13.4.16", "@next/swc-darwin-arm64": "14.2.2",
"@next/swc-darwin-x64": "13.4.16", "@next/swc-darwin-x64": "14.2.2",
"@next/swc-linux-arm64-gnu": "13.4.16", "@next/swc-linux-arm64-gnu": "14.2.2",
"@next/swc-linux-arm64-musl": "13.4.16", "@next/swc-linux-arm64-musl": "14.2.2",
"@next/swc-linux-x64-gnu": "13.4.16", "@next/swc-linux-x64-gnu": "14.2.2",
"@next/swc-linux-x64-musl": "13.4.16", "@next/swc-linux-x64-musl": "14.2.2",
"@next/swc-win32-arm64-msvc": "13.4.16", "@next/swc-win32-arm64-msvc": "14.2.2",
"@next/swc-win32-ia32-msvc": "13.4.16", "@next/swc-win32-ia32-msvc": "14.2.2",
"@next/swc-win32-x64-msvc": "13.4.16" "@next/swc-win32-x64-msvc": "14.2.2"
}, },
"peerDependencies": { "peerDependencies": {
"@opentelemetry/api": "^1.1.0", "@opentelemetry/api": "^1.1.0",
"@playwright/test": "^1.41.2",
"react": "^18.2.0", "react": "^18.2.0",
"react-dom": "^18.2.0", "react-dom": "^18.2.0",
"sass": "^1.3.0" "sass": "^1.3.0"
@ -7106,25 +7133,18 @@
"@opentelemetry/api": { "@opentelemetry/api": {
"optional": true "optional": true
}, },
"@playwright/test": {
"optional": true
},
"sass": { "sass": {
"optional": true "optional": true
} }
} }
}, },
"node_modules/next-themes": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.2.1.tgz",
"integrity": "sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==",
"peerDependencies": {
"next": "*",
"react": "*",
"react-dom": "*"
}
},
"node_modules/next/node_modules/postcss": { "node_modules/next/node_modules/postcss": {
"version": "8.4.14", "version": "8.4.31",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz",
"integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==",
"funding": [ "funding": [
{ {
"type": "opencollective", "type": "opencollective",
@ -7133,10 +7153,14 @@
{ {
"type": "tidelift", "type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/postcss" "url": "https://tidelift.com/funding/github/npm/postcss"
},
{
"type": "github",
"url": "https://github.com/sponsors/ai"
} }
], ],
"dependencies": { "dependencies": {
"nanoid": "^3.3.4", "nanoid": "^3.3.6",
"picocolors": "^1.0.0", "picocolors": "^1.0.0",
"source-map-js": "^1.0.2" "source-map-js": "^1.0.2"
}, },
@ -9269,19 +9293,19 @@
} }
}, },
"node_modules/tailwindcss": { "node_modules/tailwindcss": {
"version": "3.3.3", "version": "3.4.3",
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.3.tgz", "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.3.tgz",
"integrity": "sha512-A0KgSkef7eE4Mf+nKJ83i75TMyq8HqY3qmFIJSWy8bNt0v1lG7jUcpGpoTFxAwYcWOphcTBLPPJg+bDfhDf52w==", "integrity": "sha512-U7sxQk/n397Bmx4JHbJx/iSOOv5G+II3f1kpLpY2QeUv5DcPdcTsYLlusZfq1NthHS1c1cZoyFmmkex1rzke0A==",
"dependencies": { "dependencies": {
"@alloc/quick-lru": "^5.2.0", "@alloc/quick-lru": "^5.2.0",
"arg": "^5.0.2", "arg": "^5.0.2",
"chokidar": "^3.5.3", "chokidar": "^3.5.3",
"didyoumean": "^1.2.2", "didyoumean": "^1.2.2",
"dlv": "^1.1.3", "dlv": "^1.1.3",
"fast-glob": "^3.2.12", "fast-glob": "^3.3.0",
"glob-parent": "^6.0.2", "glob-parent": "^6.0.2",
"is-glob": "^4.0.3", "is-glob": "^4.0.3",
"jiti": "^1.18.2", "jiti": "^1.21.0",
"lilconfig": "^2.1.0", "lilconfig": "^2.1.0",
"micromatch": "^4.0.5", "micromatch": "^4.0.5",
"normalize-path": "^3.0.0", "normalize-path": "^3.0.0",
@ -9651,9 +9675,9 @@
} }
}, },
"node_modules/typescript": { "node_modules/typescript": {
"version": "5.1.6", "version": "5.4.5",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz",
"integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==",
"bin": { "bin": {
"tsc": "bin/tsc", "tsc": "bin/tsc",
"tsserver": "bin/tsserver" "tsserver": "bin/tsserver"
@ -10061,6 +10085,7 @@
"version": "2.4.0", "version": "2.4.0",
"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
"integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==",
"peer": true,
"dependencies": { "dependencies": {
"glob-to-regexp": "^0.4.1", "glob-to-regexp": "^0.4.1",
"graceful-fs": "^4.1.2" "graceful-fs": "^4.1.2"
@ -10503,14 +10528,6 @@
"url": "https://github.com/sponsors/sindresorhus" "url": "https://github.com/sponsors/sindresorhus"
} }
}, },
"node_modules/zod": {
"version": "3.21.4",
"resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz",
"integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==",
"funding": {
"url": "https://github.com/sponsors/colinhacks"
}
},
"node_modules/zwitch": { "node_modules/zwitch": {
"version": "2.0.4", "version": "2.0.4",
"resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz",
@ -10581,10 +10598,11 @@
"dev": true "dev": true
}, },
"@headlessui/react": { "@headlessui/react": {
"version": "1.7.17", "version": "1.7.19",
"resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.17.tgz", "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.19.tgz",
"integrity": "sha512-4am+tzvkqDSSgiwrsEpGWqgGo9dz8qU5M3znCkC4PgkpY4HcCZzEDEvozltGGGHIKl9jbXbZPSH5TWn4sWJdow==", "integrity": "sha512-Ll+8q3OlMJfJbAKM/+/Y2q6PPYbryqNTXDbryx7SXLIDamkF6iQFbriYHga0dY44PvDhvvBWCx1Xj4U5+G4hOw==",
"requires": { "requires": {
"@tanstack/react-virtual": "^3.0.0-beta.60",
"client-only": "^0.0.1" "client-only": "^0.0.1"
} }
}, },
@ -10734,9 +10752,9 @@
} }
}, },
"@next/env": { "@next/env": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.2.tgz",
"integrity": "sha512-pCU0sJBqdfKP9mwDadxvZd+eLz3fZrTlmmDHY12Hdpl3DD0vy8ou5HWKVfG0zZS6tqhL4wnQqRbspdY5nqa7MA==" "integrity": "sha512-sk72qRfM1Q90XZWYRoJKu/UWlTgihrASiYw/scb15u+tyzcze3bOuJ/UV6TBOQEeUaxOkRqGeuGUdiiuxc5oqw=="
}, },
"@next/eslint-plugin-next": { "@next/eslint-plugin-next": {
"version": "13.4.16", "version": "13.4.16",
@ -10748,65 +10766,65 @@
} }
}, },
"@next/mdx": { "@next/mdx": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/mdx/-/mdx-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/mdx/-/mdx-14.2.2.tgz",
"integrity": "sha512-4Yas2f0DFSi1BbtCAaMiv/EdGrBfflMEGBQf/QVAnVISihp/HwXiNhVN7wAt29vN9Mo/J4PtCKt8HQTYD7jbiA==", "integrity": "sha512-Te60j1vMxbYWg2E1CiEuIjzWxjI8y6XKmLnhec0sYQupd7aTLm2bjFSLxei+kiQdWUYB87cmhazI9K2dbNB9wA==",
"requires": { "requires": {
"source-map": "^0.7.0" "source-map": "^0.7.0"
} }
}, },
"@next/swc-darwin-arm64": { "@next/swc-darwin-arm64": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.2.tgz",
"integrity": "sha512-Rl6i1uUq0ciRa3VfEpw6GnWAJTSKo9oM2OrkGXPsm7rMxdd2FR5NkKc0C9xzFCI4+QtmBviWBdF2m3ur3Nqstw==", "integrity": "sha512-3iPgMhzbalizGwHNFUcGnDhFPSgVBHQ8aqSTAMxB5BvJG0oYrDf1WOJZlbXBgunOEj/8KMVbejEur/FpvFsgFQ==",
"optional": true "optional": true
}, },
"@next/swc-darwin-x64": { "@next/swc-darwin-x64": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.2.tgz",
"integrity": "sha512-o1vIKYbZORyDmTrPV1hApt9NLyWrS5vr2p5hhLGpOnkBY1cz6DAXjv8Lgan8t6X87+83F0EUDlu7klN8ieZ06A==", "integrity": "sha512-x7Afi/jt0ZBRUZHTi49yyej4o8znfIMHO4RvThuoc0P+uli8Jd99y5GKjxoYunPKsXL09xBXEM1+OQy2xEL0Ag==",
"optional": true "optional": true
}, },
"@next/swc-linux-arm64-gnu": { "@next/swc-linux-arm64-gnu": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.2.tgz",
"integrity": "sha512-JRyAl8lCfyTng4zoOmE6hNI2f1MFUr7JyTYCHl1RxX42H4a5LMwJhDVQ7a9tmDZ/yj+0hpBn+Aan+d6lA3v0UQ==", "integrity": "sha512-zbfPtkk7L41ODMJwSp5VbmPozPmMMQrzAc0HAUomVeVIIwlDGs/UCqLJvLNDt4jpWgc21SjjyIn762lNGrMaUA==",
"optional": true "optional": true
}, },
"@next/swc-linux-arm64-musl": { "@next/swc-linux-arm64-musl": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.2.tgz",
"integrity": "sha512-9gqVqNzUMWbUDgDiND18xoUqhwSm2gmksqXgCU0qaOKt6oAjWz8cWYjgpPVD0WICKFylEY/gvPEP1fMZDVFZ/g==", "integrity": "sha512-wPbS3pI/JU16rm3XdLvvTmlsmm1nd+sBa2ohXgBZcShX4TgOjD4R+RqHKlI1cjo/jDZKXt6OxmcU0Iys0OC/yg==",
"optional": true "optional": true
}, },
"@next/swc-linux-x64-gnu": { "@next/swc-linux-x64-gnu": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.2.tgz",
"integrity": "sha512-KcQGwchAKmZVPa8i5PLTxvTs1/rcFnSltfpTm803Tr/BtBV3AxCkHLfhtoyVtVzx/kl/oue8oS+DSmbepQKwhw==", "integrity": "sha512-NqWOHqqq8iC9tuHvZxjQ2tX+jWy2X9y8NX2mcB4sj2bIccuCxbIZrU/ThFPZZPauygajZuVQ6zediejQHwZHwQ==",
"optional": true "optional": true
}, },
"@next/swc-linux-x64-musl": { "@next/swc-linux-x64-musl": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.2.tgz",
"integrity": "sha512-2RbMZNxYnJmW8EPHVBsGZPq5zqWAyBOc/YFxq/jIQ/Yn3RMFZ1dZVCjtIcsiaKmgh7mjA/W0ApbumutHNxRqqQ==", "integrity": "sha512-lGepHhwb9sGhCcU7999+iK1ZZT+6rrIoVg40MP7DZski9GIZP80wORSbt5kJzh9v2x2ev2lxC6VgwMQT0PcgTA==",
"optional": true "optional": true
}, },
"@next/swc-win32-arm64-msvc": { "@next/swc-win32-arm64-msvc": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.2.tgz",
"integrity": "sha512-thDcGonELN7edUKzjzlHrdoKkm7y8IAdItQpRvvMxNUXa4d9r0ElofhTZj5emR7AiXft17hpen+QAkcWpqG7Jg==", "integrity": "sha512-TZSh/48SfcLEQ4rD25VVn2kdIgUWmMflRX3OiyPwGNXn3NiyPqhqei/BaqCYXViIQ+6QsG9R0C8LftMqy8JPMA==",
"optional": true "optional": true
}, },
"@next/swc-win32-ia32-msvc": { "@next/swc-win32-ia32-msvc": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.2.tgz",
"integrity": "sha512-f7SE1Mo4JAchUWl0LQsbtySR9xCa+x55C0taetjUApKtcLR3AgAjASrrP+oE1inmLmw573qRnE1eZN8YJfEBQw==", "integrity": "sha512-M0tBVNMEBJN2ZNQWlcekMn6pvLria7Sa2Fai5znm7CCJz4pP3lrvlSxhKdkCerk0D9E0bqx5yAo3o2Q7RrD4gA==",
"optional": true "optional": true
}, },
"@next/swc-win32-x64-msvc": { "@next/swc-win32-x64-msvc": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.16.tgz", "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.2.tgz",
"integrity": "sha512-WamDZm1M/OEM4QLce3lOmD1XdLEl37zYZwlmOLhmF7qYJ2G6oYm9+ejZVv+LakQIsIuXhSpVlOvrxIAHqwRkPQ==", "integrity": "sha512-a/20E/wtTJZ3Ykv3f/8F0l7TtgQa2LWHU2oNB9bsu0VjqGuGGHmm/q6waoUNQYTVPYrrlxxaHjJcDV6aiSTt/w==",
"optional": true "optional": true
}, },
"@nodelib/fs.scandir": { "@nodelib/fs.scandir": {
@ -10870,11 +10888,17 @@
"resolved": "https://registry.npmjs.org/@stripe/stripe-js/-/stripe-js-2.2.1.tgz", "resolved": "https://registry.npmjs.org/@stripe/stripe-js/-/stripe-js-2.2.1.tgz",
"integrity": "sha512-Wd81A0u8EwT3cf+Xv1mpMI18RbXVhgh19MtPcF9ojNTlG3kl36B1+XFe1KQfnJxD3WRnVfDuI0rNCK53mcGm6g==" "integrity": "sha512-Wd81A0u8EwT3cf+Xv1mpMI18RbXVhgh19MtPcF9ojNTlG3kl36B1+XFe1KQfnJxD3WRnVfDuI0rNCK53mcGm6g=="
}, },
"@swc/counter": {
"version": "0.1.3",
"resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz",
"integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ=="
},
"@swc/helpers": { "@swc/helpers": {
"version": "0.5.1", "version": "0.5.5",
"resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz", "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.5.tgz",
"integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==", "integrity": "sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==",
"requires": { "requires": {
"@swc/counter": "^0.1.3",
"tslib": "^2.4.0" "tslib": "^2.4.0"
} }
}, },
@ -10916,6 +10940,19 @@
} }
} }
}, },
"@tanstack/react-virtual": {
"version": "3.4.0",
"resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.4.0.tgz",
"integrity": "sha512-GZN4xn/Tg5w7gvYeVcMVCeL4pEyUhvg+Cp6KX2Z01C4FRNxIWMgIQ9ibgMarNQfo+gt0PVLcEER4A9sNv/jlow==",
"requires": {
"@tanstack/virtual-core": "3.4.0"
}
},
"@tanstack/virtual-core": {
"version": "3.4.0",
"resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.4.0.tgz",
"integrity": "sha512-75jXqXxqq5M5Veb9KP1STi8kA5u408uOOAefk2ftHDGCpUk3RP6zX++QqfbmHJTBiU72NQ+ghgCZVts/Wocz8Q=="
},
"@types/acorn": { "@types/acorn": {
"version": "4.0.6", "version": "4.0.6",
"resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz", "resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz",
@ -10977,7 +11014,6 @@
"version": "0.8.3", "version": "0.8.3",
"resolved": "https://registry.npmjs.org/@types/ical/-/ical-0.8.3.tgz", "resolved": "https://registry.npmjs.org/@types/ical/-/ical-0.8.3.tgz",
"integrity": "sha512-qPejGORaXOstmqyKzp0Qw9nXDPiWiahiJJcx4zMB0zJVg0rLfJ6bDip/naqagEqYTjKl/LI91399hR8zFwRJ5A==", "integrity": "sha512-qPejGORaXOstmqyKzp0Qw9nXDPiWiahiJJcx4zMB0zJVg0rLfJ6bDip/naqagEqYTjKl/LI91399hR8zFwRJ5A==",
"dev": true,
"requires": { "requires": {
"rrule": "2.6.4" "rrule": "2.6.4"
}, },
@ -10986,7 +11022,6 @@
"version": "2.6.4", "version": "2.6.4",
"resolved": "https://registry.npmjs.org/rrule/-/rrule-2.6.4.tgz", "resolved": "https://registry.npmjs.org/rrule/-/rrule-2.6.4.tgz",
"integrity": "sha512-sLdnh4lmjUqq8liFiOUXD5kWp/FcnbDLPwq5YAc/RrN6120XOPb86Ae5zxF7ttBVq8O3LxjjORMEit1baluahA==", "integrity": "sha512-sLdnh4lmjUqq8liFiOUXD5kWp/FcnbDLPwq5YAc/RrN6120XOPb86Ae5zxF7ttBVq8O3LxjjORMEit1baluahA==",
"dev": true,
"requires": { "requires": {
"luxon": "^1.21.3", "luxon": "^1.21.3",
"tslib": "^1.10.0" "tslib": "^1.10.0"
@ -10995,8 +11030,7 @@
"tslib": { "tslib": {
"version": "1.14.1", "version": "1.14.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
"integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
"dev": true
} }
} }
}, },
@ -11054,7 +11088,6 @@
"version": "18.2.7", "version": "18.2.7",
"resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.7.tgz", "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.7.tgz",
"integrity": "sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==", "integrity": "sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==",
"dev": true,
"requires": { "requires": {
"@types/react": "*" "@types/react": "*"
} }
@ -11072,8 +11105,7 @@
"@types/webpack-env": { "@types/webpack-env": {
"version": "1.18.1", "version": "1.18.1",
"resolved": "https://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.18.1.tgz", "resolved": "https://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.18.1.tgz",
"integrity": "sha512-D0HJET2/UY6k9L6y3f5BL+IDxZmPkYmPT4+qBrRdmRLYRuV0qNKizMgTvYxXZYn+36zjPeoDZAEYBCM6XB+gww==", "integrity": "sha512-D0HJET2/UY6k9L6y3f5BL+IDxZmPkYmPT4+qBrRdmRLYRuV0qNKizMgTvYxXZYn+36zjPeoDZAEYBCM6XB+gww=="
"dev": true
}, },
"@typescript-eslint/parser": { "@typescript-eslint/parser": {
"version": "5.62.0", "version": "5.62.0",
@ -11795,9 +11827,9 @@
"integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==" "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA=="
}, },
"caniuse-lite": { "caniuse-lite": {
"version": "1.0.30001517", "version": "1.0.30001611",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001611.tgz",
"integrity": "sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA==" "integrity": "sha512-19NuN1/3PjA3QI8Eki55N8my4LzfkMCRLgCVfrl/slbSAchQfV0+GwjPrK3rq37As4UCLlM/DHajbKkAqbv92Q=="
}, },
"capture-stack-trace": { "capture-stack-trace": {
"version": "1.0.2", "version": "1.0.2",
@ -13223,7 +13255,8 @@
"glob-to-regexp": { "glob-to-regexp": {
"version": "0.4.1", "version": "0.4.1",
"resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
"integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==",
"peer": true
}, },
"global-dirs": { "global-dirs": {
"version": "2.1.0", "version": "2.1.0",
@ -13933,9 +13966,9 @@
} }
}, },
"jiti": { "jiti": {
"version": "1.19.1", "version": "1.21.0",
"resolved": "https://registry.npmjs.org/jiti/-/jiti-1.19.1.tgz", "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz",
"integrity": "sha512-oVhqoRDaBXf7sjkll95LHVS6Myyyb1zaunVwk4Z0+WPSW4gjS0pl01zYKHScTuyEhQsFxV5L4DR5r+YqSyqyyg==" "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q=="
}, },
"js-tokens": { "js-tokens": {
"version": "4.0.0", "version": "4.0.0",
@ -15514,47 +15547,40 @@
"peer": true "peer": true
}, },
"next": { "next": {
"version": "13.4.16", "version": "14.2.2",
"resolved": "https://registry.npmjs.org/next/-/next-13.4.16.tgz", "resolved": "https://registry.npmjs.org/next/-/next-14.2.2.tgz",
"integrity": "sha512-1xaA/5DrfpPu0eV31Iro7JfPeqO8uxQWb1zYNTe+KDKdzqkAGapLcDYHMLNKXKB7lHjZ7LfKUOf9dyuzcibrhA==", "integrity": "sha512-oGwUaa2bCs47FbuxWMpOoXtBMPYpvTPgdZr3UAo+pu7Ns00z9otmYpoeV1HEiYL06AlRQQIA/ypK526KjJfaxg==",
"requires": { "requires": {
"@next/env": "13.4.16", "@next/env": "14.2.2",
"@next/swc-darwin-arm64": "13.4.16", "@next/swc-darwin-arm64": "14.2.2",
"@next/swc-darwin-x64": "13.4.16", "@next/swc-darwin-x64": "14.2.2",
"@next/swc-linux-arm64-gnu": "13.4.16", "@next/swc-linux-arm64-gnu": "14.2.2",
"@next/swc-linux-arm64-musl": "13.4.16", "@next/swc-linux-arm64-musl": "14.2.2",
"@next/swc-linux-x64-gnu": "13.4.16", "@next/swc-linux-x64-gnu": "14.2.2",
"@next/swc-linux-x64-musl": "13.4.16", "@next/swc-linux-x64-musl": "14.2.2",
"@next/swc-win32-arm64-msvc": "13.4.16", "@next/swc-win32-arm64-msvc": "14.2.2",
"@next/swc-win32-ia32-msvc": "13.4.16", "@next/swc-win32-ia32-msvc": "14.2.2",
"@next/swc-win32-x64-msvc": "13.4.16", "@next/swc-win32-x64-msvc": "14.2.2",
"@swc/helpers": "0.5.1", "@swc/helpers": "0.5.5",
"busboy": "1.6.0", "busboy": "1.6.0",
"caniuse-lite": "^1.0.30001406", "caniuse-lite": "^1.0.30001579",
"postcss": "8.4.14", "graceful-fs": "^4.2.11",
"styled-jsx": "5.1.1", "postcss": "8.4.31",
"watchpack": "2.4.0", "styled-jsx": "5.1.1"
"zod": "3.21.4"
}, },
"dependencies": { "dependencies": {
"postcss": { "postcss": {
"version": "8.4.14", "version": "8.4.31",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz",
"integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==",
"requires": { "requires": {
"nanoid": "^3.3.4", "nanoid": "^3.3.6",
"picocolors": "^1.0.0", "picocolors": "^1.0.0",
"source-map-js": "^1.0.2" "source-map-js": "^1.0.2"
} }
} }
} }
}, },
"next-themes": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.2.1.tgz",
"integrity": "sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==",
"requires": {}
},
"node-abi": { "node-abi": {
"version": "3.46.0", "version": "3.46.0",
"resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.46.0.tgz", "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.46.0.tgz",
@ -16986,19 +17012,19 @@
} }
}, },
"tailwindcss": { "tailwindcss": {
"version": "3.3.3", "version": "3.4.3",
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.3.tgz", "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.3.tgz",
"integrity": "sha512-A0KgSkef7eE4Mf+nKJ83i75TMyq8HqY3qmFIJSWy8bNt0v1lG7jUcpGpoTFxAwYcWOphcTBLPPJg+bDfhDf52w==", "integrity": "sha512-U7sxQk/n397Bmx4JHbJx/iSOOv5G+II3f1kpLpY2QeUv5DcPdcTsYLlusZfq1NthHS1c1cZoyFmmkex1rzke0A==",
"requires": { "requires": {
"@alloc/quick-lru": "^5.2.0", "@alloc/quick-lru": "^5.2.0",
"arg": "^5.0.2", "arg": "^5.0.2",
"chokidar": "^3.5.3", "chokidar": "^3.5.3",
"didyoumean": "^1.2.2", "didyoumean": "^1.2.2",
"dlv": "^1.1.3", "dlv": "^1.1.3",
"fast-glob": "^3.2.12", "fast-glob": "^3.3.0",
"glob-parent": "^6.0.2", "glob-parent": "^6.0.2",
"is-glob": "^4.0.3", "is-glob": "^4.0.3",
"jiti": "^1.18.2", "jiti": "^1.21.0",
"lilconfig": "^2.1.0", "lilconfig": "^2.1.0",
"micromatch": "^4.0.5", "micromatch": "^4.0.5",
"normalize-path": "^3.0.0", "normalize-path": "^3.0.0",
@ -17264,9 +17290,9 @@
} }
}, },
"typescript": { "typescript": {
"version": "5.1.6", "version": "5.4.5",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz",
"integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==" "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ=="
}, },
"unbox-primitive": { "unbox-primitive": {
"version": "1.0.2", "version": "1.0.2",
@ -17551,6 +17577,7 @@
"version": "2.4.0", "version": "2.4.0",
"resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
"integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==",
"peer": true,
"requires": { "requires": {
"glob-to-regexp": "^0.4.1", "glob-to-regexp": "^0.4.1",
"graceful-fs": "^4.1.2" "graceful-fs": "^4.1.2"
@ -17888,11 +17915,6 @@
"integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",
"dev": true "dev": true
}, },
"zod": {
"version": "3.21.4",
"resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz",
"integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw=="
},
"zwitch": { "zwitch": {
"version": "2.0.4", "version": "2.0.4",
"resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz",

View File

@ -10,12 +10,12 @@
}, },
"browserslist": "defaults, not ie <= 11", "browserslist": "defaults, not ie <= 11",
"dependencies": { "dependencies": {
"@headlessui/react": "1.7.17", "@headlessui/react": "1.7.19",
"@heroicons/react": "^2.0.18", "@heroicons/react": "^2.0.18",
"@mapbox/rehype-prism": "^0.8.0", "@mapbox/rehype-prism": "^0.8.0",
"@mdx-js/loader": "^2.3.0", "@mdx-js/loader": "^2.3.0",
"@mdx-js/react": "^2.3.0", "@mdx-js/react": "^2.3.0",
"@next/mdx": "13.4.16", "@next/mdx": "14.2.2",
"@stripe/react-stripe-js": "2.4.0", "@stripe/react-stripe-js": "2.4.0",
"@stripe/stripe-js": "2.2.1", "@stripe/stripe-js": "2.2.1",
"@tailwindcss/forms": "0.5.7", "@tailwindcss/forms": "0.5.7",
@ -31,16 +31,15 @@
"fast-glob": "^3.2.11", "fast-glob": "^3.2.11",
"feed": "^4.2.2", "feed": "^4.2.2",
"ical": "^0.8.0", "ical": "^0.8.0",
"next": "13.4.16", "next": "14.2.2",
"next-themes": "^0.2.1",
"postmark": "4.0.2", "postmark": "4.0.2",
"react": "18.2.0", "react": "18.2.0",
"react-dom": "18.2.0", "react-dom": "18.2.0",
"remark-gfm": "^3.0.1", "remark-gfm": "^3.0.1",
"sharp": "0.32.6", "sharp": "0.32.6",
"stripe": "14.9.0", "stripe": "14.9.0",
"tailwindcss": "^3.3.3", "tailwindcss": "3.4.3",
"typescript": "5.1.6" "typescript": "5.4.5"
}, },
"devDependencies": { "devDependencies": {
"@types/node": "20.4.7", "@types/node": "20.4.7",
@ -49,4 +48,4 @@
"prettier": "^3.0.1", "prettier": "^3.0.1",
"prettier-plugin-tailwindcss": "^0.5.2" "prettier-plugin-tailwindcss": "^0.5.2"
} }
} }

View File

@ -80,19 +80,19 @@ export default function Club() {
<TableCell>Vice President</TableCell> <TableCell>Vice President</TableCell>
</tr> </tr>
<tr> <tr>
<TableLeftHeading>Tony Grosinger</TableLeftHeading> <TableLeftHeading>Beth Gasser</TableLeftHeading>
<TableCell>Secretary</TableCell> <TableCell>Secretary</TableCell>
</tr> </tr>
<tr> <tr>
<TableLeftHeading>Temporarily performed by Secretary</TableLeftHeading> <TableLeftHeading>Tony Grosinger</TableLeftHeading>
<TableCell>Treasurer</TableCell> <TableCell>Treasurer</TableCell>
</tr> </tr>
<tr> <tr>
<TableLeftHeading>Mark Gasser</TableLeftHeading> <TableLeftHeading>Leslie Brown</TableLeftHeading>
<TableCell>Director</TableCell> <TableCell>Director</TableCell>
</tr> </tr>
<tr> <tr>
<TableLeftHeading>Leslie Brown</TableLeftHeading> <TableLeftHeading>Linn Hulley</TableLeftHeading>
<TableCell>Director</TableCell> <TableCell>Director</TableCell>
</tr> </tr>
</tbody> </tbody>

View File

@ -131,7 +131,7 @@ export const CalendarComponent: React.FC<{ calendar: Calendar }> = ({ calendar }
</header> </header>
<div className="shadow ring-1 ring-black ring-opacity-5 lg:flex lg:flex-auto lg:flex-col"> <div className="shadow ring-1 ring-black ring-opacity-5 lg:flex lg:flex-auto lg:flex-col">
<div className="grid grid-cols-7 gap-px border-b border-zinc-100 bg-gray-200 text-center text-xs font-semibold leading-6 text-gray-700 lg:flex-none"> <div className="grid grid-cols-7 gap-px border-b border-zinc-100 bg-gray-200 text-center text-xs font-semibold leading-6 text-gray-700 lg:flex-none">
{[['M', 'on'], ['T', 'ue'], ['W', 'ed'], ['T', 'hu'], ['F', 'ri'], ['S', 'at'], ['S', 'un']].map((d) => ( {[['S', 'un'], ['M', 'on'], ['T', 'ue'], ['W', 'ed'], ['T', 'hu'], ['F', 'ri'], ['S', 'at']].map((d) => (
<div key={d[0] + d[1]} className="bg-white py-2"> <div key={d[0] + d[1]} className="bg-white py-2">
{d[0]}<span className="sr-only sm:not-sr-only">{d[1]}</span> {d[0]}<span className="sr-only sm:not-sr-only">{d[1]}</span>
</div> </div>

View File

@ -3,6 +3,7 @@ import dayjs from "dayjs";
import React from 'react'; import React from 'react';
import { CalendarComponent } from "./calendar"; import { CalendarComponent } from "./calendar";
import { Container } from "@/components/Container"; import { Container } from "@/components/Container";
import { Metadata } from "next";
const icalAddr = process.env.CALENDAR_ADDR || ''; const icalAddr = process.env.CALENDAR_ADDR || '';
@ -43,7 +44,13 @@ async function loadCalendar(): Promise<void> {
return; return;
} }
const icalContents = await (await fetch(icalAddr)).text(); console.log("Refreshing iCal from Google Calendar")
// For some reason Google Calendar is sending different content based on who is requesting it.
const headers = new Headers();
headers.set('User-Agent', 'curl/7.54.1');
const icalContents = await (await fetch(icalAddr, { headers })).text();
const events = ical.parseICS(icalContents); const events = ical.parseICS(icalContents);
const thisMonth = dayjs().startOf('month'); const thisMonth = dayjs().startOf('month');
const yesterday = dayjs().startOf('day').subtract(1, 'day'); const yesterday = dayjs().startOf('day').subtract(1, 'day');
@ -103,6 +110,12 @@ async function loadCalendar(): Promise<void> {
upcomingEvents = upcoming; upcomingEvents = upcoming;
} }
export const metadata: Metadata = {
title: 'Events Calendar',
description:
'Upcoming events and rentals ast the West Sound Hall.',
}
export default async function Calendar() { export default async function Calendar() {
const calendar = await getCalendar(); const calendar = await getCalendar();

View File

@ -0,0 +1,37 @@
"use client"
export default function MailingListSignupForm(): React.JSX.Element {
return (<form method="post" action="https://lists.orcas.community/subscription/form" className="listmonk-form">
<div className="flex flex-col gap-y-2">
<h3 className="text-lg font-semibold text-gray-900">Join our mailing list</h3>
<input type="hidden" name="nonce" />
<div>
<label htmlFor="email" className="sr-only">Email</label>
<input
type="email"
name="email"
id="email"
className="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6"
placeholder="you@example.com" />
</div>
<div>
<label htmlFor="name" className="sr-only">Name</label>
<input
type="text"
name="name"
id="name"
className="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6"
placeholder="Jane Doe" />
</div>
<input className="hidden" type="checkbox" name="l" checked value="ea5f1e67-2ff0-4762-8893-0645e93a8306" />
<div className="h-captcha flex justify-center" data-sitekey="77aeddb4-cfda-4a3e-b262-0288a4e4664a"></div>
<script src="https://js.hcaptcha.com/1/api.js" async defer></script>
<input
className="w-full rounded-md flex justify-center border border-transparent bg-indigo-600 px-4 py-2 text-sm font-medium text-white shadow-sm hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2"
id="submit"
type="submit"
value="Subscribe"
/>
</div>
</form>);
}

View File

@ -34,7 +34,7 @@ function SocialLink({
} }
export const metadata: Metadata = { export const metadata: Metadata = {
title: 'West Sound Community Club', title: 'Community Club',
description: description:
'The West Sound Community Club on Orcas Island.', 'The West Sound Community Club on Orcas Island.',
} }
@ -52,6 +52,13 @@ export default function Club() {
{ ssr: false } { ssr: false }
); );
const MailingListSignupForm = dynamic(
() => {
return import("./mailinglist");
},
{ ssr: false }
);
return ( return (
<Container className="mt-16 sm:mt-32"> <Container className="mt-16 sm:mt-32">
<div className="grid grid-cols-1 gap-y-16 lg:grid-cols-2 lg:grid-rows-[auto_1fr] lg:gap-y-12"> <div className="grid grid-cols-1 gap-y-16 lg:grid-cols-2 lg:grid-rows-[auto_1fr] lg:gap-y-12">
@ -94,15 +101,7 @@ export default function Club() {
</div> </div>
<div className="lg:pl-20"> <div className="lg:pl-20">
<ul role="list"> <ul role="list">
<SocialLink href="/WSCC-Membership-Form.pdf" icon={UserPlusIcon}> <MailingListSignupForm />
Membership Form
</SocialLink>
<SocialLink href="https://groups.orcashub.org/invites/YkP79vjDtz" icon={AtSymbolIcon} className="mt-4">
Club Member Mailing List
</SocialLink>
<SocialLink href="https://groups.orcashub.org/invites/Lg87tP3G2V" icon={AtSymbolIcon} className="mt-4">
West Sound Neighbor to Neighbor Mailing List
</SocialLink>
<SocialLink <SocialLink
href="mailto:contact@westsoundhall.org" href="mailto:contact@westsoundhall.org"
icon={EnvelopeIcon} icon={EnvelopeIcon}

View File

@ -279,7 +279,7 @@ function CheckoutForm({
</h2> </h2>
<div className="rounded-md mb-3 px-3 pb-1.5 pt-2.5 shadow-sm ring-1 ring-inset ring-gray-200 focus-within:ring-2 focus-within:ring-indigo-600"> <div className="rounded-md mb-3 px-3 pb-1.5 pt-2.5 shadow-sm ring-1 ring-inset ring-gray-200 focus-within:ring-2 focus-within:ring-indigo-600">
<label htmlFor="name" className="block text-xs font-medium text-gray-900"> <label htmlFor="email" className="block text-xs font-medium text-gray-900">
Email Email
</label> </label>
<input <input

View File

@ -79,7 +79,7 @@ function DateListItem({
} }
export const metadata: Metadata = { export const metadata: Metadata = {
title: 'West Sound Hall History', title: 'Hall History',
description: description:
'The history of the West Sound Community Hall on Orcas Island.', 'The history of the West Sound Community Hall on Orcas Island.',
} }

View File

@ -1,5 +1,5 @@
import { ArticleLayout } from '@/components/ArticleLayout' import { ArticleLayout } from '@/components/ArticleLayout'
import Image from 'next/image' import {MdxImage as Image } from '@/components/MdxImage'
import boddingtonStore from './Boddingtons_Store_West_Sound.jpg' import boddingtonStore from './Boddingtons_Store_West_Sound.jpg'
import westSoundMainStreet from './West_Sound_Main_Street.jpg' import westSoundMainStreet from './West_Sound_Main_Street.jpg'
import westSound from './West_Sound.jpg' import westSound from './West_Sound.jpg'
@ -8,7 +8,7 @@ export const article = {
author: 'Tony Grosinger', author: 'Tony Grosinger',
date: '2024-02-17', date: '2024-02-17',
title: 'February 2024 Potluck', title: 'February 2024 Potluck',
description: "The second potluck of the year, with a slidshow of Orcas history from John Wachter.", description: "The second potluck of the year, with a slideshow of Orcas history from John Wachter.",
} }

View File

@ -1,5 +1,5 @@
import { ArticleLayout } from '@/components/ArticleLayout' import { ArticleLayout } from '@/components/ArticleLayout'
import Image from 'next/image' import {MdxImage as Image } from '@/components/MdxImage'
import townHallMeeting from './town-hall-meeting.jpg' import townHallMeeting from './town-hall-meeting.jpg'
export const article = { export const article = {

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 MiB

View File

@ -0,0 +1,54 @@
import { ArticleLayout } from '@/components/ArticleLayout'
import {MdxImage as Image } from '@/components/MdxImage'
import landBankPresentation from './Land_Bank_Presentation.jpg'
export const article = {
author: 'Tony Grosinger',
date: '2024-09-21',
title: 'September 2024 Potluck',
description: "Our first potluck after the summer break, with Board of Director nominations for the election next month.",
}
export const metadata = {
title: article.title,
description: article.description,
}
export default (props) => <ArticleLayout article={article} {...props} />
Summer is wrapping up and the monthly potlucks at the West Sound Hall have
returned! There are several exciting developments to share with you. Here's a
quick update on what was discussed at our recent community potluck:
In October, a contractor will be repairing the north end of the hall using the
funds we raised earlier this year with Give Orcas.
Also in October, we will be electing the new Board of Directors. Our nominating
committee - Cathy and Grant - have announced the slate of candidates. This
year's nominees are:
- Lisa Pedersen for President
- Betsy Wareham for Vice President
- Beth Gasser for Secretary
- Tony Grosinger for Treasurer
- Leslie Brown for Director 1
- Linn Hulley for Director 2
No additional nominations were made from the floor during the meeting. We
encourage all members to join us at the October 19th potluck to vote for the
new board.
<div className="not-prose flex flex-col items-center">
<Image src={landBankPresentation} alt="Lincoln Bormann from the SJC Land Bank presenting at the potluck." />
<span className="mt-2 text-sm text-zinc-400">
Lincoln Bormann from the SJC Land Bank presenting at the potluck.
</span>
</div>
After the potluck dinner, Lincoln Bormann and Brian Wiese from the San Juan
County Land Bank gave a presentation outlining the work they do, how they make
decisions about what land to acquire, and provided updates for newly opening
parks. The Land Bank will be up for election this fall and you can learn more
on their website - https://sjclandbank.org.

Binary file not shown.

After

Width:  |  Height:  |  Size: 239 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 245 KiB

View File

@ -0,0 +1,44 @@
import { ArticleLayout } from '@/components/ArticleLayout'
import {MdxImage as Image } from '@/components/MdxImage'
import wallUpper from './N_Wall_Upper.jpg'
import wallLower from './N_Wall_Lower.jpg'
export const article = {
author: 'Tony Grosinger',
date: '2024-10-20',
title: 'Election and Building Repairs',
description: "Board of director elections took place, as well as some updates on building maintenance.",
}
export const metadata = {
title: article.title,
description: article.description,
}
export default (props) => <ArticleLayout article={article} {...props} />
At the October potluck we accepted votes for the 2024-2025 Board of Directors. Between those present and votes emailed prior to the potluck, we had enough participants to make a quorum and approve the slate.
There are also several new updates related to hall maintenance. First, repairs to the north wall ar under way! This maintenance work was made possible by generous donations during the Spring Give Orcas campaign where we raised $10,000.
<div className="not-prose flex flex-col items-center">
<Image src={wallUpper} alt="Repairs to the upper portion of the north wall." />
<span className="mt-2 text-sm text-zinc-400">
Repairs to the upper portion of the north wall.
</span>
</div>
<div className="not-prose flex flex-col items-center">
<Image src={wallLower} alt="Repairs to the lower portion of the north wall." />
<span className="mt-2 text-sm text-zinc-400">
Repairs to the lower portion of the north wall.
</span>
</div>
By the end of the month this wall should have brand new siding that will keep out the rain and breeze.
We also learned this month that our well water is not potable. After working with multiple experts and performing several rounds of chlorination treatment of the well and storage tanks, it has been determined that the best route forward is likely to abandon this water system and to move towards joining West Sound Water Association.
There is still lots of discussion and planning necessary before we can even break ground on making the hook up, but every party is working very hard to restore drinkable water to the hall as soon as possible!

View File

@ -1,5 +1,5 @@
import { ArticleLayout } from '@/components/ArticleLayout' import { ArticleLayout } from '@/components/ArticleLayout'
import Image from 'next/image' import {MdxImage as Image } from '@/components/MdxImage'
import originalWebsite from './westsoundhall-original-website.png' import originalWebsite from './westsoundhall-original-website.png'
export const article = { export const article = {

View File

@ -34,7 +34,7 @@ function SocialLink({
} }
export const metadata: Metadata = { export const metadata: Metadata = {
title: 'West Sound Hall Rental', title: 'Hall Rental',
description: description:
'Rental information for the West Sound Hall.', 'Rental information for the West Sound Hall.',
} }

View File

@ -0,0 +1,7 @@
import React from 'react'
import Image, { ImageProps } from 'next/image'
// Workaround for https://github.com/hashicorp/next-mdx-remote/issues/405
export function MdxImage(props: ImageProps) {
return <Image {...props} alt={props.alt} />;
}