@botonic/react 0.20.1-alpha.1 → 0.20.3
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/lib/app.js +4 -3
- package/lib/app.js.map +1 -1
- package/lib/components/button.js +22 -2
- package/lib/components/button.js.map +1 -1
- package/lib/components/buttons-disabler.js +2 -2
- package/lib/components/carousel.js +2 -2
- package/lib/components/custom-message.js +2 -2
- package/lib/components/document.js +2 -2
- package/lib/components/image.js +28 -32
- package/lib/components/image.js.map +1 -1
- package/lib/components/message.js +2 -2
- package/lib/components/multichannel/facebook/facebook.js +2 -2
- package/lib/components/reply.js +2 -2
- package/lib/components/subtitle.js +2 -2
- package/lib/components/text.js +2 -2
- package/lib/components/timestamps.js +2 -2
- package/lib/components/title.js +2 -2
- package/lib/constants.js +201 -0
- package/lib/constants.js.map +1 -0
- package/lib/contexts.js +57 -0
- package/lib/contexts.js.map +1 -0
- package/lib/dev-app.js +241 -0
- package/lib/dev-app.js.map +1 -0
- package/lib/index.d.ts +241 -0
- package/lib/index.js +131 -0
- package/lib/index.js.map +1 -0
- package/lib/message-utils.js +149 -0
- package/lib/message-utils.js.map +1 -0
- package/lib/msg-to-botonic.js +199 -0
- package/lib/msg-to-botonic.js.map +1 -0
- package/lib/node-app.js +97 -0
- package/lib/node-app.js.map +1 -0
- package/lib/react-bot.js +167 -0
- package/lib/react-bot.js.map +1 -0
- package/lib/util/dom.js +84 -0
- package/lib/util/dom.js.map +1 -0
- package/lib/util/environment.js +42 -0
- package/lib/util/environment.js.map +1 -0
- package/lib/util/error-boundary.js +105 -0
- package/lib/util/error-boundary.js.map +1 -0
- package/lib/util/index.d.ts +9 -0
- package/lib/util/index.js +2 -0
- package/lib/util/index.js.map +1 -0
- package/lib/util/logs.js +28 -0
- package/lib/util/logs.js.map +1 -0
- package/lib/util/objects.js +60 -0
- package/lib/util/objects.js.map +1 -0
- package/lib/util/react.js +75 -0
- package/lib/util/react.js.map +1 -0
- package/lib/util/regexs.js +31 -0
- package/lib/util/regexs.js.map +1 -0
- package/lib/util/webchat.js +92 -0
- package/lib/util/webchat.js.map +1 -0
- package/lib/webchat/actions.js +53 -0
- package/lib/webchat/actions.js.map +1 -0
- package/lib/webchat/components/attachment.js +43 -0
- package/lib/webchat/components/attachment.js.map +1 -0
- package/lib/webchat/components/common.js +33 -0
- package/lib/webchat/components/common.js.map +1 -0
- package/lib/webchat/components/emoji-picker.js +58 -0
- package/lib/webchat/components/emoji-picker.js.map +1 -0
- package/lib/webchat/components/persistent-menu.js +96 -0
- package/lib/webchat/components/persistent-menu.js.map +1 -0
- package/lib/webchat/components/send-button.js +27 -0
- package/lib/webchat/components/send-button.js.map +1 -0
- package/lib/webchat/components/styled-scrollbar.js +55 -0
- package/lib/webchat/components/styled-scrollbar.js.map +1 -0
- package/lib/webchat/components/styled-scrollbar.scss +12 -0
- package/lib/webchat/components/typing-indicator.js +27 -0
- package/lib/webchat/components/typing-indicator.js.map +1 -0
- package/lib/webchat/components/typing-indicator.scss +38 -0
- package/lib/webchat/devices/device-adapter.js +82 -0
- package/lib/webchat/devices/device-adapter.js.map +1 -0
- package/lib/webchat/devices/index.js +32 -0
- package/lib/webchat/devices/index.js.map +1 -0
- package/lib/webchat/devices/scrollbar-controller.js +152 -0
- package/lib/webchat/devices/scrollbar-controller.js.map +1 -0
- package/lib/webchat/devices/webchat-resizer.js +76 -0
- package/lib/webchat/devices/webchat-resizer.js.map +1 -0
- package/lib/webchat/header.js +116 -0
- package/lib/webchat/header.js.map +1 -0
- package/lib/webchat/hooks.js +359 -0
- package/lib/webchat/hooks.js.map +1 -0
- package/lib/webchat/index.d.ts +62 -0
- package/lib/webchat/index.js +32 -0
- package/lib/webchat/index.js.map +1 -0
- package/lib/webchat/message-list.js +88 -0
- package/lib/webchat/message-list.js.map +1 -0
- package/lib/webchat/messages-reducer.js +93 -0
- package/lib/webchat/messages-reducer.js.map +1 -0
- package/lib/webchat/replies.js +78 -0
- package/lib/webchat/replies.js.map +1 -0
- package/lib/webchat/session-view.js +106 -0
- package/lib/webchat/session-view.js.map +1 -0
- package/lib/webchat/use-storage-state-hook.js +29 -0
- package/lib/webchat/use-storage-state-hook.js.map +1 -0
- package/lib/webchat/webchat-dev.js +109 -0
- package/lib/webchat/webchat-dev.js.map +1 -0
- package/lib/webchat/webchat-reducer.js +108 -0
- package/lib/webchat/webchat-reducer.js.map +1 -0
- package/lib/webchat/webchat.js +1059 -0
- package/lib/webchat/webchat.js.map +1 -0
- package/lib/webchat/webview.js +122 -0
- package/lib/webchat/webview.js.map +1 -0
- package/lib/webchat-app.js +653 -0
- package/lib/webchat-app.js.map +1 -0
- package/lib/webchat.template.html +37 -0
- package/lib/webview.js +214 -0
- package/lib/webview.js.map +1 -0
- package/lib/webview.template.html +39 -0
- package/package.json +2 -2
- package/src/components/button.jsx +21 -1
- package/src/components/image.jsx +22 -27
- package/src/components/index.d.ts +5 -1
- package/src/constants.js +1 -0
- package/src/index.d.ts +3 -7
- package/src/index.js +0 -1
- package/src/webchat/actions.jsx +1 -1
- package/src/webchat/hooks.js +5 -5
- package/src/webchat/webchat-reducer.js +3 -3
- package/src/webchat/webchat.jsx +20 -17
- package/src/webchat-app.jsx +4 -4
- package/src/webchat/components/portal-modal/backdrop.jsx +0 -38
- package/src/webchat/components/portal-modal/constants.js +0 -7
- package/src/webchat/components/portal-modal/content.jsx +0 -10
- package/src/webchat/components/portal-modal/index.js +0 -5
- package/src/webchat/components/portal-modal/portal-modal-component.jsx +0 -72
- package/src/webchat/components/portal-modal/portal.jsx +0 -21
package/lib/constants.js
ADDED
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.WEBCHAT = exports.SENDERS = exports.ROLES = exports.MIME_WHITELIST = exports.MAX_ALLOWED_SIZE_MB = exports.COMPONENT_TYPE = exports.COLORS = void 0;
|
|
9
|
+
|
|
10
|
+
var _botonic_react_logo100x = _interopRequireDefault(require("./assets/botonic_react_logo100x100.png"));
|
|
11
|
+
|
|
12
|
+
var SENDERS = {
|
|
13
|
+
bot: 'bot',
|
|
14
|
+
user: 'user'
|
|
15
|
+
};
|
|
16
|
+
exports.SENDERS = SENDERS;
|
|
17
|
+
var COLORS = {
|
|
18
|
+
// http://chir.ag/projects/name-that-color
|
|
19
|
+
APPLE_GREEN: 'rgba(58, 156, 53, 1)',
|
|
20
|
+
BLEACHED_CEDAR_PURPLE: 'rgba(46, 32, 59, 1)',
|
|
21
|
+
BOTONIC_BLUE: 'rgba(0, 153, 255, 1)',
|
|
22
|
+
CACTUS_GREEN: 'rgba(96, 115, 94, 1)',
|
|
23
|
+
CONCRETE_WHITE: 'rgba(243, 243, 243, 1)',
|
|
24
|
+
CURIOUS_BLUE: 'rgba(38, 139, 210, 1)',
|
|
25
|
+
DAINTREE_BLUE: 'rgba(0, 43, 53, 1)',
|
|
26
|
+
ERROR_RED: 'rgba(255, 43, 94)',
|
|
27
|
+
FRINGY_FLOWER_GREEN: 'rgba(198, 231, 192, 1)',
|
|
28
|
+
GRAY: 'rgba(129, 129, 129, 1)',
|
|
29
|
+
LIGHT_GRAY: 'rgba(209, 209, 209, 1)',
|
|
30
|
+
MID_GRAY: 'rgba(105, 105, 115, 1)',
|
|
31
|
+
PIGEON_POST_BLUE_ALPHA_0_5: 'rgba(176, 196, 222, 0.5)',
|
|
32
|
+
SCORPION_GRAY: 'rgba(87, 87, 87, 1)',
|
|
33
|
+
SEASHELL_WHITE: 'rgba(241, 240, 240, 1)',
|
|
34
|
+
SILVER: 'rgba(200, 200, 200, 1)',
|
|
35
|
+
SOLID_BLACK_ALPHA_0_2: 'rgba(0, 0, 0, 0.2)',
|
|
36
|
+
SOLID_BLACK_ALPHA_0_5: 'rgba(0, 0, 0, 0.5)',
|
|
37
|
+
SOLID_BLACK: 'rgba(0, 0, 0, 1)',
|
|
38
|
+
SOLID_WHITE_ALPHA_0_2: 'rgba(255, 255, 255, 0.2)',
|
|
39
|
+
SOLID_WHITE_ALPHA_0_8: 'rgba(255, 255, 255, 0.8)',
|
|
40
|
+
SOLID_WHITE: 'rgba(255, 255, 255, 1)',
|
|
41
|
+
TASMAN_GRAY: 'rgba(209, 216, 207, 1)',
|
|
42
|
+
TRANSPARENT: 'rgba(0, 0, 0, 0)',
|
|
43
|
+
WILD_SAND_WHITE: 'rgba(244, 244, 244, 1)'
|
|
44
|
+
};
|
|
45
|
+
exports.COLORS = COLORS;
|
|
46
|
+
var WEBCHAT = {
|
|
47
|
+
DEFAULTS: {
|
|
48
|
+
WIDTH: 300,
|
|
49
|
+
HEIGHT: 450,
|
|
50
|
+
TITLE: 'Botonic',
|
|
51
|
+
LOGO: _botonic_react_logo100x["default"],
|
|
52
|
+
PLACEHOLDER: 'Ask me something...',
|
|
53
|
+
FONT_FAMILY: "'Noto Sans JP', sans-serif",
|
|
54
|
+
BORDER_RADIUS_TOP_CORNERS: '6px 6px 0px 0px',
|
|
55
|
+
ELEMENT_WIDTH: 222,
|
|
56
|
+
ELEMENT_MARGIN_RIGHT: 6,
|
|
57
|
+
STORAGE_KEY: 'botonicState',
|
|
58
|
+
HOST_ID: 'root',
|
|
59
|
+
ID: 'botonic-webchat',
|
|
60
|
+
BUTTON_AUTO_DISABLE: false,
|
|
61
|
+
BUTTON_DISABLED_STYLE: {
|
|
62
|
+
opacity: 0.5,
|
|
63
|
+
cursor: 'auto',
|
|
64
|
+
pointerEvents: 'none'
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
SELECTORS: {
|
|
68
|
+
SCROLLABLE_CONTENT: '#botonic-scrollable-content',
|
|
69
|
+
SIMPLEBAR_CONTENT: '.simplebar-content',
|
|
70
|
+
SIMPLEBAR_WRAPPER: '.simplebar-content-wrapper'
|
|
71
|
+
},
|
|
72
|
+
CUSTOM_PROPERTIES: {
|
|
73
|
+
// General
|
|
74
|
+
enableAnimations: 'animations.enable',
|
|
75
|
+
markdownStyle: 'markdownStyle',
|
|
76
|
+
scrollbar: 'scrollbar',
|
|
77
|
+
imagePreviewer: 'imagePreviewer',
|
|
78
|
+
// Mobile
|
|
79
|
+
mobileBreakpoint: 'mobileBreakpoint',
|
|
80
|
+
mobileStyle: 'mobileStyle',
|
|
81
|
+
// Webviews
|
|
82
|
+
webviewHeaderStyle: 'webview.header.style',
|
|
83
|
+
webviewStyle: 'webview.style',
|
|
84
|
+
// Brand
|
|
85
|
+
brandColor: 'brand.color',
|
|
86
|
+
brandImage: 'brand.image',
|
|
87
|
+
// Header
|
|
88
|
+
customHeader: 'header.custom',
|
|
89
|
+
headerImage: 'header.image',
|
|
90
|
+
headerStyle: 'header.style',
|
|
91
|
+
headerSubtitle: 'header.subtitle',
|
|
92
|
+
headerTitle: 'header.title',
|
|
93
|
+
// Bot Message
|
|
94
|
+
botMessageBackground: 'message.bot.style.background',
|
|
95
|
+
botMessageBlobTick: 'message.bot.blobTick',
|
|
96
|
+
botMessageBlobTickStyle: 'message.bot.blobTickStyle',
|
|
97
|
+
botMessageBlobWidth: 'message.bot.blobWidth',
|
|
98
|
+
botMessageBorderColor: 'message.bot.style.borderColor',
|
|
99
|
+
botMessageImage: 'message.bot.image',
|
|
100
|
+
botMessageImageStyle: 'message.bot.imageStyle',
|
|
101
|
+
botMessageStyle: 'message.bot.style',
|
|
102
|
+
// User Message
|
|
103
|
+
customMessageTypes: 'message.customTypes',
|
|
104
|
+
messageStyle: 'message.style',
|
|
105
|
+
userMessageBackground: 'message.user.style.background',
|
|
106
|
+
userMessageBlobTick: 'message.user.blobTick',
|
|
107
|
+
userMessageBlobTickStyle: 'message.user.blobTickStyle',
|
|
108
|
+
userMessageBorderColor: 'message.user.style.borderColor',
|
|
109
|
+
userMessageStyle: 'message.user.style',
|
|
110
|
+
// Timestamps
|
|
111
|
+
enableMessageTimestamps: 'message.timestamps.enable',
|
|
112
|
+
messageTimestampsFormat: 'message.timestamps.format',
|
|
113
|
+
messageTimestampsStyle: 'message.timestamps.style',
|
|
114
|
+
// Intro
|
|
115
|
+
customIntro: 'intro.custom',
|
|
116
|
+
introImage: 'intro.image',
|
|
117
|
+
introStyle: 'intro.style',
|
|
118
|
+
// Buttons
|
|
119
|
+
buttonHoverBackground: 'button.hoverBackground',
|
|
120
|
+
buttonHoverTextColor: 'button.hoverTextColor',
|
|
121
|
+
buttonMessageType: 'button.messageType',
|
|
122
|
+
buttonStyle: 'button.style',
|
|
123
|
+
buttonDisabledStyle: 'button.disabledstyle',
|
|
124
|
+
buttonAutoDisable: 'button.autodisable',
|
|
125
|
+
buttonStyleBackground: 'button.style.background',
|
|
126
|
+
buttonStyleColor: 'button.style.color',
|
|
127
|
+
customButton: 'button.custom',
|
|
128
|
+
// Replies
|
|
129
|
+
alignReplies: 'replies.align',
|
|
130
|
+
customReply: 'reply.custom',
|
|
131
|
+
replyStyle: 'reply.style',
|
|
132
|
+
wrapReplies: 'replies.wrap',
|
|
133
|
+
// TriggerButton
|
|
134
|
+
customTrigger: 'triggerButton.custom',
|
|
135
|
+
triggerButtonImage: 'triggerButton.image',
|
|
136
|
+
triggerButtonStyle: 'triggerButton.style',
|
|
137
|
+
// User Input
|
|
138
|
+
blockInputs: 'userInput.blockInputs',
|
|
139
|
+
documentDownload: 'documentDownload',
|
|
140
|
+
customMenuButton: 'userInput.menuButton.custom',
|
|
141
|
+
customPersistentMenu: 'userInput.menu.custom',
|
|
142
|
+
customSendButton: 'userInput.sendButton.custom',
|
|
143
|
+
darkBackgroundMenu: 'userInput.menu.darkBackground',
|
|
144
|
+
enableAttachments: 'userInput.attachments.enable',
|
|
145
|
+
enableEmojiPicker: 'userInput.emojiPicker.enable',
|
|
146
|
+
enableSendButton: 'userInput.sendButton.enable',
|
|
147
|
+
enableUserInput: 'userInput.enable',
|
|
148
|
+
persistentMenu: 'userInput.persistentMenu',
|
|
149
|
+
textPlaceholder: 'userInput.box.placeholder',
|
|
150
|
+
userInputBoxStyle: 'userInput.box.style',
|
|
151
|
+
userInputStyle: 'userInput.style',
|
|
152
|
+
// Cover Component
|
|
153
|
+
coverComponent: 'coverComponent.component',
|
|
154
|
+
coverComponentProps: 'coverComponent.props',
|
|
155
|
+
// Carousel
|
|
156
|
+
customCarouselLeftArrow: 'carousel.arrow.left',
|
|
157
|
+
customCarouselRightArrow: 'carousel.arrow.right',
|
|
158
|
+
enableCarouselArrows: 'carousel.enableArrows'
|
|
159
|
+
}
|
|
160
|
+
};
|
|
161
|
+
exports.WEBCHAT = WEBCHAT;
|
|
162
|
+
var MIME_WHITELIST = {
|
|
163
|
+
audio: ['audio/mpeg', 'audio/mp3'],
|
|
164
|
+
document: ['application/pdf'],
|
|
165
|
+
image: ['image/jpeg', 'image/png'],
|
|
166
|
+
video: ['video/mp4', 'video/quicktime']
|
|
167
|
+
};
|
|
168
|
+
exports.MIME_WHITELIST = MIME_WHITELIST;
|
|
169
|
+
var MAX_ALLOWED_SIZE_MB = 10;
|
|
170
|
+
exports.MAX_ALLOWED_SIZE_MB = MAX_ALLOWED_SIZE_MB;
|
|
171
|
+
var ROLES = {
|
|
172
|
+
ATTACHMENT_ICON: 'attachment-icon',
|
|
173
|
+
EMOJI_PICKER_ICON: 'emoji-picker-icon',
|
|
174
|
+
EMOJI_PICKER: 'emoji-picker',
|
|
175
|
+
HEADER: 'header',
|
|
176
|
+
MESSAGE_LIST: 'message-list',
|
|
177
|
+
PERSISTENT_MENU_ICON: 'persistent-menu-icon',
|
|
178
|
+
PERSISTENT_MENU: 'persistent-menu',
|
|
179
|
+
SEND_BUTTON_ICON: 'send-button-icon',
|
|
180
|
+
WEBCHAT: 'webchat',
|
|
181
|
+
TRIGGER_BUTTON: 'trigger-button',
|
|
182
|
+
TYPING_INDICATOR: 'typing-indicator',
|
|
183
|
+
TEXT_BOX: 'textbox',
|
|
184
|
+
WEBVIEW: 'webview',
|
|
185
|
+
WEBVIEW_HEADER: 'webview-header',
|
|
186
|
+
MESSAGE: 'message',
|
|
187
|
+
IMAGE_MESSAGE: 'image-message',
|
|
188
|
+
AUDIO_MESSAGE: 'audio-message',
|
|
189
|
+
VIDEO_MESSAGE: 'video-message',
|
|
190
|
+
DOCUMENT_MESSAGE: 'document-message',
|
|
191
|
+
RAW_MESSAGE: 'raw-message'
|
|
192
|
+
};
|
|
193
|
+
exports.ROLES = ROLES;
|
|
194
|
+
var COMPONENT_TYPE = {
|
|
195
|
+
TEXT: 'Text',
|
|
196
|
+
BUTTON: 'Button',
|
|
197
|
+
REPLY: 'Reply',
|
|
198
|
+
CAROUSEL: 'Carousel'
|
|
199
|
+
};
|
|
200
|
+
exports.COMPONENT_TYPE = COMPONENT_TYPE;
|
|
201
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/constants.js"],"names":["SENDERS","bot","user","COLORS","APPLE_GREEN","BLEACHED_CEDAR_PURPLE","BOTONIC_BLUE","CACTUS_GREEN","CONCRETE_WHITE","CURIOUS_BLUE","DAINTREE_BLUE","ERROR_RED","FRINGY_FLOWER_GREEN","GRAY","LIGHT_GRAY","MID_GRAY","PIGEON_POST_BLUE_ALPHA_0_5","SCORPION_GRAY","SEASHELL_WHITE","SILVER","SOLID_BLACK_ALPHA_0_2","SOLID_BLACK_ALPHA_0_5","SOLID_BLACK","SOLID_WHITE_ALPHA_0_2","SOLID_WHITE_ALPHA_0_8","SOLID_WHITE","TASMAN_GRAY","TRANSPARENT","WILD_SAND_WHITE","WEBCHAT","DEFAULTS","WIDTH","HEIGHT","TITLE","LOGO","BotonicLogo","PLACEHOLDER","FONT_FAMILY","BORDER_RADIUS_TOP_CORNERS","ELEMENT_WIDTH","ELEMENT_MARGIN_RIGHT","STORAGE_KEY","HOST_ID","ID","BUTTON_AUTO_DISABLE","BUTTON_DISABLED_STYLE","opacity","cursor","pointerEvents","SELECTORS","SCROLLABLE_CONTENT","SIMPLEBAR_CONTENT","SIMPLEBAR_WRAPPER","CUSTOM_PROPERTIES","enableAnimations","markdownStyle","scrollbar","imagePreviewer","mobileBreakpoint","mobileStyle","webviewHeaderStyle","webviewStyle","brandColor","brandImage","customHeader","headerImage","headerStyle","headerSubtitle","headerTitle","botMessageBackground","botMessageBlobTick","botMessageBlobTickStyle","botMessageBlobWidth","botMessageBorderColor","botMessageImage","botMessageImageStyle","botMessageStyle","customMessageTypes","messageStyle","userMessageBackground","userMessageBlobTick","userMessageBlobTickStyle","userMessageBorderColor","userMessageStyle","enableMessageTimestamps","messageTimestampsFormat","messageTimestampsStyle","customIntro","introImage","introStyle","buttonHoverBackground","buttonHoverTextColor","buttonMessageType","buttonStyle","buttonDisabledStyle","buttonAutoDisable","buttonStyleBackground","buttonStyleColor","customButton","alignReplies","customReply","replyStyle","wrapReplies","customTrigger","triggerButtonImage","triggerButtonStyle","blockInputs","documentDownload","customMenuButton","customPersistentMenu","customSendButton","darkBackgroundMenu","enableAttachments","enableEmojiPicker","enableSendButton","enableUserInput","persistentMenu","textPlaceholder","userInputBoxStyle","userInputStyle","coverComponent","coverComponentProps","customCarouselLeftArrow","customCarouselRightArrow","enableCarouselArrows","MIME_WHITELIST","audio","document","image","video","MAX_ALLOWED_SIZE_MB","ROLES","ATTACHMENT_ICON","EMOJI_PICKER_ICON","EMOJI_PICKER","HEADER","MESSAGE_LIST","PERSISTENT_MENU_ICON","PERSISTENT_MENU","SEND_BUTTON_ICON","TRIGGER_BUTTON","TYPING_INDICATOR","TEXT_BOX","WEBVIEW","WEBVIEW_HEADER","MESSAGE","IMAGE_MESSAGE","AUDIO_MESSAGE","VIDEO_MESSAGE","DOCUMENT_MESSAGE","RAW_MESSAGE","COMPONENT_TYPE","TEXT","BUTTON","REPLY","CAROUSEL"],"mappings":"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","sourcesContent":["import BotonicLogo from './assets/botonic_react_logo100x100.png'\n\nexport const SENDERS = {\n bot: 'bot',\n user: 'user',\n}\n\nexport const COLORS = {\n // http://chir.ag/projects/name-that-color\n APPLE_GREEN: 'rgba(58, 156, 53, 1)',\n BLEACHED_CEDAR_PURPLE: 'rgba(46, 32, 59, 1)',\n BOTONIC_BLUE: 'rgba(0, 153, 255, 1)',\n CACTUS_GREEN: 'rgba(96, 115, 94, 1)',\n CONCRETE_WHITE: 'rgba(243, 243, 243, 1)',\n CURIOUS_BLUE: 'rgba(38, 139, 210, 1)',\n DAINTREE_BLUE: 'rgba(0, 43, 53, 1)',\n ERROR_RED: 'rgba(255, 43, 94)',\n FRINGY_FLOWER_GREEN: 'rgba(198, 231, 192, 1)',\n GRAY: 'rgba(129, 129, 129, 1)',\n LIGHT_GRAY: 'rgba(209, 209, 209, 1)',\n MID_GRAY: 'rgba(105, 105, 115, 1)',\n PIGEON_POST_BLUE_ALPHA_0_5: 'rgba(176, 196, 222, 0.5)',\n SCORPION_GRAY: 'rgba(87, 87, 87, 1)',\n SEASHELL_WHITE: 'rgba(241, 240, 240, 1)',\n SILVER: 'rgba(200, 200, 200, 1)',\n SOLID_BLACK_ALPHA_0_2: 'rgba(0, 0, 0, 0.2)',\n SOLID_BLACK_ALPHA_0_5: 'rgba(0, 0, 0, 0.5)',\n SOLID_BLACK: 'rgba(0, 0, 0, 1)',\n SOLID_WHITE_ALPHA_0_2: 'rgba(255, 255, 255, 0.2)',\n SOLID_WHITE_ALPHA_0_8: 'rgba(255, 255, 255, 0.8)',\n SOLID_WHITE: 'rgba(255, 255, 255, 1)',\n TASMAN_GRAY: 'rgba(209, 216, 207, 1)',\n TRANSPARENT: 'rgba(0, 0, 0, 0)',\n WILD_SAND_WHITE: 'rgba(244, 244, 244, 1)',\n}\n\nexport const WEBCHAT = {\n DEFAULTS: {\n WIDTH: 300,\n HEIGHT: 450,\n TITLE: 'Botonic',\n LOGO: BotonicLogo,\n PLACEHOLDER: 'Ask me something...',\n FONT_FAMILY: \"'Noto Sans JP', sans-serif\",\n BORDER_RADIUS_TOP_CORNERS: '6px 6px 0px 0px',\n ELEMENT_WIDTH: 222,\n ELEMENT_MARGIN_RIGHT: 6,\n STORAGE_KEY: 'botonicState',\n HOST_ID: 'root',\n ID: 'botonic-webchat',\n BUTTON_AUTO_DISABLE: false,\n BUTTON_DISABLED_STYLE: {\n opacity: 0.5,\n cursor: 'auto',\n pointerEvents: 'none',\n },\n },\n SELECTORS: {\n SCROLLABLE_CONTENT: '#botonic-scrollable-content',\n SIMPLEBAR_CONTENT: '.simplebar-content',\n SIMPLEBAR_WRAPPER: '.simplebar-content-wrapper',\n },\n CUSTOM_PROPERTIES: {\n // General\n enableAnimations: 'animations.enable',\n markdownStyle: 'markdownStyle',\n scrollbar: 'scrollbar',\n imagePreviewer: 'imagePreviewer',\n // Mobile\n mobileBreakpoint: 'mobileBreakpoint',\n mobileStyle: 'mobileStyle',\n // Webviews\n webviewHeaderStyle: 'webview.header.style',\n webviewStyle: 'webview.style',\n // Brand\n brandColor: 'brand.color',\n brandImage: 'brand.image',\n // Header\n customHeader: 'header.custom',\n headerImage: 'header.image',\n headerStyle: 'header.style',\n headerSubtitle: 'header.subtitle',\n headerTitle: 'header.title',\n // Bot Message\n botMessageBackground: 'message.bot.style.background',\n botMessageBlobTick: 'message.bot.blobTick',\n botMessageBlobTickStyle: 'message.bot.blobTickStyle',\n botMessageBlobWidth: 'message.bot.blobWidth',\n botMessageBorderColor: 'message.bot.style.borderColor',\n botMessageImage: 'message.bot.image',\n botMessageImageStyle: 'message.bot.imageStyle',\n botMessageStyle: 'message.bot.style',\n // User Message\n customMessageTypes: 'message.customTypes',\n messageStyle: 'message.style',\n userMessageBackground: 'message.user.style.background',\n userMessageBlobTick: 'message.user.blobTick',\n userMessageBlobTickStyle: 'message.user.blobTickStyle',\n userMessageBorderColor: 'message.user.style.borderColor',\n userMessageStyle: 'message.user.style',\n // Timestamps\n enableMessageTimestamps: 'message.timestamps.enable',\n messageTimestampsFormat: 'message.timestamps.format',\n messageTimestampsStyle: 'message.timestamps.style',\n // Intro\n customIntro: 'intro.custom',\n introImage: 'intro.image',\n introStyle: 'intro.style',\n // Buttons\n buttonHoverBackground: 'button.hoverBackground',\n buttonHoverTextColor: 'button.hoverTextColor',\n buttonMessageType: 'button.messageType',\n buttonStyle: 'button.style',\n buttonDisabledStyle: 'button.disabledstyle',\n buttonAutoDisable: 'button.autodisable',\n buttonStyleBackground: 'button.style.background',\n buttonStyleColor: 'button.style.color',\n customButton: 'button.custom',\n // Replies\n alignReplies: 'replies.align',\n customReply: 'reply.custom',\n replyStyle: 'reply.style',\n wrapReplies: 'replies.wrap',\n // TriggerButton\n customTrigger: 'triggerButton.custom',\n triggerButtonImage: 'triggerButton.image',\n triggerButtonStyle: 'triggerButton.style',\n // User Input\n blockInputs: 'userInput.blockInputs',\n documentDownload: 'documentDownload',\n customMenuButton: 'userInput.menuButton.custom',\n customPersistentMenu: 'userInput.menu.custom',\n customSendButton: 'userInput.sendButton.custom',\n darkBackgroundMenu: 'userInput.menu.darkBackground',\n enableAttachments: 'userInput.attachments.enable',\n enableEmojiPicker: 'userInput.emojiPicker.enable',\n enableSendButton: 'userInput.sendButton.enable',\n enableUserInput: 'userInput.enable',\n persistentMenu: 'userInput.persistentMenu',\n textPlaceholder: 'userInput.box.placeholder',\n userInputBoxStyle: 'userInput.box.style',\n userInputStyle: 'userInput.style',\n // Cover Component\n coverComponent: 'coverComponent.component',\n coverComponentProps: 'coverComponent.props',\n // Carousel\n customCarouselLeftArrow: 'carousel.arrow.left',\n customCarouselRightArrow: 'carousel.arrow.right',\n enableCarouselArrows: 'carousel.enableArrows',\n },\n}\n\nexport const MIME_WHITELIST = {\n audio: ['audio/mpeg', 'audio/mp3'],\n document: ['application/pdf'],\n image: ['image/jpeg', 'image/png'],\n video: ['video/mp4', 'video/quicktime'],\n}\n\nexport const MAX_ALLOWED_SIZE_MB = 10\n\nexport const ROLES = {\n ATTACHMENT_ICON: 'attachment-icon',\n EMOJI_PICKER_ICON: 'emoji-picker-icon',\n EMOJI_PICKER: 'emoji-picker',\n HEADER: 'header',\n MESSAGE_LIST: 'message-list',\n PERSISTENT_MENU_ICON: 'persistent-menu-icon',\n PERSISTENT_MENU: 'persistent-menu',\n SEND_BUTTON_ICON: 'send-button-icon',\n WEBCHAT: 'webchat',\n TRIGGER_BUTTON: 'trigger-button',\n TYPING_INDICATOR: 'typing-indicator',\n TEXT_BOX: 'textbox',\n WEBVIEW: 'webview',\n WEBVIEW_HEADER: 'webview-header',\n MESSAGE: 'message',\n IMAGE_MESSAGE: 'image-message',\n AUDIO_MESSAGE: 'audio-message',\n VIDEO_MESSAGE: 'video-message',\n DOCUMENT_MESSAGE: 'document-message',\n RAW_MESSAGE: 'raw-message',\n}\n\nexport const COMPONENT_TYPE = {\n TEXT: 'Text',\n BUTTON: 'Button',\n REPLY: 'Reply',\n CAROUSEL: 'Carousel',\n}\n"],"file":"constants.js"}
|
package/lib/contexts.js
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.WebchatContext = exports.RequestContext = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
12
|
+
var _hooks = require("./webchat/hooks");
|
|
13
|
+
|
|
14
|
+
var RequestContext = /*#__PURE__*/_react["default"].createContext({
|
|
15
|
+
getString: function getString() {
|
|
16
|
+
return '';
|
|
17
|
+
},
|
|
18
|
+
setLocale: function setLocale() {
|
|
19
|
+
return '';
|
|
20
|
+
},
|
|
21
|
+
session: {},
|
|
22
|
+
params: {},
|
|
23
|
+
input: {},
|
|
24
|
+
defaultDelay: 0,
|
|
25
|
+
defaultTyping: 0
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
exports.RequestContext = RequestContext;
|
|
29
|
+
|
|
30
|
+
var WebchatContext = /*#__PURE__*/_react["default"].createContext({
|
|
31
|
+
sendText: function sendText(text) {},
|
|
32
|
+
sendAttachment: function sendAttachment(attachment) {},
|
|
33
|
+
sendPayload: function sendPayload(payload) {},
|
|
34
|
+
sendInput: function sendInput(input) {},
|
|
35
|
+
setReplies: function setReplies(replies) {},
|
|
36
|
+
openWebview: function openWebview(webviewComponent) {},
|
|
37
|
+
addMessage: function addMessage(message) {},
|
|
38
|
+
updateMessage: function updateMessage(message) {},
|
|
39
|
+
updateReplies: function updateReplies(replies) {},
|
|
40
|
+
updateLatestInput: function updateLatestInput(input) {},
|
|
41
|
+
closeWebview: function closeWebview() {},
|
|
42
|
+
toggleWebchat: function toggleWebchat() {},
|
|
43
|
+
getThemeProperty: function getThemeProperty(property) {
|
|
44
|
+
return undefined;
|
|
45
|
+
},
|
|
46
|
+
// used to retrieve a specific property of the theme defined by the developer in his 'webchat/index.js'
|
|
47
|
+
resolveCase: function resolveCase() {},
|
|
48
|
+
theme: {},
|
|
49
|
+
webchatState: _hooks.webchatInitialState,
|
|
50
|
+
updateWebchatDevSettings: function updateWebchatDevSettings(settings) {
|
|
51
|
+
return {};
|
|
52
|
+
},
|
|
53
|
+
updateUser: function updateUser(user) {}
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
exports.WebchatContext = WebchatContext;
|
|
57
|
+
//# sourceMappingURL=contexts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/contexts.jsx"],"names":["RequestContext","React","createContext","getString","setLocale","session","params","input","defaultDelay","defaultTyping","WebchatContext","sendText","text","sendAttachment","attachment","sendPayload","payload","sendInput","setReplies","replies","openWebview","webviewComponent","addMessage","message","updateMessage","updateReplies","updateLatestInput","closeWebview","toggleWebchat","getThemeProperty","property","undefined","resolveCase","theme","webchatState","webchatInitialState","updateWebchatDevSettings","settings","updateUser","user"],"mappings":";;;;;;;;;AAAA;;AAEA;;AAEO,IAAMA,cAAc,gBAAGC,kBAAMC,aAAN,CAAoB;AAChDC,EAAAA,SAAS,EAAE;AAAA,WAAM,EAAN;AAAA,GADqC;AAEhDC,EAAAA,SAAS,EAAE;AAAA,WAAM,EAAN;AAAA,GAFqC;AAGhDC,EAAAA,OAAO,EAAE,EAHuC;AAIhDC,EAAAA,MAAM,EAAE,EAJwC;AAKhDC,EAAAA,KAAK,EAAE,EALyC;AAMhDC,EAAAA,YAAY,EAAE,CANkC;AAOhDC,EAAAA,aAAa,EAAE;AAPiC,CAApB,CAAvB;;;;AAUA,IAAMC,cAAc,gBAAGT,kBAAMC,aAAN,CAAoB;AAChDS,EAAAA,QAAQ,EAAE,kBAAAC,IAAI,EAAI,CAAE,CAD4B;AAEhDC,EAAAA,cAAc,EAAE,wBAAAC,UAAU,EAAI,CAAE,CAFgB;AAGhDC,EAAAA,WAAW,EAAE,qBAAAC,OAAO,EAAI,CAAE,CAHsB;AAIhDC,EAAAA,SAAS,EAAE,mBAAAV,KAAK,EAAI,CAAE,CAJ0B;AAKhDW,EAAAA,UAAU,EAAE,oBAAAC,OAAO,EAAI,CAAE,CALuB;AAMhDC,EAAAA,WAAW,EAAE,qBAAAC,gBAAgB,EAAI,CAAE,CANa;AAOhDC,EAAAA,UAAU,EAAE,oBAAAC,OAAO,EAAI,CAAE,CAPuB;AAQhDC,EAAAA,aAAa,EAAE,uBAAAD,OAAO,EAAI,CAAE,CARoB;AAShDE,EAAAA,aAAa,EAAE,uBAAAN,OAAO,EAAI,CAAE,CAToB;AAUhDO,EAAAA,iBAAiB,EAAE,2BAAAnB,KAAK,EAAI,CAAE,CAVkB;AAWhDoB,EAAAA,YAAY,EAAE,wBAAM,CAAE,CAX0B;AAYhDC,EAAAA,aAAa,EAAE,yBAAM,CAAE,CAZyB;AAahDC,EAAAA,gBAAgB,EAAE,0BAAAC,QAAQ;AAAA,WAAIC,SAAJ;AAAA,GAbsB;AAaP;AACzCC,EAAAA,WAAW,EAAE,uBAAM,CAAE,CAd2B;AAehDC,EAAAA,KAAK,EAAE,EAfyC;AAgBhDC,EAAAA,YAAY,EAAEC,0BAhBkC;AAiBhDC,EAAAA,wBAAwB,EAAE,kCAAAC,QAAQ,EAAI;AACpC,WAAO,EAAP;AACD,GAnB+C;AAoBhDC,EAAAA,UAAU,EAAE,oBAAAC,IAAI,EAAI,CAAE;AApB0B,CAApB,CAAvB","sourcesContent":["import React from 'react'\n\nimport { webchatInitialState } from './webchat/hooks'\n\nexport const RequestContext = React.createContext({\n getString: () => '',\n setLocale: () => '',\n session: {},\n params: {},\n input: {},\n defaultDelay: 0,\n defaultTyping: 0,\n})\n\nexport const WebchatContext = React.createContext({\n sendText: text => {},\n sendAttachment: attachment => {},\n sendPayload: payload => {},\n sendInput: input => {},\n setReplies: replies => {},\n openWebview: webviewComponent => {},\n addMessage: message => {},\n updateMessage: message => {},\n updateReplies: replies => {},\n updateLatestInput: input => {},\n closeWebview: () => {},\n toggleWebchat: () => {},\n getThemeProperty: property => undefined, // used to retrieve a specific property of the theme defined by the developer in his 'webchat/index.js'\n resolveCase: () => {},\n theme: {},\n webchatState: webchatInitialState,\n updateWebchatDevSettings: settings => {\n return {}\n },\n updateUser: user => {},\n})\n"],"file":"contexts.js"}
|
package/lib/dev-app.js
ADDED
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.DevApp = void 0;
|
|
9
|
+
|
|
10
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
+
|
|
12
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
13
|
+
|
|
14
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
15
|
+
|
|
16
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
17
|
+
|
|
18
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
19
|
+
|
|
20
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
21
|
+
|
|
22
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
23
|
+
|
|
24
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
25
|
+
|
|
26
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
27
|
+
|
|
28
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
29
|
+
|
|
30
|
+
var _lodash = _interopRequireDefault(require("lodash.merge"));
|
|
31
|
+
|
|
32
|
+
var _react = _interopRequireDefault(require("react"));
|
|
33
|
+
|
|
34
|
+
var _reactDom = require("react-dom");
|
|
35
|
+
|
|
36
|
+
var _constants = require("./constants");
|
|
37
|
+
|
|
38
|
+
var _reactBot = require("./react-bot");
|
|
39
|
+
|
|
40
|
+
var _dom = require("./util/dom");
|
|
41
|
+
|
|
42
|
+
var _webchatDev = require("./webchat/webchat-dev");
|
|
43
|
+
|
|
44
|
+
var _webchatApp = require("./webchat-app");
|
|
45
|
+
|
|
46
|
+
var _excluded = ["theme", "persistentMenu", "coverComponent", "blockInputs", "enableEmojiPicker", "enableAttachments", "enableUserInput", "enableAnimations", "shadowDOM", "hostId", "storage", "storageKey", "onInit", "onOpen", "onClose", "onMessage"],
|
|
47
|
+
_excluded2 = ["theme", "persistentMenu", "coverComponent", "blockInputs", "enableEmojiPicker", "enableAttachments", "enableUserInput", "enableAnimations", "storage", "storageKey", "onInit", "onOpen", "onClose", "onMessage", "hostId"];
|
|
48
|
+
|
|
49
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
50
|
+
|
|
51
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
52
|
+
|
|
53
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
54
|
+
|
|
55
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
56
|
+
|
|
57
|
+
var DevApp = /*#__PURE__*/function (_WebchatApp) {
|
|
58
|
+
(0, _inherits2["default"])(DevApp, _WebchatApp);
|
|
59
|
+
|
|
60
|
+
var _super = _createSuper(DevApp);
|
|
61
|
+
|
|
62
|
+
function DevApp(_ref) {
|
|
63
|
+
var _this;
|
|
64
|
+
|
|
65
|
+
var _ref$theme = _ref.theme,
|
|
66
|
+
theme = _ref$theme === void 0 ? {} : _ref$theme,
|
|
67
|
+
persistentMenu = _ref.persistentMenu,
|
|
68
|
+
coverComponent = _ref.coverComponent,
|
|
69
|
+
blockInputs = _ref.blockInputs,
|
|
70
|
+
enableEmojiPicker = _ref.enableEmojiPicker,
|
|
71
|
+
enableAttachments = _ref.enableAttachments,
|
|
72
|
+
enableUserInput = _ref.enableUserInput,
|
|
73
|
+
enableAnimations = _ref.enableAnimations,
|
|
74
|
+
shadowDOM = _ref.shadowDOM,
|
|
75
|
+
hostId = _ref.hostId,
|
|
76
|
+
storage = _ref.storage,
|
|
77
|
+
storageKey = _ref.storageKey,
|
|
78
|
+
onInit = _ref.onInit,
|
|
79
|
+
onOpen = _ref.onOpen,
|
|
80
|
+
onClose = _ref.onClose,
|
|
81
|
+
onMessage = _ref.onMessage,
|
|
82
|
+
botOptions = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
83
|
+
(0, _classCallCheck2["default"])(this, DevApp);
|
|
84
|
+
_this = _super.call(this, {
|
|
85
|
+
theme: theme,
|
|
86
|
+
persistentMenu: persistentMenu,
|
|
87
|
+
coverComponent: coverComponent,
|
|
88
|
+
blockInputs: blockInputs,
|
|
89
|
+
enableEmojiPicker: enableEmojiPicker,
|
|
90
|
+
enableAttachments: enableAttachments,
|
|
91
|
+
enableUserInput: enableUserInput,
|
|
92
|
+
enableAnimations: enableAnimations,
|
|
93
|
+
shadowDOM: shadowDOM,
|
|
94
|
+
hostId: hostId,
|
|
95
|
+
storage: storage,
|
|
96
|
+
storageKey: storageKey,
|
|
97
|
+
onInit: onInit,
|
|
98
|
+
onOpen: onOpen,
|
|
99
|
+
onClose: onClose,
|
|
100
|
+
onMessage: onMessage
|
|
101
|
+
});
|
|
102
|
+
_this.bot = new _reactBot.ReactBot(_objectSpread({}, botOptions));
|
|
103
|
+
return _this;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
(0, _createClass2["default"])(DevApp, [{
|
|
107
|
+
key: "getComponent",
|
|
108
|
+
value: function getComponent(host) {
|
|
109
|
+
var _this2 = this;
|
|
110
|
+
|
|
111
|
+
var optionsAtRuntime = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
112
|
+
var _optionsAtRuntime$the = optionsAtRuntime.theme,
|
|
113
|
+
theme = _optionsAtRuntime$the === void 0 ? {} : _optionsAtRuntime$the,
|
|
114
|
+
persistentMenu = optionsAtRuntime.persistentMenu,
|
|
115
|
+
coverComponent = optionsAtRuntime.coverComponent,
|
|
116
|
+
blockInputs = optionsAtRuntime.blockInputs,
|
|
117
|
+
enableEmojiPicker = optionsAtRuntime.enableEmojiPicker,
|
|
118
|
+
enableAttachments = optionsAtRuntime.enableAttachments,
|
|
119
|
+
enableUserInput = optionsAtRuntime.enableUserInput,
|
|
120
|
+
enableAnimations = optionsAtRuntime.enableAnimations,
|
|
121
|
+
storage = optionsAtRuntime.storage,
|
|
122
|
+
storageKey = optionsAtRuntime.storageKey,
|
|
123
|
+
onInit = optionsAtRuntime.onInit,
|
|
124
|
+
onOpen = optionsAtRuntime.onOpen,
|
|
125
|
+
onClose = optionsAtRuntime.onClose,
|
|
126
|
+
onMessage = optionsAtRuntime.onMessage,
|
|
127
|
+
hostId = optionsAtRuntime.hostId,
|
|
128
|
+
webchatOptions = (0, _objectWithoutProperties2["default"])(optionsAtRuntime, _excluded2);
|
|
129
|
+
theme = (0, _lodash["default"])(this.theme, theme);
|
|
130
|
+
persistentMenu = persistentMenu || this.persistentMenu;
|
|
131
|
+
coverComponent = coverComponent || this.coverComponent;
|
|
132
|
+
blockInputs = blockInputs || this.blockInputs;
|
|
133
|
+
enableEmojiPicker = enableEmojiPicker || this.enableEmojiPicker;
|
|
134
|
+
enableAttachments = enableAttachments || this.enableAttachments;
|
|
135
|
+
enableUserInput = enableUserInput || this.enableUserInput;
|
|
136
|
+
enableAnimations = enableAnimations || this.enableAnimations;
|
|
137
|
+
storage = storage || this.storage;
|
|
138
|
+
storageKey = storageKey || this.storageKey;
|
|
139
|
+
this.onInit = onInit || this.onInit;
|
|
140
|
+
this.onOpen = onOpen || this.onOpen;
|
|
141
|
+
this.onClose = onClose || this.onClose;
|
|
142
|
+
this.onMessage = onMessage || this.onMessage;
|
|
143
|
+
this.hostId = hostId || this.hostId;
|
|
144
|
+
this.createRootElement(host);
|
|
145
|
+
return /*#__PURE__*/_react["default"].createElement(_webchatDev.WebchatDev, (0, _extends2["default"])({}, webchatOptions, {
|
|
146
|
+
ref: this.webchatRef,
|
|
147
|
+
host: this.host,
|
|
148
|
+
shadowDOM: this.shadowDOM,
|
|
149
|
+
theme: theme,
|
|
150
|
+
persistentMenu: persistentMenu,
|
|
151
|
+
coverComponent: coverComponent,
|
|
152
|
+
blockInputs: blockInputs,
|
|
153
|
+
enableEmojiPicker: enableEmojiPicker,
|
|
154
|
+
enableAttachments: enableAttachments,
|
|
155
|
+
enableUserInput: enableUserInput,
|
|
156
|
+
enableAnimations: enableAnimations,
|
|
157
|
+
storage: storage,
|
|
158
|
+
storageKey: storageKey,
|
|
159
|
+
getString: function getString(stringId, session) {
|
|
160
|
+
return _this2.bot.getString(stringId, session);
|
|
161
|
+
},
|
|
162
|
+
setLocale: function setLocale(locale, session) {
|
|
163
|
+
return _this2.bot.setLocale(locale, session);
|
|
164
|
+
},
|
|
165
|
+
onInit: function onInit() {
|
|
166
|
+
return _this2.onInitWebchat.apply(_this2, arguments);
|
|
167
|
+
},
|
|
168
|
+
onOpen: function onOpen() {
|
|
169
|
+
return _this2.onOpenWebchat.apply(_this2, arguments);
|
|
170
|
+
},
|
|
171
|
+
onClose: function onClose() {
|
|
172
|
+
return _this2.onCloseWebchat.apply(_this2, arguments);
|
|
173
|
+
},
|
|
174
|
+
onUserInput: function onUserInput() {
|
|
175
|
+
return _this2.onUserInput.apply(_this2, arguments);
|
|
176
|
+
}
|
|
177
|
+
}));
|
|
178
|
+
}
|
|
179
|
+
}, {
|
|
180
|
+
key: "render",
|
|
181
|
+
value: function render(dest) {
|
|
182
|
+
var _this3 = this;
|
|
183
|
+
|
|
184
|
+
var optionsAtRuntime = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
185
|
+
(0, _dom.onDOMLoaded)(function () {
|
|
186
|
+
(0, _reactDom.render)(_this3.getComponent(dest, optionsAtRuntime), _this3.getReactMountNode(dest));
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
}, {
|
|
190
|
+
key: "onUserInput",
|
|
191
|
+
value: function () {
|
|
192
|
+
var _onUserInput = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(_ref2) {
|
|
193
|
+
var _this4 = this;
|
|
194
|
+
|
|
195
|
+
var input, session, lastRoutePath, resp;
|
|
196
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
197
|
+
while (1) {
|
|
198
|
+
switch (_context.prev = _context.next) {
|
|
199
|
+
case 0:
|
|
200
|
+
input = _ref2.input, session = _ref2.session, lastRoutePath = _ref2.lastRoutePath;
|
|
201
|
+
this.onMessage && this.onMessage(this, {
|
|
202
|
+
from: _constants.SENDERS.user,
|
|
203
|
+
message: input
|
|
204
|
+
});
|
|
205
|
+
_context.next = 4;
|
|
206
|
+
return this.bot.input({
|
|
207
|
+
input: input,
|
|
208
|
+
session: session,
|
|
209
|
+
lastRoutePath: lastRoutePath
|
|
210
|
+
});
|
|
211
|
+
|
|
212
|
+
case 4:
|
|
213
|
+
resp = _context.sent;
|
|
214
|
+
this.onMessage && resp.response.map(function (r) {
|
|
215
|
+
return _this4.onMessage(_this4, {
|
|
216
|
+
from: _constants.SENDERS.bot,
|
|
217
|
+
message: r
|
|
218
|
+
});
|
|
219
|
+
});
|
|
220
|
+
this.webchatRef.current.addBotResponse(resp);
|
|
221
|
+
|
|
222
|
+
case 7:
|
|
223
|
+
case "end":
|
|
224
|
+
return _context.stop();
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}, _callee, this);
|
|
228
|
+
}));
|
|
229
|
+
|
|
230
|
+
function onUserInput(_x) {
|
|
231
|
+
return _onUserInput.apply(this, arguments);
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
return onUserInput;
|
|
235
|
+
}()
|
|
236
|
+
}]);
|
|
237
|
+
return DevApp;
|
|
238
|
+
}(_webchatApp.WebchatApp);
|
|
239
|
+
|
|
240
|
+
exports.DevApp = DevApp;
|
|
241
|
+
//# sourceMappingURL=dev-app.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/dev-app.jsx"],"names":["DevApp","theme","persistentMenu","coverComponent","blockInputs","enableEmojiPicker","enableAttachments","enableUserInput","enableAnimations","shadowDOM","hostId","storage","storageKey","onInit","onOpen","onClose","onMessage","botOptions","bot","ReactBot","host","optionsAtRuntime","webchatOptions","createRootElement","webchatRef","stringId","session","getString","locale","setLocale","onInitWebchat","onOpenWebchat","onCloseWebchat","onUserInput","dest","getComponent","getReactMountNode","input","lastRoutePath","from","SENDERS","user","message","resp","response","map","r","current","addBotResponse","WebchatApp"],"mappings":"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","sourcesContent":["import merge from 'lodash.merge'\nimport React from 'react'\nimport { render } from 'react-dom'\n\nimport { SENDERS } from './constants'\nimport { ReactBot } from './react-bot'\nimport { onDOMLoaded } from './util/dom'\nimport { WebchatDev } from './webchat/webchat-dev'\nimport { WebchatApp } from './webchat-app'\n\nexport class DevApp extends WebchatApp {\n constructor({\n theme = {},\n persistentMenu,\n coverComponent,\n blockInputs,\n enableEmojiPicker,\n enableAttachments,\n enableUserInput,\n enableAnimations,\n shadowDOM,\n hostId,\n storage,\n storageKey,\n onInit,\n onOpen,\n onClose,\n onMessage,\n ...botOptions\n }) {\n super({\n theme,\n persistentMenu,\n coverComponent,\n blockInputs,\n enableEmojiPicker,\n enableAttachments,\n enableUserInput,\n enableAnimations,\n shadowDOM,\n hostId,\n storage,\n storageKey,\n onInit,\n onOpen,\n onClose,\n onMessage,\n })\n this.bot = new ReactBot({\n ...botOptions,\n })\n }\n\n getComponent(host, optionsAtRuntime = {}) {\n let {\n theme = {},\n persistentMenu,\n coverComponent,\n blockInputs,\n enableEmojiPicker,\n enableAttachments,\n enableUserInput,\n enableAnimations,\n storage,\n storageKey,\n onInit,\n onOpen,\n onClose,\n onMessage,\n hostId,\n ...webchatOptions\n } = optionsAtRuntime\n theme = merge(this.theme, theme)\n persistentMenu = persistentMenu || this.persistentMenu\n coverComponent = coverComponent || this.coverComponent\n blockInputs = blockInputs || this.blockInputs\n enableEmojiPicker = enableEmojiPicker || this.enableEmojiPicker\n enableAttachments = enableAttachments || this.enableAttachments\n enableUserInput = enableUserInput || this.enableUserInput\n enableAnimations = enableAnimations || this.enableAnimations\n storage = storage || this.storage\n storageKey = storageKey || this.storageKey\n this.onInit = onInit || this.onInit\n this.onOpen = onOpen || this.onOpen\n this.onClose = onClose || this.onClose\n this.onMessage = onMessage || this.onMessage\n this.hostId = hostId || this.hostId\n this.createRootElement(host)\n return (\n <WebchatDev\n {...webchatOptions}\n ref={this.webchatRef}\n host={this.host}\n shadowDOM={this.shadowDOM}\n theme={theme}\n persistentMenu={persistentMenu}\n coverComponent={coverComponent}\n blockInputs={blockInputs}\n enableEmojiPicker={enableEmojiPicker}\n enableAttachments={enableAttachments}\n enableUserInput={enableUserInput}\n enableAnimations={enableAnimations}\n storage={storage}\n storageKey={storageKey}\n getString={(stringId, session) => this.bot.getString(stringId, session)}\n setLocale={(locale, session) => this.bot.setLocale(locale, session)}\n onInit={(...args) => this.onInitWebchat(...args)}\n onOpen={(...args) => this.onOpenWebchat(...args)}\n onClose={(...args) => this.onCloseWebchat(...args)}\n onUserInput={(...args) => this.onUserInput(...args)}\n />\n )\n }\n\n render(dest, optionsAtRuntime = {}) {\n onDOMLoaded(() => {\n render(\n this.getComponent(dest, optionsAtRuntime),\n this.getReactMountNode(dest)\n )\n })\n }\n\n async onUserInput({ input, session, lastRoutePath }) {\n this.onMessage &&\n this.onMessage(this, { from: SENDERS.user, message: input })\n const resp = await this.bot.input({ input, session, lastRoutePath })\n this.onMessage &&\n resp.response.map(r =>\n this.onMessage(this, { from: SENDERS.bot, message: r })\n )\n this.webchatRef.current.addBotResponse(resp)\n }\n}\n"],"file":"dev-app.js"}
|