feat(refactor): modal