お久しぶりです。
数年前まで yarn をよく使っていたのですが、最近は npm に回帰しつつあります。
というのも、ライブラリのインストール速度でそこまで大きな差を感じない点、npmパッケージを作る機会が増えた点、触れているプロジェクトでMonorepoにするケースが増え、workspaceの扱いがnpmの方が使いやすいということもあり。 また、最近の自身のポリシーとして、差が少ししかないのであれば、Defaultを使うべし、という機運が高いため、npmを推してます。

古いプロジェクトはyarnのケースが多いため、yarn.lockをpackage-lock.jsonに変換する機会がたまにあります。
その際は synp というnpmパッケージを使うと便利です。

https://www.npmjs.com/package/synp

使い方は簡単。

yarn.lock から package-lock.json

npx synp --source-file ./yarn.lock

package-lock.json から yarn.lock

npx synp --source-file ./package-lock.json

恒久的に使わない場合でも、CIで一時的に使う際も便利です。