## 事象 [[ts-deepmerge]]を`3.0.0`から`7.0.0`にバージョンアップし、ビルドしたら以下のエラーになった。 ```error ✘ [ERROR] No matching export in "node_modules/ts-deepmerge/esm/index.js" for import "default" src/main.ts:11:7: 11 │ import merge from "ts-deepmerge"; ╵ ~~~~~ 1 error ``` `src/main.ts`の一部。 ```ts import merge from "ts-deepmerge"; // 中略 this.settings = merge.withOptions( ``` `merge.withOptions`でも以下のエラーが発生している。 ```error Property 'withOptions' does not exist on type 'typeof import("/home/tadashi-aikawa/git/github.com/tadashi-aikawa/obsidian-various-complements-plugin/node_modules/ts-deepmerge/cjs/index")'. ``` ## 原因 (多分) v6で[[ESモジュール (JavaScript)|ESモジュール]]と[[CommonJS]]の両方に対応した影響と思われる。 <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://github.githubassets.com/favicons/favicon.svg" /> <span class="link-card-v2-site-name">GitHub</span> </div> <div class="link-card-v2-title"> migrate to support both ESM and CommonJS · voodoocreation/ts-deepmerge@51c8c32 </div> <div class="link-card-v2-content"> A TypeScript deep merge function with automatically inferred types. - migrate to support both ESM and CommonJS · ... </div> <img class="link-card-v2-image" src="https://opengraph.githubassets.com/88cf5b7db41dce9cdd408f860e0e0cff9ca61d089055520223d623f823377587/voodoocreation/ts-deepmerge/commit/51c8c3286af40e90afe06c080671f54b6651f0b3" /> <a href="https://github.com/voodoocreation/ts-deepmerge/commit/51c8c3286af40e90afe06c080671f54b6651f0b3"></a> </div> ## 解決方法 importの記述を変更する。READMEにも記載の通り。 ```diff - import merge from "ts-deepmerge"; + import { merge } from "ts-deepmerge"; ```