migrate to js-url