diff --git a/.gitignore b/.gitignore index 10ad49dd7..2de02487b 100644 --- a/.gitignore +++ b/.gitignore @@ -161,3 +161,15 @@ cython_debug/ .DS_Store .envrc + +js/.turbo +js/.eslintcache +js/.env +js/yarn-error.log + +js/.yarn/* +!js/.yarn/patches +!js/.yarn/plugins +!js/.yarn/releases +!js/.yarn/sdks +!js/.yarn/versions \ No newline at end of file diff --git a/js/.gitignore b/js/.gitignore index 00b46bafb..74fa3dd79 100644 --- a/js/.gitignore +++ b/js/.gitignore @@ -1,62 +1,27 @@ -.vscode -node_modules/ -dist/ -dist-cjs/ -lib/ -.turbo -.eslintcache -.env -yarn-error.log - -.yarn/* -!.yarn/patches -!.yarn/plugins -!.yarn/releases -!.yarn/sdks -!.yarn/versions - -langchain/docs/ - -.idea/ - -.DS_Store - -Chinook.db -Chinook_Sqlite.sql - -.envrc -*.swp -*.swo - -.node-version - -## GENERATED create-entrypoints.js -/client.cjs -/client.js -/client.d.ts -/client.d.cts -/run_trees.cjs -/run_trees.js -/run_trees.d.ts -/run_trees.d.cts -/traceable.cjs -/traceable.js -/traceable.d.ts -/traceable.d.cts -/evaluation.cjs -/evaluation.js -/evaluation.d.ts -/evaluation.d.cts -/schemas.cjs -/schemas.js -/schemas.d.ts -/schemas.d.cts -/wrappers.cjs -/wrappers.js -/wrappers.d.ts -/wrappers.d.cts -/index.cjs -/index.js -/index.d.ts -/index.d.cts -## END GENERATED create-entrypoints.js \ No newline at end of file +client.cjs +client.js +client.d.ts +client.d.cts +run_trees.cjs +run_trees.js +run_trees.d.ts +run_trees.d.cts +traceable.cjs +traceable.js +traceable.d.ts +traceable.d.cts +evaluation.cjs +evaluation.js +evaluation.d.ts +evaluation.d.cts +schemas.cjs +schemas.js +schemas.d.ts +schemas.d.cts +wrappers.cjs +wrappers.js +wrappers.d.ts +wrappers.d.cts +node_modules +dist +.yarn diff --git a/js/langchain.config.js b/js/langchain.config.js new file mode 100644 index 000000000..94be490a7 --- /dev/null +++ b/js/langchain.config.js @@ -0,0 +1,26 @@ +import { resolve, dirname } from "node:path"; +import { fileURLToPath } from "node:url"; + +/** + * @param {string} relativePath + * @returns {string} + */ +function abs(relativePath) { + return resolve(dirname(fileURLToPath(import.meta.url)), relativePath); +} + +export const config = { + internals: [/node\:/], + entrypoints: { + client: "client", + run_trees: "run_trees", + traceable: "traceable", + evaluation: "evaluation/index", + schemas: "schemas", + wrappers: "wrappers", + }, + tsConfigPath: resolve("./tsconfig.json"), + cjsSource: "./dist-cjs", + cjsDestination: "./dist", + abs, +} \ No newline at end of file diff --git a/js/package.json b/js/package.json index 5b98b0ee3..005b8fa44 100644 --- a/js/package.json +++ b/js/package.json @@ -28,23 +28,20 @@ "wrappers.cjs", "wrappers.js", "wrappers.d.ts", - "wrappers.d.cts", - "index.cjs", - "index.js", - "index.d.ts", - "index.d.cts" + "wrappers.d.cts" ], "type": "module", "main": "./dist/index.js", "types": "./dist/index.d.ts", "scripts": { - "build": "yarn clean && yarn build:esm && yarn build:cjs && node scripts/create-entrypoints.js", + "build": "yarn clean && yarn build:esm && yarn build:cjs && yarn create-entrypoints", "bump-version": "node scripts/bump-version.js", "check-version": "node scripts/check-version.js", "check-npm-version": "node scripts/check-npm-version.js", - "clean": "rm -rf dist/ && node scripts/create-entrypoints.js clean", + "create-entrypoints": "yarn lc-build --config ./langchain.config.js --create-entrypoints", + "clean": "rm -rf dist/ && yarn lc-build --config ./langchain.config.js --create-entrypoints --pre", "build:esm": "tsc --outDir dist/ && rm -rf dist/tests dist/**/tests", - "build:cjs": "tsc --outDir dist-cjs/ -p tsconfig.cjs.json && node scripts/move-cjs-to-dist.js && rm -r dist-cjs", + "build:cjs": "tsc --outDir dist-cjs/ -p tsconfig.cjs.json && yarn lc-build --config ./langchain.config.js --move-cjs-dist && rm -r dist-cjs", "test": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --passWithNoTests --testPathIgnorePatterns='\\.int\\.test.[tj]s' --testTimeout 30000", "test:integration": "cross-env NODE_OPTIONS=--experimental-vm-modules jest --testPathPattern=\\.int\\.test.ts --testTimeout 100000", "test:single": "NODE_OPTIONS=--experimental-vm-modules yarn run jest --config jest.config.cjs --testTimeout 100000", @@ -75,6 +72,7 @@ "@jest/globals": "^29.5.0", "@langchain/core": "^0.1.32", "@langchain/langgraph": "^0.0.8", + "@langchain/scripts": "^0.0.11", "@tsconfig/recommended": "^1.0.2", "@types/jest": "^29.5.1", "@typescript-eslint/eslint-plugin": "^5.59.8", @@ -108,15 +106,6 @@ ] }, "exports": { - ".": { - "types": { - "import": "./index.d.ts", - "require": "./index.d.cts", - "default": "./index.d.ts" - }, - "import": "./index.js", - "require": "./index.cjs" - }, "./client": { "types": { "import": "./client.d.ts", diff --git a/js/scripts/create-entrypoints.js b/js/scripts/create-entrypoints.js deleted file mode 100644 index 0d11a8772..000000000 --- a/js/scripts/create-entrypoints.js +++ /dev/null @@ -1,124 +0,0 @@ -import * as fs from "fs"; -import * as path from "path"; - -// This lists all the entrypoints for the library. Each key corresponds to an -// importable path, eg. `import { Foo } from "langsmith/client"`. -// The value is the path to the file in `src/` that exports the entrypoint. -// This is used to generate the `exports` field in package.json. -// Order is not important. -const entrypoints = { - client: "client", - run_trees: "run_trees", - traceable: "traceable", - evaluation: "evaluation/index", - schemas: "schemas", - wrappers: "wrappers", -}; -const updateJsonFile = (relativePath, updateFunction) => { - const contents = fs.readFileSync(relativePath).toString(); - const res = updateFunction(JSON.parse(contents)); - fs.writeFileSync(relativePath, JSON.stringify(res, null, 2) + "\n"); -}; - -const generateFiles = () => { - const files = [...Object.entries(entrypoints), ["index", "index"]].flatMap( - ([key, value]) => { - const nrOfDots = key.split("/").length - 1; - const relativePath = "../".repeat(nrOfDots) || "./"; - const compiledPath = `${relativePath}dist/${value}.js`; - return [ - [ - `${key}.cjs`, - `module.exports = require('${relativePath}dist/${value}.cjs');`, - ], - [`${key}.js`, `export * from '${compiledPath}'`], - [`${key}.d.ts`, `export * from '${compiledPath}'`], - [`${key}.d.cts`, `export * from '${compiledPath}'`], - ]; - } - ); - - return Object.fromEntries(files); -}; - -const updateConfig = () => { - // Update tsconfig.json `typedocOptions.entryPoints` field - updateJsonFile("./tsconfig.json", (json) => ({ - ...json, - typedocOptions: { - ...json.typedocOptions, - entryPoints: [...Object.keys(entrypoints)].map( - (key) => `src/${entrypoints[key]}.ts` - ), - }, - })); - - const generatedFiles = generateFiles(); - const filenames = Object.keys(generatedFiles); - - // Update package.json `exports` and `files` fields - updateJsonFile("./package.json", (json) => ({ - ...json, - exports: Object.assign( - Object.fromEntries( - ["index", ...Object.keys(entrypoints)].map((key) => { - let entryPoint = { - types: { - import: `./${key}.d.ts`, - require: `./${key}.d.cts`, - default: `./${key}.d.ts`, - }, - import: `./${key}.js`, - require: `./${key}.cjs`, - }; - - return [key === "index" ? "." : `./${key}`, entryPoint]; - }) - ), - { - "./package.json": "./package.json", - } - ), - files: ["dist/", ...filenames], - })); - - // Write generated files - Object.entries(generatedFiles).forEach(([filename, content]) => { - fs.mkdirSync(path.dirname(filename), { - recursive: true, - }); - fs.writeFileSync(filename, content); - }); - - const gitignore = fs.readFileSync("./.gitignore").toString(); - const lines = gitignore.split("\n"); - const startMarker = "## GENERATED create-entrypoints.js"; - const endMarker = "## END GENERATED create-entrypoints.js"; - const startIdx = lines.findIndex((line) => line.includes(startMarker)); - const endIdx = lines.findIndex((line) => line.includes(endMarker)); - const newLines = [ - ...lines.slice(0, startIdx + 1), - ...filenames.map((fname) => `/${fname}`), - ...lines.slice(endIdx), - ]; - fs.writeFileSync("./.gitignore", newLines.join("\n")); -}; - -const cleanGenerated = () => { - const filenames = Object.keys(generateFiles()); - filenames.forEach((fname) => { - try { - fs.unlinkSync(fname); - } catch { - // ignore error - } - }); -}; - -const command = process.argv[2]; - -if (command === "clean") { - cleanGenerated(); -} else { - updateConfig(); -} diff --git a/js/scripts/move-cjs-to-dist.js b/js/scripts/move-cjs-to-dist.js deleted file mode 100644 index 1e89ccca8..000000000 --- a/js/scripts/move-cjs-to-dist.js +++ /dev/null @@ -1,38 +0,0 @@ -import { resolve, dirname, parse, format } from "node:path"; -import { readdir, readFile, writeFile } from "node:fs/promises"; -import { fileURLToPath } from "node:url"; - -function abs(relativePath) { - return resolve(dirname(fileURLToPath(import.meta.url)), relativePath); -} - -async function moveAndRename(source, dest) { - for (const file of await readdir(abs(source), { withFileTypes: true })) { - if (file.isDirectory()) { - await moveAndRename(`${source}/${file.name}`, `${dest}/${file.name}`); - } else if (file.isFile()) { - const parsed = parse(file.name); - - // Ignore anything that's not a .js file - if (parsed.ext !== ".js") { - continue; - } - - // Rewrite any require statements to use .cjs - const content = await readFile(abs(`${source}/${file.name}`), "utf8"); - const rewritten = content.replace(/require\("(\..+?).js"\)/g, (_, p1) => { - return `require("${p1}.cjs")`; - }); - - // Rename the file to .cjs - const renamed = format({ name: parsed.name, ext: ".cjs" }); - - await writeFile(abs(`${dest}/${renamed}`), rewritten, "utf8"); - } - } -} - -moveAndRename("../dist-cjs", "../dist").catch((err) => { - console.error(err); - process.exit(1); -}); diff --git a/js/yarn.lock b/js/yarn.lock index dda288025..65d78876f 100644 --- a/js/yarn.lock +++ b/js/yarn.lock @@ -1930,6 +1930,22 @@ __metadata: languageName: node linkType: hard +"@langchain/scripts@npm:^0.0.11": + version: 0.0.11 + resolution: "@langchain/scripts@npm:0.0.11" + dependencies: + axios: ^1.6.7 + commander: ^11.1.0 + glob: ^10.3.10 + rollup: ^4.5.2 + ts-morph: ^21.0.1 + typescript: <5.2.0 + bin: + lc-build: build.js + checksum: 859e957527bd796a02d65b9444a569251c1fcd8f6471f04a6b581ee827fbcf199095254653c7b308018a62ecd32e6f163acd0288c799364fc74fbcdb39a86b1d + languageName: node + linkType: hard + "@nodelib/fs.scandir@npm:2.1.5": version: 2.1.5 resolution: "@nodelib/fs.scandir@npm:2.1.5" @@ -1986,6 +2002,111 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-android-arm-eabi@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.14.2" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@rollup/rollup-android-arm64@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-android-arm64@npm:4.14.2" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-arm64@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-darwin-arm64@npm:4.14.2" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-x64@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-darwin-x64@npm:4.14.2" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-gnueabihf@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.14.2" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-gnu@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.14.2" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-musl@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.14.2" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-powerpc64le-gnu@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.14.2" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-riscv64-gnu@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.14.2" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-s390x-gnu@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.14.2" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-gnu@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.14.2" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-musl@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.14.2" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-win32-arm64-msvc@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.14.2" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-win32-ia32-msvc@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.14.2" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@rollup/rollup-win32-x64-msvc@npm:4.14.2": + version: 4.14.2 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.14.2" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@sinclair/typebox@npm:^0.25.16": version: 0.25.24 resolution: "@sinclair/typebox@npm:0.25.24" @@ -2011,6 +2132,18 @@ __metadata: languageName: node linkType: hard +"@ts-morph/common@npm:~0.22.0": + version: 0.22.0 + resolution: "@ts-morph/common@npm:0.22.0" + dependencies: + fast-glob: ^3.3.2 + minimatch: ^9.0.3 + mkdirp: ^3.0.1 + path-browserify: ^1.0.1 + checksum: e549facfff2a68eeef4e3e2c4183e7216a02b57e62cdfe60ca15d5fdee24770bd3b5b6d1a0388cfce7b4dfaeb0ebe31ffa40585e36b9fb7948aea8081fa73769 + languageName: node + linkType: hard + "@tsconfig/node10@npm:^1.0.7": version: 1.0.9 resolution: "@tsconfig/node10@npm:1.0.9" @@ -2087,6 +2220,13 @@ __metadata: languageName: node linkType: hard +"@types/estree@npm:1.0.5": + version: 1.0.5 + resolution: "@types/estree@npm:1.0.5" + checksum: dd8b5bed28e6213b7acd0fb665a84e693554d850b0df423ac8076cc3ad5823a6bc26b0251d080bdc545af83179ede51dd3f6fa78cad2c46ed1f29624ddf3e41a + languageName: node + linkType: hard + "@types/graceful-fs@npm:^4.1.3": version: 4.1.6 resolution: "@types/graceful-fs@npm:4.1.6" @@ -2580,6 +2720,17 @@ __metadata: languageName: node linkType: hard +"axios@npm:^1.6.7": + version: 1.6.8 + resolution: "axios@npm:1.6.8" + dependencies: + follow-redirects: ^1.15.6 + form-data: ^4.0.0 + proxy-from-env: ^1.1.0 + checksum: bf007fa4b207d102459300698620b3b0873503c6d47bf5a8f6e43c0c64c90035a4f698b55027ca1958f61ab43723df2781c38a99711848d232cad7accbcdfcdd + languageName: node + linkType: hard + "babel-jest@npm:^29.5.0": version: 29.5.0 resolution: "babel-jest@npm:29.5.0" @@ -2926,6 +3077,13 @@ __metadata: languageName: node linkType: hard +"code-block-writer@npm:^12.0.0": + version: 12.0.0 + resolution: "code-block-writer@npm:12.0.0" + checksum: 9f6505a4d668c9131c6f3f686359079439e66d5f50c236614d52fcfa53aeb0bc615b2c6c64ef05b5511e3b0433ccfd9f7756ad40eb3b9298af6a7d791ab1981d + languageName: node + linkType: hard + "collect-v8-coverage@npm:^1.0.0": version: 1.0.1 resolution: "collect-v8-coverage@npm:1.0.1" @@ -2981,6 +3139,13 @@ __metadata: languageName: node linkType: hard +"commander@npm:^11.1.0": + version: 11.1.0 + resolution: "commander@npm:11.1.0" + checksum: fd1a8557c6b5b622c89ecdfde703242ab7db3b628ea5d1755784c79b8e7cb0d74d65b4a262289b533359cd58e1bfc0bf50245dfbcd2954682a6f367c828b79ef + languageName: node + linkType: hard + "concat-map@npm:0.0.1": version: 0.0.1 resolution: "concat-map@npm:0.0.1" @@ -3649,6 +3814,19 @@ __metadata: languageName: node linkType: hard +"fast-glob@npm:^3.3.2": + version: 3.3.2 + resolution: "fast-glob@npm:3.3.2" + dependencies: + "@nodelib/fs.stat": ^2.0.2 + "@nodelib/fs.walk": ^1.2.3 + glob-parent: ^5.1.2 + merge2: ^1.3.0 + micromatch: ^4.0.4 + checksum: 900e4979f4dbc3313840078419245621259f349950411ca2fa445a2f9a1a6d98c3b5e7e0660c5ccd563aa61abe133a21765c6c0dec8e57da1ba71d8000b05ec1 + languageName: node + linkType: hard + "fast-json-stable-stringify@npm:2.x, fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" @@ -3736,6 +3914,16 @@ __metadata: languageName: node linkType: hard +"follow-redirects@npm:^1.15.6": + version: 1.15.6 + resolution: "follow-redirects@npm:1.15.6" + peerDependenciesMeta: + debug: + optional: true + checksum: a62c378dfc8c00f60b9c80cab158ba54e99ba0239a5dd7c81245e5a5b39d10f0c35e249c3379eae719ff0285fff88c365dd446fab19dee771f1d76252df1bbf5 + languageName: node + linkType: hard + "for-each@npm:^0.3.3": version: 0.3.3 resolution: "for-each@npm:0.3.3" @@ -3818,6 +4006,16 @@ __metadata: languageName: node linkType: hard +"fsevents@npm:~2.3.2": + version: 2.3.3 + resolution: "fsevents@npm:2.3.3" + dependencies: + node-gyp: latest + checksum: 11e6ea6fea15e42461fc55b4b0e4a0a3c654faa567f1877dbd353f39156f69def97a69936d1746619d656c4b93de2238bf731f6085a03a50cabf287c9d024317 + conditions: os=darwin + languageName: node + linkType: hard + "fsevents@patch:fsevents@^2.3.2#~builtin": version: 2.3.2 resolution: "fsevents@patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=df0bf1" @@ -3827,6 +4025,15 @@ __metadata: languageName: node linkType: hard +"fsevents@patch:fsevents@~2.3.2#~builtin": + version: 2.3.3 + resolution: "fsevents@patch:fsevents@npm%3A2.3.3#~builtin::version=2.3.3&hash=df0bf1" + dependencies: + node-gyp: latest + conditions: os=darwin + languageName: node + linkType: hard + "function-bind@npm:^1.1.1": version: 1.1.1 resolution: "function-bind@npm:1.1.1" @@ -5071,6 +5278,7 @@ __metadata: "@jest/globals": ^29.5.0 "@langchain/core": ^0.1.32 "@langchain/langgraph": ^0.0.8 + "@langchain/scripts": ^0.0.11 "@tsconfig/recommended": ^1.0.2 "@types/jest": ^29.5.1 "@types/uuid": ^9.0.1 @@ -5296,7 +5504,7 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^9.0.1": +"minimatch@npm:^9.0.1, minimatch@npm:^9.0.3": version: 9.0.4 resolution: "minimatch@npm:9.0.4" dependencies: @@ -5405,6 +5613,15 @@ __metadata: languageName: node linkType: hard +"mkdirp@npm:^3.0.1": + version: 3.0.1 + resolution: "mkdirp@npm:3.0.1" + bin: + mkdirp: dist/cjs/src/bin.js + checksum: 972deb188e8fb55547f1e58d66bd6b4a3623bf0c7137802582602d73e6480c1c2268dcbafbfb1be466e00cc7e56ac514d7fd9334b7cf33e3e2ab547c16f83a8d + languageName: node + linkType: hard + "ml-array-mean@npm:^1.1.6": version: 1.1.6 resolution: "ml-array-mean@npm:1.1.6" @@ -5772,6 +5989,13 @@ __metadata: languageName: node linkType: hard +"path-browserify@npm:^1.0.1": + version: 1.0.1 + resolution: "path-browserify@npm:1.0.1" + checksum: c6d7fa376423fe35b95b2d67990060c3ee304fc815ff0a2dc1c6c3cfaff2bd0d572ee67e18f19d0ea3bbe32e8add2a05021132ac40509416459fffee35200699 + languageName: node + linkType: hard + "path-exists@npm:^4.0.0": version: 4.0.0 resolution: "path-exists@npm:4.0.0" @@ -5910,6 +6134,13 @@ __metadata: languageName: node linkType: hard +"proxy-from-env@npm:^1.1.0": + version: 1.1.0 + resolution: "proxy-from-env@npm:1.1.0" + checksum: ed7fcc2ba0a33404958e34d95d18638249a68c430e30fcb6c478497d72739ba64ce9810a24f53a7d921d0c065e5b78e3822759800698167256b04659366ca4d4 + languageName: node + linkType: hard + "punycode@npm:^2.1.0": version: 2.3.0 resolution: "punycode@npm:2.3.0" @@ -6101,6 +6332,66 @@ __metadata: languageName: node linkType: hard +"rollup@npm:^4.5.2": + version: 4.14.2 + resolution: "rollup@npm:4.14.2" + dependencies: + "@rollup/rollup-android-arm-eabi": 4.14.2 + "@rollup/rollup-android-arm64": 4.14.2 + "@rollup/rollup-darwin-arm64": 4.14.2 + "@rollup/rollup-darwin-x64": 4.14.2 + "@rollup/rollup-linux-arm-gnueabihf": 4.14.2 + "@rollup/rollup-linux-arm64-gnu": 4.14.2 + "@rollup/rollup-linux-arm64-musl": 4.14.2 + "@rollup/rollup-linux-powerpc64le-gnu": 4.14.2 + "@rollup/rollup-linux-riscv64-gnu": 4.14.2 + "@rollup/rollup-linux-s390x-gnu": 4.14.2 + "@rollup/rollup-linux-x64-gnu": 4.14.2 + "@rollup/rollup-linux-x64-musl": 4.14.2 + "@rollup/rollup-win32-arm64-msvc": 4.14.2 + "@rollup/rollup-win32-ia32-msvc": 4.14.2 + "@rollup/rollup-win32-x64-msvc": 4.14.2 + "@types/estree": 1.0.5 + fsevents: ~2.3.2 + dependenciesMeta: + "@rollup/rollup-android-arm-eabi": + optional: true + "@rollup/rollup-android-arm64": + optional: true + "@rollup/rollup-darwin-arm64": + optional: true + "@rollup/rollup-darwin-x64": + optional: true + "@rollup/rollup-linux-arm-gnueabihf": + optional: true + "@rollup/rollup-linux-arm64-gnu": + optional: true + "@rollup/rollup-linux-arm64-musl": + optional: true + "@rollup/rollup-linux-powerpc64le-gnu": + optional: true + "@rollup/rollup-linux-riscv64-gnu": + optional: true + "@rollup/rollup-linux-s390x-gnu": + optional: true + "@rollup/rollup-linux-x64-gnu": + optional: true + "@rollup/rollup-linux-x64-musl": + optional: true + "@rollup/rollup-win32-arm64-msvc": + optional: true + "@rollup/rollup-win32-ia32-msvc": + optional: true + "@rollup/rollup-win32-x64-msvc": + optional: true + fsevents: + optional: true + bin: + rollup: dist/bin/rollup + checksum: ad2c4486e9d76dc8575f13f89cfb16dd4611b5e3527ba80454304fc96b7b9dcf91da98a3318efa7f97320324fdfa15596db2b55cfc39434ebb6e3200c8a75136 + languageName: node + linkType: hard + "run-parallel@npm:^1.1.9": version: 1.2.0 resolution: "run-parallel@npm:1.2.0" @@ -6520,6 +6811,16 @@ __metadata: languageName: node linkType: hard +"ts-morph@npm:^21.0.1": + version: 21.0.1 + resolution: "ts-morph@npm:21.0.1" + dependencies: + "@ts-morph/common": ~0.22.0 + code-block-writer: ^12.0.0 + checksum: f8e6acd4cdb2842af47ccf4e8900dc3f230f20c3b0d28e1e8b58c395b0a16d7b3e03ef56f29da3fdb861c50e22eb52524e0fc4bfca0fde8448f81b8f4f6aa157 + languageName: node + linkType: hard + "ts-node@npm:^10.9.1": version: 10.9.1 resolution: "ts-node@npm:10.9.1" @@ -6629,6 +6930,16 @@ __metadata: languageName: node linkType: hard +"typescript@npm:<5.2.0": + version: 5.1.6 + resolution: "typescript@npm:5.1.6" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: b2f2c35096035fe1f5facd1e38922ccb8558996331405eb00a5111cc948b2e733163cc22fab5db46992aba7dd520fff637f2c1df4996ff0e134e77d3249a7350 + languageName: node + linkType: hard + "typescript@npm:^5.0.4": version: 5.0.4 resolution: "typescript@npm:5.0.4" @@ -6639,6 +6950,16 @@ __metadata: languageName: node linkType: hard +"typescript@patch:typescript@<5.2.0#~builtin": + version: 5.1.6 + resolution: "typescript@patch:typescript@npm%3A5.1.6#~builtin::version=5.1.6&hash=77c9e2" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 21e88b0a0c0226f9cb9fd25b9626fb05b4c0f3fddac521844a13e1f30beb8f14e90bd409a9ac43c812c5946d714d6e0dee12d5d02dfc1c562c5aacfa1f49b606 + languageName: node + linkType: hard + "typescript@patch:typescript@^5.0.4#~builtin": version: 5.0.4 resolution: "typescript@patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=b5f058"