+Aurelia +Paket +FAKE

Interim commit; there may still be leftover files from the Aurelia
tutorial
This commit is contained in:
Daniel J. Summers
2017-05-20 09:45:48 -05:00
parent e522ab1ae1
commit b0b20df36d
69 changed files with 2884 additions and 25 deletions

View File

@@ -176,16 +176,20 @@ let viewJournal =
let reqs = Data.Requests.allForUser (defaultArg (read ctx "user") "") dataCtx
OK (Views.journal reqs |> html ctx))
let idx =
context (fun ctx ->
Console.WriteLine "serving index"
succeed)
/// Suave application
let app =
statefulForSession
>=> Auth.loggedOn
>=> choose [
path Route.home >=> viewHome
path Route.home >=> Files.browseFileHome "index.html"
path Route.journal >=> viewJournal
path Route.User.logOn >=> Auth.handleSignIn
path Route.User.logOff >=> Auth.handleSignOut
Files.browseHome
Writers.setHeader "Cache-Control" "no-cache" >=> Files.browseHome
NOT_FOUND "Page not found."
]
@@ -203,12 +207,18 @@ let suaveCfg =
serverKey = Text.Encoding.UTF8.GetBytes("12345678901234567890123456789012")
cookieSerialiser = JsonNetCookieSerializer ()
}
open Suave.Utils
[<EntryPoint>]
let main argv =
// Establish the data environment
//liftDep getConn (Data.establishEnvironment >> Async.RunSynchronously)
//|> run deps
let writeKey key = File.WriteAllText ("key.txt", key)
Crypto.generateKey Crypto.KeySize
|> Convert.ToBase64String
|> writeKey
ensureDatabase ()
startWebServer suaveCfg app
0

View File

@@ -1,13 +1,11 @@
<Project Sdk="FSharp.NET.Sdk;Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<VersionPrefix>0.8.1</VersionPrefix>
<TargetFramework>netcoreapp1.1</TargetFramework>
<DebugType>portable</DebugType>
<AssemblyName>myPrayerJournal</AssemblyName>
<OutputType>Exe</OutputType>
<PackageId>src</PackageId>
<PackageTargetFallback>$(PackageTargetFallback);dnxcore50</PackageTargetFallback>
<PackageId>MyPrayerJournal</PackageId>
<RuntimeFrameworkVersion>1.1.1</RuntimeFrameworkVersion>
</PropertyGroup>
@@ -24,27 +22,15 @@
<None Update="appsettings.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Update="wwwroot/**">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
<Import Project="..\..\packages\FSharp.NET.Sdk\build\FSharp.NET.Core.Sdk.targets" />
<Import Project="..\..\.paket\Paket.Restore.targets" />
<ItemGroup>
<PackageReference Include="FSharp.NET.Sdk" Version="1.0.*" PrivateAssets="All" />
<PackageReference Include="FSharp.Core" Version="4.1.*" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Auth0.AuthenticationApi" Version="3.6.0" />
<PackageReference Include="jose-jwt" Version="2.3.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="1.0.0">
<PrivateAssets>All</PrivateAssets>
</PackageReference>
<PackageReference Include="Newtonsoft.Json" Version="10.0.2" />
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="1.1.0" />
<PackageReference Include="Suave" Version="2.0.0" />
<PackageReference Include="Suave.Experimental" Version="2.0.0" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="dotnet-compile-fsc" Version="1.0.0-preview2.1-*" />
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="1.0.0" />
</ItemGroup>

6
src/api/paket.references Normal file
View File

@@ -0,0 +1,6 @@
Auth0.AuthenticationApi
jose-jwt
Newtonsoft.Json
Npgsql.EntityFrameworkCore.PostgreSQL
Suave
Suave.Experimental