srs-heritage-chatbot 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +20 -0
- package/README.md +194 -0
- package/lib/commonjs/assets/chat-icon-mobile.svg +1 -0
- package/lib/commonjs/assets/heritage.png +0 -0
- package/lib/commonjs/assets/posiden.svg +51 -0
- package/lib/commonjs/components/LoadingTips.js +104 -0
- package/lib/commonjs/components/LoadingTips.js.map +1 -0
- package/lib/commonjs/components/email.js +461 -0
- package/lib/commonjs/components/email.js.map +1 -0
- package/lib/commonjs/components/feedback.js +114 -0
- package/lib/commonjs/components/feedback.js.map +1 -0
- package/lib/commonjs/components/header.js +126 -0
- package/lib/commonjs/components/header.js.map +1 -0
- package/lib/commonjs/components/input.js +144 -0
- package/lib/commonjs/components/input.js.map +1 -0
- package/lib/commonjs/components/productCard.js +688 -0
- package/lib/commonjs/components/productCard.js.map +1 -0
- package/lib/commonjs/components/progressCircle.js +99 -0
- package/lib/commonjs/components/progressCircle.js.map +1 -0
- package/lib/commonjs/components/testing.js +74 -0
- package/lib/commonjs/components/testing.js.map +1 -0
- package/lib/commonjs/components/voice.js +184 -0
- package/lib/commonjs/components/voice.js.map +1 -0
- package/lib/commonjs/components/welcomeButton.js +149 -0
- package/lib/commonjs/components/welcomeButton.js.map +1 -0
- package/lib/commonjs/components/welcomeInput.js +137 -0
- package/lib/commonjs/components/welcomeInput.js.map +1 -0
- package/lib/commonjs/contexts/AppContext.js +552 -0
- package/lib/commonjs/contexts/AppContext.js.map +1 -0
- package/lib/commonjs/hooks/Stream.js +599 -0
- package/lib/commonjs/hooks/Stream.js.map +1 -0
- package/lib/commonjs/hooks/useAsyncStorage.js +36 -0
- package/lib/commonjs/hooks/useAsyncStorage.js.map +1 -0
- package/lib/commonjs/index.js +44 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/layout/disclaimer.js +208 -0
- package/lib/commonjs/layout/disclaimer.js.map +1 -0
- package/lib/commonjs/layout/ex.js +254 -0
- package/lib/commonjs/layout/ex.js.map +1 -0
- package/lib/commonjs/layout/icon.js +118 -0
- package/lib/commonjs/layout/icon.js.map +1 -0
- package/lib/commonjs/layout/layout.js +168 -0
- package/lib/commonjs/layout/layout.js.map +1 -0
- package/lib/commonjs/layout/welcome.js +160 -0
- package/lib/commonjs/layout/welcome.js.map +1 -0
- package/lib/commonjs/layout/window.js +396 -0
- package/lib/commonjs/layout/window.js.map +1 -0
- package/lib/commonjs/utils/audioRecorder.js +412 -0
- package/lib/commonjs/utils/audioRecorder.js.map +1 -0
- package/lib/commonjs/utils/cloudinary.js +69 -0
- package/lib/commonjs/utils/cloudinary.js.map +1 -0
- package/lib/commonjs/utils/storage.js +76 -0
- package/lib/commonjs/utils/storage.js.map +1 -0
- package/lib/commonjs/utils/textToSpeech.js +53 -0
- package/lib/commonjs/utils/textToSpeech.js.map +1 -0
- package/lib/module/assets/chat-icon-mobile.svg +1 -0
- package/lib/module/assets/heritage.png +0 -0
- package/lib/module/assets/posiden.svg +51 -0
- package/lib/module/components/LoadingTips.js +95 -0
- package/lib/module/components/LoadingTips.js.map +1 -0
- package/lib/module/components/email.js +452 -0
- package/lib/module/components/email.js.map +1 -0
- package/lib/module/components/feedback.js +105 -0
- package/lib/module/components/feedback.js.map +1 -0
- package/lib/module/components/header.js +117 -0
- package/lib/module/components/header.js.map +1 -0
- package/lib/module/components/input.js +135 -0
- package/lib/module/components/input.js.map +1 -0
- package/lib/module/components/productCard.js +679 -0
- package/lib/module/components/productCard.js.map +1 -0
- package/lib/module/components/progressCircle.js +91 -0
- package/lib/module/components/progressCircle.js.map +1 -0
- package/lib/module/components/testing.js +66 -0
- package/lib/module/components/testing.js.map +1 -0
- package/lib/module/components/voice.js +175 -0
- package/lib/module/components/voice.js.map +1 -0
- package/lib/module/components/welcomeButton.js +140 -0
- package/lib/module/components/welcomeButton.js.map +1 -0
- package/lib/module/components/welcomeInput.js +128 -0
- package/lib/module/components/welcomeInput.js.map +1 -0
- package/lib/module/contexts/AppContext.js +542 -0
- package/lib/module/contexts/AppContext.js.map +1 -0
- package/lib/module/hooks/Stream.js +592 -0
- package/lib/module/hooks/Stream.js.map +1 -0
- package/lib/module/hooks/useAsyncStorage.js +29 -0
- package/lib/module/hooks/useAsyncStorage.js.map +1 -0
- package/lib/module/index.js +36 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/layout/disclaimer.js +199 -0
- package/lib/module/layout/disclaimer.js.map +1 -0
- package/lib/module/layout/ex.js +253 -0
- package/lib/module/layout/ex.js.map +1 -0
- package/lib/module/layout/icon.js +108 -0
- package/lib/module/layout/icon.js.map +1 -0
- package/lib/module/layout/layout.js +160 -0
- package/lib/module/layout/layout.js.map +1 -0
- package/lib/module/layout/welcome.js +150 -0
- package/lib/module/layout/welcome.js.map +1 -0
- package/lib/module/layout/window.js +387 -0
- package/lib/module/layout/window.js.map +1 -0
- package/lib/module/utils/audioRecorder.js +398 -0
- package/lib/module/utils/audioRecorder.js.map +1 -0
- package/lib/module/utils/cloudinary.js +61 -0
- package/lib/module/utils/cloudinary.js.map +1 -0
- package/lib/module/utils/storage.js +67 -0
- package/lib/module/utils/storage.js.map +1 -0
- package/lib/module/utils/textToSpeech.js +43 -0
- package/lib/module/utils/textToSpeech.js.map +1 -0
- package/lib/typescript/components/LoadingTips.d.ts +3 -0
- package/lib/typescript/components/LoadingTips.d.ts.map +1 -0
- package/lib/typescript/components/email.d.ts +6 -0
- package/lib/typescript/components/email.d.ts.map +1 -0
- package/lib/typescript/components/feedback.d.ts +6 -0
- package/lib/typescript/components/feedback.d.ts.map +1 -0
- package/lib/typescript/components/header.d.ts +3 -0
- package/lib/typescript/components/header.d.ts.map +1 -0
- package/lib/typescript/components/input.d.ts +6 -0
- package/lib/typescript/components/input.d.ts.map +1 -0
- package/lib/typescript/components/productCard.d.ts +7 -0
- package/lib/typescript/components/productCard.d.ts.map +1 -0
- package/lib/typescript/components/progressCircle.d.ts +3 -0
- package/lib/typescript/components/progressCircle.d.ts.map +1 -0
- package/lib/typescript/components/testing.d.ts +6 -0
- package/lib/typescript/components/testing.d.ts.map +1 -0
- package/lib/typescript/components/voice.d.ts +5 -0
- package/lib/typescript/components/voice.d.ts.map +1 -0
- package/lib/typescript/components/welcomeButton.d.ts +4 -0
- package/lib/typescript/components/welcomeButton.d.ts.map +1 -0
- package/lib/typescript/components/welcomeInput.d.ts +6 -0
- package/lib/typescript/components/welcomeInput.d.ts.map +1 -0
- package/lib/typescript/contexts/AppContext.d.ts +10 -0
- package/lib/typescript/contexts/AppContext.d.ts.map +1 -0
- package/lib/typescript/hooks/Stream.d.ts +2 -0
- package/lib/typescript/hooks/Stream.d.ts.map +1 -0
- package/lib/typescript/hooks/useAsyncStorage.d.ts +2 -0
- package/lib/typescript/hooks/useAsyncStorage.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +8 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/layout/disclaimer.d.ts +5 -0
- package/lib/typescript/layout/disclaimer.d.ts.map +1 -0
- package/lib/typescript/layout/ex.d.ts +1 -0
- package/lib/typescript/layout/ex.d.ts.map +1 -0
- package/lib/typescript/layout/icon.d.ts +3 -0
- package/lib/typescript/layout/icon.d.ts.map +1 -0
- package/lib/typescript/layout/layout.d.ts +3 -0
- package/lib/typescript/layout/layout.d.ts.map +1 -0
- package/lib/typescript/layout/welcome.d.ts +6 -0
- package/lib/typescript/layout/welcome.d.ts.map +1 -0
- package/lib/typescript/layout/window.d.ts +5 -0
- package/lib/typescript/layout/window.d.ts.map +1 -0
- package/lib/typescript/utils/audioRecorder.d.ts +9 -0
- package/lib/typescript/utils/audioRecorder.d.ts.map +1 -0
- package/lib/typescript/utils/cloudinary.d.ts +17 -0
- package/lib/typescript/utils/cloudinary.d.ts.map +1 -0
- package/lib/typescript/utils/storage.d.ts +29 -0
- package/lib/typescript/utils/storage.d.ts.map +1 -0
- package/lib/typescript/utils/textToSpeech.d.ts +2 -0
- package/lib/typescript/utils/textToSpeech.d.ts.map +1 -0
- package/package.json +109 -0
- package/src/assets/chat-icon-mobile.svg +1 -0
- package/src/assets/heritage.png +0 -0
- package/src/assets/posiden.svg +51 -0
- package/src/components/LoadingTips.js +99 -0
- package/src/components/email.js +467 -0
- package/src/components/feedback.js +114 -0
- package/src/components/header.js +119 -0
- package/src/components/input.js +133 -0
- package/src/components/productCard.js +815 -0
- package/src/components/progressCircle.js +88 -0
- package/src/components/testing.js +60 -0
- package/src/components/voice.js +228 -0
- package/src/components/welcomeButton.js +161 -0
- package/src/components/welcomeInput.js +133 -0
- package/src/contexts/AppContext.js +678 -0
- package/src/hooks/Stream.js +655 -0
- package/src/hooks/useAsyncStorage.js +33 -0
- package/src/index.js +30 -0
- package/src/layout/disclaimer.js +231 -0
- package/src/layout/ex.js +252 -0
- package/src/layout/icon.js +105 -0
- package/src/layout/layout.js +160 -0
- package/src/layout/welcome.js +172 -0
- package/src/layout/window.js +476 -0
- package/src/utils/audioRecorder.js +445 -0
- package/src/utils/cloudinary.js +61 -0
- package/src/utils/storage.ts +89 -0
- package/src/utils/textToSpeech.js +49 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 202.1 47.7">
|
|
3
|
+
<!-- Generator: Adobe Illustrator 29.4.0, SVG Export Plug-In . SVG Version: 2.1.0 Build 152) -->
|
|
4
|
+
<defs>
|
|
5
|
+
<style>
|
|
6
|
+
.st0, .st1 {
|
|
7
|
+
fill: #fff;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.st1 {
|
|
11
|
+
fill-rule: evenodd;
|
|
12
|
+
}
|
|
13
|
+
</style>
|
|
14
|
+
</defs>
|
|
15
|
+
<g>
|
|
16
|
+
<path class="st0" d="M65.4,7.3c-1.3-.7-2.8-1-4.5-1h-10v23.2h6.3v-6.9h3.5c1.8,0,3.3-.3,4.6-1s2.4-1.6,3.1-2.8c.7-1.2,1.1-2.7,1.1-4.3s-.4-3.1-1.1-4.3c-.7-1.2-1.7-2.2-3-2.9ZM62.5,16.2c-.3.5-.7.9-1.2,1.1-.5.3-1.2.4-1.9.4h-2.2v-6.4h2.2c.7,0,1.4.1,1.9.4.5.3.9.6,1.2,1.1s.4,1,.4,1.7-.1,1.2-.4,1.7Z"/>
|
|
17
|
+
<path class="st0" d="M84.8,12.9c-1.3-.8-3-1.1-4.8-1.1s-3.5.4-4.8,1.1c-1.3.8-2.4,1.8-3.1,3.1-.7,1.3-1.1,2.9-1.1,4.7s.4,3.3,1.1,4.7c.7,1.3,1.7,2.4,3.1,3.1,1.3.8,3,1.1,4.8,1.1s3.5-.4,4.8-1.1c1.3-.8,2.4-1.8,3.1-3.1.7-1.3,1.1-2.9,1.1-4.7s-.4-3.3-1.1-4.7c-.7-1.3-1.7-2.4-3.1-3.1ZM82.3,23.1c-.2.7-.5,1.2-.9,1.5-.4.4-.8.5-1.4.5s-1-.2-1.4-.5c-.4-.4-.7-.9-.9-1.5-.2-.7-.3-1.4-.3-2.3s.1-1.7.3-2.3.5-1.2.9-1.5c.4-.4.9-.5,1.4-.5s1,.2,1.4.5c.4.4.7.9.9,1.5.2.7.3,1.4.3,2.3s-.1,1.7-.3,2.3Z"/>
|
|
18
|
+
<path class="st0" d="M102.5,19l-3.5-.6c-.7-.1-1.1-.3-1.3-.5-.2-.2-.3-.5-.3-.7,0-.4.2-.6.6-.8.4-.2.8-.3,1.4-.3s.8,0,1.1.2c.3.1.6.3.8.6s.3.6.4.9h5.8c0-1.8-.8-3.3-2.3-4.3-1.5-1-3.4-1.6-5.9-1.6s-3.1.2-4.3.7c-1.2.4-2.1,1.1-2.8,1.9-.6.8-1,1.9-1,3.1,0,1.4.4,2.5,1.3,3.4s2.2,1.5,4,1.8l3.1.5c.7.1,1.2.3,1.5.5.3.2.5.5.5.8,0,.4-.2.6-.6.8s-.8.3-1.4.3-1.3-.1-1.8-.4c-.5-.3-.7-.7-.8-1.3h-6.2c.2,1.8,1,3.2,2.5,4.3,1.5,1.1,3.6,1.6,6.2,1.6s3-.2,4.3-.7c1.3-.5,2.2-1.2,3-2.1.7-.9,1.1-2,1.1-3.2,0-1.3-.4-2.3-1.3-3.1s-2.2-1.3-4-1.6Z"/>
|
|
19
|
+
<path class="st0" d="M124.7,14.2c-.8-.8-1.7-1.4-2.7-1.8-1.1-.4-2.3-.6-3.6-.6s-3.4.4-4.7,1.1c-1.3.7-2.3,1.8-3.1,3.1s-1.1,2.9-1.1,4.7.4,3.5,1.1,4.8,1.8,2.4,3.1,3.1c1.3.7,2.9,1.1,4.8,1.1s3-.2,4.2-.7c1.2-.5,2.2-1.2,2.9-2.1.7-.9,1.2-1.9,1.4-3.1h-5.7c-.1.3-.3.6-.6.8-.3.2-.6.4-.9.5-.4.1-.8.2-1.2.2-.6,0-1.1-.1-1.6-.4-.4-.2-.8-.6-1-1-.2-.4-.4-.9-.4-1.5v-.3h11.3v-1.4c0-1.4-.2-2.6-.6-3.7-.4-1.1-1-2-1.7-2.8ZM115.8,18.7c0-.5.1-.9.4-1.3.3-.4.6-.7,1-.9s.9-.3,1.4-.3,1,.1,1.4.3.7.5,1,.9c.2.4.4.8.4,1.3h-5.6Z"/>
|
|
20
|
+
<path class="st0" d="M132.8,10.2c.9,0,1.6-.3,2.2-.8s.9-1.2.9-2-.3-1.5-.9-2-1.3-.8-2.2-.8-1.6.3-2.2.8-.9,1.2-.9,2,.3,1.5.9,2,1.3.8,2.2.8Z"/>
|
|
21
|
+
<rect class="st0" x="129.6" y="12" width="6.2" height="17.4"/>
|
|
22
|
+
<path class="st0" d="M150.3,15.1h0c-.2-.6-.6-1.1-1-1.6-.4-.5-1-.9-1.6-1.2-.6-.3-1.4-.4-2.3-.4s-2.2.3-3.3.9c-1,.6-1.9,1.6-2.5,2.9-.7,1.3-1,3-1,5.1s.3,3.7.9,5c.6,1.3,1.5,2.3,2.5,3,1,.6,2.2,1,3.4,1s1.5-.1,2.2-.4,1.2-.6,1.6-1.1c.4-.5.8-1,1-1.6h.1v2.9h6.2V6.2h-6.2v8.8ZM150.1,22.9c-.2.6-.5,1.1-1,1.4-.4.3-.9.5-1.5.5s-1.1-.2-1.5-.5-.7-.8-.9-1.4c-.2-.6-.3-1.4-.3-2.2s.1-1.6.3-2.2c.2-.6.5-1.1.9-1.4.4-.3.9-.5,1.5-.5s1.1.2,1.5.5c.4.3.7.8,1,1.4.2.6.3,1.4.3,2.2s-.1,1.6-.3,2.2Z"/>
|
|
23
|
+
<path class="st0" d="M172.8,12.9c-1.3-.8-3-1.1-4.8-1.1s-3.5.4-4.8,1.1c-1.3.8-2.4,1.8-3.1,3.1-.7,1.3-1.1,2.9-1.1,4.7s.4,3.3,1.1,4.7c.7,1.3,1.7,2.4,3.1,3.1,1.3.8,3,1.1,4.8,1.1s3.5-.4,4.8-1.1c1.3-.8,2.4-1.8,3.1-3.1.7-1.3,1.1-2.9,1.1-4.7s-.4-3.3-1.1-4.7c-.7-1.3-1.7-2.4-3.1-3.1ZM170.3,23.1c-.2.7-.5,1.2-.9,1.5-.4.4-.8.5-1.4.5s-1-.2-1.4-.5c-.4-.4-.7-.9-.9-1.5-.2-.7-.3-1.4-.3-2.3s.1-1.7.3-2.3.5-1.2.9-1.5c.4-.4.9-.5,1.4-.5s1,.2,1.4.5c.4.4.7.9.9,1.5.2.7.3,1.4.3,2.3s-.1,1.7-.3,2.3Z"/>
|
|
24
|
+
<path class="st0" d="M196.3,15c-.5-1-1.2-1.8-2.1-2.3s-2-.8-3.2-.8-2.4.3-3.3.9c-1,.6-1.6,1.5-2,2.6h-.2v-3.3h-5.9v17.4h6.2v-9.8c0-.6.1-1.1.3-1.5.2-.4.5-.7.9-1s.8-.3,1.3-.3c.8,0,1.4.2,1.8.7.4.5.7,1.2.7,2v9.8h6.2v-11.1c0-1.3-.2-2.4-.7-3.4Z"/>
|
|
25
|
+
</g>
|
|
26
|
+
<g>
|
|
27
|
+
<polygon class="st0" points="52.4 38.2 52.4 38.2 51 35.4 49 35.4 51.5 40.1 51.5 42.2 53.3 42.2 53.3 40.1 55.8 35.4 53.8 35.4 52.4 38.2"/>
|
|
28
|
+
<path class="st0" d="M61.4,35.7c-.5-.3-1.1-.4-1.7-.4s-1.2.1-1.7.4c-.5.3-.9.7-1.2,1.2-.3.5-.4,1.2-.4,1.9s.1,1.4.4,1.9c.3.5.7.9,1.2,1.2.5.3,1.1.4,1.7.4s1.2-.1,1.7-.4c.5-.3.9-.7,1.2-1.2.3-.5.4-1.2.4-1.9s-.1-1.4-.4-1.9c-.3-.5-.7-.9-1.2-1.2ZM61,39.8c-.1.3-.3.5-.5.6-.2.1-.5.2-.8.2s-.6,0-.8-.2c-.2-.1-.4-.4-.5-.6-.1-.3-.2-.6-.2-1s0-.8.2-1c.1-.3.3-.5.5-.6.2-.1.5-.2.8-.2s.6,0,.8.2c.2.1.4.4.5.6.1.3.2.6.2,1s0,.8-.2,1Z"/>
|
|
29
|
+
<path class="st0" d="M68.5,39.6c0,.2,0,.4-.1.6,0,.2-.2.3-.4.4s-.4.1-.6.1-.4,0-.6-.1c-.2,0-.3-.2-.4-.4,0-.2-.1-.4-.1-.6v-4.2h-1.9v4.4c0,.5.1,1,.4,1.4.2.4.6.7,1,.9.4.2,1,.3,1.6.3s1.1-.1,1.5-.3c.4-.2.8-.5,1-.9.2-.4.4-.8.4-1.4v-4.4h-1.9v4.2Z"/>
|
|
30
|
+
<path class="st0" d="M76.8,38.9c.2-.3.3-.8.3-1.2s-.1-.9-.3-1.3c-.2-.3-.5-.6-.9-.8s-.8-.3-1.3-.3h-3v6.8h1.9v-2.3h.6l1.2,2.3h2l-1.4-2.6c.4-.2.6-.4.8-.7ZM73.5,36.9h.7c.2,0,.4,0,.6,0,.2,0,.3.2.4.3,0,.1.1.3.1.5s0,.4-.1.5c0,.1-.2.2-.4.3-.2,0-.3,0-.6,0h-.7v-1.7Z"/>
|
|
31
|
+
<path class="st0" d="M85.1,35.7c-.4-.2-.8-.3-1.3-.3h-3v6.8h1.9v-2h1c.5,0,1,0,1.4-.3s.7-.5.9-.8c.2-.4.3-.8.3-1.3s-.1-.9-.3-1.3c-.2-.4-.5-.6-.9-.8ZM84.2,38.3c0,.1-.2.3-.4.3-.2,0-.3.1-.6.1h-.7v-1.9h.7c.2,0,.4,0,.6.1.2,0,.3.2.4.3,0,.1.1.3.1.5s0,.4-.1.5Z"/>
|
|
32
|
+
<polygon class="st0" points="87.4 42.2 92.3 42.2 92.3 40.7 89.3 40.7 89.3 39.5 92.1 39.5 92.1 38 89.3 38 89.3 36.9 92.4 36.9 92.4 35.4 87.4 35.4 87.4 42.2"/>
|
|
33
|
+
<path class="st0" d="M98.9,38.9c.2-.3.3-.8.3-1.2s-.1-.9-.3-1.3c-.2-.3-.5-.6-.9-.8s-.8-.3-1.3-.3h-3v6.8h1.9v-2.3h.6l1.2,2.3h2l-1.4-2.6c.4-.2.6-.4.8-.7ZM95.6,36.9h.7c.2,0,.4,0,.6,0,.2,0,.3.2.4.3,0,.1.1.3.1.5s0,.4-.1.5c0,.1-.2.2-.4.3-.2,0-.3,0-.6,0h-.7v-1.7Z"/>
|
|
34
|
+
<path class="st0" d="M105.6,38.9c-.2-.2-.4-.3-.7-.5-.3-.1-.6-.2-1-.3h-.6c-.2-.2-.3-.2-.4-.2-.1,0-.2,0-.3-.1,0,0-.1-.1-.2-.2,0,0,0-.1,0-.2,0-.1,0-.2,0-.3,0,0,.1-.1.3-.2.1,0,.3,0,.5,0,.3,0,.5,0,.7.2.1.1.2.3.2.5h1.8c0-.4-.1-.8-.3-1.2-.2-.3-.5-.6-.9-.8s-.9-.3-1.4-.3-1,0-1.4.3c-.4.2-.7.4-1,.8-.2.3-.4.7-.3,1.1,0,.5.2,1,.5,1.3.3.3.8.5,1.4.7h.7c.3.2.5.3.6.3.1,0,.3.1.3.2,0,0,0,.2.1.3,0,.1,0,.2-.1.3,0,0-.2.2-.3.2-.1,0-.3,0-.5,0s-.4,0-.6-.1c-.2,0-.3-.2-.4-.3s-.1-.3-.2-.5h-1.8c0,.6.1,1,.4,1.4s.6.6,1,.8c.4.2,1,.3,1.6.3s1.1,0,1.5-.2c.4-.2.7-.4,1-.7.2-.3.3-.7.3-1.1,0-.3,0-.5-.1-.7,0-.2-.2-.4-.4-.6Z"/>
|
|
35
|
+
<path class="st0" d="M112.2,35.7c-.5-.3-1.1-.4-1.7-.4s-1.2.1-1.7.4c-.5.3-.9.7-1.2,1.2-.3.5-.4,1.2-.4,1.9s.1,1.4.4,1.9c.3.5.7.9,1.2,1.2.5.3,1.1.4,1.7.4s1.2-.1,1.7-.4c.5-.3.9-.7,1.2-1.2.3-.5.4-1.2.4-1.9s-.1-1.4-.4-1.9c-.3-.5-.7-.9-1.2-1.2ZM111.8,39.8c-.1.3-.3.5-.5.6-.2.1-.5.2-.8.2s-.6,0-.8-.2c-.2-.1-.4-.4-.5-.6-.1-.3-.2-.6-.2-1s0-.8.2-1c.1-.3.3-.5.5-.6.2-.1.5-.2.8-.2s.6,0,.8.2c.2.1.4.4.5.6.1.3.2.6.2,1s0,.8-.2,1Z"/>
|
|
36
|
+
<polygon class="st0" points="119.3 39 119.2 39 116.8 35.4 115.2 35.4 115.2 42.2 117.1 42.2 117.1 38.6 117.1 38.6 119.6 42.2 121.1 42.2 121.1 35.4 119.3 35.4 119.3 39"/>
|
|
37
|
+
<path class="st0" d="M124.5,35.4l-2.3,6.8h2l.4-1.3h2.3l.4,1.3h2l-2.3-6.8h-2.5ZM125.1,39.5l.7-2.3h0l.7,2.3h-1.4Z"/>
|
|
38
|
+
<polygon class="st0" points="132.3 35.4 130.5 35.4 130.5 42.2 135.1 42.2 135.1 40.7 132.3 40.7 132.3 35.4"/>
|
|
39
|
+
<path class="st0" d="M140.7,35.4l-2.3,6.8h2l.4-1.3h2.3l.4,1.3h2l-2.3-6.8h-2.5ZM141.2,39.5l.7-2.3h0l.7,2.3h-1.4Z"/>
|
|
40
|
+
<rect class="st0" x="146.6" y="35.4" width="1.9" height="6.8"/>
|
|
41
|
+
<path class="st0" d="M154.7,37.1c.2-.2.5-.2.8-.2s.3,0,.5,0c.1,0,.3.1.4.2,0,0,.2.2.2.3,0,.1,0,.3.1.4h1.9c0-.4-.1-.8-.3-1.1-.2-.3-.4-.6-.7-.8-.3-.2-.6-.4-1-.5s-.8-.2-1.2-.2c-.6,0-1.2.1-1.7.4-.5.3-.9.7-1.2,1.2-.3.5-.4,1.2-.4,1.9s.1,1.4.4,1.9.7.9,1.2,1.2c.5.3,1.1.4,1.7.4s.9,0,1.3-.2.7-.4,1-.6c.3-.3.5-.5.6-.8.1-.3.2-.6.2-.9h-1.9c0,.1,0,.3-.1.4,0,.1-.1.2-.2.3-.1,0-.2.1-.4.2-.1,0-.3,0-.5,0-.3,0-.6,0-.8-.2s-.4-.4-.5-.6c-.1-.3-.2-.6-.2-1.1s0-.7.2-1,.3-.5.5-.7Z"/>
|
|
42
|
+
<polygon class="st0" points="164.2 38 161.7 38 161.7 35.4 159.9 35.4 159.9 42.2 161.7 42.2 161.7 39.5 164.2 39.5 164.2 42.2 166.1 42.2 166.1 35.4 164.2 35.4 164.2 38"/>
|
|
43
|
+
<path class="st0" d="M169.4,35.4l-2.3,6.8h2l.4-1.3h2.3l.4,1.3h2l-2.3-6.8h-2.5ZM170,39.5l.7-2.3h0l.7,2.3h-1.4Z"/>
|
|
44
|
+
<polygon class="st0" points="174.3 36.9 176.4 36.9 176.4 42.2 178.2 42.2 178.2 36.9 180.3 36.9 180.3 35.4 174.3 35.4 174.3 36.9"/>
|
|
45
|
+
<path class="st0" d="M186.3,38.9c-.2-.1-.5-.2-.8-.2h0c.3-.1.5-.2.7-.4s.4-.3.5-.5.2-.4.2-.7,0-.6-.3-.9c-.2-.3-.5-.5-.8-.6-.4-.1-.8-.2-1.3-.2h-3v6.8h3.2c.5,0,.9,0,1.3-.3.4-.2.6-.4.8-.7.2-.3.3-.6.3-1s0-.6-.2-.8-.3-.4-.6-.6ZM183.3,36.8h.8c.2,0,.4,0,.6.2.2.1.2.3.2.5s0,.3-.1.4c0,0-.2.2-.3.2s-.3,0-.4,0h-.8v-1.3ZM184.9,40.6c-.2.1-.4.2-.7.2h-.9v-1.4h.9c.2,0,.4,0,.5,0,.1,0,.2.1.3.3,0,.1.1.2.1.4,0,.2,0,.4-.2.5Z"/>
|
|
46
|
+
<path class="st0" d="M193.2,35.7c-.5-.3-1.1-.4-1.7-.4s-1.2.1-1.7.4c-.5.3-.9.7-1.2,1.2-.3.5-.4,1.2-.4,1.9s.1,1.4.4,1.9c.3.5.7.9,1.2,1.2.5.3,1.1.4,1.7.4s1.2-.1,1.7-.4c.5-.3.9-.7,1.2-1.2.3-.5.4-1.2.4-1.9s-.1-1.4-.4-1.9c-.3-.5-.7-.9-1.2-1.2ZM192.7,39.8c-.1.3-.3.5-.5.6-.2.1-.5.2-.8.2s-.6,0-.8-.2c-.2-.1-.4-.4-.5-.6-.1-.3-.2-.6-.2-1s0-.8.2-1c.1-.3.3-.5.5-.6.2-.1.5-.2.8-.2s.6,0,.8.2c.2.1.4.4.5.6.1.3.2.6.2,1s0,.8-.2,1Z"/>
|
|
47
|
+
<polygon class="st0" points="195.6 35.4 195.6 36.9 197.7 36.9 197.7 42.2 199.5 42.2 199.5 36.9 201.6 36.9 201.6 35.4 195.6 35.4"/>
|
|
48
|
+
</g>
|
|
49
|
+
<path class="st1" d="M34.7,2.7H5.8c-.9,0-1.7.4-2.3.9-.6.6-1,1.4-1,2.3v35.9c0,.9.4,1.7,1,2.3.6.6,1.4.9,2.3.9h28.9c.9,0,1.7-.4,2.3-.9.6-.6,1-1.4,1-2.3V5.9c0-.9-.4-1.7-1-2.3h0c-.6-.6-1.4-.9-2.3-.9M5.8.8h28.9c1.4,0,2.7.6,3.7,1.5h0c.9.9,1.5,2.2,1.5,3.6v35.9c0,1.4-.6,2.7-1.5,3.6-.9.9-2.3,1.5-3.7,1.5H5.8c-1.4,0-2.7-.6-3.7-1.5-.9-.9-1.5-2.2-1.5-3.6V5.9c0-1.4.6-2.7,1.5-3.6,1-.9,2.3-1.5,3.7-1.5"/>
|
|
50
|
+
<path class="st1" d="M35.4,5h0c-.5-.5-1.3-.9-2.1-.9H7.1c-.8,0-1.6.3-2.1.9-.5.5-.9,1.3-.9,2.1v33.4c0,.8.3,1.6.9,2.1.5.5,1.3.9,2.1.9h26.3c.8,0,1.6-.3,2.1-.9.5-.5.9-1.3.9-2.1V7.1c0-.8-.3-1.6-.9-2.1M16.8,38.8c-.3-.2-.4-.5-.7-.9-1.2-1.8-.6-4.2,1.2-5.1-1.4,1.2-1.2,3.5,0,5.3.2.2.4.5.5.7h-.9ZM33.3,38.9h-2.6s-6.2,0-6.2,0c.2-.3.3-.5.4-.8,1.5-3.8,0-8,1.4-11.9-2.4,2.6-5.9,3.3-8.7,5.1-2.9,1.6-3.8,5.1-2.4,7.6h-6.3s-1.7,0-1.7,0V8.4h7v11.8h12.1v-11.8h7v30.4Z"/>
|
|
51
|
+
</svg>
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import React, { useState, useEffect, useRef } from 'react';
|
|
2
|
+
import { View, Text, StyleSheet, Animated } from 'react-native';
|
|
3
|
+
import Ionicons from 'react-native-vector-icons/Ionicons';
|
|
4
|
+
const tips = [{
|
|
5
|
+
text: 'Use 👍👎 next to each response to help us improve AI Assistant',
|
|
6
|
+
icon: ''
|
|
7
|
+
}, {
|
|
8
|
+
text: '🗑️ Clear the chat history after each conversation for continued accurate responses',
|
|
9
|
+
icon: ''
|
|
10
|
+
}, {
|
|
11
|
+
text: 'Use 📧 to send any questions to the current branch support',
|
|
12
|
+
icon: ''
|
|
13
|
+
}];
|
|
14
|
+
export const LoadingTips = () => {
|
|
15
|
+
const [currentTip, setCurrentTip] = useState(0);
|
|
16
|
+
const fadeAnim = useRef(new Animated.Value(1)).current;
|
|
17
|
+
const jumpAnim = useRef(new Animated.Value(0)).current;
|
|
18
|
+
useEffect(() => {
|
|
19
|
+
// Fade in/out for tip changes
|
|
20
|
+
const tipInterval = setInterval(() => {
|
|
21
|
+
// Fade out
|
|
22
|
+
Animated.timing(fadeAnim, {
|
|
23
|
+
toValue: 0,
|
|
24
|
+
duration: 500,
|
|
25
|
+
useNativeDriver: true
|
|
26
|
+
}).start(() => {
|
|
27
|
+
// Change tip and fade in
|
|
28
|
+
setCurrentTip(prev => (prev + 1) % tips.length);
|
|
29
|
+
Animated.timing(fadeAnim, {
|
|
30
|
+
toValue: 1,
|
|
31
|
+
duration: 500,
|
|
32
|
+
useNativeDriver: true
|
|
33
|
+
}).start();
|
|
34
|
+
});
|
|
35
|
+
}, 4000);
|
|
36
|
+
|
|
37
|
+
// Jump animation
|
|
38
|
+
const jumpInterval = setInterval(() => {
|
|
39
|
+
Animated.sequence([Animated.timing(jumpAnim, {
|
|
40
|
+
toValue: -5,
|
|
41
|
+
duration: 250,
|
|
42
|
+
useNativeDriver: true
|
|
43
|
+
}), Animated.timing(jumpAnim, {
|
|
44
|
+
toValue: 0,
|
|
45
|
+
duration: 250,
|
|
46
|
+
useNativeDriver: true
|
|
47
|
+
})]).start();
|
|
48
|
+
}, 2000);
|
|
49
|
+
return () => {
|
|
50
|
+
clearInterval(tipInterval);
|
|
51
|
+
clearInterval(jumpInterval);
|
|
52
|
+
};
|
|
53
|
+
}, []);
|
|
54
|
+
return /*#__PURE__*/React.createElement(Animated.View, {
|
|
55
|
+
style: [styles.container, {
|
|
56
|
+
opacity: fadeAnim
|
|
57
|
+
}]
|
|
58
|
+
}, /*#__PURE__*/React.createElement(Animated.View, {
|
|
59
|
+
style: {
|
|
60
|
+
transform: [{
|
|
61
|
+
translateY: jumpAnim
|
|
62
|
+
}]
|
|
63
|
+
}
|
|
64
|
+
}, /*#__PURE__*/React.createElement(Ionicons, {
|
|
65
|
+
name: "bulb-outline",
|
|
66
|
+
size: 16,
|
|
67
|
+
color: "#367CB6"
|
|
68
|
+
})), /*#__PURE__*/React.createElement(Text, {
|
|
69
|
+
style: styles.tipText
|
|
70
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
71
|
+
style: styles.tipIcon
|
|
72
|
+
}, tips[currentTip].icon, " "), tips[currentTip].text));
|
|
73
|
+
};
|
|
74
|
+
const styles = StyleSheet.create({
|
|
75
|
+
container: {
|
|
76
|
+
flexDirection: 'row',
|
|
77
|
+
alignItems: 'center',
|
|
78
|
+
padding: 10,
|
|
79
|
+
marginLeft: 15,
|
|
80
|
+
borderRadius: 8,
|
|
81
|
+
marginBottom: 8,
|
|
82
|
+
flex: 1
|
|
83
|
+
},
|
|
84
|
+
tipText: {
|
|
85
|
+
marginLeft: 8,
|
|
86
|
+
fontSize: 14,
|
|
87
|
+
color: '#303030',
|
|
88
|
+
flexShrink: 1
|
|
89
|
+
},
|
|
90
|
+
tipIcon: {
|
|
91
|
+
marginRight: 5,
|
|
92
|
+
fontSize: 16
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
//# sourceMappingURL=LoadingTips.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useState","useEffect","useRef","View","Text","StyleSheet","Animated","Ionicons","tips","text","icon","LoadingTips","currentTip","setCurrentTip","fadeAnim","Value","current","jumpAnim","tipInterval","setInterval","timing","toValue","duration","useNativeDriver","start","prev","length","jumpInterval","sequence","clearInterval","createElement","style","styles","container","opacity","transform","translateY","name","size","color","tipText","tipIcon","create","flexDirection","alignItems","padding","marginLeft","borderRadius","marginBottom","flex","fontSize","flexShrink","marginRight"],"sourceRoot":"../../../src","sources":["components/LoadingTips.js"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,452 @@
|
|
|
1
|
+
import React, { useState, useContext, useRef, useEffect } from "react";
|
|
2
|
+
import { View, Text, TextInput, TouchableOpacity, ActivityIndicator, StyleSheet, Platform, findNodeHandle } from "react-native";
|
|
3
|
+
import Ionicons from "react-native-vector-icons/Ionicons";
|
|
4
|
+
import { AppContext } from "../contexts/AppContext";
|
|
5
|
+
import { Header } from "./header";
|
|
6
|
+
import { KeyboardAwareScrollView } from "react-native-keyboard-aware-scroll-view";
|
|
7
|
+
export const EmailForm = ({
|
|
8
|
+
panHandlers
|
|
9
|
+
}) => {
|
|
10
|
+
const {
|
|
11
|
+
data,
|
|
12
|
+
BASE_URL,
|
|
13
|
+
setShowModal,
|
|
14
|
+
formatChatHistory,
|
|
15
|
+
conversationStartTime,
|
|
16
|
+
sessionId,
|
|
17
|
+
theme
|
|
18
|
+
} = useContext(AppContext);
|
|
19
|
+
const API_PREFIX = "https://";
|
|
20
|
+
const [subject, setSubject] = useState("");
|
|
21
|
+
const [message, setMessage] = useState("");
|
|
22
|
+
const [userEmail, setUserEmail] = useState((data === null || data === void 0 ? void 0 : data.user_email) || ""); // Sender's email
|
|
23
|
+
const [branchEmail, setBranchEmail] = useState((data === null || data === void 0 ? void 0 : data.branch_email) || ""); // Recipient's email
|
|
24
|
+
const [isLoading, setIsLoading] = useState(false);
|
|
25
|
+
const [error, setError] = useState("");
|
|
26
|
+
const [success, setSuccess] = useState(false);
|
|
27
|
+
const [isComposing, setIsComposing] = useState(false);
|
|
28
|
+
|
|
29
|
+
// Refs for the scroll view and inputs
|
|
30
|
+
const scrollViewRef = useRef(null);
|
|
31
|
+
const subjectInputRef = useRef(null);
|
|
32
|
+
const messageInputRef = useRef(null);
|
|
33
|
+
const emailInputRef = useRef(null);
|
|
34
|
+
|
|
35
|
+
// Industry-standard email validation following RFC 5322 guidelines
|
|
36
|
+
const validateEmailFormat = email => {
|
|
37
|
+
// More comprehensive regex that handles most valid email formats
|
|
38
|
+
// This regex covers:
|
|
39
|
+
// - Alphanumeric characters, dots, hyphens, underscores, plus signs
|
|
40
|
+
// - Quoted strings in local part
|
|
41
|
+
// - IP addresses in domain part
|
|
42
|
+
// - International domain names
|
|
43
|
+
const emailRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
|
|
44
|
+
|
|
45
|
+
// Length validation (RFC 5321 limits)
|
|
46
|
+
const MAX_EMAIL_LENGTH = 254;
|
|
47
|
+
const MAX_LOCAL_LENGTH = 64;
|
|
48
|
+
const MAX_DOMAIN_LENGTH = 253;
|
|
49
|
+
if (email.length > MAX_EMAIL_LENGTH) {
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
const [localPart, domainPart] = email.split('@');
|
|
53
|
+
if (!localPart || !domainPart) {
|
|
54
|
+
return false;
|
|
55
|
+
}
|
|
56
|
+
if (localPart.length > MAX_LOCAL_LENGTH || domainPart.length > MAX_DOMAIN_LENGTH) {
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
59
|
+
return emailRegex.test(email);
|
|
60
|
+
};
|
|
61
|
+
const validateEmailDomain = email => {
|
|
62
|
+
const domainPart = email.split('@')[1];
|
|
63
|
+
if (!domainPart) return false;
|
|
64
|
+
|
|
65
|
+
// Common domain validation checks
|
|
66
|
+
const commonIssues = [
|
|
67
|
+
// Missing or invalid TLD
|
|
68
|
+
/\.(com|org|net|edu|gov|mil|int|co|io|ly|me|tv|info|biz|name|mobi|travel|museum|aero|coop|pro|ac|ad|ae|af|ag|ai|al|am|an|ao|aq|ar|as|at|au|aw|ax|az|ba|bb|bd|be|bf|bg|bh|bi|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gg|gh|gi|gl|gm|gn|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|im|in|io|iq|ir|is|it|je|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|me|mg|mh|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|mv|mw|mx|my|mz|na|nc|ne|nf|ng|ni|nl|no|np|nr|nu|nz|om|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|ps|pt|pw|py|qa|re|ro|rs|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tl|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$/i];
|
|
69
|
+
|
|
70
|
+
// Check for valid TLD
|
|
71
|
+
const hasValidTLD = commonIssues[0].test(domainPart);
|
|
72
|
+
|
|
73
|
+
// Check for common typos in popular domains
|
|
74
|
+
const commonDomainTypos = {
|
|
75
|
+
'gmial.com': 'gmail.com',
|
|
76
|
+
'gmail.co': 'gmail.com',
|
|
77
|
+
'gmai.com': 'gmail.com',
|
|
78
|
+
'yahooo.com': 'yahoo.com',
|
|
79
|
+
'yaho.com': 'yahoo.com',
|
|
80
|
+
'hotmial.com': 'hotmail.com',
|
|
81
|
+
'hotmai.com': 'hotmail.com',
|
|
82
|
+
'outlok.com': 'outlook.com',
|
|
83
|
+
'outloo.com': 'outlook.com'
|
|
84
|
+
};
|
|
85
|
+
const suggestion = commonDomainTypos[domainPart.toLowerCase()];
|
|
86
|
+
return {
|
|
87
|
+
isValid: hasValidTLD && !suggestion,
|
|
88
|
+
suggestion: suggestion
|
|
89
|
+
};
|
|
90
|
+
};
|
|
91
|
+
const validateEmail = email => {
|
|
92
|
+
if (!email) {
|
|
93
|
+
return "Email address is required";
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
// Trim whitespace
|
|
97
|
+
email = email.trim();
|
|
98
|
+
|
|
99
|
+
// Basic format validation
|
|
100
|
+
if (!validateEmailFormat(email)) {
|
|
101
|
+
return "Please enter a valid email address";
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
// Domain validation with suggestions
|
|
105
|
+
const domainValidation = validateEmailDomain(email);
|
|
106
|
+
if (!domainValidation.isValid) {
|
|
107
|
+
if (domainValidation.suggestion) {
|
|
108
|
+
return `Did you mean ${email.split('@')[0]}@${domainValidation.suggestion}?`;
|
|
109
|
+
}
|
|
110
|
+
return "Please enter a valid email address";
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
// Additional checks for common formatting errors
|
|
114
|
+
const commonFormatIssues = [{
|
|
115
|
+
pattern: /\.\./,
|
|
116
|
+
message: "Email address cannot contain consecutive dots"
|
|
117
|
+
}, {
|
|
118
|
+
pattern: /^\./,
|
|
119
|
+
message: "Email address cannot start with a dot"
|
|
120
|
+
}, {
|
|
121
|
+
pattern: /\.$/,
|
|
122
|
+
message: "Email address cannot end with a dot"
|
|
123
|
+
}, {
|
|
124
|
+
pattern: /@\./,
|
|
125
|
+
message: "Invalid format after @ symbol"
|
|
126
|
+
}, {
|
|
127
|
+
pattern: /\.@/,
|
|
128
|
+
message: "Invalid format before @ symbol"
|
|
129
|
+
}, {
|
|
130
|
+
pattern: /\s/,
|
|
131
|
+
message: "Email address cannot contain spaces"
|
|
132
|
+
}, {
|
|
133
|
+
pattern: /@.*@/,
|
|
134
|
+
message: "Email address can only contain one @ symbol"
|
|
135
|
+
}];
|
|
136
|
+
for (const issue of commonFormatIssues) {
|
|
137
|
+
if (issue.pattern.test(email)) {
|
|
138
|
+
return issue.message;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
return "";
|
|
142
|
+
};
|
|
143
|
+
const buildEmailRequestPayload = chatHistory => ({
|
|
144
|
+
chat_history: chatHistory,
|
|
145
|
+
conversation_start_time: conversationStartTime ?? null,
|
|
146
|
+
customer_name: (data === null || data === void 0 ? void 0 : data.customer_name) ?? null,
|
|
147
|
+
user_id: (data === null || data === void 0 ? void 0 : data.user_id) ?? null,
|
|
148
|
+
session_id: (data === null || data === void 0 ? void 0 : data.session_id) ?? (data === null || data === void 0 ? void 0 : data.session) ?? sessionId ?? null,
|
|
149
|
+
branch_email: branchEmail ?? ""
|
|
150
|
+
});
|
|
151
|
+
const handleComposeEmail = async () => {
|
|
152
|
+
setIsComposing(true);
|
|
153
|
+
setError("");
|
|
154
|
+
try {
|
|
155
|
+
const chatHistory = formatChatHistory().map(({
|
|
156
|
+
variant_type,
|
|
157
|
+
...rest
|
|
158
|
+
}) => rest);
|
|
159
|
+
const payload = {
|
|
160
|
+
chat_history: chatHistory,
|
|
161
|
+
conversation_start_time: conversationStartTime || null,
|
|
162
|
+
customer_name: (data === null || data === void 0 ? void 0 : data.customer_name) || null,
|
|
163
|
+
user_id: (data === null || data === void 0 ? void 0 : data.user_id) || null,
|
|
164
|
+
session_id: (data === null || data === void 0 ? void 0 : data.session_id) || (data === null || data === void 0 ? void 0 : data.session) || sessionId || null,
|
|
165
|
+
user_email: (data === null || data === void 0 ? void 0 : data.user_email) || "",
|
|
166
|
+
branch_email: (data === null || data === void 0 ? void 0 : data.branch_email) || ""
|
|
167
|
+
};
|
|
168
|
+
console.log("Email composition request payload:", payload);
|
|
169
|
+
const response = await fetch(`${API_PREFIX}${BASE_URL}/compose-email`, {
|
|
170
|
+
method: 'POST',
|
|
171
|
+
headers: {
|
|
172
|
+
'Content-Type': 'application/json'
|
|
173
|
+
},
|
|
174
|
+
body: JSON.stringify(payload)
|
|
175
|
+
});
|
|
176
|
+
if (!response.ok) {
|
|
177
|
+
throw new Error(`HTTP error! status: ${response.status}`);
|
|
178
|
+
}
|
|
179
|
+
const responseData = await response.json();
|
|
180
|
+
const textToType = responseData.message;
|
|
181
|
+
let currentText = "";
|
|
182
|
+
const typingSpeed = 10;
|
|
183
|
+
for (let i = 0; i < textToType.length; i++) {
|
|
184
|
+
await new Promise(resolve => setTimeout(resolve, typingSpeed));
|
|
185
|
+
currentText += textToType[i];
|
|
186
|
+
setMessage(currentText);
|
|
187
|
+
}
|
|
188
|
+
setSubject(responseData.subject || "");
|
|
189
|
+
setUserEmail(responseData.user_email || userEmail || "");
|
|
190
|
+
// Don't overwrite branch email if response doesn't have it
|
|
191
|
+
if (responseData.branch_email) {
|
|
192
|
+
setBranchEmail(responseData.branch_email);
|
|
193
|
+
}
|
|
194
|
+
} catch (error) {
|
|
195
|
+
setError(error.message || "Failed to compose email");
|
|
196
|
+
} finally {
|
|
197
|
+
setIsComposing(false);
|
|
198
|
+
}
|
|
199
|
+
};
|
|
200
|
+
const handleSubmit = async () => {
|
|
201
|
+
if (!userEmail || !subject || !message) {
|
|
202
|
+
setError("Please fill in all fields");
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
if (!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(userEmail)) {
|
|
206
|
+
setError("Please enter a valid email address");
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
209
|
+
setIsLoading(true);
|
|
210
|
+
try {
|
|
211
|
+
const chatHistory = formatChatHistory().map(({
|
|
212
|
+
variant_type,
|
|
213
|
+
...rest
|
|
214
|
+
}) => rest);
|
|
215
|
+
console.log("Sending email with chat history:", chatHistory);
|
|
216
|
+
const response = await fetch(`https://${BASE_URL}/send-email`, {
|
|
217
|
+
method: 'POST',
|
|
218
|
+
headers: {
|
|
219
|
+
'Content-Type': 'application/json'
|
|
220
|
+
},
|
|
221
|
+
body: JSON.stringify({
|
|
222
|
+
user_email: userEmail,
|
|
223
|
+
subject,
|
|
224
|
+
message,
|
|
225
|
+
chat_history: chatHistory,
|
|
226
|
+
conversation_start_time: conversationStartTime,
|
|
227
|
+
customer_name: data === null || data === void 0 ? void 0 : data.customer_name,
|
|
228
|
+
branch_email: branchEmail || (data === null || data === void 0 ? void 0 : data.branch_email) || ""
|
|
229
|
+
})
|
|
230
|
+
});
|
|
231
|
+
if (!response.ok) {
|
|
232
|
+
throw new Error(`HTTP error! status: ${response.status}`);
|
|
233
|
+
}
|
|
234
|
+
setSuccess(true);
|
|
235
|
+
setTimeout(() => {
|
|
236
|
+
setSuccess(false);
|
|
237
|
+
setShowModal("ChatWindow");
|
|
238
|
+
}, 2000);
|
|
239
|
+
} catch (error) {
|
|
240
|
+
setError(error.message || "Failed to send email");
|
|
241
|
+
} finally {
|
|
242
|
+
setIsLoading(false);
|
|
243
|
+
}
|
|
244
|
+
};
|
|
245
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
246
|
+
style: styles.container
|
|
247
|
+
}, /*#__PURE__*/React.createElement(Header, null), /*#__PURE__*/React.createElement(KeyboardAwareScrollView, {
|
|
248
|
+
ref: scrollViewRef,
|
|
249
|
+
style: styles.content,
|
|
250
|
+
contentContainerStyle: {
|
|
251
|
+
flexGrow: 1,
|
|
252
|
+
paddingBottom: 50
|
|
253
|
+
},
|
|
254
|
+
keyboardShouldPersistTaps: "handled",
|
|
255
|
+
showsVerticalScrollIndicator: true,
|
|
256
|
+
enableOnAndroid: true,
|
|
257
|
+
extraScrollHeight: 40,
|
|
258
|
+
keyboardDismissMode: "interactive",
|
|
259
|
+
bounces: false
|
|
260
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
261
|
+
style: styles.topBar
|
|
262
|
+
}, /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
263
|
+
onPress: () => setShowModal("ChatWindow"),
|
|
264
|
+
style: styles.backButton
|
|
265
|
+
}, /*#__PURE__*/React.createElement(Ionicons, {
|
|
266
|
+
name: "arrow-back",
|
|
267
|
+
size: 20,
|
|
268
|
+
color: "#000"
|
|
269
|
+
})), /*#__PURE__*/React.createElement(Text, {
|
|
270
|
+
style: styles.topBarTitle
|
|
271
|
+
}, "Contact Us")), /*#__PURE__*/React.createElement(Text, {
|
|
272
|
+
style: styles.infoText
|
|
273
|
+
}, "Press \"Draft My Email\" to generate an email based on your chat conversation. You can review and modify before sending."), /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
274
|
+
style: [styles.composeButton, {
|
|
275
|
+
backgroundColor: theme.primaryColor
|
|
276
|
+
}],
|
|
277
|
+
onPress: handleComposeEmail,
|
|
278
|
+
disabled: isComposing
|
|
279
|
+
}, isComposing ? /*#__PURE__*/React.createElement(ActivityIndicator, {
|
|
280
|
+
size: "small",
|
|
281
|
+
color: "#FFFFFF"
|
|
282
|
+
}) : /*#__PURE__*/React.createElement(Text, {
|
|
283
|
+
style: styles.buttonText
|
|
284
|
+
}, "Draft My Email")), /*#__PURE__*/React.createElement(TextInput, {
|
|
285
|
+
style: styles.input,
|
|
286
|
+
value: branchEmail,
|
|
287
|
+
editable: false,
|
|
288
|
+
placeholder: "Branch Email",
|
|
289
|
+
placeholderTextColor: "#999"
|
|
290
|
+
}), /*#__PURE__*/React.createElement(TextInput, {
|
|
291
|
+
ref: emailInputRef,
|
|
292
|
+
style: styles.input,
|
|
293
|
+
value: userEmail,
|
|
294
|
+
onChangeText: text => {
|
|
295
|
+
setUserEmail(text);
|
|
296
|
+
const emailValidationError = validateEmail(text);
|
|
297
|
+
if (emailValidationError) {
|
|
298
|
+
setError(emailValidationError);
|
|
299
|
+
setSuccess(false);
|
|
300
|
+
} else if (error === "Please enter a valid email address" || error === "Email address is required") {
|
|
301
|
+
setError("");
|
|
302
|
+
}
|
|
303
|
+
},
|
|
304
|
+
placeholder: "Your Email",
|
|
305
|
+
placeholderTextColor: "#999",
|
|
306
|
+
onFocus: () => {
|
|
307
|
+
var _scrollViewRef$curren;
|
|
308
|
+
return (_scrollViewRef$curren = scrollViewRef.current) === null || _scrollViewRef$curren === void 0 ? void 0 : _scrollViewRef$curren.scrollToFocusedInput(findNodeHandle(emailInputRef.current));
|
|
309
|
+
},
|
|
310
|
+
keyboardType: "email-address",
|
|
311
|
+
autoCapitalize: "none"
|
|
312
|
+
}), /*#__PURE__*/React.createElement(TextInput, {
|
|
313
|
+
ref: subjectInputRef,
|
|
314
|
+
style: styles.input,
|
|
315
|
+
value: subject,
|
|
316
|
+
onChangeText: text => {
|
|
317
|
+
setSubject(text);
|
|
318
|
+
if (error && !validateEmail(userEmail) && !message) {
|
|
319
|
+
setError("");
|
|
320
|
+
} else if (error === "Please fill in all fields" && text && message) {
|
|
321
|
+
setError("");
|
|
322
|
+
}
|
|
323
|
+
},
|
|
324
|
+
placeholder: "Subject",
|
|
325
|
+
placeholderTextColor: "#999",
|
|
326
|
+
onFocus: () => {
|
|
327
|
+
var _scrollViewRef$curren2;
|
|
328
|
+
return (_scrollViewRef$curren2 = scrollViewRef.current) === null || _scrollViewRef$curren2 === void 0 ? void 0 : _scrollViewRef$curren2.scrollToFocusedInput(findNodeHandle(subjectInputRef.current));
|
|
329
|
+
}
|
|
330
|
+
}), /*#__PURE__*/React.createElement(TextInput, {
|
|
331
|
+
ref: messageInputRef,
|
|
332
|
+
style: styles.textArea,
|
|
333
|
+
value: message,
|
|
334
|
+
onChangeText: text => {
|
|
335
|
+
setMessage(text);
|
|
336
|
+
if (error && !validateEmail(userEmail) && !subject) {
|
|
337
|
+
setError("");
|
|
338
|
+
} else if (error === "Please fill in all fields" && text && subject) {
|
|
339
|
+
setError("");
|
|
340
|
+
}
|
|
341
|
+
},
|
|
342
|
+
placeholder: "Message",
|
|
343
|
+
placeholderTextColor: "#999",
|
|
344
|
+
multiline: true,
|
|
345
|
+
onFocus: () => {
|
|
346
|
+
var _scrollViewRef$curren3;
|
|
347
|
+
return (_scrollViewRef$curren3 = scrollViewRef.current) === null || _scrollViewRef$curren3 === void 0 ? void 0 : _scrollViewRef$curren3.scrollToFocusedInput(findNodeHandle(messageInputRef.current));
|
|
348
|
+
}
|
|
349
|
+
}), error ? /*#__PURE__*/React.createElement(Text, {
|
|
350
|
+
style: styles.errorText
|
|
351
|
+
}, error) : null, success ? /*#__PURE__*/React.createElement(Text, {
|
|
352
|
+
style: styles.successText
|
|
353
|
+
}, "Email sent successfully!") : null, /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
354
|
+
style: [styles.sendButton, {
|
|
355
|
+
backgroundColor: theme.primaryColor
|
|
356
|
+
}],
|
|
357
|
+
onPress: handleSubmit,
|
|
358
|
+
disabled: isLoading
|
|
359
|
+
}, isLoading ? /*#__PURE__*/React.createElement(ActivityIndicator, {
|
|
360
|
+
size: "small",
|
|
361
|
+
color: "#FFFFFF"
|
|
362
|
+
}) : /*#__PURE__*/React.createElement(Text, {
|
|
363
|
+
style: styles.buttonText
|
|
364
|
+
}, "Send Email"))));
|
|
365
|
+
};
|
|
366
|
+
const styles = StyleSheet.create({
|
|
367
|
+
container: {
|
|
368
|
+
flex: 1
|
|
369
|
+
},
|
|
370
|
+
content: {
|
|
371
|
+
padding: 20,
|
|
372
|
+
paddingTop: 5,
|
|
373
|
+
flex: 1
|
|
374
|
+
},
|
|
375
|
+
topBar: {
|
|
376
|
+
flexDirection: "row",
|
|
377
|
+
alignItems: "center",
|
|
378
|
+
paddingVertical: 10,
|
|
379
|
+
marginTop: 10
|
|
380
|
+
},
|
|
381
|
+
backButton: {
|
|
382
|
+
padding: 8,
|
|
383
|
+
borderRadius: 20,
|
|
384
|
+
backgroundColor: "#FFF"
|
|
385
|
+
},
|
|
386
|
+
topBarTitle: {
|
|
387
|
+
fontSize: 18,
|
|
388
|
+
fontWeight: "500",
|
|
389
|
+
marginLeft: 12,
|
|
390
|
+
color: "#000"
|
|
391
|
+
},
|
|
392
|
+
infoText: {
|
|
393
|
+
textAlign: "left",
|
|
394
|
+
color: "#666",
|
|
395
|
+
fontSize: 15,
|
|
396
|
+
lineHeight: 22,
|
|
397
|
+
marginBottom: 20
|
|
398
|
+
},
|
|
399
|
+
input: {
|
|
400
|
+
backgroundColor: "white",
|
|
401
|
+
borderRadius: 8,
|
|
402
|
+
padding: 12,
|
|
403
|
+
fontSize: 16,
|
|
404
|
+
borderWidth: 1,
|
|
405
|
+
borderColor: "#e0e0e0",
|
|
406
|
+
marginBottom: 10,
|
|
407
|
+
color: "#000"
|
|
408
|
+
},
|
|
409
|
+
textArea: {
|
|
410
|
+
backgroundColor: "white",
|
|
411
|
+
borderRadius: 8,
|
|
412
|
+
padding: 12,
|
|
413
|
+
fontSize: 16,
|
|
414
|
+
borderWidth: 1,
|
|
415
|
+
borderColor: "#e0e0e0",
|
|
416
|
+
marginBottom: 10,
|
|
417
|
+
height: 180,
|
|
418
|
+
textAlignVertical: "top",
|
|
419
|
+
color: "#000"
|
|
420
|
+
},
|
|
421
|
+
composeButton: {
|
|
422
|
+
borderRadius: 5,
|
|
423
|
+
padding: 12,
|
|
424
|
+
alignItems: "center",
|
|
425
|
+
marginBottom: 20
|
|
426
|
+
},
|
|
427
|
+
sendButton: {
|
|
428
|
+
borderRadius: 5,
|
|
429
|
+
padding: 12,
|
|
430
|
+
alignItems: "center",
|
|
431
|
+
marginTop: 20
|
|
432
|
+
},
|
|
433
|
+
buttonText: {
|
|
434
|
+
color: "#FFF",
|
|
435
|
+
fontSize: 16,
|
|
436
|
+
fontWeight: "500"
|
|
437
|
+
},
|
|
438
|
+
errorText: {
|
|
439
|
+
color: "red",
|
|
440
|
+
fontSize: 14,
|
|
441
|
+
textAlign: "center",
|
|
442
|
+
marginTop: 10
|
|
443
|
+
},
|
|
444
|
+
successText: {
|
|
445
|
+
color: "green",
|
|
446
|
+
fontSize: 14,
|
|
447
|
+
textAlign: "center",
|
|
448
|
+
marginTop: 10
|
|
449
|
+
}
|
|
450
|
+
});
|
|
451
|
+
export default EmailForm;
|
|
452
|
+
//# sourceMappingURL=email.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useState","useContext","useRef","useEffect","View","Text","TextInput","TouchableOpacity","ActivityIndicator","StyleSheet","Platform","findNodeHandle","Ionicons","AppContext","Header","KeyboardAwareScrollView","EmailForm","panHandlers","data","BASE_URL","setShowModal","formatChatHistory","conversationStartTime","sessionId","theme","API_PREFIX","subject","setSubject","message","setMessage","userEmail","setUserEmail","user_email","branchEmail","setBranchEmail","branch_email","isLoading","setIsLoading","error","setError","success","setSuccess","isComposing","setIsComposing","scrollViewRef","subjectInputRef","messageInputRef","emailInputRef","validateEmailFormat","email","emailRegex","MAX_EMAIL_LENGTH","MAX_LOCAL_LENGTH","MAX_DOMAIN_LENGTH","length","localPart","domainPart","split","test","validateEmailDomain","commonIssues","hasValidTLD","commonDomainTypos","suggestion","toLowerCase","isValid","validateEmail","trim","domainValidation","commonFormatIssues","pattern","issue","buildEmailRequestPayload","chatHistory","chat_history","conversation_start_time","customer_name","user_id","session_id","session","handleComposeEmail","map","variant_type","rest","payload","console","log","response","fetch","method","headers","body","JSON","stringify","ok","Error","status","responseData","json","textToType","currentText","typingSpeed","i","Promise","resolve","setTimeout","handleSubmit","createElement","style","styles","container","ref","content","contentContainerStyle","flexGrow","paddingBottom","keyboardShouldPersistTaps","showsVerticalScrollIndicator","enableOnAndroid","extraScrollHeight","keyboardDismissMode","bounces","topBar","onPress","backButton","name","size","color","topBarTitle","infoText","composeButton","backgroundColor","primaryColor","disabled","buttonText","input","value","editable","placeholder","placeholderTextColor","onChangeText","text","emailValidationError","onFocus","_scrollViewRef$curren","current","scrollToFocusedInput","keyboardType","autoCapitalize","_scrollViewRef$curren2","textArea","multiline","_scrollViewRef$curren3","errorText","successText","sendButton","create","flex","padding","paddingTop","flexDirection","alignItems","paddingVertical","marginTop","borderRadius","fontSize","fontWeight","marginLeft","textAlign","lineHeight","marginBottom","borderWidth","borderColor","height","textAlignVertical"],"sourceRoot":"../../../src","sources":["components/email.js"],"mappings":"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","ignoreList":[]}
|