Skip to content

Commit 022c0da

Browse files
[Node] Set requestPermission False If Using Default Permission Handler
1 parent 6029b37 commit 022c0da

3 files changed

Lines changed: 7 additions & 6 deletions

File tree

nodejs/src/client.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ import type {
5555
TraceContextProvider,
5656
TypedSessionLifecycleHandler,
5757
} from "./types.js";
58+
import { defaultJoinSessionPermissionHandler } from "./types.js";
5859

5960
/**
6061
* Minimum protocol version this SDK can communicate with.
@@ -868,7 +869,7 @@ export class CopilotClient {
868869
})),
869870
provider: config.provider,
870871
modelCapabilities: config.modelCapabilities,
871-
requestPermission: true,
872+
requestPermission: config.onPermissionRequest !== defaultJoinSessionPermissionHandler,
872873
requestUserInput: !!config.onUserInputRequest,
873874
requestElicitation: !!config.onElicitationRequest,
874875
hooks: !!(config.hooks && Object.values(config.hooks).some(Boolean)),

nodejs/src/extension.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,7 @@
44

55
import { CopilotClient } from "./client.js";
66
import type { CopilotSession } from "./session.js";
7-
import type { PermissionHandler, PermissionRequestResult, ResumeSessionConfig } from "./types.js";
8-
9-
const defaultJoinSessionPermissionHandler: PermissionHandler = (): PermissionRequestResult => ({
10-
kind: "no-result",
11-
});
7+
import { defaultJoinSessionPermissionHandler, type PermissionHandler, type PermissionRequestResult, type ResumeSessionConfig } from "./types.js";
128

139
export type JoinSessionConfig = Omit<ResumeSessionConfig, "onPermissionRequest"> & {
1410
onPermissionRequest?: PermissionHandler;

nodejs/src/types.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -662,6 +662,10 @@ export type PermissionHandler = (
662662

663663
export const approveAll: PermissionHandler = () => ({ kind: "approved" });
664664

665+
export const defaultJoinSessionPermissionHandler: PermissionHandler = (): PermissionRequestResult => ({
666+
kind: "no-result",
667+
});
668+
665669
// ============================================================================
666670
// User Input Request Types
667671
// ============================================================================

0 commit comments

Comments
 (0)