Flank

flank links

Flank on vercel production build Storybook

badge

Netlify Status

Swagger API link

https://flank-sowecanjustbefriends.azurewebsites.net/api/index.html swagger

TODO

https://headlessui.dev/react https://heroicons.dev/

git config core.ignorecase false

https://jakearchibald.github.io/svgomg/ svg optimizer https://react-svgr.com/playground/ svg to component

TODO: Components

Components Reference

Elements

Anchor

anchor anchor

  • Props:
    • text
    • case can be uppercase or lowercase

Avatar

  • State:

    • small menu avatar can be active or not
  • Props:

    • size is large or small (menu) - large is editable, small links to profile avatar avatar avatar

BackIcon

back icon back icon

  • State:
    • can be active or not
  • No props

Button

button

  • States:
    • "mousedown" (design unconfirmed)
  • Props:
    • text
    • type: button or submit
    • purple or green border/color
    • case can be uppercase or none/default button

NB: currently at fixed width for uppercase and variable for normal case. Suggestion from CT: normalize both to get width from padding.

CloseButton

unconfirmed CloseButton

  • No Props

Confirmation

confirmation

  • Props:
    • text

Currency

currency

  • No props

DirectionLabel

DirectionLabel

  • Props:
    • text can either be "to:" or "from:"

GButton

gbutton

  • States:
    • "mousedown" (design unconfirmed)
  • No props

HistoryMessage

HistoryMessage

  • Props:
    • date (date passed from db)
    • other props TBC

InfoTitle

InfoTitle

  • Props
    • text

InputError

(design unconfirmed) input error

  • States:
    • hidden or visible
  • Props:
    • text

Label

label

  • Props:
    • for
    • text
    • text can be left or center aligned

LaunchIcon

launch icon launch icon

  • State:
    • can be active or not
  • No props

LoanTitle

LoanTitle

  • Props:
    • name (other person's name passed from db)

Logo

logo logo

  • Props:
    • size

Menu

menu

  • No props

MoneyInput

money input

  • Props:
    • id, name

PactIcon

pact icon pact icon

  • State:
    • can be active or not
  • No props

Paragraph

paragraph

  • Props:
    • text

ProgressBar

ProgressBar

  • Props:
    • percentageComplete (percentage values and "fill" div size calculated from db)

SelectInput

select input

  • States (see TextInput screenshots for design):
    • default / focused / unfocused (all identical to default)
    • invalid: selection not made (design unconfirmed)
    • valid: input passes validation
  • Props:
    • id, name
    • options

Speed

Speed

  • Props:
    • text (speed text calculated from db)

Subtitle

subtitle

  • No props

TextInput

  • States:
    • default / focused / unfocused (all identical to default) text input
    • invalid: input doesn't pass validation (design unconfirmed) text input
    • valid: input passes validation text input
  • Props:
    • id, name
    • placeholder
    • can have "edit" wand for updating data or no edit wand for posting new data text input

Title

title

  • Props:
    • text (for second half of title only)
    • NB: needs to pull username from db for profile page

Username

username

  • Props:
    • text (username passed from db)