@botonic/webchat-core 2.26.0 → 2.28.0
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/CHANGELOG.md +24 -0
- package/package.json +7 -2
- package/src/index.d.ts +1 -0
- package/src/index.js +2 -0
- package/src/index.js.map +1 -1
- package/src/lib/controllers/public.d.ts +73 -1
- package/src/lib/controllers/public.js +48 -0
- package/src/lib/controllers/public.js.map +1 -1
- package/src/lib/controllers/webchat.d.ts +43 -2
- package/src/lib/controllers/webchat.js +53 -2
- package/src/lib/controllers/webchat.js.map +1 -1
- package/src/lib/domain/index.d.ts +8 -2
- package/src/lib/domain/index.js.map +1 -1
- package/src/lib/infra/clients/hubtype-api.d.ts +3 -2
- package/src/lib/infra/clients/hubtype-api.js +4 -3
- package/src/lib/infra/clients/hubtype-api.js.map +1 -1
- package/src/lib/infra/clients/types.d.ts +2 -0
- package/src/lib/infra/repositories/storage/types.d.ts +2 -1
- package/src/lib/machines/message.d.ts +34 -1
- package/src/lib/machines/message.js +23 -15
- package/src/lib/machines/message.js.map +1 -1
- package/src/lib/machines/webchat.d.ts +147 -12
- package/src/lib/machines/webchat.js +224 -61
- package/src/lib/machines/webchat.js.map +1 -1
- package/src/lib/messages/factory.d.ts +89 -0
- package/src/lib/messages/factory.js +82 -0
- package/src/lib/messages/factory.js.map +1 -0
- package/src/lib/messages/index.d.ts +4 -0
- package/src/lib/messages/index.js +5 -0
- package/src/lib/messages/index.js.map +1 -0
- package/src/lib/messages/realtime/factory.d.ts +53 -0
- package/src/lib/messages/realtime/factory.js +70 -0
- package/src/lib/messages/realtime/factory.js.map +1 -0
- package/src/lib/messages/realtime/index.d.ts +2 -0
- package/src/lib/messages/realtime/index.js +3 -0
- package/src/lib/messages/realtime/index.js.map +1 -0
- package/src/lib/messages/realtime/realtime-response-message.d.ts +52 -0
- package/src/lib/messages/realtime/realtime-response-message.js +73 -0
- package/src/lib/messages/realtime/realtime-response-message.js.map +1 -0
- package/src/lib/messages/user/factory.d.ts +53 -0
- package/src/lib/messages/user/factory.js +59 -0
- package/src/lib/messages/user/factory.js.map +1 -0
- package/src/lib/messages/user/index.d.ts +2 -0
- package/src/lib/messages/user/index.js +3 -0
- package/src/lib/messages/user/index.js.map +1 -0
- package/src/lib/messages/user/user-input-message.d.ts +35 -0
- package/src/lib/messages/user/user-input-message.js +59 -0
- package/src/lib/messages/user/user-input-message.js.map +1 -0
- package/src/lib/messages/webchat-message.d.ts +61 -0
- package/src/lib/messages/webchat-message.js +74 -0
- package/src/lib/messages/webchat-message.js.map +1 -0
- package/src/lib/services/webchat-service.d.ts +21 -2
- package/src/lib/services/webchat-service.js +64 -10
- package/src/lib/services/webchat-service.js.map +1 -1
- package/src/lib/utils/locale-detection.d.ts +1 -1
- package/src/lib/utils/locale-detection.js +3 -3
- package/src/lib/utils/locale-detection.js.map +1 -1
- package/src/lib/webview/types.d.ts +0 -12
- package/src/lib/webview/types.js.map +1 -1
- package/src/lib/webview/utils.d.ts +17 -3
- package/src/lib/webview/utils.js +4 -9
- package/src/lib/webview/utils.js.map +1 -1
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
// ============================================================================
|
|
2
|
+
// FACTORY
|
|
3
|
+
// ============================================================================
|
|
4
|
+
import { BotonicAudioData, BotonicButtonMessageData, BotonicCarouselData, BotonicCustomData, BotonicDocumentData, BotonicImageData, BotonicLocationData, BotonicPostbackData, BotonicTextData, BotonicTypingEventData, BotonicVideoData, MessageType, } from '@botonic/shared';
|
|
5
|
+
import { strUuidToUuidFormat } from '@botonic/shared';
|
|
6
|
+
import { RealtimeResponseMessageFactory } from './realtime';
|
|
7
|
+
import { WebchatMessage } from './webchat-message';
|
|
8
|
+
export class WebchatMessageFactory {
|
|
9
|
+
static fromUserInput(userInput) {
|
|
10
|
+
return new WebchatMessage(userInput.type, userInput.data, {
|
|
11
|
+
provider_id: userInput.provider_id,
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
static fromRealtimeRawResponseMessage(realtimeRawResponseMessage, providerId) {
|
|
15
|
+
const realtimeResponseMessage = RealtimeResponseMessageFactory.fromRealtimeRawResponseMessage(realtimeRawResponseMessage);
|
|
16
|
+
return new WebchatMessage(realtimeResponseMessage.type, realtimeResponseMessage.data, {
|
|
17
|
+
provider_id: providerId,
|
|
18
|
+
message_id: strUuidToUuidFormat(realtimeResponseMessage.message_id),
|
|
19
|
+
sent_by: realtimeResponseMessage.sent_by,
|
|
20
|
+
bot_interaction_id: realtimeResponseMessage.bot_interaction_id,
|
|
21
|
+
feedback_enabled: realtimeResponseMessage.feedback_enabled,
|
|
22
|
+
inference_id: realtimeResponseMessage.inference_id,
|
|
23
|
+
typing: realtimeResponseMessage.typing,
|
|
24
|
+
delay: realtimeResponseMessage.delay,
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
static fromStoredMessage(storedMessage) {
|
|
28
|
+
return new WebchatMessage(storedMessage.type, storedMessage.data, {
|
|
29
|
+
provider_id: storedMessage.provider_id,
|
|
30
|
+
message_id: strUuidToUuidFormat(storedMessage.message_id),
|
|
31
|
+
sent_by: storedMessage.sent_by,
|
|
32
|
+
bot_interaction_id: storedMessage.bot_interaction_id,
|
|
33
|
+
feedback_enabled: storedMessage.feedback_enabled,
|
|
34
|
+
inference_id: storedMessage.inference_id,
|
|
35
|
+
typing: storedMessage.typing,
|
|
36
|
+
delay: storedMessage.delay,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
static createText({ text, payload, metadata, }) {
|
|
40
|
+
return new WebchatMessage(MessageType.Text, new BotonicTextData(text, payload), metadata);
|
|
41
|
+
}
|
|
42
|
+
static createPostback({ payload, metadata, }) {
|
|
43
|
+
return new WebchatMessage(MessageType.Postback, new BotonicPostbackData(payload), metadata);
|
|
44
|
+
}
|
|
45
|
+
static createAudio({ attachmentUrl, attachmentContent, mimeType, filename, metadata, }) {
|
|
46
|
+
return new WebchatMessage(MessageType.Audio, new BotonicAudioData(attachmentUrl, attachmentContent, undefined, mimeType, filename), metadata);
|
|
47
|
+
}
|
|
48
|
+
static createImage({ attachmentUrl, attachmentContent, mimeType, filename, metadata, }) {
|
|
49
|
+
return new WebchatMessage(MessageType.Image, new BotonicImageData(attachmentUrl, attachmentContent, undefined, mimeType, filename), metadata);
|
|
50
|
+
}
|
|
51
|
+
static createVideo({ attachmentUrl, attachmentContent, mimeType, filename, metadata, }) {
|
|
52
|
+
return new WebchatMessage(MessageType.Video, new BotonicVideoData(attachmentUrl, attachmentContent, undefined, mimeType, filename), metadata);
|
|
53
|
+
}
|
|
54
|
+
static createDocument({ attachmentUrl, attachmentContent, mimeType, filename, metadata, }) {
|
|
55
|
+
return new WebchatMessage(MessageType.Document, new BotonicDocumentData(attachmentUrl, attachmentContent, undefined, mimeType, filename), metadata);
|
|
56
|
+
}
|
|
57
|
+
static createMedia({ file, attachmentUrl, metadata, }) {
|
|
58
|
+
if (file.type.startsWith('image/')) {
|
|
59
|
+
return new WebchatMessage(MessageType.Image, new BotonicImageData(attachmentUrl, undefined, undefined, file.type, file.name), metadata);
|
|
60
|
+
}
|
|
61
|
+
if (file.type.startsWith('video/')) {
|
|
62
|
+
return new WebchatMessage(MessageType.Video, new BotonicVideoData(attachmentUrl, undefined, undefined, file.type, file.name), metadata);
|
|
63
|
+
}
|
|
64
|
+
return new WebchatMessage(MessageType.Document, new BotonicDocumentData(attachmentUrl, undefined, undefined, file.type, file.name), metadata);
|
|
65
|
+
}
|
|
66
|
+
static createLocation({ latitude, longitude, title, address, metadata, }) {
|
|
67
|
+
return new WebchatMessage(MessageType.Location, new BotonicLocationData(latitude, longitude, title, address), metadata);
|
|
68
|
+
}
|
|
69
|
+
static createTypingEvent({ eventName, metadata, }) {
|
|
70
|
+
return new WebchatMessage(MessageType.TypingEvent, new BotonicTypingEventData(eventName), metadata);
|
|
71
|
+
}
|
|
72
|
+
static createButtonMessage({ text, buttons, metadata, }) {
|
|
73
|
+
return new WebchatMessage(MessageType.ButtonMessage, new BotonicButtonMessageData(text, buttons), metadata);
|
|
74
|
+
}
|
|
75
|
+
static createCarousel({ elements, text, metadata, }) {
|
|
76
|
+
return new WebchatMessage(MessageType.Carousel, new BotonicCarouselData(elements, text), metadata);
|
|
77
|
+
}
|
|
78
|
+
static createCustom({ name, props, metadata, }) {
|
|
79
|
+
return new WebchatMessage(MessageType.Custom, new BotonicCustomData(name, props), metadata);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../../../../../libs/botonic/webchat-core/src/lib/messages/factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../libs/botonic/webchat-core/src/lib/messages/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,QAAQ,CAAA;AACtB,cAAc,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { RealtimeResponseMessageMetadata } from '@botonic/shared';
|
|
2
|
+
import { BotonicButtonContent, BotonicCarouselElement, TypingEventName } from '@botonic/shared';
|
|
3
|
+
import { RealtimeRawResponseMessage, RealtimeResponseMessageAudio, RealtimeResponseMessageButtonMessage, RealtimeResponseMessageCarousel, RealtimeResponseMessageCustom, RealtimeResponseMessageDocument, RealtimeResponseMessageImage, RealtimeResponseMessageLocation, RealtimeResponseMessageText, RealtimeResponseMessageType, RealtimeResponseMessageTypingEvent, RealtimeResponseMessageVideo } from './realtime-response-message';
|
|
4
|
+
export declare class RealtimeResponseMessageFactory {
|
|
5
|
+
static createText({ text, payload, metadata, }: {
|
|
6
|
+
text: string;
|
|
7
|
+
payload: string | undefined;
|
|
8
|
+
metadata: RealtimeResponseMessageMetadata;
|
|
9
|
+
}): RealtimeResponseMessageText;
|
|
10
|
+
static createAudio({ attachmentUrl, metadata, }: {
|
|
11
|
+
attachmentUrl: string;
|
|
12
|
+
metadata: RealtimeResponseMessageMetadata;
|
|
13
|
+
}): RealtimeResponseMessageAudio;
|
|
14
|
+
static createImage({ attachmentUrl, metadata, }: {
|
|
15
|
+
attachmentUrl: string;
|
|
16
|
+
metadata: RealtimeResponseMessageMetadata;
|
|
17
|
+
}): RealtimeResponseMessageImage;
|
|
18
|
+
static createVideo({ attachmentUrl, metadata, }: {
|
|
19
|
+
attachmentUrl: string;
|
|
20
|
+
metadata: RealtimeResponseMessageMetadata;
|
|
21
|
+
}): RealtimeResponseMessageVideo;
|
|
22
|
+
static createDocument({ attachmentUrl, metadata, }: {
|
|
23
|
+
attachmentUrl: string;
|
|
24
|
+
metadata: RealtimeResponseMessageMetadata;
|
|
25
|
+
}): RealtimeResponseMessageDocument;
|
|
26
|
+
static createLocation({ latitude, longitude, title, address, metadata, }: {
|
|
27
|
+
latitude: number;
|
|
28
|
+
longitude: number;
|
|
29
|
+
title?: string;
|
|
30
|
+
address?: string;
|
|
31
|
+
metadata: RealtimeResponseMessageMetadata;
|
|
32
|
+
}): RealtimeResponseMessageLocation;
|
|
33
|
+
static createButtonMessage({ text, buttons, metadata, }: {
|
|
34
|
+
text: string;
|
|
35
|
+
buttons: BotonicButtonContent[];
|
|
36
|
+
metadata: RealtimeResponseMessageMetadata;
|
|
37
|
+
}): RealtimeResponseMessageButtonMessage;
|
|
38
|
+
static createCarousel({ elements, text, metadata, }: {
|
|
39
|
+
elements: BotonicCarouselElement[];
|
|
40
|
+
text?: string;
|
|
41
|
+
metadata: RealtimeResponseMessageMetadata;
|
|
42
|
+
}): RealtimeResponseMessageCarousel;
|
|
43
|
+
static createCustom({ name, props, metadata, }: {
|
|
44
|
+
name: string;
|
|
45
|
+
props: Record<string, unknown>;
|
|
46
|
+
metadata: RealtimeResponseMessageMetadata;
|
|
47
|
+
}): RealtimeResponseMessageCustom;
|
|
48
|
+
static createTypingEvent({ eventName, metadata, }: {
|
|
49
|
+
eventName: TypingEventName;
|
|
50
|
+
metadata: RealtimeResponseMessageMetadata;
|
|
51
|
+
}): RealtimeResponseMessageTypingEvent;
|
|
52
|
+
static fromRealtimeRawResponseMessage(rawResponseMessage: RealtimeRawResponseMessage): RealtimeResponseMessageType;
|
|
53
|
+
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { WebchatClientSettings } from '@botonic/shared';
|
|
2
|
+
import { BotonicAudioData, BotonicButtonMessageData, BotonicCarouselData, BotonicCustomData, BotonicDocumentData, BotonicImageData, BotonicLocationData, BotonicTextData, BotonicTypingEventData, BotonicVideoData, MessageType, } from '@botonic/shared';
|
|
3
|
+
import { RealtimeResponseMessageAudio, RealtimeResponseMessageButtonMessage, RealtimeResponseMessageCarousel, RealtimeResponseMessageCustom, RealtimeResponseMessageDocument, RealtimeResponseMessageImage, RealtimeResponseMessageLocation, RealtimeResponseMessageText, RealtimeResponseMessageTypingEvent, RealtimeResponseMessageVideo, RealtimeResponseMessageWebchatClientSettings, } from './realtime-response-message';
|
|
4
|
+
// ============================================================================
|
|
5
|
+
// FACTORY
|
|
6
|
+
// ============================================================================
|
|
7
|
+
export class RealtimeResponseMessageFactory {
|
|
8
|
+
static createText({ text, payload, metadata, }) {
|
|
9
|
+
return new RealtimeResponseMessageText(new BotonicTextData(text, payload), metadata);
|
|
10
|
+
}
|
|
11
|
+
static createAudio({ attachmentUrl, metadata, }) {
|
|
12
|
+
return new RealtimeResponseMessageAudio(new BotonicAudioData(attachmentUrl), metadata);
|
|
13
|
+
}
|
|
14
|
+
static createImage({ attachmentUrl, metadata, }) {
|
|
15
|
+
return new RealtimeResponseMessageImage(new BotonicImageData(attachmentUrl), metadata);
|
|
16
|
+
}
|
|
17
|
+
static createVideo({ attachmentUrl, metadata, }) {
|
|
18
|
+
return new RealtimeResponseMessageVideo(new BotonicVideoData(attachmentUrl), metadata);
|
|
19
|
+
}
|
|
20
|
+
static createDocument({ attachmentUrl, metadata, }) {
|
|
21
|
+
return new RealtimeResponseMessageDocument(new BotonicDocumentData(attachmentUrl), metadata);
|
|
22
|
+
}
|
|
23
|
+
static createLocation({ latitude, longitude, title, address, metadata, }) {
|
|
24
|
+
return new RealtimeResponseMessageLocation(new BotonicLocationData(latitude, longitude, title, address), metadata);
|
|
25
|
+
}
|
|
26
|
+
static createButtonMessage({ text, buttons, metadata, }) {
|
|
27
|
+
return new RealtimeResponseMessageButtonMessage(new BotonicButtonMessageData(text, buttons), metadata);
|
|
28
|
+
}
|
|
29
|
+
static createCarousel({ elements, text, metadata, }) {
|
|
30
|
+
return new RealtimeResponseMessageCarousel(new BotonicCarouselData(elements, text), metadata);
|
|
31
|
+
}
|
|
32
|
+
static createCustom({ name, props, metadata, }) {
|
|
33
|
+
return new RealtimeResponseMessageCustom(new BotonicCustomData(name, props), metadata);
|
|
34
|
+
}
|
|
35
|
+
static createTypingEvent({ eventName, metadata, }) {
|
|
36
|
+
return new RealtimeResponseMessageTypingEvent(new BotonicTypingEventData(eventName), metadata);
|
|
37
|
+
}
|
|
38
|
+
static fromRealtimeRawResponseMessage(rawResponseMessage) {
|
|
39
|
+
console.log('received new message', { rawResponseMessage });
|
|
40
|
+
// Since RealtimeRawResponseMessage extends RealtimeResponseMessageMetadata,
|
|
41
|
+
// we can pass the message itself as the metadata
|
|
42
|
+
switch (rawResponseMessage.type) {
|
|
43
|
+
case MessageType.Text:
|
|
44
|
+
return new RealtimeResponseMessageText(rawResponseMessage.data, rawResponseMessage);
|
|
45
|
+
case MessageType.Audio:
|
|
46
|
+
return new RealtimeResponseMessageAudio(rawResponseMessage.data, rawResponseMessage);
|
|
47
|
+
case MessageType.Image:
|
|
48
|
+
return new RealtimeResponseMessageImage(rawResponseMessage.data, rawResponseMessage);
|
|
49
|
+
case MessageType.Video:
|
|
50
|
+
return new RealtimeResponseMessageVideo(rawResponseMessage.data, rawResponseMessage);
|
|
51
|
+
case MessageType.Document:
|
|
52
|
+
return new RealtimeResponseMessageDocument(rawResponseMessage.data, rawResponseMessage);
|
|
53
|
+
case MessageType.Location:
|
|
54
|
+
return new RealtimeResponseMessageLocation(rawResponseMessage.data, rawResponseMessage);
|
|
55
|
+
case MessageType.ButtonMessage:
|
|
56
|
+
return new RealtimeResponseMessageButtonMessage(rawResponseMessage.data, rawResponseMessage);
|
|
57
|
+
case MessageType.Carousel:
|
|
58
|
+
return new RealtimeResponseMessageCarousel(rawResponseMessage.data, rawResponseMessage);
|
|
59
|
+
case MessageType.Custom:
|
|
60
|
+
return new RealtimeResponseMessageCustom(rawResponseMessage.data, rawResponseMessage);
|
|
61
|
+
case MessageType.TypingEvent:
|
|
62
|
+
return new RealtimeResponseMessageTypingEvent(rawResponseMessage.data, rawResponseMessage);
|
|
63
|
+
case MessageType.WebchatClientSettings:
|
|
64
|
+
return new RealtimeResponseMessageWebchatClientSettings(new WebchatClientSettings(rawResponseMessage.data), rawResponseMessage);
|
|
65
|
+
default:
|
|
66
|
+
throw new Error(`Unsupported message type: ${rawResponseMessage.type}`);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../../../../../../libs/botonic/webchat-core/src/lib/messages/realtime/factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../libs/botonic/webchat-core/src/lib/messages/realtime/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,6BAA6B,CAAA"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { RealtimeResponseMessageMetadata } from '@botonic/shared';
|
|
2
|
+
import { BotonicOutput, OutputMessageType, OutputMessageTypeMap } from '@botonic/shared';
|
|
3
|
+
import { WebchatClientSettings } from '@botonic/shared';
|
|
4
|
+
import { BotonicAudioData, BotonicButtonMessageData, BotonicCarouselData, BotonicCustomData, BotonicDocumentData, BotonicImageData, BotonicLocationData, BotonicTextData, BotonicTypingEventData, BotonicVideoData, MessageSentBy, MessageType } from '@botonic/shared';
|
|
5
|
+
export declare abstract class RealtimeResponseMessage<T extends OutputMessageType = OutputMessageType> extends BotonicOutput<T> implements RealtimeResponseMessageMetadata {
|
|
6
|
+
readonly message_id: string;
|
|
7
|
+
readonly sent_by: MessageSentBy;
|
|
8
|
+
readonly bot_interaction_id?: string;
|
|
9
|
+
readonly feedback_enabled?: boolean;
|
|
10
|
+
readonly inference_id?: string;
|
|
11
|
+
readonly typing?: number;
|
|
12
|
+
readonly delay?: number;
|
|
13
|
+
constructor(type: T, data: OutputMessageTypeMap[T], metadata: RealtimeResponseMessageMetadata);
|
|
14
|
+
}
|
|
15
|
+
export declare class RealtimeResponseMessageText extends RealtimeResponseMessage<MessageType.Text> {
|
|
16
|
+
constructor(data: BotonicTextData, metadata: RealtimeResponseMessageMetadata);
|
|
17
|
+
}
|
|
18
|
+
export declare class RealtimeResponseMessageAudio extends RealtimeResponseMessage<MessageType.Audio> {
|
|
19
|
+
constructor(data: BotonicAudioData, metadata: RealtimeResponseMessageMetadata);
|
|
20
|
+
}
|
|
21
|
+
export declare class RealtimeResponseMessageImage extends RealtimeResponseMessage<MessageType.Image> {
|
|
22
|
+
constructor(data: BotonicImageData, metadata: RealtimeResponseMessageMetadata);
|
|
23
|
+
}
|
|
24
|
+
export declare class RealtimeResponseMessageVideo extends RealtimeResponseMessage<MessageType.Video> {
|
|
25
|
+
constructor(data: BotonicVideoData, metadata: RealtimeResponseMessageMetadata);
|
|
26
|
+
}
|
|
27
|
+
export declare class RealtimeResponseMessageDocument extends RealtimeResponseMessage<MessageType.Document> {
|
|
28
|
+
constructor(data: BotonicDocumentData, metadata: RealtimeResponseMessageMetadata);
|
|
29
|
+
}
|
|
30
|
+
export declare class RealtimeResponseMessageLocation extends RealtimeResponseMessage<MessageType.Location> {
|
|
31
|
+
constructor(data: BotonicLocationData, metadata: RealtimeResponseMessageMetadata);
|
|
32
|
+
}
|
|
33
|
+
export declare class RealtimeResponseMessageButtonMessage extends RealtimeResponseMessage<MessageType.ButtonMessage> {
|
|
34
|
+
constructor(data: BotonicButtonMessageData, metadata: RealtimeResponseMessageMetadata);
|
|
35
|
+
}
|
|
36
|
+
export declare class RealtimeResponseMessageCarousel extends RealtimeResponseMessage<MessageType.Carousel> {
|
|
37
|
+
constructor(data: BotonicCarouselData, metadata: RealtimeResponseMessageMetadata);
|
|
38
|
+
}
|
|
39
|
+
export declare class RealtimeResponseMessageCustom extends RealtimeResponseMessage<MessageType.Custom> {
|
|
40
|
+
constructor(data: BotonicCustomData, metadata: RealtimeResponseMessageMetadata);
|
|
41
|
+
}
|
|
42
|
+
export declare class RealtimeResponseMessageTypingEvent extends RealtimeResponseMessage<MessageType.TypingEvent> {
|
|
43
|
+
constructor(data: BotonicTypingEventData, metadata: RealtimeResponseMessageMetadata);
|
|
44
|
+
}
|
|
45
|
+
export declare class RealtimeResponseMessageWebchatClientSettings extends RealtimeResponseMessage<MessageType.WebchatClientSettings> {
|
|
46
|
+
constructor(data: WebchatClientSettings, metadata: RealtimeResponseMessageMetadata);
|
|
47
|
+
}
|
|
48
|
+
export type RealtimeResponseMessageType = RealtimeResponseMessageText | RealtimeResponseMessageAudio | RealtimeResponseMessageImage | RealtimeResponseMessageVideo | RealtimeResponseMessageDocument | RealtimeResponseMessageLocation | RealtimeResponseMessageButtonMessage | RealtimeResponseMessageCarousel | RealtimeResponseMessageCustom | RealtimeResponseMessageTypingEvent | RealtimeResponseMessageWebchatClientSettings;
|
|
49
|
+
export interface RealtimeRawResponseMessage<T extends OutputMessageType = OutputMessageType> extends RealtimeResponseMessageMetadata {
|
|
50
|
+
type: T;
|
|
51
|
+
data: OutputMessageTypeMap[T];
|
|
52
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { BotonicOutput, } from '@botonic/shared';
|
|
2
|
+
import { MessageType, } from '@botonic/shared';
|
|
3
|
+
// ============================================================================
|
|
4
|
+
// REALTIME RESPONSE MESSAGE (extends Output + adds realtime metadata)
|
|
5
|
+
// ============================================================================
|
|
6
|
+
export class RealtimeResponseMessage extends BotonicOutput {
|
|
7
|
+
constructor(type, data, metadata) {
|
|
8
|
+
super(type, data);
|
|
9
|
+
this.message_id = metadata === null || metadata === void 0 ? void 0 : metadata.message_id;
|
|
10
|
+
this.sent_by = metadata.sent_by;
|
|
11
|
+
this.bot_interaction_id = metadata.bot_interaction_id;
|
|
12
|
+
this.feedback_enabled = metadata.feedback_enabled;
|
|
13
|
+
this.inference_id = metadata.inference_id;
|
|
14
|
+
this.typing = metadata.typing;
|
|
15
|
+
this.delay = metadata.delay;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export class RealtimeResponseMessageText extends RealtimeResponseMessage {
|
|
19
|
+
constructor(data, metadata) {
|
|
20
|
+
super(MessageType.Text, data, metadata);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export class RealtimeResponseMessageAudio extends RealtimeResponseMessage {
|
|
24
|
+
constructor(data, metadata) {
|
|
25
|
+
super(MessageType.Audio, data, metadata);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
export class RealtimeResponseMessageImage extends RealtimeResponseMessage {
|
|
29
|
+
constructor(data, metadata) {
|
|
30
|
+
super(MessageType.Image, data, metadata);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
export class RealtimeResponseMessageVideo extends RealtimeResponseMessage {
|
|
34
|
+
constructor(data, metadata) {
|
|
35
|
+
super(MessageType.Video, data, metadata);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export class RealtimeResponseMessageDocument extends RealtimeResponseMessage {
|
|
39
|
+
constructor(data, metadata) {
|
|
40
|
+
super(MessageType.Document, data, metadata);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
export class RealtimeResponseMessageLocation extends RealtimeResponseMessage {
|
|
44
|
+
constructor(data, metadata) {
|
|
45
|
+
super(MessageType.Location, data, metadata);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
export class RealtimeResponseMessageButtonMessage extends RealtimeResponseMessage {
|
|
49
|
+
constructor(data, metadata) {
|
|
50
|
+
super(MessageType.ButtonMessage, data, metadata);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
export class RealtimeResponseMessageCarousel extends RealtimeResponseMessage {
|
|
54
|
+
constructor(data, metadata) {
|
|
55
|
+
super(MessageType.Carousel, data, metadata);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
export class RealtimeResponseMessageCustom extends RealtimeResponseMessage {
|
|
59
|
+
constructor(data, metadata) {
|
|
60
|
+
super(MessageType.Custom, data, metadata);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
export class RealtimeResponseMessageTypingEvent extends RealtimeResponseMessage {
|
|
64
|
+
constructor(data, metadata) {
|
|
65
|
+
super(MessageType.TypingEvent, data, metadata);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
export class RealtimeResponseMessageWebchatClientSettings extends RealtimeResponseMessage {
|
|
69
|
+
constructor(data, metadata) {
|
|
70
|
+
super(MessageType.WebchatClientSettings, data, metadata);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=realtime-response-message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"realtime-response-message.js","sourceRoot":"","sources":["../../../../../../../../libs/botonic/webchat-core/src/lib/messages/realtime/realtime-response-message.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { UserMessageMetadata } from '@botonic/shared';
|
|
2
|
+
import { BotonicInputType } from '@botonic/shared';
|
|
3
|
+
import { TypingEventName } from '@botonic/shared';
|
|
4
|
+
import { UserInputAudio, UserInputContact, UserInputDocument, UserInputImage, UserInputLocation, UserInputMessage, UserInputPostback, UserInputText, UserInputTypingEvent, UserInputVideo } from './user-input-message';
|
|
5
|
+
export declare class UserInputFactory {
|
|
6
|
+
static createText({ text, payload, metadata, }: {
|
|
7
|
+
text: string;
|
|
8
|
+
payload?: string;
|
|
9
|
+
metadata?: UserMessageMetadata;
|
|
10
|
+
}): UserInputText;
|
|
11
|
+
static createPostback({ payload, metadata, }: {
|
|
12
|
+
payload: string;
|
|
13
|
+
metadata?: UserMessageMetadata;
|
|
14
|
+
}): UserInputPostback;
|
|
15
|
+
static createAudio({ attachmentUrl, metadata, }: {
|
|
16
|
+
attachmentUrl: string;
|
|
17
|
+
metadata?: UserMessageMetadata;
|
|
18
|
+
}): UserInputAudio;
|
|
19
|
+
static createImage({ attachmentUrl, metadata, }: {
|
|
20
|
+
attachmentUrl: string;
|
|
21
|
+
metadata?: UserMessageMetadata;
|
|
22
|
+
}): UserInputImage;
|
|
23
|
+
static createVideo({ attachmentUrl, metadata, }: {
|
|
24
|
+
attachmentUrl: string;
|
|
25
|
+
metadata?: UserMessageMetadata;
|
|
26
|
+
}): UserInputVideo;
|
|
27
|
+
static createDocument({ attachmentUrl, metadata, }: {
|
|
28
|
+
attachmentUrl: string;
|
|
29
|
+
metadata?: UserMessageMetadata;
|
|
30
|
+
}): UserInputDocument;
|
|
31
|
+
static createLocation({ latitude, longitude, title, address, metadata, }: {
|
|
32
|
+
latitude: number;
|
|
33
|
+
longitude: number;
|
|
34
|
+
title?: string;
|
|
35
|
+
address?: string;
|
|
36
|
+
metadata?: UserMessageMetadata;
|
|
37
|
+
}): UserInputLocation;
|
|
38
|
+
static createTypingEvent({ eventName, metadata, }: {
|
|
39
|
+
eventName: TypingEventName;
|
|
40
|
+
metadata?: UserMessageMetadata;
|
|
41
|
+
}): UserInputTypingEvent;
|
|
42
|
+
static createContact({ firstName, lastName, phoneNumber, vcard, metadata, }: {
|
|
43
|
+
firstName: string;
|
|
44
|
+
lastName?: string;
|
|
45
|
+
phoneNumber?: string;
|
|
46
|
+
vcard?: string;
|
|
47
|
+
metadata?: UserMessageMetadata;
|
|
48
|
+
}): UserInputContact;
|
|
49
|
+
static fromBotonicInput({ input, metadata, }: {
|
|
50
|
+
input: BotonicInputType;
|
|
51
|
+
metadata?: UserMessageMetadata;
|
|
52
|
+
}): UserInputMessage;
|
|
53
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
// ============================================================================
|
|
2
|
+
// FACTORY
|
|
3
|
+
// ============================================================================
|
|
4
|
+
import { BotonicAudioData, BotonicContactData, BotonicDocumentData, BotonicImageData, BotonicLocationData, BotonicPostbackData, BotonicTextData, BotonicTypingEventData, BotonicVideoData, MessageType, } from '@botonic/shared';
|
|
5
|
+
import { UserInputAudio, UserInputContact, UserInputDocument, UserInputImage, UserInputLocation, UserInputPostback, UserInputText, UserInputTypingEvent, UserInputVideo, } from './user-input-message';
|
|
6
|
+
export class UserInputFactory {
|
|
7
|
+
static createText({ text, payload, metadata, }) {
|
|
8
|
+
return new UserInputText(new BotonicTextData(text, payload), metadata);
|
|
9
|
+
}
|
|
10
|
+
static createPostback({ payload, metadata, }) {
|
|
11
|
+
return new UserInputPostback(new BotonicPostbackData(payload), metadata);
|
|
12
|
+
}
|
|
13
|
+
static createAudio({ attachmentUrl, metadata, }) {
|
|
14
|
+
return new UserInputAudio(new BotonicAudioData(attachmentUrl), metadata);
|
|
15
|
+
}
|
|
16
|
+
static createImage({ attachmentUrl, metadata, }) {
|
|
17
|
+
return new UserInputImage(new BotonicImageData(attachmentUrl), metadata);
|
|
18
|
+
}
|
|
19
|
+
static createVideo({ attachmentUrl, metadata, }) {
|
|
20
|
+
return new UserInputVideo(new BotonicVideoData(attachmentUrl), metadata);
|
|
21
|
+
}
|
|
22
|
+
static createDocument({ attachmentUrl, metadata, }) {
|
|
23
|
+
return new UserInputDocument(new BotonicDocumentData(attachmentUrl), metadata);
|
|
24
|
+
}
|
|
25
|
+
static createLocation({ latitude, longitude, title, address, metadata, }) {
|
|
26
|
+
return new UserInputLocation(new BotonicLocationData(latitude, longitude, title, address), metadata);
|
|
27
|
+
}
|
|
28
|
+
static createTypingEvent({ eventName, metadata, }) {
|
|
29
|
+
return new UserInputTypingEvent(new BotonicTypingEventData(eventName), metadata);
|
|
30
|
+
}
|
|
31
|
+
static createContact({ firstName, lastName, phoneNumber, vcard, metadata, }) {
|
|
32
|
+
return new UserInputContact(new BotonicContactData(firstName, lastName, phoneNumber, vcard), metadata);
|
|
33
|
+
}
|
|
34
|
+
static fromBotonicInput({ input, metadata, }) {
|
|
35
|
+
switch (input.type) {
|
|
36
|
+
case MessageType.Text:
|
|
37
|
+
return new UserInputText(input.data, metadata);
|
|
38
|
+
case MessageType.Postback:
|
|
39
|
+
return new UserInputPostback(input.data, metadata);
|
|
40
|
+
case MessageType.Audio:
|
|
41
|
+
return new UserInputAudio(input.data, metadata);
|
|
42
|
+
case MessageType.Image:
|
|
43
|
+
return new UserInputImage(input.data, metadata);
|
|
44
|
+
case MessageType.Video:
|
|
45
|
+
return new UserInputVideo(input.data, metadata);
|
|
46
|
+
case MessageType.Document:
|
|
47
|
+
return new UserInputDocument(input.data, metadata);
|
|
48
|
+
case MessageType.Location:
|
|
49
|
+
return new UserInputLocation(input.data, metadata);
|
|
50
|
+
case MessageType.Contact:
|
|
51
|
+
return new UserInputContact(input.data, metadata);
|
|
52
|
+
case MessageType.TypingEvent:
|
|
53
|
+
return new UserInputTypingEvent(input.data, metadata);
|
|
54
|
+
default:
|
|
55
|
+
throw new Error(`Unsupported input type: ${JSON.stringify(input)}`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../../../../../../libs/botonic/webchat-core/src/lib/messages/user/factory.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAI/E,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,WAAW,GAEZ,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EAEjB,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACpB,cAAc,GACf,MAAM,sBAAsB,CAAA;AAE7B,MAAM,OAAO,gBAAgB;IAC3B,MAAM,CAAC,UAAU,CAAC,EAChB,IAAI,EACJ,OAAO,EACP,QAAQ,GAKT;QACC,OAAO,IAAI,aAAa,CAAC,IAAI,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAA;IACxE,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,EACpB,OAAO,EACP,QAAQ,GAIT;QACC,OAAO,IAAI,iBAAiB,CAAC,IAAI,mBAAmB,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAA;IAC1E,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,EACjB,aAAa,EACb,QAAQ,GAIT;QACC,OAAO,IAAI,cAAc,CAAC,IAAI,gBAAgB,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,CAAA;IAC1E,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,EACjB,aAAa,EACb,QAAQ,GAIT;QACC,OAAO,IAAI,cAAc,CAAC,IAAI,gBAAgB,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,CAAA;IAC1E,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,EACjB,aAAa,EACb,QAAQ,GAIT;QACC,OAAO,IAAI,cAAc,CAAC,IAAI,gBAAgB,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,CAAA;IAC1E,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,EACpB,aAAa,EACb,QAAQ,GAIT;QACC,OAAO,IAAI,iBAAiB,CAC1B,IAAI,mBAAmB,CAAC,aAAa,CAAC,EACtC,QAAQ,CACT,CAAA;IACH,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,EACpB,QAAQ,EACR,SAAS,EACT,KAAK,EACL,OAAO,EACP,QAAQ,GAOT;QACC,OAAO,IAAI,iBAAiB,CAC1B,IAAI,mBAAmB,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,EAC5D,QAAQ,CACT,CAAA;IACH,CAAC;IAED,MAAM,CAAC,iBAAiB,CAAC,EACvB,SAAS,EACT,QAAQ,GAIT;QACC,OAAO,IAAI,oBAAoB,CAC7B,IAAI,sBAAsB,CAAC,SAAS,CAAC,EACrC,QAAQ,CACT,CAAA;IACH,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,EACnB,SAAS,EACT,QAAQ,EACR,WAAW,EACX,KAAK,EACL,QAAQ,GAOT;QACC,OAAO,IAAI,gBAAgB,CACzB,IAAI,kBAAkB,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,CAAC,EAC/D,QAAQ,CACT,CAAA;IACH,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,EACtB,KAAK,EACL,QAAQ,GAIT;QACC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,WAAW,CAAC,IAAI;gBACnB,OAAO,IAAI,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YAChD,KAAK,WAAW,CAAC,QAAQ;gBACvB,OAAO,IAAI,iBAAiB,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YACpD,KAAK,WAAW,CAAC,KAAK;gBACpB,OAAO,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YACjD,KAAK,WAAW,CAAC,KAAK;gBACpB,OAAO,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YACjD,KAAK,WAAW,CAAC,KAAK;gBACpB,OAAO,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YACjD,KAAK,WAAW,CAAC,QAAQ;gBACvB,OAAO,IAAI,iBAAiB,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YACpD,KAAK,WAAW,CAAC,QAAQ;gBACvB,OAAO,IAAI,iBAAiB,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YACpD,KAAK,WAAW,CAAC,OAAO;gBACtB,OAAO,IAAI,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YACnD,KAAK,WAAW,CAAC,WAAW;gBAC1B,OAAO,IAAI,oBAAoB,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YACvD;gBACE,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACvE,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../libs/botonic/webchat-core/src/lib/messages/user/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { UserMessageMetadata } from '@botonic/shared';
|
|
2
|
+
import { BotonicInput, InputMessageType, InputMessageTypeMap } from '@botonic/shared';
|
|
3
|
+
import { BotonicAudioData, BotonicContactData, BotonicDocumentData, BotonicImageData, BotonicLocationData, BotonicPostbackData, BotonicTextData, BotonicTypingEventData, BotonicVideoData, MessageType } from '@botonic/shared';
|
|
4
|
+
export declare abstract class UserInput<T extends InputMessageType = InputMessageType> extends BotonicInput<T> implements UserMessageMetadata {
|
|
5
|
+
readonly provider_id: string;
|
|
6
|
+
constructor(type: T, data: InputMessageTypeMap[T], metadata?: UserMessageMetadata);
|
|
7
|
+
}
|
|
8
|
+
export declare class UserInputText extends UserInput<MessageType.Text> {
|
|
9
|
+
constructor(data: BotonicTextData, metadata?: UserMessageMetadata);
|
|
10
|
+
}
|
|
11
|
+
export declare class UserInputPostback extends UserInput<MessageType.Postback> {
|
|
12
|
+
constructor(data: BotonicPostbackData, metadata?: UserMessageMetadata);
|
|
13
|
+
}
|
|
14
|
+
export declare class UserInputAudio extends UserInput<MessageType.Audio> {
|
|
15
|
+
constructor(data: BotonicAudioData, metadata?: UserMessageMetadata);
|
|
16
|
+
}
|
|
17
|
+
export declare class UserInputImage extends UserInput<MessageType.Image> {
|
|
18
|
+
constructor(data: BotonicImageData, metadata?: UserMessageMetadata);
|
|
19
|
+
}
|
|
20
|
+
export declare class UserInputVideo extends UserInput<MessageType.Video> {
|
|
21
|
+
constructor(data: BotonicVideoData, metadata?: UserMessageMetadata);
|
|
22
|
+
}
|
|
23
|
+
export declare class UserInputDocument extends UserInput<MessageType.Document> {
|
|
24
|
+
constructor(data: BotonicDocumentData, metadata?: UserMessageMetadata);
|
|
25
|
+
}
|
|
26
|
+
export declare class UserInputLocation extends UserInput<MessageType.Location> {
|
|
27
|
+
constructor(data: BotonicLocationData, metadata?: UserMessageMetadata);
|
|
28
|
+
}
|
|
29
|
+
export declare class UserInputContact extends UserInput<MessageType.Contact> {
|
|
30
|
+
constructor(data: BotonicContactData, metadata?: UserMessageMetadata);
|
|
31
|
+
}
|
|
32
|
+
export declare class UserInputTypingEvent extends UserInput<MessageType.TypingEvent> {
|
|
33
|
+
constructor(data: BotonicTypingEventData, metadata?: UserMessageMetadata);
|
|
34
|
+
}
|
|
35
|
+
export type UserInputMessage = UserInputText | UserInputPostback | UserInputAudio | UserInputImage | UserInputVideo | UserInputDocument | UserInputLocation | UserInputTypingEvent | UserInputContact;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { BotonicInput, } from '@botonic/shared';
|
|
2
|
+
import { MessageType, } from '@botonic/shared';
|
|
3
|
+
import { v7 as uuidv7 } from 'uuid';
|
|
4
|
+
// ============================================================================
|
|
5
|
+
// USER INPUT (extends Botonic Input + adds provider_id)
|
|
6
|
+
// ============================================================================
|
|
7
|
+
export class UserInput extends BotonicInput {
|
|
8
|
+
constructor(type, data, metadata = {}) {
|
|
9
|
+
var _a;
|
|
10
|
+
super(type, data);
|
|
11
|
+
this.provider_id = (_a = metadata.provider_id) !== null && _a !== void 0 ? _a : uuidv7();
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
export class UserInputText extends UserInput {
|
|
15
|
+
constructor(data, metadata = {}) {
|
|
16
|
+
super(MessageType.Text, data, metadata);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export class UserInputPostback extends UserInput {
|
|
20
|
+
constructor(data, metadata = {}) {
|
|
21
|
+
super(MessageType.Postback, data, metadata);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
export class UserInputAudio extends UserInput {
|
|
25
|
+
constructor(data, metadata = {}) {
|
|
26
|
+
super(MessageType.Audio, data, metadata);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export class UserInputImage extends UserInput {
|
|
30
|
+
constructor(data, metadata = {}) {
|
|
31
|
+
super(MessageType.Image, data, metadata);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export class UserInputVideo extends UserInput {
|
|
35
|
+
constructor(data, metadata = {}) {
|
|
36
|
+
super(MessageType.Video, data, metadata);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
export class UserInputDocument extends UserInput {
|
|
40
|
+
constructor(data, metadata = {}) {
|
|
41
|
+
super(MessageType.Document, data, metadata);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
export class UserInputLocation extends UserInput {
|
|
45
|
+
constructor(data, metadata = {}) {
|
|
46
|
+
super(MessageType.Location, data, metadata);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
export class UserInputContact extends UserInput {
|
|
50
|
+
constructor(data, metadata = {}) {
|
|
51
|
+
super(MessageType.Contact, data, metadata);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
export class UserInputTypingEvent extends UserInput {
|
|
55
|
+
constructor(data, metadata = {}) {
|
|
56
|
+
super(MessageType.TypingEvent, data, metadata);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=user-input-message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user-input-message.js","sourceRoot":"","sources":["../../../../../../../../libs/botonic/webchat-core/src/lib/messages/user/user-input-message.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,GAGb,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAUL,WAAW,GACZ,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AAEnC,+EAA+E;AAC/E,wDAAwD;AACxD,+EAA+E;AAE/E,MAAM,OAAgB,SACpB,SAAQ,YAAe;IAKvB,YACE,IAAO,EACP,IAA4B,EAC5B,WAAgC,EAAE;;QAElC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QACjB,IAAI,CAAC,WAAW,GAAG,MAAA,QAAQ,CAAC,WAAW,mCAAI,MAAM,EAAE,CAAA;IACrD,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,SAA2B;IAC5D,YAAY,IAAqB,EAAE,WAAgC,EAAE;QACnE,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;IACzC,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,SAA+B;IACpE,YAAY,IAAyB,EAAE,WAAgC,EAAE;QACvE,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC7C,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,SAA4B;IAC9D,YAAY,IAAsB,EAAE,WAAgC,EAAE;QACpE,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC1C,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,SAA4B;IAC9D,YAAY,IAAsB,EAAE,WAAgC,EAAE;QACpE,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC1C,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,SAA4B;IAC9D,YAAY,IAAsB,EAAE,WAAgC,EAAE;QACpE,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC1C,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,SAA+B;IACpE,YAAY,IAAyB,EAAE,WAAgC,EAAE;QACvE,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC7C,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,SAA+B;IACpE,YAAY,IAAyB,EAAE,WAAgC,EAAE;QACvE,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC7C,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,SAA8B;IAClE,YAAY,IAAwB,EAAE,WAAgC,EAAE;QACtE,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC5C,CAAC;CACF;AAED,MAAM,OAAO,oBAAqB,SAAQ,SAAkC;IAC1E,YACE,IAA4B,EAC5B,WAAgC,EAAE;QAElC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA;IAChD,CAAC;CACF"}
|