Styles borrowed from https://www.npmjs.com/package/cli-boxes
{ topLeft : String
, top : String
, topRight : String
, right : String
, bottomRight : String
, bottom : String
, bottomLeft : String
, left : String
}
single : Box
A thin box with sharp corners
┌────┐
│ │
└────┘
double : Box
2 thin, nested boxes with sharp corners
╔════╗
║ ║
╚════╝
singleDouble : Box
A box with sharp corners, thin on the top and bottom and doubled up on the sides
╓────╖
║ ║
╙────╜
doubleSingle : Box
A box with sharp corners, thin on the sides and doubled on top and bottom
╒════╕
│ │
╘════╛
bold : Box
A thick box with sharp corners
┏━━━━┓
┃ ┃
┗━━━━┛
classic : Box
A thin box with plus shaped corners
+----+
| |
+----+
rounded : Box
A thin box with rounded corners
╭────╮
│ │
╰────╯
custom : { topLeft : Char, top : Char, topRight : Char, right : Char, bottomRight : Char, bottom : Char, bottomLeft : Char, left : Char } -> Box
Design your own box, such as
•————•
∫ ∫
•————•
This can break layout when you use Char
s that have a width greater than 1.
E.g. 🌈 is 2 columns wide.
draw : { width : Basics.Int, height : Basics.Int } -> Box -> String
Helps to draw the box for you