@webex/cc-components 1.28.0-task-refactor.1 → 1.28.0-task-refactor.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -34,15 +34,18 @@ export declare const isTelephonyMediaType: (mediaType: MediaChannelType, logger?
34
34
  * Builds the call control buttons configuration
35
35
  */
36
36
  export declare const buildCallControlButtons: (isMuted: boolean, isRecording: boolean, isMuteButtonDisabled: boolean, currentMediaType: MediaTypeInfo, controls: TaskUIControls, isHeld: boolean, handleMuteToggleFunc: () => void, handleToggleHoldFunc: () => void, toggleRecording: () => void, endCall: () => void, exitConference: () => void, switchToConsult: () => void, onTransferConsult: () => void, handleConsultConferencePress: () => void, logger?: ILogger, conferenceEnabled?: boolean) => CallControlButton[];
37
+ export type ConsultFilterPhase = 'none' | 'pending' | 'active';
37
38
  /**
38
- * Filters buttons based on consultation state
39
- * During consulting:
40
- * - Hide: hold, consult, and blind transfer buttons
41
- * - Respect SDK enabled/disabled state for consulting buttons (transferConsult, conference)
42
- * They will be enabled when on main call, disabled when on consult call
43
- * - Show as-is: mute, switchToConsult, recording, exitConference, end
39
+ * Distinguishes consult-requested (destination not joined) from active consult.
40
+ * Do not use endConsult visibility alone — it spans both phases.
44
41
  */
45
- export declare const filterButtonsForConsultation: (buttons: CallControlButton[], consultInitiated: boolean, isTelephony: boolean, logger?: any) => CallControlButton[];
42
+ export declare const getConsultFilterPhase: (currentTask: ITask | null | undefined, controls: TaskUIControls | undefined) => ConsultFilterPhase;
43
+ /**
44
+ * Filters buttons based on consultation phase.
45
+ * Pending (consult requested): hide hold/consult/record; keep transfer on main (Stable Prod parity).
46
+ * Active (destination joined): also hide blind transfer on main.
47
+ */
48
+ export declare const filterButtonsForConsultation: (buttons: CallControlButton[], consultPhase: ConsultFilterPhase, isTelephony: boolean, logger?: ILogger) => CallControlButton[];
46
49
  /**
47
50
  * Updates call state from current task data
48
51
  */