@defra/flood-webchat 0.0.1-beta.23 → 0.0.1-beta.24
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/client.js +34 -306
- package/dist/client.js.map +1 -1
- package/package.json +1 -1
- package/src/client/components/availability/availability.jsx +3 -3
- package/src/client/components/chat/chat.jsx +5 -13
- package/src/client/components/panel/panel-header.jsx +2 -4
- package/src/client/components/panel/panel.jsx +1 -15
- package/src/client/components/screens/end-chat.jsx +2 -22
- package/src/client/components/screens/pre-chat.jsx +3 -7
- package/src/client/components/screens/request-chat.jsx +7 -6
- package/src/client/store/AppProvider.jsx +0 -1
- package/src/client/components/screens/end-feedback.jsx +0 -18
- package/src/client/components/screens/feedback.jsx +0 -149
package/dist/client.js
CHANGED
|
@@ -24,10 +24,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
24
24
|
function Availability() {
|
|
25
25
|
const {
|
|
26
26
|
availability,
|
|
27
|
+
messages,
|
|
27
28
|
isChatOpen,
|
|
28
29
|
setChatVisibility,
|
|
29
|
-
unseenCount
|
|
30
|
-
threadId
|
|
30
|
+
unseenCount
|
|
31
31
|
} = (0,_store_useApp__WEBPACK_IMPORTED_MODULE_3__.useApp)();
|
|
32
32
|
const [isFixed, setIsFixed] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
|
|
33
33
|
const buttonRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
|
|
@@ -47,7 +47,7 @@ function Availability() {
|
|
|
47
47
|
const intersectionCallback = entries => {
|
|
48
48
|
const [entry] = entries;
|
|
49
49
|
const isBelowFold = !entry.isIntersecting && entry.boundingClientRect.top > 0;
|
|
50
|
-
setIsFixed(!isChatOpen && isBelowFold
|
|
50
|
+
setIsFixed(!isChatOpen && isBelowFold);
|
|
51
51
|
};
|
|
52
52
|
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
|
|
53
53
|
const observer = new window.IntersectionObserver(intersectionCallback, {
|
|
@@ -68,7 +68,7 @@ function Availability() {
|
|
|
68
68
|
document.body.classList.toggle('wc-scroll-padding', isFixed);
|
|
69
69
|
}, [isFixed]);
|
|
70
70
|
let TextComponent = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, "Show Chat");
|
|
71
|
-
if (!
|
|
71
|
+
if (!messages.length) {
|
|
72
72
|
TextComponent = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, "Start Chat");
|
|
73
73
|
}
|
|
74
74
|
switch (availability) {
|
|
@@ -175,6 +175,7 @@ function Chat({
|
|
|
175
175
|
connectionHeadlineText = 'Webchat is not currently available';
|
|
176
176
|
}
|
|
177
177
|
const sendMessage = e => {
|
|
178
|
+
e.preventDefault();
|
|
178
179
|
if (messageRef.current.value.length === 0) {
|
|
179
180
|
return;
|
|
180
181
|
}
|
|
@@ -185,20 +186,11 @@ function Chat({
|
|
|
185
186
|
}
|
|
186
187
|
setUserMessage('');
|
|
187
188
|
};
|
|
188
|
-
const handleKeyPress = e => {
|
|
189
|
-
if (e.key === 'Enter' && !e.shiftKey) {
|
|
190
|
-
e.preventDefault();
|
|
191
|
-
sendMessage();
|
|
192
|
-
}
|
|
193
|
-
};
|
|
194
|
-
const handleSubmit = e => {
|
|
195
|
-
e.preventDefault();
|
|
196
|
-
sendMessage();
|
|
197
|
-
};
|
|
198
189
|
const saveChat = () => {
|
|
199
190
|
const transcript = (0,_lib_transform_messages_js__WEBPACK_IMPORTED_MODULE_6__.formatTranscript)(messages);
|
|
200
191
|
const saveChatLink = document.querySelector('#transcript-download');
|
|
201
192
|
saveChatLink.setAttribute('href', `data:text/plain;charset=utf-8,${transcript}`);
|
|
193
|
+
saveChatLink.click();
|
|
202
194
|
};
|
|
203
195
|
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_panel_panel_header_jsx__WEBPACK_IMPORTED_MODULE_1__.PanelHeader, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
204
196
|
className: "wc-status"
|
|
@@ -253,8 +245,7 @@ function Chat({
|
|
|
253
245
|
className: "wc-footer__input"
|
|
254
246
|
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("form", {
|
|
255
247
|
className: "wc-form",
|
|
256
|
-
noValidate: true
|
|
257
|
-
onSubmit: handleSubmit
|
|
248
|
+
noValidate: true
|
|
258
249
|
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", {
|
|
259
250
|
className: "govuk-label wc-form__label govuk-!-font-size-16",
|
|
260
251
|
htmlFor: "wc-form-textarea"
|
|
@@ -268,13 +259,13 @@ function Chat({
|
|
|
268
259
|
id: "wc-form-textarea",
|
|
269
260
|
name: "message",
|
|
270
261
|
onChange: onChange,
|
|
271
|
-
onKeyPress: handleKeyPress,
|
|
272
262
|
value: userMessage
|
|
273
263
|
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
|
|
274
264
|
type: "submit",
|
|
275
265
|
className: "wc-form__button govuk-button govuk-!-font-size-16",
|
|
276
266
|
value: "Send",
|
|
277
|
-
"data-prevent-double-click": "true"
|
|
267
|
+
"data-prevent-double-click": "true",
|
|
268
|
+
onClick: sendMessage
|
|
278
269
|
}))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
279
270
|
className: "wc-footer__settings"
|
|
280
271
|
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
@@ -425,10 +416,8 @@ function PanelHeader() {
|
|
|
425
416
|
const onClose = e => {
|
|
426
417
|
e.preventDefault();
|
|
427
418
|
setChatVisibility(false);
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
setUnseenCount(0);
|
|
431
|
-
}
|
|
419
|
+
thread.lastMessageSeen();
|
|
420
|
+
setUnseenCount(0);
|
|
432
421
|
};
|
|
433
422
|
let ButtonComponent = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
|
|
434
423
|
className: "wc-header__close",
|
|
@@ -490,13 +479,9 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
490
479
|
/* harmony import */ var _screens_unavailable_jsx__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../screens/unavailable.jsx */ "./src/client/components/screens/unavailable.jsx");
|
|
491
480
|
/* harmony import */ var _screens_end_chat_jsx__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../screens/end-chat.jsx */ "./src/client/components/screens/end-chat.jsx");
|
|
492
481
|
/* harmony import */ var _screens_settings_jsx__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../screens/settings.jsx */ "./src/client/components/screens/settings.jsx");
|
|
493
|
-
/* harmony import */ var
|
|
494
|
-
/* harmony import */ var
|
|
495
|
-
/* harmony import */ var
|
|
496
|
-
/* harmony import */ var _hooks_useFocusedElements_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../hooks/useFocusedElements.js */ "./src/client/hooks/useFocusedElements.js");
|
|
497
|
-
/* harmony import */ var _screens_end_feedback_jsx__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../screens/end-feedback.jsx */ "./src/client/components/screens/end-feedback.jsx");
|
|
498
|
-
|
|
499
|
-
|
|
482
|
+
/* harmony import */ var _store_useApp_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../store/useApp.js */ "./src/client/store/useApp.js");
|
|
483
|
+
/* harmony import */ var _store_useChatSdk_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../store/useChatSdk.js */ "./src/client/store/useChatSdk.js");
|
|
484
|
+
/* harmony import */ var _hooks_useFocusedElements_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../hooks/useFocusedElements.js */ "./src/client/hooks/useFocusedElements.js");
|
|
500
485
|
|
|
501
486
|
|
|
502
487
|
|
|
@@ -519,13 +504,13 @@ function Panel() {
|
|
|
519
504
|
setChatVisibility,
|
|
520
505
|
setMessages,
|
|
521
506
|
setUnseenCount
|
|
522
|
-
} = (0,
|
|
507
|
+
} = (0,_store_useApp_js__WEBPACK_IMPORTED_MODULE_8__.useApp)();
|
|
523
508
|
const {
|
|
524
509
|
fetchThread,
|
|
525
510
|
fetchMessages
|
|
526
|
-
} = (0,
|
|
511
|
+
} = (0,_store_useChatSdk_js__WEBPACK_IMPORTED_MODULE_9__.useChatSdk)(sdk);
|
|
527
512
|
const [screen, setScreen] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(threadId ? 2 : 0);
|
|
528
|
-
(0,
|
|
513
|
+
(0,_hooks_useFocusedElements_js__WEBPACK_IMPORTED_MODULE_10__.useFocusedElements)(screen);
|
|
529
514
|
|
|
530
515
|
/**
|
|
531
516
|
* Initializes the eventListener for pressing the escape key
|
|
@@ -566,10 +551,6 @@ function Panel() {
|
|
|
566
551
|
}, [thread, threadId]);
|
|
567
552
|
const onEscapeKey = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(e => {
|
|
568
553
|
if (e.key === 'Escape' || e.key === 'Esc') {
|
|
569
|
-
if (thread) {
|
|
570
|
-
thread.lastMessageSeen();
|
|
571
|
-
setUnseenCount(0);
|
|
572
|
-
}
|
|
573
554
|
setChatVisibility(false);
|
|
574
555
|
}
|
|
575
556
|
}, []);
|
|
@@ -581,9 +562,7 @@ function Panel() {
|
|
|
581
562
|
const goToRequestChatScreen = handleScreenChange(1);
|
|
582
563
|
const goToChatScreen = handleScreenChange(2);
|
|
583
564
|
const goToEndChatScreen = handleScreenChange(3);
|
|
584
|
-
const goToFeedbackScreen = handleScreenChange(4);
|
|
585
565
|
const goToSettingsScreen = handleScreenChange(5);
|
|
586
|
-
const goToEndFeedbackScreen = handleScreenChange(6);
|
|
587
566
|
let ScreenComponent;
|
|
588
567
|
switch (screen) {
|
|
589
568
|
case 0:
|
|
@@ -604,14 +583,7 @@ function Panel() {
|
|
|
604
583
|
break;
|
|
605
584
|
case 3:
|
|
606
585
|
ScreenComponent = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_screens_end_chat_jsx__WEBPACK_IMPORTED_MODULE_6__.EndChat, {
|
|
607
|
-
onChatScreen: goToChatScreen
|
|
608
|
-
onEndChatConfirm: goToFeedbackScreen
|
|
609
|
-
});
|
|
610
|
-
break;
|
|
611
|
-
case 4:
|
|
612
|
-
ScreenComponent = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_screens_feedback_jsx__WEBPACK_IMPORTED_MODULE_8__.Feedback, {
|
|
613
|
-
onCancel: () => setChatVisibility(false),
|
|
614
|
-
onConfirmSubmit: goToEndFeedbackScreen
|
|
586
|
+
onChatScreen: goToChatScreen
|
|
615
587
|
});
|
|
616
588
|
break;
|
|
617
589
|
case 5:
|
|
@@ -619,11 +591,6 @@ function Panel() {
|
|
|
619
591
|
onCancel: goToChatScreen
|
|
620
592
|
});
|
|
621
593
|
break;
|
|
622
|
-
case 6:
|
|
623
|
-
ScreenComponent = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_screens_end_feedback_jsx__WEBPACK_IMPORTED_MODULE_12__.EndFeedback, {
|
|
624
|
-
onClose: () => setChatVisibility(false)
|
|
625
|
-
});
|
|
626
|
-
break;
|
|
627
594
|
default:
|
|
628
595
|
ScreenComponent = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_screens_pre_chat_jsx__WEBPACK_IMPORTED_MODULE_2__.PreChat, {
|
|
629
596
|
onContinue: goToRequestChatScreen
|
|
@@ -658,36 +625,11 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
658
625
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
|
|
659
626
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
660
627
|
/* harmony import */ var _panel_panel_header_jsx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../panel/panel-header.jsx */ "./src/client/components/panel/panel-header.jsx");
|
|
661
|
-
/* harmony import */ var _store_useApp_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../store/useApp.js */ "./src/client/store/useApp.js");
|
|
662
|
-
|
|
663
628
|
|
|
664
629
|
|
|
665
630
|
function EndChat({
|
|
666
|
-
onChatScreen
|
|
667
|
-
onEndChatConfirm
|
|
631
|
+
onChatScreen
|
|
668
632
|
}) {
|
|
669
|
-
const {
|
|
670
|
-
setCustomerId,
|
|
671
|
-
setThreadId,
|
|
672
|
-
setMessages,
|
|
673
|
-
agentStatus,
|
|
674
|
-
thread,
|
|
675
|
-
setUnseenCount
|
|
676
|
-
} = (0,_store_useApp_js__WEBPACK_IMPORTED_MODULE_2__.useApp)();
|
|
677
|
-
const confirmEndChat = async e => {
|
|
678
|
-
e.preventDefault();
|
|
679
|
-
setThreadId();
|
|
680
|
-
setMessages([]);
|
|
681
|
-
setCustomerId();
|
|
682
|
-
thread.lastMessageSeen();
|
|
683
|
-
setUnseenCount(0);
|
|
684
|
-
|
|
685
|
-
// End chat if still open
|
|
686
|
-
if (agentStatus !== 'closed') {
|
|
687
|
-
thread.endChat();
|
|
688
|
-
}
|
|
689
|
-
onEndChatConfirm(e);
|
|
690
|
-
};
|
|
691
633
|
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_panel_panel_header_jsx__WEBPACK_IMPORTED_MODULE_1__.PanelHeader, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
692
634
|
className: "wc-body"
|
|
693
635
|
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
|
|
@@ -698,9 +640,7 @@ function EndChat({
|
|
|
698
640
|
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
699
641
|
href: "#",
|
|
700
642
|
className: "govuk-button govuk-!-font-size-16",
|
|
701
|
-
"data-module": "govuk-button"
|
|
702
|
-
id: "confirmEndChat",
|
|
703
|
-
onClick: confirmEndChat
|
|
643
|
+
"data-module": "govuk-button"
|
|
704
644
|
}, "Yes, end chat"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
705
645
|
href: "#",
|
|
706
646
|
className: "govuk-link govuk-!-font-size-16",
|
|
@@ -710,218 +650,6 @@ function EndChat({
|
|
|
710
650
|
|
|
711
651
|
/***/ }),
|
|
712
652
|
|
|
713
|
-
/***/ "./src/client/components/screens/end-feedback.jsx":
|
|
714
|
-
/*!********************************************************!*\
|
|
715
|
-
!*** ./src/client/components/screens/end-feedback.jsx ***!
|
|
716
|
-
\********************************************************/
|
|
717
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
718
|
-
|
|
719
|
-
__webpack_require__.r(__webpack_exports__);
|
|
720
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
721
|
-
/* harmony export */ EndFeedback: () => (/* binding */ EndFeedback)
|
|
722
|
-
/* harmony export */ });
|
|
723
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
|
|
724
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
725
|
-
/* harmony import */ var _panel_panel_header_jsx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../panel/panel-header.jsx */ "./src/client/components/panel/panel-header.jsx");
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
function EndFeedback({
|
|
729
|
-
onClose
|
|
730
|
-
}) {
|
|
731
|
-
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_panel_panel_header_jsx__WEBPACK_IMPORTED_MODULE_1__.PanelHeader, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
732
|
-
className: "wc-body"
|
|
733
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
|
|
734
|
-
id: "wc-subtitle",
|
|
735
|
-
class: "govuk-heading-m"
|
|
736
|
-
}, "Thank you for your feedback"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
737
|
-
href: "#",
|
|
738
|
-
role: "button",
|
|
739
|
-
draggable: "false",
|
|
740
|
-
"data-module": "govuk-button",
|
|
741
|
-
"data-wc-focus-visible": true,
|
|
742
|
-
"data-wc-close-btn": true,
|
|
743
|
-
onClick: onClose
|
|
744
|
-
}, "Close window"))));
|
|
745
|
-
}
|
|
746
|
-
|
|
747
|
-
/***/ }),
|
|
748
|
-
|
|
749
|
-
/***/ "./src/client/components/screens/feedback.jsx":
|
|
750
|
-
/*!****************************************************!*\
|
|
751
|
-
!*** ./src/client/components/screens/feedback.jsx ***!
|
|
752
|
-
\****************************************************/
|
|
753
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
754
|
-
|
|
755
|
-
__webpack_require__.r(__webpack_exports__);
|
|
756
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
757
|
-
/* harmony export */ Feedback: () => (/* binding */ Feedback)
|
|
758
|
-
/* harmony export */ });
|
|
759
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
|
|
760
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
761
|
-
/* harmony import */ var _panel_panel_header_jsx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../panel/panel-header.jsx */ "./src/client/components/panel/panel-header.jsx");
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
function Feedback({
|
|
765
|
-
onConfirmSubmit,
|
|
766
|
-
onCancel
|
|
767
|
-
}) {
|
|
768
|
-
const feedbackSubmit = async e => {
|
|
769
|
-
e.preventDefault();
|
|
770
|
-
onConfirmSubmit(e);
|
|
771
|
-
onCancel(e);
|
|
772
|
-
};
|
|
773
|
-
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_panel_panel_header_jsx__WEBPACK_IMPORTED_MODULE_1__.PanelHeader, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
774
|
-
className: "wc-body"
|
|
775
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
|
|
776
|
-
id: "wc-subtitle",
|
|
777
|
-
className: "govuk-heading-s"
|
|
778
|
-
}, "Give Feedback on Floodline webchat"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, "Please note we\u2019re unable to respond to feedback."), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
779
|
-
className: "govuk-form-group"
|
|
780
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("fieldset", {
|
|
781
|
-
className: "govuk-fieldset govuk-!-margin-bottom-4"
|
|
782
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("legend", {
|
|
783
|
-
className: "govuk-fieldset-heading govuk-fieldset__legend"
|
|
784
|
-
}, "Overall, how did you feel about webchat?"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
785
|
-
className: "govuk-radios govuk-radios--small",
|
|
786
|
-
"data-module": "govuk-radios"
|
|
787
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
788
|
-
className: "govuk-radios__item"
|
|
789
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
|
|
790
|
-
id: "very-satisfied",
|
|
791
|
-
name: "satisfaction",
|
|
792
|
-
type: "radio",
|
|
793
|
-
className: "govuk-radios__input",
|
|
794
|
-
value: "Very satisfied"
|
|
795
|
-
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", {
|
|
796
|
-
className: "govuk-label govuk-radios__label",
|
|
797
|
-
for: "very-satisfied"
|
|
798
|
-
}, "Very satisfied")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
799
|
-
className: "govuk-radios__item"
|
|
800
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
|
|
801
|
-
id: "satisfied",
|
|
802
|
-
name: "satisfaction",
|
|
803
|
-
type: "radio",
|
|
804
|
-
className: "govuk-radios__input",
|
|
805
|
-
value: "Satisfied"
|
|
806
|
-
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", {
|
|
807
|
-
className: "govuk-label govuk-radios__label",
|
|
808
|
-
for: "satisfied"
|
|
809
|
-
}, "Satisfied")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
810
|
-
className: "govuk-radios__item"
|
|
811
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
|
|
812
|
-
id: "no-opinion",
|
|
813
|
-
name: "satisfaction",
|
|
814
|
-
type: "radio",
|
|
815
|
-
className: "govuk-radios__input",
|
|
816
|
-
value: "No opinion"
|
|
817
|
-
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", {
|
|
818
|
-
className: "govuk-label govuk-radios__label",
|
|
819
|
-
for: "no-opinion"
|
|
820
|
-
}, "No Opinion")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
821
|
-
className: "govuk-radios__item"
|
|
822
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
|
|
823
|
-
id: "dissatisfied",
|
|
824
|
-
name: "satisfaction",
|
|
825
|
-
type: "radio",
|
|
826
|
-
className: "govuk-radios__input",
|
|
827
|
-
value: "Dissatisfied"
|
|
828
|
-
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", {
|
|
829
|
-
className: "govuk-label govuk-radios__label",
|
|
830
|
-
for: "dissatisfied"
|
|
831
|
-
}, "Dissatisfied")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
832
|
-
className: "govuk-radios__item"
|
|
833
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
|
|
834
|
-
id: "very-dissatisfied",
|
|
835
|
-
name: "satisfaction",
|
|
836
|
-
type: "radio",
|
|
837
|
-
className: "govuk-radios__input",
|
|
838
|
-
value: "Very dissatisfied"
|
|
839
|
-
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", {
|
|
840
|
-
className: "govuk-label govuk-radios__label",
|
|
841
|
-
for: "very-dissatisfied"
|
|
842
|
-
}, "Very dissatisfied")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("fieldset", {
|
|
843
|
-
className: "govuk-fieldset govuk-!-margin-bottom-4"
|
|
844
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("legend", {
|
|
845
|
-
className: "govuk-fieldset__legend"
|
|
846
|
-
}, "Did the adviser answer your question?"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
847
|
-
className: "govuk-radios govuk-radios--small",
|
|
848
|
-
"data-module": "govuk-radios"
|
|
849
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
850
|
-
className: "govuk-radios__item"
|
|
851
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
|
|
852
|
-
id: "answer-yes",
|
|
853
|
-
name: "answer",
|
|
854
|
-
type: "radio",
|
|
855
|
-
className: "govuk-radios__input",
|
|
856
|
-
value: "Yes"
|
|
857
|
-
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", {
|
|
858
|
-
className: "govuk-label govuk-radios__label",
|
|
859
|
-
for: "answer-yes"
|
|
860
|
-
}, "Yes")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
861
|
-
className: "govuk-radios__item"
|
|
862
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
|
|
863
|
-
id: "answer-no",
|
|
864
|
-
name: "answer",
|
|
865
|
-
type: "radio",
|
|
866
|
-
className: "govuk-radios__input",
|
|
867
|
-
value: "No"
|
|
868
|
-
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", {
|
|
869
|
-
className: "govuk-label govuk-radios__label",
|
|
870
|
-
for: "answer-no"
|
|
871
|
-
}, "No")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
872
|
-
className: "govuk-radios__item"
|
|
873
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
|
|
874
|
-
id: "answer-partly",
|
|
875
|
-
name: "answer",
|
|
876
|
-
type: "radio",
|
|
877
|
-
className: "govuk-radios__input",
|
|
878
|
-
value: "Partly"
|
|
879
|
-
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", {
|
|
880
|
-
className: "govuk-label govuk-radios__label",
|
|
881
|
-
for: "answer-partly"
|
|
882
|
-
}, "Partly"))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
883
|
-
className: "govuk-form-group"
|
|
884
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", {
|
|
885
|
-
className: "govuk-label",
|
|
886
|
-
for: "improvements"
|
|
887
|
-
}, "How can we improve webchat? (optional)"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("textarea", {
|
|
888
|
-
className: "govuk-textarea govuk-!-margin-bottom-4",
|
|
889
|
-
id: "improvements",
|
|
890
|
-
name: "improvements",
|
|
891
|
-
rows: "5"
|
|
892
|
-
})), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
893
|
-
className: "govuk-form-group"
|
|
894
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", {
|
|
895
|
-
className: "wc-fieldset-heading govuk-label",
|
|
896
|
-
for: "research"
|
|
897
|
-
}, "Tell us your email address if you want to take part in user research (optional)"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
898
|
-
id: "research-hint",
|
|
899
|
-
class: "wc-hint govuk-hint"
|
|
900
|
-
}, "We will not share your email address or use it for anything else. We\u2019ll delete it after 2 years."), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
|
|
901
|
-
className: "govuk-input govuk-!-margin-bottom-4",
|
|
902
|
-
id: "research",
|
|
903
|
-
name: "research",
|
|
904
|
-
"aria-describedby": "research-hint",
|
|
905
|
-
type: "text"
|
|
906
|
-
})), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
907
|
-
className: "govuk-button-group"
|
|
908
|
-
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
909
|
-
id: "feedback-save",
|
|
910
|
-
href: "#",
|
|
911
|
-
className: "govuk-button govuk-!-font-size-16",
|
|
912
|
-
"data-module": "govuk-button",
|
|
913
|
-
onClick: feedbackSubmit
|
|
914
|
-
}, "Submit"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
915
|
-
id: "feedback-cancel",
|
|
916
|
-
href: "#",
|
|
917
|
-
className: "govuk-link govuk-!-font-size-16",
|
|
918
|
-
"data-module": "govuk-button",
|
|
919
|
-
onClick: onCancel
|
|
920
|
-
}, "Cancel"))));
|
|
921
|
-
}
|
|
922
|
-
|
|
923
|
-
/***/ }),
|
|
924
|
-
|
|
925
653
|
/***/ "./src/client/components/screens/pre-chat.jsx":
|
|
926
654
|
/*!****************************************************!*\
|
|
927
655
|
!*** ./src/client/components/screens/pre-chat.jsx ***!
|
|
@@ -953,19 +681,19 @@ function PreChat({
|
|
|
953
681
|
className: "govuk-list govuk-list--bullet govuk-body-s"
|
|
954
682
|
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, "current flood warnings and alerts in your area"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, "information on the flood warning service"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, "advice on what to do before, during and after a flood")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
|
|
955
683
|
className: "govuk-body-s"
|
|
956
|
-
},
|
|
684
|
+
}, "There are other ways to\xA0", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
957
685
|
className: "govuk-link",
|
|
958
686
|
href: "https://www.gov.uk/sign-up-for-flood-warnings",
|
|
959
687
|
target: "_blank",
|
|
960
688
|
rel: "noreferrer"
|
|
961
|
-
}, "sign up for flood warnings"),
|
|
689
|
+
}, "sign up for flood warnings"), "\xA0and\xA0", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
962
690
|
className: "govuk-link",
|
|
963
691
|
href: "https://www.fws.environment-agency.gov.uk/app/olr/login",
|
|
964
692
|
target: "_blank",
|
|
965
693
|
rel: "noreferrer"
|
|
966
694
|
}, "manage your flood warnings account"), "."), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
|
|
967
695
|
className: "govuk-body-s"
|
|
968
|
-
},
|
|
696
|
+
}, "Do not use webchat to\xA0", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
969
697
|
className: "govuk-link",
|
|
970
698
|
href: "https://www.gov.uk/report-flood-cause",
|
|
971
699
|
target: "_blank",
|
|
@@ -1032,7 +760,6 @@ function RequestChat({
|
|
|
1032
760
|
} = (0,_store_useChatSdk_js__WEBPACK_IMPORTED_MODULE_5__.useChatSdk)(sdk);
|
|
1033
761
|
const [errors, setErrors] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({});
|
|
1034
762
|
const [questionLength, setQuestionLength] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(0);
|
|
1035
|
-
const [isButtonDisabled, setButtonDisabled] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
|
|
1036
763
|
const nameRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
|
|
1037
764
|
const questionRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
|
|
1038
765
|
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
|
|
@@ -1057,7 +784,6 @@ function RequestChat({
|
|
|
1057
784
|
}
|
|
1058
785
|
if (Object.keys(errs).length === 0) {
|
|
1059
786
|
try {
|
|
1060
|
-
setButtonDisabled(true);
|
|
1061
787
|
const threadId = uuid__WEBPACK_IMPORTED_MODULE_1__.v4();
|
|
1062
788
|
const customerId = await fetchCustomerId();
|
|
1063
789
|
const thread = await fetchThread(threadId);
|
|
@@ -1066,7 +792,6 @@ function RequestChat({
|
|
|
1066
792
|
setCustomerId(customerId);
|
|
1067
793
|
setThreadId(threadId);
|
|
1068
794
|
setThread(thread);
|
|
1069
|
-
thread.setCustomField('threadid', threadId);
|
|
1070
795
|
} catch (err) {
|
|
1071
796
|
console.log('[Request Chat Error]', err);
|
|
1072
797
|
}
|
|
@@ -1139,12 +864,18 @@ function RequestChat({
|
|
|
1139
864
|
}, questionHint), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
1140
865
|
className: "govuk-character-count__sr-status govuk-visually-hidden",
|
|
1141
866
|
"aria-live": "polite"
|
|
1142
|
-
}, questionHint))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("
|
|
1143
|
-
className: "govuk-
|
|
867
|
+
}, questionHint))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
868
|
+
className: "govuk-inset-text govuk-!-font-size-16"
|
|
869
|
+
}, "By selecting 'Request chat' you agree to the terms of our\xA0", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
870
|
+
href: "https://check-for-flooding.service.gov.uk/privacy-notice",
|
|
871
|
+
target: "_blank",
|
|
872
|
+
rel: "noreferrer",
|
|
873
|
+
className: "govuk-link"
|
|
874
|
+
}, "privacy notice"), "."), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
|
|
875
|
+
className: "govuk-button govuk-!-margin-bottom-3 govuk-!-font-size-16",
|
|
1144
876
|
"data-module": "govuk-button",
|
|
1145
|
-
onClick: onRequestChat
|
|
1146
|
-
|
|
1147
|
-
}, isButtonDisabled ? 'Requesting...' : 'Request Chat'))));
|
|
877
|
+
onClick: onRequestChat
|
|
878
|
+
}, "Request chat"))));
|
|
1148
879
|
}
|
|
1149
880
|
|
|
1150
881
|
/***/ }),
|
|
@@ -1587,9 +1318,6 @@ const AppProvider = ({
|
|
|
1587
1318
|
});
|
|
1588
1319
|
};
|
|
1589
1320
|
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
|
|
1590
|
-
sdk.onChatEvent('SetConsumerContactCustomFields', () => {
|
|
1591
|
-
console.log('Custom field set');
|
|
1592
|
-
});
|
|
1593
1321
|
sdk.onChatEvent(_nice_devone_nice_cxone_chat_web_sdk__WEBPACK_IMPORTED_MODULE_1__.ChatEvent.LIVECHAT_RECOVERED, onLiveChatRecovered);
|
|
1594
1322
|
sdk.onChatEvent(_nice_devone_nice_cxone_chat_web_sdk__WEBPACK_IMPORTED_MODULE_1__.ChatEvent.MESSAGE_CREATED, onMessageCreated);
|
|
1595
1323
|
sdk.onChatEvent(_nice_devone_nice_cxone_chat_web_sdk__WEBPACK_IMPORTED_MODULE_1__.ChatEvent.AGENT_TYPING_STARTED, onAgentTypingStarted);
|