Skip to content

Instantly share code, notes, and snippets.

@ksaldana1
Created March 13, 2020 01:30
Show Gist options
  • Save ksaldana1/a279d88e06aa513f386f72d97072a121 to your computer and use it in GitHub Desktop.
Save ksaldana1/a279d88e06aa513f386f72d97072a121 to your computer and use it in GitHub Desktop.
re_example_2
module Styles = {
open Css;
let app =
style([
display(`flex),
justifyContent(`center),
alignItems(`center),
flexDirection(`column),
minHeight(`vh(100.0)),
]);
let message = role =>
switch (role) {
| `PREMIUM => style([color(red)])
| `FREE
| `FUTURE_ADDED_VALUE__ => style([color(black)])
};
};
[@react.component]
let make = () => {
let query = Query.use(~variables=(), ());
<div className=Styles.app>
{Belt.Array.map(query.messages, message => {
switch (message.author) {
| `User(user) =>
<div className={Styles.message(user.role)}>
{React.string(user.name ++ ": " ++ message.text)}
</div>
| `Guest(guest) =>
<div>
{React.string(guest.placeholder ++ ": " ++ message.text)}
</div>
| `UnmappedUnionMember => React.null
}
})
->React.array}
</div>;
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment