Skip to content

Commit

Permalink
Melon Head: use View.option consitently (#155)
Browse files Browse the repository at this point in the history
  • Loading branch information
turboMaCk authored and ICTGuerrilla committed Nov 5, 2023
1 parent a281af5 commit 2441481
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 67 deletions.
96 changes: 36 additions & 60 deletions melon-head/src/App/Applications.res
Original file line number Diff line number Diff line change
Expand Up @@ -27,36 +27,32 @@ module Processing = {
{
name: "First Name",
minMax: ("150px", "1fr"),
view: r => React.string(r.firstName->Option.getWithDefault("--")),
view: r => r.firstName->View.option(React.string),
},
{
name: "Last Name",
minMax: ("150px", "2fr"),
view: r => React.string(r.lastName->Option.getWithDefault("--")),
view: r => r.lastName->View.option(React.string),
},
{
name: "Email",
minMax: ("250px", "2fr"),
view: r =>
r.email->Option.mapWithDefault(React.string("--"), email => <Link.Email email />),
view: r => r.email->View.option(email => <Link.Email email />),
},
{
name: "Phone",
minMax: ("220px", "2fr"),
view: r =>
r.phoneNumber->Option.mapWithDefault(React.string("--"), phoneNumber =>
<Link.Tel phoneNumber />
),
view: r => r.phoneNumber->View.option(phoneNumber => <Link.Tel phoneNumber />),
},
{
name: "City",
minMax: ("250px", "1fr"),
view: r => React.string(r.city->Option.getWithDefault("--")),
view: r => r.city->View.option(React.string),
},
{
name: "Company Name",
minMax: ("250px", "1fr"),
view: r => React.string(r.companyName->Option.getWithDefault("--")),
view: r => r.companyName->View.option(React.string),
},
{
name: "Language",
Expand Down Expand Up @@ -94,36 +90,32 @@ module Unverified = {
{
name: "First Name",
minMax: ("150px", "1fr"),
view: r => React.string(r.firstName->Option.getWithDefault("--")),
view: r => r.firstName->View.option(React.string),
},
{
name: "Last Name",
minMax: ("150px", "2fr"),
view: r => React.string(r.lastName->Option.getWithDefault("--")),
view: r => r.lastName->View.option(React.string),
},
{
name: "Email",
minMax: ("250px", "2fr"),
view: r =>
r.email->Option.mapWithDefault(React.string("--"), email => <Link.Email email />),
view: r => r.email->View.option(email => <Link.Email email />),
},
{
name: "Phone",
minMax: ("220px", "2fr"),
view: r =>
r.phoneNumber->Option.mapWithDefault(React.string("--"), phoneNumber =>
<Link.Tel phoneNumber />
),
view: r => r.phoneNumber->View.option(phoneNumber => <Link.Tel phoneNumber />),
},
{
name: "City",
minMax: ("250px", "2fr"),
view: r => React.string(r.city->Option.getWithDefault("--")),
view: r => r.city->View.option(React.string),
},
{
name: "Company Name",
minMax: ("250px", "1fr"),
view: r => React.string(r.companyName->Option.getWithDefault("--")),
view: r => r.companyName->View.option(React.string),
},
{
name: "Language",
Expand Down Expand Up @@ -164,18 +156,17 @@ module Accepted = {
{
name: "First Name",
minMax: ("150px", "2fr"),
view: r => React.string(r.firstName->Option.getWithDefault("--")),
view: r => r.firstName->View.option(React.string),
},
{
name: "Last Name",
minMax: ("150px", "2fr"),
view: r => React.string(r.lastName->Option.getWithDefault("--")),
view: r => r.lastName->View.option(React.string),
},
{
name: "Email",
minMax: ("250px", "2fr"),
view: r =>
r.email->Option.mapWithDefault(React.string("--"), email => <Link.Email email />),
view: r => r.email->View.option(email => <Link.Email email />),
},
{
name: "Phone",
Expand All @@ -188,12 +179,12 @@ module Accepted = {
{
name: "City",
minMax: ("250px", "2fr"),
view: r => React.string(r.city->Option.getWithDefault("--")),
view: r => r.city->View.option(React.string),
},
{
name: "Company Name",
minMax: ("250px", "1fr"),
view: r => React.string(r.companyName->Option.getWithDefault("--")),
view: r => r.companyName->View.option(React.string),
},
{
name: "Language",
Expand Down Expand Up @@ -231,36 +222,32 @@ module Rejected = {
{
name: "First Name",
minMax: ("150px", "1fr"),
view: r => React.string(r.firstName->Option.getWithDefault("--")),
view: r => r.firstName->View.option(React.string),
},
{
name: "Last Name",
minMax: ("150px", "2fr"),
view: r => React.string(r.lastName->Option.getWithDefault("--")),
view: r => r.lastName->View.option(React.string),
},
{
name: "Email",
minMax: ("250px", "2fr"),
view: r =>
r.email->Option.mapWithDefault(React.string("--"), email => <Link.Email email />),
view: r => r.email->View.option(email => <Link.Email email />),
},
{
name: "Phone",
minMax: ("220px", "2fr"),
view: r =>
r.phoneNumber->Option.mapWithDefault(React.string("--"), phoneNumber =>
<Link.Tel phoneNumber />
),
view: r => r.phoneNumber->View.option(phoneNumber => <Link.Tel phoneNumber />),
},
{
name: "City",
minMax: ("250px", "2fr"),
view: r => React.string(r.city->Option.getWithDefault("--")),
view: r => r.city->View.option(React.string),
},
{
name: "Company Name",
minMax: ("250px", "1fr"),
view: r => React.string(r.companyName->Option.getWithDefault("--")),
view: r => r.companyName->View.option(React.string),
},
{
name: "Language",
Expand Down Expand Up @@ -298,36 +285,32 @@ module Invalid = {
{
name: "First Name",
minMax: ("150px", "1fr"),
view: r => React.string(r.firstName->Option.getWithDefault("--")),
view: r => r.firstName->View.option(React.string),
},
{
name: "Last Name",
minMax: ("150px", "2fr"),
view: r => React.string(r.lastName->Option.getWithDefault("--")),
view: r => r.lastName->View.option(React.string),
},
{
name: "Email",
minMax: ("250px", "2fr"),
view: r =>
r.email->Option.mapWithDefault(React.string("--"), email => <Link.Email email />),
view: r => r.email->View.option(email => <Link.Email email />),
},
{
name: "Phone",
minMax: ("220px", "2fr"),
view: r =>
r.phoneNumber->Option.mapWithDefault(React.string("--"), phoneNumber =>
<Link.Tel phoneNumber />
),
view: r => r.phoneNumber->View.option(phoneNumber => <Link.Tel phoneNumber />),
},
{
name: "City",
minMax: ("250px", "2fr"),
view: r => React.string(r.city->Option.getWithDefault("--")),
view: r => r.city->View.option(React.string),
},
{
name: "Company Name",
minMax: ("250px", "1fr"),
view: r => React.string(r.companyName->Option.getWithDefault("--")),
view: r => r.companyName->View.option(React.string),
},
{
name: "Language",
Expand Down Expand Up @@ -365,36 +348,32 @@ module All = {
{
name: "First Name",
minMax: ("150px", "1fr"),
view: r => React.string(r.firstName->Option.getWithDefault("--")),
view: r => r.firstName->View.option(React.string),
},
{
name: "Last Name",
minMax: ("150px", "2fr"),
view: r => React.string(r.lastName->Option.getWithDefault("--")),
view: r => r.lastName->View.option(React.string),
},
{
name: "Email",
minMax: ("250px", "2fr"),
view: r =>
r.email->Option.mapWithDefault(React.string("--"), email => <Link.Email email />),
view: r => r.email->View.option(email => <Link.Email email />),
},
{
name: "Phone",
minMax: ("220px", "2fr"),
view: r =>
r.phoneNumber->Option.mapWithDefault(React.string("--"), phoneNumber =>
<Link.Tel phoneNumber />
),
view: r => r.phoneNumber->View.option(phoneNumber => <Link.Tel phoneNumber />),
},
{
name: "City",
minMax: ("250px", "2fr"),
view: r => React.string(r.city->Option.getWithDefault("--")),
view: r => r.city->View.option(React.string),
},
{
name: "Company Name",
minMax: ("250px", "1fr"),
view: r => React.string(r.companyName->Option.getWithDefault("--")),
view: r => r.companyName->View.option(React.string),
},
{
name: "Language",
Expand Down Expand Up @@ -450,10 +429,7 @@ let make = (~api: Api.t) => {
RescriptReactRouter.push(tabToUrl(newTab))
}

let tabHandlers = (
activeTab,
setActiveTab
)
let tabHandlers = (activeTab, setActiveTab)

let (basicStats, _, _) =
api->Hook.getData(
Expand Down
14 changes: 7 additions & 7 deletions melon-head/src/App/Members.res
Original file line number Diff line number Diff line change
Expand Up @@ -182,29 +182,29 @@ let columns: array<DataTable.column<MemberData.summary>> = [
{
name: "Left On",
minMax: ("150px", "1fr"),
view: r => React.string(r.leftAt->Option.mapWithDefault("--", Js.Date.toLocaleDateString)),
view: r => r.leftAt->View.option(a => React.string(Js.Date.toLocaleDateString(a))),
},
{
name: "First Name",
minMax: ("150px", "2fr"),
view: r => React.string(r.firstName->Option.getWithDefault("--")),
view: r => r.firstName->View.option(React.string),
},
{
name: "Last Name",
minMax: ("150px", "2fr"),
view: r => React.string(r.lastName->Option.getWithDefault("--")),
view: r => r.lastName->View.option(React.string),
},
{
name: "Email",
minMax: ("250px", "2fr"),
view: r => r.email->Option.mapWithDefault(React.string("--"), email => <Link.Email email />),
view: r => r.email->View.option(email => <Link.Email email />),
},
{
name: "Phone",
minMax: ("220px", "2fr"),
view: r =>
r.phoneNumber->Option.mapWithDefault(React.string("--"), phoneNumber =>
<Link.Tel phoneNumber />
r.phoneNumber->View.option(phoneNumber =>
<Link.Tel phoneNumber />
),
},
{
Expand All @@ -215,7 +215,7 @@ let columns: array<DataTable.column<MemberData.summary>> = [
{
name: "City",
minMax: ("250px", "1fr"),
view: r => React.string(r.city->Option.getWithDefault("--")),
view: r => r.city->View.option(React.string),
},
{
name: "Created On",
Expand Down

0 comments on commit 2441481

Please sign in to comment.