Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 9x 9x 9x 9x 9x 9x 9x 9x 9x 9x 9x 9x 9x 9x 9x 9x | import {flow, Function, pipe} from '#util'
import {borderSet, elbowSet} from '../glyph.js'
import {teeSet} from '../glyph/tees.js'
import {drawPart, text} from '../part.js'
import {box} from '../parts.js'
import {type Theme, setFormatter, setIndents} from '../tree.js'
/**
* Set the theme formatter to draw boxes around nodes.
* @category drawing
* @function
*/
export const setBoxNodesFormatter: Function.EndoOf<Theme> = flow(
setFormatter(pointyBox),
setIndents(4),
)
function pointyBox(s: string): string {
return pipe(
s,
text,
box.curried({
border: {
...borderSet('thin'),
elbows: {
...elbowSet('thin'),
topLeft: teeSet('thin').bottom,
},
},
}),
drawPart.unlines,
)
}
|