6 Commits
2.0.1 ... 2.1.4

Author SHA1 Message Date
Daniel J. Summers
dfd1c59554 Fix tryJournalById function (#42)
Also update .NET deps
2020-04-23 10:07:23 -05:00
Daniel J. Summers
83b70073e9 Update deps 2020-04-11 08:51:14 -05:00
dependabot[bot]
11025cc39a Bump auth0-js from 9.12.2 to 9.13.2 in /src/app (#40) 2020-04-11 13:37:32 +00:00
Daniel J. Summers
fb908a1cef Update to .NET Core 3.1 (#39)
Also catch dependencies up to latest
2020-03-07 18:30:21 -06:00
Daniel J. Summers
6a6f7b35c7 Reverse notes ordering, make scrollable (#32) 2019-10-14 10:50:50 -05:00
715df08cbe Migrate API to .NET Core 3.0 (#31)
Migrate API to .NET Core 3.0 (fixes #30)
2019-09-28 08:42:58 -05:00
7 changed files with 1730 additions and 1485 deletions

View File

@@ -126,8 +126,8 @@ module Data =
.ToListAsync()
return
jrnl
|> Seq.map (fun r -> r.history <- []; r.notes <- []; r)
|> List.ofSeq
|> List.map (fun r -> r.history <- []; r.notes <- []; r)
}
/// Save changes in the current document session
@@ -166,7 +166,9 @@ module Data =
.Where(fun x -> x.Id = (RequestId.toString reqId) && x.userId = userId)
.ProjectInto<JournalRequest>()
.FirstOrDefaultAsync ()
return Option.fromObject req
return
Option.fromObject req
|> Option.map (fun r -> r.history <- []; r.notes <- []; r)
}
/// Update the recurrence for a request

View File

@@ -85,6 +85,15 @@ module private Helpers =
/// Flip JSON result so we can pipe into it
let asJson<'T> next ctx (o : 'T) =
json o next ctx
/// Work-around to let the Json.NET serializer synchronously deserialize from the request stream
// TODO: Remove this once there is an async serializer
let allowSyncIO : HttpHandler =
fun next ctx ->
match ctx.Features.Get<Features.IHttpBodyControlFeature>() with
| null -> ()
| f -> f.AllowSynchronousIO <- true
next ctx
/// Strongly-typed models for post requests
@@ -156,6 +165,7 @@ module Request =
/// POST /api/request
let add : HttpHandler =
authorize
>=> allowSyncIO
>=> fun next ctx ->
task {
let! r = ctx.BindJsonAsync<Models.Request> ()
@@ -187,6 +197,7 @@ module Request =
/// POST /api/request/[req-id]/history
let addHistory requestId : HttpHandler =
authorize
>=> allowSyncIO
>=> fun next ctx ->
task {
use sess = session ctx
@@ -218,6 +229,7 @@ module Request =
/// POST /api/request/[req-id]/note
let addNote requestId : HttpHandler =
authorize
>=> allowSyncIO
>=> fun next ctx ->
task {
use sess = session ctx
@@ -297,6 +309,7 @@ module Request =
/// PATCH /api/request/[req-id]/snooze
let snooze requestId : HttpHandler =
authorize
>=> allowSyncIO
>=> fun next ctx ->
task {
use sess = session ctx
@@ -314,6 +327,7 @@ module Request =
/// PATCH /api/request/[req-id]/recurrence
let updateRecurrence requestId : HttpHandler =
authorize
>=> allowSyncIO
>=> fun next ctx ->
task {
use sess = session ctx

View File

@@ -1,8 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp2.2</TargetFramework>
<Version>2.0.1.0</Version>
<TargetFramework>netcoreapp3.1</TargetFramework>
<Version>2.1.4.0</Version>
</PropertyGroup>
<ItemGroup>
@@ -14,17 +14,17 @@
<ItemGroup>
<PackageReference Include="FunctionalCuid" Version="1.0.0" />
<PackageReference Include="Giraffe" Version="3.6.0" />
<PackageReference Include="Giraffe" Version="4.1.0" />
<PackageReference Include="Giraffe.TokenRouter" Version="1.0.0" />
<PackageReference Include="Microsoft.AspNetCore.App" />
<PackageReference Include="Microsoft.FSharpLu" Version="0.10.29" />
<PackageReference Include="Microsoft.FSharpLu.Json" Version="0.10.29" />
<PackageReference Include="RavenDb.Client" Version="4.2.1" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="3.1.3" />
<PackageReference Include="Microsoft.FSharpLu" Version="0.11.6" />
<PackageReference Include="Microsoft.FSharpLu.Json" Version="0.11.6" />
<PackageReference Include="RavenDb.Client" Version="4.2.102" />
<PackageReference Include="TaskBuilder.fs" Version="2.1.0" />
</ItemGroup>
<ItemGroup>
<PackageReference Update="FSharp.Core" Version="4.7.0" />
<PackageReference Update="FSharp.Core" Version="4.7.1" />
</ItemGroup>
<ItemGroup>

View File

@@ -90,11 +90,12 @@ module Configure =
bldr.ConfigureServices svcs
open Microsoft.Extensions.Logging
open Microsoft.Extensions.Hosting
/// Configure logging
let logging (bldr : IWebHostBuilder) =
let logz (log : ILoggingBuilder) =
let env = log.Services.BuildServiceProvider().GetService<IHostingEnvironment> ()
let env = log.Services.BuildServiceProvider().GetService<IWebHostEnvironment> ()
match env.IsDevelopment () with
| true -> log
| false -> log.AddFilter(fun l -> l > LogLevel.Information)
@@ -109,7 +110,7 @@ module Configure =
let appConfig =
Action<IApplicationBuilder> (
fun (app : IApplicationBuilder) ->
let env = app.ApplicationServices.GetService<IHostingEnvironment> ()
let env = app.ApplicationServices.GetService<IWebHostEnvironment> ()
match env.IsDevelopment () with
| true -> app.UseDeveloperExceptionPage ()
| false -> app.UseGiraffeErrorHandler Handlers.Error.error

View File

@@ -1,6 +1,6 @@
{
"name": "my-prayer-journal",
"version": "2.0.1",
"version": "2.1.4",
"description": "myPrayerJournal - Front End",
"author": "Daniel J. Summers <daniel@bitbadger.solutions>",
"private": true,
@@ -10,10 +10,10 @@
"lint": "vue-cli-service lint",
"apistart": "cd ../MyPrayerJournal.Api && dotnet run",
"vue": "vue-cli-service build --modern && cd ../MyPrayerJournal.Api && dotnet run",
"publish": "vue-cli-service build --modern && cd ../MyPrayerJournal.Api && dotnet publish -c Release"
"publish": "vue-cli-service build --modern && cd ../MyPrayerJournal.Api && dotnet publish -c Release -r linux-x64 --self-contained false"
},
"dependencies": {
"auth0-js": "^9.7.3",
"auth0-js": "^9.13.2",
"axios": "^0.19.0",
"moment": "^2.18.1",
"vue": "^2.5.15",

View File

@@ -10,7 +10,7 @@ md-dialog(:md-active.sync='notesVisible').mpj-note-dialog
md-dialog-actions
md-button(@click='saveNotes()').md-primary #[md-icon save] Save
md-button(@click='closeDialog()') #[md-icon undo] Cancel
.mpj-dialog-content
md-dialog-content(md-scrollbar='true').mpj-dialog-content
div(v-if='hasPriorNotes')
p.mpj-text-center: strong Prior Notes for This Request
.mpj-note-list
@@ -71,7 +71,7 @@ export default {
this.progress.$emit('show', 'indeterminate')
try {
const notes = await api.getNotes(this.form.requestId)
this.priorNotes = notes.data
this.priorNotes = notes.data.sort((a, b) => b.asOf - a.asOf)
this.progress.$emit('done')
} catch (e) {
console.error(e)

File diff suppressed because it is too large Load Diff