@defra/flood-webchat 0.0.1-beta.23 → 0.0.1-beta.25
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 +49 -220
- package/dist/client.js.map +1 -1
- package/package.json +1 -1
- package/src/client/components/chat/chat.jsx +4 -4
- package/src/client/components/panel/panel-header.jsx +3 -3
- package/src/client/components/panel/panel.jsx +12 -18
- package/src/client/components/screens/end-chat.jsx +2 -2
- package/src/client/components/screens/feedback.jsx +4 -130
- package/src/client/components/screens/pre-chat.jsx +3 -7
- package/src/client/components/screens/request-chat.jsx +18 -12
- package/src/client/store/AppProvider.jsx +0 -1
- package/src/client/components/screens/end-feedback.jsx +0 -18
package/dist/client.js
CHANGED
|
@@ -174,7 +174,7 @@ function Chat({
|
|
|
174
174
|
if (availability === 'UNAVAILABLE') {
|
|
175
175
|
connectionHeadlineText = 'Webchat is not currently available';
|
|
176
176
|
}
|
|
177
|
-
const sendMessage =
|
|
177
|
+
const sendMessage = () => {
|
|
178
178
|
if (messageRef.current.value.length === 0) {
|
|
179
179
|
return;
|
|
180
180
|
}
|
|
@@ -268,7 +268,7 @@ function Chat({
|
|
|
268
268
|
id: "wc-form-textarea",
|
|
269
269
|
name: "message",
|
|
270
270
|
onChange: onChange,
|
|
271
|
-
|
|
271
|
+
onKeyDown: handleKeyPress,
|
|
272
272
|
value: userMessage
|
|
273
273
|
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
|
|
274
274
|
type: "submit",
|
|
@@ -420,13 +420,14 @@ function PanelHeader() {
|
|
|
420
420
|
const {
|
|
421
421
|
thread,
|
|
422
422
|
setChatVisibility,
|
|
423
|
-
setUnseenCount
|
|
423
|
+
setUnseenCount,
|
|
424
|
+
threadId
|
|
424
425
|
} = (0,_store_useApp_js__WEBPACK_IMPORTED_MODULE_1__.useApp)();
|
|
425
426
|
const onClose = e => {
|
|
426
427
|
e.preventDefault();
|
|
427
428
|
setChatVisibility(false);
|
|
428
|
-
if (
|
|
429
|
-
thread
|
|
429
|
+
if (threadId) {
|
|
430
|
+
thread?.lastMessageSeen();
|
|
430
431
|
setUnseenCount(0);
|
|
431
432
|
}
|
|
432
433
|
};
|
|
@@ -494,8 +495,6 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
494
495
|
/* harmony import */ var _store_useApp_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../store/useApp.js */ "./src/client/store/useApp.js");
|
|
495
496
|
/* harmony import */ var _store_useChatSdk_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../store/useChatSdk.js */ "./src/client/store/useChatSdk.js");
|
|
496
497
|
/* 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
498
|
|
|
500
499
|
|
|
501
500
|
|
|
@@ -526,6 +525,15 @@ function Panel() {
|
|
|
526
525
|
} = (0,_store_useChatSdk_js__WEBPACK_IMPORTED_MODULE_10__.useChatSdk)(sdk);
|
|
527
526
|
const [screen, setScreen] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(threadId ? 2 : 0);
|
|
528
527
|
(0,_hooks_useFocusedElements_js__WEBPACK_IMPORTED_MODULE_11__.useFocusedElements)(screen);
|
|
528
|
+
const onEscapeKey = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(e => {
|
|
529
|
+
if (e.key === 'Escape' || e.key === 'Esc') {
|
|
530
|
+
if (threadId) {
|
|
531
|
+
thread?.lastMessageSeen();
|
|
532
|
+
setUnseenCount(0);
|
|
533
|
+
}
|
|
534
|
+
setChatVisibility(false);
|
|
535
|
+
}
|
|
536
|
+
}, [thread, threadId, setUnseenCount, setChatVisibility]);
|
|
529
537
|
|
|
530
538
|
/**
|
|
531
539
|
* Initializes the eventListener for pressing the escape key
|
|
@@ -535,7 +543,7 @@ function Panel() {
|
|
|
535
543
|
return () => {
|
|
536
544
|
document.removeEventListener('keydown', escapeKeyEvent);
|
|
537
545
|
};
|
|
538
|
-
}, []);
|
|
546
|
+
}, [onEscapeKey, setChatVisibility]);
|
|
539
547
|
|
|
540
548
|
/**
|
|
541
549
|
* Recovers the thread if there is a threadId but no thread loaded in to state
|
|
@@ -564,15 +572,6 @@ function Panel() {
|
|
|
564
572
|
}
|
|
565
573
|
}
|
|
566
574
|
}, [thread, threadId]);
|
|
567
|
-
const onEscapeKey = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(e => {
|
|
568
|
-
if (e.key === 'Escape' || e.key === 'Esc') {
|
|
569
|
-
if (thread) {
|
|
570
|
-
thread.lastMessageSeen();
|
|
571
|
-
setUnseenCount(0);
|
|
572
|
-
}
|
|
573
|
-
setChatVisibility(false);
|
|
574
|
-
}
|
|
575
|
-
}, []);
|
|
576
575
|
const handleScreenChange = newScreen => e => {
|
|
577
576
|
e.preventDefault();
|
|
578
577
|
setScreen(newScreen);
|
|
@@ -583,7 +582,6 @@ function Panel() {
|
|
|
583
582
|
const goToEndChatScreen = handleScreenChange(3);
|
|
584
583
|
const goToFeedbackScreen = handleScreenChange(4);
|
|
585
584
|
const goToSettingsScreen = handleScreenChange(5);
|
|
586
|
-
const goToEndFeedbackScreen = handleScreenChange(6);
|
|
587
585
|
let ScreenComponent;
|
|
588
586
|
switch (screen) {
|
|
589
587
|
case 0:
|
|
@@ -610,8 +608,7 @@ function Panel() {
|
|
|
610
608
|
break;
|
|
611
609
|
case 4:
|
|
612
610
|
ScreenComponent = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_screens_feedback_jsx__WEBPACK_IMPORTED_MODULE_8__.Feedback, {
|
|
613
|
-
onCancel: () => setChatVisibility(false)
|
|
614
|
-
onConfirmSubmit: goToEndFeedbackScreen
|
|
611
|
+
onCancel: () => setChatVisibility(false)
|
|
615
612
|
});
|
|
616
613
|
break;
|
|
617
614
|
case 5:
|
|
@@ -619,11 +616,6 @@ function Panel() {
|
|
|
619
616
|
onCancel: goToChatScreen
|
|
620
617
|
});
|
|
621
618
|
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
619
|
default:
|
|
628
620
|
ScreenComponent = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_screens_pre_chat_jsx__WEBPACK_IMPORTED_MODULE_2__.PreChat, {
|
|
629
621
|
onContinue: goToRequestChatScreen
|
|
@@ -696,13 +688,13 @@ function EndChat({
|
|
|
696
688
|
}, "Are you sure you want to end the chat?"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
697
689
|
className: "govuk-button-group"
|
|
698
690
|
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
699
|
-
href: "#",
|
|
691
|
+
href: "#endChat",
|
|
700
692
|
className: "govuk-button govuk-!-font-size-16",
|
|
701
693
|
"data-module": "govuk-button",
|
|
702
694
|
id: "confirmEndChat",
|
|
703
695
|
onClick: confirmEndChat
|
|
704
696
|
}, "Yes, end chat"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
705
|
-
href: "#",
|
|
697
|
+
href: "#resumeChat",
|
|
706
698
|
className: "govuk-link govuk-!-font-size-16",
|
|
707
699
|
onClick: onChatScreen
|
|
708
700
|
}, "No, resume chat"))));
|
|
@@ -710,42 +702,6 @@ function EndChat({
|
|
|
710
702
|
|
|
711
703
|
/***/ }),
|
|
712
704
|
|
|
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
705
|
/***/ "./src/client/components/screens/feedback.jsx":
|
|
750
706
|
/*!****************************************************!*\
|
|
751
707
|
!*** ./src/client/components/screens/feedback.jsx ***!
|
|
@@ -762,12 +718,9 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
762
718
|
|
|
763
719
|
|
|
764
720
|
function Feedback({
|
|
765
|
-
onConfirmSubmit,
|
|
766
721
|
onCancel
|
|
767
722
|
}) {
|
|
768
|
-
const
|
|
769
|
-
e.preventDefault();
|
|
770
|
-
onConfirmSubmit(e);
|
|
723
|
+
const feedbackCancel = async e => {
|
|
771
724
|
onCancel(e);
|
|
772
725
|
};
|
|
773
726
|
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", {
|
|
@@ -775,149 +728,20 @@ function Feedback({
|
|
|
775
728
|
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
|
|
776
729
|
id: "wc-subtitle",
|
|
777
730
|
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("
|
|
779
|
-
className: "govuk-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
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", {
|
|
731
|
+
}, "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("a", {
|
|
732
|
+
className: "govuk-link",
|
|
733
|
+
href: "#",
|
|
734
|
+
target: "_blank",
|
|
735
|
+
rel: "noreferrer"
|
|
736
|
+
}, "Feedback Link"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
907
737
|
className: "govuk-button-group"
|
|
908
738
|
}, /*#__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
739
|
id: "feedback-cancel",
|
|
916
740
|
href: "#",
|
|
917
|
-
className: "govuk-link govuk-!-font-size-16",
|
|
918
741
|
"data-module": "govuk-button",
|
|
919
|
-
|
|
920
|
-
|
|
742
|
+
role: "button",
|
|
743
|
+
onClick: feedbackCancel
|
|
744
|
+
}, "Close"))));
|
|
921
745
|
}
|
|
922
746
|
|
|
923
747
|
/***/ }),
|
|
@@ -953,19 +777,19 @@ function PreChat({
|
|
|
953
777
|
className: "govuk-list govuk-list--bullet govuk-body-s"
|
|
954
778
|
}, /*#__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
779
|
className: "govuk-body-s"
|
|
956
|
-
},
|
|
780
|
+
}, "There are other ways to\xA0", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
957
781
|
className: "govuk-link",
|
|
958
782
|
href: "https://www.gov.uk/sign-up-for-flood-warnings",
|
|
959
783
|
target: "_blank",
|
|
960
784
|
rel: "noreferrer"
|
|
961
|
-
}, "sign up for flood warnings"),
|
|
785
|
+
}, "sign up for flood warnings"), "\xA0and\xA0", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
962
786
|
className: "govuk-link",
|
|
963
787
|
href: "https://www.fws.environment-agency.gov.uk/app/olr/login",
|
|
964
788
|
target: "_blank",
|
|
965
789
|
rel: "noreferrer"
|
|
966
790
|
}, "manage your flood warnings account"), "."), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
|
|
967
791
|
className: "govuk-body-s"
|
|
968
|
-
},
|
|
792
|
+
}, "Do not use webchat to\xA0", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
969
793
|
className: "govuk-link",
|
|
970
794
|
href: "https://www.gov.uk/report-flood-cause",
|
|
971
795
|
target: "_blank",
|
|
@@ -1035,6 +859,13 @@ function RequestChat({
|
|
|
1035
859
|
const [isButtonDisabled, setButtonDisabled] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
|
|
1036
860
|
const nameRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
|
|
1037
861
|
const questionRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
|
|
862
|
+
const isQuestionLengthValid = QUESTION_MAX_LENGTH >= questionLength;
|
|
863
|
+
const questionLengthRemaining = QUESTION_MAX_LENGTH - questionLength;
|
|
864
|
+
const questionLengthExceeded = questionLength - QUESTION_MAX_LENGTH;
|
|
865
|
+
let questionHint = `You have ${questionLengthRemaining} characters remaining`;
|
|
866
|
+
if (!isQuestionLengthValid) {
|
|
867
|
+
questionHint = `You have ${questionLengthExceeded} characters too many`;
|
|
868
|
+
}
|
|
1038
869
|
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
|
|
1039
870
|
if (Object.keys(errors).length) {
|
|
1040
871
|
document.querySelector('.govuk-error-summary')?.focus();
|
|
@@ -1043,6 +874,7 @@ function RequestChat({
|
|
|
1043
874
|
const onQuestionChange = e => {
|
|
1044
875
|
setQuestionLength(e.target.value.length);
|
|
1045
876
|
};
|
|
877
|
+
const buttonLabel = isButtonDisabled ? 'Requesting...' : 'Request Chat';
|
|
1046
878
|
const onRequestChat = async e => {
|
|
1047
879
|
e.preventDefault();
|
|
1048
880
|
const errs = {};
|
|
@@ -1073,13 +905,6 @@ function RequestChat({
|
|
|
1073
905
|
}
|
|
1074
906
|
setErrors(errs);
|
|
1075
907
|
};
|
|
1076
|
-
const isQuestionLengthValid = QUESTION_MAX_LENGTH >= questionLength;
|
|
1077
|
-
const questionLengthRemaining = QUESTION_MAX_LENGTH - questionLength;
|
|
1078
|
-
const questionLengthExceeded = questionLength - QUESTION_MAX_LENGTH;
|
|
1079
|
-
let questionHint = `You have ${questionLengthRemaining} characters remaining`;
|
|
1080
|
-
if (!isQuestionLengthValid) {
|
|
1081
|
-
questionHint = `You have ${questionLengthExceeded} characters too many`;
|
|
1082
|
-
}
|
|
1083
908
|
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_3__.PanelHeader, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
1084
909
|
className: "wc-body"
|
|
1085
910
|
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
@@ -1139,12 +964,19 @@ function RequestChat({
|
|
|
1139
964
|
}, questionHint), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
1140
965
|
className: "govuk-character-count__sr-status govuk-visually-hidden",
|
|
1141
966
|
"aria-live": "polite"
|
|
1142
|
-
}, questionHint))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("
|
|
967
|
+
}, questionHint))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
|
|
968
|
+
className: "govuk-inset-text govuk-!-font-size-16"
|
|
969
|
+
}, "By selecting 'Request chat' you agree to the terms of our\xA0", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
|
|
970
|
+
href: "https://check-for-flooding.service.gov.uk/privacy-notice",
|
|
971
|
+
target: "_blank",
|
|
972
|
+
rel: "noreferrer",
|
|
973
|
+
className: "govuk-link"
|
|
974
|
+
}, "privacy notice"), "."), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
|
|
1143
975
|
className: "govuk-button govuk-!-margin-top-1 govuk-!-font-size-16",
|
|
1144
976
|
"data-module": "govuk-button",
|
|
1145
977
|
onClick: onRequestChat,
|
|
1146
978
|
disabled: isButtonDisabled
|
|
1147
|
-
},
|
|
979
|
+
}, buttonLabel))));
|
|
1148
980
|
}
|
|
1149
981
|
|
|
1150
982
|
/***/ }),
|
|
@@ -1587,9 +1419,6 @@ const AppProvider = ({
|
|
|
1587
1419
|
});
|
|
1588
1420
|
};
|
|
1589
1421
|
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
|
|
1590
|
-
sdk.onChatEvent('SetConsumerContactCustomFields', () => {
|
|
1591
|
-
console.log('Custom field set');
|
|
1592
|
-
});
|
|
1593
1422
|
sdk.onChatEvent(_nice_devone_nice_cxone_chat_web_sdk__WEBPACK_IMPORTED_MODULE_1__.ChatEvent.LIVECHAT_RECOVERED, onLiveChatRecovered);
|
|
1594
1423
|
sdk.onChatEvent(_nice_devone_nice_cxone_chat_web_sdk__WEBPACK_IMPORTED_MODULE_1__.ChatEvent.MESSAGE_CREATED, onMessageCreated);
|
|
1595
1424
|
sdk.onChatEvent(_nice_devone_nice_cxone_chat_web_sdk__WEBPACK_IMPORTED_MODULE_1__.ChatEvent.AGENT_TYPING_STARTED, onAgentTypingStarted);
|