diff --git a/deno.lock b/deno.lock index 35f9026..c65eb89 100644 --- a/deno.lock +++ b/deno.lock @@ -2,23 +2,25 @@ "version": "5", "specifiers": { "jsr:@ryu/deno-lint-plugin-tailwindcss@0.2.0": "0.2.0", - "npm:@deno/vite-plugin@^1.0.6": "1.0.6_vite@7.3.3__lightningcss@1.32.0", + "npm:@deno/vite-plugin@^1.0.6": "1.0.6_vite@7.3.5__lightningcss@1.32.0", "npm:@iconify-json/solar@^1.2.5": "1.2.5", + "npm:@sentry/solid@^10.55.0": "10.55.0_@tanstack+solid-router@1.170.10__solid-js@1.9.13_solid-js@1.9.13", + "npm:@sentry/vite-plugin@^5.3.0": "5.3.0", "npm:@solid-primitives/i18n@^2.2.1": "2.2.1_solid-js@1.9.13", "npm:@solid-primitives/storage@^4.3.4": "4.3.4_solid-js@1.9.13", - "npm:@tanstack/solid-router@^1.170.9": "1.170.9_solid-js@1.9.13", - "npm:@tanstack/solid-start@^1.168.16": "1.168.16_solid-js@1.9.13_vite@7.3.3__lightningcss@1.32.0", + "npm:@tanstack/solid-router@^1.170.10": "1.170.10_solid-js@1.9.13", + "npm:@tanstack/solid-start@^1.168.18": "1.168.18_solid-js@1.9.13_vite@7.3.5__lightningcss@1.32.0_vite-plugin-solid@2.11.12__solid-js@1.9.13__vite@7.3.5___lightningcss@1.32.0__lightningcss@1.32.0", "npm:@vite-pwa/assets-generator@^1.0.2": "1.0.2", "npm:class-variance-authority@~0.7.1": "0.7.1", "npm:kysely@~0.29.2": "0.29.2", "npm:nanoid@^5.1.11": "5.1.11", - "npm:nitro@^3.0.260522-beta": "3.0.260522-beta_vite@7.3.3__lightningcss@1.32.0", + "npm:nitro@^3.0.260522-beta": "3.0.260522-beta_vite@7.3.5__lightningcss@1.32.0", "npm:solid-js@^1.9.13": "1.9.13", - "npm:sqlocal@0.18": "0.18.0_kysely@0.29.2_vite@7.3.3__lightningcss@1.32.0", - "npm:unocss@^66.7.0": "66.7.0_vite@7.3.3__lightningcss@1.32.0", - "npm:vite-plugin-pwa@^1.3.0": "1.3.0_@vite-pwa+assets-generator@1.0.2_vite@7.3.3__lightningcss@1.32.0_workbox-window@7.4.1", - "npm:vite-plugin-solid@^2.11.12": "2.11.12_solid-js@1.9.13_vite@7.3.3__lightningcss@1.32.0", - "npm:vite@^7.3.3": "7.3.3_lightningcss@1.32.0", + "npm:sqlocal@0.18": "0.18.0_kysely@0.29.2_vite@7.3.5__lightningcss@1.32.0", + "npm:unocss@^66.7.0": "66.7.0_vite@7.3.5__lightningcss@1.32.0", + "npm:vite-plugin-pwa@^1.3.0": "1.3.0_@vite-pwa+assets-generator@1.0.2_vite@7.3.5__lightningcss@1.32.0_workbox-window@7.4.1", + "npm:vite-plugin-solid@^2.11.12": "2.11.12_solid-js@1.9.13_vite@7.3.5__lightningcss@1.32.0_lightningcss@1.32.0", + "npm:vite@^7.3.5": "7.3.5_lightningcss@1.32.0", "npm:workbox-core@^7.4.1": "7.4.1", "npm:workbox-precaching@^7.4.1": "7.4.1", "npm:workbox-routing@^7.4.1": "7.4.1", @@ -846,7 +848,7 @@ "@canvas/image-data@1.1.0": { "integrity": "sha512-QdObRRjRbcXGmM1tmJ+MrHcaz1MftF2+W7YI+MsphnsCrmtyfS0d5qJbk0MeSbUeyM/jCb0hmnkXPsy026L7dA==" }, - "@deno/vite-plugin@1.0.6_vite@7.3.3__lightningcss@1.32.0": { + "@deno/vite-plugin@1.0.6_vite@7.3.5__lightningcss@1.32.0": { "integrity": "sha512-Sh5XqvFuKAwjARTesi0n6xRpEXm1V0UeqKh+SxIrexCofxOaieNDMqXZD02RiZCg0mrJ43V8eCMuVrDfq6mLmg==", "dependencies": [ "vite" @@ -1598,6 +1600,147 @@ "os": ["win32"], "cpu": ["x64"] }, + "@sentry-internal/browser-utils@10.55.0": { + "integrity": "sha512-zUvyBr13EK0evKsSTzwSimRzZ3P9kugS32dLCj3ea5gNN+/DFtU/GsMTdcIQDhusEDraIlH17AGgqJH5gUAv5w==", + "dependencies": [ + "@sentry/core" + ] + }, + "@sentry-internal/feedback@10.55.0": { + "integrity": "sha512-32X9WW1xs5DjCRlp89QJ/PLw4kbTIX6MsBDXN2RBN1nWBjm/2WcwXqO/v/WoIS4W2kTWXcZnQwalLSI22Fp33A==", + "dependencies": [ + "@sentry/core" + ] + }, + "@sentry-internal/replay-canvas@10.55.0": { + "integrity": "sha512-lu/y7k9cK7FZ/qJpL0fBX4WqK6IFa/+bTPhedEaC5UpzjUNP7BfXt0H+R7q9CHWmp20Ffh/wGfO3j7O+Tv2MAA==", + "dependencies": [ + "@sentry-internal/replay", + "@sentry/core" + ] + }, + "@sentry-internal/replay@10.55.0": { + "integrity": "sha512-OkQpANGwYU5UKfwLk6Y+NpESRC8nrLBjawRDLwF6cJ8HpNScOuNNJDEJEGwXHVkJPH0pcIixsH8y0Qfcltq6Xw==", + "dependencies": [ + "@sentry-internal/browser-utils", + "@sentry/core" + ] + }, + "@sentry/babel-plugin-component-annotate@5.3.0": { + "integrity": "sha512-p4q8gn8wcFqZGP/s2MnJCAAd8fTikaU6A0mM97RDHQgStcrYiaS0Sc5zUNfb1V+UOLPuvdEdL6MwyxfzjYJQTA==" + }, + "@sentry/browser@10.55.0": { + "integrity": "sha512-5n1kxmW1m4j16ZDV9kt+Zo5uafFnKTy7s5YyEcGnC45KnOiO1Gy+QFd3woXns1K5GNxpjF7oOOc6tXgZLuXnQQ==", + "dependencies": [ + "@sentry-internal/browser-utils", + "@sentry-internal/feedback", + "@sentry-internal/replay", + "@sentry-internal/replay-canvas", + "@sentry/core" + ] + }, + "@sentry/bundler-plugin-core@5.3.0": { + "integrity": "sha512-L5T60sWdAI3qWwdg3Ptwek/0TY59PERrxyqp4XMUkroayQvGd9r5dIW9Q1kSeXX9iJ442nXbFZKAOyCKV4Z13Q==", + "dependencies": [ + "@babel/core", + "@sentry/babel-plugin-component-annotate", + "@sentry/cli", + "dotenv", + "find-up", + "glob@13.0.6", + "magic-string" + ] + }, + "@sentry/cli-darwin@2.58.6": { + "integrity": "sha512-udAVvcyfNa0R+95GvPz/+43/N3TC0TYKdkQ7D7jhPSzbcMc7l2fxRNN5yB3UpCA5fWFnW4toeaqwDBhb/Wh3LA==", + "os": ["darwin"] + }, + "@sentry/cli-linux-arm64@2.58.6": { + "integrity": "sha512-q8mEcNNmeXMy5i+jWT30TVpH7LcP4HD21CD5XRSPAd/a912HF6EpK0ybf/1USO14WOhoXbAGi9txwaWabSe33g==", + "os": ["linux", "freebsd", "android"], + "cpu": ["arm64"] + }, + "@sentry/cli-linux-arm@2.58.6": { + "integrity": "sha512-pD0LAt5PcUzAinBwvDqc66x9+2CabHEv486yP0gRjWO7SakbaxmfVq/EXd8VLq/Tzi39LAu422UYK1lpW3MILw==", + "os": ["linux", "freebsd", "android"], + "cpu": ["arm"] + }, + "@sentry/cli-linux-i686@2.58.6": { + "integrity": "sha512-q8vNJi1eOV/4vxAFWBsEwLHoSYapaZHIf4j76KJGJXFKTkEbsjCOOsKbwUIBTQQhRgV4DFWh3ryfsPS/que4Kg==", + "os": ["linux", "freebsd", "android"], + "cpu": ["x86", "ia32"] + }, + "@sentry/cli-linux-x64@2.58.6": { + "integrity": "sha512-DZu956Mhi3ZRjTBe1WdbGV46ldVbA8d2rgp/fh51GsI25zjBHah4wZnPTSzpc+YqxU6pJpg579B/r3jrIK530Q==", + "os": ["linux", "freebsd", "android"], + "cpu": ["x64"] + }, + "@sentry/cli-win32-arm64@2.58.6": { + "integrity": "sha512-nj0Ff/kmAB73EPDhR8B4O9r+NUHK5GkPCkGWC+kXVemqAJWL5jcJ5KdxG0l/S0z6RoEoltID8/43/B+TaMlT7A==", + "os": ["win32"], + "cpu": ["arm64"] + }, + "@sentry/cli-win32-i686@2.58.6": { + "integrity": "sha512-WNZiDzPbgsEMQWq4avsQ391v/xWKJDIWWWo9GYl+N/w5qcYKkoDW7wQG7T9FasI6ENn68phChTOAPXXxbfAdOg==", + "os": ["win32"], + "cpu": ["x86", "ia32"] + }, + "@sentry/cli-win32-x64@2.58.6": { + "integrity": "sha512-R35WJ17oF4D2eqI1DR2sQQqr0fjRTt5xoP16WrTu91XM2lndRMFsnjh+/GttbxapLCBNlrjzia99MJ0PZHZpgA==", + "os": ["win32"], + "cpu": ["x64"] + }, + "@sentry/cli@2.58.6": { + "integrity": "sha512-baBcNPLLfUi9WuL+Tpri9BFaAdvugZIKelC5X0tt0Zdy+K0K+PCVSrnNmwMWU/HyaF/SEv6b6UHnXIdqanBlcg==", + "dependencies": [ + "https-proxy-agent", + "node-fetch", + "progress", + "proxy-from-env", + "which" + ], + "optionalDependencies": [ + "@sentry/cli-darwin", + "@sentry/cli-linux-arm", + "@sentry/cli-linux-arm64", + "@sentry/cli-linux-i686", + "@sentry/cli-linux-x64", + "@sentry/cli-win32-arm64", + "@sentry/cli-win32-i686", + "@sentry/cli-win32-x64" + ], + "scripts": true, + "bin": true + }, + "@sentry/core@10.55.0": { + "integrity": "sha512-XUyoNtDSYCvgJnoNzlh+YeAXfIPhCRIXbhWqqM3GQ3AFtZICi85lkyfsrwXEl9wzlPGYnU+Eg8F4tOfScx+FcQ==" + }, + "@sentry/rollup-plugin@5.3.0": { + "integrity": "sha512-hgPGPYdQJ/G1cGYOxAb7d4z3V+/k/E5/P/5TFPEEBLuIbFFk+JG0CISUDJdzXJjO382Lb99PBJuXGbueBmO79w==", + "dependencies": [ + "@sentry/bundler-plugin-core", + "magic-string" + ] + }, + "@sentry/solid@10.55.0_@tanstack+solid-router@1.170.10__solid-js@1.9.13_solid-js@1.9.13": { + "integrity": "sha512-jmcQEK4Xz5gUe/WGAhGd2O803KEMuSdSXF/QsyCEVhpq1Z2od6FjmFTHWsLIRsETFrROr6KA7K4fu43XvYGWJg==", + "dependencies": [ + "@sentry/browser", + "@sentry/core", + "@tanstack/solid-router", + "solid-js" + ], + "optionalPeers": [ + "@tanstack/solid-router" + ] + }, + "@sentry/vite-plugin@5.3.0": { + "integrity": "sha512-qcoSzo4n2MulVQ70UUPLq6dTleb2a2HwL2wuwvAgWhPChrYTuk6A6mDg6aQb9fairPAwFPiU9PzOANpoDJcz1A==", + "dependencies": [ + "@sentry/bundler-plugin-core", + "@sentry/rollup-plugin" + ] + }, "@solid-devtools/debugger@0.28.1_solid-js@1.9.13": { "integrity": "sha512-6qIUI6VYkXoRnL8oF5bvh2KgH71qlJ18hNw/mwSyY6v48eb80ZR48/5PDXufUa3q+MBSuYa1uqTMwLewpay9eg==", "dependencies": [ @@ -1750,8 +1893,8 @@ "@tanstack/history@1.162.0": { "integrity": "sha512-79pf/RkhteYZTRgcR4F9kbk84P2N8rugQJswxfIqovlbRiT3yI7eBE+5QorIrZaOKktsgzRlXh1l/du/xpl4iA==" }, - "@tanstack/router-core@1.171.7": { - "integrity": "sha512-AboyQD0OPIu0adJi6HeCupTU9Wx7zr4q4ceJYQdBL3mLH18m4M57XXdzJdtzOg/twl8DtWej0RGJ12ma8CV1iQ==", + "@tanstack/router-core@1.171.8": { + "integrity": "sha512-PbrTBbofFcacrH3RLgHYILRqTFnAGq+gXrXoA/vo7qUSkJpSO4GWfLtrtCahD4VayzRm19IPwcjPPLEugag6pw==", "dependencies": [ "@tanstack/history", "cookie-es", @@ -1759,8 +1902,8 @@ "seroval-plugins" ] }, - "@tanstack/router-generator@1.167.11": { - "integrity": "sha512-Wnom12QTx0lreBQEL3zE2N88SDIT6xferScd46dnPCEYR8u+AkBBGRzlzZEpniIm+eF3byvIKBjYQgemdadoFg==", + "@tanstack/router-generator@1.167.12": { + "integrity": "sha512-FGr7nn6VhjL53TUCTyDgApSkAYRxhId+v0HVQdSu0ADkNuHY+sUnYEMqiF6aN82jYWuXzrSL1xazg6/rfEP82g==", "dependencies": [ "@babel/types", "@tanstack/router-core", @@ -1772,8 +1915,8 @@ "zod" ] }, - "@tanstack/router-plugin@1.168.12_vite@7.3.3__lightningcss@1.32.0_vite-plugin-solid@2.11.12__solid-js@1.9.13__vite@7.3.3___lightningcss@1.32.0": { - "integrity": "sha512-DqeJs+/LinTsTc6gIsloauHdCjePk6pmhpmcqrNWbNi8dS+QMj2UZ4HgU9JgOiYGznkd49i8BeQJFUxzASmr7Q==", + "@tanstack/router-plugin@1.168.13_vite@7.3.5__lightningcss@1.32.0_vite-plugin-solid@2.11.12__solid-js@1.9.13__vite@7.3.5___lightningcss@1.32.0__lightningcss@1.32.0_lightningcss@1.32.0": { + "integrity": "sha512-LnepwDai+TaC4K3aZeXrrKpnGoP8xGGilVGFfa5flGgC3+jCSBysb8SktidRE8eF2/iOzCQC0LIGirtMyZepSA==", "dependencies": [ "@babel/core", "@babel/plugin-syntax-jsx", @@ -1810,8 +1953,8 @@ "tinyglobby" ] }, - "@tanstack/solid-router@1.170.9_solid-js@1.9.13": { - "integrity": "sha512-qBGERBR0pL3nv4i7eMzEeV1ZLof64+7YgtOiCGvAw6Wh6XBDRDm2mGTnGoFZMJ8A1cmTGZ+/W4+Oi5CG1IXuyg==", + "@tanstack/solid-router@1.170.10_solid-js@1.9.13": { + "integrity": "sha512-PAy9+N8vUc5U0zcY887s9X5ls+ndrBvH0yLdbHpKJEnaUpr8i0wCT6Pki5LBv1BB8rIWx4OXgHMBs4W7KNlodA==", "dependencies": [ "@solid-devtools/logger", "@solid-primitives/refs", @@ -1822,8 +1965,8 @@ "solid-js" ] }, - "@tanstack/solid-start-client@1.168.6_solid-js@1.9.13": { - "integrity": "sha512-RbFCRuvB3AplxN0kfS9ZLb4g1ySNyMwGiNWDQp1tUsUlHGTTMIncqBoRZ8bKflrtf+tOw3NCiV0z3IMX5KrILg==", + "@tanstack/solid-start-client@1.168.7_solid-js@1.9.13": { + "integrity": "sha512-9gEhykFDGOu8GDTZ3M/TtY7ocvIn9xjrBr38BrcvhBT+rd5qhcuytAfdu+sZutNAv/D/s2nw0iTf5Ja7JcnDJw==", "dependencies": [ "@tanstack/router-core", "@tanstack/solid-router", @@ -1831,8 +1974,8 @@ "solid-js" ] }, - "@tanstack/solid-start-server@1.167.11_solid-js@1.9.13": { - "integrity": "sha512-kbUJQ4Sedyt5exsKliigSikF5JZ2qaUjWDWDV5QiexhN3/xlBBZzkj2P1qeYjA0DV8Z8bbbrmg2MxUUFG1TZ0Q==", + "@tanstack/solid-start-server@1.167.13_solid-js@1.9.13": { + "integrity": "sha512-567vF0ul3a3x6gFS0SETS07ZvWIHYCtfxheX8YGzLMdEkuxGZnUCbmhqnfaXL4GxWDwoKEbQNykT/NLxRXRC1g==", "dependencies": [ "@solidjs/meta", "@tanstack/history", @@ -1843,8 +1986,8 @@ "solid-js" ] }, - "@tanstack/solid-start@1.168.16_solid-js@1.9.13_vite@7.3.3__lightningcss@1.32.0": { - "integrity": "sha512-0v/m22301RYzUW+w/WD09JgMn/734+XzBpzshQtLrzQOvxFAuocJiCxpO1M1cs1CAA3mxz8bmoqm33YEY3S2dw==", + "@tanstack/solid-start@1.168.18_solid-js@1.9.13_vite@7.3.5__lightningcss@1.32.0_vite-plugin-solid@2.11.12__solid-js@1.9.13__vite@7.3.5___lightningcss@1.32.0__lightningcss@1.32.0": { + "integrity": "sha512-3drxBK91o2xDVLoH1O/QnB7dYSbzP9qYCeIAjnMfxywXaTFZ5e9DBGVF2aFhll4mhf25sd1osxhtFPPIuVekXw==", "dependencies": [ "@tanstack/solid-router", "@tanstack/solid-start-client", @@ -1860,8 +2003,8 @@ "vite" ] }, - "@tanstack/start-client-core@1.170.5": { - "integrity": "sha512-rtL6JyEB7/zeylgOjwtFEtmTIwRUm4Mf4bEhp2yUVk8kB4zLlmYcpSAFbb/aIrLp/Yl9XS2dx3OxB7oIPUuplg==", + "@tanstack/start-client-core@1.170.6": { + "integrity": "sha512-Zh4JY3bWiM8K807CnyRE/+53YiUx/R6nRhQr1BSxaXM3iFh9/FxoN4peK+yhkG7Hq/O2AGBWHt9yscxrsFD5+g==", "dependencies": [ "@tanstack/router-core", "@tanstack/start-fn-stubs", @@ -1872,8 +2015,8 @@ "@tanstack/start-fn-stubs@1.162.0": { "integrity": "sha512-QWfUZ3Yo923tdQn38LyKMU8rcTw69zc+T4dAvgTWV4O56SqFRsGfS0lSWIMhJRwXIx/bvdi7nTUBDdZtTHtpTQ==" }, - "@tanstack/start-plugin-core@1.171.8_vite@7.3.3__lightningcss@1.32.0": { - "integrity": "sha512-Eoe83LD3N7AQgsjb+uRq+DjUE82+e8liYqzfIVoZ03t4+XfHtTbMBB+f6XK2kUzTv4QBG7ZmZU959jWwQHfVTQ==", + "@tanstack/start-plugin-core@1.171.10_vite@7.3.5__lightningcss@1.32.0_vite-plugin-solid@2.11.12__solid-js@1.9.13__vite@7.3.5___lightningcss@1.32.0__lightningcss@1.32.0": { + "integrity": "sha512-HYYcgwjnuGIMn7wgASM6AryKktyQ06FwziFDP3d93APFmC8dLPadSzvwV/AUWvPQYCQq2Dp9SAX3byXEMvjO7g==", "dependencies": [ "@babel/code-frame@7.27.1", "@babel/core", @@ -1903,8 +2046,8 @@ "vite" ] }, - "@tanstack/start-server-core@1.169.6": { - "integrity": "sha512-Qf+Uinnc5Ak79QGD6pJsiK0IfUlWkyJNy+h9vTwOtVLBvmq/fR7GjBuf5ymidI/7jK/YQWVuw2aaEE6MHBC+iw==", + "@tanstack/start-server-core@1.169.8": { + "integrity": "sha512-yVhdg9QLNUrXdXDn5kN76u0YFKraR7bgb6ZFqHCbX63sTPabD4Z1fBr68PnzqKWB2gXfJmP9JN1puvcdChKeYA==", "dependencies": [ "@tanstack/history", "@tanstack/router-core", @@ -1915,8 +2058,8 @@ "seroval" ] }, - "@tanstack/start-storage-context@1.167.9": { - "integrity": "sha512-RKxJA95HgZXu2lgTCzGi7pShtgz7vyvDTEPOJfJBBMHM2S7SX/WLYTHqfHcYvbOzREXOxEbDQ8Hvtt0Klq8VKg==", + "@tanstack/start-storage-context@1.167.10": { + "integrity": "sha512-geCsFpgCt+S2gQjzXILdPZ9obIxtzuN8C0Esc1fcyWZhwYyqo4C8G2o/dIck8xGixCMSvOsxL5NkCXDdOm2KOQ==", "dependencies": [ "@tanstack/router-core" ] @@ -2139,7 +2282,7 @@ "@unocss/core" ] }, - "@unocss/vite@66.7.0_vite@7.3.3__lightningcss@1.32.0": { + "@unocss/vite@66.7.0_vite@7.3.5__lightningcss@1.32.0": { "integrity": "sha512-7J8Mk9M1j55S3bXL87/yHOspnuAaftQWbc3HjCH0/sXNLZJZnlpmUue3EtT5Ez+PE01T3DK1D9Xxn/MvtdvXtA==", "dependencies": [ "@jridgewell/remapping", @@ -2170,6 +2313,12 @@ "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==", "bin": true }, + "agent-base@6.0.2": { + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": [ + "debug" + ] + }, "ajv@8.20.0": { "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", "dependencies": [ @@ -2179,8 +2328,8 @@ "require-from-string" ] }, - "ansis@4.3.0": { - "integrity": "sha512-44mvgtPvohuU/70DdY5Oz2AIrLJ9k6/5x4KmoSvPwO+5Moijo0+N9D0fKbbYZQWP1hNm5CpOf+E01jhxG/r8xg==" + "ansis@4.3.1": { + "integrity": "sha512-BJ8/l4R5LRE7hW9WdSuGYrLSHi2ynxeFpDFbH0K/CgNeY/tyhk+vO6TYxXC5r5CpUhNVX310xzPsN/H9lCdfOA==" }, "argparse@2.0.1": { "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" @@ -2528,6 +2677,9 @@ "diff@8.0.4": { "integrity": "sha512-DPi0FmjiSU5EvQV0++GFDOJ9ASQUVFh5kD+OzOnYdi7n3Wpm9hWWGfB/O2blfHcMVTL5WkQXSnRiK9makhrcnw==" }, + "dotenv@16.6.1": { + "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==" + }, "dunder-proto@1.0.1": { "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", "dependencies": [ @@ -2731,6 +2883,13 @@ "minimatch@5.1.9" ] }, + "find-up@5.0.0": { + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": [ + "locate-path", + "path-exists" + ] + }, "for-each@0.3.5": { "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", "dependencies": [ @@ -2830,6 +2989,14 @@ "deprecated": true, "bin": true }, + "glob@13.0.6": { + "integrity": "sha512-Wjlyrolmm8uDpm/ogGyXZXb1Z+Ca2B8NbJwqBVg0axK9GbBeoS7yGV6vjXnYdGm6X53iehEuxxbyiKp8QmN4Vw==", + "dependencies": [ + "minimatch@10.2.5", + "minipass", + "path-scurry" + ] + }, "globalthis@1.0.4": { "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dependencies": [ @@ -2905,6 +3072,13 @@ "html-entities@2.3.3": { "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==" }, + "https-proxy-agent@5.0.1": { + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dependencies": [ + "agent-base", + "debug" + ] + }, "httpxy@0.5.3": { "integrity": "sha512-SMS9V6Sn7VWaS11lYhoAr0ceoaiolTWf4jYdJn0NJhCdKMu9R2H9Fh0LBDWBHQF6HRLI1PmaePYsjanSpE5PEw==" }, @@ -3113,8 +3287,8 @@ "js-tokens@4.0.0": { "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, - "js-yaml@4.1.1": { - "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", + "js-yaml@4.2.0": { + "integrity": "sha512-ePWsvanv0DWuDRsW8dnt+R4jQ31SCRCQ7hhNcPXZPsoBZiemuZNYGf7adZdqX2D86j6rvKp3RpCxVTSb8WQlOw==", "dependencies": [ "argparse" ], @@ -3223,6 +3397,12 @@ "lightningcss-win32-x64-msvc" ] }, + "locate-path@6.0.0": { + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": [ + "p-locate" + ] + }, "lodash.debounce@4.0.8": { "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" }, @@ -3309,7 +3489,7 @@ "nf3@0.3.17": { "integrity": "sha512-N9zEWySuJFw+gR0lhS5863YsvNeudOdqRyFvNb+jMXbeTJOdrjDqkCpDginIZfUm0LzT1t1nCRiDeqQm/8kirQ==" }, - "nitro@3.0.260522-beta_vite@7.3.3__lightningcss@1.32.0": { + "nitro@3.0.260522-beta_vite@7.3.5__lightningcss@1.32.0": { "integrity": "sha512-L/z2eOWgkiQHc65kv+SEMgau505afSRF7NJlbooaaZEZscFrNSD7rXZzeVubQlgIzPbhOG8o73bk9soIiGTHRA==", "dependencies": [ "consola", @@ -3336,6 +3516,12 @@ "node-fetch-native@1.6.7": { "integrity": "sha512-g9yhqoedzIUm0nTnTqAQvueMPVOuIY16bqgAJJC8XOOubYFNwz6IER9qs0Gq2Xd0+CecCKFjtdDTMA4u4xG06Q==" }, + "node-fetch@2.7.0": { + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dependencies": [ + "whatwg-url@5.0.0" + ] + }, "node-releases@2.0.46": { "integrity": "sha512-GYVXHE2KnrzAfsAjl4uP++evGFCrAU1jta4ubEjIG7YWt/64Gqv66a30yKwWczVjA6j3bM4nBwH7Pk1JmDHaxQ==" }, @@ -3419,6 +3605,18 @@ "oxc-parser" ] }, + "p-limit@3.1.0": { + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": [ + "yocto-queue" + ] + }, + "p-locate@5.0.0": { + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": [ + "p-limit" + ] + }, "package-json-from-dist@1.0.1": { "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" }, @@ -3431,6 +3629,9 @@ "entities" ] }, + "path-exists@4.0.0": { + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + }, "path-key@3.1.1": { "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" }, @@ -3485,6 +3686,12 @@ "pretty-bytes@6.1.1": { "integrity": "sha512-mQUvGU6aUFQ+rNvTIAcZuWGRT9a6f6Yrg9bHs4ImKF+HZCEK+plBvnAZYSIQztknZF2qnzNtr6F8s0+IuptdlQ==" }, + "progress@2.0.3": { + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" + }, + "proxy-from-env@1.1.0": { + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, "proxy-target@3.0.2": { "integrity": "sha512-FFE1XNwXX/FNC3/P8HiKaJSy/Qk68RitG/QEcLy/bVnTAPlgTAWPZKh0pARLAnpfXQPKyalBhk009NRTgsk8vQ==" }, @@ -3843,11 +4050,11 @@ "source-map@0.8.0-beta.0": { "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", "dependencies": [ - "whatwg-url" + "whatwg-url@7.1.0" ], "deprecated": true }, - "sqlocal@0.18.0_kysely@0.29.2_vite@7.3.3__lightningcss@1.32.0": { + "sqlocal@0.18.0_kysely@0.29.2_vite@7.3.5__lightningcss@1.32.0": { "integrity": "sha512-AJvbSe7W52YeI3KWt3TOl6Xf4oH/72JdQ0oig78G6v6Hrk906dIVP0vT9uIx7HmJaYHU/G+AgyqCW12W2IJ1OA==", "dependencies": [ "@sqlite.org/sqlite-wasm", @@ -3970,6 +4177,9 @@ "totalist@3.0.1": { "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==" }, + "tr46@0.0.3": { + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, "tr46@1.0.1": { "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", "dependencies": [ @@ -4086,7 +4296,7 @@ "universalify@2.0.1": { "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==" }, - "unocss@66.7.0_vite@7.3.3__lightningcss@1.32.0": { + "unocss@66.7.0_vite@7.3.5__lightningcss@1.32.0": { "integrity": "sha512-dVfkL7SQv3fOiZdqeRX1PdpQqXlB+wHcEQjVR0D/2nXsuqmUqTVnX3EUUWFjqVR83Z51zQ0EyVgym8ooDfcVvw==", "dependencies": [ "@unocss/cli", @@ -4155,7 +4365,7 @@ ], "bin": true }, - "vite-plugin-pwa@1.3.0_@vite-pwa+assets-generator@1.0.2_vite@7.3.3__lightningcss@1.32.0_workbox-window@7.4.1": { + "vite-plugin-pwa@1.3.0_@vite-pwa+assets-generator@1.0.2_vite@7.3.5__lightningcss@1.32.0_workbox-window@7.4.1": { "integrity": "sha512-c5kMgN+ITrOtHXp8PAtk2uOIEea6XjP/unCGxOWWBzQ6qa65qj/awHg0wf+QF9E/2u9vh86LqxPwzEPNbM2r5A==", "dependencies": [ "@vite-pwa/assets-generator", @@ -4170,7 +4380,7 @@ "@vite-pwa/assets-generator" ] }, - "vite-plugin-solid@2.11.12_solid-js@1.9.13_vite@7.3.3__lightningcss@1.32.0": { + "vite-plugin-solid@2.11.12_solid-js@1.9.13_vite@7.3.5__lightningcss@1.32.0_lightningcss@1.32.0": { "integrity": "sha512-FgjPcx2OwX9h6f28jli7A4bG7PP3te8uyakE5iqsmpq3Jqi1TWLgSroC9N6cMfGRU2zXsl4Q6ISvTr2VL0QHpA==", "dependencies": [ "@babel/core", @@ -4183,8 +4393,8 @@ "vitefu" ] }, - "vite@7.3.3_lightningcss@1.32.0": { - "integrity": "sha512-/4XH147Ui7OGTjg3HbdWe5arnZQSbfuRzdr9Ec7TQi5I7R+ir0Rlc9GIvD4v0XZurELqA035KVXJXpR61xhiTA==", + "vite@7.3.5_lightningcss@1.32.0": { + "integrity": "sha512-KuOaNhcnGFN2zIPGA7wRmzF+lJA1sea7rHq17aiJ++9lzY1WWG6Jpwqwe1KNbRVPIqHmr8GLYx7jbrQcN/7/ww==", "dependencies": [ "esbuild", "fdir", @@ -4202,7 +4412,7 @@ ], "bin": true }, - "vitefu@1.1.3_vite@7.3.3__lightningcss@1.32.0": { + "vitefu@1.1.3_vite@7.3.5__lightningcss@1.32.0_lightningcss@1.32.0": { "integrity": "sha512-ub4okH7Z5KLjb6hDyjqrGXqWtWvoYdU3IGm/NorpgHncKoLTCfRIbvlhBm7r0YstIaQRYlp4yEbFqDcKSzXSSg==", "dependencies": [ "vite" @@ -4211,18 +4421,28 @@ "vite" ] }, + "webidl-conversions@3.0.1": { + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, "webidl-conversions@4.0.2": { "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==" }, "webpack-virtual-modules@0.6.2": { "integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==" }, + "whatwg-url@5.0.0": { + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": [ + "tr46@0.0.3", + "webidl-conversions@3.0.1" + ] + }, "whatwg-url@7.1.0": { "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", "dependencies": [ "lodash.sortby", - "tr46", - "webidl-conversions" + "tr46@1.0.1", + "webidl-conversions@4.0.2" ] }, "which-boxed-primitive@1.1.1": { @@ -4311,7 +4531,7 @@ "eta", "fast-json-stable-stringify", "fs-extra", - "glob", + "glob@11.1.0", "pretty-bytes@5.6.0", "rollup", "source-map@0.8.0-beta.0", @@ -4436,6 +4656,9 @@ "yallist@3.1.1": { "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, + "yocto-queue@0.1.0": { + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" + }, "zod@4.4.3": { "integrity": "sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==" } @@ -4445,10 +4668,12 @@ "dependencies": [ "npm:@deno/vite-plugin@^1.0.6", "npm:@iconify-json/solar@^1.2.5", + "npm:@sentry/solid@^10.55.0", + "npm:@sentry/vite-plugin@^5.3.0", "npm:@solid-primitives/i18n@^2.2.1", "npm:@solid-primitives/storage@^4.3.4", - "npm:@tanstack/solid-router@^1.170.9", - "npm:@tanstack/solid-start@^1.168.16", + "npm:@tanstack/solid-router@^1.170.10", + "npm:@tanstack/solid-start@^1.168.18", "npm:@vite-pwa/assets-generator@^1.0.2", "npm:class-variance-authority@~0.7.1", "npm:kysely@~0.29.2", @@ -4459,7 +4684,7 @@ "npm:unocss@^66.7.0", "npm:vite-plugin-pwa@^1.3.0", "npm:vite-plugin-solid@^2.11.12", - "npm:vite@^7.3.3", + "npm:vite@^7.3.5", "npm:workbox-core@^7.4.1", "npm:workbox-precaching@^7.4.1", "npm:workbox-routing@^7.4.1", diff --git a/package.json b/package.json index 919cc4d..68ab2fe 100644 --- a/package.json +++ b/package.json @@ -3,10 +3,12 @@ "dependencies": { "@deno/vite-plugin": "^1.0.6", "@iconify-json/solar": "^1.2.5", + "@sentry/solid": "^10.55.0", + "@sentry/vite-plugin": "^5.3.0", "@solid-primitives/i18n": "^2.2.1", "@solid-primitives/storage": "^4.3.4", - "@tanstack/solid-router": "^1.170.9", - "@tanstack/solid-start": "^1.168.16", + "@tanstack/solid-router": "^1.170.10", + "@tanstack/solid-start": "^1.168.18", "@vite-pwa/assets-generator": "^1.0.2", "class-variance-authority": "^0.7.1", "kysely": "^0.29.2", @@ -15,7 +17,7 @@ "solid-js": "^1.9.13", "sqlocal": "^0.18.0", "unocss": "^66.7.0", - "vite": "^7.3.3", + "vite": "^7.3.5", "vite-plugin-pwa": "^1.3.0", "vite-plugin-solid": "^2.11.12", "workbox-core": "^7.4.1", diff --git a/src/router.ts b/src/router.ts index 66e2d2d..cee5cf8 100644 --- a/src/router.ts +++ b/src/router.ts @@ -1,9 +1,20 @@ +import * as Sentry from "@sentry/solid"; +import { tanstackRouterBrowserTracingIntegration } from "@sentry/solid/tanstackrouter"; import { createRouter } from "@tanstack/solid-router"; import { routeTree } from "./route-tree.gen.ts"; export const getRouter = () => { - return createRouter({ + const router = createRouter({ scrollRestoration: true, routeTree, }); + + Sentry.init({ + enabled: !import.meta.env.DEV, + dsn: "https://4df4a269345645a1b8b1770765af44ff@bugs.strooware.nl/1", + integrations: [tanstackRouterBrowserTracingIntegration(router as any)], + tracesSampleRate: 1.0, + }); + + return router; }; diff --git a/vite.config.ts b/vite.config.ts index 0522aa1..015589b 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,4 +1,5 @@ import deno from "@deno/vite-plugin"; +import { sentryVitePlugin } from "@sentry/vite-plugin"; import { tanstackStart } from "@tanstack/solid-start/plugin/vite"; import { nitro } from "nitro/vite"; import sqlocal from "sqlocal/vite"; @@ -70,6 +71,12 @@ export default defineConfig(({ mode }) => ({ ssr: true, }), sqlocal(), + sentryVitePlugin({ + authToken: Deno.env.get("SENTRY_TOKEN"), + url: "https://bugs.strooware.nl", + org: "does-not-matter", + project: "app-later", + }), ], resolve: { dedupe: [