Plugin SDK: export Discord subpaths

This commit is contained in:
huntharo
2026-03-20 17:26:31 -04:00
parent 4ea26815fe
commit 218fbe9a76
3 changed files with 20 additions and 0 deletions

View File

@@ -241,6 +241,14 @@
"types": "./dist/plugin-sdk/diffs.d.ts",
"default": "./dist/plugin-sdk/diffs.js"
},
"./plugin-sdk/discord": {
"types": "./dist/plugin-sdk/discord.d.ts",
"default": "./dist/plugin-sdk/discord.js"
},
"./plugin-sdk/discord-core": {
"types": "./dist/plugin-sdk/discord-core.d.ts",
"default": "./dist/plugin-sdk/discord-core.js"
},
"./plugin-sdk/extension-shared": {
"types": "./dist/plugin-sdk/extension-shared.d.ts",
"default": "./dist/plugin-sdk/extension-shared.js"

View File

@@ -50,6 +50,8 @@
"device-bootstrap",
"diagnostics-otel",
"diffs",
"discord",
"discord-core",
"extension-shared",
"channel-config-helpers",
"channel-config-schema",

View File

@@ -9,6 +9,7 @@ const require = createRequire(import.meta.url);
const rootSdk = require("./root-alias.cjs") as Record<string, unknown>;
const rootAliasPath = fileURLToPath(new URL("./root-alias.cjs", import.meta.url));
const rootAliasSource = fs.readFileSync(rootAliasPath, "utf-8");
const packageJsonPath = fileURLToPath(new URL("../../package.json", import.meta.url));
type EmptySchema = {
safeParse: (value: unknown) =>
@@ -196,6 +197,15 @@ describe("plugin-sdk root alias", () => {
expect(rootSdk.__esModule).toBe(true);
});
it("publishes Discord plugin-sdk subpaths", () => {
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, "utf-8")) as {
exports?: Record<string, unknown>;
};
expect(packageJson.exports?.["./plugin-sdk/discord"]).toBeDefined();
expect(packageJson.exports?.["./plugin-sdk/discord-core"]).toBeDefined();
});
it("preserves reflection semantics for lazily resolved exports", { timeout: 240_000 }, () => {
expect("resolveControlCommandGate" in rootSdk).toBe(true);
expect("onDiagnosticEvent" in rootSdk).toBe(true);