add `runtime` private property
repaint once after plugin render
use runtime
code style & improve & demo update