From 045b67d77d3c9d7707698e3eeaee3a9c6255e6a6 Mon Sep 17 00:00:00 2001 From: Bram van den Heuvel Date: Fri, 17 Feb 2023 11:10:03 +0100 Subject: [PATCH] elm-format --- src/Internal/Api/SendMessageEvent/Api.elm | 6 ++-- src/Internal/Api/SendMessageEvent/Main.elm | 39 +++++++++++----------- src/Internal/Tools/VersionControl.elm | 11 +++--- 3 files changed, 30 insertions(+), 26 deletions(-) diff --git a/src/Internal/Api/SendMessageEvent/Api.elm b/src/Internal/Api/SendMessageEvent/Api.elm index 3db5739..7c72b90 100644 --- a/src/Internal/Api/SendMessageEvent/Api.elm +++ b/src/Internal/Api/SendMessageEvent/Api.elm @@ -1,4 +1,4 @@ -module Internal.Api.SendMessageEvent.Api exposing (sendMessageEventV1, sendMessageEventV2, SendMessageEventOutputV1, SendMessageEventInputV1) +module Internal.Api.SendMessageEvent.Api exposing (SendMessageEventInputV1, SendMessageEventOutputV1, sendMessageEventV1, sendMessageEventV2) import Internal.Api.Request as R import Internal.Api.SendMessageEvent.V1.SpecObjects as SO1 @@ -16,7 +16,9 @@ type alias SendMessageEventInputV1 = , transactionId : String } -type alias SendMessageEventOutputV1 = Task X.Error SO1.EventResponse + +type alias SendMessageEventOutputV1 = + Task X.Error SO1.EventResponse sendMessageEventV1 : SendMessageEventInputV1 -> SendMessageEventOutputV1 diff --git a/src/Internal/Api/SendMessageEvent/Main.elm b/src/Internal/Api/SendMessageEvent/Main.elm index 277da06..7c45936 100644 --- a/src/Internal/Api/SendMessageEvent/Main.elm +++ b/src/Internal/Api/SendMessageEvent/Main.elm @@ -3,31 +3,32 @@ module Internal.Api.SendMessageEvent.Main exposing (..) import Internal.Api.SendMessageEvent.Api as Api import Internal.Tools.VersionControl as VC + sendMessageEvent : List String -> Maybe (SendMessageEventInput -> SendMessageEventOutput) sendMessageEvent versions = VC.withBottomLayer { current = Api.sendMessageEventV1 , version = "r0.0.0" } - |> VC.sameForVersion "r0.0.1" - |> VC.sameForVersion "r0.1.0" - |> VC.sameForVersion "r0.2.0" - |> VC.sameForVersion "r0.3.0" - |> VC.sameForVersion "r0.4.0" - |> VC.sameForVersion "r0.5.0" - |> VC.sameForVersion "r0.6.0" - |> VC.sameForVersion "r0.6.1" - |> VC.addMiddleLayer - { downcast = identity - , current = Api.sendMessageEventV2 - , upcast = identity - , version = "v1.1" - } - |> VC.sameForVersion "v1.2" - |> VC.sameForVersion "v1.3" - |> VC.sameForVersion "v1.4" - |> VC.sameForVersion "v1.5" - |> VC.mostRecentFromVersionList versions + |> VC.sameForVersion "r0.0.1" + |> VC.sameForVersion "r0.1.0" + |> VC.sameForVersion "r0.2.0" + |> VC.sameForVersion "r0.3.0" + |> VC.sameForVersion "r0.4.0" + |> VC.sameForVersion "r0.5.0" + |> VC.sameForVersion "r0.6.0" + |> VC.sameForVersion "r0.6.1" + |> VC.addMiddleLayer + { downcast = identity + , current = Api.sendMessageEventV2 + , upcast = identity + , version = "v1.1" + } + |> VC.sameForVersion "v1.2" + |> VC.sameForVersion "v1.3" + |> VC.sameForVersion "v1.4" + |> VC.sameForVersion "v1.5" + |> VC.mostRecentFromVersionList versions type alias SendMessageEventInput = diff --git a/src/Internal/Tools/VersionControl.elm b/src/Internal/Tools/VersionControl.elm index 59a0eb7..c80c861 100644 --- a/src/Internal/Tools/VersionControl.elm +++ b/src/Internal/Tools/VersionControl.elm @@ -92,10 +92,10 @@ type alias MiddleLayer cin cout din dout = {-| The VersionControl layer is the layer that keeps track of all potential versions. -} type VersionControl cin cout - = VersionControl + = VersionControl { latestVersion : cin -> cout , order : List String - , versions : Dict String (cin -> cout) + , versions : Dict String (cin -> cout) } @@ -154,6 +154,7 @@ mostRecentFromVersionList versionList ((VersionControl { order }) as vc) = |> List.filterMap (\v -> fromVersion v vc) |> List.head + {-| Sometimes, no changes are needed and a function works just the same as the one in the previous version. In that case, you can amend with a `sameForVersion` function to indicate that the spec is identical for this version. @@ -161,9 +162,9 @@ identical for this version. sameForVersion : String -> VersionControl a b -> VersionControl a b sameForVersion version (VersionControl data) = VersionControl - { data - | order = version :: data.order - , versions = Dict.insert version data.latestVersion data.versions + { data + | order = version :: data.order + , versions = Dict.insert version data.latestVersion data.versions }