From cd689fde9357694e42f1a29c65910744e639247c Mon Sep 17 00:00:00 2001 From: DavidOnTop Date: Tue, 6 May 2025 19:00:41 +0200 Subject: [PATCH] Initial commit --- .config/dotnet-tools.json | 20 + build.fsx | 42 ++ davidontop.fsproj | 15 + index.html | 16 + package-lock.json | 1008 +++++++++++++++++++++++++++++++++++ package.json | 13 + paket.dependencies | 18 + paket.lock | 291 ++++++++++ paket.references | 4 + public/logo-transparent.png | Bin 0 -> 13450 bytes public/logo.png | Bin 0 -> 6612 bytes src/Components/Nav.fs | 31 ++ src/Pages/About.fs | 6 + src/Pages/Index.fs | 6 + src/Pages/NotFound.fs | 7 + src/Program.fs | 16 + src/Routing.fs | 16 + 17 files changed, 1509 insertions(+) create mode 100644 .config/dotnet-tools.json create mode 100644 build.fsx create mode 100644 davidontop.fsproj create mode 100644 index.html create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 paket.dependencies create mode 100644 paket.lock create mode 100644 paket.references create mode 100755 public/logo-transparent.png create mode 100755 public/logo.png create mode 100644 src/Components/Nav.fs create mode 100644 src/Pages/About.fs create mode 100644 src/Pages/Index.fs create mode 100644 src/Pages/NotFound.fs create mode 100644 src/Program.fs create mode 100644 src/Routing.fs diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json new file mode 100644 index 0000000..5b718d0 --- /dev/null +++ b/.config/dotnet-tools.json @@ -0,0 +1,20 @@ +{ + "version": 1, + "isRoot": true, + "tools": { + "paket": { + "version": "9.0.2", + "commands": [ + "paket" + ], + "rollForward": false + }, + "fable": { + "version": "5.0.0-alpha.13", + "commands": [ + "fable" + ], + "rollForward": false + } + } +} diff --git a/build.fsx b/build.fsx new file mode 100644 index 0000000..0178374 --- /dev/null +++ b/build.fsx @@ -0,0 +1,42 @@ +#load "./.paket/load/net9.0/Build/build.group.fsx" + +open Fake.Core +open Fake.DotNet +open Fake.JavaScript + +System.Environment.GetCommandLineArgs() +|> Array.toList +|> Context.FakeExecutionContext.Create false "build.fsx" +|> Context.RuntimeContext.Fake +|> Context.setExecutionContext + +Target.create "dev" (fun _ -> + let fable = async { + DotNet.exec (fun o -> o) "fable" "watch -o build -s" |> ignore + } + let vite = async { + Npm.run "dev" (fun p -> p) + } + Async.Parallel [fable; vite] + |> Async.RunSynchronously + |> ignore +) + +Target.create "build" (fun _ -> + DotNet.exec (fun o -> o) "fable" "-o build --noCache --optimize" |> ignore + Npm.run "build" (fun p -> p) +) + +Target.create "clean" (fun _ -> + DotNet.exec (fun o -> o)"fable" "clean -o build" |> ignore + DotNet.exec (fun o -> o) "clean" |> ignore + Fake.IO.Directory.delete "node_modules" + Fake.IO.Directory.delete "bin" + Fake.IO.Directory.delete "build" + Fake.IO.Directory.delete "dist" + Fake.IO.Directory.delete "obj" + Fake.IO.Directory.delete "paket-files" + Fake.IO.Directory.delete ".paket" +) + +Target.runOrDefaultWithArguments "dev" diff --git a/davidontop.fsproj b/davidontop.fsproj new file mode 100644 index 0000000..1c5c802 --- /dev/null +++ b/davidontop.fsproj @@ -0,0 +1,15 @@ + + + + Exe + net9.0 + DOT + + + + + + + + + diff --git a/index.html b/index.html new file mode 100644 index 0000000..8578673 --- /dev/null +++ b/index.html @@ -0,0 +1,16 @@ + + + + + + + + DavidOnTop + + + +
+ + + + diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..64c04bc --- /dev/null +++ b/package-lock.json @@ -0,0 +1,1008 @@ +{ + "name": "davidontop", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "davidontop", + "version": "0.0.0", + "devDependencies": { + "vite": "^6.3.5" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.4.tgz", + "integrity": "sha512-1VCICWypeQKhVbE9oW/sJaAmjLxhVqacdkvPLEjwlttjfwENRSClS8EjBz0KzRyFSCPDIkuXW34Je/vk7zdB7Q==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.4.tgz", + "integrity": "sha512-QNdQEps7DfFwE3hXiU4BZeOV68HHzYwGd0Nthhd3uCkkEKK7/R6MTgM0P7H7FAs5pU/DIWsviMmEGxEoxIZ+ZQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.4.tgz", + "integrity": "sha512-bBy69pgfhMGtCnwpC/x5QhfxAz/cBgQ9enbtwjf6V9lnPI/hMyT9iWpR1arm0l3kttTr4L0KSLpKmLp/ilKS9A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.4.tgz", + "integrity": "sha512-TVhdVtQIFuVpIIR282btcGC2oGQoSfZfmBdTip2anCaVYcqWlZXGcdcKIUklfX2wj0JklNYgz39OBqh2cqXvcQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.4.tgz", + "integrity": "sha512-Y1giCfM4nlHDWEfSckMzeWNdQS31BQGs9/rouw6Ub91tkK79aIMTH3q9xHvzH8d0wDru5Ci0kWB8b3up/nl16g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.4.tgz", + "integrity": "sha512-CJsry8ZGM5VFVeyUYB3cdKpd/H69PYez4eJh1W/t38vzutdjEjtP7hB6eLKBoOdxcAlCtEYHzQ/PJ/oU9I4u0A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.4.tgz", + "integrity": "sha512-yYq+39NlTRzU2XmoPW4l5Ifpl9fqSk0nAJYM/V/WUGPEFfek1epLHJIkTQM6bBs1swApjO5nWgvr843g6TjxuQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.4.tgz", + "integrity": "sha512-0FgvOJ6UUMflsHSPLzdfDnnBBVoCDtBTVyn/MrWloUNvq/5SFmh13l3dvgRPkDihRxb77Y17MbqbCAa2strMQQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.4.tgz", + "integrity": "sha512-kro4c0P85GMfFYqW4TWOpvmF8rFShbWGnrLqlzp4X1TNWjRY3JMYUfDCtOxPKOIY8B0WC8HN51hGP4I4hz4AaQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.4.tgz", + "integrity": "sha512-+89UsQTfXdmjIvZS6nUnOOLoXnkUTB9hR5QAeLrQdzOSWZvNSAXAtcRDHWtqAUtAmv7ZM1WPOOeSxDzzzMogiQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.4.tgz", + "integrity": "sha512-yTEjoapy8UP3rv8dB0ip3AfMpRbyhSN3+hY8mo/i4QXFeDxmiYbEKp3ZRjBKcOP862Ua4b1PDfwlvbuwY7hIGQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.4.tgz", + "integrity": "sha512-NeqqYkrcGzFwi6CGRGNMOjWGGSYOpqwCjS9fvaUlX5s3zwOtn1qwg1s2iE2svBe4Q/YOG1q6875lcAoQK/F4VA==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.4.tgz", + "integrity": "sha512-IcvTlF9dtLrfL/M8WgNI/qJYBENP3ekgsHbYUIzEzq5XJzzVEV/fXY9WFPfEEXmu3ck2qJP8LG/p3Q8f7Zc2Xg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.4.tgz", + "integrity": "sha512-HOy0aLTJTVtoTeGZh4HSXaO6M95qu4k5lJcH4gxv56iaycfz1S8GO/5Jh6X4Y1YiI0h7cRyLi+HixMR+88swag==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.4.tgz", + "integrity": "sha512-i8JUDAufpz9jOzo4yIShCTcXzS07vEgWzyX3NH2G7LEFVgrLEhjwL3ajFE4fZI3I4ZgiM7JH3GQ7ReObROvSUA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.4.tgz", + "integrity": "sha512-jFnu+6UbLlzIjPQpWCNh5QtrcNfMLjgIavnwPQAfoGx4q17ocOU9MsQ2QVvFxwQoWpZT8DvTLooTvmOQXkO51g==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.4.tgz", + "integrity": "sha512-6e0cvXwzOnVWJHq+mskP8DNSrKBr1bULBvnFLpc1KY+d+irZSgZ02TGse5FsafKS5jg2e4pbvK6TPXaF/A6+CA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.4.tgz", + "integrity": "sha512-vUnkBYxZW4hL/ie91hSqaSNjulOnYXE1VSLusnvHg2u3jewJBz3YzB9+oCw8DABeVqZGg94t9tyZFoHma8gWZQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.4.tgz", + "integrity": "sha512-XAg8pIQn5CzhOB8odIcAm42QsOfa98SBeKUdo4xa8OvX8LbMZqEtgeWE9P/Wxt7MlG2QqvjGths+nq48TrUiKw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.4.tgz", + "integrity": "sha512-Ct2WcFEANlFDtp1nVAXSNBPDxyU+j7+tId//iHXU2f/lN5AmO4zLyhDcpR5Cz1r08mVxzt3Jpyt4PmXQ1O6+7A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.4.tgz", + "integrity": "sha512-xAGGhyOQ9Otm1Xu8NT1ifGLnA6M3sJxZ6ixylb+vIUVzvvd6GOALpwQrYrtlPouMqd/vSbgehz6HaVk4+7Afhw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.4.tgz", + "integrity": "sha512-Mw+tzy4pp6wZEK0+Lwr76pWLjrtjmJyUB23tHKqEDP74R3q95luY/bXqXZeYl4NYlvwOqoRKlInQialgCKy67Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.4.tgz", + "integrity": "sha512-AVUP428VQTSddguz9dO9ngb+E5aScyg7nOeJDrF1HPYu555gmza3bDGMPhmVXL8svDSoqPCsCPjb265yG/kLKQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.4.tgz", + "integrity": "sha512-i1sW+1i+oWvQzSgfRcxxG2k4I9n3O9NRqy8U+uugaT2Dy7kLO9Y7wI72haOahxceMX8hZAzgGou1FhndRldxRg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.4.tgz", + "integrity": "sha512-nOT2vZNw6hJ+z43oP1SPea/G/6AbN6X+bGNhNuq8NtRHy4wsMhw765IKLNmnjek7GvjWBYQ8Q5VBoYTFg9y1UQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.40.2.tgz", + "integrity": "sha512-JkdNEq+DFxZfUwxvB58tHMHBHVgX23ew41g1OQinthJ+ryhdRk67O31S7sYw8u2lTjHUPFxwar07BBt1KHp/hg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.40.2.tgz", + "integrity": "sha512-13unNoZ8NzUmnndhPTkWPWbX3vtHodYmy+I9kuLxN+F+l+x3LdVF7UCu8TWVMt1POHLh6oDHhnOA04n8oJZhBw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.40.2.tgz", + "integrity": "sha512-Gzf1Hn2Aoe8VZzevHostPX23U7N5+4D36WJNHK88NZHCJr7aVMG4fadqkIf72eqVPGjGc0HJHNuUaUcxiR+N/w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.40.2.tgz", + "integrity": "sha512-47N4hxa01a4x6XnJoskMKTS8XZ0CZMd8YTbINbi+w03A2w4j1RTlnGHOz/P0+Bg1LaVL6ufZyNprSg+fW5nYQQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.40.2.tgz", + "integrity": "sha512-8t6aL4MD+rXSHHZUR1z19+9OFJ2rl1wGKvckN47XFRVO+QL/dUSpKA2SLRo4vMg7ELA8pzGpC+W9OEd1Z/ZqoQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.40.2.tgz", + "integrity": "sha512-C+AyHBzfpsOEYRFjztcYUFsH4S7UsE9cDtHCtma5BK8+ydOZYgMmWg1d/4KBytQspJCld8ZIujFMAdKG1xyr4Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.40.2.tgz", + "integrity": "sha512-de6TFZYIvJwRNjmW3+gaXiZ2DaWL5D5yGmSYzkdzjBDS3W+B9JQ48oZEsmMvemqjtAFzE16DIBLqd6IQQRuG9Q==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.40.2.tgz", + "integrity": "sha512-urjaEZubdIkacKc930hUDOfQPysezKla/O9qV+O89enqsqUmQm8Xj8O/vh0gHg4LYfv7Y7UsE3QjzLQzDYN1qg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.40.2.tgz", + "integrity": "sha512-KlE8IC0HFOC33taNt1zR8qNlBYHj31qGT1UqWqtvR/+NuCVhfufAq9fxO8BMFC22Wu0rxOwGVWxtCMvZVLmhQg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.40.2.tgz", + "integrity": "sha512-j8CgxvfM0kbnhu4XgjnCWJQyyBOeBI1Zq91Z850aUddUmPeQvuAy6OiMdPS46gNFgy8gN1xkYyLgwLYZG3rBOg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.40.2.tgz", + "integrity": "sha512-Ybc/1qUampKuRF4tQXc7G7QY9YRyeVSykfK36Y5Qc5dmrIxwFhrOzqaVTNoZygqZ1ZieSWTibfFhQ5qK8jpWxw==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.40.2.tgz", + "integrity": "sha512-3FCIrnrt03CCsZqSYAOW/k9n625pjpuMzVfeI+ZBUSDT3MVIFDSPfSUgIl9FqUftxcUXInvFah79hE1c9abD+Q==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.40.2.tgz", + "integrity": "sha512-QNU7BFHEvHMp2ESSY3SozIkBPaPBDTsfVNGx3Xhv+TdvWXFGOSH2NJvhD1zKAT6AyuuErJgbdvaJhYVhVqrWTg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.40.2.tgz", + "integrity": "sha512-5W6vNYkhgfh7URiXTO1E9a0cy4fSgfE4+Hl5agb/U1sa0kjOLMLC1wObxwKxecE17j0URxuTrYZZME4/VH57Hg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.40.2.tgz", + "integrity": "sha512-B7LKIz+0+p348JoAL4X/YxGx9zOx3sR+o6Hj15Y3aaApNfAshK8+mWZEf759DXfRLeL2vg5LYJBB7DdcleYCoQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.40.2.tgz", + "integrity": "sha512-lG7Xa+BmBNwpjmVUbmyKxdQJ3Q6whHjMjzQplOs5Z+Gj7mxPtWakGHqzMqNER68G67kmCX9qX57aRsW5V0VOng==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.40.2.tgz", + "integrity": "sha512-tD46wKHd+KJvsmije4bUskNuvWKFcTOIM9tZ/RrmIvcXnbi0YK/cKS9FzFtAm7Oxi2EhV5N2OpfFB348vSQRXA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.40.2.tgz", + "integrity": "sha512-Bjv/HG8RRWLNkXwQQemdsWw4Mg+IJ29LK+bJPW2SCzPKOUaMmPEppQlu/Fqk1d7+DX3V7JbFdbkh/NMmurT6Pg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.40.2.tgz", + "integrity": "sha512-dt1llVSGEsGKvzeIO76HToiYPNPYPkmjhMHhP00T9S4rDern8P2ZWvWAQUEJ+R1UdMWJ/42i/QqJ2WV765GZcA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.40.2.tgz", + "integrity": "sha512-bwspbWB04XJpeElvsp+DCylKfF4trJDa2Y9Go8O6A7YLX2LIKGcNK/CYImJN6ZP4DcuOHB4Utl3iCbnR62DudA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@types/estree": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", + "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/esbuild": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.4.tgz", + "integrity": "sha512-8pgjLUcUjcgDg+2Q4NYXnPbo/vncAY4UmyaCm0jZevERqCHZIaWwdJHkf8XQtu4AxSKCdvrUbT0XUr1IdZzI8Q==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.4", + "@esbuild/android-arm": "0.25.4", + "@esbuild/android-arm64": "0.25.4", + "@esbuild/android-x64": "0.25.4", + "@esbuild/darwin-arm64": "0.25.4", + "@esbuild/darwin-x64": "0.25.4", + "@esbuild/freebsd-arm64": "0.25.4", + "@esbuild/freebsd-x64": "0.25.4", + "@esbuild/linux-arm": "0.25.4", + "@esbuild/linux-arm64": "0.25.4", + "@esbuild/linux-ia32": "0.25.4", + "@esbuild/linux-loong64": "0.25.4", + "@esbuild/linux-mips64el": "0.25.4", + "@esbuild/linux-ppc64": "0.25.4", + "@esbuild/linux-riscv64": "0.25.4", + "@esbuild/linux-s390x": "0.25.4", + "@esbuild/linux-x64": "0.25.4", + "@esbuild/netbsd-arm64": "0.25.4", + "@esbuild/netbsd-x64": "0.25.4", + "@esbuild/openbsd-arm64": "0.25.4", + "@esbuild/openbsd-x64": "0.25.4", + "@esbuild/sunos-x64": "0.25.4", + "@esbuild/win32-arm64": "0.25.4", + "@esbuild/win32-ia32": "0.25.4", + "@esbuild/win32-x64": "0.25.4" + } + }, + "node_modules/fdir": { + "version": "6.4.4", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.4.tgz", + "integrity": "sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", + "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.8", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/rollup": { + "version": "4.40.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.40.2.tgz", + "integrity": "sha512-tfUOg6DTP4rhQ3VjOO6B4wyrJnGOX85requAXvqYTHsOgb2TFJdZ3aWpT8W2kPoypSGP7dZUyzxJ9ee4buM5Fg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.7" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.40.2", + "@rollup/rollup-android-arm64": "4.40.2", + "@rollup/rollup-darwin-arm64": "4.40.2", + "@rollup/rollup-darwin-x64": "4.40.2", + "@rollup/rollup-freebsd-arm64": "4.40.2", + "@rollup/rollup-freebsd-x64": "4.40.2", + "@rollup/rollup-linux-arm-gnueabihf": "4.40.2", + "@rollup/rollup-linux-arm-musleabihf": "4.40.2", + "@rollup/rollup-linux-arm64-gnu": "4.40.2", + "@rollup/rollup-linux-arm64-musl": "4.40.2", + "@rollup/rollup-linux-loongarch64-gnu": "4.40.2", + "@rollup/rollup-linux-powerpc64le-gnu": "4.40.2", + "@rollup/rollup-linux-riscv64-gnu": "4.40.2", + "@rollup/rollup-linux-riscv64-musl": "4.40.2", + "@rollup/rollup-linux-s390x-gnu": "4.40.2", + "@rollup/rollup-linux-x64-gnu": "4.40.2", + "@rollup/rollup-linux-x64-musl": "4.40.2", + "@rollup/rollup-win32-arm64-msvc": "4.40.2", + "@rollup/rollup-win32-ia32-msvc": "4.40.2", + "@rollup/rollup-win32-x64-msvc": "4.40.2", + "fsevents": "~2.3.2" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.13.tgz", + "integrity": "sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.4.4", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/vite": { + "version": "6.3.5", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.3.5.tgz", + "integrity": "sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.25.0", + "fdir": "^6.4.4", + "picomatch": "^4.0.2", + "postcss": "^8.5.3", + "rollup": "^4.34.9", + "tinyglobby": "^0.2.13" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "jiti": ">=1.21.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..2556456 --- /dev/null +++ b/package.json @@ -0,0 +1,13 @@ +{ + "name": "davidontop", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite --clearScreen false", + "build": "vite build" + }, + "devDependencies": { + "vite": "^6.3.5" + } +} diff --git a/paket.dependencies b/paket.dependencies new file mode 100644 index 0000000..edf19b8 --- /dev/null +++ b/paket.dependencies @@ -0,0 +1,18 @@ +source https://api.nuget.org/v3/index.json +storage: none + +nuget Sutil +nuget Fable.Browser.Dom +nuget Fable.Core +nuget Sutil.Router.Path + +group Build + source https://api.nuget.org/v3/index.json + generate_load_scripts: true + storage: none + + nuget Fake.Core.Target + nuget Fake.IO.FileSystem + nuget Fake.JavaScript.Npm + nuget Fake.DotNet.Cli + nuget Fake.Core.Process \ No newline at end of file diff --git a/paket.lock b/paket.lock new file mode 100644 index 0000000..77f3357 --- /dev/null +++ b/paket.lock @@ -0,0 +1,291 @@ +STORAGE: NONE +NUGET + remote: https://api.nuget.org/v3/index.json + Fable.Browser.Blob (1.4) - restriction: >= netstandard2.0 + Fable.Core (>= 3.2.8) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 + Fable.Browser.Css (2.5) - restriction: >= netstandard2.0 + Fable.Browser.Dom (>= 2.16) - restriction: >= netstandard2.0 + Fable.Browser.Svg (>= 2.4) - restriction: >= netstandard2.0 + Fable.Core (>= 3.2.8) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 + Fable.Browser.Dom (2.19) + Fable.Browser.Blob (>= 1.4) - restriction: >= netstandard2.0 + Fable.Browser.Event (>= 1.7) - restriction: >= netstandard2.0 + Fable.Browser.WebStorage (>= 1.3) - restriction: >= netstandard2.0 + Fable.Core (>= 3.2.8) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 + Fable.Browser.Event (1.7) - restriction: >= netstandard2.0 + Fable.Browser.Gamepad (>= 1.3) - restriction: >= netstandard2.0 + Fable.Core (>= 3.2.8) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 + Fable.Browser.Gamepad (1.3) - restriction: >= netstandard2.0 + Fable.Core (>= 3.2.8) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 + Fable.Browser.MediaQueryList (1.5) - restriction: >= netstandard2.0 + Fable.Browser.Dom (>= 2.16) - restriction: >= netstandard2.0 + Fable.Browser.Event (>= 1.6) - restriction: >= netstandard2.0 + Fable.Core (>= 3.2.8) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 + Fable.Browser.Svg (2.4) - restriction: >= netstandard2.0 + Fable.Browser.Dom (>= 2.16) - restriction: >= netstandard2.0 + Fable.Core (>= 3.2.8) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 + Fable.Browser.WebStorage (1.3) - restriction: >= netstandard2.0 + Fable.Browser.Event (>= 1.6) - restriction: >= netstandard2.0 + Fable.Core (>= 3.2.8) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 + Fable.Core (4.5) + Fable.Promise (3.2) - restriction: >= netstandard2.0 + Fable.Core (>= 3.7.1) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.7.2) - restriction: >= netstandard2.0 + Feliz.Engine (1.0.0-beta-004) - restriction: >= netstandard2.0 + FSharp.Core (>= 5.0) - restriction: >= netstandard2.0 + Feliz.Engine.Bulma (1.0.1) - restriction: >= netstandard2.0 + Feliz.Engine (>= 1.0.0-beta-004) - restriction: >= netstandard2.0 + FSharp.Core (>= 5.0.2) - restriction: >= netstandard2.0 + Feliz.Engine.Event (1.0.0-beta-004) - restriction: >= netstandard2.0 + Fable.Browser.Dom (>= 2.2) - restriction: >= netstandard2.0 + Feliz.Engine (>= 1.0.0-beta-004) - restriction: >= netstandard2.0 + FSharp.Core (>= 5.0) - restriction: >= netstandard2.0 + FSharp.Core (9.0.202) - restriction: >= netstandard2.0 + Sutil (2.0.16) + Fable.Browser.Css (>= 2.5) - restriction: >= netstandard2.0 + Fable.Browser.Dom (>= 2.17) - restriction: >= netstandard2.0 + Fable.Browser.Event (>= 1.6) - restriction: >= netstandard2.0 + Fable.Browser.MediaQueryList (>= 1.5) - restriction: >= netstandard2.0 + Fable.Core (>= 3.7.1) - restriction: >= netstandard2.0 + Fable.Promise (>= 3.2) - restriction: >= netstandard2.0 + Feliz.Engine (>= 1.0.0-beta-004) - restriction: >= netstandard2.0 + Feliz.Engine.Bulma (>= 1.0.1) - restriction: >= netstandard2.0 + Feliz.Engine.Event (>= 1.0.0-beta-004) - restriction: >= netstandard2.0 + FSharp.Core (>= 5.0.2) - restriction: >= netstandard2.0 + Sutil.Router.Path (0.1) + FSharp.Core (>= 8.0.101) - restriction: >= netstandard2.0 + Sutil (>= 2.0.11) - restriction: >= netstandard2.0 + +GROUP Build +GENERATE-LOAD-SCRIPTS: ON +STORAGE: NONE +NUGET + remote: https://api.nuget.org/v3/index.json + BlackFox.VsWhere (1.1) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.0.0.1) - restriction: >= net45 + FSharp.Core (>= 4.2.3) - restriction: && (< net45) (>= netstandard2.0) + Microsoft.Win32.Registry (>= 4.7) - restriction: && (< net45) (>= netstandard2.0) + Fake.Core.CommandLineParsing (6.1.3) - restriction: >= netstandard2.0 + FParsec (>= 1.1.1) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Fake.Core.Context (6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Fake.Core.Environment (6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Fake.Core.FakeVar (6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Context (>= 6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Fake.Core.Process (6.1.3) + Fake.Core.Environment (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.FakeVar (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.String (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Trace (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.IO.FileSystem (>= 6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + System.Collections.Immutable (>= 8.0) - restriction: >= netstandard2.0 + Fake.Core.SemVer (6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Fake.Core.String (6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Fake.Core.Target (6.1.3) + Fake.Core.CommandLineParsing (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Context (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Environment (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.FakeVar (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Process (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.String (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Trace (>= 6.1.3) - restriction: >= netstandard2.0 + FSharp.Control.Reactive (>= 5.0.2) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Fake.Core.Tasks (6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Trace (>= 6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Fake.Core.Trace (6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Environment (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.FakeVar (>= 6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Fake.Core.Xml (6.1.3) - restriction: >= netstandard2.0 + Fake.Core.String (>= 6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Fake.DotNet.Cli (6.1.3) + Fake.Core.Environment (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Process (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.String (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Trace (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.DotNet.MSBuild (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.DotNet.NuGet (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.IO.FileSystem (>= 6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Mono.Posix.NETStandard (>= 1.0) - restriction: >= netstandard2.0 + Newtonsoft.Json (>= 13.0.3) - restriction: >= netstandard2.0 + Fake.DotNet.MSBuild (6.1.3) - restriction: >= netstandard2.0 + BlackFox.VsWhere (>= 1.1) - restriction: >= netstandard2.0 + Fake.Core.Environment (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Process (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.String (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Trace (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.IO.FileSystem (>= 6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + MSBuild.StructuredLogger (>= 2.1.815) - restriction: >= netstandard2.0 + Fake.DotNet.NuGet (6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Environment (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Process (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.SemVer (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.String (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Tasks (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Trace (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Xml (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.IO.FileSystem (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Net.Http (>= 6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Newtonsoft.Json (>= 13.0.3) - restriction: >= netstandard2.0 + NuGet.Protocol (>= 6.10.1) - restriction: >= netstandard2.0 + Fake.IO.FileSystem (6.1.3) + Fake.Core.String (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Trace (>= 6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Fake.JavaScript.Npm (6.1.3) + Fake.Core.Process (>= 6.1.3) - restriction: >= netstandard2.0 + Fake.Testing.Common (>= 6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Fake.Net.Http (6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Trace (>= 6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + Fake.Testing.Common (6.1.3) - restriction: >= netstandard2.0 + Fake.Core.Trace (>= 6.1.3) - restriction: >= netstandard2.0 + FSharp.Core (>= 8.0.301) - restriction: >= netstandard2.0 + FParsec (1.1.1) - restriction: >= netstandard2.0 + FSharp.Core (>= 4.3.4) - restriction: || (>= net45) (>= netstandard2.0) + System.ValueTuple (>= 4.4) - restriction: >= net45 + FSharp.Control.Reactive (6.1.2) - restriction: >= netstandard2.0 + FSharp.Core (>= 6.0.7) - restriction: >= netstandard2.0 + System.Reactive (>= 6.0.1) - restriction: >= netstandard2.0 + FSharp.Core (9.0.202) - restriction: >= netstandard2.0 + Microsoft.Bcl.AsyncInterfaces (9.0.4) - restriction: || (&& (>= net462) (>= netstandard2.0)) (>= net472) (&& (< net8.0) (>= netstandard2.0)) + System.Threading.Tasks.Extensions (>= 4.5.4) - restriction: || (>= net462) (&& (>= netstandard2.0) (< netstandard2.1)) + Microsoft.Bcl.Cryptography (9.0.4) - restriction: || (&& (>= net462) (< net472) (>= netstandard2.0)) (&& (>= net462) (>= net8.0)) (&& (< net472) (>= netstandard2.0) (< netstandard2.1)) (&& (>= net8.0) (< net9.0)) (&& (>= net8.0) (< netstandard2.1)) (&& (< net8.0) (>= netstandard2.1)) + System.Formats.Asn1 (>= 9.0.4) - restriction: || (>= net462) (&& (>= net8.0) (< net9.0)) (&& (< net8.0) (>= netstandard2.0)) + System.Memory (>= 4.5.5) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Runtime.CompilerServices.Unsafe (>= 6.0) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + Microsoft.Build.Framework (17.13.9) - restriction: >= netstandard2.0 + Microsoft.Win32.Registry (>= 5.0) - restriction: && (< net472) (< net9.0) (>= netstandard2.0) + System.Memory (>= 4.5.5) - restriction: && (< net472) (< net9.0) (>= netstandard2.0) + System.Runtime.CompilerServices.Unsafe (>= 6.0) - restriction: || (>= net472) (&& (< net9.0) (>= netstandard2.0)) + System.Security.Principal.Windows (>= 5.0) - restriction: && (< net472) (< net9.0) (>= netstandard2.0) + Microsoft.Build.Utilities.Core (17.13.9) - restriction: >= netstandard2.0 + Microsoft.Build.Framework (>= 17.13.9) - restriction: >= netstandard2.0 + Microsoft.IO.Redist (>= 6.0.1) - restriction: >= net472 + Microsoft.NET.StringTools (>= 17.13.9) - restriction: >= netstandard2.0 + Microsoft.Win32.Registry (>= 5.0) - restriction: && (< net472) (< net9.0) (>= netstandard2.0) + System.Collections.Immutable (>= 8.0) - restriction: >= netstandard2.0 + System.Configuration.ConfigurationManager (>= 8.0) - restriction: >= netstandard2.0 + System.Memory (>= 4.5.5) - restriction: || (>= net472) (&& (< net9.0) (>= netstandard2.0)) + System.Runtime.CompilerServices.Unsafe (>= 6.0) - restriction: || (>= net472) (&& (< net9.0) (>= netstandard2.0)) + System.Security.Principal.Windows (>= 5.0) - restriction: && (< net472) (< net9.0) (>= netstandard2.0) + System.Text.Encoding.CodePages (>= 7.0) - restriction: && (< net472) (< net9.0) (>= netstandard2.0) + Microsoft.IO.Redist (6.1.3) - restriction: >= net472 + System.Buffers (>= 4.6.1) - restriction: >= net472 + System.Memory (>= 4.6.3) - restriction: >= net472 + Microsoft.NET.StringTools (17.13.9) - restriction: >= netstandard2.0 + System.Memory (>= 4.5.5) - restriction: || (>= net472) (&& (< net9.0) (>= netstandard2.0)) + System.Runtime.CompilerServices.Unsafe (>= 6.0) - restriction: || (>= net472) (&& (< net9.0) (>= netstandard2.0)) + Microsoft.NETCore.Platforms (7.0.4) - restriction: || (&& (< monoandroid) (>= net8.0) (< netcoreapp2.1) (< netstandard2.1) (< xamarintvos) (< xamarinwatchos)) (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (&& (>= netcoreapp2.1) (< netcoreapp3.0)) + Microsoft.Win32.Registry (5.0) - restriction: || (&& (< net45) (>= netstandard2.0)) (&& (< net472) (< net9.0) (>= netstandard2.0)) + System.Buffers (>= 4.5.1) - restriction: || (&& (>= monoandroid) (< netstandard1.3)) (>= monotouch) (&& (< net46) (< netcoreapp2.0) (>= netstandard2.0)) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + System.Memory (>= 4.5.4) - restriction: || (&& (< monoandroid) (>= netcoreapp2.0) (< netcoreapp2.1) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< net46) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (>= uap10.1) + System.Security.AccessControl (>= 5.0) - restriction: || (&& (>= monoandroid) (< netstandard1.3)) (&& (< monoandroid) (>= netcoreapp2.0)) (>= monotouch) (&& (< net46) (< netcoreapp2.0) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.1) (>= uap10.1) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + System.Security.Principal.Windows (>= 5.0) - restriction: || (&& (>= monoandroid) (< netstandard1.3)) (&& (< monoandroid) (>= netcoreapp2.0)) (>= monotouch) (&& (< net46) (< netcoreapp2.0) (>= netstandard2.0)) (>= net461) (>= netcoreapp2.1) (>= uap10.1) (>= xamarinios) (>= xamarinmac) (>= xamarintvos) (>= xamarinwatchos) + Mono.Posix.NETStandard (1.0) - restriction: >= netstandard2.0 + MSBuild.StructuredLogger (2.2.472) - restriction: >= netstandard2.0 + Microsoft.Build.Framework (>= 17.5) - restriction: >= netstandard2.0 + Microsoft.Build.Utilities.Core (>= 17.5) - restriction: >= netstandard2.0 + System.Collections.Immutable (>= 8.0) - restriction: >= netstandard2.0 + System.Memory (>= 4.6) - restriction: && (< net8.0) (>= netstandard2.0) + System.Runtime.CompilerServices.Unsafe (>= 6.1) - restriction: && (< net8.0) (>= netstandard2.0) + Newtonsoft.Json (13.0.3) - restriction: >= netstandard2.0 + NuGet.Common (6.13.2) - restriction: >= netstandard2.0 + NuGet.Frameworks (>= 6.13.2) - restriction: >= netstandard2.0 + System.Collections.Immutable (>= 8.0) - restriction: >= netstandard2.0 + NuGet.Configuration (6.13.2) - restriction: >= netstandard2.0 + NuGet.Common (>= 6.13.2) - restriction: >= netstandard2.0 + System.Security.Cryptography.ProtectedData (>= 4.4) - restriction: && (< net472) (>= netstandard2.0) + NuGet.Frameworks (6.13.2) - restriction: >= netstandard2.0 + NuGet.Packaging (6.13.2) - restriction: >= netstandard2.0 + Newtonsoft.Json (>= 13.0.3) - restriction: >= netstandard2.0 + NuGet.Configuration (>= 6.13.2) - restriction: >= netstandard2.0 + NuGet.Versioning (>= 6.13.2) - restriction: >= netstandard2.0 + System.Formats.Asn1 (>= 8.0.1) - restriction: || (&& (< net472) (>= netstandard2.0)) (>= net8.0) + System.Memory (>= 4.5.5) - restriction: >= net472 + System.Security.Cryptography.Pkcs (>= 6.0.4) - restriction: || (&& (< net472) (>= netstandard2.0)) (>= net8.0) + System.Text.Json (>= 8.0.5) - restriction: || (>= net472) (&& (< net8.0) (>= netstandard2.0)) + NuGet.Protocol (6.13.2) - restriction: >= netstandard2.0 + NuGet.Packaging (>= 6.13.2) - restriction: >= netstandard2.0 + System.Text.Json (>= 8.0.5) - restriction: || (>= net472) (&& (< net8.0) (>= netstandard2.0)) + NuGet.Versioning (6.13.2) - restriction: >= netstandard2.0 + System.Buffers (4.6.1) - restriction: || (&& (>= monoandroid) (< netstandard1.3) (>= netstandard2.0)) (&& (>= monotouch) (>= netstandard2.0)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0)) (&& (>= net462) (>= net8.0)) (&& (>= net462) (>= netstandard2.0)) (&& (< net462) (>= netstandard2.0) (< netstandard2.1)) (>= net472) (&& (>= net8.0) (< netstandard2.1)) (&& (< net8.0) (>= netstandard2.0)) (&& (< netcoreapp2.1) (>= netstandard2.0) (< netstandard2.1)) (&& (>= netstandard2.0) (>= xamarintvos)) (&& (>= netstandard2.0) (>= xamarinwatchos)) (>= xamarinios) (>= xamarinmac) + System.Collections.Immutable (9.0.4) - restriction: >= netstandard2.0 + System.Memory (>= 4.5.5) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Runtime.CompilerServices.Unsafe (>= 6.0) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Configuration.ConfigurationManager (9.0.4) - restriction: >= netstandard2.0 + System.Diagnostics.EventLog (>= 9.0.4) - restriction: >= net8.0 + System.Security.Cryptography.ProtectedData (>= 9.0.4) - restriction: || (&& (< net462) (>= netstandard2.0)) (>= net8.0) + System.Diagnostics.EventLog (9.0.4) - restriction: >= net8.0 + System.Formats.Asn1 (9.0.4) - restriction: || (&& (>= net462) (>= net8.0)) (&& (< net462) (>= netstandard2.0)) (&& (< net472) (>= netstandard2.0)) (&& (>= net8.0) (< net9.0)) (&& (>= net8.0) (< xamarintvos) (< xamarinwatchos)) (&& (>= netcoreapp3.0) (< xamarintvos) (< xamarinwatchos)) (>= netstandard2.1) + System.Buffers (>= 4.5.1) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Memory (>= 4.5.5) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.ValueTuple (>= 4.5) - restriction: >= net462 + System.IO.Pipelines (9.0.4) - restriction: || (&& (>= net462) (>= netstandard2.0)) (>= net472) (&& (< net8.0) (>= netstandard2.0)) + System.Buffers (>= 4.5.1) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Memory (>= 4.5.5) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Threading.Tasks.Extensions (>= 4.5.4) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Memory (4.6.3) - restriction: || (&& (< monoandroid) (>= netcoreapp2.0) (< netcoreapp2.1) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos)) (&& (>= net462) (>= net8.0)) (&& (>= net462) (>= netstandard2.0)) (&& (< net462) (>= netstandard2.0) (< netstandard2.1)) (>= net472) (&& (>= net8.0) (< netstandard2.1)) (&& (< net8.0) (>= netstandard2.0)) (&& (< net9.0) (>= netstandard2.0)) (&& (>= netstandard2.0) (>= uap10.1)) + System.Buffers (>= 4.6.1) - restriction: || (>= net462) (&& (< netcoreapp2.1) (>= netstandard2.0) (< netstandard2.1)) + System.Numerics.Vectors (>= 4.6.1) - restriction: || (>= net462) (&& (< netcoreapp2.1) (>= netstandard2.0) (< netstandard2.1)) + System.Runtime.CompilerServices.Unsafe (>= 6.1.2) - restriction: || (>= net462) (&& (< netcoreapp2.1) (>= netstandard2.0) (< netstandard2.1)) + System.Numerics.Vectors (4.6.1) - restriction: || (&& (>= net462) (>= netstandard2.0)) (&& (< netcoreapp2.1) (>= netstandard2.0) (< netstandard2.1)) + System.Reactive (6.0.1) - restriction: >= netstandard2.0 + System.Threading.Tasks.Extensions (>= 4.5.4) - restriction: || (>= net472) (&& (< net6.0) (>= netstandard2.0)) (>= uap10.1) + System.Runtime.CompilerServices.Unsafe (6.1.2) - restriction: || (&& (>= net462) (>= netstandard2.0)) (&& (< net462) (>= netstandard2.0) (< netstandard2.1)) (>= net472) (&& (>= net8.0) (< netstandard2.1)) (&& (< net8.0) (>= netstandard2.0)) (&& (< net8.0) (>= netstandard2.1)) (&& (< net9.0) (>= netstandard2.0)) (&& (< netcoreapp2.1) (>= netstandard2.0) (< netstandard2.1)) + System.Security.AccessControl (6.0.1) - restriction: || (&& (>= monoandroid) (< netstandard1.3) (>= netstandard2.0)) (&& (< monoandroid) (>= netcoreapp2.0)) (&& (>= monotouch) (>= netstandard2.0)) (&& (< net45) (>= net461) (>= netstandard2.0)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0)) (>= netcoreapp2.1) (&& (>= netstandard2.0) (>= uap10.1)) (&& (>= netstandard2.0) (>= xamarintvos)) (&& (>= netstandard2.0) (>= xamarinwatchos)) (>= xamarinios) (>= xamarinmac) + System.Security.Principal.Windows (>= 5.0) - restriction: || (>= net461) (&& (< net6.0) (>= netstandard2.0)) + System.Security.Cryptography.Cng (5.0) - restriction: || (&& (< net462) (>= netstandard2.0) (< netstandard2.1)) (&& (>= net8.0) (< netstandard2.1)) (&& (< net8.0) (>= netstandard2.1)) + Microsoft.NETCore.Platforms (>= 5.0) - restriction: && (< monoandroid) (>= netcoreapp2.0) (< netcoreapp2.1) (< netstandard2.1) (< xamarintvos) (< xamarinwatchos) + System.Formats.Asn1 (>= 5.0) - restriction: && (>= netcoreapp3.0) (< xamarinios) (< xamarinmac) (< xamarintvos) (< xamarinwatchos) + System.Security.Cryptography.Pkcs (9.0.4) - restriction: || (&& (< net472) (>= netstandard2.0)) (>= net8.0) + Microsoft.Bcl.Cryptography (>= 9.0.4) - restriction: || (>= net462) (&& (>= net8.0) (< net9.0)) (&& (< net8.0) (>= netstandard2.1)) (&& (>= netstandard2.0) (< netstandard2.1)) + System.Buffers (>= 4.5.1) - restriction: && (< net462) (>= netstandard2.0) (< netstandard2.1) + System.Formats.Asn1 (>= 9.0.4) - restriction: || (&& (< net462) (>= netstandard2.0) (< netstandard2.1)) (&& (>= net8.0) (< net9.0)) (&& (< net8.0) (>= netstandard2.1)) + System.Memory (>= 4.5.5) - restriction: && (< net462) (>= netstandard2.0) (< netstandard2.1) + System.Runtime.CompilerServices.Unsafe (>= 6.0) - restriction: || (&& (< net462) (>= netstandard2.0) (< netstandard2.1)) (&& (< net8.0) (>= netstandard2.1)) + System.Security.Cryptography.Cng (>= 5.0) - restriction: || (&& (< net462) (>= netstandard2.0) (< netstandard2.1)) (&& (< net8.0) (>= netstandard2.1)) + System.Security.Cryptography.ProtectedData (9.0.4) - restriction: || (&& (< net462) (>= netstandard2.0)) (&& (< net472) (>= netstandard2.0)) (>= net8.0) + System.Memory (>= 4.5.5) - restriction: && (< net462) (< net8.0) (>= netstandard2.0) + System.Security.Principal.Windows (5.0) - restriction: || (&& (>= monoandroid) (< netstandard1.3) (>= netstandard2.0)) (&& (< monoandroid) (>= netcoreapp2.0)) (&& (>= monotouch) (>= netstandard2.0)) (&& (< net45) (>= net461) (>= netstandard2.0)) (&& (< net45) (< netcoreapp2.0) (>= netstandard2.0)) (&& (>= net461) (>= netcoreapp2.0)) (&& (< net472) (< net9.0) (>= netstandard2.0)) (>= netcoreapp2.1) (&& (>= netstandard2.0) (>= uap10.1)) (&& (>= netstandard2.0) (>= xamarintvos)) (&& (>= netstandard2.0) (>= xamarinwatchos)) (>= xamarinios) (>= xamarinmac) + Microsoft.NETCore.Platforms (>= 5.0) - restriction: || (&& (>= netcoreapp2.0) (< netcoreapp2.1)) (&& (>= netcoreapp2.1) (< netcoreapp3.0)) + System.Text.Encoding.CodePages (9.0.4) - restriction: && (< net472) (< net9.0) (>= netstandard2.0) + System.Memory (>= 4.5.5) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Runtime.CompilerServices.Unsafe (>= 6.0) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Text.Encodings.Web (9.0.4) - restriction: || (&& (>= net462) (>= netstandard2.0)) (>= net472) (&& (< net8.0) (>= netstandard2.0)) + System.Buffers (>= 4.5.1) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Memory (>= 4.5.5) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Runtime.CompilerServices.Unsafe (>= 6.0) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Text.Json (9.0.4) - restriction: || (>= net472) (&& (< net8.0) (>= netstandard2.0)) + Microsoft.Bcl.AsyncInterfaces (>= 9.0.4) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Buffers (>= 4.5.1) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.IO.Pipelines (>= 9.0.4) - restriction: || (>= net462) (&& (>= net8.0) (< net9.0)) (&& (< net8.0) (>= netstandard2.0)) + System.Memory (>= 4.5.5) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Runtime.CompilerServices.Unsafe (>= 6.0) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.Text.Encodings.Web (>= 9.0.4) - restriction: || (>= net462) (&& (>= net8.0) (< net9.0)) (&& (< net8.0) (>= netstandard2.0)) + System.Threading.Tasks.Extensions (>= 4.5.4) - restriction: || (>= net462) (&& (< net8.0) (>= netstandard2.0)) + System.ValueTuple (>= 4.5) - restriction: >= net462 + System.Threading.Tasks.Extensions (4.6.3) - restriction: || (&& (>= net462) (>= netstandard2.0)) (>= net472) (&& (< net6.0) (>= netstandard2.0)) (&& (< net8.0) (>= netstandard2.0)) (&& (>= netstandard2.0) (< netstandard2.1)) (&& (>= netstandard2.0) (>= uap10.1)) + System.Runtime.CompilerServices.Unsafe (>= 6.1.2) - restriction: || (>= net462) (&& (< netcoreapp2.1) (>= netstandard2.0) (< netstandard2.1)) + System.ValueTuple (4.6.1) - restriction: || (&& (>= net462) (>= net8.0)) (&& (>= net462) (>= netstandard2.0)) (>= net472) diff --git a/paket.references b/paket.references new file mode 100644 index 0000000..8d154c3 --- /dev/null +++ b/paket.references @@ -0,0 +1,4 @@ +Sutil +Fable.Browser.Dom +Fable.Core +Sutil.Router.Path \ No newline at end of file diff --git a/public/logo-transparent.png b/public/logo-transparent.png new file mode 100755 index 0000000000000000000000000000000000000000..aab7e9ed885a00c7eea67331733d5341f29fd7ad GIT binary patch literal 13450 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%0AK3jU1YsT5MFE!fli*|mvM<-H-gA z6jh%8cHl^-aQ+XDCqI7t*sOCp@8ze^ps=uO4X1Y|9%f5PNx37^od4^~%Y?{n0tcop zo@Q)hR8)8AP{q@!;SI0n)ZR4~*mXZ3c4%yDZ|(1Ix-Y#S+`ZlKHuvA;5Utwn`wQK|{pMPg=4^Q9 zU~~TQ&gb)-^SS?UD%RKid^-L2)cD9q$v!z-tIuqAR&LVY_aiCbR>Jdhb93saseQ2N ze?GsyF5pi5L4MUP@wkda&-~qyU&Jcna}DmF=-#*b>C>-O?7APGRm$!Ec{YDT+SysF z_t`}3tunnFUN~jy)Wol^t{QXh+&DS%^QTX2PuUzfZf?oCy2`He@g|LX6_0xzD<57; z4_~!(DXZD+x4T~Ys0si3vfO@S%LLzW&rf@fKYlqa{QQESM(%wwj%jIW;roB@y8gXt zZ+DK_?PK?jcya7}=OsV=^wqUFy1KfxUgf%BYol7XW?zrn-Wo+2FmN$2 zFtRW(g48fDFfbyqnHZTFK)Tu(7#M^YnZas6>ZBN1!R#Ie1_o&;dkO;sg9cO$69WT- zAtMt5F9QR^90mpkBSt0$5e5c^RSXOane7m}_Ax*J2LlLtfNW-9V1Uu?p1uJJMtX(@ zdd6l93`PbnN|BzVFv>PV@sy9bAYF_vqC{p zep+TuDg#5soZ5-D9)}%dj>ZQc<=5gW6DU0qF!#+OrM|6Pt}6txTEk?0^!_%f@p^W3 zFMbeJ@F98Qs|SzPtZrVdz){y=VQrzg%cJwZHfugF?oqf&GGBDOf`GEKk580uJ5xmO*d3f5IR01@zxRP zBgV709ju&hai(jNSB;-d;w9Ej`JL-3{v6x+VABEP!)aEg{xWJ}+_`JE7;4Xw`e;(< za<$}?xRKoIIomC=pK4{_o4ns(%H{BBJN=49ICYXZguxpBgxzdQQt zZ+!KB5_BSzN%=UF)&+&#bsy}1++90${;V&PoC+6wK3ZsZtYKa3g23WA?~{*b&S5y1 z{=h5$r*>(=x5;0kyt`!>|K2`uwA4HJTf=GDgcm0#_}-k_WYStAS7E<6{}fa6c8B+~ zu16QkFXwldwae=s1AF^{ipEXXYwz8?d++xC^jUxZGBo@vS|elVo5R4sTag(OQ4-v4q}24xJX@vryZ0+8WTx0Eg`4^s_!c;) zW@LI)6{QAO`Gq7`WhYyvDB0U_*;H6nnkaM zm6T-LDnjVC87bLuDcBUHq*(>IxIv95N=dU-$|xx*u+rBr zFE7_CH`dE9O4m2Ew6xSWFw!?N(k)6!(=D#dD@m--%_~+0838fFCAB!YD6^m>Ge1uO zWM*PgerbuVk`kAKf&$d=irfNUU%2sk#n4bl&d=4aNG#Ad)HBe}&DBTNQC#9$R)Swg zaY$uBs(w&vaeir0a;j@tYF>#lvJolCaQy|PMLA&aq$KO7=A`DP=9Lud8|oRNSP9B; za2=o^NYBhI0PCvAEkIFOl9`4GEEL~>WWe4*c1T5T0o+^^)iA$<6@$ab$|XO!6y!Wl z7h5He{Z=XY$(bouV5X_Dskym%nuV@`rG=`VlFiMMj7@aYj0{tBO$z{o_`z*yJN3>IJ(&;Zkic+o~5RA#_@Y@?46CJ+Tkg^V4S0z@px#m$b( zMju?#fl57yfuK@{mKYirw6sD&Vbl_m!gn;dMuUr_5FknMXzCgbE|NlkB*mkti)z8e zh3HPD=B3ywl`GlX?UQ_6!@$5)7T^=&%D}+D4+R4J0s;a8f&zj<0z$$9LLve}q5{IA z0>WYf!s3ELB7!2~f+7-vqLPAQQbJY{QQqVk%e@>-$_+M)_NqKZ0Vin?No zdSXg?VoLgA$_C;fWGJp;B(7pCu4*ix|p@8#LBWvO#YvLL+XJFKZqsXXYB!oAFt?;py-gOQ$)fRix@&r0QL)>RqDhQ=;Zms^(j!=2xNSU#0F>q3&O)?q8)IP^BJFtsYRL9$2dp zRHqSCuMym!5!|R5(x@5Iq#4?z8QQEF+M*fOq8Zkz8P=v5-mVqit`*Ut715~`*{K!T zr5)L=9o4NJ)uSEVs~z2^9n-HJGeIY&Pba2dCw78P>_nZ|Njh~f3HyO&w|Bv@N*4j%aAqUR_+<>|6Dr#ETOQa_<*zVl^KFpDY66bZ*k z&Dr}deM?+jcDm)$8OhZ(pD(P}Fq#?v%-+`4_A+xp-t%w&GbM7Q=B|J4Gqv~4`8O&2 z55o&q$Q-geyJ-_^tZw^er#nJdL-?}ue@Hi;njdtZBSf#iUOT|@^IC_ejL8jtLMy~J zu}<~1ReGjsn!j#=>5IKLAN9%$T&XsHvs8P!``Jf~kNn$Nrfg#W>*=Oa_mf3AR&^Wu z)c2CTFP4PAKB~(l-}G;*@Z`u{YMb`Tm%eb?vEbLvqdi+*{|?|UDUeM#DD~w=N>|wS zleyn#`K8L7irUrOSa#BI+0F1p_wVQ44=*vC^XH6J{{8#*-6;>sIi|=f%ha9TG&#Ka zT*S9Kfoqt)N@SGpRSDi=x>U2&=c+>1nog#p5<6xpde!Hz-V)6j#q&(X%)`~2^Q`vl znzoXAI*%rVb5Hp_v!ZDFf_0atI?fF-u{N5Zw@AI{Q*-~X&gVP1rW9o+&t23R)V$~p z^V>TUV?#y!LitV}kS@?a?6?0!+xxb26W0AZT;SsWuHefo@!&5uhpjdWvhwgRnw%XN z6`i_$vq!qec8&i_??`<5|4r~!*VWY0kN@<_UGxj#}@wy1e|!^D<;3Tg7{`0|~CX|If&+ z^Azm(USE1{hVnH&i%-EXV%xj@=WooiTQxPmBy>x*sZX1x)ORV-u>KeEZNhf2xjcHq@o0w5au?U#OA>GGwRb#s*XFRe-gz!ko5zuddVX%{_HrtDbVb8(-eK_r^1Yv z7}uxX@RggmwM6@}hxxa2T&w0cZ%g75pEpS@I$-f>?aXI9?7bW-E-WwnHBHxJT5`f@PEne>)T$uI(fLgBdy|+W3<6nE5zbd{r0d`9 zwmi1`sKSJbvi*yX-(R5H;VrATKL3@%ODVpivft!xxwn;`Z0%y^W9{wu+q=#4rS>+3 zmbi(%e9TKP_s3;FX!>e(XsPepdp1iHUcN}^nKNWeehE6|Y!+`PN?HqfrO$WGpDzzh-jQm#D3}FaGhZs(2Z+pyV#|q`XsF zoA?~}dhl;rGOKBi-?vY9O@i+?)TUJYZTRvdPC(<}w)*;o1)81|NnTL$glC_yxUbVCz9$bV<}Em;up;m5iMY6g9ibQBSs&IsbuKw& zgMfx?x>5l}$IAlb$hqO}=z(!Px-O z8(%i)zF3?Y$-dr;YwGU&*lR1zpY|wjsSNZKf8%iX*dj*1eB~W~%NDE?m^W8Gb*6S_L>Ja43ZRgGoJ(wO&m zmFg<0HcvIv4c6m#KV)y5G4b%#*_^uSf{WXQldkEj3&ky#>3eo&>$?3ZU;jM*E*s{n zK3C87)x;N8#~qAw7qrQpVv3%0vF~KlJ|$1fziQr_QztWi-|eUEo2dI!`ErX)--;W& zJNEc$Ju}tzEED*pI{*2d8O_3$O}8%9Gs>UcoOk+vur0TxlBLYqNyZQ63vqpqIKA-Z z`>RW@rmhuUdiv8x6?eA3@9vlFHrd=z5E|_pI9X=hmuHj8cJHlvu$R;7?bQCf3G=LE z6IMUlT3L4csZZz6*$slb#T9xdO}p@s_t8(?o@0BpPraYI@B91H_kJ;d(bhR`G$qn< zdFkm52fzL8c~SfO#QyGms}24}&HuJ)`hSJHVV~G7l;wY~dbWSMWX!)=?p8(DPI|a| zmo^A1^Ig#wdT}zYVcq@IZ*tq4e<|wL>zry*Yb& Program.mount \ No newline at end of file diff --git a/src/Routing.fs b/src/Routing.fs new file mode 100644 index 0000000..4852edf --- /dev/null +++ b/src/Routing.fs @@ -0,0 +1,16 @@ +module DOT.Routing + +open System +open System.Reflection +open Sutil +open Sutil.Router + +let router = Router.createRouter() +let Link<'a> = Router.Link router [] +let navigate = Router.navigate router + +let getHandlerFromUrl(url: string list) = + match url with + | [] -> Pages.Index.view() + | ["about"] -> Pages.About.view() + | _ -> Pages.NotFound.view() \ No newline at end of file