From b03e2ef51d83788334ae62f662dfaf2d5d7ec77e Mon Sep 17 00:00:00 2001 From: BOTAlex Date: Tue, 5 May 2026 15:23:21 +0200 Subject: [PATCH] school: computational social something --- package-lock.json | 23 +-- package.json | 1 + src/lib/components/DoubleRangeSlider.svelte | 206 ++++++++++++++++++++ src/routes/+layout.svelte | 2 +- src/routes/school/+layout.svelte | 4 +- src/routes/school/+page.svelte | 9 +- src/routes/school/css/+page.svelte | 59 ++++++ 7 files changed, 286 insertions(+), 18 deletions(-) create mode 100644 src/lib/components/DoubleRangeSlider.svelte create mode 100644 src/routes/school/css/+page.svelte diff --git a/package-lock.json b/package-lock.json index 8e88c48..8e7fe6a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,6 +20,7 @@ "svelte-media-queries": "^1.6.2", "svelte-qrcode": "^1.0.1", "theme-change": "^2.5.0", + "yootils": "^0.3.1", "zod": "^4.1.11" }, "devDependencies": { @@ -85,7 +86,6 @@ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.0.tgz", "integrity": "sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ==", "dev": true, - "peer": true, "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.27.1", @@ -1521,7 +1521,6 @@ "resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-2.22.2.tgz", "integrity": "sha512-2MvEpSYabUrsJAoq5qCOBGAlkICjfjunrnLcx3YAk2XV7TvAIhomlKsAgR4H/4uns5rAfYmj7Wet5KRtc8dPIg==", "dev": true, - "peer": true, "dependencies": { "@sveltejs/acorn-typescript": "^1.0.5", "@types/cookie": "^0.6.0", @@ -1554,7 +1553,6 @@ "resolved": "https://registry.npmjs.org/@sveltejs/vite-plugin-svelte/-/vite-plugin-svelte-3.1.2.tgz", "integrity": "sha512-Txsm1tJvtiYeLUVRNqxZGKR/mI+CzuIQuc2gn+YCs9rMTowpNZ2Nqt53JdL8KF9bLhAf2ruR/dr9eZCwdTriRA==", "dev": true, - "peer": true, "dependencies": { "@sveltejs/vite-plugin-svelte-inspector": "^2.1.0", "debug": "^4.3.4", @@ -1774,7 +1772,6 @@ "resolved": "https://registry.npmjs.org/@svgr/core/-/core-8.1.0.tgz", "integrity": "sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==", "dev": true, - "peer": true, "dependencies": { "@babel/core": "^7.21.3", "@svgr/babel-preset": "8.1.0", @@ -2119,7 +2116,6 @@ "version": "8.15.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", - "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -2265,7 +2261,6 @@ "url": "https://github.com/sponsors/ai" } ], - "peer": true, "dependencies": { "caniuse-lite": "^1.0.30001726", "electron-to-chromium": "^1.5.173", @@ -3165,7 +3160,6 @@ "integrity": "sha512-FIyV/64EkKhJmjgC0g2hygpBv5RNWVPyNCqSAD7eTCv6eFWNIi4PN1UvdSJGicN/o35bnevgis4Y0UDC0qi8jQ==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=14.0.0" } @@ -3783,7 +3777,6 @@ "url": "https://github.com/sponsors/ai" } ], - "peer": true, "dependencies": { "nanoid": "^3.3.11", "picocolors": "^1.1.1", @@ -3818,7 +3811,6 @@ "integrity": "sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==", "dev": true, "license": "MIT", - "peer": true, "bin": { "prettier": "bin/prettier.cjs" }, @@ -3958,7 +3950,6 @@ "resolved": "https://registry.npmjs.org/sass/-/sass-1.89.2.tgz", "integrity": "sha512-xCmtksBKd/jdJ9Bt9p7nPKiuqrlBMBuuGkQlkhZjjQk3Ty48lv93k5Dq6OPkKt4XwxDJ7tvlfrTa1MPA9bf+QA==", "devOptional": true, - "peer": true, "dependencies": { "chokidar": "^4.0.0", "immutable": "^5.0.2", @@ -4064,7 +4055,6 @@ "version": "5.35.2", "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.35.2.tgz", "integrity": "sha512-uW/rRXYrhZ7Dh4UQNZ0t+oVGL1dEM+95GavCO8afAk1IY2cPq9BcZv9C3um5aLIya2y8lIeLPxLII9ASGg9Dzw==", - "peer": true, "dependencies": { "@ampproject/remapping": "^2.3.0", "@jridgewell/sourcemap-codec": "^1.5.0", @@ -4673,8 +4663,7 @@ "node_modules/tailwindcss": { "version": "4.1.11", "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.11.tgz", - "integrity": "sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA==", - "peer": true + "integrity": "sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA==" }, "node_modules/tapable": { "version": "2.2.2", @@ -4779,7 +4768,6 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", "dev": true, - "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -4878,7 +4866,6 @@ "version": "5.4.19", "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.19.tgz", "integrity": "sha512-qO3aKv3HoQC8QKiNSTuUM1l9o/XX3+c+VTgLHbJWHZGeTPVAg2XwazI9UWzoxjIJCGCV2zU60uqMzjeLZuULqA==", - "peer": true, "dependencies": { "esbuild": "^0.21.3", "postcss": "^8.4.43", @@ -4982,6 +4969,12 @@ "node": ">=18" } }, + "node_modules/yootils": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/yootils/-/yootils-0.3.1.tgz", + "integrity": "sha512-A7AMeJfGefk317I/3tBoUYRcDcNavKEkpiPN/nQsBz/viI2GvT7BtrqdPD6rGqBFN8Ax7v4obf+Cl32JF9DDVw==", + "license": "MIT" + }, "node_modules/zimmerframe": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/zimmerframe/-/zimmerframe-1.1.2.tgz", diff --git a/package.json b/package.json index 1ccbe1b..c4dba93 100644 --- a/package.json +++ b/package.json @@ -46,6 +46,7 @@ "svelte-media-queries": "^1.6.2", "svelte-qrcode": "^1.0.1", "theme-change": "^2.5.0", + "yootils": "^0.3.1", "zod": "^4.1.11" } } diff --git a/src/lib/components/DoubleRangeSlider.svelte b/src/lib/components/DoubleRangeSlider.svelte new file mode 100644 index 0000000..e3b9bc4 --- /dev/null +++ b/src/lib/components/DoubleRangeSlider.svelte @@ -0,0 +1,206 @@ + + +
+
+
+
+
+
+
+ + diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index df3d244..76d29dc 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -168,7 +168,7 @@ -
+
{@render children?.()}
diff --git a/src/routes/school/+layout.svelte b/src/routes/school/+layout.svelte index 81def4a..251fafe 100644 --- a/src/routes/school/+layout.svelte +++ b/src/routes/school/+layout.svelte @@ -5,4 +5,6 @@
⚠️ Mobile support is not actively supported for school things ⚠️
-
{@render children?.()}
+
+ {@render children?.()} +
diff --git a/src/routes/school/+page.svelte b/src/routes/school/+page.svelte index f8d19af..732c827 100644 --- a/src/routes/school/+page.svelte +++ b/src/routes/school/+page.svelte @@ -1,4 +1,11 @@ -
test
+
+
+
Click to redirect
+ +
+
diff --git a/src/routes/school/css/+page.svelte b/src/routes/school/css/+page.svelte new file mode 100644 index 0000000..cff0338 --- /dev/null +++ b/src/routes/school/css/+page.svelte @@ -0,0 +1,59 @@ + + +
+
+
+
-1
+
0
+
1
+
+
+ + +
+
+
{round(leftRange.start)} - {round(leftRange.end)}
+
{round(rightRange.start)} - {round(rightRange.end)}
+
+
+
+ +
+