{"_id":"tshy","_rev":"4063290","name":"tshy","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","dist-tags":{"latest":"3.0.2"},"maintainers":[{"name":"isaacs","email":""}],"time":{"modified":"2025-09-24T04:26:30.000Z","created":"2023-09-11T23:52:11.672Z","3.0.2":"2024-07-08T22:48:31.011Z","3.0.1":"2024-07-08T22:45:07.110Z","3.0.0":"2024-07-08T22:30:03.021Z","2.0.1":"2024-07-08T00:12:40.201Z","2.0.0":"2024-07-07T23:59:35.782Z","1.18.0":"2024-07-07T02:59:05.485Z","1.17.0":"2024-07-03T01:23:28.787Z","1.16.2":"2024-06-25T15:53:23.052Z","1.16.1":"2024-06-24T15:03:18.501Z","1.16.0":"2024-06-24T04:08:34.696Z","1.15.1":"2024-06-07T07:03:06.092Z","1.15.0":"2024-06-07T02:36:42.573Z","1.14.1":"2024-06-06T17:33:40.782Z","1.14.0":"2024-04-14T17:40:26.981Z","1.13.1":"2024-04-02T22:12:49.993Z","1.13.0":"2024-03-28T21:17:46.454Z","1.12.0":"2024-03-09T16:54:41.166Z","1.11.1":"2024-02-16T18:15:56.567Z","1.11.0":"2024-01-17T02:05:20.803Z","1.10.0":"2024-01-17T00:26:32.330Z","1.9.0":"2024-01-16T21:41:00.745Z","1.8.2":"2023-12-16T00:18:34.111Z","1.8.1":"2023-11-22T18:05:25.203Z","1.8.0":"2023-11-04T17:50:45.352Z","1.7.0":"2023-10-25T21:21:43.805Z","1.6.0":"2023-10-19T15:50:49.175Z","1.5.0":"2023-10-17T17:24:35.248Z","1.4.0":"2023-10-11T23:21:09.684Z","1.3.0":"2023-10-11T18:16:35.914Z","1.2.2":"2023-09-27T05:44:25.686Z","1.2.1":"2023-09-26T06:04:31.737Z","1.2.0":"2023-09-26T05:58:28.496Z","1.1.1":"2023-09-18T16:08:41.744Z","1.1.0":"2023-09-17T19:20:32.655Z","1.0.0":"2023-09-14T21:14:58.612Z","1.0.0-3":"2023-09-13T15:00:11.353Z","1.0.0-2":"2023-09-13T03:45:20.389Z","1.0.0-1":"2023-09-12T04:41:07.234Z","1.0.0-0":"2023-09-11T23:52:11.672Z"},"users":{},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"versions":{"3.0.2":{"name":"tshy","version":"3.0.2","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^10.0.0","mkdirp":"^3.0.1","polite-json":"^5.0.0","resolve-import":"^2.0.0","rimraf":"^6.0.0","sync-content":"^2.0.1","typescript":"^5.5.3","walk-up-path":"^4.0.0"},"scripts":{"preversion":"npm test","postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"20 || >=22"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.14.10","prettier":"^3.3.2","tap":"^20.0.3","typedoc":"^0.26.3"},"prettier":{"experimentalTernaries":true,"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"module":"./dist/esm/index.js","_id":"tshy@3.0.2","gitHead":"cb3a46789e375554bade4dc6c94a4b0daeb8a610","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.13.1","_npmVersion":"10.7.0","dist":{"shasum":"0359722d7872b52a2ea61ad5ccd6457fb1338e78","size":55106,"noattachment":false,"key":"/tshy/-/tshy-3.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-3.0.2.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_3.0.2_1720478910837_0.5433868722696888"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-07-08T22:48:31.011Z","publish_time":1720478911011,"_source_registry_name":"default","_cnpm_publish_time":1720478911011},"3.0.1":{"name":"tshy","version":"3.0.1","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^10.0.0","mkdirp":"^3.0.1","polite-json":"^5.0.0","resolve-import":"^1.4.6","rimraf":"^6.0.0","sync-content":"^2.0.1","typescript":"^5.5.3","walk-up-path":"^4.0.0"},"scripts":{"preversion":"npm test","postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"20 || >=22"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.14.10","prettier":"^3.3.2","tap":"^20.0.3","typedoc":"^0.26.3"},"prettier":{"experimentalTernaries":true,"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"module":"./dist/esm/index.js","_id":"tshy@3.0.1","gitHead":"029c6a8b275ae26c4f7db997843ff96f1682a49e","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.13.1","_npmVersion":"10.7.0","dist":{"shasum":"ebd00f77a82aae31192999ce9517ba4d03d2611f","size":55112,"noattachment":false,"key":"/tshy/-/tshy-3.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-3.0.1.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_3.0.1_1720478706939_0.8875049280673386"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-07-08T22:45:07.110Z","publish_time":1720478707110,"_source_registry_name":"default","_cnpm_publish_time":1720478707110},"3.0.0":{"name":"tshy","version":"3.0.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^10.0.0","mkdirp":"^3.0.1","polite-json":"^5.0.0","resolve-import":"^1.4.5","rimraf":"^6.0.0","sync-content":"^2.0.0","typescript":"^5.5.3","walk-up-path":"^3.0.1"},"scripts":{"preversion":"npm test","postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"20 || >=22"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.14.10","prettier":"^3.3.2","tap":"^20.0.3","typedoc":"^0.26.3"},"prettier":{"experimentalTernaries":true,"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"module":"./dist/esm/index.js","_id":"tshy@3.0.0","gitHead":"4809eb6f9848146bd1e8422589e0637cd6180cab","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.13.1","_npmVersion":"10.7.0","dist":{"shasum":"867cfe38b7511e01765455848387cb339c60eae7","size":55106,"noattachment":false,"key":"/tshy/-/tshy-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-3.0.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_3.0.0_1720477802811_0.08883935701677825"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-07-08T22:30:03.021Z","publish_time":1720477803021,"_source_registry_name":"default","_cnpm_publish_time":1720477803021},"2.0.1":{"name":"tshy","version":"2.0.1","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^9.0.4","mkdirp":"^3.0.1","polite-json":"^5.0.0","resolve-import":"^1.4.5","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5","walk-up-path":"^3.0.1"},"scripts":{"preversion":"npm test","postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.12.7","prettier":"^3.3.2","tap":"^19.2.1","typedoc":"^0.26.2"},"prettier":{"experimentalTernaries":true,"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"module":"./dist/esm/index.js","_id":"tshy@2.0.1","gitHead":"6db0536c38f5a2d0304fe3ca9eec2bc6d44f22a2","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.13.1","_npmVersion":"10.7.0","dist":{"shasum":"500bcc7cfaa7e6f1ec25cdd6bbbc6c0d084cc1a4","size":55126,"noattachment":false,"key":"/tshy/-/tshy-2.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-2.0.1.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_2.0.1_1720397559970_0.4315383037995313"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-07-08T00:12:40.201Z","publish_time":1720397560201,"_source_registry_name":"default","_cnpm_publish_time":1720397560201},"2.0.0":{"name":"tshy","version":"2.0.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^9.0.4","mkdirp":"^3.0.1","polite-json":"^5.0.0","resolve-import":"^1.4.5","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5","walk-up-path":"^3.0.1"},"scripts":{"preversion":"npm test","postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.12.7","prettier":"^3.3.2","tap":"^19.2.1","typedoc":"^0.26.2"},"prettier":{"experimentalTernaries":true,"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"module":"./dist/esm/index.js","_id":"tshy@2.0.0","gitHead":"ff63bc081da3d79d2cf8af2a29d5497b15c6ecdc","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.13.1","_npmVersion":"10.7.0","dist":{"shasum":"a0bc458c52c14aac563b50cbc5917c54d4aae420","size":55086,"noattachment":false,"key":"/tshy/-/tshy-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-2.0.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_2.0.0_1720396775565_0.08609437453785662"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-07-07T23:59:35.782Z","publish_time":1720396775782,"_source_registry_name":"default","_cnpm_publish_time":1720396775782},"1.18.0":{"name":"tshy","version":"1.18.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^9.0.4","mkdirp":"^3.0.1","polite-json":"^5.0.0","resolve-import":"^1.4.5","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5","walk-up-path":"^3.0.1"},"scripts":{"preversion":"npm test","postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.12.7","prettier":"^3.3.2","tap":"^19.2.1","typedoc":"^0.26.2"},"prettier":{"experimentalTernaries":true,"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.18.0","gitHead":"6b06ef8595560b8567ab2401f7a36a72296d22d4","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.13.1","_npmVersion":"10.7.0","dist":{"shasum":"e0325a01be33b8d98e72b2b133585a18a79eaa8e","size":54902,"noattachment":false,"key":"/tshy/-/tshy-1.18.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.18.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.18.0_1720321145301_0.9844950204015868"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-07-07T02:59:05.485Z","publish_time":1720321145485,"_source_registry_name":"default","_cnpm_publish_time":1720321145485},"1.17.0":{"name":"tshy","version":"1.17.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^9.0.4","mkdirp":"^3.0.1","polite-json":"^5.0.0","resolve-import":"^1.4.5","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5","walk-up-path":"^3.0.1"},"scripts":{"preversion":"npm test","postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.12.7","prettier":"^3.3.2","tap":"^19.2.1","typedoc":"^0.26.2"},"prettier":{"experimentalTernaries":true,"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.17.0","gitHead":"297dd5a018c40809eb87e6a9d13581bce0aaa2d7","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.13.1","_npmVersion":"10.7.0","dist":{"shasum":"e08e200e95480e19b2d58b1ddd0f9de4e25c9f76","size":53972,"noattachment":false,"key":"/tshy/-/tshy-1.17.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.17.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.17.0_1719969808498_0.007213955522533011"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-07-03T01:23:28.787Z","publish_time":1719969808787,"_source_registry_name":"default","_cnpm_publish_time":1719969808787},"1.16.2":{"name":"tshy","version":"1.16.2","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^9.0.4","mkdirp":"^3.0.1","polite-json":"^5.0.0","resolve-import":"^1.4.5","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5","walk-up-path":"^3.0.1"},"scripts":{"preversion":"npm test","postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.12.7","prettier":"^3.3.2","tap":"^19.2.1","typedoc":"^0.26.2"},"prettier":{"experimentalTernaries":true,"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.16.2","gitHead":"26efe047a2659ae9125cef93e2c387168611154f","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.13.1","_npmVersion":"10.7.0","dist":{"shasum":"4c8046ffa865c23af83da45ae2b41bde18003387","size":53692,"noattachment":false,"key":"/tshy/-/tshy-1.16.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.16.2.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.16.2_1719330802838_0.2538261220504454"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-06-25T15:53:23.052Z","publish_time":1719330803052,"_source_registry_name":"default","maintainers":[{"name":"isaacs","email":""}],"_cnpm_publish_time":1719330803052},"1.16.1":{"name":"tshy","version":"1.16.1","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^9.0.4","mkdirp":"^3.0.1","polite-json":"^5.0.0","resolve-import":"^1.4.5","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.12.7","prettier":"^3.3.2","tap":"^19.2.1","typedoc":"^0.26.2"},"prettier":{"experimentalTernaries":true,"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.16.1","gitHead":"d0a1f58afd837ee259527217456ef522aac4ee92","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.13.1","_npmVersion":"10.7.0","dist":{"shasum":"5fa3e7fa00478ca284249a2e6f30adf8a3902198","size":53616,"noattachment":false,"key":"/tshy/-/tshy-1.16.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.16.1.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.16.1_1719241398224_0.6291532771078914"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-06-24T15:03:18.501Z","publish_time":1719241398501,"_source_registry_name":"default","maintainers":[{"name":"isaacs","email":""}],"_cnpm_publish_time":1719241398501},"1.16.0":{"name":"tshy","version":"1.16.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^9.0.4","mkdirp":"^3.0.1","polite-json":"^4.0.1","resolve-import":"^1.4.5","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.12.7","prettier":"^2.8.8","tap":"^19.2.1","typedoc":"^0.26.2"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.16.0","gitHead":"63acc032c5371a236990ac29f8ea6669a51dd950","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.13.1","_npmVersion":"10.7.0","dist":{"shasum":"42289ccc9bc17abb8de48877b165c2a4631e10c5","size":53616,"noattachment":false,"key":"/tshy/-/tshy-1.16.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.16.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.16.0_1719202114532_0.35878867852160945"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-06-24T04:08:34.696Z","publish_time":1719202114696,"_source_registry_name":"default","maintainers":[{"name":"isaacs","email":""}],"_cnpm_publish_time":1719202114696},"1.15.1":{"name":"tshy","version":"1.15.1","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^9.0.4","mkdirp":"^3.0.1","polite-json":"^4.0.1","resolve-import":"^1.4.5","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"^5.4.5","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.12.7","prettier":"^2.8.8","tap":"^19.2.1","typedoc":"^0.25.13"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.15.1","gitHead":"8e25824792936f20c805b7a229b3ef9ec39d0a0b","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.13.1","_npmVersion":"10.7.0","dist":{"shasum":"f2c393aca0cf8db6a70bc780c9623a6eb75f506f","size":53581,"noattachment":false,"key":"/tshy/-/tshy-1.15.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.15.1.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.15.1_1717743785878_0.9793168619580837"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-06-07T07:03:06.092Z","publish_time":1717743786092,"_source_registry_name":"default","_cnpm_publish_time":1717743786092},"1.15.0":{"name":"tshy","version":"1.15.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^9.0.4","mkdirp":"^3.0.1","polite-json":"^4.0.1","resolve-import":"^1.4.5","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"^5.4.5","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.12.7","prettier":"^2.8.8","tap":"^19.2.1","typedoc":"^0.25.13"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.15.0","gitHead":"3fc5534234c02adf93a3b66201f114d91ba288f9","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.13.1","_npmVersion":"10.7.0","dist":{"shasum":"14929286c5a01eb01f373ab230d36a8a6765f390","size":53456,"noattachment":false,"key":"/tshy/-/tshy-1.15.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.15.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.15.0_1717727802301_0.5715735297608562"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-06-07T02:36:42.573Z","publish_time":1717727802573,"_source_registry_name":"default","_cnpm_publish_time":1717727802573},"1.14.1":{"name":"tshy","version":"1.14.1","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^9.0.4","mkdirp":"^3.0.1","polite-json":"^4.0.1","resolve-import":"^1.4.5","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"^5.4.5","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.12.7","prettier":"^2.8.8","tap":"^19.2.1","typedoc":"^0.25.13"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.14.1","gitHead":"93cfa29209334163f0331bfce977daf16e9fb4d2","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.13.1","_npmVersion":"10.7.0","dist":{"shasum":"08b6a920860493caeb3f7b9ebff5a678118ac35f","size":51024,"noattachment":false,"key":"/tshy/-/tshy-1.14.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.14.1.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.14.1_1717695220594_0.7333180407948605"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-06-06T17:33:40.782Z","publish_time":1717695220782,"_source_registry_name":"default","_cnpm_publish_time":1717695220782},"1.14.0":{"name":"tshy","version":"1.14.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.6.0","foreground-child":"^3.1.1","minimatch":"^9.0.4","mkdirp":"^3.0.1","polite-json":"^4.0.1","resolve-import":"^1.4.5","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"^5.4.5","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.12.7","prettier":"^2.8.8","tap":"^18.7.2","typedoc":"^0.25.13"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.14.0","gitHead":"af590bd519af78fddc2b783f6ec3e8eaf1db918c","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.11.0","_npmVersion":"10.5.1","dist":{"shasum":"6d5cdef14d3a9d6a4b05dc722ed16d8a60d0057d","size":50564,"noattachment":false,"key":"/tshy/-/tshy-1.14.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.14.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.14.0_1713116426826_0.3693843933387275"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-04-14T17:40:26.981Z","publish_time":1713116426981,"_source_registry_name":"default","_cnpm_publish_time":1713116426981},"1.13.1":{"name":"tshy","version":"1.13.1","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.5.3","foreground-child":"^3.1.1","mkdirp":"^3.0.1","polite-json":"^4.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2 || 5.3","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.8.6","prettier":"^2.8.8","tap":"^18.5.2","typedoc":"^0.25.7"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.13.1","gitHead":"d4e95157c00721357f02bf68dcc9b2edccbed841","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.11.0","_npmVersion":"10.5.0","dist":{"shasum":"8157f143e54e7f30f7f0122d86d8557b1c68e4a5","size":48849,"noattachment":false,"key":"/tshy/-/tshy-1.13.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.13.1.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.13.1_1712095969749_0.35520977556900224"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-04-02T22:12:49.993Z","publish_time":1712095969993,"_source_registry_name":"default","_cnpm_publish_time":1712095969993},"1.13.0":{"name":"tshy","version":"1.13.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.5.3","foreground-child":"^3.1.1","mkdirp":"^3.0.1","polite-json":"^4.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2 || 5.3","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.8.6","prettier":"^2.8.8","tap":"^18.5.2","typedoc":"^0.25.7"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.13.0","gitHead":"8a15eb8b15951d6fafbfbf2dcbd263ded5e0f978","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.11.0","_npmVersion":"10.5.0","dist":{"shasum":"9509d8cc621b0cab21d66686bcd07d8ff16f5c8e","size":48211,"noattachment":false,"key":"/tshy/-/tshy-1.13.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.13.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.13.0_1711660666201_0.5746923290816"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-03-28T21:17:46.454Z","publish_time":1711660666454,"_source_registry_name":"default","_cnpm_publish_time":1711660666454},"1.12.0":{"name":"tshy","version":"1.12.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.5.3","foreground-child":"^3.1.1","mkdirp":"^3.0.1","polite-json":"^4.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2 || 5.3","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.8.6","prettier":"^2.8.8","tap":"^18.5.2","typedoc":"^0.25.7"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.12.0","gitHead":"8fda22ea853e7b749ef05da9b436c321aa68c604","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.11.0","_npmVersion":"10.5.0","dist":{"shasum":"b88f78990e59bb504a48f454e48cafd51646d787","size":48106,"noattachment":false,"key":"/tshy/-/tshy-1.12.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.12.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.12.0_1710003280999_0.05842006943236422"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-03-09T16:54:41.166Z","publish_time":1710003281166,"_source_registry_name":"default","_cnpm_publish_time":1710003281166},"1.11.1":{"name":"tshy","version":"1.11.1","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.5.3","foreground-child":"^3.1.1","mkdirp":"^3.0.1","polite-json":"^4.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2 || 5.3","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.8.6","prettier":"^2.8.8","tap":"^18.5.2","typedoc":"^0.25.7"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.11.1","gitHead":"f545901437f95997083a5e92024b5f8ab74e130d","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.11.0","_npmVersion":"10.2.4","dist":{"shasum":"f804e2cbb3a249fa84dce157ec5015b974569db1","size":47713,"noattachment":false,"key":"/tshy/-/tshy-1.11.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.11.1.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.11.1_1708107355956_0.8894552242916549"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-02-16T18:15:56.567Z","publish_time":1708107356567,"_source_registry_name":"default","_cnpm_publish_time":1708107356567},"1.11.0":{"name":"tshy","version":"1.11.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.5.3","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2 || 5.3","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.8.6","prettier":"^2.8.8","tap":"^18.5.2","typedoc":"^0.25.7"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.11.0","gitHead":"bfaefec6e66197d7e3a578baa8ea4317ad1ade0b","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"411a0271c878e989f5b0b1005c7df0db1d2ee7d0","size":47336,"noattachment":false,"key":"/tshy/-/tshy-1.11.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.11.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.11.0_1705457120606_0.2897535444365469"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-01-17T02:05:20.803Z","publish_time":1705457120803,"_source_registry_name":"default","_cnpm_publish_time":1705457120803},"1.10.0":{"name":"tshy","version":"1.10.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.5.3","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.8.6","prettier":"^2.8.8","tap":"^18.5.2","typedoc":"^0.25.2"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.10.0","gitHead":"d788449e32f2be4b9f18a4bcaa0d52d6b657c1d8","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"94a9bc2d8ead4e441894491218d6ebe6135177f2","size":47311,"noattachment":false,"key":"/tshy/-/tshy-1.10.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.10.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.10.0_1705451192199_0.7369034509817423"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-01-17T00:26:32.330Z","publish_time":1705451192330,"_source_registry_name":"default","_cnpm_publish_time":1705451192330},"1.9.0":{"name":"tshy","version":"1.9.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.5.3","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.8.6","prettier":"^2.8.8","tap":"^18.5.2","typedoc":"^0.25.2"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.9.0","gitHead":"f06d5badb4b8b4985995e954ed176501d5104f56","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"862394b71402cd1763d33d907eb1b5477b89077f","size":46760,"noattachment":false,"key":"/tshy/-/tshy-1.9.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.9.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.9.0_1705441260540_0.9990349897705364"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2024-01-16T21:41:00.745Z","publish_time":1705441260745,"_source_registry_name":"default","_cnpm_publish_time":1705441260745},"1.8.2":{"name":"tshy","version":"1.8.2","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.5.3","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.8.6","prettier":"^2.8.8","tap":"^18.5.2","typedoc":"^0.25.2"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.8.2","gitHead":"fff7fdb4a328eeced1dd107301a3a4136ef132b9","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"56b2d5effad978ba1623c7eb0b40fe6f50507702","size":45932,"noattachment":false,"key":"/tshy/-/tshy-1.8.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.8.2.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.8.2_1702685913904_0.587756747181488"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-12-16T00:18:34.111Z","publish_time":1702685914111,"_source_registry_name":"default","_cnpm_publish_time":1702685914111},"1.8.1":{"name":"tshy","version":"1.8.1","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.5.3","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.8.6","prettier":"^2.8.8","tap":"^18.5.2","typedoc":"^0.25.2"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.8.1","gitHead":"3266f5de6cf0f3782aff71326a6e836a2747ec64","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"shasum":"aa3a959e3b709cc0809a9cf3c86bf869909dca7f","size":45913,"noattachment":false,"key":"/tshy/-/tshy-1.8.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.8.1.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.8.1_1700676325027_0.15962987980563925"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-11-22T18:05:25.203Z","publish_time":1700676325203,"_source_registry_name":"default","_cnpm_publish_time":1700676325203},"1.8.0":{"name":"tshy","version":"1.8.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.5.3","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.8.6","prettier":"^2.8.8","tap":"^18.5.2","typedoc":"^0.25.2"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.8.0","gitHead":"1492941ca633b760770a1227dd10eb29a5017788","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"shasum":"aea77e3b5777fdf89d32786084b72d33283ecf39","size":45639,"noattachment":false,"key":"/tshy/-/tshy-1.8.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.8.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.8.0_1699120245182_0.7931197273798629"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-11-04T17:50:45.352Z","publish_time":1699120245352,"_source_registry_name":"default","_cnpm_publish_time":1699120245352},"1.7.0":{"name":"tshy","version":"1.7.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.5.3","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.8.6","prettier":"^2.8.8","tap":"^18.5.2","typedoc":"^0.25.2"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.7.0","gitHead":"752424945c738059a83e92e9fefb8478af7d86dc","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"shasum":"c463b2ea87ff65b28d33312e65722ae74ec58306","size":42625,"noattachment":false,"key":"/tshy/-/tshy-1.7.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.7.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.7.0_1698268903644_0.07001887190771883"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-10-25T21:21:43.805Z","publish_time":1698268903805,"_source_registry_name":"default","_cnpm_publish_time":1698268903805},"1.6.0":{"name":"tshy","version":"1.6.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.8.6","prettier":"^2.8.8","tap":"^18.5.2","typedoc":"^0.25.2"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.6.0","gitHead":"2f335e7889dc8da5833411ce45c2a35aaf0bebb1","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"shasum":"be340d8e4b4407843208bf10c0557474196bbb65","size":36226,"noattachment":false,"key":"/tshy/-/tshy-1.6.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.6.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.6.0_1697730648984_0.42430939341743024"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-10-19T15:50:49.175Z","publish_time":1697730649175,"_source_registry_name":"default","_cnpm_publish_time":1697730649175},"1.5.0":{"name":"tshy","version":"1.5.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.8.6","prettier":"^2.8.8","tap":"^18.5.2","typedoc":"^0.25.2"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.5.0","gitHead":"2c913d0cbb2be5e7d6cebd48fc7ee1a9d42e0d32","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"shasum":"5ad45cac5edd40f45861d267e674a3f124a7bdfa","size":37049,"noattachment":false,"key":"/tshy/-/tshy-1.5.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.5.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.5.0_1697563474900_0.49629051337983765"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-10-17T17:24:35.248Z","publish_time":1697563475248,"_source_registry_name":"default","_cnpm_publish_time":1697563475248},"1.4.0":{"name":"tshy","version":"1.4.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.4","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js","typecheck":true},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.6.0","prettier":"^2.8.8","tap":"^18.5.0","typedoc":"^0.25.1"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.4.0","gitHead":"d2e5eb36ac97f8a6727dd10b9a8b561144b7ea43","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"shasum":"cf809ad74c6d55d3622fc8ce19dfb983afafc7eb","size":33648,"noattachment":false,"key":"/tshy/-/tshy-1.4.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.4.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.4.0_1697066469447_0.7737129369452191"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-10-11T23:21:09.684Z","publish_time":1697066469684,"_source_registry_name":"default","_cnpm_publish_time":1697066469684},"1.3.0":{"name":"tshy","version":"1.3.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.1","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.15.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.6.0","prettier":"^2.8.8","tap":"^18.0.3","typedoc":"^0.25.1"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.3.0","gitHead":"57c7449b802494c79d923e0f333aa16a1cffc715","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"shasum":"febef5c0c0ce05fd963a807235389a7eed858f25","size":29788,"noattachment":false,"key":"/tshy/-/tshy-1.3.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.3.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.3.0_1697048195632_0.38945601613637626"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-10-11T18:16:35.914Z","publish_time":1697048195914,"_source_registry_name":"default","_cnpm_publish_time":1697048195914},"1.2.2":{"name":"tshy","version":"1.2.2","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.1","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.16.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.6.0","prettier":"^2.8.8","tap":"^18.0.3","typedoc":"^0.25.1"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.2.2","gitHead":"ad79324687e69443f46fa40f59d6b14ef7ac570f","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"shasum":"d7c45ecb66de47e80ff4b3f5e8678dc8df548f67","size":29530,"noattachment":false,"key":"/tshy/-/tshy-1.2.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.2.2.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.2.2_1695793465377_0.03115374447795527"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-09-27T05:44:25.686Z","publish_time":1695793465686,"_source_registry_name":"default","_cnpm_publish_time":1695793465686},"1.2.1":{"name":"tshy","version":"1.2.1","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.1","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.16.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.6.0","prettier":"^2.8.8","tap":"^18.0.3","typedoc":"^0.25.1"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.2.1","gitHead":"6ddeb550124f8398893e132451b98f9919c7d8c5","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"shasum":"a9fb9172a17012c5d08bcd485c56ddeb45754768","size":29557,"noattachment":false,"key":"/tshy/-/tshy-1.2.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.2.1.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.2.1_1695708271458_0.641224960219626"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-09-26T06:04:31.737Z","publish_time":1695708271737,"_source_registry_name":"default","_cnpm_publish_time":1695708271737},"1.2.0":{"name":"tshy","version":"1.2.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.1","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.16.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.6.0","prettier":"^2.8.8","tap":"^18.0.3","typedoc":"^0.25.1"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.2.0","gitHead":"d46056809617128811e1984e2a469f63048196c6","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"shasum":"fa555e69d5d8c7486e6985e43eb955ea003f6728","size":29485,"noattachment":false,"key":"/tshy/-/tshy-1.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.2.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.2.0_1695707908227_0.48531105110749295"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-09-26T05:58:28.496Z","publish_time":1695707908496,"_source_registry_name":"default","_cnpm_publish_time":1695707908496},"1.1.1":{"name":"tshy","version":"1.1.1","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.1","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2","walk-up-path":"^3.0.1"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.16.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.6.0","prettier":"^2.8.8","tap":"^18.0.3","typedoc":"^0.25.1"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.1.1","gitHead":"6ae32d1239e85f89f89cd351682964b3fcb2c64d","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.6.1","_npmVersion":"9.8.1","dist":{"shasum":"e71cd28aae58650609417943ed64838d6b7ef055","size":27939,"noattachment":false,"key":"/tshy/-/tshy-1.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.1.1.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.1.1_1695053321515_0.5227169750418974"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-09-18T16:08:41.744Z","publish_time":1695053321744,"_source_registry_name":"default","_cnpm_publish_time":1695053321744},"1.1.0":{"name":"tshy","version":"1.1.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","resolve-import":"^1.4.1","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p .tshy/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.16.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.6.0","prettier":"^2.8.8","tap":"^18.0.3","typedoc":"^0.25.1"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.1.0","gitHead":"3fe09cf10cb46c1ed971dddded7baaec47ac7036","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"20.6.1","_npmVersion":"9.8.1","dist":{"shasum":"83f5cd2ad4ce67d3e143e67318978da3448babca","size":26983,"noattachment":false,"key":"/tshy/-/tshy-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.1.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.1.0_1694978432423_0.8849284908164099"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-09-17T19:20:32.655Z","publish_time":1694978432655,"_source_registry_name":"default","_cnpm_publish_time":1694978432655},"1.0.0":{"name":"tshy","version":"1.0.0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p tsconfig/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc","test":"tap","snap":"tap"},"tap":{"coverage-map":"map.js"},"engines":{"node":"16 >=16.17 || 18 >=18.16.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.6.0","prettier":"^2.8.8","tap":"^18.0.0-26","typedoc":"^0.25.1"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.0.0","gitHead":"57a9baa91facde89bb413bd792e507845241014b","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"shasum":"78057fa296a2b683e476faac19069a100111e656","size":21043,"noattachment":false,"key":"/tshy/-/tshy-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.0.0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.0.0_1694726098354_0.2536814009970889"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-09-14T21:14:58.612Z","publish_time":1694726098612,"_source_registry_name":"default","_cnpm_publish_time":1694726098612},"1.0.0-3":{"name":"tshy","version":"1.0.0-3","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p tsconfig/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc"},"engines":{"node":"16 >=16.17 || 18 >=18.16.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.6.0","prettier":"^2.8.8","typedoc":"^0.25.1"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.0.0-3","gitHead":"63066aa37030c41f77434d4dbf375b82a54b80c4","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"shasum":"4a95d8d5dbf5303e061a3fdc8d1af48ff9340e40","size":18709,"noattachment":false,"key":"/tshy/-/tshy-1.0.0-3.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.0.0-3.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.0.0-3_1694617210993_0.2846305085600347"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-09-13T15:00:11.353Z","publish_time":1694617211353,"_source_registry_name":"default","_cnpm_publish_time":1694617211353},"1.0.0-2":{"name":"tshy","version":"1.0.0-2","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p tsconfig/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc"},"engines":{"node":"16 >=16.17 || 18 >=18.16.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.6.0","prettier":"^2.8.8","typedoc":"^0.25.1"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.0.0-2","gitHead":"3146b89123a9fe769dde0cc74a76b2ea6c689efc","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"shasum":"922c7d6a902d94800de70313eeeba27b10be8f2d","size":17412,"noattachment":false,"key":"/tshy/-/tshy-1.0.0-2.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.0.0-2.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.0.0-2_1694576720210_0.9785544528185242"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-09-13T03:45:20.389Z","publish_time":1694576720389,"_source_registry_name":"default","_cnpm_publish_time":1694576720389},"1.0.0-1":{"name":"tshy","version":"1.0.0-1","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p tsconfig/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --ignore-path ./.prettierignore --cache","typedoc":"typedoc"},"engines":{"node":"16 >=16.17 || 18 >=18.16.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.6.0","prettier":"^2.8.8","typedoc":"^0.25.1"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.0.0-1","gitHead":"57a2704a2011204e48499aa20b22ee4e992beca2","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"shasum":"55fd0e2e2945f2bca6a8aa40537a23f9086649bf","size":16182,"noattachment":false,"key":"/tshy/-/tshy-1.0.0-1.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.0.0-1.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.0.0-1_1694493667034_0.22645830213692308"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-09-12T04:41:07.234Z","publish_time":1694493667234,"_source_registry_name":"default","_cnpm_publish_time":1694493667234},"1.0.0-0":{"name":"tshy","version":"1.0.0-0","description":"TypeScript HYbridizer - Hybrid (CommonJS/ESM) TypeScript node package builder","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"BlueOak-1.0.0","type":"module","bin":{"tshy":"dist/esm/index.js"},"dependencies":{"chalk":"^5.3.0","foreground-child":"^3.1.1","mkdirp":"^3.0.1","rimraf":"^5.0.1","sync-content":"^1.0.2","typescript":"5.2"},"scripts":{"postversion":"npm publish","prepublishOnly":"git push origin --follow-tags","prepare":"tsc -p tsconfig/esm.json && bash scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc"},"engines":{"node":"16 >=16.17 || 18 >=18.16.0 || >=20.6.1"},"repository":{"type":"git","url":"git+https://github.com/isaacs/tshy.git"},"keywords":["typescript","tsc","hybrid","esm","commonjs","build"],"devDependencies":{"@types/node":"^20.6.0","typedoc":"^0.25.1"},"prettier":{"semi":false,"printWidth":70,"tabWidth":2,"useTabs":false,"singleQuote":true,"jsxSingleQuote":false,"bracketSameLine":true,"arrowParens":"avoid","endOfLine":"lf"},"tshy":{"dialects":["esm"],"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"}}},"_id":"tshy@1.0.0-0","gitHead":"050d7270a12967ea441bfc38aa123f867fe51f9b","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"homepage":"https://github.com/isaacs/tshy#readme","_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"shasum":"45bc1d75bda7c62cb6904e789a6355fd08dc130b","size":65293,"noattachment":false,"key":"/tshy/-/tshy-1.0.0-0.tgz","tarball":"http://registry.cnpm.dingdandao.com/tshy/download/tshy-1.0.0-0.tgz"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tshy_1.0.0-0_1694476331433_0.4639202748461291"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-09-11T23:52:11.672Z","publish_time":1694476331672,"_source_registry_name":"default","_cnpm_publish_time":1694476331672}},"readme":"# tshy - TypeScript HYbridizer\n\nHybrid (CommonJS/ESM) TypeScript node package builder. Write\nmodules that Just Work in ESM and CommonJS, in easy mode.\n\nThis tool manages the `exports` in your package.json file, and\nbuilds your TypeScript program using `tsc` 5.2+, emitting both ESM\nand CommonJS variants, [providing the full strength of\nTypeScript’s checking for both output\nformats](https://twitter.com/atcb/status/1702069237710479608).\n\n## USAGE\n\nInstall tshy:\n\n```\nnpm i -D tshy\n```\n\nPut this in your package.json to use it with the default configs:\n\n```json\n{\n  \"files\": [\"dist\"],\n  \"scripts\": {\n    \"prepare\": \"tshy\"\n  }\n}\n```\n\nPut your source code in `./src`.\n\nThe built files will end up in `./dist/esm` (ESM) and\n`./dist/commonjs` (CommonJS).\n\nYour `exports` will be edited to reflect the correct module entry\npoints.\n\n## Dual Package Hazards\n\nIf you are exporting both CommonJS and ESM forms of a package,\nthen it is possible for both versions to be loaded at run-time.\nHowever, the CommonJS build is a different module from the ESM\nbuild, and thus a _different thing_ from the point of view of the\nJavaScript interpreter in Node.js.\n\nConsider this contrived example:\n\n```js\n// import the class from ESM\nimport { SomeClass } from 'module-built-by-tshy'\nimport { createRequire } from 'node:module'\nconst require = createRequire(import.meta.url)\n\n// create an object using the commonjs version\nfunction getObject() {\n  const { SomeClass } = require('module-built-by-tshy')\n  return new SomeClass()\n}\n\nconst obj = getObject()\nconsole.log(obj instanceof SomeClass) // false!!\n```\n\nIn a real program, this might happen because one part of the code\nloads the package using `require()` and another loads it using\n`import`.\n\nThe Node.js documentation\n[recommends](https://nodejs.org/api/packages.html#dual-package-hazard)\nexporting an ESM wrapper that re-exports the CommonJS code, or\nisolating state into a single module used by both CommonJS and\nESM. While these strategies do work, they are not what tshy does.\n\n### What Does tshy Do Instead?\n\nIt builds your program twice, into two separate folders, and sets\nup exports. By default, the ESM and CommonJS forms live in\nseparate universes, unaware of one another, and treats the \"Dual\nModule Hazard\" as a simple fact of life.\n\nWhich it is.\n\n### \"Dual Module Hazard\" is a fact of life anyway\n\nSince the advent of npm, circa 2010, module in node have been\npotentially duplicated in the dependency graph. Node's nested\n`node_modules` resolution algorithm, added in Node 0.4, made this\neven easier to leverage, and more likely to occur.\n\nSo: **as a package author, you cannot safely rely on there being\nexactly one copy of your library loaded at run-time.**\n\nThis doesn't mean you shouldn't care about it. It means that you\n_should_ take it into consideration always, whether you are using\na hybrid build or not.\n\nIf you need to ensure that exactly one copy of something exists\nat run-time, whether using a hybrid build or not, you need to\nguard this with a check that is not dependent on the dependency\ngraph, such as a global variable.\n\n```js\nconst ThereCanBeOnlyOne = Symbol.for('there can be only one')\nconst g = globalThis as typeof globalThis & {\n  [ThereCanBeOnlyOne]?: Thing\n}\nimport { Thing } from './thing.js'\ng[ThereCanBeOnlyOne] ??= new Thing\nexport const thing = g[ThereCanBeOnlyOne]\n```\n\nIf you find yourself doing this, it's a good idea to pause and\nconsider if you would be better off with a type check function or\nsomething other than relying on `instanceof`. There are certainly\ncases where it's unavoidable, but it can be tricky to work with.\n\n### Module Local State\n\nThere are some cases where you need something to be the _same\nvalue_ whether loaded with CommonJS or ESM, but not necessarily\nunique to the entire program.\n\nFor example, say that there is some package-local set of data,\nand it needs to be updated and accessible whether the user is\naccessing your package via `import` or `require`.\n\nIn this case, we can use a dialect polyfill that pulls in the\nstate module from a single dialect.\n\nIn Node, it's easy for ESM to load CommonJS, but since ESM cannot\nbe loaded synchronously by CommonJS, I recommend putting the\nstate in the polyfill, and having the \"normal\" module access it\nfrom that location.\n\nFor example:\n\n```js\n// src/index.ts\nimport { state } from './state.js'\nexport const setValue = (key: string, value: any) => {\n  state[key] = value\n}\nexport const getValue = (key: string) => state[key]\n```\n\n```js\n// src/state-cjs.cts\n// this is the actual \"thing\"\nexport const state: Record<string, any> = {}\n```\n\n```js\n// src/state.ts\n// this is what will end up in the esm build\n// need a ts-ignore because this is a hack.\n//@ts-ignore\nimport cjsState from '../commonjs/state.js'\nexport const { state } = cjsState as { state: Record<string, any> }\n```\n\nIf you need a provide an ESM dialect that _doesn't_ support\nCommonJS (eg, deno, browser, etc), then you can do this:\n\n```js\n// src/state-deno.mts\n// can't load the CJS version, so no dual package hazard\nexport const state: Record<string, any> = {}\n```\n\nSee below for more on using dialect specific polyfills.\n\n## Handling Default Exports\n\n`export default` is the bane of hybrid TypeScript modules.\n\nWhen compiled as CommonJS, this results in creating an export\nnamed `default`, which is not the same as setting\n`module.exports`.\n\n```js\n// esm, beautiful and clean\nimport foo from 'foo'\n// commonjs, unnecessarily ugly and confusing\n// even if you like it for some reason, it's not \"the same\"\nconst { default: foo } = require('foo')\n```\n\nYou can tell TypeScript to do a true default export for CommonJS\nby using `export = <whatever>`. However:\n\n- This is not compatible with an ESM build.\n- You cannot export types along with it.\n\nIn general, when publishing TypeScript packages as both CommonJS\nand ESM, it is a good idea to avoid default exports for any\npublic interfaces.\n\n- No need to polyfill anything.\n- Can export types alongside the values.\n\nHowever, if you are publishing something that _does_ need to\nprovide a default export (for example, porting a project to\nhybrid and/or TypeScript, and want to keep the interface\nconsistent), you can do it with a CommonJS polyfill.\n\n```ts\n// index.ts\n// the thing that gets exported for ESM\nimport { thing } from './main.ts'\nimport type { SomeType } from './main.ts'\n\nexport default thing\nexport type { SomeType }\n```\n\n```ts\n// index-cjs.cts\n// the polyfill for CommonJS\nimport * as items from './main.ts'\ndeclare global {\n  namespace mything {\n    export type SomeType = items.SomeType\n  }\n}\nexport = items.thing\n```\n\nThen, CommonJS users will get the appropriate thing when they\n`import 'mything'`, and can access the type via the global\nnamespace like `mything.SomeType`.\n\nBut in almost all cases, it's much simpler to just use named\nexports exclusively.\n\n## Configuration\n\nMostly, this just uses opinionated convention, and so there is\nvery little to configure.\n\nSource must be in `./src`. Builds are in `./dist/commonjs` for\nCommonJS and `./dist/esm` for ESM.\n\nThere is very little configuration for this, but a lot of things\n_can_ be configured.\n\n### `exports`\n\nBy default, if there is a `src/index.ts` file, then that will be\nset as the `\".\"` export, and the `package.json` file will be\nexported as `\"./package.json\"`, because that's just convenient to\nexpose.\n\nYou can set other entry points by putting something like this in\nyour `package.json` file:\n\n```json\n{\n  \"tshy\": {\n    \"exports\": {\n      \"./foo\": \"./src/foo.ts\",\n      \"./bar\": \"./src/bar.ts\",\n      \".\": \"./src/something-other-than-index.ts\",\n      \"./package.json\": \"./package.json\"\n    }\n  }\n}\n```\n\nAny exports pointing to files in `./src` will be updated to their\nappropriate build target locations, like:\n\n```json\n{\n  \"exports\": {\n    \"./foo\": {\n      \"import\": {\n        \"source\": \"./src/foo.ts\",\n        \"types\": \"./dist/esm/foo.d.ts\",\n        \"default\": \"./dist/esm/foo.js\"\n      },\n      \"require\": {\n        \"source\": \"./src/foo.ts\",\n        \"types\": \"./dist/commonjs/foo.d.ts\",\n        \"default\": \"./dist/commonjs/foo.js\"\n      }\n    }\n  }\n}\n```\n\nAny exports that are not within `./src` will not be built, and\ncan be anything supported by package.json `exports`, as they will\njust be passed through as-is.\n\n```json\n{\n  \"tshy\": {\n    \"exports\": {\n      \".\": \"./src/my-built-module.ts\",\n      \"./package.json\": \"./package.json\"\n      \"./thing\": {\n        \"import\": \"./lib/thing.mjs\",\n        \"require\": \"./lib/thing.cjs\",\n        \"types\": \"./lib/thing.d.ts\"\n      },\n      \"./arraystyle\": [\n        { \"import\": \"./no-op.js\" },\n        { \"browser\": \"./browser-thing.js\" },\n        { \"require\": [{ \"types\": \"./using-require.d.ts\" }, \"./using-require.js\"]},\n        { \"types\": \"./blah.d.ts\" },\n        \"./etc.js\"\n      ]\n    }\n  }\n}\n```\n\n### Glob Exports\n\nYou can also specify one or more [glob](http://npm.im/glob)\npatterns to define your exported modules. This is handy if you\nwant to export several things as subpath exports to avoid \"bucket\nmodules\".\n\nAnything named `src/index.*` that is matched in this way will be\nused as the main `\".\"` export. Anything else will have the\n`./src` stripped from the front, and the file extension removed\nfrom the end. `./package.json` will always be exported, and any\npattern matches outside of the `./src` folder will be ignored.\n\n```json\n{\n  \"tshy\": {\n    \"exports\": \"./src/**\"\n  }\n}\n```\n\nIf you use this config, and you have files at `./src/index.ts`\nand `./src/component/foo.tsx`, then the resulting exports will\nbe:\n\n```json\n{\n  \"exports\": {\n    \".\": {\n      \"require\": {\n        \"source\": \"./src/index.ts\",\n        \"types\": \"./dist/commonjs/index.d.ts\",\n        \"default\": \"./dist/commonjs/index.js\"\n      },\n      \"import\": {\n        \"source\": \"./src/index.ts\",\n        \"types\": \"./dist/esm/index.d.ts\",\n        \"default\": \"./dist/esm/index.js\"\n      }\n    },\n    \"./component/foo\": {\n      \"require\": {\n        \"source\": \"./src/component/foo.ts\",\n        \"types\": \"./dist/commonjs/component/foo.d.ts\",\n        \"default\": \"./dist/commonjs/component/foo.js\"\n      },\n      \"import\": {\n        \"source\": \"./src/component/foo.ts\",\n        \"types\": \"./dist/esm/component/foo.d.ts\",\n        \"default\": \"./dist/esm/component/foo.js\"\n      }\n    },\n    \"./package.json\": \"./package.json\"\n  }\n}\n```\n\nYou may also specify an array of glob exports, like so:\n\n```json\n{\n  \"tshy\": {\n    \"exports\": [\"./src/*.ts\", \"./src/utils/*.ts\"]\n  }\n}\n```\n\nThis would export a file at `./src/foo.ts` as `./foo`, and a file\nat `./src/utils/bar.ts` as `./utils/bar`, but would ignore a file\nat `./internal/private.ts`.\n\n### Live Dev\n\nSet `\"liveDev\": true` in the tshy config in `package.json` to\nbuild in link mode. In this mode, the files are hard-linked into\nplace in the `dist` folder, so that edits are immediately visible.\n\nThis is particularly beneficial in monorepo projects, where\nworkspaces may be edited in parallel, and so it's handy to have\nchanges reflected in real time without a rebuild.\n\nOf course, tools that can't handle TypeScript will have a problem\nwith this, so any generic `node` program will not be able to run\nyour code. For this reason:\n\n- `liveDev` is always disabled when the `npm_command` environment\n  variable is `'publish'` or `'pack'`. In these situations, your\n  code is being built for public consumption, and must be\n  compiled.\n- Code in dist will not be able to be loaded in the node repl\n  unless you run it with a loader, such as `node --import=tsx`.\n- Because it links files into place, a rebuild _is_ required when\n  a file is added or removed.\n\n**Note**: If a package uses Node.js `Worker` scripts or bins that\nare written in TS and need to be compiled, then `liveDev` will\nnot work, and should not be used. Additionally, any dependencies\nof those modules also cannot use `liveDev`, unless a loader such\nas `tsx` is used when run.\n\nSee also: \"Loading from Source\", below.\n\n### Package `#imports`\n\nYou can use `\"imports\"` in your package.json, and it will be\nhandled in the following ways.\n\nAny `\"imports\"` that resolve to a file built as part of your\nprogram must be a non-conditional string value pointing to the\nfile in `./src/`. For example:\n\n```json\n{\n  \"imports\": {\n    \"#name\": \"./src/path/to/name.ts\",\n    \"#utils/*\": \"./src/path/to/utils/*.ts\"\n  }\n}\n```\n\nIn the ESM build, `import * from '#name'` will resolve to\n`./dist/esm/path/to/name.js`, and will be built for ESM. In the\nCommonJS build, `require('#name')` will resolve to\n`./dist/commonjs/path/to/name.js` and will be built for CommonJS.\n\n<details>\n<summary>tl;dr how this works and why it can't be conditional</summary>\n\nIn the built `dist/{dialect}/package.json` files, the `./src`\nwill be stripped from the path and their file extension changed\nfrom `ts` to `js` (`cts` to `cjs` and `mts` to `mjs`).\n\nIt shouldn't be conditional, because the condition is already\nimplicit in the build. In the CommonJS build, they should be\nrequired, and in the ESM builds, they should be imported, and\nthere's only one thing that it can resolve to from any given\nbuild.\n\n</details>\n\nIf there are any `\"imports\"` that resolve to something _not_\nbuilt by tshy, then tshy will set `scripts.preinstall` to set up\nsymbolic links at install time to make it work. This just means\nthat you can't use `scripts.preinstall` for anything else if you\nhave `\"imports\"` that aren't managed by tshy. For example:\n\n```json\n{\n  \"imports\": {\n    \"#dep\": \"@scope/dep/submodule\",\n    \"#conditional\": {\n      \"types\": \"./vendor/blah.d.ts\",\n      \"require\": \"./vendor/blah.cjs\",\n      \"import\": \"./vendor/blah.mjs\"\n    }\n  }\n}\n```\n\n<details>\n<summary>tl;dr explanation</summary>\n\nThe `\"imports\"` field in package.json allows you to set local\npackage imports, which have the same kind of conditional import\nlogic as `\"exports\"`. This is especially useful when you have a\nvendored dependency with `require` and `import` variants, modules\nthat have to be bundled in different ways for different\nenvironments, or different dependencies for different\nenvironments.\n\nThese package imports are _always_ resolved against the nearest\n`package.json` file, and tshy uses generated package.json files\nto set the module dialect to `\"type\":\"module\"` in `dist/esm` and\n`\"type\":\"commonjs\"` in `dist/commonjs`, and it swaps the\n`src/package.json` file between this during the `tsc` builds.\n\nFurthermore, local package imports may not be relative files\noutside the package folder. They may only be local files within\nthe local package, or dependencies resolved in `node_modules`.\n\nTo support this, tshy copies the `imports` field from the\nproject's package.json into these dialect-setting generated\npackage.json files, and creates symlinks into the appropriate\nplaces so that they resolve to the same files on disk.\n\nBecause symlinks may not be included in npm packages (and even if\nthey are included, they won't be unpacked at install time), the\nsymlinks it places in `./dist` wouldn't do much good. In order to\nwork around _this_ restriction, tshy creates a node program at\n`dist/.tshy-link-imports.mjs`, which generates the symlinks at\ninstall time via the `preinstall` script.\n\n</details>\n\n_If a `tshy.imports` is present (a previous iteration of this\nbehavior), it will be merged into the top-level `\"imports\"` and\ndeleted from the `tshy` section._\n\n### Making Noise\n\nOn failure, all logs will be printed.\n\nTo print error logs and a `success!` message at the end, set\n`TSHY_VERBOSE=1` in the environment.\n\nTo print debugging and other extra information, set\n`TSHY_VERBOSE=2` in the environment.\n\n### Selecting Dialects\n\nYou can tell tshy which dialect you're building for by setting\nthe `dialects` config to an array of strings:\n\n```json\n{\n  \"tshy\": {\n    \"dialects\": [\"esm\", \"commonjs\"]\n  }\n}\n```\n\nThe default is `[\"esm\", \"commonjs\"]` (ie, both of them). If you\nset it to just one, then only that dialect will be built and\nexported.\n\n### Suppressing the self-link\n\nSee below about **Local Package `exports`** for an explanation of\nwhat this is.\n\nSuppress the symlink to the project folder into a `node_modules`\nfolder in `dist` and `src` by doing this:\n\n```json\n{\n  \"tshy\": {\n    \"selfLink\": false\n  }\n}\n```\n\nIf the `selfLink` config is not explicitly set, and creating the\nsymlink fails (common on Windows systems where `fs.symlink()` may\nrequire elevated permissions), then the error will be ignored.\n\n### Old Style Exports (top-level `main`, `module`, `types`)\n\nVersions of node prior to 12.10.0, published in early to mid\n2016, did not have support for `exports` as a means for defining\npackage entry points. Unfortunately, even 7 years later at the\ntime of this writing, some projects are still using outdated\ntools that are not capable of understanding this interface.\n\nIf there is a `commonjs` export of the `\".\"` subpath, and the\n`tshy.main` field in package.json is not set to `false`, then\ntshy will use that to set the `main` and `types` fields, for\ncompatibility with these tools.\n\nSimilarly, some tools rely on a top-level `module` field, which\nis the ESM equivalent to `\"main\"`. If there is an `esm` export of\nthe `\".\"` subpath, and the `tshy.module` field in package.json is\nnot set to `false`, then tshy will use that to set the `module`\nfield, for compatibility with these tools.\n\n**Warning: relying on top-level main/types will likely cause\nincorrect types to be loaded in some scenarios.**\n\nUse with extreme caution. It's almost always better to _not_\ndefine top-level `main` and `types` fields if you are shipping a\nhybrid module. Users will need to update their `module` and\n`moduleResolution` tsconfigs appropriately. **That is a good\nthing, and will save them future headaches.**\n\nIf the `commonjs` dialect is not built, or if a `\".\"` export is\nnot created, or if the `\".\"` export does not support the\n`commonjs` dialect, and `main` is explicitly set to `true`, then\nthe build will fail.\n\nIf the `esm` dialect is not built, or if a `\".\"` export is not\ncreated, or if the `\".\"` export does not support the `esm`\ndialect, and `module` is explicitly set to `true`, then the build\nwill fail.\n\nFor example, this config:\n\n```json\n{\n  \"tshy\": {\n    \"exports\": {\n      \".\": \"./src/index.ts\"\n    }\n  }\n}\n```\n\nwill produce:\n\n```json\n{\n  \"main\": \"./dist/commonjs/index.js\",\n  \"module\": \"./dist/esm/index.js\",\n  \"types\": \"./dist/commonjs/index.d.ts\",\n  \"type\": \"module\",\n  \"exports\": {\n    \".\": {\n      \"require\": {\n        \"source\": \"./src/index.js\",\n        \"types\": \"./dist/commonjs/index.d.ts\",\n        \"default\": \"./dist/commonjs/index.js\"\n      },\n      \"import\": {\n        \"source\": \"./src/index.ts\",\n        \"types\": \"./dist/esm/index.d.ts\",\n        \"default\": \"./dist/esm/index.js\"\n      }\n    }\n  }\n}\n```\n\n## CommonJS Dialect Polyfills\n\nSometimes you have to do something in different ways depending on\nthe JS dialect in use. For example, maybe you have to use\n`import.meta.url` in ESM, but polyfill with\n`pathToFileURL(__filename)` in CommonJS.\n\nTo do this, create a polyfill file with the CommonJS code in\n`<name>-cjs.cts`. (The `cts` extension matters.)\n\n```js\n// src/source-dir-cjs.cts\n//     ^^^^^^^^^^--------- matching name\n//               ^^^^----- \"-cjs\" tag\n//                   ^^^^- \".cts\" filename suffix\n// this one has a -cjs.cts suffix, so it will override the\n// module at src/source-dir.ts in the CJS build,\n// and be excluded from the esm build.\nimport { pathToFileURL } from 'node:url'\n//@ts-ignore - Have to ignore because TSC thinks this is ESM\nexport const sourceDir = pathToFileURL(__dirname)\n```\n\nThen put the \"real\" ESM code in `<name>.ts` (not `.mts`!)\n\nYou will generally have to `//@ts-ignore` a bunch of stuff to get\nthe CommonJS build to ignore it, so it's best to keep the\npolyfill surface as small as possible.\n\n```js\n// src/source-dir.ts\n// This is the ESM version of the module\n//@ts-ignore\nexport const sourceDir = new URL('.', import.meta.url)\n```\n\nThen in your code, you can just `import { sourceDir } from\n'./source-dir.js'` and it'll work in both builds.\n\n## Excluding from a build using `.cts` and `.mts` files\n\nFiles named `*.mts` will be excluded from the CommonJS build.\n\nFiles named `*.cts` will be excluded from the ESM build.\n\nIf you need to do something one way for CommonJS and another way for\nesm, use the \"Dialect Switching\" trick, with the ESM code living\nin `src/<whatever>.ts` and the CommonJS polyfill living in\n`src/<whatever>-cjs.cts`.\n\n## Excluding Files Entirely From All Builds\n\nIf you want to keep some files from being processed by tshy's\nbuilds entirely, you can add an `exclude` `string[]` field to the\n`tshy` object in `package.json`. For example:\n\n```json\n{\n  \"tshy\": {\n    \"exclude\": [\"src/**/*.test.ts\"]\n  }\n}\n```\n\n## Other Targets: `browser`, `deno`, etc.\n\nIf you have any other dialects that you'd like to support, you\ncan list them as either `commonjsDialects` or `esmDialects`,\ndepending on whether you want them to be built as CommonJS or\nESM.\n\nNote that each added dialect you create will result in another\nbuild in the `./dist` folder, so you may wish to use sparingly if\nshipping a large project.\n\nFor example:\n\n```json\n{\n  \"tshy\": {\n    \"exports\": {\n      \".\": \"./src/index.ts\"\n    },\n    \"esmDialects\": [\"deno\", \"browser\"],\n    \"commonjsDialects\": [\"webpack\"]\n  }\n}\n```\n\nWill result in:\n\n```json\n{\n  \"exports\": {\n    \".\": {\n      \"deno\": {\n        \"source\": \"./src/index.ts\",\n        \"types\": \"./dist/deno/index.d.ts\",\n        \"default\": \"./dist/deno/index.js\"\n      },\n      \"browser\": {\n        \"types\": \"./dist/browser/index.d.ts\",\n        \"default\": \"./src/index.ts\",\n        \"default\": \"./dist/browser/index.js\"\n      },\n      \"webpack\": {\n        \"source\": \"./src/index.ts\",\n        \"types\": \"./dist/webpack/index.d.ts\",\n        \"default\": \"./dist/webpack/index.js\"\n      },\n      \"require\": {\n        \"source\": \"./src/index.ts\",\n        \"types\": \"./dist/commonjs/index.d.ts\",\n        \"default\": \"./dist/commonjs/index.js\"\n      },\n      \"import\": {\n        \"source\": \"./src/index.ts\",\n        \"types\": \"./dist/esm/index.d.ts\",\n        \"default\": \"./dist/esm/index.js\"\n      }\n    }\n  }\n}\n```\n\nIn each of these, you can use the same kind of dialect override\nthat works for CommonJS polyfills described above. For\n`commonjsDialects` types, create a file named\n`<filename>-<dialect>.cts`, and for `esmDialects` types, create a\nfile named `<filename>-<dialect>.mts`.\n\nFor example, to provide deno, browser, and webpack overrides in\nthe setup above, the following files would be relevant:\n\n```\nsrc/index.ts           # normal esm/cjs version\nsrc/index-cjs.cts      # cjs variant for default commonjs\nsrc/index-browser.mts  # esm variant for the browser\nsrc/index-deno.mts     # esm variant for deno\nsrc/index-webpack.cts  # cjs variant for webpack\n```\n\nIf dialect overrides are used, then the `\"source\"` export\ncondition will refer to the original source for the override. For\nexample:\n\n```json\n{\n  \"exports\": {\n    \".\": {\n      \"deno\": {\n        \"source\": \"./src/index-deno.mts\",\n        \"types\": \"./dist/deno/index.d.ts\",\n        \"default\": \"./dist/deno/index.js\"\n      },\n      \"browser\": {\n        \"source\": \"./src/index-browser.mts\",\n        \"types\": \"./dist/browser/index.d.ts\",\n        \"default\": \"./dist/browser/index.js\"\n      },\n      \"webpack\": {\n        \"source\": \"./src/index-webpack.cts\",\n        \"types\": \"./dist/webpack/index.d.ts\",\n        \"default\": \"./dist/webpack/index.js\"\n      },\n      \"require\": {\n        \"source\": \"./src/index-cjs.cts\",\n        \"types\": \"./dist/commonjs/index.d.ts\",\n        \"default\": \"./dist/commonjs/index.js\"\n      },\n      \"import\": {\n        \"source\": \"./src/index.ts\",\n        \"types\": \"./dist/esm/index.d.ts\",\n        \"default\": \"./dist/esm/index.js\"\n      }\n    }\n  }\n}\n```\n\nNote that the `commonjs` override uses the abbreviated `cjs`\nname (historical reasons, it was originally the only override\nsupported), and that the file extension must be `cts` or `mts`\ndepending on the dialect type that it is.\n\n## Atomic Builds\n\nCode is built in `./.tshy-build` and then copied over only if\nthe build succeeds. This makes it work in monorepo cases where\nyou may have packages that depend on one another and are all\nbeing built in parallel (as long as they've been built one time,\nof course).\n\nIf you use `\"incremental\": true` in your tsconfig, then this\nfolder will persist, so that TSC can benefit from the\n`.tsbuildinfo` files it creates in there.\n\n## Exports Management\n\nThe `exports` field in your package.json file will be updated\nbased on the `tshy.exports` configuration, as described above.\n\nIf you don't provide that config, then the default is:\n\n```json\n{\n  \"tshy\": {\n    \"exports\": {\n      \".\": \"./src/index.ts\",\n      \"./package.json\": \"./package.json\"\n    }\n  }\n}\n```\n\n## TSConfigs\n\nPut whatever configuration you want in `tsconfig.json`, with the\nfollowing caveats:\n\n- `include` - will be overridden based on build, best omitted\n- `exclude` - will be overridden based on build, best omitted\n- compilerOptions:\n  - `outDir` - will be overridden based on build, best omitted\n  - `rootDir` - will be set to `./src` in the build, can only\n    cause annoying errors otherwise.\n  - `target` - will be set to `es2022` if not specified\n  - `module` - will be set to `NodeNext`\n  - `moduleResolution` - will be set to `NodeNext`\n\nIf you don't have a `tsconfig.json` file, then one will be\nprovided for you.\n\nThen the `tsconfig.json` file will be used as the default project\nfor code hints in VSCode, neovim, tests, etc.\n\n### Loading from Source\n\nTo facilitate jumping directly to source definitions in some\ntools, you can define custom `\"sourceDialects\"` which will be\nresolved to the original TypeScript source. These custom dialects\ncan then be configured to allow build tools (such as tsc) and\neditors (such as VS Code and neovim/CoC) to jump directly to\nsource definitions.\n\nFor example, in editors such as VS Code and neovim/CoC that use\nthe TypeScript language services, you can give them a `tsconfig`\nthat contains this:\n\n```json\n{\n  \"compilerOptions\": {\n    \"customConditions\": [\"@my-project/source\"]\n  }\n}\n```\n\nAnd then add this to your `package.json` file:\n\n```json\n{\n  \"tshy\": {\n    \"sourceDialects\": [\"@my-project/source\"]\n  }\n}\n```\n\nIf you are loading your program with a custom Node.js importer\nlike [`tsx`](https://npm.im/tsx) that can load TypeScript\ndirectly, you can specify it like this:\n\n```bash\nnode --import=tsx --conditions=@my-project/source ./script.ts\n```\n\nOther TypeScript-aware tools may have other mechanisms for\nspecifying export conditions. Refer to their documentation for\nmore information.\n\nNote that `sourceDialects` are _only_ added to exports whose type\nmatches the top-level `package.json` `type` field. For example,\nif the `package.json` includes `\"type\": \"module\"`, then\n`sourceDialects` export conditions will only be added for the\n`import` condition, not the `require` condition.\n\nSee also: \"Live Dev\", above.\n\n### Custom `project`\n\nConfigure `tshy.project` if you want tshy to extend from a custom\ntsconfig file. This is often useful when you have multiple\n`tsconfig` files for different tools:\n\n- A default `tsconfig.json` for typechecking and type-aware\n  `typescript-eslint`, specifying `\"noEmit\": true` and\n  `\"include\": [\"**/*.ts\"]`\n- A `tsconfig.build.json` for compilation, with `\"noEmit\":\nfalse`. Note that the [caveats](#tsconfigs) above still apply.\n\n```json\n{\n  \"tshy\": {\n    \"project\": \"./tsconfig.build.json\"\n  }\n}\n```\n\n## `src/package.json`\n\nAs of TypeScript 5.2, the only way to emit JavaScript to ESM or\ncjs, and also import packages using node-style `\"exports\"`-aware\nmodule resolution, is to set the `type` field in the\n`package.json` file closest to the TypeScript source code.\n\nDuring the build, `tshy` will create a file at `src/package.json`\nfor this purpose, and then delete it afterwards. If that file\nexists and _wasn't_ put there by `tshy`, then it will be\ndestroyed.\n\n## Local Package `exports`\n\nIn order to facilitate local package exports, tshy will create a\nsymlink to the current package temporarily in\n`./src/node_modules` and permanently in `./dist/node_modules`.\n\nIf you rely on this feature, you may need to add a `paths`\nsection to your `tsconfig.json` so that you don't get nagged\nconstantly by your editor about missing type references.\n\nYou can suppress the self-linking by putting this config in\n`package.json` but be advised this means that you won't be able\nto import from local package exports:\n\n```json\n{\n  \"tshy\": {\n    \"selfLink\": false\n  }\n}\n```\n\n<details>\n<summary>tl;dr explanation</summary>\n\nSimilar to local module imports, Node supports importing the\n`exports` of the current package as if it was a dependency of\nitself. The generated `package.json` files mess with this similar\nto `imports`, but it's much easier to work around.\n\nFor example, if you had this in your package.json:\n\n```json\n{\n  \"name\": \"@my/package\",\n  \"exports\": {\n    \"./foo\": {\n      \"import\": \"./lib/foo.mjs\",\n      \"require\": \"./lib/foo.cjs\"\n    }\n  }\n}\n```\n\nThen any module in the package could do\n`import('@my/package/foo')` or `require('@my/package/foo')` to\npull in the appropriate file.\n\nIn order to make this wort, tshy links the current project\ndirectory into `./src/node_modules/<pkgname>` during the builds,\nand removes the link afterwards, so that TypeScript knows what\nthose things refer to.\n\nThe link is also created in the `dist` folder, but it's only\nrelevant if your tests load the code from `./dist` rather than\nfrom `./src`. In the install, there's no need to re-create this\nlink, because the package will be in a `node_modules` folder\nalready.\n\nIf you use this feature, you can put something like this in your\n`tsconfig.json` file so that your editor knows what those things\nrefer to:\n\n```json\n{\n  \"compilerOptions\": {\n    \"paths\": {\n      \"@my/package/foo\": [\"./src/foo.js\"],\n      \"@my/package/bar\": [\"./src/bar.js\"]\n    }\n  }\n}\n```\n\nNote the `.js` extension, rather than `.ts`. Add this for each\nsubmodule path that you use in this way, or use a wildcard if you\nprefer, though this might result in failing to catch errors if\nyou use a submodule identifier that isn't actually exported:\n\n```json\n{\n  \"compilerOptions\": {\n    \"paths\": {\n      \"@my/package/*\": [\"./src/*.js\"]\n    }\n  }\n}\n```\n\n</details>\n","_attachments":{},"homepage":"https://github.com/isaacs/tshy#readme","bugs":{"url":"https://github.com/isaacs/tshy/issues"},"license":"BlueOak-1.0.0"}