@@ -14,6 +14,7 @@ module Supabase.Supabase
14 , SessionData
14 , SessionData
15 , SignInOptions
15 , SignInOptions
18 , class Equals
19 , class Equals
19 , class Select
20 , class Select
@@ -25,6 +26,7 @@ module Supabase.Supabase
26 , maybeSingle
27 , maybeSingle
27 , onAuthStateChange
28 , onAuthStateChange
@@ -127,6 +129,18 @@ else instance (YogaJson.ReadForeign output) => Equals FilterBuilder (Aff output)
127 equals :: String -> String -> FilterBuilder -> Aff output
129 equals :: String -> String -> FilterBuilder -> Aff output
128 equals l r builder = runFn2 (eqRunImpl builder) l r # Promise.toAffE >>= Util.fromJSON
130 equals l r builder = runFn2 (eqRunImpl builder) l r # Promise.toAffE >>= Util.fromJSON
132+foreign import orImpl :: forall builderIn builderOut. Array String -> builderIn -> builderOut
134+class Or builder output | output -> builder where
135+ or :: Array String -> builder -> output
137+instance Or FilterBuilder FilterBuilder where
138+ or :: Array String -> FilterBuilder -> FilterBuilder
139+ or keys fb = orImpl keys fb
140+else instance Or QueryBuilder FilterBuilder where
141+ or :: Array String -> QueryBuilder -> FilterBuilder
142+ or keys fb = orImpl keys fb
130foreign import singleImpl :: FilterBuilder -> Effect (Promise Foreign)
144foreign import singleImpl :: FilterBuilder -> Effect (Promise Foreign)
132single :: forall t. YogaJson.ReadForeign t => FilterBuilder -> Aff (Response t)
146single :: forall t. YogaJson.ReadForeign t => FilterBuilder -> Aff (Response t)
@@ -216,4 +230,3 @@ getUser client = do
216 Just user, _ -> pure $ Right user
230 Just user, _ -> pure $ Right user
217 _, Just error -> pure $ Left error
231 _, Just error -> pure $ Left error
218 _, _ -> pure $ Left (error "Unexpected response error")
232 _, _ -> pure $ Left (error "Unexpected response error")