Compare commits

...

584 Commits

Author SHA1 Message Date
tahaalam b93e23a314 Emergency servicews pages changes of passing the values which are displayed outside 1 day ago
tahaalam fb64d3b957 Merge remote-tracking branch 'origin/master' into changes
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/features/authentication/authentication_view_model.dart
#	lib/generated/locale_keys.g.dart
1 day ago
tahaalam e73d2534cc social media elements added for profile and service page 1 day ago
khansultan1 e52aa24822 Merge pull request 'dev_sultan' (#267) from dev_sultan into master
Reviewed-on: #267
1 day ago
Sultan khan 83a414796a Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
# Conflicts:
#	lib/features/authentication/authentication_view_model.dart
1 day ago
Sultan khan dfc2e21e8c no message 1 day ago
Sultan khan 1366518ce1 fixes and updates 1 day ago
khansultan1 38e1a9ae4e Merge pull request 'Added Localized Error Handling ( faiz_dev )' (#264) from faiz_dev into master
Reviewed-on: #264
1 day ago
faizatflutter 10db964fd8 Merge branch 'master' into faiz_dev
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/generated/locale_keys.g.dart
1 day ago
faizatflutter 61f17a3feb fixed api localization issue 1 day ago
Sultan khan b18ddd1ad7 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
# Conflicts:
#	lib/generated/locale_keys.g.dart
1 day ago
Sultan khan 8a41b5716f updates 1 day ago
khansultan1 779ea23efa Merge pull request 'live care changes' (#263) from changes into master
Reviewed-on: #263
1 day ago
tahaalam 05aaa71cf9 live care changes 1 day ago
faizatflutter 8c925a7f5e Merge branch 'master' into faiz_dev
# Conflicts:
#	ios/Podfile.lock
1 day ago
Sultan khan 5374110bff Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 2 days ago
khansultan1 1810071f1b Merge pull request 'changes' (#262) from changes into master
Reviewed-on: #262
2 days ago
tahaalam 513422cb03 Merge remote-tracking branch 'origin/master' into changes 2 days ago
tahaalam bf7b0d922e weather permission issue 2 days ago
Sultan khan 464991153f Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 2 days ago
khansultan1 a651e2a650 Merge pull request 'Localization' (#261) from dev_aamir into master
Reviewed-on: #261
2 days ago
aamir-csol cb2e3c7574 Merge branch 'master' into dev_aamir
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/generated/locale_keys.g.dart
#	lib/presentation/book_appointment/select_clinic_page.dart
2 days ago
khansultan1 b51cd52fa4 Merge pull request 'dev_sultan' (#260) from dev_sultan into master
Reviewed-on: #260
2 days ago
Sultan khan 6c3808effe Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/generated/locale_keys.g.dart
#	lib/presentation/blood_donation/widgets/select_gender_widget.dart
#	lib/presentation/comprehensive_checkup/comprehensive_checkup_page.dart
2 days ago
khansultan1 d7794d8ab2 Merge pull request 'language changes' (#258) from changes into master
Reviewed-on: #258
2 days ago
aamir-csol baa9ebe7ea Merge branch 'master' into dev_aamir
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
2 days ago
Sultan khan 256537cfb3 update and fix 2 days ago
aamir-csol 1849a90b32 Localization 2 days ago
tahaalam c91d25add3 Merge remote-tracking branch 'origin/master' into changes 2 days ago
tahaalam cfcbaa85a3 LANGUAGE CHANGES 2 days ago
Sultan khan 086df4cdd8 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 2 days ago
khansultan1 fbe2406d34 Merge pull request 'map changes and refferal changes' (#255) from changes into master
Reviewed-on: #255
2 days ago
tahaalam ee8257054e Merge remote-tracking branch 'origin/master' into changes
# Conflicts:
#	assets/langs/en-US.json
2 days ago
tahaalam 6b4d43caf3 referral hardcoded string changes 2 days ago
khansultan1 fecf17fb7e Merge pull request 'dev_sultan' (#257) from dev_sultan into master
Reviewed-on: #257
2 days ago
tahaalam 28d03644ba Merge remote-tracking branch 'origin/master' into changes
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/generated/locale_keys.g.dart
2 days ago
Sultan khan fee2001499 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
2 days ago
Sultan khan 929a25d9a4 no message 2 days ago
khansultan1 43497a2f11 Merge pull request 'Localization' (#256) from dev_aamir into master
Reviewed-on: #256
2 days ago
tahaalam 138e65d6fc Merge remote-tracking branch 'origin/master' into changes 2 days ago
aamir-csol 60b71e9b1d Merge branch 'master' into dev_aamir 2 days ago
aamir-csol 1515fc57e5 Localization 2 days ago
tahaalam bf9b88e79c map prescriptiojn changes
date sorting for the rrt and amublance history.
weather issue,
e refferal langauge
2 days ago
Sultan khan a81044c7eb Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 2 days ago
khansultan1 8be2398cc6 Merge pull request 'fixes and updates' (#254) from dev_sultan into master
Reviewed-on: #254
2 days ago
Sultan khan 94993fa6fb fixes and updates 2 days ago
tahaalam 66e23197c5 referral lingual change 2 days ago
khansultan1 1e65a67f0e Merge pull request 'dev_sultan' (#253) from dev_sultan into master
Reviewed-on: #253
3 days ago
Sultan khan 42e710c61f Rad Description & Ai Description 3 days ago
Sultan khan bd581c4fe0 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/generated/locale_keys.g.dart
3 days ago
khansultan1 248faa3ac7 Merge pull request 'language changes' (#251) from changes into master
Reviewed-on: #251
3 days ago
Sultan khan 82f2adfc3f Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 3 days ago
Sultan khan c1c434789e Rad Description & Ai Description 3 days ago
tahaalam a31c4c99df Merge remote-tracking branch 'origin/master' into changes
# Conflicts:
#	assets/langs/ar-SA.json
#	lib/generated/codegen_loader.g.dart
#	lib/generated/locale_kesy.g.dart
3 days ago
tahaalam 2d36d91ab6 language and stepper changes 3 days ago
khansultan1 2c45063291 Merge pull request 'Calendar Design Changes' (#250) from dev_aamir into master
Reviewed-on: #250
3 days ago
Sultan khan c2dcf95d52 update and fix 3 days ago
aamir-csol 01e56e4fb5 Merge branch 'refs/heads/master' into dev_aamir 3 days ago
aamir-csol db2ccd3be6 Date & Time New Widget For Whole App 3 days ago
tahaalam 50a597b4d3 lang changes 3 days ago
Sultan khan 6bc80a394d Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 3 days ago
khansultan1 f14958f9e1 Merge pull request 'reminder changes' (#248) from changes into master
Reviewed-on: #248
3 days ago
tahaalam 14771b32d3 reminder changes 3 days ago
Sultan khan c2d468bd74 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 3 days ago
khansultan1 5c3b1fe448 Merge pull request 'localization changes' (#247) from changes into master
Reviewed-on: #247
3 days ago
tahaalam 5a4e5e138b string localization changes 3 days ago
Sultan khan 898cbb0a78 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 3 days ago
khansultan1 8e9c5ae6df Merge pull request 'radiology ai Analysis' (#246) from dev_aamir into master
Reviewed-on: #246
3 days ago
Sultan khan 9ff303d514 fixes and updates. 3 days ago
khansultan1 c29d5e4846 Merge pull request 'dev_sultan' (#245) from dev_sultan into master
Reviewed-on: #245
3 days ago
tahaalam aa22ad1e07 calender request changes 3 days ago
aamir-csol 4cd5132627 radiology ai Analysis 3 days ago
Sultan khan ce0eda7448 no message 3 days ago
Sultan khan 0a24e6cfd1 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 3 days ago
khansultan1 2a850c732d Merge pull request 'dev_aamir' (#244) from dev_aamir into master
Reviewed-on: #244
3 days ago
Sultan khan fd3e434b0c no message 3 days ago
aamir-csol 7d86ca0511 Merge branch 'master' into dev_aamir 3 days ago
aamir-csol 4c56137f10 calender 3 days ago
khansultan1 2c3f671a50 Merge pull request 'profile picture fix' (#243) from changes into master
Reviewed-on: #243
3 days ago
tahaalam c19451a6b6 profile picture fix 3 days ago
khansultan1 203c025183 Merge pull request 'no message' (#242) from dev_sultan into master
Reviewed-on: #242
3 days ago
Sultan khan 9e5c9f9b4c no message 3 days ago
khansultan1 81cdb4be30 Merge pull request 'dev_sultan' (#241) from dev_sultan into master
Reviewed-on: #241
4 days ago
Sultan khan a38a2a0619 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
# Conflicts:
#	assets/langs/ar-SA.json
#	lib/generated/codegen_loader.g.dart
4 days ago
khansultan1 75bd5fbe15 Merge pull request 'updates and fixes' (#240) from changes into master
Reviewed-on: #240
4 days ago
Sultan khan 69310575e5 updates 4 days ago
tahaalam 994bf95043 updates and fixes 4 days ago
Haroon6138 9cf6a63c4e Merge pull request 'LiveCare Video Call fixes' (#239) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/239
4 days ago
haroon amjad 4f60227429 LiveCare Video Call fixes 4 days ago
Sultan khan 772f6caa38 updates 4 days ago
khansultan1 bb565c58f4 Merge pull request 'langauge regarding changes' (#237) from changes into master
Reviewed-on: #237
4 days ago
tahaalam befcee7c65 Merge remote-tracking branch 'origin/master' into changes
# Conflicts:
#	assets/langs/ar-SA.json
4 days ago
Sultan khan a2c2b24b2a Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New:
  health calculator design & timer & bell icon switch changes
  health calculator design & timer & bell icon switch changes
  appointment reminder & weather
  codegen
4 days ago
Sultan khan 76c3013840 no message 4 days ago
khansultan1 bd3aeefbe8 Merge pull request 'health calculator design & timer & bell icon switch changes' (#236) from dev_aamir into master
Reviewed-on: #236
4 days ago
Sultan khan 2f4db29a70 arabic updated. 4 days ago
aamir-csol f0b8db0318 Merge branch 'master' into dev_aamir
# Conflicts:
#	lib/features/medical_file/medical_file_view_model.dart
#	lib/presentation/appointments/appointment_details_page.dart
4 days ago
aamir-csol f199fca859 health calculator design & timer & bell icon switch changes 4 days ago
aamir-csol 461fa11df3 health calculator design & timer & bell icon switch changes 4 days ago
Sultan khan ac6e96ad6c no message 4 days ago
tahaalam 04d14a4d82 langauge regarding changes 4 days ago
khansultan1 6104f38535 Merge pull request 'dev_sultan' (#235) from dev_sultan into master
Reviewed-on: #235
4 days ago
Sultan khan 16e898bb6c updates and fixes 4 days ago
aamir-csol 90bcdf674d Merge branch 'refs/heads/master' into dev_aamir
# Conflicts:
#	android/app/src/main/AndroidManifest.xml
4 days ago
Sultan khan 620d89fcd1 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 5 days ago
khansultan1 bc97bded62 Merge pull request 'hot fixes' (#234) from changes into master
Reviewed-on: #234
5 days ago
tahaalam 303fb87661 Merge remote-tracking branch 'origin/master' into changes 5 days ago
khansultan1 ef021c1fa0 Merge pull request 'dev_sultan' (#233) from dev_sultan into master
Reviewed-on: #233
5 days ago
tahaalam fcf990bc00 hot fixes 5 days ago
Sultan khan cfea843c4f updates and fixes 5 days ago
aamir-csol 2b0f8b45b0 appointment reminder & weather 5 days ago
faizatflutter 8c3121fd38 Merge branch 'master' into faiz_dev
# Conflicts:
#	ios/Podfile.lock
5 days ago
Sultan khan a144f30f42 no message 5 days ago
tahaalam d97ead4e03 Merge remote-tracking branch 'origin/master' into changes
# Conflicts:
#	lib/core/app_assets.dart
5 days ago
tahaalam fb93aa1092 ambulance call page changes:
1. icon change for the success of ambulance call and rrt.
2. flow changed to first select the appoiintment then hospital.
3. location accorate enabled.
5 days ago
tahaalam 12b611500d application to get the fine location permission added to the manifest to get the accurate location 5 days ago
tahaalam ebfefefec0 issue fix for the projects having distance not found if the permission for the application 5 days ago
aamir-csol 7bf69c52f0 Merge branch 'master' into dev_aamir
# Conflicts:
#	lib/generated/codegen_loader.g.dart
5 days ago
aamir-csol 2c7c71c566 codegen 5 days ago
Haroon6138 730a4f0040 Merge pull request 'haroon_dev' (#231) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/231
6 days ago
haroon amjad be8cf08005 Merge branch 'master' into haroon_dev 6 days ago
haroon amjad 509eeb69ac fixes 6 days ago
Haroon6138 b10142061e Merge pull request 'fixes and updates' (#230) from dev_sultan into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/230
6 days ago
haroon amjad be08c3f228 updates 6 days ago
Sultan khan bd5ef5e84a no message 6 days ago
Sultan khan beab4c1d08 no message 6 days ago
Sultan khan 8e8177e573 fixes and updates 6 days ago
Haroon6138 b7986b753b Merge pull request 'dev_sultan' (#229) from dev_sultan into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/229
6 days ago
Sultan khan 3d226c39d0 fixes and updates 6 days ago
Sultan khan 207b84e493 fixes and updates 7 days ago
Sultan khan 7e2c470767 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New:
  Updates & fixes
7 days ago
Sultan khan 5f82f0db2d fixes and updates 7 days ago
Haroon6138 46f9d38dcc Merge pull request 'haroon_dev' (#228) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/228
7 days ago
haroon amjad 76ebdf6062 Merge branch 'master' into haroon_dev 7 days ago
haroon amjad 86fa198afc Updates & fixes 7 days ago
Sultan khan c7875aca35 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New:
  updates
  Updates
  family file
1 week ago
Haroon6138 50c49ffb01 Merge pull request 'haroon_dev' (#227) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/227
1 week ago
haroon amjad 408c0c83d9 updates 1 week ago
haroon amjad a55bfb3b51 Merge branch 'master' into haroon_dev 1 week ago
Haroon6138 17c6d11df2 Merge pull request 'family file view' (#225) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/225
1 week ago
aamir-csol b4ab3a112c Merge branch 'master' into dev_aamir
# Conflicts:
#	lib/presentation/my_family/widget/family_cards.dart
1 week ago
haroon amjad b82f4cbcb4 Merge branch 'master' into haroon_dev 1 week ago
haroon amjad e60d2566d9 Updates 1 week ago
Sultan khan a1e90ac0b6 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 1 week ago
Haroon6138 3777ab8898 Merge pull request 'dev_sultan' (#224) from dev_sultan into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/224
1 week ago
aamir-csol 13ce350434 family file 1 week ago
Sultan khan 1aacda08a3 no message 1 week ago
Sultan khan 5989dda613 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New:
  QLine API changes handled
1 week ago
Sultan khan 21c7b05df9 no message 1 week ago
Sultan khan fcdc96d944 no message 1 week ago
Haroon6138 c5b91a0bb5 Merge pull request 'QLine API changes handled' (#223) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/223
1 week ago
haroon amjad 0566685e48 QLine API changes handled 1 week ago
Sultan khan 21ae30a8cc profile picture upload 1 week ago
Sultan khan 5f559a44dd profile image upload 1 week ago
Haroon6138 f836b5d67a Merge pull request 'haroon_dev' (#222) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/222
1 week ago
haroon amjad 6a687f4ff6 Updates & fixes 1 week ago
haroon amjad f472bd49f4 Updates 1 week ago
haroon amjad a0d9c35d0a Merge branch 'master' into haroon_dev 1 week ago
Haroon6138 9703e23a32 Merge pull request 'switch user' (#221) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/221
1 week ago
haroon amjad 5b44329972 updates 1 week ago
aamir-csol 39cbee029a radiology ai lab analysis & lab ai analysis api end points updates. 1 week ago
aamir-csol 74479850f5 radiology ai lab analysis & lab ai analysis api end points updates. 1 week ago
aamir-csol 7a0caa05c3 Merge branch 'master' into dev_aamir 1 week ago
aamir-csol d1e0ec31e6 radiology ai lab analysis & lab ai analysis api end points updates. 1 week ago
haroon amjad ad0cbe1e21 updates 1 week ago
haroon amjad b33a559305 Dental workflow implemented 1 week ago
haroon amjad d899d21fa3 Merge branch 'master' into haroon_dev 1 week ago
haroon amjad f8df84177d update 1 week ago
Haroon6138 8af7be05bf Merge pull request 'my invoice updated' (#220) from dev_sultan into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/220
1 week ago
haroon amjad bb274e80c1 updates 1 week ago
Sultan khan 3d1c415e2c my invoice updated 1 week ago
haroon amjad fbb758e227 Merge branch 'master' into haroon_dev 1 week ago
Haroon6138 76006dcb73 Merge pull request 'dev_sultan' (#219) from dev_sultan into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/219
1 week ago
Sultan khan 6d647d75be Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New:
  Updates
  radiology ai lab analysis & lab ai analysis api end points updates.
  Updates
  updates
  updates

# Conflicts:
#	lib/presentation/symptoms_checker/widgets/selected_organs_section.dart
1 week ago
haroon amjad 5a402b45b7 color update 1 week ago
Sultan khan a5f7bd80b2 updates 1 week ago
Haroon6138 5c9221da66 Merge pull request 'haroon_dev' (#218) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/218
1 week ago
haroon amjad 75473e26bd Merge branch 'master' into haroon_dev 1 week ago
haroon amjad 708cbb138d Updates
# Conflicts:
#	lib/presentation/radiology/radiology_result_page.dart
1 week ago
Haroon6138 1acd088581 Merge pull request 'haroon_dev' (#216) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/216
1 week ago
Haroon6138 126423d6a1 Merge branch 'master' into haroon_dev 1 week ago
Haroon6138 909bbab48b Merge pull request 'lang id to lab ai analysis & radiology ai analysis' (#217) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/217
1 week ago
aamir-csol 5900657b52 Merge branch 'master' into dev_aamir 1 week ago
aamir-csol 2d7aa5d80d radiology ai lab analysis & lab ai analysis api end points updates. 1 week ago
Sultan khan acff5d220c Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New:
  radiology ai lab analysis & lab ai analysis api end points updates.
1 week ago
haroon amjad a2de3f1b14 Merge branch 'master' into haroon_dev
# Conflicts:
#	lib/presentation/symptoms_checker/widgets/selected_organs_section.dart
1 week ago
Haroon6138 65b7b9e2ec Merge pull request 'radiology ai lab analysis & lab ai analysis api end points updates.' (#215) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/215
1 week ago
Sultan khan cc9ac07923 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New:
  family switch parent child and child 2 ,
1 week ago
Sultan khan 712e835176 ui fixes 1 week ago
haroon amjad fe1e0fdb40 Updates 1 week ago
aamir-csol 10fa8c46cf radiology ai lab analysis & lab ai analysis api end points updates. 1 week ago
haroon amjad 572c37785b updates 1 week ago
haroon amjad 6939630ce0 Merge branch 'master' into haroon_dev 1 week ago
Haroon6138 a5c661b35f Merge pull request 'family switch parent child and child and child ...' (#214) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/214
1 week ago
haroon amjad 5318437941 updates 1 week ago
Sultan khan 18331f077e Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New: (41 commits)
  pull down to refresh in appointment queue implemented
  Pull to refresh implemented
  Updates & fixes
  updates
  Updates
  Updates
  WD:map issues resolved: 1. map type added to the screen along with the translation 2. null shown for the arabic name of the fixed to show the actual name. 3. if the user opens the locationBottomsheet and close it without input of the area the screen freezes with no action on the location. 4. Gms And Hms Maps handled. 5. theme handled inside the maps screen.
  Updates
  Font changes, Updates & fixes
  map type is added to the maps already present
  family switch parent child and child 2
  translation service changes
  Updates
  updates
  print statement removed
  graph reference low nd high value address. * if the referenncehigh is 0 then it will be neglected * if the referencelow is 0 then it will be neglected.
  family switch parent child and child 2
  updates
  remote localization files added
  Updates
  ...

# Conflicts:
#	android/app/build.gradle.kts
#	lib/presentation/rate_appointment/rate_appointment_doctor.dart
1 week ago
Sultan khan 287dcf3482 updates 1 week ago
aamir-csol 7fcee6a988 family switch parent child and child 2 , 1 week ago
Haroon6138 6e2d87d172 Merge pull request 'haroon_dev' (#213) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/213
1 week ago
haroon amjad 185f505ed9 pull down to refresh in appointment queue implemented 1 week ago
haroon amjad 991f9c7a9b Pull to refresh implemented 1 week ago
haroon amjad 71030c0fe9 Updates & fixes 1 week ago
Haroon6138 7abee6bb5e Merge pull request 'haroon_dev' (#212) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/212
1 week ago
haroon amjad 13a4c9e0f8 updates 1 week ago
haroon amjad e3f5bb69ac Updates 1 week ago
haroon amjad 081dfce480 Merge branch 'master' into haroon_dev
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/extensions/string_extensions.dart
#	lib/generated/locale_keys.g.dart
#	lib/presentation/emergency_services/call_ambulance/call_ambulance_page.dart
#	lib/presentation/emergency_services/widgets/location_input_bottom_sheet.dart
#	lib/widgets/input_widget.dart
1 week ago
Haroon6138 59fc109454 Merge pull request 'Callambulance page text and map changes' (#211) from maptype into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/211
1 week ago
haroon amjad a9f46a39cc Updates 1 week ago
haroon amjad 92101d2b05 Merge branch 'master' into haroon_dev
# Conflicts:
#	lib/presentation/my_family/widget/family_cards.dart
1 week ago
Sultan khan b3fa4c9bdf Merge remote-tracking branch 'origin/master' into maptype 1 week ago
Sultan khan 0d4563542a WD:map issues resolved:
1. map type added to the screen along with the translation
2. null shown for the arabic name of the fixed to show the actual name.
3. if the user opens the locationBottomsheet and close it without input of the area the screen freezes with no action on the location.
4. Gms And Hms Maps handled.
5. theme handled inside the maps screen.
1 week ago
Haroon6138 bd85c9368d Merge pull request 'family file changes to multi level switch' (#210) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/210
1 week ago
haroon amjad 89a1da4407 Updates 1 week ago
faizatflutter d8ab3c047f fixed arabic api issue 1 week ago
haroon amjad 56f5151c0c Font changes, Updates & fixes 1 week ago
tahaalam c716490b0e map type is added to the maps already present 1 week ago
aamir-csol 351026e42c Merge branch 'master' into dev_aamir 1 week ago
aamir-csol be6d33e51b family switch parent child and child 2 1 week ago
haroon amjad fed6cf6784 translation service changes 2 weeks ago
haroon amjad 453cfc07e1 Updates 2 weeks ago
haroon amjad 9c51f53a4d Merge branch 'master' into haroon_dev 2 weeks ago
haroon amjad 1fa03fff5e updates 2 weeks ago
Haroon6138 973fdc3692 Merge pull request 'graph value changed' (#209) from lab-graph into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/209
2 weeks ago
tahaalam 07bf971575 print statement removed 2 weeks ago
tahaalam 2ae9ab9fac graph reference low nd high value address.
* if the referenncehigh is 0 then it will be neglected
* if the referencelow is 0 then it will be neglected.
2 weeks ago
aamir-csol e9ec23f506 family switch parent child and child 2 2 weeks ago
haroon amjad 21477f34dc updates 2 weeks ago
haroon amjad 0eb9ec11d3 remote localization files added 2 weeks ago
haroon amjad f929bd9017 Updates 2 weeks ago
haroon amjad 400e5daac0 Dr Search fixed 2 weeks ago
aamir-csol aa17688de6 Merge branch 'master' into dev_aamir 2 weeks ago
Haroon6138 6def7b5263 Merge pull request 'haroon_dev' (#208) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/208
2 weeks ago
haroon amjad 3d39190c62 updates & fixes 2 weeks ago
haroon amjad 04cbb3db40 no message 2 weeks ago
haroon amjad 830086a5b9 Merge branch 'master' into haroon_dev 2 weeks ago
Haroon6138 0c6ff3efe8 Merge pull request 'ambulance pick and drop selection changed' (#207) from ambulance_selection_change into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/207
2 weeks ago
haroon amjad a8620c1f72 updates 2 weeks ago
haroon amjad 75531c2254 Merge branch 'master' into haroon_dev 2 weeks ago
haroon amjad 4959392f74 Updates 2 weeks ago
tahaalam 7135800552 should flip value changed 2 weeks ago
tahaalam a2fa661db4 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/generated/locale_keys.g.dart
2 weeks ago
tahaalam bdeec6a412 hardcoded id removed that was added for uat 2 weeks ago
tahaalam 8a11cc03cb pickup direction bottom sheet added and previous radio bottom sheet removed 2 weeks ago
aamir-csol 5be4f66718 doctor ratings. 2 weeks ago
haroon amjad f7446d0d41 updates 2 weeks ago
aamir-csol 2a8f67bba1 family file switch back multi 2 weeks ago
Haroon6138 8112f9bb0a Merge pull request 'haroon_dev' (#206) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/206
2 weeks ago
haroon amjad 3703afe8bd updates 2 weeks ago
haroon amjad edeae70aa0 Updates 2 weeks ago
haroon amjad 1f290c5bfe updates 2 weeks ago
haroon amjad deca29b423 updates & fixes 2 weeks ago
haroon amjad 93af246700 updates 2 weeks ago
haroon amjad c18bf9f2c1 Layout fix for appointment details page 2 weeks ago
haroon amjad f9f2e22376 updates 2 weeks ago
haroon amjad ac8189fa17 Updates 2 weeks ago
haroon amjad 7e73741d08 Bookmark icons added 2 weeks ago
haroon amjad bd65d05e9e Merge branch 'master' into haroon_dev 2 weeks ago
Haroon6138 9612b0019c Merge pull request 'dev_sultan' (#205) from dev_sultan into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/205
2 weeks ago
haroon amjad a13d0cf0e4 updates 2 weeks ago
Sultan khan c970a3f697 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New:
  updates
  family file switch back issue fixed
  Vital sign updates
  updates
  Updates
  Added location option in region selection bottom sheet
  Updates
  Profile settings update
2 weeks ago
Sultan khan 6178062ed0 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New: (33 commits)
  reminder start time added to the prescription
  Invoices Filter
  Updates
  updates
  Revert "graph values fix and comparision with the pdf"
  graph values fix and comparision with the pdf
  graph values fix and comparision with the pdf
  Updates
  Updates
  updates
  Updates
  Updates
  Updates
  Updates
  Habib Wallet updates
  Changes for AI Lab analysis
  App update page updates
  updates
  Updates
  warning dialog displayed to user if the watch intented is not currently implemented
  ...

# Conflicts:
#	lib/features/authentication/authentication_view_model.dart
2 weeks ago
Haroon6138 ecdef5f057 Merge pull request 'haroon_dev' (#204) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/204
2 weeks ago
haroon amjad 6108a629a2 Merge branch 'master' into haroon_dev 2 weeks ago
haroon amjad 837a934d0d updates 2 weeks ago
Haroon6138 c324007e61 Merge pull request 'family file switch back issue fixed' (#203) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/203
2 weeks ago
aamir-csol 38471a773c family file switch back issue fixed 2 weeks ago
Sultan khan d3dfb2e2a5 doctor favorite in progress. 2 weeks ago
haroon amjad fbb2570d8e Vital sign updates 2 weeks ago
haroon amjad db89408185 Merge branch 'master' into haroon_dev
# Conflicts:
#	lib/generated/locale_keys.g.dart
2 weeks ago
Haroon6138 833ccc9ff1 Merge pull request 'watch_integration' (#202) from watch_integration into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/202
2 weeks ago
haroon amjad 78a6d55b35 Merge branch 'master' into watch_integration
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/generated/locale_keys.g.dart
2 weeks ago
haroon amjad 841fca027c updates 2 weeks ago
haroon amjad 078b236b67 Merge branch 'master' into haroon_dev
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/generated/locale_keys.g.dart
2 weeks ago
Haroon6138 ddb97423c7 Merge pull request 'reminder' (#201) from reminer into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/201
2 weeks ago
haroon amjad e29aba81da Updates 2 weeks ago
tahaalam a8138ba231 Merge remote-tracking branch 'origin/master' into reminer 2 weeks ago
tahaalam 8b829b9101 reminder start time added to the prescription 2 weeks ago
haroon amjad a45980162d Added location option in region selection bottom sheet 2 weeks ago
haroon amjad 444e7b562f Merge branch 'master' into haroon_dev 2 weeks ago
Haroon6138 88da9af44b Merge pull request 'Invoices Filter' (#200) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/200
2 weeks ago
Haroon6138 7a4e28bbea Merge pull request 'graph values fix and comparision with the pdf' (#198) from labs_graph_pdf into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/198
2 weeks ago
haroon amjad 7611c1d58c Updates 2 weeks ago
aamir-csol f1555c76a3 Invoices Filter 2 weeks ago
haroon amjad dfc666673d Profile settings update 3 weeks ago
tahaalam 2babda2d63 Merge remote-tracking branch 'origin/master' into labs_graph_pdf 3 weeks ago
Haroon6138 f56c41c82f Merge pull request 'haroon_dev' (#199) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/199
3 weeks ago
haroon amjad bf7ee71801 Merge branch 'master' into haroon_dev 3 weeks ago
haroon amjad 6a4793f122 Updates 3 weeks ago
haroon amjad d4ed2b47bc updates 3 weeks ago
tahaalam 4dce062daf Revert "graph values fix and comparision with the pdf"
This reverts commit fc21746683.
3 weeks ago
tahaalam 1d1c756412 graph values fix and comparision with the pdf 3 weeks ago
tahaalam fc21746683 graph values fix and comparision with the pdf 3 weeks ago
haroon amjad 1709b80e84 Updates 3 weeks ago
haroon amjad 4a3d66f01a Updates 3 weeks ago
haroon amjad 0ed6103b15 updates 3 weeks ago
haroon amjad d053f58b7d Updates 3 weeks ago
haroon amjad d703c382e5 Updates 3 weeks ago
haroon amjad 3d877ed28d Updates 3 weeks ago
Haroon Amjad 55b8bc162c Updates 4 weeks ago
haroon amjad 08928ddd28 Habib Wallet updates 1 month ago
tahaalam f84d5c6769 Merge remote-tracking branch 'origin/master' into watch_integration
# Conflicts:
#	lib/splashPage.dart
1 month ago
Haroon Amjad 657f886391 Changes for AI Lab analysis 1 month ago
Haroon Amjad 30bdfac442 App update page updates 1 month ago
Haroon Amjad d194b5a45b updates 1 month ago
haroon amjad 1a68ffd500 Updates 1 month ago
tahaalam 50d78551c2 warning dialog displayed to user if the watch intented is not currently implemented 1 month ago
haroon amjad abbf016694 Merge branch 'master' into haroon_dev 1 month ago
haroon amjad 2c0d010bac updates 1 month ago
Haroon6138 24fa8e18f3 Merge pull request 'dev_sultan' (#197) from dev_sultan into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/197
1 month ago
tahaalam dda4dbeba9 merge issue resolution some import were missing from master. 1 month ago
Sultan khan f51e37db55 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New:
  updates
  updates
  lab test description update

# Conflicts:
#	lib/core/api/api_client.dart
#	lib/presentation/authentication/login.dart
1 month ago
Sultan khan 4f303d8496 other country login done. 1 month ago
tahaalam 151fcf23d1 Merge remote-tracking branch 'origin/master' into watch_integration
# Conflicts:
#	android/app/build.gradle.kts
#	android/app/src/main/res/mipmap-hdpi/ic_launcher.png
#	android/app/src/main/res/mipmap-mdpi/ic_launcher.png
#	android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
#	android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
#	android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
#	android/app/src/main2/res/mipmap-hdpi/ic_launcher.png
#	android/app/src/main2/res/mipmap-mdpi/ic_launcher.png
#	android/app/src/main2/res/mipmap-xhdpi/ic_launcher.png
#	android/app/src/main2/res/mipmap-xxhdpi/ic_launcher.png
#	android/app/src/main2/res/mipmap-xxxhdpi/ic_launcher.png
#	android/build/reports/problems/problems-report.html
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/generated/locale_keys.g.dart
#	lib/theme/colors.dart
#	package/device_calendar_plus/example/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
#	package/device_calendar_plus/example/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
#	package/device_calendar_plus/example/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
#	package/device_calendar_plus/example/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
#	package/device_calendar_plus/example/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
#	pubspec.yaml
1 month ago
Haroon6138 ff75531f26 Merge pull request 'haroon_dev' (#196) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/196
1 month ago
haroon amjad 114e9e7929 Merge branch 'master' into haroon_dev 1 month ago
haroon amjad 47b50e35a1 updates 1 month ago
Sultan khan 80adf1bd2f Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New:
  updates & fixes
  updates
  updates
  Dark mode persistence added in the app
  Dark mode enabled
  Updates & fixes
  updates
  updates
  updates
1 month ago
haroon amjad 29447cc9fa updates 1 month ago
haroon amjad 5b04a5a3ea lab test description update 1 month ago
Haroon6138 cdbba6f270 Merge pull request 'haroon_dev' (#195) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/195
1 month ago
haroon amjad 6e71aa7f13 updates & fixes 1 month ago
haroon amjad fdeeed10d6 updates 1 month ago
Haroon Amjad 8de8039096 updates 1 month ago
Haroon Amjad 040ff6a80d Dark mode persistence added in the app 1 month ago
haroon amjad f46b3f745f Dark mode enabled 1 month ago
Sultan khan acfab432cc multiple submit button commented 1 month ago
haroon amjad 074c060e36 Updates & fixes 1 month ago
haroon amjad b4a7508f7c updates 2 months ago
Sultan khan d6eb6970af Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New: (29 commits)
  calender package added
  Android zoom fixes
  updates
  updates
  wallet page fix
  updates
  fixed Ar and En files
  Insurance approvals page fixes
  fixed Ar En files
  Added immediate patient insurance update API
  updates
  sickleave & medical report fixes
  test description issue in lab results fixed
  Updates & fixes, Filter issues fixed for lab & rad
  Ancillary order fixes
  NPHIES Eligibility checks implemented
  updates
  Android package name updated to new package details
  Updates & fixes
  App update page implemented
  ...
2 months ago
haroon amjad 961a1f5b03 updates 2 months ago
haroon amjad 68ff91561f Merge branch 'master' into haroon_dev 2 months ago
haroon amjad 631fabad23 updates 2 months ago
Haroon6138 7b2e3a5a54 Merge pull request 'calender package added' (#194) from calender_pacakge_changes into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/194
2 months ago
tahaalam 71ac91a076 calender package added 2 months ago
Haroon6138 558381b797 Merge pull request 'haroon_dev' (#192) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/192
2 months ago
haroon amjad f5aa12a04b Android zoom fixes 2 months ago
haroon amjad b75f0c7ee4 updates 2 months ago
haroon amjad 79b23584db updates 2 months ago
haroon amjad 295709cbc2 Merge branch 'master' into haroon_dev 2 months ago
haroon amjad 1286455f8c wallet page fix 2 months ago
Haroon6138 8878558f12 Merge pull request 'fatima' (#191) from fatima into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/191
2 months ago
haroon amjad 5e16169867 updates 2 months ago
Fatimah.Alshammari ee358259f5 Merge branch 'refs/heads/master' into fatima
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
2 months ago
Fatimah.Alshammari 8368dbd4d9 fixed Ar and En files 2 months ago
Haroon6138 faf00b88ef Merge pull request 'haroon_dev' (#190) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/190
2 months ago
haroon amjad cf27430e29 Merge branch 'master' into haroon_dev 2 months ago
haroon amjad dffed5df6b Insurance approvals page fixes 2 months ago
Fatimah.Alshammari cf3c14281c fixed Ar En files 2 months ago
Haroon Amjad d9013a1dc2 Added immediate patient insurance update API 2 months ago
haroon amjad a25df34f42 updates 2 months ago
haroon amjad 6cc058e86d updates 2 months ago
tahaalam fbe9cd9dff package change activity 2 months ago
haroon amjad 84224ae61b sickleave & medical report fixes 2 months ago
tahaalam 7100283a9d package change activity 2 months ago
tahaalam 3f9046f1e4 Merge remote-tracking branch 'origin/master' into watch_integration
# Conflicts:
#	android/app/src/main/AndroidManifest.xml
#	android/app/src/main/kotlin/com/ejada/hmg/MainActivity.kt
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	ios/Runner.xcodeproj/project.pbxproj
#	lib/core/api_consts.dart
#	lib/generated/locale_keys.g.dart
2 months ago
tahaalam b334f631bd samsung sdk health aar 2 months ago
tahaalam a395d9b93a ios health connect added 2 months ago
Haroon Amjad c2028841c5 test description issue in lab results fixed 2 months ago
tahaalam bfeb3dce4e data integration along with the data representation 2 months ago
haroon amjad dc0e4e5eb6 Updates & fixes, Filter issues fixed for lab & rad 2 months ago
Fatimah.Alshammari 46c8fbf0f6 Merge branch 'refs/heads/master' into fatima
# Conflicts:
#	assets/langs/ar-SA.json
#	lib/generated/locale_keys.g.dart
2 months ago
Haroon6138 658b77aa37 Merge pull request 'haroon_dev' (#188) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/188
2 months ago
haroon amjad 2a819a2d97 Ancillary order fixes 2 months ago
haroon amjad 9413e54d3a NPHIES Eligibility checks implemented 2 months ago
Sultan khan b91850d388 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New: (67 commits)
  added women support in symptoms checker module.
  family fil fixes
  PMA-1100
  updates
  updates
  Updates & fixes
  updates
  Ai Analysis & PMA-(1078,1079)
  update
  updates
  arabic fixes
  arabic fixes
  Vital sign data connected to Symptom checker
  Date format changed to en-US
  confirm button added
  iOS BundleID changes
  Services price list implemented
  Indoor navigation implemented
  updates & fixes
  JIRA bug fixes & updates
  ...

# Conflicts:
#	lib/presentation/authentication/register_step2.dart
#	lib/presentation/vital_sign/vital_sign_page.dart
2 months ago
Haroon Amjad 105ab2326a updates 2 months ago
haroon amjad ec506869cc Android package name updated to new package details 2 months ago
haroon amjad 05b6d02e4c Updates & fixes 2 months ago
tahaalam 5ea70397e2 samsung integration addded 2 months ago
Sultan khan c416d84a3a register insurance in progress. 2 months ago
haroon amjad 8309f311e6 App update page implemented 2 months ago
haroon amjad c6ee3c453f contact us bottom sheet icons changed 2 months ago
haroon amjad 4b710523e8 Feedback status implemented 2 months ago
haroon amjad e1788f1187 Merge branch 'master' into haroon_dev 2 months ago
Haroon6138 aab1f6411b Merge pull request 'Female support in symptoms checker module and few bug fixes (faiz_dev)' (#187) from faiz_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/187
2 months ago
faizatflutter afae41c410 Merge branch 'master' into faiz_dev 2 months ago
faizatflutter b44ae1e838 added women support in symptoms checker module. 2 months ago
haroon amjad 2be65cba51 Inactive Insurance case handled 2 months ago
haroon amjad 530b87282f updates & fixes 2 months ago
haroon amjad 2e1f4e87e0 AI Lab Analysis updates 2 months ago
haroon amjad 87e0c5b6eb Merge branch 'master' into haroon_dev 2 months ago
Haroon6138 2fb787c31f Merge pull request 'dev_aamir' (#186) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/186
2 months ago
haroon amjad 1575a8e308 Feedback status implementation contd. 2 months ago
aamir-csol 23e2809fdb Merge branch 'master' into dev_aamir 2 months ago
aamir-csol 7296bfb6fc family fil fixes 2 months ago
tahaalam df0b926e59 heart rate sleep data and steps count obtained 2 months ago
haroon amjad 0da4b63d74 Merge branch 'master' into haroon_dev 2 months ago
Haroon6138 2162b8102a Merge pull request 'PMA-1100' (#185) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/185
2 months ago
haroon amjad 305b3274c0 Symptoms checker doctor selection implemented 2 months ago
haroon amjad 5015747580 LiveCare changes 2 months ago
aamir-csol c48cb78cd9 PMA-1100 2 months ago
tahaalam 4912f686f9 platform channel added. 2 months ago
Haroon6138 d76bd2a295 Merge pull request 'haroon_dev' (#184) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/184
2 months ago
Haroon Amjad cb44e902a3 Merge branch 'haroon_dev' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into haroon_dev 2 months ago
Haroon Amjad 9b3c172dd1 updates 2 months ago
haroon amjad 20ed54243b updates 2 months ago
haroon amjad 01c21377aa Updates & fixes 2 months ago
tahaalam 183bcce003 merge issue resolution 2 months ago
tahaalam 02398d3bb4 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	ios/Runner.xcodeproj/project.pbxproj
#	lib/generated/locale_keys.g.dart
#	lib/theme/colors.dart
2 months ago
tahaalam d137e1166d watch integration ui added. 2 months ago
Haroon6138 e62df81ba2 Merge pull request 'dev_aamir' (#182) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/182
2 months ago
aamir-csol a105d87241 Merge branch 'master' into dev_aamir
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/features/authentication/authentication_view_model.dart
#	lib/generated/locale_keys.g.dart
2 months ago
Haroon6138 48718a3406 Merge pull request 'haroon_dev' (#181) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/181
2 months ago
haroon amjad 68f5e64557 updates 2 months ago
aamir-csol 2c7f4ddc48 Ai Analysis & PMA-(1078,1079) 2 months ago
haroon amjad 95b65ed8a5 Merge branch 'haroon_dev' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into haroon_dev
# Conflicts:
#	lib/features/book_appointments/book_appointments_view_model.dart
2 months ago
haroon amjad 102690b2b8 update 2 months ago
haroon amjad c9279e2272 updates 2 months ago
Haroon Amjad 23abbebf9e arabic fixes 2 months ago
Haroon Amjad a4573c8710 arabic fixes 2 months ago
Haroon Amjad 4ce1e912ce Vital sign data connected to Symptom checker 2 months ago
Haroon Amjad eeaa22357f Date format changed to en-US 2 months ago
haroon amjad 000c403f6b confirm button added 2 months ago
Fatimah.Alshammari 47ec43850d Merge branch 'master' into fatima 2 months ago
haroon amjad f09d478a03 iOS BundleID changes 2 months ago
haroon amjad 3c9c3032a5 Services price list implemented 2 months ago
haroon amjad 2ab3e178a2 Indoor navigation implemented 2 months ago
haroon amjad 9ed016ad8b updates & fixes 2 months ago
Haroon6138 a6344d6a81 Merge pull request 'haroon_dev' (#180) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/180
2 months ago
haroon amjad 92e745fe49 Merge branch 'master' into haroon_dev 2 months ago
haroon amjad 3af43dc676 JIRA bug fixes & updates 2 months ago
Fatimah.Alshammari 0d6d23dbbc Merge branch 'master' into fatima 2 months ago
haroon amjad 66ff6ed8b6 Prescription download changes 2 months ago
Haroon6138 478be330df Merge pull request 'haroon_dev' (#179) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/179
2 months ago
haroon amjad 85ccf41d04 Updates & fixes for Habib Wallet, Insurance update, Immediate LiveCare 2 months ago
haroon amjad b309342cdc lab fixes 2 months ago
Haroon6138 ee3dd0b5c7 Merge pull request 'haroon_dev' (#178) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/178
2 months ago
haroon amjad 5c684a6a0d Doctor Rating details implemented 2 months ago
Fatimah.Alshammari f340f4fb8f Merge branch 'master' into fatima
# Conflicts:
#	assets/langs/ar-SA.json
#	lib/generated/locale_keys.g.dart
3 months ago
haroon amjad bafe835ebd Scheduled livecare appointment booking fixes 3 months ago
haroon amjad 8472a45530 updates 3 months ago
Haroon6138 31a7aa907b Merge pull request 'haroon_dev' (#177) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/177
3 months ago
haroon amjad 70a6d90ce3 updates & fixes 3 months ago
haroon amjad 8740178f8c Merge branch 'master' into haroon_dev 3 months ago
haroon amjad cfd0c16738 updates & fixes 3 months ago
Haroon6138 df3b36eb00 Merge pull request 'dev_aamir' (#176) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/176
3 months ago
aamir-csol 7014ac397e Merge remote-tracking branch 'origin/master' into dev_aamir
# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/generated/locale_keys.g.dart
3 months ago
Haroon6138 63cdced84e Merge pull request 'haroon_dev' (#175) from haroon_dev into master
Reviewed-on: #175
3 months ago
Haroon Amjad 49542a9112 updates & fixes 3 months ago
Haroon Amjad 1ae1212733 Merge branch 'master' into haroon_dev 3 months ago
Haroon6138 7f8b2979e7 Merge pull request 'dev_sikander' (#174) from dev_sikander into master
Reviewed-on: #174
3 months ago
Haroon Amjad 537d93915e Zoom SDK fixes 3 months ago
Sikander Saleem f376f430c6 Merge branch 'refs/heads/master' into dev_sikander 3 months ago
Sikander Saleem b9350afead ui improvements 3 months ago
aamir-csol 2c2cb8bb99 family file button fix 3 months ago
aamir-csol 8c7f4afe76 family file button fix 3 months ago
Haroon6138 c50f8d63ef Merge pull request 'haroon_dev' (#171) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/171
3 months ago
Haroon6138 118da8da36 Merge pull request 'Wd: Unware clinic bottom sheet shown on appointment page.' (#170) from unware-clinic-bottomsheet into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/170
3 months ago
haroon amjad 4e6d3d3178 SmartWatch implementation contd. 3 months ago
faizatflutter 9c7cfde5f4 ui improvements 3 months ago
tahaalam f78eb5da67 Wd: Unware clinic bottom sheet shown on appointment page. 3 months ago
Sikander Saleem 6e1eb0d0bb ui improvements 3 months ago
Sikander Saleem 41a4005d41 Merge branch 'refs/heads/master' into dev_sikander 3 months ago
haroon amjad 940ce5ff14 updates 3 months ago
haroon amjad 05e87bbb2e Merge branch 'master' into haroon_dev 3 months ago
haroon amjad ae3ed83dd0 contact us page changes 3 months ago
Haroon6138 245b66150f Merge pull request 'dev_aamir' (#169) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/169
3 months ago
aamir-csol 0c2fe81c99 Merge branch 'master' into dev_aamir 3 months ago
aamir-csol bb4719bd87 logout & family file fix & PMA-1047 3 months ago
Fatimah.Alshammari 931e3fa968 Merge branch 'refs/heads/master' into fatima
# Conflicts:
#	assets/langs/ar-SA.json
#	lib/generated/locale_keys.g.dart
3 months ago
Sikander Saleem 6e4d7519fb Merge branch 'refs/heads/master' into dev_sikander
# Conflicts:
#	lib/presentation/home/widgets/habib_wallet_card.dart
3 months ago
Sikander Saleem 2648f304f6 Merge branch 'refs/heads/master' into dev_sikander
# Conflicts:
#	lib/core/app_assets.dart
#	lib/presentation/hmg_services/services_page.dart
#	lib/presentation/home/data/landing_page_data.dart
#	lib/presentation/home/landing_page.dart
#	lib/presentation/home/widgets/habib_wallet_card.dart
#	lib/presentation/home/widgets/small_service_card.dart
#	lib/presentation/lab/lab_orders_page.dart
#	lib/widgets/appbar/collapsing_list_view.dart
3 months ago
Haroon6138 cd4fbb1905 Merge pull request 'updates & fixes' (#168) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/168
3 months ago
haroon amjad b0708d85d9 updates & fixes 3 months ago
Haroon6138 37909feb50 Merge pull request 'haroon_dev' (#167) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/167
3 months ago
haroon amjad 20216cd4ae Merge branch 'master' into haroon_dev 3 months ago
Haroon6138 22c388da23 Merge pull request 'dev_aamir' (#166) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/166
3 months ago
aamir-csol 2bbfe1f131 Merge branch 'master' into dev_aamir
# Conflicts:
#	lib/presentation/profile_settings/profile_settings.dart
3 months ago
aamir-csol 8b701255ed logout & family file fix 3 months ago
haroon amjad 7ead6d79e5 updates 3 months ago
haroon amjad 3e9a381ed7 Merge branch 'master' into haroon_dev 3 months ago
Haroon6138 cf7ff4ce1d Merge pull request 'Added Arabic Support for symptoms checker (faiz_dev)' (#165) from faiz_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/165
3 months ago
haroon amjad e4b6360808 Services Page fix 3 months ago
haroon amjad f46f978326 Clinic icons updated 3 months ago
faizatflutter 14f3c6cb81 Added Arabic Support for symptoms checker 3 months ago
haroon amjad 10a5a6f558 Ask Doctor implemented 3 months ago
Haroon6138 e8ca8b42bf Merge pull request 'haroon_dev' (#164) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/164
3 months ago
haroon amjad 4188365e6d readme update 3 months ago
haroon amjad d2deb974b1 symptoms merge 3 months ago
haroon amjad f48eb631ab Merge branch 'master' into haroon_dev 3 months ago
Haroon6138 b6c665cbf1 Merge pull request 'Symptoms Checker Module (faiz_dev)' (#163) from faiz_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/163
3 months ago
haroon amjad f54ce71177 translation changes 3 months ago
faizatflutter 07447e148b Symptoms Checker flow is completed 3 months ago
haroon amjad 6faca94b89 updates 3 months ago
Fatimah.Alshammari d027415302 fixed errors 3 months ago
haroon amjad 99282f34e3 Added language change option in landing page 3 months ago
aamir-csol 418297b6fb Merge branch 'master' into dev_aamir
# Conflicts:
#	lib/core/api_consts.dart
3 months ago
faizatflutter 4ceca016bb Merge branch 'master' into faiz_dev
# Conflicts:
#	lib/presentation/hmg_services/services_page.dart
#	pubspec.lock
3 months ago
faizatflutter 3bdc4e246f refactor 3 months ago
haroon amjad 9ef70a250d translation updates 3 months ago
haroon amjad 5b24dadb51 Merge branch 'master' into haroon_dev 3 months ago
Sikander Saleem 40ba1bd246 ui improvements 3 months ago
haroon amjad 3fc1302eaf New Flutter App param added 3 months ago
Sikander Saleem e38892ff2d Merge branch 'refs/heads/master' into dev_sikander
# Conflicts:
#	lib/presentation/habib_wallet/habib_wallet_page.dart
#	lib/presentation/hmg_services/services_page.dart
#	lib/presentation/home/landing_page.dart
#	lib/presentation/home/widgets/habib_wallet_card.dart
#	lib/presentation/insurance/insurance_home_page.dart
#	lib/presentation/lab/lab_orders_page.dart
#	lib/presentation/medical_file/medical_file_page.dart
#	lib/presentation/profile_settings/profile_settings.dart
#	lib/presentation/radiology/radiology_orders_page.dart
#	lib/widgets/appbar/collapsing_list_view.dart
3 months ago
Haroon6138 838929591a Merge pull request 'haroon_dev' (#162) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/162
3 months ago
haroon amjad 5feacfaf27 Translation updates 3 months ago
haroon amjad 39af08ddc3 Translation updates 3 months ago
Haroon6138 f026ae1d62 Merge pull request 'haroon_dev' (#161) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/161
3 months ago
haroon amjad e5f24b9c06 updates 3 months ago
haroon amjad 00475dc100 Merge branch 'master' into haroon_dev 3 months ago
Haroon6138 23b92cef41 Merge pull request 'dev_sultan' (#160) from dev_sultan into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/160
3 months ago
haroon amjad 3ff9628cd3 Translation updates 3 months ago
aamir-csol bb72c7f7d6 Merge branch 'master' into dev_aamir
# Conflicts:
#	lib/core/api_consts.dart
#	lib/presentation/hmg_services/services_page.dart
#	pubspec.lock
3 months ago
aamir-csol 0017c0601b blood donation changes 3 months ago
Sultan khan 7d8537fae6 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 3 months ago
Sultan khan 1edeff439e notifications page updates 3 months ago
Haroon6138 a1beacc36e Merge pull request 'haroon_dev' (#159) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/159
3 months ago
haroon amjad 3e6ee8c10c Merge branch 'master' into haroon_dev
# Conflicts:
#	lib/routes/app_routes.dart
3 months ago
haroon amjad 87422e8e05 translation updates 3 months ago
Sikander Saleem 0b9df1f22b collapsing toolbar behaviour changed as like barq 3 months ago
Haroon6138 179b86b2b0 Merge pull request 'fatima' (#158) from fatima into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/158
3 months ago
Fatimah.Alshammari f6aa1fc7ac Merge branch 'refs/heads/master' into fatima 3 months ago
Fatimah.Alshammari 9795276ef9 fixed errors 3 months ago
Sikander Saleem 45b013a048 UI/UX improvements - insurance update. 3 months ago
Sikander Saleem 1599cfed4e UI/UX improvements-1. 3 months ago
haroon amjad 96ccb40f36 Merge branch 'master' into haroon_dev 3 months ago
Haroon6138 bb7c05493a Merge pull request 'fatima' (#157) from fatima into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/157
3 months ago
haroon amjad 169215fd7b translation changes 3 months ago
Fatimah.Alshammari 97a47ce4e8 Merge branch 'refs/heads/master' into fatima
# Conflicts:
#	lib/core/dependencies.dart
#	lib/routes/app_routes.dart
3 months ago
Fatimah.Alshammari 287e2b9562 fixed QR 3 months ago
Sikander Saleem 77a04e637e UI/UX improvements. 3 months ago
Sultan khan 8b5c4d7575 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
# Conflicts:
#	lib/core/dependencies.dart
#	lib/routes/app_routes.dart
3 months ago
Sultan khan 8c92df8648 contact us page fix 3 months ago
aamir-csol a816afadea Merge branch 'master' into dev_aamir
# Conflicts:
#	lib/core/dependencies.dart
#	lib/presentation/hmg_services/services_page.dart
3 months ago
aamir-csol d76ff5828f fixes 3 months ago
haroon amjad 8f428297cb Arabic translations added 3 months ago
Haroon6138 e9d3b3680a Merge pull request 'haroon_dev' (#156) from haroon_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/156
3 months ago
haroon amjad a0008c9104 Nearest Appointment sorting fixed 3 months ago
Fatimah.Alshammari 1d224702ac Merge branch 'refs/heads/master' into fatima 3 months ago
Fatimah.Alshammari 69666a6f6c fixed button 3 months ago
haroon amjad 475a9b9acb Merge branch 'master' into haroon_dev 3 months ago
Haroon6138 06c67a0409 Merge pull request 'dev_aamir' (#153) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/153
3 months ago
Haroon6138 d1b1bbf777 Merge pull request 'dev_sultan' (#154) from dev_sultan into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/154
3 months ago
Sultan khan 0ddaa6899d Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New:
  fixed parking qr
  added parking part
  added monthly report
  added monthly report
  added monthly report
  fix error
  monthly report
  fix toggle
  fix toggle
  active medication
  active medication
  active medication
3 months ago
Sultan khan 42222804fd fix graph dot and bp graph. 3 months ago
aamir-csol bf210e664d Merge branch 'master' into dev_aamir 3 months ago
aamir-csol 6725ab028d doctor search filter design update & switch user bug fix. 3 months ago
haroon amjad 609ae6ab83 updates 3 months ago
haroon amjad 344adf23c0 Merge branch 'master' into haroon_dev
# Conflicts:
#	lib/core/dependencies.dart
#	lib/main.dart
#	lib/presentation/hmg_services/services_page.dart
#	lib/presentation/home/landing_page.dart
3 months ago
haroon amjad 44ce353dac updates 3 months ago
Haroon6138 b5753769b7 Merge pull request 'fatima' (#152) from fatima into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/152
3 months ago
Fatimah.Alshammari 250af1506c Merge branch 'master' into fatima
# Conflicts:
#	lib/core/dependencies.dart
#	lib/presentation/medical_file/medical_file_page.dart
#	lib/routes/app_routes.dart
#	lib/services/dialog_service.dart
#	lib/theme/colors.dart
3 months ago
haroon amjad fc750174fe Merge branch 'master' into haroon_dev 3 months ago
haroon amjad d848291930 updates 3 months ago
Haroon6138 aee496b7c3 Merge pull request 'dev_sultan' (#151) from dev_sultan into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/151
3 months ago
Sultan khan 16da0f4d0a Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 3 months ago
Sultan khan 8ee0e3b4ea no message 3 months ago
Sultan khan 0c68ca4438 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New:
  Added 'send report to email' feature
  Completed the health Tracker Module, Only the email part is left.
  only explain api left.
  Triage Completed. Explain API left
  Till Triage Completed
  refactoring

# Conflicts:
#	lib/presentation/medical_file/medical_file_page.dart
3 months ago
haroon amjad e454c9c991 Merge branch 'master' into haroon_dev
# Conflicts:
#	lib/core/api_consts.dart
#	lib/core/dependencies.dart
3 months ago
Haroon6138 96ebc3c7e9 Merge pull request 'dev_aamir' (#149) from dev_aamir into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/149
3 months ago
Haroon6138 2240c6cc65 Merge pull request 'Health Trackers Feature (faiz_dev)' (#150) from faiz_dev into master
Reviewed-on: https://34.17.182.140/Haroon6138/HMG_Patient_App_New/pulls/150
3 months ago
Sultan khan 0514716910 no message 3 months ago
Sultan khan e903f9c418 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan
* 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New:
  search filter on select doctor page.
  family file fix
  blood group
3 months ago
Sultan khan ac0d72b3ff vital sign finalized. 3 months ago
aamir-csol f62c7c9b20 Merge branch 'master' into dev_aamir 3 months ago
aamir-csol c11e859df1 search doctor by name filter. 3 months ago
haroon amjad 91c16f13d1 Merge branch 'master' into haroon_dev
# Conflicts:
#	lib/core/app_assets.dart
3 months ago
haroon amjad 1c0842ab95 updates 3 months ago
haroon amjad 02930a901e Indoor navigation implementation & Landing page swiper card updates 3 months ago
Fatimah.Alshammari 20e4f82df3 Merge branch 'master' into fatima
# Conflicts:
#	lib/core/dependencies.dart
#	lib/main.dart
#	lib/presentation/hmg_services/services_page.dart
#	lib/presentation/medical_file/medical_file_page.dart
#	lib/routes/app_routes.dart
3 months ago
Fatimah.Alshammari 8ae81d2b24 fixed parking qr 3 months ago
Sultan khan 34e8386ca1 Merge branch 'master' of http://34.17.182.140/Haroon6138/HMG_Patient_App_New into dev_sultan 3 months ago
Sultan khan cc255e9c9a vital sign detail page 3 months ago
Fatimah.Alshammari 11de01e079 Merge branch 'refs/heads/master' into fatima
# Conflicts:
#	lib/presentation/hmg_services/services_page.dart
#	lib/routes/app_routes.dart
#	lib/theme/colors.dart
4 months ago
Fatimah.Alshammari 62bb667cb8 added parking part 4 months ago
Fatimah.Alshammari f3674ba06f Merge branch 'refs/heads/master' into fatima
# Conflicts:
#	lib/core/dependencies.dart
#	lib/presentation/hmg_services/services_page.dart
#	lib/routes/app_routes.dart
4 months ago
Fatimah.Alshammari a53602dc8c added monthly report 4 months ago
Fatimah.Alshammari 7a03242396 added monthly report 4 months ago
Fatimah.Alshammari 68f044de52 added monthly report 4 months ago
Fatimah.Alshammari c9de23347a fix error 4 months ago
Fatimah.Alshammari 190492a191 Merge branch 'refs/heads/master' into fatima
# Conflicts:
#	lib/routes/app_routes.dart
4 months ago
Fatimah.Alshammari 3d8daeb58d Merge branch 'refs/heads/master' into fatima
# Conflicts:
#	lib/core/app_assets.dart
#	lib/core/dependencies.dart
#	lib/core/utils/calendar_utils.dart
#	lib/features/hmg_services/models/ui_models/hmg_services_component_model.dart
#	lib/main.dart
#	lib/presentation/hmg_services/services_page.dart
#	lib/presentation/hmg_services/services_view.dart
#	lib/presentation/medical_file/medical_file_page.dart
#	lib/routes/app_routes.dart
#	lib/theme/colors.dart
#	pubspec.yaml
4 months ago
Fatimah.Alshammari 0b3fea230f monthly report 4 months ago
Fatimah.Alshammari 86a91ab383 Merge branch 'refs/heads/master' into fatima 5 months ago
Fatimah.Alshammari 89ff10f506 Merge branch 'refs/heads/master' into fatima
# Conflicts:
#	lib/core/dependencies.dart
#	lib/main.dart
#	lib/theme/colors.dart
5 months ago
Fatimah.Alshammari 8191852f4d Merge branch 'refs/heads/master' into fatima
# Conflicts:
#	lib/core/dependencies.dart
#	lib/main.dart
5 months ago
Fatimah.Alshammari e17d3cde87 fix toggle 5 months ago
Fatimah.Alshammari 77242825bb fix toggle 5 months ago
Fatimah.Alshammari 27ad4e0764 Merge branch 'refs/heads/master' into fatima
# Conflicts:
#	lib/core/utils/utils.dart
#	lib/presentation/emergency_services/call_ambulance/tracking_screen.dart
#	lib/presentation/home/landing_page.dart
5 months ago
Fatimah.Alshammari eae16eec44 active medication 5 months ago
Fatimah.Alshammari 3f123d12d6 Merge remote-tracking branch 'refs/remotes/origin/master' into fatima
# Conflicts:
#	lib/core/api_consts.dart
#	lib/core/utils/utils.dart
#	lib/main.dart
6 months ago
Fatimah.Alshammari de8c7bc605 active medication 6 months ago
Fatimah.Alshammari cb56503622 Merge remote-tracking branch 'refs/remotes/origin/master' into fatima 6 months ago
Fatimah.Alshammari e8319a0d3f active medication 6 months ago

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 949 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

@ -0,0 +1 @@
{"images":[{"size":"60x60","expected-size":"180","filename":"180.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"40x40","expected-size":"80","filename":"80.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"40x40","expected-size":"120","filename":"120.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"60x60","expected-size":"120","filename":"120.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"57x57","expected-size":"57","filename":"57.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"1x"},{"size":"29x29","expected-size":"58","filename":"58.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"29x29","expected-size":"29","filename":"29.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"1x"},{"size":"29x29","expected-size":"87","filename":"87.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"57x57","expected-size":"114","filename":"114.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"20x20","expected-size":"40","filename":"40.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"2x"},{"size":"20x20","expected-size":"60","filename":"60.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"iphone","scale":"3x"},{"size":"1024x1024","filename":"1024.png","expected-size":"1024","idiom":"ios-marketing","folder":"Assets.xcassets/AppIcon.appiconset/","scale":"1x"},{"size":"40x40","expected-size":"80","filename":"80.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"72x72","expected-size":"72","filename":"72.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"76x76","expected-size":"152","filename":"152.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"50x50","expected-size":"100","filename":"100.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"29x29","expected-size":"58","filename":"58.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"76x76","expected-size":"76","filename":"76.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"29x29","expected-size":"29","filename":"29.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"50x50","expected-size":"50","filename":"50.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"72x72","expected-size":"144","filename":"144.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"40x40","expected-size":"40","filename":"40.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"83.5x83.5","expected-size":"167","filename":"167.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"},{"size":"20x20","expected-size":"20","filename":"20.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"1x"},{"size":"20x20","expected-size":"40","filename":"40.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"ipad","scale":"2x"}]}

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

@ -0,0 +1,6 @@
-----BEGIN PRIVATE KEY-----
MIGTAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBHkwdwIBAQQgaPetsOq3tqUlswBN
BFUWIIdEg4dcTCGRUKbAEx8ViFygCgYIKoZIzj0DAQehRANCAAS6IKkZ4tCeBlN6
DtXiBekCiIbgHxWk8AWppP0H3mJ+I2s8cIEaquL4/yeLDcHzAHf8tHcYhF/TvggT
nc30yDLv
-----END PRIVATE KEY-----

@ -1,3 +1,11 @@
# Translation prompt & Command
Read the context for both files & generate translations strings in the en-US.json & ar-SA.json files for the strings containing "needTranslation". Also replace the strings in the dart with the generated Strings. Also do not remove existing properties & do no generate duplicate strings in the json files
flutter3_32 pub run easy_localization:generate -O ./lib/generated -f keys -o locale_keys.g.dart --source-dir ./assets/langs
# HMG Patient App
A comprehensive Flutter-based mobile application for HMG (Habib Medical Group) patients,

@ -0,0 +1 @@
{"agcgw":{"url":"connect-drcn.dbankcloud.cn","backurl":"connect-drcn.hispace.hicloud.com","websocketurl":"connect-ws-drcn.hispace.dbankcloud.cn","websocketbackurl":"connect-ws-drcn.hispace.dbankcloud.com"},"agcgw_all":{"SG":"connect-dra.dbankcloud.cn","SG_back":"connect-dra.hispace.hicloud.com","CN":"connect-drcn.dbankcloud.cn","CN_back":"connect-drcn.hispace.hicloud.com","RU":"connect-drru.hispace.dbankcloud.ru","RU_back":"connect-drru.hispace.dbankcloud.cn","DE":"connect-dre.dbankcloud.cn","DE_back":"connect-dre.hispace.hicloud.com"},"websocketgw_all":{"SG":"connect-ws-dra.hispace.dbankcloud.cn","SG_back":"connect-ws-dra.hispace.dbankcloud.com","CN":"connect-ws-drcn.hispace.dbankcloud.cn","CN_back":"connect-ws-drcn.hispace.dbankcloud.com","RU":"connect-ws-drru.hispace.dbankcloud.ru","RU_back":"connect-ws-drru.hispace.dbankcloud.cn","DE":"connect-ws-dre.hispace.dbankcloud.cn","DE_back":"connect-ws-dre.hispace.dbankcloud.com"},"client":{"cp_id":"2640966000002322881","product_id":"736430079244816567","client_id":"563735388191982656","client_secret":"650C7C799812AFFD53A10C7756CF05FB9F215A7E49032ABA8EBF3E14B77535CF","project_id":"736430079244816567","app_id":"116912301","api_key":"CgB6e3x9DJzMgRCmnT6dyUEkp6UsIfddb6l3w0ZEXzeiRMHEFi3400Z5fJ5qaHneU0OrAI/JRpk+DMGVs3QpUxlI","package_name":"com.cloudsolutions.HMGPatientApp"},"oauth_client":{"client_id":"116912301","client_type":1},"app_info":{"app_id":"116912301","package_name":"com.cloudsolutions.HMGPatientApp"},"service":{"analytics":{"collector_url":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn","collector_url_cn":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn","collector_url_de":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn","collector_url_ru":"datacollector-drru.dt.dbankcloud.ru,datacollector-drru.dt.hicloud.com","collector_url_sg":"datacollector-dra.dt.hicloud.com,datacollector-dra.dt.dbankcloud.cn","resource_id":"p1","channel_id":""},"ml":{"mlservice_url":"ml-api-drcn.ai.dbankcloud.com,ml-api-drcn.ai.dbankcloud.cn"},"cloudstorage":{"storage_url":"https://agc-storage-drcn.platform.dbankcloud.cn","storage_url_ru":"https://agc-storage-drru.cloud.huawei.ru","storage_url_sg":"https://ops-dra.agcstorage.link","storage_url_de":"https://ops-dre.agcstorage.link","storage_url_cn":"https://agc-storage-drcn.platform.dbankcloud.cn","storage_url_ru_back":"https://agc-storage-drru.cloud.huawei.ru","storage_url_sg_back":"https://agc-storage-dra.cloud.huawei.asia","storage_url_de_back":"https://agc-storage-dre.cloud.huawei.eu","storage_url_cn_back":"https://agc-storage-drcn.cloud.huawei.com.cn"},"search":{"url":"https://search-drcn.cloud.huawei.com"},"edukit":{"edu_url":"edukit.cloud.huawei.com.cn","dh_url":"edukit.cloud.huawei.com.cn"}},"region":"CN","configuration_version":"3.0","appInfos":[{"package_name":"com.cloudsolutions.HMGPatientApp","client":{"app_id":"116912301"},"app_info":{"package_name":"com.cloudsolutions.HMGPatientApp","app_id":"116912301"},"oauth_client":{"client_type":1,"client_id":"116912301"}},{"package_name":"com.ejada.hmg","client":{"app_id":"102857389"},"app_info":{"package_name":"com.ejada.hmg","app_id":"102857389"},"oauth_client":{"client_type":1,"client_id":"102857389"}}]}

@ -1,74 +1 @@
{
"agcgw":{
"backurl":"connect-drcn.hispace.hicloud.com",
"url":"connect-drcn.dbankcloud.cn",
"websocketbackurl":"connect-ws-drcn.hispace.dbankcloud.com",
"websocketurl":"connect-ws-drcn.hispace.dbankcloud.cn"
},
"agcgw_all":{
"CN":"connect-drcn.dbankcloud.cn",
"CN_back":"connect-drcn.hispace.hicloud.com",
"DE":"connect-dre.dbankcloud.cn",
"DE_back":"connect-dre.hispace.hicloud.com",
"RU":"connect-drru.dbankcloud.cn",
"RU_back":"connect-drru.hispace.hicloud.com",
"SG":"connect-dra.dbankcloud.cn",
"SG_back":"connect-dra.hispace.hicloud.com"
},
"client":{
"cp_id":"2640966000002322881",
"product_id":"736430079244816567",
"client_id":"563735388191982656",
"client_secret":"650C7C799812AFFD53A10C7756CF05FB9F215A7E49032ABA8EBF3E14B77535CF",
"project_id":"736430079244816567",
"app_id":"102857389",
"api_key":"CgB6e3x9DJzMgRCmnT6dyUEkp6UsIfddb6l3w0ZEXzeiRMHEFi3400Z5fJ5qaHneU0OrAI/JRpk+DMGVs3QpUxlI",
"package_name":"com.ejada.hmg"
},
"oauth_client":{
"client_id":"102857389",
"client_type":1
},
"app_info":{
"app_id":"102857389",
"package_name":"com.ejada.hmg"
},
"service":{
"analytics":{
"collector_url":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn",
"collector_url_ru":"datacollector-drru.dt.hicloud.com,datacollector-drru.dt.dbankcloud.cn",
"collector_url_sg":"datacollector-dra.dt.hicloud.com,datacollector-dra.dt.dbankcloud.cn",
"collector_url_de":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn",
"collector_url_cn":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn",
"resource_id":"p1",
"channel_id":""
},
"search":{
"url":"https://search-drcn.cloud.huawei.com"
},
"cloudstorage":{
"storage_url":"https://agc-storage-drcn.platform.dbankcloud.cn"
},
"ml":{
"mlservice_url":"ml-api-drcn.ai.dbankcloud.com,ml-api-drcn.ai.dbankcloud.cn"
}
},
"region":"CN",
"configuration_version":"3.0",
"appInfos":[
{
"package_name":"com.ejada.hmg",
"client":{
"app_id":"102857389"
},
"app_info":{
"package_name":"com.ejada.hmg",
"app_id":"102857389"
},
"oauth_client":{
"client_type":1,
"client_id":"102857389"
}
}
]
}
{"agcgw":{"url":"connect-drcn.dbankcloud.cn","backurl":"connect-drcn.hispace.hicloud.com","websocketurl":"connect-ws-drcn.hispace.dbankcloud.cn","websocketbackurl":"connect-ws-drcn.hispace.dbankcloud.com"},"agcgw_all":{"SG":"connect-dra.dbankcloud.cn","SG_back":"connect-dra.hispace.hicloud.com","CN":"connect-drcn.dbankcloud.cn","CN_back":"connect-drcn.hispace.hicloud.com","RU":"connect-drru.hispace.dbankcloud.ru","RU_back":"connect-drru.hispace.dbankcloud.cn","DE":"connect-dre.dbankcloud.cn","DE_back":"connect-dre.hispace.hicloud.com"},"websocketgw_all":{"SG":"connect-ws-dra.hispace.dbankcloud.cn","SG_back":"connect-ws-dra.hispace.dbankcloud.com","CN":"connect-ws-drcn.hispace.dbankcloud.cn","CN_back":"connect-ws-drcn.hispace.dbankcloud.com","RU":"connect-ws-drru.hispace.dbankcloud.ru","RU_back":"connect-ws-drru.hispace.dbankcloud.cn","DE":"connect-ws-dre.hispace.dbankcloud.cn","DE_back":"connect-ws-dre.hispace.dbankcloud.com"},"client":{"cp_id":"2640966000002322881","product_id":"736430079244816567","client_id":"563735388191982656","client_secret":"650C7C799812AFFD53A10C7756CF05FB9F215A7E49032ABA8EBF3E14B77535CF","project_id":"736430079244816567","app_id":"116912301","api_key":"CgB6e3x9DJzMgRCmnT6dyUEkp6UsIfddb6l3w0ZEXzeiRMHEFi3400Z5fJ5qaHneU0OrAI/JRpk+DMGVs3QpUxlI","package_name":"com.cloudsolutions.HMGPatientApp"},"oauth_client":{"client_id":"116912301","client_type":1},"app_info":{"app_id":"116912301","package_name":"com.cloudsolutions.HMGPatientApp"},"service":{"analytics":{"collector_url":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn","collector_url_cn":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn","collector_url_de":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn","collector_url_ru":"datacollector-drru.dt.dbankcloud.ru,datacollector-drru.dt.hicloud.com","collector_url_sg":"datacollector-dra.dt.hicloud.com,datacollector-dra.dt.dbankcloud.cn","resource_id":"p1","channel_id":""},"ml":{"mlservice_url":"ml-api-drcn.ai.dbankcloud.com,ml-api-drcn.ai.dbankcloud.cn"},"cloudstorage":{"storage_url":"https://agc-storage-drcn.platform.dbankcloud.cn","storage_url_ru":"https://agc-storage-drru.cloud.huawei.ru","storage_url_sg":"https://ops-dra.agcstorage.link","storage_url_de":"https://ops-dre.agcstorage.link","storage_url_cn":"https://agc-storage-drcn.platform.dbankcloud.cn","storage_url_ru_back":"https://agc-storage-drru.cloud.huawei.ru","storage_url_sg_back":"https://agc-storage-dra.cloud.huawei.asia","storage_url_de_back":"https://agc-storage-dre.cloud.huawei.eu","storage_url_cn_back":"https://agc-storage-drcn.cloud.huawei.com.cn"},"search":{"url":"https://search-drcn.cloud.huawei.com"},"edukit":{"edu_url":"edukit.cloud.huawei.com.cn","dh_url":"edukit.cloud.huawei.com.cn"}},"region":"CN","configuration_version":"3.0","appInfos":[{"package_name":"com.cloudsolutions.HMGPatientApp","client":{"app_id":"116912301"},"app_info":{"package_name":"com.cloudsolutions.HMGPatientApp","app_id":"116912301"},"oauth_client":{"client_type":1,"client_id":"116912301"}},{"package_name":"com.ejada.hmg","client":{"app_id":"102857389"},"app_info":{"package_name":"com.ejada.hmg","app_id":"102857389"},"oauth_client":{"client_type":1,"client_id":"102857389"}}]}

@ -7,6 +7,7 @@ plugins {
id("com.google.gms.google-services") version "4.4.1" // Add the version here
id("dev.flutter.flutter-gradle-plugin")
id("com.huawei.agconnect")
id("kotlin-parcelize")
// id("com.mapbox.gradle.application")
// id("com.mapbox.gradle.plugins.ndk")
}
@ -18,20 +19,33 @@ if (keystorePropertiesFile.exists()) {
}
android {
namespace = "com.ejada.hmg"
namespace = "com.cloudsolutions.HMGPatientApp"
compileSdk = 36
ndkVersion = "28.2.13676358"
// Using NDK 26 for better compatibility with Zoom SDK native libraries
ndkVersion = "27.0.12077973"
// ndkVersion = "25.1.8937393"
sourceSets {
getByName("main") {
jniLibs.srcDirs("src/main/jniLibs")
}
}
defaultConfig {
applicationId = "com.ejada.hmg"
applicationId = "com.cloudsolutions.HMGPatientApp"
// minSdk = 24
minSdk = 26
targetSdk = 36
minSdk = 29
targetSdk = 35
compileSdk = 36
// targetSdk = flutter.targetSdkVersion
versionCode = flutter.versionCode
versionName = flutter.versionName
multiDexEnabled = true
// Filter to arm64-v8a for better native library compatibility
ndk {
abiFilters += listOf("arm64-v8a", "armeabi-v7a")
}
}
buildFeatures {
@ -82,7 +96,7 @@ android {
}
}
packagingOptions {
packaging {
jniLibs {
pickFirsts += listOf(
"lib/x86/libc++_shared.so",
@ -92,9 +106,16 @@ android {
"**/*.so"
)
useLegacyPackaging = true
// Keep Zoom SDK libraries unstripped to preserve symbols
keepDebugSymbols += listOf(
"*/libzoom_util.so",
"*/libzoom_check.so",
"*/libc++_shared.so"
)
}
resources {
excludes += listOf("META-INF/proguard/androidx-annotations.pro")
excludes.add("lib/*/libc++_shared.so")
}
}
@ -127,9 +148,13 @@ dependencies {
implementation("com.google.code.gson:gson:2.12.0")
// Zoom SDKs
implementation("us.zoom.videosdk:zoomvideosdk-core:1.12.10")
implementation("us.zoom.videosdk:zoomvideosdk-annotation:1.12.10")
implementation("us.zoom.videosdk:zoomvideosdk-videoeffects:1.12.10")
// implementation("us.zoom.videosdk:zoomvideosdk-core:1.12.10")
// implementation("us.zoom.videosdk:zoomvideosdk-annotation:1.12.10")
// implementation("us.zoom.videosdk:zoomvideosdk-videoeffects:1.12.10")
implementation("us.zoom.videosdk:zoomvideosdk-core:2.1.10")
implementation("us.zoom.videosdk:zoomvideosdk-videoeffects:2.1.10")
implementation("us.zoom.videosdk:zoomvideosdk-annotation:2.1.10")
// Networking
implementation("com.squareup.okhttp3:logging-interceptor:5.0.0-alpha.11")
@ -160,12 +185,16 @@ dependencies {
annotationProcessor("com.github.bumptech.glide:compiler:4.16.0")
implementation("com.mapbox.maps:android:11.5.0")
implementation("com.mapbox.mapboxsdk:mapbox-sdk-turf:7.3.1")
// implementation("com.mapbox.maps:android:11.4.0")
// AARs
implementation(files("libs/PenNavUI.aar"))
implementation(files("libs/Penguin.aar"))
implementation(files("libs/PenguinRenderer.aar"))
api(files("libs/samsung-health-data-api.aar"))
implementation("com.huawei.hms:health:6.11.0.300")
implementation("com.huawei.hms:hmscoreinstaller:6.6.0.300")
implementation("com.github.kittinunf.fuel:fuel:2.3.1")
implementation("com.github.kittinunf.fuel:fuel-android:2.3.1")
@ -186,5 +215,39 @@ dependencies {
implementation("com.whatsapp.otp:whatsapp-otp-android-sdk:0.1.0")
coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.1.5")
// implementation(project(":vitalSignEngine"))
}
tasks.whenTaskAdded {
if (name.contains("merge") && name.contains("NativeLibs")) {
doLast {
val outputDir = File(project.buildDir, "intermediates/merged_native_libs/release/out/lib")
// Handle both architectures
val abis = listOf("arm64-v8a", "armeabi-v7a")
abis.forEach { abi ->
val targetFile = File(outputDir, "$abi/libc++_shared.so")
val sourceFile = file("src/main/jniLibs/$abi/libc++_shared.so")
if (sourceFile.exists() && targetFile.exists()) {
println("FORCING: Overwriting $abi version with known-good 1.2MB library")
sourceFile.copyTo(targetFile, overwrite = true)
}
}
}
}
}
}
//tasks.whenTaskAdded {
// if (name.contains("merge") && name.contains("NativeLibs")) {
// doLast {
// val outputDir = File(project.buildDir, "intermediates/merged_native_libs/release/out/lib")
// val targetFile = File(outputDir, "arm64-v8a/libc++_shared.so")
// val sourceFile = file("src/main/jniLibs/arm64-v8a/libc++_shared.so")
//
// if (sourceFile.exists()) {
// println("FORCE REPLACING: Injecting 1.2MB libc++ into APK...")
// sourceFile.copyTo(targetFile, overwrite = true)
// }
// }
// }
//}

@ -3,9 +3,45 @@
"project_number": "815750722565",
"firebase_url": "https://api-project-815750722565.firebaseio.com",
"project_id": "api-project-815750722565",
"storage_bucket": "api-project-815750722565.appspot.com"
"storage_bucket": "api-project-815750722565.firebasestorage.app"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:815750722565:android:fa20b3a2401e08633c186c",
"android_client_info": {
"package_name": "com.cloudsolutions.HMGPatientApp"
}
},
"oauth_client": [
{
"client_id": "815750722565-3a0gc7neins0eoahdrimrfksk0sqice8.apps.googleusercontent.com",
"client_type": 3
}
],
"api_key": [
{
"current_key": "AIzaSyDZDeWcBlRE3YfJWYt_DCiToVnANfaj8qg"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": [
{
"client_id": "815750722565-3a0gc7neins0eoahdrimrfksk0sqice8.apps.googleusercontent.com",
"client_type": 3
},
{
"client_id": "815750722565-0cq9366orvsk5ipivq6lijcj56u03fr7.apps.googleusercontent.com",
"client_type": 2,
"ios_info": {
"bundle_id": "com.void.demo"
}
}
]
}
}
},
{
"client_info": {
"mobilesdk_app_id": "1:815750722565:android:62281cd3e5df4063",

Binary file not shown.

@ -52,6 +52,11 @@
*;
}
# Prevent stripping of standard C++ symbols
-keepclassmembers class * {
native <methods>;
}
-dontwarn com.opentok.android.**
-dontwarn com.opentok.otc.**

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.ejada.hmg">
package="com.cloudsolutions.HMGPatientApp">
<!--
io.flutter.app.FlutterApplication is an android.app.Application that
calls FlutterMain.startInitialization(this); in its onCreate method.
@ -39,17 +39,21 @@
<uses-permission
android:name="android.permission.FOREGROUND_SERVICE_MICROPHONE"
tools:node="remove" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" tools:node="remove" />
<!-- Added by open_filex -->
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" tools:node="remove" />
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" tools:node="remove" />
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" tools:node="remove" />
<!-- Gallery/Photo permissions for Android 13+ (API 33+) -->
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
<!-- Gallery/Photo permissions for Android 12 and below -->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="32" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="29" />
<uses-permission
android:name="android.permission.ACCESS_BACKGROUND_LOCATION"
tools:node="remove" /> <!-- <uses-permission android:name="android.permission.INTERNET" /> -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.USE_FULL_SCREEN_INTENT" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.BLUETOOTH" />
@ -62,7 +66,6 @@
<uses-feature android:name="android.hardware.camera.any" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
<uses-feature
@ -89,11 +92,8 @@
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_CALENDAR" />
<uses-permission android:name="android.permission.WRITE_CALENDAR" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.VIDEO_CAPTURE" />
<uses-permission android:name="android.permission.AUDIO_CAPTURE" />
@ -125,29 +125,34 @@
</queries>
<application
android:foregroundServiceType="mediaPlayback|connectedDevice|dataSync"
android:name=".Application"
android:allowBackup="false"
android:icon="@mipmap/ic_launcher_local"
android:label="Dr. Alhabib"
android:label="Dr. Alhabib Beta"
android:screenOrientation="sensorPortrait"
android:showOnLockScreen="true"
android:usesCleartextTraffic="true"
android:extractNativeLibs="true"
tools:replace="android:label">
<activity
android:name="com.cloud.hmg_patient_app.whatsapp.WhatsAppCodeActivity"
android:exported="true"
android:enabled="true"
android:launchMode="standard"
>
<intent-filter>
<action android:name="com.whatsapp.otp.OTP_RETRIEVED" />
</intent-filter>
</activity>
<!-- <activity-->
<!-- android:name="com.cloud.hmg_patient_app.whatsapp.WhatsAppCodeActivity"-->
<!-- android:exported="true"-->
<!-- android:enabled="true"-->
<!-- android:launchMode="standard"-->
<!-- >-->
<!-- <intent-filter>-->
<!-- <action android:name="com.whatsapp.otp.OTP_RETRIEVED" />-->
<!-- </intent-filter>-->
<!-- </activity>-->
<meta-data
android:name="push_kit_auto_init_enabled"
android:value="true" />
<meta-data
android:name="com.google.ar.core"
tools:node="remove" />
<activity
android:name=".MainActivity"
@ -155,7 +160,7 @@
android:enabled="true"
android:exported="true"
android:hardwareAccelerated="true"
android:launchMode="singleTop"
android:launchMode="singleInstance"
android:showOnLockScreen="true"
android:theme="@style/LaunchTheme"
android:windowSoftInputMode="adjustResize"
@ -199,10 +204,10 @@
<!-- </intent-filter> -->
<!-- </receiver> -->
<!-- Geofencing -->
<service
android:name=".geofence.intent_receivers.GeofenceTransitionsJobIntentService"
android:exported="true"
android:permission="android.permission.BIND_JOB_SERVICE" />
<!-- <service-->
<!-- android:name=".geofence.intent_receivers.GeofenceTransitionsJobIntentService"-->
<!-- android:exported="true"-->
<!-- android:permission="android.permission.BIND_JOB_SERVICE" />-->
<!-- <receiver-->
<!-- android:name=".geofence.intent_receivers.GeofenceBroadcastReceiver"-->

@ -1,5 +1,5 @@
//package com.cloud.diplomaticquarterapp
package com.ejada.hmg
package com.cloudsolutions.HMGPatientApp
import io.flutter.app.FlutterApplication

@ -1,6 +1,5 @@
package com.ejada.hmg
package com.cloudsolutions.HMGPatientApp
import android.app.PendingIntent
import android.content.Intent
import android.content.pm.PackageManager
import android.os.Build
@ -8,7 +7,7 @@ import android.util.Log
import android.view.WindowManager
import androidx.annotation.NonNull;
import androidx.annotation.RequiresApi
import com.ejada.hmg.penguin.PenguinInPlatformBridge
import com.cloudsolutions.HMGPatientApp.watch.samsung_watch.SamsungWatch
import io.flutter.embedding.engine.FlutterEngine
import io.flutter.plugins.GeneratedPluginRegistrant
@ -16,6 +15,7 @@ import io.flutter.embedding.android.FlutterFragmentActivity
class MainActivity: FlutterFragmentActivity() {
@RequiresApi(Build.VERSION_CODES.O)
override fun configureFlutterEngine(@NonNull flutterEngine: FlutterEngine) {
GeneratedPluginRegistrant.registerWith(flutterEngine);
@ -23,6 +23,7 @@ class MainActivity: FlutterFragmentActivity() {
this.window.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED or WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON or WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD or WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON)
PenguinInPlatformBridge(flutterEngine, this).create()
SamsungWatch(flutterEngine, this)
}
override fun onRequestPermissionsResult(
@ -48,4 +49,30 @@ class MainActivity: FlutterFragmentActivity() {
override fun onResume() {
super.onResume()
}
// override fun onActivityResult(requestCode: Int, resultCode: Int, @Nullable data: Intent?) {
// super.onActivityResult(requestCode, resultCode, data)
//
// // Process only the response result of the authorization process.
// if (requestCode == 1002) {
// // Obtain the authorization response result from the intent.
// val result: HealthKitAuthResult? = huaweiWatch?.mSettingController?.parseHealthKitAuthResultFromIntent(data)
// if (result == null) {
// Log.w(huaweiWatch?.TAG, "authorization fail")
// return
// }
//
// if (result.isSuccess) {
// Log.i(huaweiWatch?.TAG, "authorization success")
// if (result.getAuthAccount() != null && result.authAccount.authorizedScopes != null) {
// val authorizedScopes: MutableSet<Scope?> = result.authAccount.authorizedScopes
// if(authorizedScopes.isNotEmpty()) {
// huaweiWatch?.getHealthAppAuthorization()
// }
// }
// } else {
// Log.w("MainActivty", "authorization fail, errorCode:" + result.getErrorCode())
// }
// }
// }
}

@ -1,15 +1,14 @@
package com.ejada.hmg.penguin
package com.cloudsolutions.HMGPatientApp
import com.ejada.hmg.MainActivity
import android.os.Build
import android.util.Log
import androidx.annotation.RequiresApi
import com.ejada.hmg.penguin.PenguinView
import com.cloudsolutions.HMGPatientApp.penguin.PenguinView
import io.flutter.embedding.engine.FlutterEngine
import io.flutter.plugin.common.MethodCall
import com.ejada.hmg.PermissionManager.HostNotificationPermissionManager
import com.ejada.hmg.PermissionManager.HostBgLocationManager
import com.ejada.hmg.PermissionManager.HostGpsStateManager
import com.cloudsolutions.HMGPatientApp.PermissionManager.HostNotificationPermissionManager
import com.cloudsolutions.HMGPatientApp.PermissionManager.HostBgLocationManager
import com.cloudsolutions.HMGPatientApp.PermissionManager.HostGpsStateManager
import io.flutter.plugin.common.MethodChannel
class PenguinInPlatformBridge(

@ -1,4 +1,4 @@
package com.ejada.hmg.PermissionManager;
package com.cloudsolutions.HMGPatientApp.PermissionManager;
import android.content.Context;
import android.content.SharedPreferences;

@ -1,4 +1,4 @@
package com.ejada.hmg.PermissionManager;
package com.cloudsolutions.HMGPatientApp.PermissionManager;
import android.Manifest;
import android.app.Activity;

@ -1,4 +1,4 @@
package com.ejada.hmg.PermissionManager;
package com.cloudsolutions.HMGPatientApp.PermissionManager;
import android.Manifest;
import android.app.Activity;

@ -1,4 +1,4 @@
package com.ejada.hmg.PermissionManager;
package com.cloudsolutions.HMGPatientApp.PermissionManager;
import android.app.Activity;
import android.content.pm.PackageManager;

@ -1,7 +1,6 @@
package com.ejada.hmg.PermissionManager
package com.cloudsolutions.HMGPatientApp.PermissionManager
import android.Manifest
import android.os.Build
object PermissionHelper {

@ -1,4 +1,4 @@
package com.ejada.hmg.PermissionManager
package com.cloudsolutions.HMGPatientApp.PermissionManager
import android.app.Activity
import android.content.Context

@ -1,4 +1,4 @@
package com.ejada.hmg.PermissionManager
package com.cloudsolutions.HMGPatientApp.PermissionManager
// PermissionResultReceiver.kt
import android.content.BroadcastReceiver

@ -1,4 +1,4 @@
package com.ejada.hmg.penguin
package com.cloudsolutions.HMGPatientApp.penguin
enum class PenguinMethod {
// initializePenguin("initializePenguin"),

@ -1,4 +1,4 @@
package com.ejada.hmg.penguin
package com.cloudsolutions.HMGPatientApp.penguin
import android.content.Context
import com.google.gson.Gson
@ -21,7 +21,7 @@ class PenguinNavigator() {
val postToken = PostToken(clientID, clientKey)
getToken(mContext, postToken, object : RefIdDelegate {
override fun onRefByIDSuccess(PoiId: String?) {
Log.e("navigateTo", "PoiId is+++++++ $PoiId")
Log.e("navigateTo", "PoiId is+++++++ $refID")
PlugAndPlaySDK.navigateTo(mContext, refID, object : RefIdDelegate {
override fun onRefByIDSuccess(PoiId: String?) {

@ -1,4 +1,4 @@
package com.ejada.hmg.penguin
package com.cloudsolutions.HMGPatientApp.penguin
import android.app.Activity
import android.content.Context
@ -12,10 +12,10 @@ import android.view.ViewGroup
import android.widget.RelativeLayout
import android.widget.Toast
import androidx.annotation.RequiresApi
import com.ejada.hmg.PermissionManager.PermissionManager
import com.ejada.hmg.PermissionManager.PermissionResultReceiver
import com.ejada.hmg.MainActivity
import com.ejada.hmg.PermissionManager.PermissionHelper
import com.cloudsolutions.HMGPatientApp.PermissionManager.PermissionManager
import com.cloudsolutions.HMGPatientApp.PermissionManager.PermissionResultReceiver
import com.cloudsolutions.HMGPatientApp.MainActivity
import com.cloudsolutions.HMGPatientApp.PermissionManager.PermissionHelper
import com.peng.pennavmap.PlugAndPlayConfiguration
import com.peng.pennavmap.PlugAndPlaySDK
import com.peng.pennavmap.enums.InitializationErrorType
@ -25,7 +25,6 @@ import io.flutter.plugin.common.BinaryMessenger
import io.flutter.plugin.common.MethodCall
import io.flutter.plugin.common.MethodChannel
import io.flutter.plugin.platform.PlatformView
import com.ejada.hmg.penguin.PenguinNavigator
import com.peng.pennavmap.interfaces.PIEventsDelegate
import com.peng.pennavmap.interfaces.PILocationDelegate
import com.peng.pennavmap.interfaces.RefIdDelegate
@ -320,6 +319,7 @@ internal class PenguinView(
if(clinicId.isEmpty()) return
navigateTo(clinicId)
// navigateTo("3-1")
}
/**

@ -0,0 +1,402 @@
package com.cloudsolutions.HMGPatientApp.watch.samsung_watch
import android.os.Build
import android.util.Log
import androidx.annotation.RequiresApi
import com.cloudsolutions.HMGPatientApp.MainActivity
import com.cloudsolutions.HMGPatientApp.watch.samsung_watch.model.Vitals
import io.flutter.embedding.engine.FlutterEngine
import io.flutter.plugin.common.MethodCall
import com.samsung.android.sdk.health.data.HealthDataService
import com.samsung.android.sdk.health.data.HealthDataStore
import com.samsung.android.sdk.health.data.data.AggregatedData
import com.samsung.android.sdk.health.data.data.HealthDataPoint
import com.samsung.android.sdk.health.data.permission.AccessType
import com.samsung.android.sdk.health.data.permission.Permission
import com.samsung.android.sdk.health.data.request.DataType
import com.samsung.android.sdk.health.data.request.DataTypes
import com.samsung.android.sdk.health.data.request.LocalTimeFilter
import com.samsung.android.sdk.health.data.request.LocalTimeGroup
import com.samsung.android.sdk.health.data.request.LocalTimeGroupUnit
import com.samsung.android.sdk.health.data.request.Ordering
import com.samsung.android.sdk.health.data.response.DataResponse
import io.flutter.plugin.common.MethodChannel
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.SupervisorJob
import kotlinx.coroutines.cancel
import kotlinx.coroutines.launch
import java.time.LocalDateTime
import java.time.LocalTime
class SamsungWatch(
private var flutterEngine: FlutterEngine,
private var mainActivity: MainActivity
) {
private lateinit var channel: MethodChannel
private lateinit var dataStore: HealthDataStore
private val scope = CoroutineScope(SupervisorJob() + Dispatchers.IO)
private val TAG = "SamsungWatch"
private lateinit var vitals: MutableMap<String, List<Vitals>>
companion object {
private const val CHANNEL = "samsung_watch"
}
init{
create()
}
@RequiresApi(Build.VERSION_CODES.O)
fun create() {
Log.d(TAG, "create: is called")
// openTok = OpenTok(mainActivity, flutterEngine)
channel = MethodChannel(flutterEngine.dartExecutor.binaryMessenger, CHANNEL)
channel.setMethodCallHandler { call: MethodCall, result: MethodChannel.Result ->
when (call.method) {
"init" -> {
Log.d(TAG, "onMethodCall: init called")
dataStore = HealthDataService.getStore(mainActivity)
vitals = mutableMapOf()
result.success("initialized")
}
"getPermission"->{
if(!this::dataStore.isInitialized)
result.error("DataStoreNotInitialized", "Please call init before requesting permissions", null)
val permSet = setOf(
Permission.of(DataTypes.HEART_RATE, AccessType.READ),
Permission.of(DataTypes.STEPS, AccessType.READ),
Permission.of(DataTypes.BLOOD_OXYGEN, AccessType.READ),
Permission.of(DataTypes.ACTIVITY_SUMMARY, AccessType.READ),
Permission.of(DataTypes.SLEEP, AccessType.READ),
Permission.of(DataTypes.BODY_TEMPERATURE, AccessType.READ),
Permission.of(DataTypes.EXERCISE, AccessType.READ),
// Permission.of(DataTypes.SKIN_TEMPERATURE, AccessType.READ),
// Permission.of(DataTypes.NUTRITION, AccessType.READ),
)
scope.launch {
try {
var granted = dataStore.getGrantedPermissions(permSet)
if (granted.containsAll(permSet)) {
result.success("Permission Granted")
return@launch
}
granted = dataStore.requestPermissions(permSet, mainActivity)
if (granted.containsAll(permSet)) {
result.success("Permission Granted") // adapt result as needed
return@launch
}
result.error("PermissionError", "Permission Not Granted", null) // adapt result as needed
} catch (e: Exception) {
Log.e(TAG, "create: getPermission failed", e)
result.error("PermissionError", e.message, null)
}
}
}
"getHeartRate"->{
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val readRequest = DataTypes.HEART_RATE.readDataRequestBuilder
.setLocalTimeFilter(localTimeFilter)
.setOrdering(Ordering.DESC)
.build()
scope.launch {
val heartRateList = dataStore.readData(readRequest).dataList
processHeartVital(heartRateList)
Log.d("TAG"," the data is ${vitals}")
print("the data is ${vitals}")
result.success("Data is obtained")
}
}
"getSleepData" -> {
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val readRequest = DataTypes.SLEEP.readDataRequestBuilder
.setLocalTimeFilter(localTimeFilter)
.setOrdering(Ordering.ASC)
.build()
scope.launch {
val sleepData = dataStore.readData(readRequest).dataList
processSleepVital(sleepData)
print("the data is $vitals")
Log.d(TAG, "the data is $vitals")
result.success("Data is obtained")
}
}
"steps"->{
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val localTimeGroup = LocalTimeGroup.of(LocalTimeGroupUnit.HOURLY, 1)
val aggregateRequest = DataType.StepsType.TOTAL.requestBuilder
.setLocalTimeFilterWithGroup(localTimeFilter, localTimeGroup)
.setOrdering(Ordering.ASC)
.build()
scope.launch {
val steps = dataStore.aggregateData(aggregateRequest)
processStepsCount(steps)
print("the data is $vitals")
Log.d(TAG, "the data is $vitals")
result.success("Data is obtained")
}
}
"activitySummary"->{
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val localTimeGroup = LocalTimeGroup.of(LocalTimeGroupUnit.HOURLY, 1)
val readRequest = DataType.ActivitySummaryType.TOTAL_ACTIVE_CALORIES_BURNED
.requestBuilder
.setLocalTimeFilterWithGroup(localTimeFilter, localTimeGroup)
.setOrdering(Ordering.DESC)
.build()
scope.launch {
val activityResult = dataStore.aggregateData(readRequest).dataList
processActivity(activityResult)
Log.d("TAG"," the data is ${vitals}")
print("the data is ${vitals}")
result.success("Data is obtained")
}
// val readRequest = DataTypes.EXERCISE.readDataRequestBuilder
// .setLocalTimeFilter(localTimeFilter)
// .build()
//
// scope.launch{
// try {
// val readResult = dataStore.readData(readRequest)
// val dataPoints = readResult.dataList
//
// processActivity(dataPoints)
//
//
// } catch (e: Exception) {
// e.printStackTrace()
// }
// result.success("Data is obtained")
// }
}
"bloodOxygen"->{
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val readRequest = DataTypes.BLOOD_OXYGEN.readDataRequestBuilder
.setLocalTimeFilter(localTimeFilter)
.setOrdering(Ordering.DESC)
.build()
scope.launch {
val bloodOxygenList = dataStore.readData(readRequest).dataList
processBloodOxygen(bloodOxygenList)
Log.d("TAG"," the data is ${vitals}")
print("the data is ${vitals["bloodOxygen"]}")
result.success("Data is obtained")
}
}
"bodyTemperature"->{
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val readRequest = DataTypes.BODY_TEMPERATURE.readDataRequestBuilder
.setLocalTimeFilter(localTimeFilter)
.setOrdering(Ordering.DESC)
.build()
scope.launch {
val bodyTemperatureList = dataStore.readData(readRequest).dataList
processBodyTemperature(bodyTemperatureList)
Log.d("TAG"," the data is ${vitals}")
print("the data is ${vitals["bodyTemperature"]}")
result.success("Data is obtained")
}
}
"distance"->{
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val localTimeGroup = LocalTimeGroup.of(LocalTimeGroupUnit.HOURLY, 1)
val readRequest = DataType.ActivitySummaryType.TOTAL_DISTANCE.requestBuilder
.setLocalTimeFilterWithGroup(localTimeFilter, localTimeGroup)
.setOrdering(Ordering.DESC)
.build()
scope.launch {
val activityResult = dataStore.aggregateData(readRequest).dataList
processDistance(activityResult)
Log.d("TAG"," the data is ${vitals}")
print("the data is ${vitals}")
result.success("Data is obtained")
}
}
"retrieveData"->{
if(vitals.isEmpty()){
result.error("NoDataFound", "No Data was obtained", null)
return@setMethodCallHandler
}
result.success("""
{
"heartRate": ${vitals["heartRate"]},
"steps": ${vitals["steps"]},
"sleep": ${vitals["sleep"]},
"activity": ${vitals["activity"]},
"bloodOxygen": ${vitals["bloodOxygen"]},
"bodyTemperature": ${vitals["bodyTemperature"]},
"distance": ${vitals["distance"]}
}
""".trimIndent())
}
"closeCoroutineScope"->{
destroy()
result.success("Coroutine Scope Cancelled")
}
else -> {
result.notImplemented()
}
}
}
}
private fun CoroutineScope.processDistance(activityResult: List<AggregatedData<Float>>) {
vitals["distance"] = mutableListOf()
activityResult.forEach { stepData ->
val vitalData = Vitals().apply {
value = stepData.value.toString()
timeStamp = stepData.startTime.toString()
}
(vitals["distance"] as MutableList).add(vitalData)
}
}
private fun CoroutineScope.processBodyTemperature( bodyTemperatureList :List<HealthDataPoint>) {
vitals["bodyTemperature"] = mutableListOf()
bodyTemperatureList.forEach { stepData ->
val vitalData = Vitals().apply {
value = stepData.getValue(DataType.BodyTemperatureType.BODY_TEMPERATURE).toString()
timeStamp = stepData.endTime.toString()
}
(vitals["bodyTemperature"] as MutableList).add(vitalData)
}
}
private fun CoroutineScope.processBloodOxygen( bloodOxygenList :List<HealthDataPoint>) {
vitals["bloodOxygen"] = mutableListOf()
bloodOxygenList.forEach { stepData ->
val vitalData = Vitals().apply {
value = stepData.getValue(DataType.BloodOxygenType.OXYGEN_SATURATION).toString()
timeStamp = stepData.endTime.toString()
}
(vitals["bloodOxygen"] as MutableList).add(vitalData)
}
}
// private fun CoroutineScope.processActivity(activityResult: List<AggregatedData<Float>>) {
//
// vitals["activity"] = mutableListOf()
// activityResult.forEach { stepData ->
// val vitalData = Vitals().apply {
//
// value = stepData.value.toString()
// timeStamp = stepData.startTime.toString()
// }
// (vitals["activity"] as MutableList).add(vitalData)
// }
// }
private fun CoroutineScope.processActivity(activityResult: List<AggregatedData<Float>>) {
vitals["activity"] = mutableListOf()
activityResult.forEach { stepData ->
val vitalData = Vitals().apply {
value = stepData.value.toString()
timeStamp = stepData.startTime.toString()
}
(vitals["activity"] as MutableList).add(vitalData)
}
// dataPoints.forEach { dataPoint ->
// val sessions = dataPoint.getValue(DataType.ExerciseType.SESSIONS)
//
// sessions?.forEach { session ->
//
// val exerciseSessionCalories = session.calories
// val vitalData = Vitals().apply {
// value = exerciseSessionCalories.toString()
// timeStamp = session.startTime.toString()
// }
// (vitals["activity"] as MutableList).add(vitalData)
// }
// }
}
private fun CoroutineScope.processStepsCount(result: DataResponse<AggregatedData<Long>>) {
val stepCount = ArrayList<AggregatedData<Long>>()
var totalSteps: Long = 0
vitals["steps"] = mutableListOf()
result.dataList.forEach { stepData ->
val vitalData = Vitals().apply {
value = (stepData.value as Long).toString()
timeStamp = stepData.startTime.toString()
}
(vitals["steps"] as MutableList).add(vitalData)
}
}
private fun CoroutineScope.processSleepVital(sleepData: List<HealthDataPoint>) {
vitals["sleep"] = mutableListOf()
sleepData.forEach {
(vitals["sleep"] as MutableList).add(
Vitals().apply {
timeStamp = it.startTime.toString()
value = (it.getValue(DataType.SleepType.DURATION)?.toMillis().toString())
}
)
}
}
private suspend fun CoroutineScope.processHeartVital(
heartRateList: List<HealthDataPoint>,
) {
vitals["heartRate"] = mutableListOf()
heartRateList.forEach {
(vitals["heartRate"] as MutableList).add(processHeartRateData(it))
}
}
private fun processHeartRateData(heartRateData: HealthDataPoint) =
Vitals().apply {
heartRateData.getValue(DataType.HeartRateType.MAX_HEART_RATE)?.let {
value = it.toString()
}
timeStamp = heartRateData.startTime.toString()
}
fun destroy() {
scope.cancel()
}
}

@ -0,0 +1,13 @@
package com.cloudsolutions.HMGPatientApp.watch.samsung_watch.model
data class Vitals(
var value : String = "",
var timeStamp :String = ""
){
override fun toString(): String {
return """{
"value": "$value",
"timeStamp": "$timeStamp"}
""".trimIndent()
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 14 KiB

@ -0,0 +1,274 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.cloudsolutions.HMGPatientApp">
<!--
io.flutter.app.FlutterApplication is an android.app.Application that
calls FlutterMain.startInitialization(this); in its onCreate method.
In most cases you can leave this as-is, but you if you want to provide
additional functionality it is fine to subclass or reimplement
FlutterApplication and put your custom class here.
-->
<uses-permission
android:name="android.permission.ACTIVITY_RECOGNITION"
tools:node="remove" />
<uses-permission
android:name="android.permission.READ_PHONE_STATE"
tools:node="remove" /> <!-- <uses-permission android:name="android.permission.BLUETOOTH" tools:node="remove"/> -->
<!-- <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" tools:node="remove"/> -->
<!-- <uses-permission android:name="android.permission.BLUETOOTH_CONNECT" tools:node="remove"/> -->
<!-- <uses-permission android:name="android.permission.BLUETOOTH_SCAN" tools:node="remove"/> -->
<uses-permission
android:name="android.permission.BROADCAST_STICKY"
tools:node="remove" />
<uses-permission
android:name="com.google.android.gms.permission.AD_ID"
tools:node="remove" /> <!-- <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> -->
<uses-permission
android:name="android.permission.FOREGROUND_SERVICE"
tools:node="remove" />
<uses-permission
android:name="android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE"
tools:node="remove" />
<uses-permission
android:name="android.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION"
tools:node="remove" />
<uses-permission
android:name="android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK"
tools:node="remove" />
<uses-permission
android:name="android.permission.FOREGROUND_SERVICE_MICROPHONE"
tools:node="remove" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" tools:node="remove" />
<!-- Added by open_filex -->
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" tools:node="remove" />
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" tools:node="remove" />
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" tools:node="remove" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" tools:node="remove" />
<uses-permission
android:name="android.permission.ACCESS_BACKGROUND_LOCATION"
tools:node="remove" /> <!-- <uses-permission android:name="android.permission.INTERNET" /> -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
<uses-permission android:name="android.permission.HIGH_SAMPLING_RATE_SENSORS" />
<uses-feature android:name="android.hardware.camera.any" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
<uses-feature
android:name="android.hardware.sensor.stepcounter"
android:required="false"
tools:node="replace" />
<uses-feature
android:name="android.hardware.sensor.stepdetector"
android:required="false"
tools:node="replace" />
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-feature
android:name="android.hardware.camera"
android:required="true" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_CALENDAR" />
<uses-permission android:name="android.permission.WRITE_CALENDAR" />
<uses-permission android:name="android.permission.VIDEO_CAPTURE" />
<uses-permission android:name="android.permission.AUDIO_CAPTURE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_PHONE_CALL" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.MANAGE_OWN_CALLS" />
<uses-feature
android:name="android.hardware.location.network"
android:required="false" />
<uses-feature
android:name="android.hardware.location.gps"
android:required="false" />
<uses-permission android:name="com.huawei.appmarket.service.commondata.permission.GET_COMMON_DATA" /> <!-- <uses-permission android:name="android.permission.HIGH_SAMPLING_RATE_SENSORS" /> -->
<!-- Wifi Permissions -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> <!-- <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/> -->
<!-- Detect Reboot Permission -->
<!-- <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/> -->
<queries>
<intent>
<action android:name="android.speech.RecognitionService" />
</intent>
<package android:name="com.whatsapp" />
<package android:name="com.whatsapp.w4b" />
</queries>
<application
android:foregroundServiceType="mediaPlayback|connectedDevice|dataSync"
android:name=".Application"
android:allowBackup="false"
android:icon="@mipmap/ic_launcher_local"
android:label="Dr. Alhabib Beta"
android:screenOrientation="sensorPortrait"
android:showOnLockScreen="true"
android:usesCleartextTraffic="true"
tools:replace="android:label">
<meta-data
android:name="com.huawei.hms.client.appid"
android:value="102857389"/>
<!-- <activity-->
<!-- android:name="com.cloud.hmg_patient_app.whatsapp.WhatsAppCodeActivity"-->
<!-- android:exported="true"-->
<!-- android:enabled="true"-->
<!-- android:launchMode="standard"-->
<!-- >-->
<!-- <intent-filter>-->
<!-- <action android:name="com.whatsapp.otp.OTP_RETRIEVED" />-->
<!-- </intent-filter>-->
<!-- </activity>-->
<meta-data
android:name="push_kit_auto_init_enabled"
android:value="true" />
<activity
android:name=".MainActivity"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:enabled="true"
android:exported="true"
android:hardwareAccelerated="true"
android:launchMode="singleTop"
android:showOnLockScreen="true"
android:theme="@style/LaunchTheme"
android:windowSoftInputMode="adjustResize"
tools:node="merge">
<!--
Specifies an Android theme to apply to this Activity as soon as
the Android process has started. This theme is visible to the user
while the Flutter UI initializes. After that, this theme continues
to determine the Window background behind the Flutter UI.
-->
<meta-data
android:name="io.flutter.embedding.android.NormalTheme"
android:resource="@style/NormalTheme" />
<!--
Displays an Android View that continues showing the launch screen
Drawable until Flutter paints its first frame, then this splash
screen fades out. A splash screen is useful to avoid any visual
gap between the end of Android's launch screen and the painting of
Flutter's first frame.
-->
<meta-data
android:name="io.flutter.embedding.android.SplashScreenDrawable"
android:resource="@drawable/launch_background" />
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="FLUTTER_NOTIFICATION_CLICK" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity> <!-- <receiver android:name="com.dexterous.flutterlocalnotifications.ScheduledNotificationBootReceiver" android:exported="true"> -->
<!-- <intent-filter> -->
<!-- <action android:name="android.intent.action.BOOT_COMPLETED"/> -->
<!-- <action android:name="android.intent.action.MY_PACKAGE_REPLACED"/> -->
<!-- </intent-filter> -->
<!-- </receiver> -->
<!-- Geofencing -->
<!-- <service-->
<!-- android:name=".geofence.intent_receivers.GeofenceTransitionsJobIntentService"-->
<!-- android:exported="true"-->
<!-- android:permission="android.permission.BIND_JOB_SERVICE" />-->
<!-- <receiver-->
<!-- android:name=".geofence.intent_receivers.GeofenceBroadcastReceiver"-->
<!-- android:enabled="true"-->
<!-- android:exported="false" />-->
<!-- <receiver-->
<!-- android:name=".geofence.intent_receivers.GeofencingRebootBroadcastReceiver"-->
<!-- android:enabled="true"-->
<!-- android:exported="false">-->
<!-- <intent-filter>-->
<!-- <action android:name="android.intent.action.BOOT_COMPLETED" />-->
<!-- <action android:name="android.intent.action.MY_PACKAGE_REPLACED" />-->
<!-- </intent-filter>-->
<!-- </receiver>-->
<!-- <receiver-->
<!-- android:name=".geofence.intent_receivers.LocationProviderChangeReceiver"-->
<!-- android:exported="false">-->
<!-- <intent-filter>-->
<!-- <action android:name="android.location.PROVIDERS_CHANGED" />-->
<!-- </intent-filter>-->
<!-- </receiver>-->
<!-- <service-->
<!-- android:name=".geofence.intent_receivers.ReregisterGeofenceJobService"-->
<!-- android:exported="true"-->
<!-- android:permission="android.permission.BIND_JOB_SERVICE" /> &lt;!&ndash; Geofencing &ndash;&gt;-->
<!--
Huawei Push Notifications
Set push kit auto enable to true (for obtaining the token on initialize)
-->
<!-- <meta-data -->
<!-- android:name="push_kit_auto_init_enabled" -->
<!-- android:value="true" /> -->
<!-- These receivers are for sending scheduled local notifications -->
<!-- <receiver-->
<!-- android:name="com.huawei.hms.flutter.push.receiver.local.HmsLocalNotificationBootEventReceiver"-->
<!-- android:exported="false">-->
<!-- <intent-filter>-->
<!-- <action android:name="android.intent.action.BOOT_COMPLETED" />-->
<!-- </intent-filter>-->
<!-- </receiver>-->
<!-- <receiver-->
<!-- android:name="com.huawei.hms.flutter.push.receiver.local.HmsLocalNotificationScheduledPublisher"-->
<!-- android:enabled="true"-->
<!-- android:exported="false" />-->
<!-- <receiver-->
<!-- android:name="com.huawei.hms.flutter.push.receiver.BackgroundMessageBroadcastReceiver"-->
<!-- android:enabled="true"-->
<!-- android:exported="true">-->
<!-- <intent-filter>-->
<!-- <action android:name="com.huawei.hms.flutter.push.receiver.BACKGROUND_REMOTE_MESSAGE" />-->
<!-- </intent-filter>-->
<!-- </receiver> &lt;!&ndash; Huawei Push Notifications &ndash;&gt;-->
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="AIzaSyB6TERnxIr0yJ3qG4ULBZbu0sAD4tGqtng" />
<!--
Don't delete the meta-data below.
This is used by the Flutter tool to generate GeneratedPluginRegistrant.java
-->
<meta-data
android:name="flutterEmbedding"
android:value="2" />
</application>
</manifest>

@ -0,0 +1,84 @@
package com.ejada.hmg
import android.content.Intent
import android.content.pm.PackageManager
import android.os.Build
import android.util.Log
import android.view.WindowManager
import androidx.annotation.NonNull
import androidx.annotation.Nullable
import androidx.annotation.RequiresApi
import com.ejada.hmg.penguin.PenguinInPlatformBridge
import com.ejada.hmg.watch.huawei.HuaweiWatch
import com.ejada.hmg.watch.huawei.samsung_watch.SamsungWatch
import com.huawei.hms.hihealth.result.HealthKitAuthResult
import com.huawei.hms.support.api.entity.auth.Scope
import io.flutter.embedding.android.FlutterFragmentActivity
import io.flutter.embedding.engine.FlutterEngine
import io.flutter.plugins.GeneratedPluginRegistrant
class MainActivity: FlutterFragmentActivity() {
private var huaweiWatch : HuaweiWatch? = null
@RequiresApi(Build.VERSION_CODES.O)
override fun configureFlutterEngine(@NonNull flutterEngine: FlutterEngine) {
GeneratedPluginRegistrant.registerWith(flutterEngine);
// Create Flutter Platform Bridge
this.window.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED or WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON or WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD or WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON)
PenguinInPlatformBridge(flutterEngine, this).create()
SamsungWatch(flutterEngine, this)
huaweiWatch = HuaweiWatch(flutterEngine, this)
}
override fun onRequestPermissionsResult(
requestCode: Int,
permissions: Array<out String>,
grantResults: IntArray
) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults)
val granted = grantResults.all { it == PackageManager.PERMISSION_GRANTED }
val intent = Intent("PERMISSION_RESULT_ACTION").apply {
putExtra("PERMISSION_GRANTED", granted)
}
sendBroadcast(intent)
// Log the request code and permission results
Log.d("PermissionsResult", "Request Code: $requestCode")
Log.d("PermissionsResult", "Permissions: ${permissions.joinToString()}")
Log.d("PermissionsResult", "Grant Results: ${grantResults.joinToString()}")
}
override fun onResume() {
super.onResume()
}
// override fun onActivityResult(requestCode: Int, resultCode: Int, @Nullable data: Intent?) {
// super.onActivityResult(requestCode, resultCode, data)
//
// // Process only the response result of the authorization process.
// if (requestCode == 1002) {
// // Obtain the authorization response result from the intent.
// val result: HealthKitAuthResult? = huaweiWatch?.mSettingController?.parseHealthKitAuthResultFromIntent(data)
// if (result == null) {
// Log.w(huaweiWatch?.TAG, "authorization fail")
// return
// }
//
// if (result.isSuccess) {
// Log.i(huaweiWatch?.TAG, "authorization success")
// if (result.getAuthAccount() != null && result.authAccount.authorizedScopes != null) {
// val authorizedScopes: MutableSet<Scope?> = result.authAccount.authorizedScopes
// if(authorizedScopes.isNotEmpty()) {
// huaweiWatch?.getHealthAppAuthorization()
// }
// }
// } else {
// Log.w("MainActivty", "authorization fail, errorCode:" + result.getErrorCode())
// }
// }
// }
}

@ -0,0 +1,402 @@
package com.ejada.hmg.watch.huawei.samsung_watch
import com.ejada.hmg.MainActivity
import android.os.Build
import android.util.Log
import androidx.annotation.RequiresApi
import io.flutter.embedding.engine.FlutterEngine
import io.flutter.plugin.common.MethodCall
import com.ejada.hmg.watch.huawei.samsung_watch.model.Vitals
import com.samsung.android.sdk.health.data.HealthDataService
import com.samsung.android.sdk.health.data.HealthDataStore
import com.samsung.android.sdk.health.data.data.AggregatedData
import com.samsung.android.sdk.health.data.data.HealthDataPoint
import com.samsung.android.sdk.health.data.permission.AccessType
import com.samsung.android.sdk.health.data.permission.Permission
import com.samsung.android.sdk.health.data.request.DataType
import com.samsung.android.sdk.health.data.request.DataTypes
import com.samsung.android.sdk.health.data.request.LocalTimeFilter
import com.samsung.android.sdk.health.data.request.LocalTimeGroup
import com.samsung.android.sdk.health.data.request.LocalTimeGroupUnit
import com.samsung.android.sdk.health.data.request.Ordering
import com.samsung.android.sdk.health.data.response.DataResponse
import io.flutter.plugin.common.MethodChannel
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.SupervisorJob
import kotlinx.coroutines.cancel
import kotlinx.coroutines.launch
import java.time.LocalDateTime
import java.time.LocalTime
class SamsungWatch(
private var flutterEngine: FlutterEngine,
private var mainActivity: MainActivity
) {
private lateinit var channel: MethodChannel
private lateinit var dataStore: HealthDataStore
private val scope = CoroutineScope(SupervisorJob() + Dispatchers.IO)
private val TAG = "SamsungWatch"
private lateinit var vitals: MutableMap<String, List<Vitals>>
companion object {
private const val CHANNEL = "samsung_watch"
}
init{
create()
}
@RequiresApi(Build.VERSION_CODES.O)
fun create() {
Log.d(TAG, "create: is called")
// openTok = OpenTok(mainActivity, flutterEngine)
channel = MethodChannel(flutterEngine.dartExecutor.binaryMessenger, CHANNEL)
channel.setMethodCallHandler { call: MethodCall, result: MethodChannel.Result ->
when (call.method) {
"init" -> {
Log.d(TAG, "onMethodCall: init called")
dataStore = HealthDataService.getStore(mainActivity)
vitals = mutableMapOf()
result.success("initialized")
}
"getPermission"->{
if(!this::dataStore.isInitialized)
result.error("DataStoreNotInitialized", "Please call init before requesting permissions", null)
val permSet = setOf(
Permission.of(DataTypes.HEART_RATE, AccessType.READ),
Permission.of(DataTypes.STEPS, AccessType.READ),
Permission.of(DataTypes.BLOOD_OXYGEN, AccessType.READ),
Permission.of(DataTypes.ACTIVITY_SUMMARY, AccessType.READ),
Permission.of(DataTypes.SLEEP, AccessType.READ),
Permission.of(DataTypes.BODY_TEMPERATURE, AccessType.READ),
Permission.of(DataTypes.EXERCISE, AccessType.READ),
// Permission.of(DataTypes.SKIN_TEMPERATURE, AccessType.READ),
// Permission.of(DataTypes.NUTRITION, AccessType.READ),
)
scope.launch {
try {
var granted = dataStore.getGrantedPermissions(permSet)
if (granted.containsAll(permSet)) {
result.success("Permission Granted")
return@launch
}
granted = dataStore.requestPermissions(permSet, mainActivity)
if (granted.containsAll(permSet)) {
result.success("Permission Granted") // adapt result as needed
return@launch
}
result.error("PermissionError", "Permission Not Granted", null) // adapt result as needed
} catch (e: Exception) {
Log.e(TAG, "create: getPermission failed", e)
result.error("PermissionError", e.message, null)
}
}
}
"getHeartRate"->{
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val readRequest = DataTypes.HEART_RATE.readDataRequestBuilder
.setLocalTimeFilter(localTimeFilter)
.setOrdering(Ordering.DESC)
.build()
scope.launch {
val heartRateList = dataStore.readData(readRequest).dataList
processHeartVital(heartRateList)
Log.d("TAG"," the data is ${vitals}")
print("the data is ${vitals}")
result.success("Data is obtained")
}
}
"getSleepData" -> {
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val readRequest = DataTypes.SLEEP.readDataRequestBuilder
.setLocalTimeFilter(localTimeFilter)
.setOrdering(Ordering.ASC)
.build()
scope.launch {
val sleepData = dataStore.readData(readRequest).dataList
processSleepVital(sleepData)
print("the data is $vitals")
Log.d(TAG, "the data is $vitals")
result.success("Data is obtained")
}
}
"steps"->{
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val localTimeGroup = LocalTimeGroup.of(LocalTimeGroupUnit.HOURLY, 1)
val aggregateRequest = DataType.StepsType.TOTAL.requestBuilder
.setLocalTimeFilterWithGroup(localTimeFilter, localTimeGroup)
.setOrdering(Ordering.ASC)
.build()
scope.launch {
val steps = dataStore.aggregateData(aggregateRequest)
processStepsCount(steps)
print("the data is $vitals")
Log.d(TAG, "the data is $vitals")
result.success("Data is obtained")
}
}
"activitySummary"->{
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val localTimeGroup = LocalTimeGroup.of(LocalTimeGroupUnit.HOURLY, 1)
val readRequest = DataType.ActivitySummaryType.TOTAL_ACTIVE_CALORIES_BURNED
.requestBuilder
.setLocalTimeFilterWithGroup(localTimeFilter, localTimeGroup)
.setOrdering(Ordering.DESC)
.build()
scope.launch {
val activityResult = dataStore.aggregateData(readRequest).dataList
processActivity(activityResult)
Log.d("TAG"," the data is ${vitals}")
print("the data is ${vitals}")
result.success("Data is obtained")
}
// val readRequest = DataTypes.EXERCISE.readDataRequestBuilder
// .setLocalTimeFilter(localTimeFilter)
// .build()
//
// scope.launch{
// try {
// val readResult = dataStore.readData(readRequest)
// val dataPoints = readResult.dataList
//
// processActivity(dataPoints)
//
//
// } catch (e: Exception) {
// e.printStackTrace()
// }
// result.success("Data is obtained")
// }
}
"bloodOxygen"->{
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val readRequest = DataTypes.BLOOD_OXYGEN.readDataRequestBuilder
.setLocalTimeFilter(localTimeFilter)
.setOrdering(Ordering.DESC)
.build()
scope.launch {
val bloodOxygenList = dataStore.readData(readRequest).dataList
processBloodOxygen(bloodOxygenList)
Log.d("TAG"," the data is ${vitals}")
print("the data is ${vitals["bloodOxygen"]}")
result.success("Data is obtained")
}
}
"bodyTemperature"->{
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val readRequest = DataTypes.BODY_TEMPERATURE.readDataRequestBuilder
.setLocalTimeFilter(localTimeFilter)
.setOrdering(Ordering.DESC)
.build()
scope.launch {
val bodyTemperatureList = dataStore.readData(readRequest).dataList
processBodyTemperature(bodyTemperatureList)
Log.d("TAG"," the data is ${vitals}")
print("the data is ${vitals["bodyTemperature"]}")
result.success("Data is obtained")
}
}
"distance"->{
val dateTime = LocalDateTime.now().with(LocalTime.MIDNIGHT).minusDays(365)
val localTimeFilter = LocalTimeFilter.of(dateTime, LocalDateTime.now())
val localTimeGroup = LocalTimeGroup.of(LocalTimeGroupUnit.HOURLY, 1)
val readRequest = DataType.ActivitySummaryType.TOTAL_DISTANCE.requestBuilder
.setLocalTimeFilterWithGroup(localTimeFilter, localTimeGroup)
.setOrdering(Ordering.DESC)
.build()
scope.launch {
val activityResult = dataStore.aggregateData(readRequest).dataList
processDistance(activityResult)
Log.d("TAG"," the data is ${vitals}")
print("the data is ${vitals}")
result.success("Data is obtained")
}
}
"retrieveData"->{
if(vitals.isEmpty()){
result.error("NoDataFound", "No Data was obtained", null)
return@setMethodCallHandler
}
result.success("""
{
"heartRate": ${vitals["heartRate"]},
"steps": ${vitals["steps"]},
"sleep": ${vitals["sleep"]},
"activity": ${vitals["activity"]},
"bloodOxygen": ${vitals["bloodOxygen"]},
"bodyTemperature": ${vitals["bodyTemperature"]},
"distance": ${vitals["distance"]}
}
""".trimIndent())
}
"closeCoroutineScope"->{
destroy()
result.success("Coroutine Scope Cancelled")
}
else -> {
result.notImplemented()
}
}
}
}
private fun CoroutineScope.processDistance(activityResult: List<AggregatedData<Float>>) {
vitals["distance"] = mutableListOf()
activityResult.forEach { stepData ->
val vitalData = Vitals().apply {
value = stepData.value.toString()
timeStamp = stepData.startTime.toString()
}
(vitals["distance"] as MutableList).add(vitalData)
}
}
private fun CoroutineScope.processBodyTemperature( bodyTemperatureList :List<HealthDataPoint>) {
vitals["bodyTemperature"] = mutableListOf()
bodyTemperatureList.forEach { stepData ->
val vitalData = Vitals().apply {
value = stepData.getValue(DataType.BodyTemperatureType.BODY_TEMPERATURE).toString()
timeStamp = stepData.endTime.toString()
}
(vitals["bodyTemperature"] as MutableList).add(vitalData)
}
}
private fun CoroutineScope.processBloodOxygen( bloodOxygenList :List<HealthDataPoint>) {
vitals["bloodOxygen"] = mutableListOf()
bloodOxygenList.forEach { stepData ->
val vitalData = Vitals().apply {
value = stepData.getValue(DataType.BloodOxygenType.OXYGEN_SATURATION).toString()
timeStamp = stepData.endTime.toString()
}
(vitals["bloodOxygen"] as MutableList).add(vitalData)
}
}
// private fun CoroutineScope.processActivity(activityResult: List<AggregatedData<Float>>) {
//
// vitals["activity"] = mutableListOf()
// activityResult.forEach { stepData ->
// val vitalData = Vitals().apply {
//
// value = stepData.value.toString()
// timeStamp = stepData.startTime.toString()
// }
// (vitals["activity"] as MutableList).add(vitalData)
// }
// }
private fun CoroutineScope.processActivity(activityResult: List<AggregatedData<Float>>) {
vitals["activity"] = mutableListOf()
activityResult.forEach { stepData ->
val vitalData = Vitals().apply {
value = stepData.value.toString()
timeStamp = stepData.startTime.toString()
}
(vitals["activity"] as MutableList).add(vitalData)
}
// dataPoints.forEach { dataPoint ->
// val sessions = dataPoint.getValue(DataType.ExerciseType.SESSIONS)
//
// sessions?.forEach { session ->
//
// val exerciseSessionCalories = session.calories
// val vitalData = Vitals().apply {
// value = exerciseSessionCalories.toString()
// timeStamp = session.startTime.toString()
// }
// (vitals["activity"] as MutableList).add(vitalData)
// }
// }
}
private fun CoroutineScope.processStepsCount(result: DataResponse<AggregatedData<Long>>) {
val stepCount = ArrayList<AggregatedData<Long>>()
var totalSteps: Long = 0
vitals["steps"] = mutableListOf()
result.dataList.forEach { stepData ->
val vitalData = Vitals().apply {
value = (stepData.value as Long).toString()
timeStamp = stepData.startTime.toString()
}
(vitals["steps"] as MutableList).add(vitalData)
}
}
private fun CoroutineScope.processSleepVital(sleepData: List<HealthDataPoint>) {
vitals["sleep"] = mutableListOf()
sleepData.forEach {
(vitals["sleep"] as MutableList).add(
Vitals().apply {
timeStamp = it.startTime.toString()
value = (it.getValue(DataType.SleepType.DURATION)?.toMillis().toString())
}
)
}
}
private suspend fun CoroutineScope.processHeartVital(
heartRateList: List<HealthDataPoint>,
) {
vitals["heartRate"] = mutableListOf()
heartRateList.forEach {
(vitals["heartRate"] as MutableList).add(processHeartRateData(it))
}
}
private fun processHeartRateData(heartRateData: HealthDataPoint) =
Vitals().apply {
heartRateData.getValue(DataType.HeartRateType.MAX_HEART_RATE)?.let {
value = it.toString()
}
timeStamp = heartRateData.startTime.toString()
}
fun destroy() {
scope.cancel()
}
}

@ -0,0 +1,13 @@
package com.ejada.hmg.watch.huawei.samsung_watch.model
data class Vitals(
var value : String = "",
var timeStamp :String = ""
){
override fun toString(): String {
return """{
"value": "$value",
"timeStamp": "$timeStamp"}
""".trimIndent()
}
}

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Modify this file to customize your launch splash screen -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="?android:colorBackground" />
<!-- You can insert your own image assets here -->
<!-- <item>
<bitmap
android:gravity="center"
android:src="@mipmap/launch_image" />
</item> -->
</layer-list>

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Modify this file to customize your launch splash screen -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@android:color/white" />
<!-- You can insert your own image assets here -->
<!-- <item>
<bitmap
android:gravity="center"
android:src="@mipmap/launch_image" />
</item> -->
</layer-list>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1021 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.cloud.diplomaticquarterapp.whatsapp.WhatsAppCodeActivity">
</androidx.constraintlayout.widget.ConstraintLayout>

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:gravity="center_horizontal"
android:layout_gravity="center_horizontal">
<FrameLayout
android:id="@+id/publisher_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FF9800" />
</LinearLayout>

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:gravity="center_horizontal"
android:layout_gravity="center_horizontal">
<FrameLayout
android:id="@+id/subscriber_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#3F51B5" />
<TextView
android:text="Remote"
android:textColor="#FFFFFF"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</LinearLayout>

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

@ -0,0 +1,3 @@
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools"
tools:keep="@drawable/*,@raw/slow_spring_board" />

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is on -->
<style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar">
<!-- Show a splash screen on the activity. Automatically removed when
the Flutter engine draws its first frame -->
<item name="android:windowBackground">@drawable/launch_background</item>
</style>
<!-- Theme applied to the Android Window as soon as the process has started.
This theme determines the color of the Android Window while your
Flutter UI initializes, as well as behind your Flutter UI while its
running.
This Theme is only used starting with V2 of Flutter's Android embedding. -->
<style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar">
<item name="android:windowBackground">?android:colorBackground</item>
</style>
</resources>

@ -0,0 +1,3 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- <string name="mapbox_access_token" translatable="false" tools:ignore="UnusedResources">sk.eyJ1IjoicndhaWQiLCJhIjoiY2x6NWo0bTMzMWZodzJrcGZpemYzc3Z4dSJ9.uSSZuwNSGCcCdPAiORECmg</string>-->
</resources>

@ -0,0 +1,23 @@
<resources>
<string name="app_name">HMG Patient App</string>
<string name="geofence_unknown_error">
Unknown error: the Geofence service is not available now.
</string>
<string name="geofence_not_available">
Geofence service is not available now. Go to Settings>Location>Mode and choose High accuracy.
</string>
<string name="geofence_too_many_geofences">
Your app has registered too many geofences.
</string>
<string name="geofence_too_many_pending_intents">
You have provided too many PendingIntents to the addGeofences() call.
</string>
<string name="GEOFENCE_INSUFFICIENT_LOCATION_PERMISSION">
App do not have permission to access location service.
</string>
<string name="GEOFENCE_REQUEST_TOO_FREQUENT">
Geofence requests happened too frequently.
</string>
<string name="mapbox_access_token" translatable="false">pk.eyJ1IjoicndhaWQiLCJhIjoiY2x5cGo4aHNjMGNsbTJyc2djempobGQxaSJ9.RCaC6WrUt4A4YnZNfxnONQ</string>
</resources>

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- Theme applied to the Android Window while the process is starting -->
<style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar">
<!-- Show a splash screen on the activity. Automatically removed when
Flutter draws its first frame -->
<item name="android:windowBackground">@drawable/launch_background</item>
</style>
<!-- Theme applied to the Android Window as soon as the process has started.
This theme determines the color of the Android Window while your
Flutter UI initializes, as well as behind your Flutter UI while its
running.
This Theme is only used starting with V2 of Flutter's Android embedding. -->
<style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar">
<item name="android:windowBackground">@android:color/white</item>
</style>
</resources>

File diff suppressed because one or more lines are too long

@ -3,9 +3,45 @@
"project_number": "815750722565",
"firebase_url": "https://api-project-815750722565.firebaseio.com",
"project_id": "api-project-815750722565",
"storage_bucket": "api-project-815750722565.appspot.com"
"storage_bucket": "api-project-815750722565.firebasestorage.app"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:815750722565:android:fa20b3a2401e08633c186c",
"android_client_info": {
"package_name": "com.cloudsolutions.HMGPatientApp"
}
},
"oauth_client": [
{
"client_id": "815750722565-3a0gc7neins0eoahdrimrfksk0sqice8.apps.googleusercontent.com",
"client_type": 3
}
],
"api_key": [
{
"current_key": "AIzaSyDZDeWcBlRE3YfJWYt_DCiToVnANfaj8qg"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": [
{
"client_id": "815750722565-3a0gc7neins0eoahdrimrfksk0sqice8.apps.googleusercontent.com",
"client_type": 3
},
{
"client_id": "815750722565-0cq9366orvsk5ipivq6lijcj56u03fr7.apps.googleusercontent.com",
"client_type": 2,
"ios_info": {
"bundle_id": "com.void.demo"
}
}
]
}
}
},
{
"client_info": {
"mobilesdk_app_id": "1:815750722565:android:62281cd3e5df4063",

@ -1,3 +1,10 @@
org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError
android.useAndroidX=true
#org.gradle.jvmargs=-xmx4608m
android.enableR8=true
android.enableJetifier=true
android.useDeprecatedNdk=true
org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.daemon=true
org.gradle.parallel=true
org.gradle.configureondemand=true
android.useAndroidX=true
android.enableImpeller=false

@ -19,6 +19,9 @@ pluginManagement {
plugins {
id("dev.flutter.flutter-plugin-loader") version "1.0.0"
// id("com.android.application") version "8.9.3" apply false
// START: FlutterFire Configuration
id("com.google.gms.google-services") version("4.4.1") apply false
// END: FlutterFire Configuration
id("com.android.application") version "8.9.3" apply false
id("org.jetbrains.kotlin.android") version "2.1.0" apply false
}

File diff suppressed because one or more lines are too long

@ -1,767 +1 @@
{
"nm": "HDFC Success",
"h": 512,
"w": 512,
"meta": {
"g": "LottieFiles AE 1.0.0"
},
"layers": [
{
"ty": 4,
"nm": "check",
"sr": 1,
"st": 0,
"op": 240,
"ip": 0,
"hasMask": false,
"ao": 0,
"ks": {
"a": {
"a": 0,
"k": [
0,
0,
0
]
},
"s": {
"a": 0,
"k": [
100,
100,
100
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
256,
256,
0
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
},
"ef": [],
"shapes": [
{
"ty": "gr",
"nm": "Shape 1",
"it": [
{
"ty": "sh",
"nm": "Path 1",
"d": 1,
"ks": {
"a": 0,
"k": {
"c": false,
"i": [
[
0,
0
],
[
0,
0
],
[
0,
0
]
],
"o": [
[
0,
0
],
[
0,
0
],
[
0,
0
]
],
"v": [
[
-82.5,
4.5
],
[
-31,
55
],
[
73,
-52.5
]
]
}
}
},
{
"ty": "tm",
"nm": "Trim Paths 1",
"e": {
"a": 1,
"k": [
{
"o": {
"x": 1,
"y": 0.076
},
"i": {
"x": 0.667,
"y": 1
},
"s": [
0
],
"t": 60
},
{
"s": [
100
],
"t": 85
}
]
},
"o": {
"a": 0,
"k": 0
},
"s": {
"a": 0,
"k": 0
},
"m": 1
},
{
"ty": "st",
"nm": "Stroke 1",
"lc": 2,
"lj": 2,
"ml": 1,
"o": {
"a": 0,
"k": 100
},
"w": {
"a": 0,
"k": 30
},
"c": {
"a": 0,
"k": [
1,
1,
1
]
}
},
{
"ty": "tr",
"a": {
"a": 0,
"k": [
0,
0
]
},
"s": {
"a": 0,
"k": [
100,
100
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
0,
0
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
}
]
}
],
"ind": 1
},
{
"ty": 4,
"nm": "Shape Layer 2",
"sr": 1,
"st": 0,
"op": 240,
"ip": 0,
"hasMask": false,
"ao": 0,
"ks": {
"a": {
"a": 0,
"k": [
0,
0,
0
]
},
"s": {
"a": 1,
"k": [
{
"o": {
"x": 0.656,
"y": 0.872
},
"i": {
"x": 0,
"y": 0.98
},
"s": [
0,
0,
100
],
"t": 20
},
{
"s": [
150,
150,
100
],
"t": 60
}
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
256,
257.86,
0
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
},
"ef": [],
"shapes": [
{
"ty": "gr",
"nm": "Ellipse 1",
"it": [
{
"ty": "el",
"nm": "Ellipse Path 1",
"d": 1,
"p": {
"a": 0,
"k": [
0,
0
]
},
"s": {
"a": 0,
"k": [
236,
236
]
}
},
{
"ty": "fl",
"nm": "Fill 1",
"c": {
"a": 0,
"k": [
0.094,
0.761,
0.451
]
},
"r": 1,
"o": {
"a": 0,
"k": 100
}
},
{
"ty": "tr",
"a": {
"a": 0,
"k": [
0,
0
]
},
"s": {
"a": 0,
"k": [
100,
100
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
0,
-3
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
}
]
}
],
"ind": 2
},
{
"ty": 4,
"nm": "Shape Layer 1",
"sr": 1,
"st": 0,
"op": 240,
"ip": 0,
"hasMask": false,
"ao": 0,
"ks": {
"a": {
"a": 0,
"k": [
0,
0,
0
]
},
"s": {
"a": 1,
"k": [
{
"o": {
"x": 0.477,
"y": 0.587
},
"i": {
"x": 0,
"y": 0.999
},
"s": [
0,
0,
100
],
"t": 10
},
{
"o": {
"x": 0.167,
"y": 0.167
},
"i": {
"x": 0.833,
"y": 0.833
},
"s": [
150,
150,
100
],
"t": 50
},
{
"o": {
"x": 0.167,
"y": 0
},
"i": {
"x": 0.833,
"y": 1
},
"s": [
150,
150,
100
],
"t": 76
},
{
"s": [
210,
210,
100
],
"t": 123
}
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
256,
257.86,
0
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 1,
"k": [
{
"o": {
"x": 0.912,
"y": 0.073
},
"i": {
"x": 0.626,
"y": 0.729
},
"s": [
100
],
"t": 76
},
{
"s": [
0
],
"t": 119
}
]
}
},
"ef": [],
"shapes": [
{
"ty": "gr",
"nm": "Ellipse 1",
"it": [
{
"ty": "el",
"nm": "Ellipse Path 1",
"d": 1,
"p": {
"a": 0,
"k": [
0,
0
]
},
"s": {
"a": 0,
"k": [
236,
236
]
}
},
{
"ty": "st",
"nm": "Stroke 1",
"lc": 1,
"lj": 1,
"ml": 4,
"o": {
"a": 0,
"k": 100
},
"w": {
"a": 0,
"k": 2
},
"c": {
"a": 0,
"k": [
1,
1,
1
]
}
},
{
"ty": "fl",
"nm": "Fill 1",
"c": {
"a": 0,
"k": [
0.784,
0.945,
0.878
]
},
"r": 1,
"o": {
"a": 0,
"k": 100
}
},
{
"ty": "tr",
"a": {
"a": 0,
"k": [
0,
0
]
},
"s": {
"a": 0,
"k": [
100,
100
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
0,
-3
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
}
]
}
],
"ind": 3
},
{
"ty": 4,
"nm": "BG",
"sr": 1,
"st": 0,
"op": 240,
"ip": 0,
"hasMask": false,
"ao": 0,
"ks": {
"a": {
"a": 0,
"k": [
0,
0,
0
]
},
"s": {
"a": 0,
"k": [
100,
100,
100
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
256,
256,
0
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
},
"ef": [],
"shapes": [
{
"ty": "gr",
"nm": "Rectangle 1",
"it": [
{
"ty": "rc",
"nm": "Rectangle Path 1",
"d": 1,
"p": {
"a": 0,
"k": [
0,
0
]
},
"r": {
"a": 0,
"k": 0
},
"s": {
"a": 0,
"k": [
554,
556
]
}
},
{
"ty": "fl",
"nm": "Fill 1",
"c": {
"a": 0,
"k": [
0.972,
0.972,
0.972
]
},
"r": 1,
"o": {
"a": 0,
"k": 100
}
},
{
"ty": "tr",
"a": {
"a": 0,
"k": [
0,
0
]
},
"s": {
"a": 0,
"k": [
100,
100
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
-1,
6
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
}
]
}
],
"ind": 4
}
],
"v": "4.8.0",
"fr": 60,
"op": 130,
"ip": 0,
"assets": []
}
{"nm":"Main Scene","ddd":0,"h":512,"w":512,"meta":{"g":"@lottiefiles/creator 1.75.0"},"layers":[{"ty":4,"nm":"check","sr":1,"st":0,"op":240,"ip":0,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6},"sk":{"a":0,"k":0},"p":{"a":0,"k":[256,256],"ix":2},"r":{"a":0,"k":0,"ix":10},"sa":{"a":0,"k":0},"o":{"a":0,"k":100,"ix":11}},"shapes":[{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Shape 1","ix":1,"cix":2,"np":4,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":false,"i":[[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0]],"v":[[-82.5,4.5],[-31,55],[73,-52.5]]},"ix":2}},{"ty":"tm","bm":0,"hd":false,"mn":"ADBE Vector Filter - Trim","nm":"Trim Paths 1","ix":2,"e":{"a":1,"k":[{"o":{"x":1,"y":0.076},"i":{"x":0.667,"y":1},"s":[0],"t":60},{"s":[100],"t":85}],"ix":2},"o":{"a":0,"k":0,"ix":3},"s":{"a":0,"k":0,"ix":1},"m":1},{"ty":"st","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Stroke","nm":"Stroke 1","lc":2,"lj":2,"ml":1,"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":30,"ix":5},"c":{"a":0,"k":[1,1,1],"ix":3}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]}],"ind":1},{"ty":4,"nm":"Shape Layer 2","sr":1,"st":0,"op":240,"ip":0,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":1,"k":[{"o":{"x":0.656,"y":0.872},"i":{"x":0,"y":0.98},"s":[0,0,100],"t":20},{"s":[150,150,100],"t":60}],"ix":6},"sk":{"a":0,"k":0},"p":{"a":0,"k":[256,257.86],"ix":2},"r":{"a":0,"k":0,"ix":10},"sa":{"a":0,"k":0},"o":{"a":0,"k":100,"ix":11}},"shapes":[{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Ellipse 1","ix":1,"cix":2,"np":3,"it":[{"ty":"el","bm":0,"hd":false,"mn":"ADBE Vector Shape - Ellipse","nm":"Ellipse Path 1","d":1,"p":{"a":0,"k":[0,0],"ix":3},"s":{"a":0,"k":[236,236],"ix":2}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[0.0941,0.7608,0.451],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,-3],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]}],"ind":2},{"ty":4,"nm":"Shape Layer 1","sr":1,"st":0,"op":240,"ip":0,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[0,0,0],"ix":1},"s":{"a":1,"k":[{"o":{"x":0.477,"y":0.587},"i":{"x":0,"y":0.999},"s":[0,0,100],"t":10},{"o":{"x":0.167,"y":0.167},"i":{"x":0.833,"y":0.833},"s":[150,150,100],"t":50},{"o":{"x":0.167,"y":0},"i":{"x":0.833,"y":1},"s":[150,150,100],"t":76},{"s":[210,210,100],"t":123}],"ix":6},"sk":{"a":0,"k":0},"p":{"a":0,"k":[256,257.86],"ix":2},"r":{"a":0,"k":0,"ix":10},"sa":{"a":0,"k":0},"o":{"a":1,"k":[{"o":{"x":0.912,"y":0.073},"i":{"x":0.626,"y":0.729},"s":[100],"t":76},{"s":[0],"t":119}],"ix":11}},"shapes":[{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Ellipse 1","ix":1,"cix":2,"np":3,"it":[{"ty":"el","bm":0,"hd":false,"mn":"ADBE Vector Shape - Ellipse","nm":"Ellipse Path 1","d":1,"p":{"a":0,"k":[0,0],"ix":3},"s":{"a":0,"k":[236,236],"ix":2}},{"ty":"st","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Stroke","nm":"Stroke 1","lc":1,"lj":1,"ml":4,"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":2,"ix":5},"c":{"a":0,"k":[1,1,1],"ix":3}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[0.7843,0.9451,0.8784],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,-3],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]}],"ind":3}],"v":"5.7.0","fr":60,"op":130,"ip":0,"assets":[]}

@ -0,0 +1,767 @@
{
"nm": "HDFC Success",
"h": 512,
"w": 512,
"meta": {
"g": "LottieFiles AE 1.0.0"
},
"layers": [
{
"ty": 4,
"nm": "check",
"sr": 1,
"st": 0,
"op": 240,
"ip": 0,
"hasMask": false,
"ao": 0,
"ks": {
"a": {
"a": 0,
"k": [
0,
0,
0
]
},
"s": {
"a": 0,
"k": [
100,
100,
100
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
256,
256,
0
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
},
"ef": [],
"shapes": [
{
"ty": "gr",
"nm": "Shape 1",
"it": [
{
"ty": "sh",
"nm": "Path 1",
"d": 1,
"ks": {
"a": 0,
"k": {
"c": false,
"i": [
[
0,
0
],
[
0,
0
],
[
0,
0
]
],
"o": [
[
0,
0
],
[
0,
0
],
[
0,
0
]
],
"v": [
[
-82.5,
4.5
],
[
-31,
55
],
[
73,
-52.5
]
]
}
}
},
{
"ty": "tm",
"nm": "Trim Paths 1",
"e": {
"a": 1,
"k": [
{
"o": {
"x": 1,
"y": 0.076
},
"i": {
"x": 0.667,
"y": 1
},
"s": [
0
],
"t": 60
},
{
"s": [
100
],
"t": 85
}
]
},
"o": {
"a": 0,
"k": 0
},
"s": {
"a": 0,
"k": 0
},
"m": 1
},
{
"ty": "st",
"nm": "Stroke 1",
"lc": 2,
"lj": 2,
"ml": 1,
"o": {
"a": 0,
"k": 100
},
"w": {
"a": 0,
"k": 30
},
"c": {
"a": 0,
"k": [
1,
1,
1
]
}
},
{
"ty": "tr",
"a": {
"a": 0,
"k": [
0,
0
]
},
"s": {
"a": 0,
"k": [
100,
100
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
0,
0
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
}
]
}
],
"ind": 1
},
{
"ty": 4,
"nm": "Shape Layer 2",
"sr": 1,
"st": 0,
"op": 240,
"ip": 0,
"hasMask": false,
"ao": 0,
"ks": {
"a": {
"a": 0,
"k": [
0,
0,
0
]
},
"s": {
"a": 1,
"k": [
{
"o": {
"x": 0.656,
"y": 0.872
},
"i": {
"x": 0,
"y": 0.98
},
"s": [
0,
0,
100
],
"t": 20
},
{
"s": [
150,
150,
100
],
"t": 60
}
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
256,
257.86,
0
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
},
"ef": [],
"shapes": [
{
"ty": "gr",
"nm": "Ellipse 1",
"it": [
{
"ty": "el",
"nm": "Ellipse Path 1",
"d": 1,
"p": {
"a": 0,
"k": [
0,
0
]
},
"s": {
"a": 0,
"k": [
236,
236
]
}
},
{
"ty": "fl",
"nm": "Fill 1",
"c": {
"a": 0,
"k": [
0.094,
0.761,
0.451
]
},
"r": 1,
"o": {
"a": 0,
"k": 100
}
},
{
"ty": "tr",
"a": {
"a": 0,
"k": [
0,
0
]
},
"s": {
"a": 0,
"k": [
100,
100
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
0,
-3
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
}
]
}
],
"ind": 2
},
{
"ty": 4,
"nm": "Shape Layer 1",
"sr": 1,
"st": 0,
"op": 240,
"ip": 0,
"hasMask": false,
"ao": 0,
"ks": {
"a": {
"a": 0,
"k": [
0,
0,
0
]
},
"s": {
"a": 1,
"k": [
{
"o": {
"x": 0.477,
"y": 0.587
},
"i": {
"x": 0,
"y": 0.999
},
"s": [
0,
0,
100
],
"t": 10
},
{
"o": {
"x": 0.167,
"y": 0.167
},
"i": {
"x": 0.833,
"y": 0.833
},
"s": [
150,
150,
100
],
"t": 50
},
{
"o": {
"x": 0.167,
"y": 0
},
"i": {
"x": 0.833,
"y": 1
},
"s": [
150,
150,
100
],
"t": 76
},
{
"s": [
210,
210,
100
],
"t": 123
}
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
256,
257.86,
0
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 1,
"k": [
{
"o": {
"x": 0.912,
"y": 0.073
},
"i": {
"x": 0.626,
"y": 0.729
},
"s": [
100
],
"t": 76
},
{
"s": [
0
],
"t": 119
}
]
}
},
"ef": [],
"shapes": [
{
"ty": "gr",
"nm": "Ellipse 1",
"it": [
{
"ty": "el",
"nm": "Ellipse Path 1",
"d": 1,
"p": {
"a": 0,
"k": [
0,
0
]
},
"s": {
"a": 0,
"k": [
236,
236
]
}
},
{
"ty": "st",
"nm": "Stroke 1",
"lc": 1,
"lj": 1,
"ml": 4,
"o": {
"a": 0,
"k": 100
},
"w": {
"a": 0,
"k": 2
},
"c": {
"a": 0,
"k": [
1,
1,
1
]
}
},
{
"ty": "fl",
"nm": "Fill 1",
"c": {
"a": 0,
"k": [
0.784,
0.945,
0.878
]
},
"r": 1,
"o": {
"a": 0,
"k": 100
}
},
{
"ty": "tr",
"a": {
"a": 0,
"k": [
0,
0
]
},
"s": {
"a": 0,
"k": [
100,
100
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
0,
-3
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
}
]
}
],
"ind": 3
},
{
"ty": 4,
"nm": "BG",
"sr": 1,
"st": 0,
"op": 240,
"ip": 0,
"hasMask": false,
"ao": 0,
"ks": {
"a": {
"a": 0,
"k": [
0,
0,
0
]
},
"s": {
"a": 0,
"k": [
100,
100,
100
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
256,
256,
0
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
},
"ef": [],
"shapes": [
{
"ty": "gr",
"nm": "Rectangle 1",
"it": [
{
"ty": "rc",
"nm": "Rectangle Path 1",
"d": 1,
"p": {
"a": 0,
"k": [
0,
0
]
},
"r": {
"a": 0,
"k": 0
},
"s": {
"a": 0,
"k": [
554,
556
]
}
},
{
"ty": "fl",
"nm": "Fill 1",
"c": {
"a": 0,
"k": [
0.972,
0.972,
0.972
]
},
"r": 1,
"o": {
"a": 0,
"k": 100
}
},
{
"ty": "tr",
"a": {
"a": 0,
"k": [
0,
0
]
},
"s": {
"a": 0,
"k": [
100,
100
]
},
"sk": {
"a": 0,
"k": 0
},
"p": {
"a": 0,
"k": [
-1,
6
]
},
"r": {
"a": 0,
"k": 0
},
"sa": {
"a": 0,
"k": 0
},
"o": {
"a": 0,
"k": 100
}
}
]
}
],
"ind": 4
}
],
"v": "4.8.0",
"fr": 60,
"op": 130,
"ip": 0,
"assets": []
}

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save