make `show-text` a state in element Book