"""Enable ESM Modules for generated Web API""" from json import loads, dumps TSCONFIG_ESM = { "compilerOptions": { "declaration": True, "target": "es6", "module": "esnext", "moduleResolution": "node", "outDir": "./dist/esm", "typeRoots": [ "node_modules/@types" ] }, "exclude": [ "dist", "node_modules" ] } with open("web-api/package.json", encoding="utf-8") as _package: package = loads(_package.read()) package["license"] = "GPL-3.0-only" package["module"] = "./dist/esm/index.js" package["sideEffects"] = False package["scripts"]["build"] = "tsc && tsc --project tsconfig.esm.json" open("web-api/package.json", "w+", encoding="utf-8").write(dumps(package)) open("web-api/tsconfig.esm.json", "w+", encoding="utf-8").write(dumps(TSCONFIG_ESM))