SVGなのでプログラムでスタイルを変えるのも簡単。Reactコンポーネントにした
ts
export const LassoSVGButton = (props: any) => {
const strokecolor = isActive(window.app.paperLassoTool) ? "#00C" : "#777";
const strokewidth = isActive(window.app.paperLassoTool) ? "3" : "1";
return (
<svg onClick={props.onClick} viewBox="0 0 50 50">
<rect x="5" y="5" width="40" height="40" rx="10"
fill="none" stroke={strokecolor} stroke-width={strokewidth} stroke-dasharray="5 2"/>
</svg>
)
}