diff --git a/packages/core/package.json b/packages/core/package.json index bd7a7f350..ef129b711 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -17,9 +17,16 @@ "module": "./dist/index.mjs", "typings": "./dist/index.d.ts", "exports": { - "import": "./dist/index.mjs", - "require": "./dist/index.js", - "types": "./dist/index.d.ts" + ".": { + "import": "./dist/index.mjs", + "require": "./dist/index.js", + "types": "./dist/index.d.ts" + }, + "./http-only": { + "import": "./dist/http-only.mjs", + "require": "./dist/http-only.js", + "types": "./dist/http-only.d.ts" + } }, "directories": { "lib": "src", @@ -59,6 +66,7 @@ "@types/node": "16.18.23", "@vitest/coverage-c8": "^0.29.8", "cross-env": "^7.0.3", + "esbuild-plugin-version-injector": "^1.1.0", "eslint": "^8.37.0", "eslint-config-neon": "^0.1.41", "eslint-formatter-pretty": "^5.0.0", diff --git a/packages/core/src/http-only/index.ts b/packages/core/src/http-only/index.ts new file mode 100644 index 000000000..7af0961f7 --- /dev/null +++ b/packages/core/src/http-only/index.ts @@ -0,0 +1,11 @@ +export * from '../api/index.js'; +export * from '../util/index.js'; + +export * from 'discord-api-types/v10'; + +/** + * The {@link https://github.com/discordjs/discord.js/blob/main/packages/core/#readme | @discordjs/core} version + * that you are currently using. + */ +// This needs to explicitly be `string` so it is not typed as a "const string" that gets injected by esbuild +export const version = '[VI]{{inject}}[/VI]' as string; diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index 86f5c5247..67a4ce047 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -3,3 +3,10 @@ export * from './client.js'; export * from './util/index.js'; export * from 'discord-api-types/v10'; + +/** + * The {@link https://github.com/discordjs/discord.js/blob/main/packages/core/#readme | @discordjs/core} version + * that you are currently using. + */ +// This needs to explicitly be `string` so it is not typed as a "const string" that gets injected by esbuild +export const version = '[VI]{{inject}}[/VI]' as string; diff --git a/packages/core/tsup.config.ts b/packages/core/tsup.config.ts index 3d4480d6d..55ec6123c 100644 --- a/packages/core/tsup.config.ts +++ b/packages/core/tsup.config.ts @@ -1,3 +1,10 @@ +import { esbuildPluginVersionInjector } from 'esbuild-plugin-version-injector'; import { createTsupConfig } from '../../tsup.config.js'; -export default createTsupConfig({}); +export default createTsupConfig({ + entry: { + index: 'src/index.ts', + 'http-only': 'src/http-only/index.ts', + }, + esbuildPlugins: [esbuildPluginVersionInjector()], +}); diff --git a/yarn.lock b/yarn.lock index 5e7dc79aa..54d99e6d4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2007,6 +2007,7 @@ __metadata: "@vladfrangu/async_event_emitter": ^2.1.4 cross-env: ^7.0.3 discord-api-types: ^0.37.37 + esbuild-plugin-version-injector: ^1.1.0 eslint: ^8.37.0 eslint-config-neon: ^0.1.41 eslint-formatter-pretty: ^5.0.0