Skip to content

Commit 8c4e116

Browse files
seratchCharlieGreenmanvrtnis
authored
Fix #245 CJS resolution failure (#346)
Co-authored-by: Charlie Greenman <[email protected]> Co-authored-by: Viraj <[email protected]>
1 parent 1cd3266 commit 8c4e116

File tree

11 files changed

+82
-96
lines changed

11 files changed

+82
-96
lines changed

eslint.config.mjs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ export default tseslint.config(
2424
'examples/realtime-demo/**',
2525
'examples/nextjs/**',
2626
'integration-tests//**',
27+
'tsc-multi.json',
2728
]),
2829
eslint.configs.recommended,
2930
tseslint.configs.recommended,

integration-tests/node.test.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,15 @@
11
import { describe, test, expect, beforeAll } from 'vitest';
22
import { execa as execaBase } from 'execa';
33

4-
const execa = execaBase({ cwd: './integration-tests/node' });
4+
const execa = execaBase({
5+
cwd: './integration-tests/node',
6+
env: {
7+
...process.env,
8+
NODE_OPTIONS: '',
9+
TS_NODE_PROJECT: '',
10+
TS_NODE_COMPILER_OPTIONS: '',
11+
},
12+
});
513

614
describe('Node.js', () => {
715
beforeAll(async () => {

integration-tests/node/package.json

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
{
22
"private": true,
3+
"type": "commonjs",
34
"scripts": {
4-
"start:cjs": "node index.cjs",
5-
"start:esm": "node index.mjs"
5+
"start:cjs": "node --no-experimental-require-module index.cjs",
6+
"start:esm": "node --no-experimental-require-module index.mjs"
67
},
78
"dependencies": {
8-
"@openai/agents": "latest"
9+
"@openai/agents": "latest",
10+
"typescript": "^5.9.2"
911
}
1012
}

packages/agents-core/package.json

Lines changed: 19 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -14,67 +14,49 @@
1414
},
1515
"exports": {
1616
".": {
17-
"require": {
18-
"types": "./dist/index.d.ts",
19-
"default": "./dist/index.js"
20-
},
2117
"types": "./dist/index.d.ts",
22-
"default": "./dist/index.mjs"
18+
"require": "./dist/index.js",
19+
"import": "./dist/index.mjs"
2320
},
2421
"./model": {
25-
"require": {
26-
"types": "./dist/model.d.ts",
27-
"default": "./dist/model.js"
28-
},
2922
"types": "./dist/model.d.ts",
30-
"default": "./dist/model.mjs"
23+
"require": "./dist/model.js",
24+
"import": "./dist/model.mjs"
3125
},
3226
"./utils": {
33-
"require": {
34-
"types": "./dist/utils/index.d.ts",
35-
"default": "./dist/utils/index.js"
36-
},
3727
"types": "./dist/utils/index.d.ts",
38-
"default": "./dist/utils/index.mjs"
28+
"require": "./dist/utils/index.js",
29+
"import": "./dist/utils/index.mjs"
3930
},
4031
"./extensions": {
41-
"require": {
42-
"types": "./dist/extensions/index.d.ts",
43-
"default": "./dist/extensions/index.js"
44-
},
4532
"types": "./dist/extensions/index.d.ts",
46-
"default": "./dist/extensions/index.mjs"
33+
"require": "./dist/extensions/index.js",
34+
"import": "./dist/extensions/index.mjs"
4735
},
4836
"./types": {
49-
"require": {
50-
"types": "./dist/types/index.d.ts",
51-
"default": "./dist/types/index.js"
52-
},
5337
"types": "./dist/types/index.d.ts",
54-
"default": "./dist/types/index.mjs"
38+
"require": "./dist/types/index.js",
39+
"import": "./dist/types/index.mjs"
5540
},
5641
"./_shims": {
5742
"workerd": {
58-
"require": "./dist/shims/shims-workerd.js",
5943
"types": "./dist/shims/shims-workerd.d.ts",
60-
"default": "./dist/shims/shims-workerd.mjs"
44+
"require": "./dist/shims/shims-workerd.js",
45+
"import": "./dist/shims/shims-workerd.mjs"
6146
},
6247
"browser": {
63-
"require": "./dist/shims/shims-browser.js",
6448
"types": "./dist/shims/shims-browser.d.ts",
65-
"default": "./dist/shims/shims-browser.mjs"
49+
"require": "./dist/shims/shims-browser.js",
50+
"import": "./dist/shims/shims-browser.mjs"
6651
},
6752
"node": {
68-
"require": "./dist/shims/shims-node.js",
6953
"types": "./dist/shims/shims-node.d.ts",
70-
"default": "./dist/shims/shims-node.mjs"
71-
},
72-
"require": {
73-
"types": "./dist/shims/shims-node.d.ts",
74-
"default": "./dist/shims/shims-node.js"
54+
"require": "./dist/shims/shims-node.js",
55+
"import": "./dist/shims/shims-node.mjs"
7556
},
76-
"types": "./dist/shims/shims-node.d.ts",
77-
"default": "./dist/shims/shims-node.mjs"
57+
"types": "./dist/shims/shims.d.ts",
58+
"require": "./dist/shims/shims.js",
59+
"import": "./dist/shims/shims.mjs"
7860
}
7961
},
8062
"keywords": [

packages/agents-core/src/shims/shims-node.ts

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,18 @@ declare global {
1414
// circular dependency resolution issues caused by other exports in '@openai/agents-core/_shims'
1515
export function loadEnv(): Record<string, string | undefined> {
1616
if (typeof process === 'undefined' || typeof process.env === 'undefined') {
17-
if (
18-
typeof import.meta === 'object' &&
19-
typeof import.meta.env === 'object'
20-
) {
21-
return import.meta.env as unknown as Record<string, string | undefined>;
17+
// In CommonJS builds, import.meta is not available, so we return empty object
18+
try {
19+
// Use eval to avoid TypeScript compilation errors in CommonJS builds
20+
const importMeta = (0, eval)('import.meta');
21+
if (
22+
typeof importMeta === 'object' &&
23+
typeof importMeta.env === 'object'
24+
) {
25+
return importMeta.env as unknown as Record<string, string | undefined>;
26+
}
27+
} catch {
28+
// import.meta not available (CommonJS build)
2229
}
2330
return {};
2431
}

packages/agents-core/src/shims/shims-workerd.ts

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,18 @@ declare global {
1515
// circular dependency resolution issues caused by other exports in '@openai/agents-core/_shims'
1616
export function loadEnv(): Record<string, string | undefined> {
1717
if (typeof process === 'undefined' || typeof process.env === 'undefined') {
18-
if (
19-
typeof import.meta === 'object' &&
20-
typeof import.meta.env === 'object'
21-
) {
22-
return import.meta.env as unknown as Record<string, string | undefined>;
18+
// In CommonJS builds, import.meta is not available, so we return empty object
19+
try {
20+
// Use eval to avoid TypeScript compilation errors in CommonJS builds
21+
const importMeta = (0, eval)('import.meta');
22+
if (
23+
typeof importMeta === 'object' &&
24+
typeof importMeta.env === 'object'
25+
) {
26+
return importMeta.env as unknown as Record<string, string | undefined>;
27+
}
28+
} catch {
29+
// import.meta not available (CommonJS build)
2330
}
2431
return {};
2532
}

packages/agents-extensions/package.json

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,9 @@
1919
},
2020
"exports": {
2121
".": {
22-
"require": {
23-
"types": "./dist/index.d.ts",
24-
"default": "./dist/index.js"
25-
},
2622
"types": "./dist/index.d.ts",
27-
"default": "./dist/index.mjs"
23+
"require": "./dist/index.js",
24+
"import": "./dist/index.mjs"
2825
}
2926
},
3027
"peerDependencies": {

packages/agents-openai/package.json

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,9 @@
99
"types": "dist/index.d.ts",
1010
"exports": {
1111
".": {
12-
"require": {
13-
"types": "./dist/index.d.ts",
14-
"default": "./dist/index.js"
15-
},
1612
"types": "./dist/index.d.ts",
17-
"default": "./dist/index.mjs"
13+
"require": "./dist/index.js",
14+
"import": "./dist/index.mjs"
1815
}
1916
},
2017
"dependencies": {

packages/agents-realtime/package.json

Lines changed: 13 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -11,39 +11,33 @@
1111
"exports": {
1212
".": {
1313
"browser": {
14-
"require": "./dist/index.js",
15-
"types": "./dist/index.d.ts",
16-
"default": "./dist/index.mjs"
17-
},
18-
"require": {
1914
"types": "./dist/index.d.ts",
20-
"default": "./dist/index.js"
15+
"require": "./dist/index.js",
16+
"import": "./dist/index.mjs"
2117
},
2218
"types": "./dist/index.d.ts",
23-
"default": "./dist/index.mjs"
19+
"require": "./dist/index.js",
20+
"import": "./dist/index.mjs"
2421
},
2522
"./_shims": {
2623
"workerd": {
27-
"require": "./dist/shims/shims-workerd.js",
2824
"types": "./dist/shims/shims-workerd.d.ts",
29-
"default": "./dist/shims/shims-workerd.mjs"
25+
"require": "./dist/shims/shims-workerd.js",
26+
"import": "./dist/shims/shims-workerd.mjs"
3027
},
3128
"browser": {
32-
"require": "./dist/shims/shims-browser.js",
3329
"types": "./dist/shims/shims-browser.d.ts",
34-
"default": "./dist/shims/shims-browser.mjs"
30+
"require": "./dist/shims/shims-browser.js",
31+
"import": "./dist/shims/shims-browser.mjs"
3532
},
3633
"node": {
37-
"require": "./dist/shims/shims-node.js",
3834
"types": "./dist/shims/shims-node.d.ts",
39-
"default": "./dist/shims/shims-node.mjs"
40-
},
41-
"require": {
42-
"types": "./dist/shims/shims-node.d.ts",
43-
"default": "./dist/shims/shims-node.js"
35+
"require": "./dist/shims/shims-node.js",
36+
"import": "./dist/shims/shims-node.mjs"
4437
},
45-
"types": "./dist/shims/shims-node.d.ts",
46-
"default": "./dist/shims/shims-node.mjs"
38+
"types": "./dist/shims/shims.d.ts",
39+
"require": "./dist/shims/shims.js",
40+
"import": "./dist/shims/shims.mjs"
4741
}
4842
},
4943
"typesVersions": {

packages/agents/package.json

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -9,28 +9,19 @@
99
"types": "dist/index.d.ts",
1010
"exports": {
1111
".": {
12-
"require": {
13-
"types": "./dist/index.d.ts",
14-
"default": "./dist/index.js"
15-
},
1612
"types": "./dist/index.d.ts",
17-
"default": "./dist/index.mjs"
13+
"require": "./dist/index.js",
14+
"import": "./dist/index.mjs"
1815
},
1916
"./realtime": {
20-
"require": {
21-
"types": "./dist/realtime/index.d.ts",
22-
"default": "./dist/realtime/index.js"
23-
},
2417
"types": "./dist/realtime/index.d.ts",
25-
"default": "./dist/realtime/index.mjs"
18+
"require": "./dist/realtime/index.js",
19+
"import": "./dist/realtime/index.mjs"
2620
},
2721
"./utils": {
28-
"require": {
29-
"types": "./dist/utils/index.d.ts",
30-
"default": "./dist/utils/index.js"
31-
},
3222
"types": "./dist/utils/index.d.ts",
33-
"default": "./dist/utils/index.mjs"
23+
"require": "./dist/utils/index.js",
24+
"import": "./dist/utils/index.mjs"
3425
}
3526
},
3627
"scripts": {

0 commit comments

Comments
 (0)