@webex/cc-task 1.28.0-next.35 → 1.28.0-next.36

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.
@@ -2,6 +2,19 @@ import { ILogger } from '@webex/cc-store';
2
2
  import { ITask, Interaction } from '@webex/contact-center';
3
3
  import { Visibility } from '@webex/cc-components';
4
4
  export declare function findHoldTimestamp(interaction: Interaction, mType?: string): number | null;
5
+ /**
6
+ * Checks whether the given task is a campaign preview task based on
7
+ * its outboundType or callProcessingDetails.campaignType.
8
+ */
9
+ export declare function isCampaignPreviewTask(task: ITask): boolean;
10
+ /**
11
+ * Checks whether the task is a campaign preview that the agent has not
12
+ * explicitly accepted. Uses the store's acceptedCampaignIds as the
13
+ * source of truth — the participants.hasJoined flag is unreliable
14
+ * because CampaignContactUpdated payloads can set it even when the
15
+ * agent only skipped or removed the preview.
16
+ */
17
+ export declare function isUnacceptedCampaignPreview(task: ITask, acceptedCampaignIds: Set<string>): boolean;
5
18
  /**
6
19
  * Get visibility for Accept button
7
20
  */
@@ -100,6 +100,7 @@ export declare const useCallControl: (props: useCallControlProps) => {
100
100
  totalPages: number;
101
101
  };
102
102
  }>;
103
+ isCampaignCall: boolean;
103
104
  };
104
105
  export declare const useOutdialCall: (props: useOutdialCallProps) => {
105
106
  startOutdial: (destination: string, origin?: string) => void;
@@ -3,7 +3,14 @@ import { RealTimeTranscriptionData } from '@webex/cc-store';
3
3
  export type UseTaskProps = Pick<TaskProps, 'incomingTask' | 'deviceType' | 'logger'> & Partial<Pick<TaskProps, 'onAccepted' | 'onRejected'>>;
4
4
  export type UseTaskListProps = Pick<TaskProps, 'cc' | 'taskList' | 'deviceType' | 'logger'> & Partial<Pick<TaskProps, 'onTaskAccepted' | 'onTaskDeclined' | 'onTaskSelected'>>;
5
5
  export type IncomingTaskProps = Pick<TaskProps, 'incomingTask'> & Partial<Pick<TaskProps, 'onAccepted' | 'onRejected'>>;
6
- export type TaskListProps = Partial<Pick<TaskProps, 'onTaskAccepted' | 'onTaskDeclined' | 'onTaskSelected'>>;
6
+ export type TaskListProps = Partial<Pick<TaskProps, 'onTaskAccepted' | 'onTaskDeclined' | 'onTaskSelected'>> & {
7
+ /**
8
+ * Flag to enable campaign preview task rendering.
9
+ * When true and the task is a campaign preview, CampaignTask is rendered.
10
+ * Defaults to true.
11
+ */
12
+ hasCampaignPreviewEnabled?: boolean;
13
+ };
7
14
  export type RealTimeTranscriptProps = Pick<RealTimeTranscriptComponentProps, 'liveTranscriptEntries' | 'className'>;
8
15
  export type UseRealTimeTranscriptInternalProps = RealTimeTranscriptProps & {
9
16
  currentTaskId?: string;
@@ -12,6 +19,7 @@ export type UseRealTimeTranscriptInternalProps = RealTimeTranscriptProps & {
12
19
  export type CallControlProps = Partial<Pick<ControlProps, 'onHoldResume' | 'onEnd' | 'onWrapUp' | 'onRecordingToggle' | 'callControlClassName' | 'callControlConsultClassName' | 'onToggleMute' | 'conferenceEnabled' | 'consultTransferOptions'>>;
13
20
  export type useCallControlProps = Pick<ControlProps, 'currentTask' | 'logger' | 'deviceType' | 'featureFlags' | 'isMuted' | 'conferenceEnabled' | 'agentId'> & Partial<Pick<ControlProps, 'onHoldResume' | 'onEnd' | 'onWrapUp' | 'onRecordingToggle' | 'onToggleMute'>>;
14
21
  export type useOutdialCallProps = Pick<OutdialCallProps, 'cc' | 'logger'>;
22
+ export { CAMPAIGN_PREVIEW_OUTBOUND_TYPES, CAMPAIGN_PREVIEW_CAMPAIGN_TYPES } from '@webex/cc-store';
15
23
  export type { RealTimeTranscriptEntry };
16
24
  export interface OutdialProps {
17
25
  /**
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@webex/cc-task",
3
3
  "description": "Webex Contact Center Widgets: Task",
4
4
  "license": "Cisco's General Terms (https://www.cisco.com/site/us/en/about/legal/contract-experience/index.html)",
5
- "version": "1.28.0-next.35",
5
+ "version": "1.28.0-next.36",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/types/index.d.ts",
8
8
  "publishConfig": {
@@ -23,8 +23,8 @@
23
23
  "deploy:npm": "yarn npm publish"
24
24
  },
25
25
  "dependencies": {
26
- "@webex/cc-components": "1.28.0-next.32",
27
- "@webex/cc-store": "1.28.0-next.17",
26
+ "@webex/cc-components": "1.28.0-next.33",
27
+ "@webex/cc-store": "1.28.0-next.18",
28
28
  "mobx-react-lite": "^4.1.0",
29
29
  "react-error-boundary": "^6.0.0"
30
30
  },
@@ -39,7 +39,7 @@
39
39
  "@testing-library/react": "16.0.1",
40
40
  "@types/jest": "29.5.14",
41
41
  "@types/react-test-renderer": "18",
42
- "@webex/test-fixtures": "0.0.0-next.0",
42
+ "@webex/test-fixtures": "0.0.0-next.1",
43
43
  "babel-jest": "29.7.0",
44
44
  "babel-loader": "9.2.1",
45
45
  "eslint": "^9.20.1",