Skip to content

Commit eedae89

Browse files
fix: Add api entries
1 parent 5183923 commit eedae89

1 file changed

Lines changed: 119 additions & 3 deletions

File tree

drizzle-kit/build.ts

Lines changed: 119 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ const main = async () => {
7979
js: "import { createRequire } from 'module'; const require = createRequire(import.meta.url);",
8080
};
8181
}
82-
return undefined;
82+
return;
8383
},
8484
outExtension: (ctx) => {
8585
if (ctx.format === 'cjs') {
@@ -95,8 +95,124 @@ const main = async () => {
9595
},
9696
});
9797

98-
const apiCjs = readFileSync('./dist/api-postgres.js', 'utf8').replace(/await import\(/g, 'require(');
99-
writeFileSync('./dist/api-postgres.js', apiCjs);
98+
writeFileSync(
99+
'./dist/api-postgres.js',
100+
readFileSync('./dist/api-postgres.js', 'utf8').replace(/await import\(/g, 'require('),
101+
);
102+
103+
await tsup.build({
104+
entryPoints: ['./src/ext/api-mysql.ts'],
105+
outDir: './dist',
106+
external: ['bun:sqlite'],
107+
splitting: false,
108+
dts: true,
109+
format: ['cjs', 'esm'],
110+
banner: (ctx) => {
111+
/**
112+
* fix dynamic require in ESM ("glob" -> "fs.realpath" requires 'fs' module)
113+
* @link https://github.com/drizzle-team/drizzle-orm/issues/2853
114+
*/
115+
if (ctx.format === 'esm') {
116+
return {
117+
js: "import { createRequire } from 'module'; const require = createRequire(import.meta.url);",
118+
};
119+
}
120+
return;
121+
},
122+
outExtension: (ctx) => {
123+
if (ctx.format === 'cjs') {
124+
return {
125+
dts: '.d.ts',
126+
js: '.js',
127+
};
128+
}
129+
return {
130+
dts: '.d.mts',
131+
js: '.mjs',
132+
};
133+
},
134+
});
135+
136+
writeFileSync(
137+
'./dist/api-mysql.js',
138+
readFileSync('./dist/api-mysql.js', 'utf8').replace(/await import\(/g, 'require('),
139+
);
140+
141+
await tsup.build({
142+
entryPoints: ['./src/ext/api-sqlite.ts'],
143+
outDir: './dist',
144+
external: ['bun:sqlite'],
145+
splitting: false,
146+
dts: true,
147+
format: ['cjs', 'esm'],
148+
banner: (ctx) => {
149+
/**
150+
* fix dynamic require in ESM ("glob" -> "fs.realpath" requires 'fs' module)
151+
* @link https://github.com/drizzle-team/drizzle-orm/issues/2853
152+
*/
153+
if (ctx.format === 'esm') {
154+
return {
155+
js: "import { createRequire } from 'module'; const require = createRequire(import.meta.url);",
156+
};
157+
}
158+
return;
159+
},
160+
outExtension: (ctx) => {
161+
if (ctx.format === 'cjs') {
162+
return {
163+
dts: '.d.ts',
164+
js: '.js',
165+
};
166+
}
167+
return {
168+
dts: '.d.mts',
169+
js: '.mjs',
170+
};
171+
},
172+
});
173+
174+
writeFileSync(
175+
'./dist/api-sqlite.js',
176+
readFileSync('./dist/api-sqlite.js', 'utf8').replace(/await import\(/g, 'require('),
177+
);
178+
179+
await tsup.build({
180+
entryPoints: ['./src/ext/api-singlestore.ts'],
181+
outDir: './dist',
182+
external: ['bun:sqlite'],
183+
splitting: false,
184+
dts: true,
185+
format: ['cjs', 'esm'],
186+
banner: (ctx) => {
187+
/**
188+
* fix dynamic require in ESM ("glob" -> "fs.realpath" requires 'fs' module)
189+
* @link https://github.com/drizzle-team/drizzle-orm/issues/2853
190+
*/
191+
if (ctx.format === 'esm') {
192+
return {
193+
js: "import { createRequire } from 'module'; const require = createRequire(import.meta.url);",
194+
};
195+
}
196+
return;
197+
},
198+
outExtension: (ctx) => {
199+
if (ctx.format === 'cjs') {
200+
return {
201+
dts: '.d.ts',
202+
js: '.js',
203+
};
204+
}
205+
return {
206+
dts: '.d.mts',
207+
js: '.mjs',
208+
};
209+
},
210+
});
211+
212+
writeFileSync(
213+
'./dist/api-singlestore.js',
214+
readFileSync('./dist/api-singlestore.js', 'utf8').replace(/await import\(/g, 'require('),
215+
);
100216
};
101217

102218
main().catch((e) => {

0 commit comments

Comments
 (0)