@ada-support/embed2 1.7.27 → 1.7.29
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.
- package/dist/npm-entry/client/embed.d.ts +2 -1
- package/dist/npm-entry/common/constants/events.d.ts +2 -0
- package/dist/npm-entry/common/lib/channel.d.ts +3 -1
- package/dist/npm-entry/common/models/client/index.d.ts +2 -0
- package/dist/npm-entry/common/types/http.d.ts +3 -0
- package/dist/npm-entry/index.js +37 -5
- package/dist/npm-entry/proactiveConversations/types.d.ts +16 -0
- package/package.json +4 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CampaignParams, ResetParams, StartOptions, WindowInfo } from "@ada-support/embed-types";
|
|
1
|
+
import type { CampaignParams, ResetParams, StartOptions, TriggerProactiveParams, WindowInfo } from "@ada-support/embed-types";
|
|
2
2
|
import { MessageService } from "client/lib/message-service";
|
|
3
3
|
import { StoreProxy } from "client/lib/store-proxy";
|
|
4
4
|
import "client/lib/error-tracker";
|
|
@@ -20,5 +20,6 @@ export declare function createEmbed(adaSettings: StartOptions): {
|
|
|
20
20
|
readonly createProactive: (body: string, duration: number, responseId?: string) => Promise<void>;
|
|
21
21
|
readonly closeCampaign: () => Promise<void>;
|
|
22
22
|
readonly setDeviceToken: (token: string) => Promise<void>;
|
|
23
|
+
readonly triggerProactive: (triggerProactiveParams: TriggerProactiveParams) => Promise<void>;
|
|
23
24
|
};
|
|
24
25
|
export declare type Embed = ReturnType<typeof createEmbed>;
|
|
@@ -74,6 +74,8 @@ export declare const CLOSE_CAMPAIGN = "CLOSE_CAMPAIGN";
|
|
|
74
74
|
export declare const CLOSE_CAMPAIGN_RESPONSE = "CLOSE_CAMPAIGN_RESPONSE";
|
|
75
75
|
export declare const SET_DEVICE_TOKEN = "SET_DEVICE_TOKEN";
|
|
76
76
|
export declare const SET_DEVICE_TOKEN_RESPONSE = "SET_DEVICE_TOKEN_RESPONSE";
|
|
77
|
+
export declare const TRIGGER_PROACTIVE = "TRIGGER_PROACTIVE";
|
|
78
|
+
export declare const TRIGGER_PROACTIVE_RESPONSE = "TRIGGER_PROACTIVE_RESPONSE";
|
|
77
79
|
export declare const SEND_GREETING = "SEND_GREETING";
|
|
78
80
|
/**
|
|
79
81
|
* Fetch Event Status
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CampaignParams, ResetParams } from "@ada-support/embed-types";
|
|
1
|
+
import type { CampaignParams, ResetParams, TriggerProactiveParams } from "@ada-support/embed-types";
|
|
2
2
|
import type { FetchEventStatusType } from "common/constants/events";
|
|
3
3
|
import type { SendGreetingParams, StoreDispatchPayload, StoreGetPayload, TrackEventParams } from "common/types";
|
|
4
4
|
import type { AdaCustomEvent, Refhandler } from "common/types/events";
|
|
@@ -33,6 +33,7 @@ export interface EmbedRequestPayloadByEvent {
|
|
|
33
33
|
SET_LANGUAGE: {
|
|
34
34
|
language: string;
|
|
35
35
|
};
|
|
36
|
+
TRIGGER_PROACTIVE: TriggerProactiveParams;
|
|
36
37
|
}
|
|
37
38
|
export declare type EmbedRequestEvent = keyof EmbedRequestPayloadByEvent;
|
|
38
39
|
export interface EmbedResponsePayloadByEvent {
|
|
@@ -65,6 +66,7 @@ export interface EmbedResponsePayloadByEvent {
|
|
|
65
66
|
"chat_INIT": unknown;
|
|
66
67
|
"x-storage_INIT": unknown;
|
|
67
68
|
"SET_DEVICE_TOKEN_RESPONSE": unknown;
|
|
69
|
+
"TRIGGER_PROACTIVE_RESPONSE": unknown;
|
|
68
70
|
}
|
|
69
71
|
export declare type EmbedResponseEvent = keyof EmbedResponsePayloadByEvent;
|
|
70
72
|
export declare type EmbedEvent = EmbedRequestEvent | EmbedResponseEvent;
|
|
@@ -2,6 +2,7 @@ import type { BusinessEvent } from "businessEvents/types";
|
|
|
2
2
|
import type { ChatButton, ClientResponse, CurrentIntro, Features } from "common/types/http";
|
|
3
3
|
import type { LanguageKey, LanguageMap } from "common/types/languages";
|
|
4
4
|
import type { MarketingCampaign } from "src/campaigns/types";
|
|
5
|
+
import type { ProactiveConversations } from "src/proactiveConversations/types";
|
|
5
6
|
export declare class Client {
|
|
6
7
|
tint: string;
|
|
7
8
|
chat: boolean;
|
|
@@ -31,6 +32,7 @@ export declare class Client {
|
|
|
31
32
|
};
|
|
32
33
|
};
|
|
33
34
|
translated_languages: string[];
|
|
35
|
+
proactive_conversations?: ProactiveConversations;
|
|
34
36
|
[key: string]: unknown;
|
|
35
37
|
constructor(clientResponse: ClientResponse["client"]);
|
|
36
38
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { BusinessEvent } from "businessEvents/types";
|
|
2
2
|
import type { LanguageKey } from "common/types/languages";
|
|
3
|
+
import type { ProactiveConversations } from "src/proactiveConversations/types";
|
|
3
4
|
export interface ChatButton {
|
|
4
5
|
size: number;
|
|
5
6
|
background_color: string;
|
|
@@ -36,6 +37,7 @@ export interface ClientObject {
|
|
|
36
37
|
features: Features;
|
|
37
38
|
marketing_campaigns_order?: string[];
|
|
38
39
|
translated_languages: string[];
|
|
40
|
+
proactive_conversations?: ProactiveConversations;
|
|
39
41
|
[key: string]: unknown;
|
|
40
42
|
}
|
|
41
43
|
export interface CachedClientObject {
|
|
@@ -54,6 +56,7 @@ export interface CachedClientObject {
|
|
|
54
56
|
features: Features;
|
|
55
57
|
business_events?: BusinessEvent[];
|
|
56
58
|
marketing_campaigns_order?: string[];
|
|
59
|
+
proactive_conversations?: ProactiveConversations;
|
|
57
60
|
[key: string]: unknown;
|
|
58
61
|
}
|
|
59
62
|
export interface ClientResponse {
|
package/dist/npm-entry/index.js
CHANGED
|
@@ -13949,7 +13949,7 @@ const client = new BrowserClient({
|
|
|
13949
13949
|
return event;
|
|
13950
13950
|
},
|
|
13951
13951
|
environment: "production",
|
|
13952
|
-
release: "1.7.
|
|
13952
|
+
release: "1.7.29-6752092",
|
|
13953
13953
|
sampleRate: 0.25,
|
|
13954
13954
|
autoSessionTracking: false,
|
|
13955
13955
|
// Integrations don't seem to work with Sentry: https://github.com/getsentry/sentry-javascript/issues/2541
|
|
@@ -14064,6 +14064,8 @@ const CLOSE_CAMPAIGN = "CLOSE_CAMPAIGN";
|
|
|
14064
14064
|
const CLOSE_CAMPAIGN_RESPONSE = "CLOSE_CAMPAIGN_RESPONSE";
|
|
14065
14065
|
const SET_DEVICE_TOKEN = "SET_DEVICE_TOKEN";
|
|
14066
14066
|
const SET_DEVICE_TOKEN_RESPONSE = "SET_DEVICE_TOKEN_RESPONSE";
|
|
14067
|
+
const TRIGGER_PROACTIVE = "TRIGGER_PROACTIVE";
|
|
14068
|
+
const TRIGGER_PROACTIVE_RESPONSE = "TRIGGER_PROACTIVE_RESPONSE";
|
|
14067
14069
|
|
|
14068
14070
|
// Tells chat to send a greeting
|
|
14069
14071
|
const SEND_GREETING = "SEND_GREETING";
|
|
@@ -14521,7 +14523,7 @@ function getEmbedURL(_ref) {
|
|
|
14521
14523
|
} else {
|
|
14522
14524
|
host = `http://${handle}.localhost:9001`;
|
|
14523
14525
|
}
|
|
14524
|
-
return `${host}/embed/${frameName}/${"
|
|
14526
|
+
return `${host}/embed/${frameName}/${"6752092"}/index.html`;
|
|
14525
14527
|
}
|
|
14526
14528
|
function constructQueryString(query) {
|
|
14527
14529
|
return Object.keys(query).map(key => {
|
|
@@ -15615,6 +15617,7 @@ class Client {
|
|
|
15615
15617
|
_defineProperty(this, "marketing_campaigns", void 0);
|
|
15616
15618
|
_defineProperty(this, "ui_settings", void 0);
|
|
15617
15619
|
_defineProperty(this, "translated_languages", void 0);
|
|
15620
|
+
_defineProperty(this, "proactive_conversations", void 0);
|
|
15618
15621
|
const {
|
|
15619
15622
|
chat,
|
|
15620
15623
|
chat_button: chatButton,
|
|
@@ -15699,9 +15702,9 @@ async function log(message, extra, options) {
|
|
|
15699
15702
|
service: "embed",
|
|
15700
15703
|
env: "production",
|
|
15701
15704
|
embedVersion: 2,
|
|
15702
|
-
version: "1.7.
|
|
15705
|
+
version: "1.7.29",
|
|
15703
15706
|
isNpm: true,
|
|
15704
|
-
commitHash: "
|
|
15707
|
+
commitHash: "6752092"
|
|
15705
15708
|
}))
|
|
15706
15709
|
});
|
|
15707
15710
|
}
|
|
@@ -16748,7 +16751,7 @@ class ChatFrame extends d {
|
|
|
16748
16751
|
const hostPageUrlParams = new URL(window.location.href).searchParams;
|
|
16749
16752
|
const smsToken = hostPageUrlParams.get("adaSMSToken");
|
|
16750
16753
|
const queryParams = {
|
|
16751
|
-
embedVersion: "
|
|
16754
|
+
embedVersion: "6752092".slice(0, 7),
|
|
16752
16755
|
greeting,
|
|
16753
16756
|
language,
|
|
16754
16757
|
skipGreeting,
|
|
@@ -18242,6 +18245,25 @@ class Container extends d {
|
|
|
18242
18245
|
this.handleSettingDeviceToken(localChannel, payload, id);
|
|
18243
18246
|
break;
|
|
18244
18247
|
}
|
|
18248
|
+
case TRIGGER_PROACTIVE:
|
|
18249
|
+
{
|
|
18250
|
+
var _client$proactive_con;
|
|
18251
|
+
if (!client) {
|
|
18252
|
+
throw new AdaEmbedError("`client` is not defined");
|
|
18253
|
+
}
|
|
18254
|
+
const language = adaSettings.language || get_browser_language();
|
|
18255
|
+
const {
|
|
18256
|
+
messageKey
|
|
18257
|
+
} = payload;
|
|
18258
|
+
if ((_client$proactive_con = client.proactive_conversations) !== null && _client$proactive_con !== void 0 && _client$proactive_con[messageKey]) {
|
|
18259
|
+
// eslint-disable-next-line no-console
|
|
18260
|
+
console.log("Proactive message: ", client.proactive_conversations[messageKey].messages[language]);
|
|
18261
|
+
} else {
|
|
18262
|
+
// eslint-disable-next-line no-console
|
|
18263
|
+
console.log("Proactive message not found");
|
|
18264
|
+
}
|
|
18265
|
+
break;
|
|
18266
|
+
}
|
|
18245
18267
|
default:
|
|
18246
18268
|
{
|
|
18247
18269
|
// Do nothing
|
|
@@ -18780,6 +18802,10 @@ function createEmbed(adaSettings) {
|
|
|
18780
18802
|
await localChannel.fetch(SET_DEVICE_TOKEN, SET_DEVICE_TOKEN_RESPONSE, {
|
|
18781
18803
|
token
|
|
18782
18804
|
});
|
|
18805
|
+
},
|
|
18806
|
+
async triggerProactive(triggerProactiveParams) {
|
|
18807
|
+
await initialized;
|
|
18808
|
+
await localChannel.fetch(TRIGGER_PROACTIVE, TRIGGER_PROACTIVE_RESPONSE, triggerProactiveParams);
|
|
18783
18809
|
}
|
|
18784
18810
|
};
|
|
18785
18811
|
}
|
|
@@ -18947,6 +18973,12 @@ function createEmbedInterface() {
|
|
|
18947
18973
|
channel.postMessage("TRIGGER_ANSWER", {
|
|
18948
18974
|
answerId
|
|
18949
18975
|
});
|
|
18976
|
+
},
|
|
18977
|
+
triggerProactive: triggerProactiveParams => {
|
|
18978
|
+
if (!embed) {
|
|
18979
|
+
throw EMBED_NOT_INITIALIZED_ERROR;
|
|
18980
|
+
}
|
|
18981
|
+
return embed.triggerProactive(triggerProactiveParams);
|
|
18950
18982
|
}
|
|
18951
18983
|
});
|
|
18952
18984
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export interface ProactiveConversations {
|
|
2
|
+
[messageKey: string]: {
|
|
3
|
+
messages: {
|
|
4
|
+
[language: string]: string[];
|
|
5
|
+
};
|
|
6
|
+
modality_config: {
|
|
7
|
+
[modality: string]: {
|
|
8
|
+
active: boolean;
|
|
9
|
+
url_trigger_conditions: string[];
|
|
10
|
+
delay: number;
|
|
11
|
+
duration: number;
|
|
12
|
+
frequency: string;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ada-support/embed2",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.29",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/npm-entry",
|
|
6
6
|
"typings": "dist/npm-entry/index-npm.d.ts",
|
|
@@ -60,6 +60,7 @@
|
|
|
60
60
|
"enzyme": "^3.11.0",
|
|
61
61
|
"enzyme-adapter-preact-pure": "^4.0.1",
|
|
62
62
|
"eslint": "^8.8.0",
|
|
63
|
+
"eslint-config-prettier": "^8.5.0",
|
|
63
64
|
"eslint-plugin-chai-friendly": "^0.7.2",
|
|
64
65
|
"eslint-plugin-compat": "^4.0.2",
|
|
65
66
|
"eslint-plugin-cypress": "^2.12.1",
|
|
@@ -78,7 +79,7 @@
|
|
|
78
79
|
"webpack-dev-server": "^4.3.1"
|
|
79
80
|
},
|
|
80
81
|
"dependencies": {
|
|
81
|
-
"@ada-support/embed-types": "^1.
|
|
82
|
+
"@ada-support/embed-types": "^1.8.0",
|
|
82
83
|
"@ada-support/web-storage": "^1.2.6",
|
|
83
84
|
"@babel/core": "^7.23.2",
|
|
84
85
|
"@babel/plugin-proposal-class-properties": "^7.16.7",
|
|
@@ -95,7 +96,6 @@
|
|
|
95
96
|
"babel-loader": "9.1.2",
|
|
96
97
|
"babel-preset-preact": "^2.0.0",
|
|
97
98
|
"dotenv": "^8.2.0",
|
|
98
|
-
"eslint-config-prettier": "^8.5.0",
|
|
99
99
|
"focus-visible": "^5.2.0",
|
|
100
100
|
"html-webpack-plugin": "^5.5.0",
|
|
101
101
|
"json-stable-stringify": "^1.0.1",
|
|
@@ -105,7 +105,7 @@
|
|
|
105
105
|
"typescript": "^4.6.2",
|
|
106
106
|
"uniqid": "^5.3.0",
|
|
107
107
|
"webpack": "^5.76.0",
|
|
108
|
-
"webpack-cli": "^
|
|
108
|
+
"webpack-cli": "^5.1.4",
|
|
109
109
|
"webpack-merge": "^5.8.0"
|
|
110
110
|
},
|
|
111
111
|
"resolutions": {
|