Skip to content

feat: add extensions in .d.ts files for nodenext compat#945

Merged
satya164 merged 1 commit into
mainfrom
@satya164/rewrite-d-ts
Jun 8, 2026
Merged

feat: add extensions in .d.ts files for nodenext compat#945
satya164 merged 1 commit into
mainfrom
@satya164/rewrite-d-ts

Conversation

@satya164

@satya164 satya164 commented Jun 7, 2026

Copy link
Copy Markdown
Member

No description provided.

@satya164 satya164 merged commit e10243e into main Jun 8, 2026
18 checks passed
@satya164 satya164 deleted the @satya164/rewrite-d-ts branch June 8, 2026 12:14
matus-tomlein added a commit to snowplow/snowplow-javascript-tracker that referenced this pull request Jun 17, 2026
#1478)

* fix(react-native-tracker): emit .d.ts files with .js extensions for nodenext

Upgrade react-native-builder-bob from 0.30.3 to 0.42.1 so the emitted
TypeScript declaration files include explicit .js extensions on relative
import/export specifiers (e.g. export * from './types.js').

Previously the ESM .js output carried extensions (added by bob's Babel
pipeline) but the .d.ts files came straight from tsc and were
extensionless, breaking type resolution for consumers using TypeScript's
moduleResolution: 'nodenext' / 'node16'.

bob 0.42.0 added this rewriting via callstack/react-native-builder-bob#945,
including handling for React Native platform-specific declarations
(.ios.d.ts / .android.d.ts) and .mts/.cts. The bob 0.42 typescript target
no longer accepts an `esm` option (it is inferred from the commonjs/module
targets), so it is removed from the build config.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* chore(react-native-tracker): add rush change file for .d.ts extensions fix

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* ci: bump Node from 18 to 22

react-native-builder-bob 0.42.1 and its transitive dependencies (e.g.
yargs-parser@22) require Node >= 20, which broke CI on Node 18. Node 18
is also EOL. Bump CI workflows and .nvmrc to Node 22 (active LTS) and
raise rush.json nodeSupportedVersionRange floor to 20.19.0 (bob's minimum).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
matus-tomlein added a commit to snowplow/snowplow-javascript-tracker that referenced this pull request Jun 17, 2026
#1478)

* fix(react-native-tracker): emit .d.ts files with .js extensions for nodenext

Upgrade react-native-builder-bob from 0.30.3 to 0.42.1 so the emitted
TypeScript declaration files include explicit .js extensions on relative
import/export specifiers (e.g. export * from './types.js').

Previously the ESM .js output carried extensions (added by bob's Babel
pipeline) but the .d.ts files came straight from tsc and were
extensionless, breaking type resolution for consumers using TypeScript's
moduleResolution: 'nodenext' / 'node16'.

bob 0.42.0 added this rewriting via callstack/react-native-builder-bob#945,
including handling for React Native platform-specific declarations
(.ios.d.ts / .android.d.ts) and .mts/.cts. The bob 0.42 typescript target
no longer accepts an `esm` option (it is inferred from the commonjs/module
targets), so it is removed from the build config.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* chore(react-native-tracker): add rush change file for .d.ts extensions fix

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* ci: bump Node from 18 to 22

react-native-builder-bob 0.42.1 and its transitive dependencies (e.g.
yargs-parser@22) require Node >= 20, which broke CI on Node 18. Node 18
is also EOL. Bump CI workflows and .nvmrc to Node 22 (active LTS) and
raise rush.json nodeSupportedVersionRange floor to 20.19.0 (bob's minimum).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
matus-tomlein added a commit to snowplow/snowplow-javascript-tracker that referenced this pull request Jun 17, 2026
#1478)

* fix(react-native-tracker): emit .d.ts files with .js extensions for nodenext

Upgrade react-native-builder-bob from 0.30.3 to 0.42.1 so the emitted
TypeScript declaration files include explicit .js extensions on relative
import/export specifiers (e.g. export * from './types.js').

Previously the ESM .js output carried extensions (added by bob's Babel
pipeline) but the .d.ts files came straight from tsc and were
extensionless, breaking type resolution for consumers using TypeScript's
moduleResolution: 'nodenext' / 'node16'.

bob 0.42.0 added this rewriting via callstack/react-native-builder-bob#945,
including handling for React Native platform-specific declarations
(.ios.d.ts / .android.d.ts) and .mts/.cts. The bob 0.42 typescript target
no longer accepts an `esm` option (it is inferred from the commonjs/module
targets), so it is removed from the build config.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* chore(react-native-tracker): add rush change file for .d.ts extensions fix

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* ci: bump Node from 18 to 22

react-native-builder-bob 0.42.1 and its transitive dependencies (e.g.
yargs-parser@22) require Node >= 20, which broke CI on Node 18. Node 18
is also EOL. Bump CI workflows and .nvmrc to Node 22 (active LTS) and
raise rush.json nodeSupportedVersionRange floor to 20.19.0 (bob's minimum).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant