claims form validation

This commit is contained in:
Surendiran 2025-08-01 09:16:52 +05:30
parent 3702c55188
commit 2df8648680
23 changed files with 901 additions and 425 deletions

View File

@ -1,7 +1,6 @@
API_URL=https://venbait.in/nhance/dev/employeeRest/
#CHAT_BOT_URL=https://venbait.in/nhance/dev
API_URL_Enrollment=https://venbait.in/enrollment/employeeRest/
TICKET_API_URL=https://venbait.in/nhance/dev/api
API_URL=https://app.nhanceindia.in/zenith/employeeRest/
API_URL_Enrollment=https://app.nhanceindia.in/enrolment/employeeRest/
TICKET_API_URL=https://app.nhanceindia.in/zenith/api
ticketToken=3YTSia2mRoZ7A4zvBgkqbGPrCd6Ewp8IDOuyjXhVFsl1nxWNcQJ95MeUftKH
BASE_HREF=/nhance/app/dev/
ENV=development
BASE_HREF=/app/
ENV=production

View File

@ -1,7 +1,6 @@
API_URL=https://venbait.in/nhance/dev/employeeRest/
#CHAT_BOT_URL=https://venbait.in/nhance/dev
API_URL_Enrollment=https://venbait.in/enrollment/employeeRest/
TICKET_API_URL=https://venbait.in/nhance/dev/api
API_URL=https://app.nhanceindia.in/zenith/employeeRest/
API_URL_Enrollment=https://app.nhanceindia.in/enrolment/employeeRest/
TICKET_API_URL=https://app.nhanceindia.in/zenith/api
ticketToken=3YTSia2mRoZ7A4zvBgkqbGPrCd6Ewp8IDOuyjXhVFsl1nxWNcQJ95MeUftKH
BASE_HREF=/nhance/app/dev/
ENV=development
BASE_HREF=/app/
ENV=production

View File

@ -2,27 +2,27 @@ C/C++ Structured Logc
a
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  «º°Ëÿ2¤ òÑÞ€á2€
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  óý݆„3¤ òÑÞ€á2€
~
|/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/additional_project_files.txt  «º°Ëÿ2  ¯Ø·ø2}
|/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/additional_project_files.txt  óý݆„3  ¯Ø·ø2}
{
y/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/android_gradle_build.json  «º°Ëÿ2ˆ ²Ø·ø2ƒ
y/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/android_gradle_build.json  óý݆„3ˆ ²Ø·ø2ƒ

~/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/android_gradle_build_mini.json  «º°Ëÿ2 µØ·ø2o
~/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/android_gradle_build_mini.json  óý݆„3 µØ·ø2o
m
k/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/build.ninja  «º°Ëÿ2ŽÍ ˜Ø·ø2s
k/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/build.ninja  óý݆„3ŽÍ ˜Ø·ø2s
q
o/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/build.ninja.txt  «º°Ëÿ2x
o/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/build.ninja.txt  óý݆„3x
v
t/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/build_file_index.txt  «º°Ëÿ2 _ ¶Ø·ø2y
t/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/build_file_index.txt  óý݆„3 _ ¶Ø·ø2y
w
u/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/compile_commands.json  «º°Ëÿ2 }
u/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/compile_commands.json  óý݆„3 }
{
y/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/compile_commands.json.bin  «º°Ëÿ2
y/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/compile_commands.json.bin  óý݆„3

<EFBFBD>
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/metadata_generation_command.txt  «º°Ëÿ2  ¶Ø·ø2v
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/metadata_generation_command.txt  óý݆„3  ¶Ø·ø2v
t
r/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/prefab_config.json  «º°Ëÿ2  ( ¶Ø·ø2{
r/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/prefab_config.json  óý݆„3  ( ¶Ø·ø2{
y
w/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/symbol_folder_index.txt  «º°Ëÿ2  n ¶Ø·ø2
w/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/arm64-v8a/symbol_folder_index.txt  óý݆„3  n ¶Ø·ø2

View File

@ -2,27 +2,27 @@ C/C++ Structured Logc
a
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ±º°Ëÿ2¤ òÑÞ€á2ƒ
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ùý݆„3¤ òÑÞ€á2ƒ

~/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/additional_project_files.txt  ±º°Ëÿ2  ÞÚ·ø2
~/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/additional_project_files.txt  ùý݆„3  ÞÚ·ø2
}
{/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/android_gradle_build.json  ±º°Ëÿ2Œ ÞÚ·ø2†
{/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/android_gradle_build.json  ùý݆„3Œ ÞÚ·ø2†
ƒ
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/android_gradle_build_mini.json  ±º°Ëÿ2<18> ßÚ·ø2q
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/android_gradle_build_mini.json  ùý݆„3<18> ßÚ·ø2q
o
m/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/build.ninja  ±º°Ëÿ2šÍ ÖÚ·ø2u
m/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/build.ninja  ùý݆„3šÍ ÖÚ·ø2u
s
q/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/build.ninja.txt  ±º°Ëÿ2z
q/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/build.ninja.txt  ùý݆„3z
x
v/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/build_file_index.txt  ±º°Ëÿ2 _ ßÚ·ø2{
v/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/build_file_index.txt  ùý݆„3 _ ßÚ·ø2{
y
w/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/compile_commands.json  ±º°Ëÿ2 
w/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/compile_commands.json  ùý݆„3 
}
{/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/compile_commands.json.bin  ±º°Ëÿ2
{/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/compile_commands.json.bin  ùý݆„3


<EFBFBD>/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/metadata_generation_command.txt  ±º°Ëÿ2 Œ ßÚ·ø2x
<EFBFBD>/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/metadata_generation_command.txt  ùý݆„3 Œ ßÚ·ø2x
v
t/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/prefab_config.json  ±º°Ëÿ2  ( ßÚ·ø2}
t/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/prefab_config.json  ùý݆„3  ( ßÚ·ø2}
{
y/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/symbol_folder_index.txt  ±º°Ëÿ2  p ßÚ·ø2
y/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/armeabi-v7a/symbol_folder_index.txt  ùý݆„3  p ßÚ·ø2

View File

@ -2,27 +2,27 @@ C/C++ Structured Logc
a
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ·º°Ëÿ2¤ òÑÞ€á2z
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  þ݆„3¤ òÑÞ€á2z
x
v/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/additional_project_files.txt  ·º°Ëÿ2  ÜÜ·ø2w
v/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/additional_project_files.txt  þ݆„3  ÜÜ·ø2w
u
s/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/android_gradle_build.json  ·º°Ëÿ2ü ÝÜ·ø2|
s/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/android_gradle_build.json  þ݆„3ü ÝÜ·ø2|
z
x/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/android_gradle_build_mini.json  ·º°Ëÿ2ý ÝÜ·ø2i
x/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/android_gradle_build_mini.json  þ݆„3ý ÝÜ·ø2i
g
e/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/build.ninja  ·º°Ëÿ2êÌ ÔÜ·ø2m
e/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/build.ninja  þ݆„3êÌ ÔÜ·ø2m
k
i/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/build.ninja.txt  ·º°Ëÿ2r
i/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/build.ninja.txt  ƒþ݆„3r
p
n/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/build_file_index.txt  ·º°Ëÿ2 _ ÝÜ·ø2s
n/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/build_file_index.txt  ƒþ݆„3 _ ÝÜ·ø2s
q
o/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/compile_commands.json  ·º°Ëÿ2 w
o/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/compile_commands.json  ƒþ݆„3 w
u
s/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/compile_commands.json.bin  ·º°Ëÿ2
s/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/compile_commands.json.bin  ƒþ݆„3
}
{
y/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/metadata_generation_command.txt  ·º°Ëÿ2 ä ÝÜ·ø2p
y/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/metadata_generation_command.txt  ƒþ݆„3 ä ÝÜ·ø2p
n
l/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/prefab_config.json  ·º°Ëÿ2  ( ÝÜ·ø2u
l/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/prefab_config.json  ƒþ݆„3  ( ÝÜ·ø2u
s
q/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/symbol_folder_index.txt  ·º°Ëÿ2  h ÝÜ·ø2
q/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86/symbol_folder_index.txt  ƒþ݆„3  h ÝÜ·ø2

View File

@ -2,27 +2,27 @@ C/C++ Structured Logc
a
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ¾º°Ëÿ2¤ òÑÞ€á2}
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ‰þ݆„3¤ òÑÞ€á2}
{
y/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/additional_project_files.txt  ¾º°Ëÿ2  ÖÞ·ø2z
y/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/additional_project_files.txt  ‰þ݆„3  ÖÞ·ø2z
x
v/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/android_gradle_build.json  ¾º°Ëÿ2 ×Þ·ø2
v/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/android_gradle_build.json  ‰þ݆„3 ×Þ·ø2
}
{/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/android_gradle_build_mini.json  ¾º°Ëÿ2ƒ ×Þ·ø2l
{/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/android_gradle_build_mini.json  ‰þ݆„3ƒ ×Þ·ø2l
j
h/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/build.ninja  ¾º°Ëÿ2üÌ ÏÞ·ø2p
h/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/build.ninja  ‰þ݆„3üÌ ÏÞ·ø2p
n
l/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/build.ninja.txt  ¾º°Ëÿ2u
l/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/build.ninja.txt  ‰þ݆„3u
s
q/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/build_file_index.txt  ¾º°Ëÿ2 _ ØÞ·ø2v
q/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/build_file_index.txt  ‰þ݆„3 _ ØÞ·ø2v
t
r/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/compile_commands.json  ¾º°Ëÿ2 z
r/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/compile_commands.json  ‰þ݆„3 z
x
v/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/compile_commands.json.bin  ¾º°Ëÿ2
v/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/compile_commands.json.bin  ‰þ݆„3

~
|/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/metadata_generation_command.txt  ¾º°Ëÿ2 ó ØÞ·ø2s
|/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/metadata_generation_command.txt  ‰þ݆„3 ó ØÞ·ø2s
q
o/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/prefab_config.json  ¾º°Ëÿ2  ( ØÞ·ø2x
o/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/prefab_config.json  ‰þ݆„3  ( ØÞ·ø2x
v
t/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/symbol_folder_index.txt  ¾º°Ëÿ2  k ØÞ·ø2
t/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/Debug/145a5j35/x86_64/symbol_folder_index.txt  ‰þ݆„3  k ØÞ·ø2

View File

@ -2,27 +2,27 @@ C/C++ Structured Logc
a
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ¼³Ï”ÿ2¤ òÑÞ€á2
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ×çÀ£…3¤ òÑÞ€á2
ˆ
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/additional_project_files.txt  ¼³Ï”ÿ2  Ú´¡ü2ˆ
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/additional_project_files.txt  ×çÀ£…3  Ú´¡ü2ˆ

/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/android_gradle_build.json  ¼³Ï”ÿ2š Ý´¡ü2<C3BC>
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/android_gradle_build.json  ×çÀ£…3š Ý´¡ü2<C3BC>
Š
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/android_gradle_build_mini.json  ¼³Ï”ÿ2 à´¡ü2x
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/android_gradle_build_mini.json  ×çÀ£…3 à´¡ü2x
v
t/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/build.ninja  ¼³Ï”ÿ2ÖÍ Å´¡ü2|
t/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/build.ninja  ×çÀ£…3ÖÍ Å´¡ü2|
z
x/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/build.ninja.txt  ¼³Ï”ÿ2<07>
x/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/build.ninja.txt  ×çÀ£…3<07>

}/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/build_file_index.txt  ¼³Ï”ÿ2 _ â´¡ü2ƒ
}/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/build_file_index.txt  ×çÀ£…3 _ â´¡ü2ƒ

~/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/compile_commands.json  ¼³Ï”ÿ2 ˆ
~/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/compile_commands.json  ×çÀ£…3 ˆ

/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/compile_commands.json.bin  ¼³Ï”ÿ2
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/compile_commands.json.bin  ×çÀ£…3
Ž

ˆ/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/metadata_generation_command.txt  ¼³Ï”ÿ2 ¦ â´¡ü2
ˆ/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/metadata_generation_command.txt  ×çÀ£…3 ¦ â´¡ü2
}
{/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/prefab_config.json  ¼³Ï”ÿ2  ( â´¡ü2†
{/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/prefab_config.json  ×çÀ£…3  ( â´¡ü2†
ƒ
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/symbol_folder_index.txt  ¼³Ï”ÿ2  w â´¡ü2
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/arm64-v8a/symbol_folder_index.txt  ×çÀ£…3  w â´¡ü2

View File

@ -2,27 +2,27 @@ C/C++ Structured Logc
a
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ͳϔÿ2¤ òÑÞ€á2<C3A1>
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  åçÀ£…3¤ òÑÞ€á2<C3A1>
Š
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/additional_project_files.txt  ͳϔÿ2  ÄÇ´¡ü2Š
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/additional_project_files.txt  åçÀ£…3  ÄÇ´¡ü2Š

/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/android_gradle_build.json  ͳϔÿ2ž ÅÇ´¡ü2<C3BC>
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/android_gradle_build.json  åçÀ£…3ž ÅÇ´¡ü2<C3BC>
Œ
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/android_gradle_build_mini.json  ͳϔÿ2Ÿ ÅÇ´¡ü2z
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/android_gradle_build_mini.json  åçÀ£…3Ÿ ÅÇ´¡ü2z
x
v/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/build.ninja  ͳϔÿ2âÍ µÇ´¡ü2~
v/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/build.ninja  åçÀ£…3âÍ µÇ´¡ü2~
|
z/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/build.ninja.txt  ͳϔÿ2
z/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/build.ninja.txt  åçÀ£…3
<EFBFBD>
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/build_file_index.txt  ͳϔÿ2 _ ÅÇ´¡ü2†
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/build_file_index.txt  åçÀ£…3 _ ÅÇ´¡ü2†
ƒ
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/compile_commands.json  ͳϔÿ2 Š
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/compile_commands.json  åçÀ£…3 Š

/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/compile_commands.json.bin  ͳϔÿ2
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/compile_commands.json.bin  åçÀ£…3
<EFBFBD>
<EFBFBD>
Š/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/metadata_generation_command.txt  ͳϔÿ2 ° ÅÇ´¡ü2<C3BC>
Š/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/metadata_generation_command.txt  åçÀ£…3 ° ÅÇ´¡ü2<C3BC>

}/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/prefab_config.json  ͳϔÿ2  ( ÅÇ´¡ü2ˆ
}/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/prefab_config.json  åçÀ£…3  ( ÅÇ´¡ü2ˆ

/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/symbol_folder_index.txt  ͳϔÿ2  y ÅÇ´¡ü2
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/armeabi-v7a/symbol_folder_index.txt  åçÀ£…3  y ÅÇ´¡ü2

View File

@ -2,27 +2,27 @@ C/C++ Structured Logc
a
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ճϔÿ2¤ òÑÞ€á2„
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ìçÀ£…3¤ òÑÞ€á2„
<EFBFBD>
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/additional_project_files.txt  ճϔÿ2  ÃË´¡ü2€
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/additional_project_files.txt  ìçÀ£…3  ÃË´¡ü2€
~
|/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/android_gradle_build.json  ճϔÿ2Ž ÄË´¡ü2‡
|/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/android_gradle_build.json  ìçÀ£…3Ž ÄË´¡ü2‡

<EFBFBD>/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/android_gradle_build_mini.json  ճϔÿ2<18> ÅË´¡ü2r
<EFBFBD>/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/android_gradle_build_mini.json  ìçÀ£…3<18> ÅË´¡ü2r
p
n/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/build.ninja  ճϔÿ2²Í ·Ë´¡ü2v
n/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/build.ninja  ìçÀ£…3²Í ·Ë´¡ü2v
t
r/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/build.ninja.txt  ճϔÿ2{
r/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/build.ninja.txt  ìçÀ£…3{
y
w/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/build_file_index.txt  ճϔÿ2 _ ÅË´¡ü2|
w/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/build_file_index.txt  ìçÀ£…3 _ ÅË´¡ü2|
z
x/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/compile_commands.json  ճϔÿ2
x/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/compile_commands.json  ìçÀ£…3
~
|/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/compile_commands.json.bin  ֳϔÿ2
|/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/compile_commands.json.bin  ìçÀ£…3
ˆ

/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/metadata_generation_command.txt  ֳϔÿ2 ˆ ÅË´¡ü2y
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/metadata_generation_command.txt  ìçÀ£…3 ˆ ÅË´¡ü2y
w
u/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/prefab_config.json  ֳϔÿ2  ( ÅË´¡ü2~
u/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/prefab_config.json  ìçÀ£…3  ( ÅË´¡ü2~
|
z/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/symbol_folder_index.txt  ֳϔÿ2  q ÅË´¡ü2
z/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86/symbol_folder_index.txt  ìçÀ£…3  q ÅË´¡ü2

View File

@ -2,27 +2,27 @@ C/C++ Structured Logc
a
_/Users/venbateam/Documents/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txtC
A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ߳ϔÿ2¤ òÑÞ€á2ˆ
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  òçÀ£…3¤ òÑÞ€á2ˆ

/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/additional_project_files.txt  ߳ϔÿ2  ƒÏ´¡ü2„
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/additional_project_files.txt  òçÀ£…3  ƒÏ´¡ü2„
<EFBFBD>
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/android_gradle_build.json  ߳ϔÿ2 „Ï´¡ü2Š
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/android_gradle_build.json  òçÀ£…3 „Ï´¡ü2Š

/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/android_gradle_build_mini.json  ߳ϔÿ2 „Ï´¡ü2u
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/android_gradle_build_mini.json  òçÀ£…3 „Ï´¡ü2u
s
q/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/build.ninja  ߳ϔÿ2ÄÍ ÷δ¡ü2y
q/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/build.ninja  òçÀ£…3ÄÍ ÷δ¡ü2y
w
u/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/build.ninja.txt  ߳ϔÿ2~
u/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/build.ninja.txt  òçÀ£…3~
|
z/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/build_file_index.txt  ߳ϔÿ2 _ …Ï´¡ü2
z/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/build_file_index.txt  òçÀ£…3 _ …Ï´¡ü2
}
{/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/compile_commands.json  ߳ϔÿ2
{/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/compile_commands.json  òçÀ£…3
<EFBFBD>
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/compile_commands.json.bin  ߳ϔÿ2
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/compile_commands.json.bin  òçÀ£…3

ˆ
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/metadata_generation_command.txt  ߳ϔÿ2 — …Ï´¡ü2|
/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/metadata_generation_command.txt  òçÀ£…3 — …Ï´¡ü2|
z
x/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/prefab_config.json  ߳ϔÿ2  ( …Ï´¡ü2<C3BC>
x/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/prefab_config.json  òçÀ£…3  ( …Ï´¡ü2<C3BC>

}/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/symbol_folder_index.txt  ߳ϔÿ2  t …Ï´¡ü2
}/Users/venbateam/Documents/nhance/post_enrollment_app/android/app/.cxx/RelWithDebInfo/h5v1s1u6/x86_64/symbol_folder_index.txt  òçÀ£…3  t …Ï´¡ü2

View File

@ -19,12 +19,12 @@ if (project.hasProperty('google-services.json')) {
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
flutterVersionCode = '19'
flutterVersionCode = '22'
}
def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
flutterVersionName = '1.0.19'
flutterVersionName = '1.0.22'
}
def keystoreProperties = new Properties()

View File

@ -1,38 +1,151 @@
<!--<!DOCTYPE html>-->
<!--<html lang="en">-->
<!--<head>-->
<!-- <meta charset="UTF-8" />-->
<!-- <style>-->
<!-- #botmanWidgetRoot svg {-->
<!-- display: none !important;-->
<!-- }-->
<!-- </style>-->
<!-- <script>-->
<!-- const APIENDPOINT = 'https://venbait.in/nhance/dev';-->
<!-- const APIAPIENDPOINT = 'https://venbait.in/nhance/dev';-->
<!-- var emp_name = 'Kumar';-->
<!-- var uid = Math.floor(100000 + Math.random() * 900000);-->
<!-- console.log('CURRENT_USER' + uid);-->
<!-- window.botmanWidget = {-->
<!-- chatServer: APIENDPOINT + '/chat',-->
<!-- frameEndpoint: APIAPIENDPOINT + '/widget',-->
<!-- title: 'Ask ILA',-->
<!-- introMessage: '',-->
<!-- bubbleBackground: '#007bff',-->
<!-- mainColor: '#007bff',-->
<!-- placeholderText: 'Type your message here...',-->
<!-- aboutText: 'Insurance Assistant ILA',-->
<!-- enableAttachments: false,-->
<!-- parameters: {-->
<!-- employee_id: '12288',-->
<!-- session_id: 'XYZ789',-->
<!-- origin: 'mobile',-->
<!-- emp_code: 'HTL-007',-->
<!-- client_id: 159,-->
<!-- client_branch_id: 125,-->
<!-- },-->
<!-- };-->
<!-- </script>-->
<!-- <script src="https://cdn.jsdelivr.net/npm/botman-web-widget@0/build/js/widget.js"></script>-->
<!--</head>-->
<!--<body></body>-->
<!--</html>-->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<script>
const APIENDPOINT = 'https://venbait.in/nhance/dev';
const APIAPIENDPOINT = 'https://venbait.in/nhance/dev';
var emp_name = 'Kumar';
var uid = Math.floor(100000 + Math.random() * 900000);
console.log('CURRENT_USER' + uid);
window.botmanWidget = {
chatServer: APIENDPOINT + '/chat',
frameEndpoint: APIAPIENDPOINT + '/widget',
title: 'Ask ILA',
introMessage: '',
bubbleBackground: '#007bff',
mainColor: '#007bff',
placeholderText: 'Type your message here...',
aboutText: 'Insurance Assistant ILA',
enableAttachments: false,
parameters: {
employee_id: '12288',
session_id: 'XYZ789',
origin: 'mobile',
emp_code: 'HTL-007',
client_id: 159,
client_branch_id: 125,
},
};
</script>
<script src="https://cdn.jsdelivr.net/npm/botman-web-widget@0/build/js/widget.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Ask ILA</title>
<style>
#botmanWidgetRoot svg {
display: none !important;
}
</style>
</head>
<body></body>
<body>
<div id="botmanWidgetRoot"></div>
<!--<script>-->
<!-- function initBotman(params) {-->
<!--&lt;!&ndash; console.log('[Botman] Params:', params);&ndash;&gt;-->
<!-- console.log('[Botman] Received Params:', JSON.stringify(params, null, 2));-->
<!-- window.botmanWidget = {-->
<!-- chatServer: 'https://venbait.in/nhance/dev/chat',-->
<!-- frameEndpoint: 'https://venbait.in/nhance/dev/widget',-->
<!-- title: 'Ask ILA',-->
<!-- introMessage: '',-->
<!-- bubbleBackground: '#007bff',-->
<!-- mainColor: '#007bff',-->
<!-- placeholderText: 'Type your message here...',-->
<!-- aboutText: 'Insurance Assistant ILA',-->
<!-- enableAttachments: false,-->
<!-- parameters: params-->
<!-- };-->
<!-- const script = document.createElement('script');-->
<!-- script.src = "https://cdn.jsdelivr.net/npm/botman-web-widget@0/build/js/widget.js";-->
<!-- script.onload = () => {-->
<!-- const checkWidget = setInterval(() => {-->
<!-- if (typeof botmanChatWidget !== 'undefined') {-->
<!-- botmanChatWidget.open();-->
<!-- botmanChatWidget.sayAsBot(`Hi ${params.emp_name}, ILA here to assist you.`);-->
<!-- clearInterval(checkWidget);-->
<!-- }-->
<!-- }, 300);-->
<!-- };-->
<!-- document.body.appendChild(script);-->
<!-- }-->
<!--</script>-->
<script>
function initBotman(params) {
console.log('Params:', params);
console.log('[Botman] Received Params:', JSON.stringify(params, null, 2));
window.botmanWidget = {
chatServer: 'https://venbait.in/nhance/dev/chat',
frameEndpoint: 'https://venbait.in/nhance/dev/widget',
title: 'Ask ILA',
introMessage: '', // Must be empty if using sayAsBot()
bubbleBackground: '#007bff',
mainColor: '#007bff',
placeholderText: 'Type your message here...',
aboutText: 'Insurance Assistant ILA',
enableAttachments: false,
parameters: params
};
const script = document.createElement('script');
script.src = "https://cdn.jsdelivr.net/npm/botman-web-widget@0/build/js/widget.js";
script.onload = function () {
console.log("✅ Botman script loaded");
const waitForWidget = setInterval(() => {
if (typeof botmanChatWidget !== 'undefined' && botmanChatWidget.open) {
clearInterval(waitForWidget);
botmanChatWidget.open();
// Send default message after slight delay
setTimeout(() => {
botmanChatWidget.sayAsBot(`Hi ${params.emp_name || 'User'}, ILA here to assist you.`);
}, 800); // Allow chat to render
} else {
console.log("⏳ Waiting for botmanChatWidget...");
}
}, 300);
};
script.onerror = function () {
console.error("❌ Failed to load Botman widget.js");
};
document.body.appendChild(script);
}
</script>
<script>
const queryParams = new URLSearchParams(window.location.search);
const entries = Object.fromEntries(queryParams.entries());
document.write('<pre>' + JSON.stringify(entries, null, 2) + '</pre>');
</script>
</body>
</html>

View File

@ -4315,17 +4315,17 @@ class _addOnsDetailsState extends State<addOnsDetails> {
),
),
]),
floatingActionButton: Responsive.isDesktop(context)
? null
: isTokenAvailable
? FloatingActionButton(
onPressed: () => Navigator.push(
context,
MaterialPageRoute(builder: (context) => chatbot()),
),
child: Icon(Icons.chat),
)
: null,
// floatingActionButton: Responsive.isDesktop(context)
// ? null
// : isTokenAvailable
// ? FloatingActionButton(
// onPressed: () => Navigator.push(
// context,
// MaterialPageRoute(builder: (context) => chatbot()),
// ),
// child: Icon(Icons.chat),
// )
// : null,
floatingActionButtonLocation: Responsive.isDesktop(context)
? null
: isTokenAvailable

View File

@ -834,17 +834,17 @@ class _empDetailsState extends State<empDetails> {
),
),
]),
floatingActionButton: Responsive.isDesktop(context)
? null
: isTokenAvailable
? FloatingActionButton(
onPressed: () => Navigator.push(
context,
MaterialPageRoute(builder: (context) => chatbot()),
),
child: Icon(Icons.chat),
)
: null,
// floatingActionButton: Responsive.isDesktop(context)
// ? null
// : isTokenAvailable
// ? FloatingActionButton(
// onPressed: () => Navigator.push(
// context,
// MaterialPageRoute(builder: (context) => chatbot()),
// ),
// child: Icon(Icons.chat),
// )
// : null,
floatingActionButtonLocation: Responsive.isDesktop(context)
? null
: isTokenAvailable

View File

@ -2785,17 +2785,17 @@ class _empReviewDetailsState extends State<empReviewDetails> {
),
),
]),
floatingActionButton: Responsive.isDesktop(context)
? null
: isTokenAvailable
? FloatingActionButton(
onPressed: () => Navigator.push(
context,
MaterialPageRoute(builder: (context) => chatbot()),
),
child: Icon(Icons.chat),
)
: null,
// floatingActionButton: Responsive.isDesktop(context)
// ? null
// : isTokenAvailable
// ? FloatingActionButton(
// onPressed: () => Navigator.push(
// context,
// MaterialPageRoute(builder: (context) => chatbot()),
// ),
// child: Icon(Icons.chat),
// )
// : null,
floatingActionButtonLocation: Responsive.isDesktop(context)
? null
: isTokenAvailable

View File

@ -1,48 +1,352 @@
import 'dart:io';
import 'package:flutter/material.dart';
import 'package:webview_flutter/webview_flutter.dart';
import 'package:webview_flutter_android/webview_flutter_android.dart';
import 'package:flutter/services.dart' show rootBundle;
// import 'dart:io';
// import 'dart:math';
// import 'package:flutter/material.dart';
// import 'package:webview_flutter/webview_flutter.dart';
// import 'package:webview_flutter_android/webview_flutter_android.dart';
// import 'package:flutter/services.dart' show rootBundle;
//
// class ChatPage extends StatefulWidget {
//
// final String employeeId;
// final String empCode;
// final String clientId;
// final String clientBranchId;
// final String empName;
//
// const ChatPage({
// super.key,
// required this.employeeId,
// required this.empCode,
// required this.clientId,
// required this.clientBranchId,
// required this.empName,
// });
//
// @override
// State<ChatPage> createState() => _ChatPageState();
// }
//
// class _ChatPageState extends State<ChatPage> {
// late final WebViewController _controller;
//
// @override
// void initState() {
// super.initState();
// print('param check');
// print(widget.empName);
// print(widget.empCode);
// print(widget.clientBranchId);
// print(widget.clientId);
// print(widget.employeeId);
//
// if (Platform.isAndroid) {
// WebViewPlatform.instance = AndroidWebViewPlatform();
// }
//
// _controller = WebViewController()
// ..setJavaScriptMode(JavaScriptMode.unrestricted)
// ..setNavigationDelegate(
// NavigationDelegate(onPageFinished: (url) {
// _controller.runJavaScript(
// "if(typeof botmanChatWidget !== 'undefined') botmanChatWidget.open();");
// }),
// );
//
// _loadBotmanHtml();
//
// // _controller = WebViewController()
// // ..setJavaScriptMode(JavaScriptMode.unrestricted);
//
// // _loadHtmlAndInitBotman();
// }
//
//
// String generateSessionId([int length = 15]) {
// const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
// final random = Random.secure();
// return List.generate(length, (index) => characters[random.nextInt(characters.length)]).join();
// }
//
//
// // Future<void> _loadHtmlAndInitBotman() async {
// // final htmlString = await rootBundle.loadString('assets/botman_chat.html');
// // await _controller.loadHtmlString(htmlString);
// // await Future.delayed(const Duration(milliseconds: 500)); // Wait for widget.js to load
// //
// // final sessionId = generateSessionId();
// // final safeName = widget.empName.replaceAll("'", "\\'"); // Escape single quotes
// //
// // final js = '''
// // initBotman({
// // employee_id: '${widget.employeeId}',
// // session_id: '$sessionId',
// // origin: 'mobile',
// // emp_code: '${widget.empCode}',
// // client_id: '${widget.clientId}',
// // client_branch_id: '${widget.clientBranchId}',
// // emp_name: '$safeName'
// // });
// // ''';
// //
// // print(js); // Debug output
// // await _controller.runJavaScript(js);
// // }
//
//
//
// Future<void> _loadBotmanHtml() async {
// final htmlContent = await rootBundle.loadString('assets/botman_chat.html');
// // Inject localStorage values first
// await _controller.runJavaScript('''
// localStorage.setItem('empPrimaryId', '12563');
// localStorage.setItem('empCode', 'HERO00571');
// localStorage.setItem('client_id', '3843');
// localStorage.setItem('empClientBranchId', '1793');
// localStorage.setItem('_postToken', 'XYZ123ABC');
// localStorage.setItem('gpaEmpName', 'Vishal Vinod Menon G');
// ''');
// _controller.loadHtmlString(htmlContent);
// }
//
// @override
// Widget build(BuildContext context) {
// return Scaffold(
// appBar: AppBar(title: const Text("Ask ILA")),
// body: WebViewWidget(controller: _controller),
// );
// }
// }
//
// import 'dart:convert';
// import 'dart:io';
// import 'dart:math';
// import 'package:flutter/material.dart';
// import 'package:flutter/services.dart' show rootBundle;
// import 'package:nhance_app_pwa/customAppBar/customAppBar.dart';
// import 'package:webview_flutter/webview_flutter.dart';
// import 'package:webview_flutter_android/webview_flutter_android.dart';
//
// class ChatPage extends StatefulWidget {
// final String employeeId;
// final String empCode;
// final String clientId;
// final String clientBranchId;
// final String empName;
//
// const ChatPage({
// super.key,
// required this.employeeId,
// required this.empCode,
// required this.clientId,
// required this.clientBranchId,
// required this.empName,
// });
//
// @override
// State<ChatPage> createState() => _ChatPageState();
// }
//
// class _ChatPageState extends State<ChatPage> {
// late final WebViewController _controller;
//
// @override
// void initState() {
// super.initState();
// if (Platform.isAndroid) {
// WebViewPlatform.instance = AndroidWebViewPlatform();
// }
//
// _controller = WebViewController()
// ..setJavaScriptMode(JavaScriptMode.unrestricted);
//
// _loadHtmlWithBase64Injection();
// }
//
// String generateSessionId([int length = 15]) {
// const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
// final random = Random.secure();
// return List.generate(length, (index) => characters[random.nextInt(characters.length)]).join();
// }
//
// Future<void> _loadHtmlWithBase64Injection() async {
// String html = await rootBundle.loadString('assets/botman_chat.html');
//
// final sessionId = generateSessionId();
// final empName = widget.empName.replaceAll("'", "\\'");
// final injectedJS = '''
// <script>
// initBotman({
// employee_id: '${widget.employeeId}',
// session_id: '$sessionId',
// origin: 'mobile',
// emp_code: '${widget.empCode}',
// client_id: '${widget.clientId}',
// client_branch_id: '${widget.clientBranchId}',
// emp_name: '$empName'
// });
// </script>
// </body>
// </html>
// ''';
//
// html = html.replaceFirst('</body>\n</html>', injectedJS); // inject just before </body>
//
// final uri = Uri.dataFromString(html, mimeType: 'text/html', encoding: Encoding.getByName('utf-8'));
// await _controller.loadRequest(uri);
// }
//
// @override
// Widget build(BuildContext context) {
// return Scaffold(
// backgroundColor: Colors.white,
// appBar: CustomAppBar(),
// body: WebViewWidget(controller: _controller),
// );
// }
// }
class ChatPage extends StatefulWidget {
const ChatPage({Key? key}) : super(key: key);
import 'dart:math';
import 'package:flutter/material.dart';
import 'package:nhance_app_pwa/customAppBar/customAppBar.dart';
import 'package:webview_flutter/webview_flutter.dart';
class BotmanChatScreen extends StatefulWidget {
final String empName;
final String employeeId;
final String sessionId;
final String empCode;
final String clientId;
final String clientBranchId;
const BotmanChatScreen({
super.key,
required this.empName,
required this.employeeId,
required this.sessionId,
required this.empCode,
required this.clientId,
required this.clientBranchId,
});
@override
State<ChatPage> createState() => _ChatPageState();
State<BotmanChatScreen> createState() => _BotmanChatScreenState();
}
class _ChatPageState extends State<ChatPage> {
class _BotmanChatScreenState extends State<BotmanChatScreen> {
late final WebViewController _controller;
String getInjectedHTML() {
final uid = Random().nextInt(900000) + 100000;
return '''
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<style>
#botmanWidgetRoot svg {
display: none !important;
}
</style>
<script>
const APIENDPOINT = 'https://venbait.in/nhance/chatbot';
var emp_name = '${widget.empName}';
var uid = Math.floor(Math.random() * 900000) + 100000;
window.botmanWidget = {
chatServer: APIENDPOINT + '/chat',
frameEndpoint: APIENDPOINT + '/widget',
title: 'Nhance Insurance Assistant',
introMessage: 'Hai ',
bubbleBackground: '#007bff',
mainColor: '#007bff',
placeholderText: 'Type your message here...',
aboutText: 'Insurance Assistant ILA',
enableAttachments: false,
parameters: {
employee_id: '${widget.employeeId}',
session_id: '${widget.sessionId}',
origin: 'mobile',
emp_code: '${widget.empCode}',
client_id: '${widget.clientId}',
client_branch_id: '${widget.clientBranchId}'
},
};
document.addEventListener("DOMContentLoaded", function () {
if (typeof botmanChatWidget !== "undefined") {
botmanChatWidget.open();
}
});
setTimeout(() => {
if (typeof botmanChatWidget !== "undefined") {
botmanChatWidget.open();
}
}, 3000);
</script>
<script defer src="https://cdn.jsdelivr.net/npm/botman-web-widget@0/build/js/widget.js"></script>
// <script>
// const APIENDPOINT = 'https://venbait.in/nhance/dev';
// const APIAPIENDPOINT = 'https://venbait.in/nhance/dev';
//
// var emp_name = '${widget.empName}';
// var uid = ${uid};
// console.log('CURRENT_USER: ' + uid);
//
// window.botmanWidget = {
// chatServer: APIENDPOINT + '/chat',
// frameEndpoint: APIAPIENDPOINT + '/widget',
// title: 'Nhance Insurance Assistant',
// introMessage: 'Hai ',
// bubbleBackground: '#007bff',
// mainColor: '#007bff',
// placeholderText: 'Type your message here...',
// aboutText: 'Insurance Assistant ILA',
// enableAttachments: false,
// parameters: {
// employee_id: '${widget.employeeId}',
// session_id: '${widget.sessionId}',
// origin: 'mobile',
// emp_code: '${widget.empCode}',
// client_id: ${widget.clientId},
// client_branch_id: ${widget.clientBranchId}
// },
// };
//
//
// window.addEventListener("load", function () {
// if (typeof botmanChatWidget !== "undefined") {
// botmanChatWidget.open(); // 🔥 Force open
// }
// });
// </script>
// <script src="https://cdn.jsdelivr.net/npm/botman-web-widget@0/build/js/widget.js"></script>
</head>
<body></body>
</html>
''';
}
@override
void initState() {
super.initState();
if (Platform.isAndroid) {
WebViewPlatform.instance = AndroidWebViewPlatform();
}
_controller = WebViewController()
..setJavaScriptMode(JavaScriptMode.unrestricted)
..setNavigationDelegate(
NavigationDelegate(onPageFinished: (url) {
_controller.runJavaScript(
"if(typeof botmanChatWidget !== 'undefined') botmanChatWidget.open();");
}),
);
_loadBotmanHtml();
}
Future<void> _loadBotmanHtml() async {
final htmlContent = await rootBundle.loadString('assets/botman_chat.html');
_controller.loadHtmlString(htmlContent);
..loadHtmlString(getInjectedHTML());
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text("Ask ILA")),
backgroundColor: Colors.white,
appBar: CustomAppBar(),
body: WebViewWidget(controller: _controller),
);
}

View File

@ -246,16 +246,16 @@ class _ClaimHistoryPopupState extends State<ClaimHistoryPopup> {
children: [
Responsive.isDesktop(context)
? Row(
children: keyValueWidgets
.map((w) => Expanded(child: w))
.toList(),
)
children: keyValueWidgets
.map((w) => Expanded(child: w))
.toList(),
)
: Container(
width: MediaQuery.of(context).size.width,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: keyValueWidgets),
),
width: MediaQuery.of(context).size.width,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: keyValueWidgets),
),
// Row(
// children: [
// Expanded(
@ -271,16 +271,16 @@ class _ClaimHistoryPopupState extends State<ClaimHistoryPopup> {
SizedBox(height: Responsive.isDesktop(context) ? 16 : 8),
Responsive.isDesktop(context)
? Row(
children: keyValueWidgetRow
.map((w) => Expanded(child: w))
.toList(),
)
children: keyValueWidgetRow
.map((w) => Expanded(child: w))
.toList(),
)
: Container(
width: MediaQuery.of(context).size.width,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: keyValueWidgetRow),
),
width: MediaQuery.of(context).size.width,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: keyValueWidgetRow),
),
],
),
),
@ -371,60 +371,63 @@ class _ClaimHistoryPopupState extends State<ClaimHistoryPopup> {
isLoading
? Container(
// color: Color(0x98FFFCE5), // Semi-transparent background
child: Center(
child: // Your GIF loader widget
Image.asset(
height: 60,
width: 60,
'assets/nhance-loader.gif'), // Adjust path to your GIF loader
),
)
// color: Color(0x98FFFCE5), // Semi-transparent background
child: Center(
child: // Your GIF loader widget
Image.asset(
height: 60,
width: 60,
'assets/nhance-loader.gif'), // Adjust path to your GIF loader
),
)
: Container(
child: getClaimsHistoryList.isNotEmpty
? Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: List.generate(stepKeys.length, (index) {
String stepTitleKey = stepKeys[index];
Map<String, dynamic> stepData =
stepMap[stepTitleKey];
child: getClaimsHistoryList.isNotEmpty
? Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: List.generate(stepKeys.length, (index) {
String stepTitleKey = stepKeys[index];
Map<String, dynamic> stepData =
stepMap[stepTitleKey];
print('stepTitleKey');
print(stepTitleKey);
print('stepData');
print(stepData);
print('stepTitleKey');
print(stepTitleKey);
print('stepData');
print(stepData);
return _buildStep(
stepNumber: index + 1,
title: _getStepTitleFromApi(
stepTitleKey, stepData),
content: _getStepContentFromApi(stepData),
isLast: index == stepKeys.length - 1,
);
}),
)
: Container(
height: MediaQuery.of(context).size.height * 0.4,
// color: Colors.red,
child: Center(
child: Column(
children: [
Image.asset(
'assets/searchData.jpg', // Replace 'default_image.png' with your default image asset path
width: 200,
height: 200,
fit: BoxFit.cover,
),
Text(
'No Claim History',
style: TextStyle(
fontWeight: FontWeight.w500,
fontSize: 15),
),
],
)),
),
),
Widget content = _getStepContentFromApi(stepData);
return _buildStep(
stepNumber: index + 1,
title: _getStepTitleFromApi(
stepTitleKey, stepData),
content: content,
// content: _getStepContentFromApi(stepData),
isLast: index == stepKeys.length - 1,
);
}),
)
: Container(
height: MediaQuery.of(context).size.height * 0.4,
// color: Colors.red,
child: Center(
child: Column(
children: [
Image.asset(
'assets/searchData.jpg', // Replace 'default_image.png' with your default image asset path
width: 200,
height: 200,
fit: BoxFit.cover,
),
Text(
'No Claim History',
style: TextStyle(
fontWeight: FontWeight.w500,
fontSize: 15),
),
],
)),
),
),
],
),
),
@ -439,6 +442,13 @@ class _ClaimHistoryPopupState extends State<ClaimHistoryPopup> {
bool isLast = false,
}) {
print(title);
final noContent;
if ((content as Column).children.isEmpty) {
noContent = 0;
} else {
noContent = 1;
}
return Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
@ -470,7 +480,8 @@ class _ClaimHistoryPopupState extends State<ClaimHistoryPopup> {
// Dotted line below circle (except for last step)
if (!isLast)
Container(
height: 50, // increase to extend line
height: noContent == 1 ? 50 : 20,
// increase to extend line
width: 2,
margin: EdgeInsets.only(top: 4, bottom: 4),
child: CustomPaint(
@ -488,18 +499,19 @@ class _ClaimHistoryPopupState extends State<ClaimHistoryPopup> {
crossAxisAlignment: CrossAxisAlignment.start,
children: [
title,
SizedBox(height: 8),
Container(
width: double.infinity,
padding: EdgeInsets.all(12),
decoration: BoxDecoration(
color: Color(0xFFF7F7F7),
borderRadius: BorderRadius.circular(8),
border: Border.all(color: Color(0xFFE0E0E0)),
if (noContent == 1) SizedBox(height: noContent == 0 ? 0 : 8),
if (noContent == 1)
Container(
width: double.infinity,
padding: EdgeInsets.all(12),
decoration: BoxDecoration(
color: Color(0xFFF7F7F7),
borderRadius: BorderRadius.circular(8),
border: Border.all(color: Color(0xFFE0E0E0)),
),
child: content,
),
child: content,
),
SizedBox(height: isLast ? 0 : 16),
if (noContent == 1) SizedBox(height: isLast ? 0 : 16),
],
),
),
@ -564,7 +576,7 @@ class _ClaimHistoryPopupState extends State<ClaimHistoryPopup> {
Widget _buildKeyValue(String title, String value) {
final displayValue =
(value == null || value.trim().isEmpty) ? 'N/A' : value;
(value == null || value.trim().isEmpty) ? 'N/A' : value;
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
@ -591,7 +603,7 @@ class _ClaimHistoryPopupState extends State<ClaimHistoryPopup> {
Widget _buildHistoryListData(String title, String value) {
final displayValue =
(value == null || value.trim().isEmpty) ? 'N/A' : value;
(value == null || value.trim().isEmpty) ? 'N/A' : value;
final titleText = Text(
title,
@ -616,55 +628,55 @@ class _ClaimHistoryPopupState extends State<ClaimHistoryPopup> {
padding: const EdgeInsets.symmetric(vertical: 1), // optional spacing
child: Responsive.isDesktop(context)
? Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Expanded(
child: Align(
alignment: Alignment.centerLeft, child: titleText)),
Expanded(
child: Align(
alignment: Alignment.centerRight, child: valueText)),
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Expanded(
child: Align(
alignment: Alignment.centerLeft, child: titleText)),
Expanded(
child: Align(
alignment: Alignment.centerRight, child: valueText)),
// Title - Align to center left
// Expanded(
// child: Align(
// alignment: Alignment.centerLeft,
// child: Text(
// title,
// style: GoogleFonts.poppins(
// color: const Color(0xFF747474),
// fontWeight: FontWeight.w400,
// fontSize: 14,
// ),
// ),
// ),
// ),
// Title - Align to center left
// Expanded(
// child: Align(
// alignment: Alignment.centerLeft,
// child: Text(
// title,
// style: GoogleFonts.poppins(
// color: const Color(0xFF747474),
// fontWeight: FontWeight.w400,
// fontSize: 14,
// ),
// ),
// ),
// ),
// Value - Align to center right
// Expanded(
// child: Align(
// alignment: Alignment.centerRight,
// child: Text(
// displayValue,
// style: GoogleFonts.poppins(
// color: const Color(0xFF000000),
// fontWeight: FontWeight.w400,
// fontSize: 14,
// ),
// ),
// ),
// ),
],
)
// Value - Align to center right
// Expanded(
// child: Align(
// alignment: Alignment.centerRight,
// child: Text(
// displayValue,
// style: GoogleFonts.poppins(
// color: const Color(0xFF000000),
// fontWeight: FontWeight.w400,
// fontSize: 14,
// ),
// ),
// ),
// ),
],
)
: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
titleText,
SizedBox(height: 4),
valueText,
],
),
crossAxisAlignment: CrossAxisAlignment.start,
children: [
titleText,
SizedBox(height: 4),
valueText,
],
),
);
}
}
@ -691,4 +703,4 @@ class DottedLinePainter extends CustomPainter {
@override
bool shouldRepaint(CustomPainter oldDelegate) => false;
}
}

View File

@ -1,5 +1,6 @@
import 'dart:convert';
import 'dart:io';
import 'dart:math';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
@ -69,10 +70,10 @@ class _HomeState extends State<Home> {
_loadToken();
checkEnrollToken();
if(kIsWeb){
// openBotmanChat();
// if(kIsWeb){
// openBotmanChat();
//
//
// // Push a dummy state so back button triggers popstate instead of navigating
// html.window.history.pushState(null, 'home', html.window.location.href);
//
@ -83,7 +84,7 @@ class _HomeState extends State<Home> {
// // Re-push to prevent leaving
// html.window.history.pushState(null, 'home', html.window.location.href);
// });
}
// }
// if (Platform.isAndroid) {
// WebViewPlatform.instance = AndroidWebViewPlatform();
// }
@ -105,8 +106,12 @@ class _HomeState extends State<Home> {
// 'openBotmanChat'); // Correct way to call JS function
// }
// }
//
// void repositionBotman() {
// if (kIsWeb) {
// js.context.callMethod('repositionBotmanWidget');
// }
// }
void _showBackConfirmationDialog() {
_dialogShown = true;
@ -143,12 +148,6 @@ class _HomeState extends State<Home> {
Navigator.pushReplacementNamed(context, 'login');
}
// void repositionBotman() {
// if (kIsWeb) {
// js.context.callMethod('repositionBotmanWidget');
// }
// }
Future<void> checkEnrollToken() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
setState(() {
@ -266,6 +265,12 @@ class _HomeState extends State<Home> {
}
}
String generateSessionId([int length = 15]) {
const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
final random = Random.secure();
return List.generate(length, (index) => characters[random.nextInt(characters.length)]).join();
}
@override
Widget build(BuildContext context) {
if (!Responsive.isDesktop(context))
@ -724,13 +729,42 @@ class _HomeState extends State<Home> {
]),
)),
// Positioned(
// bottom: 90,
// right: 20,
// bottom: 25,
// right: 15,
// child: GestureDetector(
// onTap: () {
// onTap: () async {
// // Navigator.of(context).push(
// // MaterialPageRoute(builder: (context) => const ChatPage()),
// // );
// final sessionId = generateSessionId();
// final SharedPreferences prefs = await SharedPreferences.getInstance();
// final empClientBranchId = prefs.getString('empClientBranchId') ?? '';
// final empCodeString = prefs.getString('empCode') ?? '';
// final empPrimaryId = prefs.getString('empPrimaryId') ?? '';
// final client_id = prefs.getString('client_id') ?? '';
// final gpaEmpName = prefs.getString('gpaEmpName') ?? '';
//
// print('param check from home');
// print(gpaEmpName);
// print(empCodeString);
// print(empClientBranchId);
// print(client_id);
// print(empPrimaryId);
//
// Navigator.of(context).push(
// MaterialPageRoute(builder: (context) => const ChatPage()),
// MaterialPageRoute(
// builder: (context) => BotmanChatScreen(
// // builder: (context) => ChatPage(
// sessionId: sessionId,
// employeeId: empPrimaryId,
// empCode: empCodeString,
// clientId: client_id,
// clientBranchId: empClientBranchId,
// empName: gpaEmpName,
// ),
// ),
// );
//
// },
// child: Container(
// width: 60,
@ -747,10 +781,10 @@ class _HomeState extends State<Home> {
// ],
// ),
// alignment: Alignment.center,
// child: const Text(
// "Ask\nILA",
// style: TextStyle(color: Colors.white, fontSize: 12),
// textAlign: TextAlign.center,
// child: const Icon(
// Icons.chat, // you can change this to any icon you like
// color: Colors.white,
// size: 20,
// ),
// ),
// ),

View File

@ -89,6 +89,13 @@ class _planclaimsformState extends State<planclaimsform> {
bool isServiceValid = true;
bool isPolicyValid = true;
bool isMemberValid = true;
bool isSubjectValid = true;
bool isHospitalNameValid = true;
bool isAdmitDischargeValid = true;
bool isClaimAmountValid = true;
bool isAccidentDateValid = true;
bool isIntimationDateValid = true;
@override
void initState() {
@ -484,14 +491,26 @@ class _planclaimsformState extends State<planclaimsform> {
isServiceValid = serviceId != null;
isPolicyValid = policyNumberId != null;
isMemberValid = selectedMemberId != null;
isSubjectValid = subjectController.text.trim().isNotEmpty;
isHospitalNameValid = policyTypeCondition != 1 || hospitalNameController.text.trim().isNotEmpty;
isAdmitDischargeValid = policyTypeCondition != 1 || (admitDate != null && dischargeDate != null);
isClaimAmountValid = serviceId != 1 || claimAmountController.text.trim().isNotEmpty;
isAccidentDateValid = (serviceId == 2 || serviceId == 3 || serviceId == 4) ? accidentDate != null : true;
isIntimationDateValid = (serviceId == 2 || serviceId == 3 || serviceId == 4) ? intimationDate != null : true;
});
if (isServiceValid && isPolicyValid && isMemberValid) {
print("All fields are valid, submitting...");
if (isServiceValid &&
isPolicyValid &&
isMemberValid &&
isSubjectValid &&
isHospitalNameValid &&
isAdmitDischargeValid &&
isClaimAmountValid &&
isAccidentDateValid &&
isIntimationDateValid) {
// Proceed to submit
} else {
ToastHelper.showErrorToast(context, 'Please Fill Required Fields');
print("Validation failed.");
return;
}
@ -1004,8 +1023,13 @@ SizedBox(height: 15),
// 'name',
// selectedMemberId, // Pass current selectedMemberId as selectedValue
// ),
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
buildTextField('Subject',
subjectController),
if (!isSubjectValid)
Text('Please enter the Subject', style: TextStyle(color: Colors.red)),
SizedBox(height: 15),
buildTextAreaField(
'Message',
@ -1017,20 +1041,20 @@ SizedBox(height: 15),
// 'Accident Details',
// accidentDetailsController),
SizedBox(height: 15),
if (policyTypeCondition ==
1)
buildTextField(
'Hospital Name',
hospitalNameController),
if (policyTypeCondition == 1) ...[
buildTextField('Hospital Name', hospitalNameController),
if (!isHospitalNameValid)
Text('Please enter the Hospital Name', style: TextStyle(color: Colors.red)),
],
SizedBox(height: 15),
if (serviceId == 2 ||
serviceId == 3 ||
serviceId == 4) ...[
buildDatePickerField(
label:
'Date of Birth',
'Date of Birth',
selectedDate:
birthDate,
birthDate,
allowFuture: false,
onDateSelected:
(selectedDate) {
@ -1042,33 +1066,27 @@ SizedBox(height: 15),
),
SizedBox(height: 15),
buildDatePickerField(
label:
'Accident Date',
selectedDate:
accidentDate,
label: 'Accident Date',
selectedDate: accidentDate,
allowFuture: false,
minDate: parsedPolicyStartDate,
maxDate: parsedPolicyEndDate,
onDateSelected:(selectedDate) {
onDateSelected: (selectedDate) {
setState(() {
if (deathDate != null) {
deathDate = null;
}
// If intimationDate is before the new accidentDate, reset it
if (intimationDate != null) {
intimationDate = null;
}
if (deathDate != null) deathDate = null;
if (intimationDate != null) intimationDate = null;
accidentDate = selectedDate;
});
},
),
if (!isAccidentDateValid)
Text('Please select the Accident Date', style: TextStyle(color: Colors.red)),
SizedBox(height: 15),
buildDatePickerField(
label:
'Date of Death',
'Date of Death',
selectedDate:
deathDate,
deathDate,
allowFuture: false,
minDate: accidentDate ?? parsedPolicyStartDate,
maxDate: parsedPolicyEndDate,
@ -1082,62 +1100,52 @@ SizedBox(height: 15),
),
SizedBox(height: 15),
buildDatePickerField(
label:
'Date of Intimation',
selectedDate:
intimationDate,
label: 'Date of Intimation',
selectedDate: intimationDate,
allowFuture: false,
minDate: accidentDate ??
(deathDate ?? parsedPolicyStartDate),
minDate: accidentDate ?? deathDate ?? parsedPolicyStartDate,
maxDate: parsedPolicyEndDate,
onDateSelected:
(selectedDate) {
onDateSelected: (selectedDate) {
setState(() {
intimationDate =
selectedDate;
intimationDate = selectedDate;
});
},
),
if (!isIntimationDateValid)
Text('Please select the Intimation Date', style: TextStyle(color: Colors.red)),
],
SizedBox(height: 15),
// buildTextAreaField(
// 'Accident Details',
// accidentDetailsController),
// SizedBox(height: 15),
if (policyTypeCondition ==
1)
if (policyTypeCondition == 1) ...[
InkWell(
onTap: () =>
_pickFromToDate(
context),
onTap: () => _pickFromToDate(context),
child: InputDecorator(
decoration:
InputDecoration(
labelText:
'Admit Date - Discharge Date',
border:
OutlineInputBorder(),
decoration: InputDecoration(
labelText: 'Admit Date - Discharge Date',
border: OutlineInputBorder(),
),
child: Text(
admitDate !=
null &&
dischargeDate !=
null
admitDate != null && dischargeDate != null
? '${admitDateController.text} to ${dischargeDateController.text}'
: 'Select Admit and Discharge Dates',
style: TextStyle(
color: Colors
.black),
style: TextStyle(color: Colors.black),
),
),
),
if (!isAdmitDischargeValid)
Text('Please select Admit and Discharge Dates', style: TextStyle(color: Colors.red)),
],
SizedBox(height: 15),
if (serviceId == 1)
buildTextField(
'Claim Amount',
claimAmountController,
TextInputType.number,
),
if (serviceId == 1) ...[
buildTextField('Claim Amount', claimAmountController, TextInputType.number),
if (!isClaimAmountValid)
Text('Please enter the Claim Amount', style: TextStyle(color: Colors.red)),
],
SizedBox(height: 15),
if (serviceId == 2 ||
serviceId == 3 ||
@ -1147,6 +1155,9 @@ SizedBox(height: 15),
sumInsuredController,
TextInputType.number,
),
]
),
],
),
),

View File

@ -452,15 +452,19 @@ class _MyVerifyState extends State<MyVerify> {
smsCode: otp,
);
// final userCredential = await FirebaseAuth.instance.signInWithCredential(credential);
// await FirebaseAuth.instance.signInWithCredential(credential);
print('credential $credential');
// if (userCredential.user != null) {
final userCredential = await FirebaseAuth.instance.signInWithCredential(credential);
// await FirebaseAuth.instance.signInWithCredential(credential);
print('otp firebase check');
if (userCredential.user != null) {
print('otp firebase check done');
bool otpVerifyStatus = true;
generateToken(otpVerifyStatus);
// } else {
// ToastHelper.showErrorToast(context, 'Invalid OTP. Please try again.');
// }
} else {
ToastHelper.showErrorToast(context, 'Invalid OTP. Please try again.');
}
// await FirebaseAuth.instance.signInWithCredential(credential).then((userCredential) async {
// if (userCredential.user != null) {

View File

@ -25,7 +25,7 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
FLTFirebaseCorePlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseCorePlugin"))
FLTFirebaseMessagingPlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseMessagingPlugin"))
FLTGoogleSignInPlugin.register(with: registry.registrar(forPlugin: "FLTGoogleSignInPlugin"))
LocalAuthPlugin.register(with: registry.registrar(forPlugin: "LocalAuthPlugin"))
FLALocalAuthPlugin.register(with: registry.registrar(forPlugin: "FLALocalAuthPlugin"))
FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin"))
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin"))

View File

@ -16,8 +16,8 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
# In Windows, build-name is used as the major, minor, and patch parts
# of the product and file versions while build-number is used as the build suffix.
version: 1.0.19+19
#version: 1.0.5+6
#version: 1.0.22+22
version: 1.0.8+9
environment:
sdk: '>=3.3.3 <4.0.0'

View File

@ -161,8 +161,8 @@ body.show-botman #botmanWidgetRoot {
console.log("Initializing Botman Chat");
window.botmanWidget = {
chatServer: 'https://venbait.in/nhance/dev/chat',
frameEndpoint: 'https://venbait.in/nhance/dev/widget',
chatServer: 'https://venbait.in/nhance/chatbot/chat',
frameEndpoint: 'https://venbait.in/nhance/chatbot/widget',
title: "Ask ILA",
introMessage: "",
bubbleBackground: "#007bff",