Skip to content
This repository was archived by the owner on Feb 6, 2024. It is now read-only.

Commit 0ce5ad3

Browse files
authored
Merge pull request #100 from deckgo/nm-fix-slide-put
handler: fix: Drop empty expressions
2 parents d6d10e1 + ddc8c94 commit 0ce5ad3

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

infra/handler/src/DeckGo/Handler.hs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1020,10 +1020,13 @@ data DynamoUpdateExpr
10201020
| Remove T.Text
10211021

10221022
dynamoSet :: [DynamoUpdateExpr] -> T.Text
1023-
dynamoSet exprs = setExpr <> " " <> removeExpr
1023+
dynamoSet exprs = T.unwords exprs'
10241024
where
1025-
setExpr = "SET " <> T.intercalate "," sts
1026-
removeExpr = "REMOVE " <> T.intercalate "," removes
1025+
exprs' = catMaybes [setExpr, removeExpr]
1026+
setExpr = if length sts == 0 then Nothing else Just $
1027+
"SET " <> T.intercalate "," sts
1028+
removeExpr = if length removes == 0 then Nothing else Just $
1029+
"REMOVE " <> T.intercalate "," removes
10271030
(sts, removes) = foldr f ([], []) exprs
10281031
f (Set l r) (ls, rs) = (ls <> [l <> " = " <> r], rs)
10291032
f (Remove t ) (ls, rs) = (ls, rs <> [t])

0 commit comments

Comments
 (0)