From c0f2719171f54a46d7668619f63349dc4d130a94 Mon Sep 17 00:00:00 2001 From: itsMapleLeaf <19603573+itsMapleLeaf@users.noreply.github.com> Date: Thu, 4 Aug 2022 14:39:47 -0500 Subject: [PATCH] added script to generate exports --- packages/reacord/library/main.ts | 47 +++-- packages/reacord/package.json | 2 + packages/reacord/scripts/generate-exports.ts | 62 +++++++ pnpm-lock.yaml | 176 ++++++++++++------- 4 files changed, 201 insertions(+), 86 deletions(-) diff --git a/packages/reacord/library/main.ts b/packages/reacord/library/main.ts index 36432d7..f5aeb1b 100644 --- a/packages/reacord/library/main.ts +++ b/packages/reacord/library/main.ts @@ -1,19 +1,28 @@ -// export * from "./core/component-event" -// export * from "./core/components/action-row" -// export * from "./core/components/button" -// export * from "./core/components/button-shared-props" -// export * from "./core/components/embed" -// export * from "./core/components/embed-author" -// export * from "./core/components/embed-field" -// export * from "./core/components/embed-footer" -// export * from "./core/components/embed-image" -// export * from "./core/components/embed-thumbnail" -// export * from "./core/components/embed-title" -// export * from "./core/components/link" -// export * from "./core/components/option" -// export * from "./core/components/select" -// export * from "./core/instance" -// export { useInstance } from "./core/instance-context" -// export * from "./core/reacord" -// export * from "./djs/reacord-discord-js" -export {} +export { type ReacordConfig, ReacordClient } from "./reacord-client.js" +export { type ReacordInstance } from "./reacord-instance.js" +export { ActionRow, type ActionRowProps } from "./react/action-row.js" +export { type ButtonSharedProps } from "./react/button-shared-props.js" +export { + Button, + type ButtonProps, + type ButtonClickEvent, +} from "./react/button.js" +export { type ComponentEvent } from "./react/component-event.js" +export { EmbedAuthor, type EmbedAuthorProps } from "./react/embed-author.js" +export { EmbedField, type EmbedFieldProps } from "./react/embed-field.js" +export { EmbedFooter, type EmbedFooterProps } from "./react/embed-footer.js" +export { EmbedImage, type EmbedImageProps } from "./react/embed-image.js" +export { + EmbedThumbnail, + type EmbedThumbnailProps, +} from "./react/embed-thumbnail.js" +export { EmbedTitle, type EmbedTitleProps } from "./react/embed-title.js" +export { Embed, type EmbedProps } from "./react/embed.js" +export { useInstance } from "./react/instance-context.js" +export { Link, type LinkProps } from "./react/link.js" +export { Option, type OptionProps } from "./react/option.js" +export { + Select, + type SelectProps, + type SelectChangeEvent, +} from "./react/select.js" diff --git a/packages/reacord/package.json b/packages/reacord/package.json index d631daa..ff5dada 100644 --- a/packages/reacord/package.json +++ b/packages/reacord/package.json @@ -62,6 +62,7 @@ "devDependencies": { "@reacord/helpers": "workspace:*", "@types/lodash-es": "^4.17.6", + "@types/prettier": "^2.6.4", "discord.js": "^14.1.2", "dotenv": "^16.0.1", "lodash-es": "^4.17.21", @@ -70,6 +71,7 @@ "pretty-ms": "^8.0.0", "react": "^18.2.0", "release-it": "^15.2.0", + "ts-morph": "^15.1.0", "tsup": "^6.2.1", "tsx": "^3.8.0", "type-fest": "^2.18.0", diff --git a/packages/reacord/scripts/generate-exports.ts b/packages/reacord/scripts/generate-exports.ts index e69de29..4e6f0f6 100644 --- a/packages/reacord/scripts/generate-exports.ts +++ b/packages/reacord/scripts/generate-exports.ts @@ -0,0 +1,62 @@ +import { writeFile } from "node:fs/promises" +import { join, relative } from "node:path/posix" +import prettier from "prettier" +import { Node, Project, SyntaxKind } from "ts-morph" + +function isDeclarationPublic(declaration: Node) { + if (!Node.isJSDocable(declaration)) return false + + const jsDocTags = new Set( + declaration + .getJsDocs() + .flatMap((doc) => doc.getTags()) + .map((tag) => tag.getTagName()), + ) + + return jsDocTags.has("category") && !jsDocTags.has("private") +} + +const project = new Project() + +project.addSourceFilesAtPaths(["library/**/*.{ts,tsx}", "!library/main.ts"]) + +const exportLines = project + .getSourceFiles() + .map((file) => { + const importPath = relative( + "library", + join(file.getDirectoryPath(), file.getBaseNameWithoutExtension() + ".js"), + ) + const exports = file.getExportedDeclarations() + + const exportNames = [...exports].flatMap(([name, [declaration]]) => { + if (!declaration) return [] + if (!isDeclarationPublic(declaration)) return [] + if ( + declaration.isKind(SyntaxKind.TypeAliasDeclaration) || + declaration.isKind(SyntaxKind.InterfaceDeclaration) + ) { + return `type ${name}` + } + return name + }) + + return { importPath, exportNames } + }) + .filter(({ exportNames }) => exportNames.length > 0) + .map(({ importPath, exportNames }) => { + return `export { ${exportNames.join(", ")} } from "./${importPath}"` + }) + +const resolvedConfig = await prettier.resolveConfig("library/main.ts") +if (!resolvedConfig) { + throw new Error("Could not find prettier config") +} + +await writeFile( + "library/main.ts", + prettier.format(exportLines.join(";"), { + ...resolvedConfig, + parser: "typescript", + }), +) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3897860..e915203 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -44,6 +44,7 @@ importers: '@reacord/helpers': workspace:* '@types/lodash-es': ^4.17.6 '@types/node': '*' + '@types/prettier': ^2.6.4 '@types/react': '*' '@types/react-reconciler': '*' discord-api-types: ^0.36.3 @@ -57,6 +58,7 @@ importers: react-reconciler: ^0.29.0 release-it: ^15.2.0 rxjs: ^7.5.6 + ts-morph: ^15.1.0 tsup: ^6.2.1 tsx: ^3.8.0 type-fest: ^2.18.0 @@ -71,6 +73,7 @@ importers: devDependencies: '@reacord/helpers': link:../helpers '@types/lodash-es': 4.17.6 + '@types/prettier': 2.6.4 discord.js: 14.1.2 dotenv: 16.0.1 lodash-es: 4.17.21 @@ -79,6 +82,7 @@ importers: pretty-ms: 8.0.0 react: 18.2.0 release-it: 15.2.0 + ts-morph: 15.1.0 tsup: 6.2.1_typescript@4.7.4 tsx: 3.8.0 type-fest: 2.18.0 @@ -1670,7 +1674,7 @@ packages: /@esbuild-kit/core-utils/2.1.0: resolution: {integrity: sha512-fZirrc2KjeTumVjE4bpleWOk2gD83b7WuGeQqOceKFQL+heNKKkNB5G5pekOUTLzfSBc0hP7hCSBoD9TuR0hLw==} dependencies: - esbuild: 0.14.51 + esbuild: 0.14.53 source-map-support: 0.5.21 dev: true @@ -1691,6 +1695,15 @@ packages: rollup-plugin-node-polyfills: 0.2.1 dev: true + /@esbuild/linux-loong64/0.14.53: + resolution: {integrity: sha512-W2dAL6Bnyn4xa/QRSU3ilIK4EzD5wgYXKXJiS1HDF5vU3675qc2bvFyLwbUcdmssDveyndy7FbitrCoiV/eMLg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@eslint/eslintrc/1.3.0: resolution: {integrity: sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -2329,6 +2342,15 @@ packages: engines: {node: '>= 6'} dev: true + /@ts-morph/common/0.16.0: + resolution: {integrity: sha512-SgJpzkTgZKLKqQniCjLaE3c2L2sdL7UShvmTmPBejAKd2OKV/yfMpQ2IWpAuA+VY5wy7PkSUaEObIqEK6afFuw==} + dependencies: + fast-glob: 3.2.11 + minimatch: 5.1.0 + mkdirp: 1.0.4 + path-browserify: 1.0.1 + dev: true + /@types/acorn/4.0.6: resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} dependencies: @@ -2493,6 +2515,10 @@ packages: resolution: {integrity: sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==} dev: true + /@types/prettier/2.6.4: + resolution: {integrity: sha512-fOwvpvQYStpb/zHMx0Cauwywu9yLDmzWiiQBC7gJyq5tYLUXFZvDG7VK1B7WBxxjBJNKFOZ0zLoOQn8vmATbhw==} + dev: true + /@types/prismjs/1.26.0: resolution: {integrity: sha512-ZTaqn/qSqUuAq1YwvOFQfVW1AR/oQJlLSZVustdjwI+GZ8kr0MSHBj0tsXPW1EqHubx50gtBEjbPGsdZwQwCjQ==} dev: true @@ -3369,13 +3395,13 @@ packages: engines: {node: '>=6'} dev: true - /bundle-require/3.0.4_esbuild@0.14.51: + /bundle-require/3.0.4_esbuild@0.14.53: resolution: {integrity: sha512-VXG6epB1yrLAvWVQpl92qF347/UXmncQj7J3U8kZEbdVZ1ZkQyr4hYeL/9RvcE8vVVdp53dY78Fd/3pqfRqI1A==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} peerDependencies: esbuild: '>=0.13' dependencies: - esbuild: 0.14.51 + esbuild: 0.14.53 load-tsconfig: 0.2.3 dev: true @@ -3739,6 +3765,10 @@ packages: engines: {node: '>=6'} dev: false + /code-block-writer/11.0.3: + resolution: {integrity: sha512-NiujjUFB4SwScJq2bwbYUtXbZhBSlY6vYzm++3Q6oC+U+injTqfPYFK8wS9COOmb2lueqp0ZRB4nK1VYeHgNyw==} + dev: true + /collection-visit/1.0.0: resolution: {integrity: sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==} engines: {node: '>=0.10.0'} @@ -4516,8 +4546,8 @@ packages: dev: true optional: true - /esbuild-android-64/0.14.51: - resolution: {integrity: sha512-6FOuKTHnC86dtrKDmdSj2CkcKF8PnqkaIXqvgydqfJmqBazCPdw+relrMlhGjkvVdiiGV70rpdnyFmA65ekBCQ==} + /esbuild-android-64/0.14.53: + resolution: {integrity: sha512-fIL93sOTnEU+NrTAVMIKiAw0YH22HWCAgg4N4Z6zov2t0kY9RAJ50zY9ZMCQ+RT6bnOfDt8gCTnt/RaSNA2yRA==} engines: {node: '>=12'} cpu: [x64] os: [android] @@ -4534,8 +4564,8 @@ packages: dev: true optional: true - /esbuild-android-arm64/0.14.51: - resolution: {integrity: sha512-vBtp//5VVkZWmYYvHsqBRCMMi1MzKuMIn5XDScmnykMTu9+TD9v0NMEDqQxvtFToeYmojdo5UCV2vzMQWJcJ4A==} + /esbuild-android-arm64/0.14.53: + resolution: {integrity: sha512-PC7KaF1v0h/nWpvlU1UMN7dzB54cBH8qSsm7S9mkwFA1BXpaEOufCg8hdoEI1jep0KeO/rjZVWrsH8+q28T77A==} engines: {node: '>=12'} cpu: [arm64] os: [android] @@ -4552,8 +4582,8 @@ packages: dev: true optional: true - /esbuild-darwin-64/0.14.51: - resolution: {integrity: sha512-YFmXPIOvuagDcwCejMRtCDjgPfnDu+bNeh5FU2Ryi68ADDVlWEpbtpAbrtf/lvFTWPexbgyKgzppNgsmLPr8PA==} + /esbuild-darwin-64/0.14.53: + resolution: {integrity: sha512-gE7P5wlnkX4d4PKvLBUgmhZXvL7lzGRLri17/+CmmCzfncIgq8lOBvxGMiQ4xazplhxq+72TEohyFMZLFxuWvg==} engines: {node: '>=12'} cpu: [x64] os: [darwin] @@ -4570,8 +4600,8 @@ packages: dev: true optional: true - /esbuild-darwin-arm64/0.14.51: - resolution: {integrity: sha512-juYD0QnSKwAMfzwKdIF6YbueXzS6N7y4GXPDeDkApz/1RzlT42mvX9jgNmyOlWKN7YzQAYbcUEJmZJYQGdf2ow==} + /esbuild-darwin-arm64/0.14.53: + resolution: {integrity: sha512-otJwDU3hnI15Q98PX4MJbknSZ/WSR1I45il7gcxcECXzfN4Mrpft5hBDHXNRnCh+5858uPXBXA1Vaz2jVWLaIA==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] @@ -4588,8 +4618,8 @@ packages: dev: true optional: true - /esbuild-freebsd-64/0.14.51: - resolution: {integrity: sha512-cLEI/aXjb6vo5O2Y8rvVSQ7smgLldwYY5xMxqh/dQGfWO+R1NJOFsiax3IS4Ng300SVp7Gz3czxT6d6qf2cw0g==} + /esbuild-freebsd-64/0.14.53: + resolution: {integrity: sha512-WkdJa8iyrGHyKiPF4lk0MiOF87Q2SkE+i+8D4Cazq3/iqmGPJ6u49je300MFi5I2eUsQCkaOWhpCVQMTKGww2w==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] @@ -4606,8 +4636,8 @@ packages: dev: true optional: true - /esbuild-freebsd-arm64/0.14.51: - resolution: {integrity: sha512-TcWVw/rCL2F+jUgRkgLa3qltd5gzKjIMGhkVybkjk6PJadYInPtgtUBp1/hG+mxyigaT7ib+od1Xb84b+L+1Mg==} + /esbuild-freebsd-arm64/0.14.53: + resolution: {integrity: sha512-9T7WwCuV30NAx0SyQpw8edbKvbKELnnm1FHg7gbSYaatH+c8WJW10g/OdM7JYnv7qkimw2ZTtSA+NokOLd2ydQ==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] @@ -4624,8 +4654,8 @@ packages: dev: true optional: true - /esbuild-linux-32/0.14.51: - resolution: {integrity: sha512-RFqpyC5ChyWrjx8Xj2K0EC1aN0A37H6OJfmUXIASEqJoHcntuV3j2Efr9RNmUhMfNE6yEj2VpYuDteZLGDMr0w==} + /esbuild-linux-32/0.14.53: + resolution: {integrity: sha512-VGanLBg5en2LfGDgLEUxQko2lqsOS7MTEWUi8x91YmsHNyzJVT/WApbFFx3MQGhkf+XdimVhpyo5/G0PBY91zg==} engines: {node: '>=12'} cpu: [ia32] os: [linux] @@ -4642,8 +4672,8 @@ packages: dev: true optional: true - /esbuild-linux-64/0.14.51: - resolution: {integrity: sha512-dxjhrqo5i7Rq6DXwz5v+MEHVs9VNFItJmHBe1CxROWNf4miOGoQhqSG8StStbDkQ1Mtobg6ng+4fwByOhoQoeA==} + /esbuild-linux-64/0.14.53: + resolution: {integrity: sha512-pP/FA55j/fzAV7N9DF31meAyjOH6Bjuo3aSKPh26+RW85ZEtbJv9nhoxmGTd9FOqjx59Tc1ZbrJabuiXlMwuZQ==} engines: {node: '>=12'} cpu: [x64] os: [linux] @@ -4660,8 +4690,8 @@ packages: dev: true optional: true - /esbuild-linux-arm/0.14.51: - resolution: {integrity: sha512-LsJynDxYF6Neg7ZC7748yweCDD+N8ByCv22/7IAZglIEniEkqdF4HCaa49JNDLw1UQGlYuhOB8ZT/MmcSWzcWg==} + /esbuild-linux-arm/0.14.53: + resolution: {integrity: sha512-/u81NGAVZMopbmzd21Nu/wvnKQK3pT4CrvQ8BTje1STXcQAGnfyKgQlj3m0j2BzYbvQxSy+TMck4TNV2onvoPA==} engines: {node: '>=12'} cpu: [arm] os: [linux] @@ -4678,8 +4708,8 @@ packages: dev: true optional: true - /esbuild-linux-arm64/0.14.51: - resolution: {integrity: sha512-D9rFxGutoqQX3xJPxqd6o+kvYKeIbM0ifW2y0bgKk5HPgQQOo2k9/2Vpto3ybGYaFPCE5qTGtqQta9PoP6ZEzw==} + /esbuild-linux-arm64/0.14.53: + resolution: {integrity: sha512-GDmWITT+PMsjCA6/lByYk7NyFssW4Q6in32iPkpjZ/ytSyH+xeEx8q7HG3AhWH6heemEYEWpTll/eui3jwlSnw==} engines: {node: '>=12'} cpu: [arm64] os: [linux] @@ -4696,8 +4726,8 @@ packages: dev: true optional: true - /esbuild-linux-mips64le/0.14.51: - resolution: {integrity: sha512-vS54wQjy4IinLSlb5EIlLoln8buh1yDgliP4CuEHumrPk4PvvP4kTRIG4SzMXm6t19N0rIfT4bNdAxzJLg2k6A==} + /esbuild-linux-mips64le/0.14.53: + resolution: {integrity: sha512-d6/XHIQW714gSSp6tOOX2UscedVobELvQlPMkInhx1NPz4ThZI9uNLQ4qQJHGBGKGfu+rtJsxM4NVHLhnNRdWQ==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] @@ -4714,8 +4744,8 @@ packages: dev: true optional: true - /esbuild-linux-ppc64le/0.14.51: - resolution: {integrity: sha512-xcdd62Y3VfGoyphNP/aIV9LP+RzFw5M5Z7ja+zdpQHHvokJM7d0rlDRMN+iSSwvUymQkqZO+G/xjb4/75du8BQ==} + /esbuild-linux-ppc64le/0.14.53: + resolution: {integrity: sha512-ndnJmniKPCB52m+r6BtHHLAOXw+xBCWIxNnedbIpuREOcbSU/AlyM/2dA3BmUQhsHdb4w3amD5U2s91TJ3MzzA==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] @@ -4732,8 +4762,8 @@ packages: dev: true optional: true - /esbuild-linux-riscv64/0.14.51: - resolution: {integrity: sha512-syXHGak9wkAnFz0gMmRBoy44JV0rp4kVCEA36P5MCeZcxFq8+fllBC2t6sKI23w3qd8Vwo9pTADCgjTSf3L3rA==} + /esbuild-linux-riscv64/0.14.53: + resolution: {integrity: sha512-yG2sVH+QSix6ct4lIzJj329iJF3MhloLE6/vKMQAAd26UVPVkhMFqFopY+9kCgYsdeWvXdPgmyOuKa48Y7+/EQ==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] @@ -4750,8 +4780,8 @@ packages: dev: true optional: true - /esbuild-linux-s390x/0.14.51: - resolution: {integrity: sha512-kFAJY3dv+Wq8o28K/C7xkZk/X34rgTwhknSsElIqoEo8armCOjMJ6NsMxm48KaWY2h2RUYGtQmr+RGuUPKBhyw==} + /esbuild-linux-s390x/0.14.53: + resolution: {integrity: sha512-OCJlgdkB+XPYndHmw6uZT7jcYgzmx9K+28PVdOa/eLjdoYkeAFvH5hTwX4AXGLZLH09tpl4bVsEtvuyUldaNCg==} engines: {node: '>=12'} cpu: [s390x] os: [linux] @@ -4768,8 +4798,8 @@ packages: dev: true optional: true - /esbuild-netbsd-64/0.14.51: - resolution: {integrity: sha512-ZZBI7qrR1FevdPBVHz/1GSk1x5GDL/iy42Zy8+neEm/HA7ma+hH/bwPEjeHXKWUDvM36CZpSL/fn1/y9/Hb+1A==} + /esbuild-netbsd-64/0.14.53: + resolution: {integrity: sha512-gp2SB+Efc7MhMdWV2+pmIs/Ja/Mi5rjw+wlDmmbIn68VGXBleNgiEZG+eV2SRS0kJEUyHNedDtwRIMzaohWedQ==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] @@ -4786,8 +4816,8 @@ packages: dev: true optional: true - /esbuild-openbsd-64/0.14.51: - resolution: {integrity: sha512-7R1/p39M+LSVQVgDVlcY1KKm6kFKjERSX1lipMG51NPcspJD1tmiZSmmBXoY5jhHIu6JL1QkFDTx94gMYK6vfA==} + /esbuild-openbsd-64/0.14.53: + resolution: {integrity: sha512-eKQ30ZWe+WTZmteDYg8S+YjHV5s4iTxeSGhJKJajFfQx9TLZJvsJX0/paqwP51GicOUruFpSUAs2NCc0a4ivQQ==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] @@ -4804,8 +4834,8 @@ packages: dev: true optional: true - /esbuild-sunos-64/0.14.51: - resolution: {integrity: sha512-HoHaCswHxLEYN8eBTtyO0bFEWvA3Kdb++hSQ/lLG7TyKF69TeSG0RNoBRAs45x/oCeWaTDntEZlYwAfQlhEtJA==} + /esbuild-sunos-64/0.14.53: + resolution: {integrity: sha512-OWLpS7a2FrIRukQqcgQqR1XKn0jSJoOdT+RlhAxUoEQM/IpytS3FXzCJM6xjUYtpO5GMY0EdZJp+ur2pYdm39g==} engines: {node: '>=12'} cpu: [x64] os: [sunos] @@ -4822,8 +4852,8 @@ packages: dev: true optional: true - /esbuild-windows-32/0.14.51: - resolution: {integrity: sha512-4rtwSAM35A07CBt1/X8RWieDj3ZUHQqUOaEo5ZBs69rt5WAFjP4aqCIobdqOy4FdhYw1yF8Z0xFBTyc9lgPtEg==} + /esbuild-windows-32/0.14.53: + resolution: {integrity: sha512-m14XyWQP5rwGW0tbEfp95U6A0wY0DYPInWBB7D69FAXUpBpBObRoGTKRv36lf2RWOdE4YO3TNvj37zhXjVL5xg==} engines: {node: '>=12'} cpu: [ia32] os: [win32] @@ -4840,8 +4870,8 @@ packages: dev: true optional: true - /esbuild-windows-64/0.14.51: - resolution: {integrity: sha512-HoN/5HGRXJpWODprGCgKbdMvrC3A2gqvzewu2eECRw2sYxOUoh2TV1tS+G7bHNapPGI79woQJGV6pFH7GH7qnA==} + /esbuild-windows-64/0.14.53: + resolution: {integrity: sha512-s9skQFF0I7zqnQ2K8S1xdLSfZFsPLuOGmSx57h2btSEswv0N0YodYvqLcJMrNMXh6EynOmWD7rz+0rWWbFpIHQ==} engines: {node: '>=12'} cpu: [x64] os: [win32] @@ -4858,8 +4888,8 @@ packages: dev: true optional: true - /esbuild-windows-arm64/0.14.51: - resolution: {integrity: sha512-JQDqPjuOH7o+BsKMSddMfmVJXrnYZxXDHsoLHc0xgmAZkOOCflRmC43q31pk79F9xuyWY45jDBPolb5ZgGOf9g==} + /esbuild-windows-arm64/0.14.53: + resolution: {integrity: sha512-E+5Gvb+ZWts+00T9II6wp2L3KG2r3iGxByqd/a1RmLmYWVsSVUjkvIxZuJ3hYTIbhLkH5PRwpldGTKYqVz0nzQ==} engines: {node: '>=12'} cpu: [arm64] os: [win32] @@ -4895,32 +4925,33 @@ packages: esbuild-windows-arm64: 0.14.50 dev: true - /esbuild/0.14.51: - resolution: {integrity: sha512-+CvnDitD7Q5sT7F+FM65sWkF8wJRf+j9fPcprxYV4j+ohmzVj2W7caUqH2s5kCaCJAfcAICjSlKhDCcvDpU7nw==} + /esbuild/0.14.53: + resolution: {integrity: sha512-ohO33pUBQ64q6mmheX1mZ8mIXj8ivQY/L4oVuAshr+aJI+zLl+amrp3EodrUNDNYVrKJXGPfIHFGhO8slGRjuw==} engines: {node: '>=12'} hasBin: true requiresBuild: true optionalDependencies: - esbuild-android-64: 0.14.51 - esbuild-android-arm64: 0.14.51 - esbuild-darwin-64: 0.14.51 - esbuild-darwin-arm64: 0.14.51 - esbuild-freebsd-64: 0.14.51 - esbuild-freebsd-arm64: 0.14.51 - esbuild-linux-32: 0.14.51 - esbuild-linux-64: 0.14.51 - esbuild-linux-arm: 0.14.51 - esbuild-linux-arm64: 0.14.51 - esbuild-linux-mips64le: 0.14.51 - esbuild-linux-ppc64le: 0.14.51 - esbuild-linux-riscv64: 0.14.51 - esbuild-linux-s390x: 0.14.51 - esbuild-netbsd-64: 0.14.51 - esbuild-openbsd-64: 0.14.51 - esbuild-sunos-64: 0.14.51 - esbuild-windows-32: 0.14.51 - esbuild-windows-64: 0.14.51 - esbuild-windows-arm64: 0.14.51 + '@esbuild/linux-loong64': 0.14.53 + esbuild-android-64: 0.14.53 + esbuild-android-arm64: 0.14.53 + esbuild-darwin-64: 0.14.53 + esbuild-darwin-arm64: 0.14.53 + esbuild-freebsd-64: 0.14.53 + esbuild-freebsd-arm64: 0.14.53 + esbuild-linux-32: 0.14.53 + esbuild-linux-64: 0.14.53 + esbuild-linux-arm: 0.14.53 + esbuild-linux-arm64: 0.14.53 + esbuild-linux-mips64le: 0.14.53 + esbuild-linux-ppc64le: 0.14.53 + esbuild-linux-riscv64: 0.14.53 + esbuild-linux-s390x: 0.14.53 + esbuild-netbsd-64: 0.14.53 + esbuild-openbsd-64: 0.14.53 + esbuild-sunos-64: 0.14.53 + esbuild-windows-32: 0.14.53 + esbuild-windows-64: 0.14.53 + esbuild-windows-arm64: 0.14.53 dev: true /escalade/3.1.1: @@ -8576,6 +8607,10 @@ packages: engines: {node: '>=0.10.0'} dev: true + /path-browserify/1.0.1: + resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} + dev: true + /path-exists/3.0.0: resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} engines: {node: '>=4'} @@ -10487,6 +10522,13 @@ packages: resolution: {integrity: sha512-hvE+ZYXuINrx6Ei6D6hz+PTim0Uf++dYbK9FFifLNwQj+RwKquhQpn868yZsCtJYiclZF1u8l6WZxxKi+vv7Rg==} dev: true + /ts-morph/15.1.0: + resolution: {integrity: sha512-RBsGE2sDzUXFTnv8Ba22QfeuKbgvAGJFuTN7HfmIRUkgT/NaVLfDM/8OFm2NlFkGlWEXdpW5OaFIp1jvqdDuOg==} + dependencies: + '@ts-morph/common': 0.16.0 + code-block-writer: 11.0.3 + dev: true + /tsconfig-paths/4.0.0: resolution: {integrity: sha512-SLBg2GBKlR6bVtMgJJlud/o3waplKtL7skmLkExomIiaAtLGtVsoXIqP3SYdjbcH9lq/KVv7pMZeCBpLYOit6Q==} dependencies: @@ -10517,11 +10559,11 @@ packages: typescript: optional: true dependencies: - bundle-require: 3.0.4_esbuild@0.14.51 + bundle-require: 3.0.4_esbuild@0.14.53 cac: 6.7.12 chokidar: 3.5.3 debug: 4.3.4 - esbuild: 0.14.51 + esbuild: 0.14.53 execa: 5.1.1 globby: 11.1.0 joycon: 3.1.1