git.fiddlerwoaroof.com
Browse code

fix bools in todo responses

Ed Langley authored on 29/08/2019 02:13:22
Showing 1 changed files
... ...
@@ -41,10 +41,21 @@
41 41
   (setf *todos*
42 42
         (fset:empty-map)))
43 43
 
44
+
45
+(defparameter *completed-lens*
46
+  (data-lens.lenses:make-hash-table-lens "completed"))
47
+
48
+(defun bool-to-yason (bool)
49
+  (if bool
50
+      'yason:true
51
+      'yason:false))
52
+
44 53
 (defun update-todo (id v)
45 54
   (setf (todo id)
46 55
         (serapeum:merge-tables (or (todo id)
47 56
                                    (make-hash-table :test 'equal))
48
-                               (alexandria:alist-hash-table
49
-                                v
50
-                                :test 'equal))))
57
+                               (data-lens.lenses:over *completed-lens*
58
+                                                      'bool-to-yason
59
+                                                      (alexandria:alist-hash-table
60
+                                                       v
61
+                                                       :test 'equal)))))