@koredev/kore-web-sdk 11.16.0-rc.e5ecb93 → 11.16.1-rc.07c44ca

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.
@@ -14,6 +14,7 @@ declare class AgentDesktopPlugin {
14
14
  TMsgData: any;
15
15
  authInfo: any;
16
16
  cobrowseSession: any;
17
+ clickToCallEnabled: boolean;
17
18
  constructor(config?: any);
18
19
  onHostCreate(): void;
19
20
  onInit(): void;
@@ -0,0 +1 @@
1
+ export function c2c_call(config: any): any;
@@ -0,0 +1,9 @@
1
+ /** @jsx h */
2
+ import './clickToCallComponent.scss';
3
+ import { h } from 'preact';
4
+ interface ClickToCallProps {
5
+ hostInstance: any;
6
+ dtmfInput?: string;
7
+ }
8
+ export declare function ClickToCallComponent(props: ClickToCallProps): h.JSX.Element;
9
+ export {};
@@ -0,0 +1,8 @@
1
+ /** @jsx h */
2
+ import './clickToCallSlider.scss';
3
+ import { h } from 'preact';
4
+ interface ClickToCallSliderProps {
5
+ hostInstance: any;
6
+ }
7
+ export declare function ClickToCallSlider(props: ClickToCallSliderProps): h.JSX.Element;
8
+ export {};
@@ -0,0 +1,123 @@
1
+ export = setup;
2
+ export = setup;
3
+ /**
4
+ * This is the common logic for both the Node.js and web browser
5
+ * implementations of `debug()`.
6
+ */
7
+ declare function setup(env: any): {
8
+ (namespace: string): Function;
9
+ debug: any;
10
+ default: any;
11
+ coerce: (val: Mixed) => Mixed;
12
+ disable: () => string;
13
+ enable: (namespaces: string) => void;
14
+ enabled: (name: string) => boolean;
15
+ humanize: any;
16
+ /**
17
+ * Active `debug` instances.
18
+ */
19
+ instances: any[];
20
+ /**
21
+ * The currently active debug mode names, and names to skip.
22
+ */
23
+ names: any[];
24
+ skips: any[];
25
+ /**
26
+ * Map of special "%n" handling functions, for the debug "format" argument.
27
+ *
28
+ * Valid key names are a single, lower or upper-case letter, i.e. "n" and "N".
29
+ */
30
+ formatters: {};
31
+ selectColor: (namespace: string) => number | string;
32
+ };
33
+ declare namespace setup {
34
+ export { settings, load, parseMessage, C, isSocket, str_utf8_length, isFunction, isString, isDecimal, isEmpty, hasMethods, createRandomToken, newTag, newUUID, hostType, escapeUser, normalizeTarget, headerize, sipErrorCause, getRandomTestNetIP, calculateMD5, closeMediaStream, cloneArray, cloneObject, log, formatArgs, save, useColors, storage, colors, writer as write, unknown as parse, unknown as parseParams, parseFmtpConfig, unknown as parsePayloads, unknown as parseRemoteCandidates, unknown as parseImageAttributes, unknown as parseSimulcastStreamList };
35
+ }
36
+ declare namespace settings {
37
+ const authorization_user: null;
38
+ const password: null;
39
+ const realm: null;
40
+ const ha1: null;
41
+ const authorization_jwt: null;
42
+ const display_name: null;
43
+ const uri: null;
44
+ const contact_uri: null;
45
+ const instance_id: null;
46
+ const use_preloaded_route: boolean;
47
+ const session_timers: boolean;
48
+ const session_timers_refresh_method: any;
49
+ const session_timers_force_refresher: boolean;
50
+ const no_answer_timeout: number;
51
+ const register: boolean;
52
+ const register_expires: number;
53
+ const registrar_server: null;
54
+ const sockets: null;
55
+ const connection_recovery_max_interval: any;
56
+ const connection_recovery_min_interval: any;
57
+ const via_host: string;
58
+ }
59
+ /**
60
+ * Load `namespaces`.
61
+ *
62
+ * @return {String} returns the previously persisted debug modes
63
+ * @api private
64
+ */
65
+ declare function load(): string;
66
+ declare function parseMessage(data: any, ua: any): any;
67
+ declare namespace C {
68
+ const MIN_DURATION: number;
69
+ const MAX_DURATION: number;
70
+ const DEFAULT_DURATION: number;
71
+ const MIN_INTER_TONE_GAP: number;
72
+ const DEFAULT_INTER_TONE_GAP: number;
73
+ }
74
+ declare function isSocket(socket: any): boolean;
75
+ declare function str_utf8_length(string: any): number;
76
+ declare function isFunction(fn: any): boolean;
77
+ declare function isString(str: any): boolean;
78
+ declare function isDecimal(num: any): boolean;
79
+ declare function isEmpty(value: any): boolean;
80
+ declare function hasMethods(obj: any, ...args: any[]): boolean;
81
+ declare function createRandomToken(size: any, ...args: any[]): string;
82
+ declare function newTag(): string;
83
+ declare function newUUID(): string;
84
+ declare function hostType(host: any): any;
85
+ declare function escapeUser(user: any): string;
86
+ declare function normalizeTarget(target: any, domain: any): any;
87
+ declare function headerize(string: any): string;
88
+ declare function sipErrorCause(status_code: any): any;
89
+ declare function getRandomTestNetIP(): string;
90
+ declare function calculateMD5(string: any): string;
91
+ declare function closeMediaStream(stream: any): void;
92
+ declare function cloneArray(array: any): any;
93
+ declare function cloneObject(obj: any, ...args: any[]): any;
94
+ /**
95
+ * Invokes `console.log()` when available.
96
+ * No-op when `console.log` is not a "function".
97
+ *
98
+ * @api public
99
+ */
100
+ declare function log(...args: any[]): false | void;
101
+ /**
102
+ * Colorize log arguments if enabled.
103
+ *
104
+ * @api public
105
+ */
106
+ declare function formatArgs(args: any): void;
107
+ /**
108
+ * Save `namespaces`.
109
+ *
110
+ * @param {String} namespaces
111
+ * @api private
112
+ */
113
+ declare function save(namespaces: string): void;
114
+ /**
115
+ * Currently only WebKit-based Web Inspectors, Firefox >= v31,
116
+ * and the Firebug extension (any Firefox version) are known
117
+ * to support "%c" CSS customizations.
118
+ *
119
+ * TODO: add a `localStorage` variable to explicitly enable/disable colors
120
+ */
121
+ declare function useColors(): any;
122
+ declare const storage: LocalStorage;
123
+ declare const colors: string[];
@@ -38,6 +38,7 @@ declare class Korei18nPlugin {
38
38
  reconnect: string;
39
39
  today: string;
40
40
  yesterday: string;
41
+ clickToCall: string;
41
42
  };
42
43
  ja: {
43
44
  message: string;
@@ -73,6 +74,7 @@ declare class Korei18nPlugin {
73
74
  reconnect: string;
74
75
  today: string;
75
76
  yesterday: string;
77
+ clickToCall: string;
76
78
  };
77
79
  ko: {
78
80
  message: string;
@@ -108,6 +110,7 @@ declare class Korei18nPlugin {
108
110
  reconnect: string;
109
111
  today: string;
110
112
  yesterday: string;
113
+ clickToCall: string;
111
114
  };
112
115
  zh: {
113
116
  message: string;
@@ -143,6 +146,7 @@ declare class Korei18nPlugin {
143
146
  reconnect: string;
144
147
  today: string;
145
148
  yesterday: string;
149
+ clickToCall: string;
146
150
  };
147
151
  de: {
148
152
  message: string;
@@ -178,6 +182,7 @@ declare class Korei18nPlugin {
178
182
  reconnect: string;
179
183
  today: string;
180
184
  yesterday: string;
185
+ clickToCall: string;
181
186
  };
182
187
  };
183
188
  };
@@ -22,6 +22,18 @@ declare class ProactiveWebCampaignPlugin {
22
22
  customDataChangeMap: any;
23
23
  static readonly CUSTOM_OPERATORS: string[];
24
24
  static readonly MAX_FLATTEN_DEPTH = 10;
25
+ private static readonly ACTIVE_CAMPAIGN_SELECTOR;
26
+ private static readonly CHAT_CONTAINER_SELECTOR;
27
+ isPendingSendAPIEvent: boolean;
28
+ coolDownTime: number;
29
+ cooldownState: {
30
+ isActive: boolean;
31
+ startTime: number;
32
+ expiryTime: number;
33
+ };
34
+ isVisitorAlreadyChatting: boolean;
35
+ private chatSessionInfo;
36
+ private static readonly CHAT_SESSION_STORAGE_KEY;
25
37
  constructor(config: any);
26
38
  /**
27
39
  * Generates a unique browser session ID for the campaign trigger session
@@ -438,7 +450,7 @@ declare class ProactiveWebCampaignPlugin {
438
450
  evaluateGroupConditions(groupConditions: any, actualValues: any): boolean;
439
451
  /**
440
452
  * Updates individual condition satisfaction states with different persistence logic for rules vs exclusions
441
- * RULES: Selective persistence (pageVisitCount, country, city persist; user, timeSpent, hoverOn dynamic)
453
+ * RULES: Selective persistence (country, city persist; pageVisitCount, user, timeSpent, hoverOn dynamic)
442
454
  * EXCLUSIONS: Always dynamic re-evaluation (no persistence for any condition type)
443
455
  * @param groupConditions - Group conditions object
444
456
  * @param actualValues - Actual values to compare against
@@ -573,11 +585,58 @@ declare class ProactiveWebCampaignPlugin {
573
585
  * @param campId - Campaign ID
574
586
  */
575
587
  triggerCampaignEvent(campInstanceId: string, campId: string): void;
588
+ /**
589
+ * Checks if any campaign template is active
590
+ * @returns Boolean indicating if any campaign template is active
591
+ */
592
+ isActiveCampaignTemplate(): boolean;
576
593
  /**
577
594
  * Enhanced sendEvent method to work with new campaign structure
578
595
  * @param pageObject - Page object with url and pageName
579
596
  * @param type - Event type
580
597
  */
581
598
  sendEvent(pageObject: any, type: any): void;
599
+ /**
600
+ * Checks if cooldown is currently active
601
+ * Optimized: Check in-memory state first, then handle expiry
602
+ * @returns Boolean indicating if cooldown is active
603
+ */
604
+ isCooldownActive(): boolean;
605
+ /**
606
+ * Starts cooldown timer after a campaign is triggered
607
+ * Converts minutes to milliseconds for calculations
608
+ */
609
+ startCooldown(): void;
610
+ /**
611
+ * Clears cooldown state from memory and sessionStorage
612
+ */
613
+ clearCooldown(): void;
614
+ /**
615
+ * Persists cooldown state to sessionStorage for multi-page apps
616
+ * No error handling needed - in-memory state continues to work in SPAs
617
+ */
618
+ persistCooldownState(): void;
619
+ /**
620
+ * Restores cooldown state from sessionStorage on initialization
621
+ * Only called during page load/refresh - has error handling fallback
622
+ */
623
+ restoreCooldownState(): void;
624
+ /**
625
+ * Initialize chat session state from sessionStorage
626
+ */
627
+ initializeChatSessionState(): void;
628
+ /**
629
+ * Check if chat window is currently open
630
+ * Note: When minimize class is present, chat window is actually OPEN
631
+ * @returns true if chat window is open, false if closed/minimized
632
+ */
633
+ isChatWindowOpen(): boolean;
634
+ /**
635
+ * Update chat session state based on received events
636
+ * Handles Session_Start, Session_End, and Bot_Active events
637
+ * @param eventType - Type of event received
638
+ * @param data - Event data
639
+ */
640
+ updateChatSessionState(eventType: 'Session_Start' | 'Session_End' | 'Bot_Active', data: any): void;
582
641
  }
583
642
  export default ProactiveWebCampaignPlugin;