Skip to content

Commit 9f1434c

Browse files
veksenclaude
andcommitted
feat(drizzle): add dual CJS/ESM build support
Consumers using CommonJS can now `require()` the package alongside existing ESM `import` support. Bumps version to 0.1.0. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent d59726b commit 9f1434c

4 files changed

Lines changed: 43 additions & 11 deletions

File tree

nodejs/sqlcommenter-nodejs/packages/sqlcommenter-drizzle/package.json

Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,33 @@
11
{
22
"name": "@query-doctor/sqlcommenter-drizzle",
3-
"version": "0.0.2",
3+
"version": "0.1.0",
44
"description": "SQLCommenter patch for drizzle-orm",
5-
"main": "dist/index.js",
5+
"main": "dist/cjs/index.js",
66
"type": "module",
7-
"types": "dist/index.d.ts",
7+
"types": "dist/esm/index.d.ts",
88
"files": [
99
"dist"
1010
],
1111
"exports": {
1212
".": {
13-
"import": "./dist/index.js",
14-
"types": "./dist/index.d.ts"
13+
"import": {
14+
"types": "./dist/esm/index.d.ts",
15+
"default": "./dist/esm/index.js"
16+
},
17+
"require": {
18+
"types": "./dist/cjs/index.d.ts",
19+
"default": "./dist/cjs/index.js"
20+
}
1521
},
1622
"./http": {
17-
"import": "./dist/http.js",
18-
"types": "./dist/http.d.ts"
23+
"import": {
24+
"types": "./dist/esm/http.d.ts",
25+
"default": "./dist/esm/http.js"
26+
},
27+
"require": {
28+
"types": "./dist/cjs/http.d.ts",
29+
"default": "./dist/cjs/http.js"
30+
}
1931
}
2032
},
2133
"devDependencies": {
@@ -24,7 +36,8 @@
2436
"hono": "^4.9.8",
2537
"postgres": "^3.4.7",
2638
"rewiremock": "^3.14.3",
27-
"tsx": "^4.20.5"
39+
"tsx": "^4.20.5",
40+
"typescript": "^5.9.3"
2841
},
2942
"dependencies": {
3043
"@opentelemetry/api": "~1.9.0"
@@ -38,7 +51,7 @@
3851
},
3952
"scripts": {
4053
"test": "node --import=tsx --test test/**/*.spec.ts",
41-
"build": "tsc"
54+
"build": "tsc -p tsconfig.json && tsc -p tsconfig.cjs.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json"
4255
},
4356
"repository": {
4457
"type": "git",
@@ -50,5 +63,6 @@
5063
},
5164
"author": "Query Doctor",
5265
"license": "Apache-2.0",
53-
"packageManager": "pnpm@10.16.1+sha512.0e155aa2629db8672b49e8475da6226aa4bdea85fdcdfdc15350874946d4f3c91faaf64cbdc4a5d1ab8002f473d5c3fcedcd197989cf0390f9badd3c04678706"
66+
"packageManager": "pnpm@10.16.1+sha512.0e155aa2629db8672b49e8475da6226aa4bdea85fdcdfdc15350874946d4f3c91faaf64cbdc4a5d1ab8002f473d5c3fcedcd197989cf0390f9badd3c04678706",
67+
"module": "dist/esm/index.js"
5468
}

nodejs/sqlcommenter-nodejs/packages/sqlcommenter-drizzle/pnpm-lock.yaml

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"extends": "./tsconfig.json",
3+
"compilerOptions": {
4+
"module": "commonjs",
5+
"moduleResolution": "node",
6+
"outDir": "./dist/cjs"
7+
}
8+
}

nodejs/sqlcommenter-nodejs/packages/sqlcommenter-drizzle/tsconfig.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
// "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */
6060
// "noEmit": true, /* Disable emitting files from a compilation. */
6161
// "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */
62-
"outDir": "./dist" /* Specify an output folder for all emitted files. */,
62+
"outDir": "./dist/esm" /* Specify an output folder for all emitted files. */,
6363
// "removeComments": true, /* Disable emitting comments. */
6464
// "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */
6565
// "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */

0 commit comments

Comments
 (0)