(self["webpackChunkapp"] = self["webpackChunkapp"] || []).push([["main"],{

/***/ 94114:
/*!***************************************!*\
  !*** ./src/app/app-routing.module.ts ***!
  \***************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   AppRoutingModule: () => (/* binding */ AppRoutingModule)
/* harmony export */ });
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! tslib */ 24398);
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/core */ 37580);
/* harmony import */ var _angular_router__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/router */ 95072);
/* harmony import */ var _util_introGuard_service__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util/introGuard.service */ 55309);

/* eslint-disable max-len */



const routes = [{
  path: '',
  redirectTo: '/signin',
  pathMatch: 'full'
}, {
  path: 'signin',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_signin_signin_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/signin/signin.module */ 44552)).then(m => m.SigninPageModule),
  canLoad: [_util_introGuard_service__WEBPACK_IMPORTED_MODULE_0__.IntroGuard]
}, {
  path: 'home',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("src_app_pages_home_home_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/home/home.module */ 96998)).then(m => m.HomePageModule)
}, {
  path: 'child-add',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_child-add-edit_child-add-edit_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/child-add-edit/child-add-edit.module */ 63974)).then(m => m.AddChildrenPageModule)
}, {
  path: 'add-pbw',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_woman-add-edit_add-plw_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/woman-add-edit/add-plw.module */ 37082)).then(m => m.AddPlwPageModule)
}, {
  path: 'child-edit/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_child-add-edit_child-add-edit_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/child-add-edit/child-add-edit.module */ 63974)).then(m => m.AddChildrenPageModule)
}, {
  path: 'child-list',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-node_modules_rxjs_dist_esm_internal_operators_share_js-node_modules_angular_cdk_fesm2-700685"), __webpack_require__.e("default-src_app_services_survey_form_api_service_ts-node_modules_capacitor-mlkit_barcode-scan-6e52fa"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_child-list_child-list_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/child-list/child-list.module */ 23978)).then(m => m.ChildListPageModule)
}, {
  path: 'child-detail/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("default-node_modules_rxjs_dist_esm_internal_operators_share_js-node_modules_angular_cdk_fesm2-700685"), __webpack_require__.e("default-src_app_services_distribution_api_service_ts-src_app_services_plw_transfer_out_api_se-451972"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_child-detail_child-detail_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/child-detail/child-detail.module */ 6676)).then(m => m.ChildDetailPageModule)
}, {
  path: 'woman-list',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-node_modules_rxjs_dist_esm_internal_operators_share_js-node_modules_angular_cdk_fesm2-700685"), __webpack_require__.e("default-src_app_services_survey_form_api_service_ts-node_modules_capacitor-mlkit_barcode-scan-6e52fa"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_woman-list_woman-list_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/woman-list/woman-list.module */ 53082)).then(m => m.WomanListPageModule)
}, {
  path: 'woman-edit/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_woman-add-edit_add-plw_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/woman-add-edit/add-plw.module */ 37082)).then(m => m.AddPlwPageModule)
}, {
  path: 'woman-detail/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("default-node_modules_rxjs_dist_esm_internal_operators_share_js-node_modules_angular_cdk_fesm2-700685"), __webpack_require__.e("default-src_app_services_distribution_api_service_ts-src_app_services_plw_transfer_out_api_se-451972"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_woman-detail_woman-detail_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/woman-detail/woman-detail.module */ 3168)).then(m => m.WomanDetailPageModule)
}, {
  path: 'location-update-woman/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("src_app_pages_location-update-woman_location-update-woman_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/location-update-woman/location-update-woman.module */ 5118)).then(m => m.LocationUpdateWomanPageModule)
}, {
  path: 'account',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_account_account_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/account/account.module */ 88422)).then(m => m.AccountPageModule)
}, {
  path: 'gmp/:type/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_gmp_gmp_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/gmp/gmp.module */ 98522)).then(m => m.GmpPageModule)
}, {
  path: 'manage-supplylist/:type',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_manage-supplylist_manage-supplylist_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/manage-supplylist/manage-supplylist.module */ 74494)).then(m => m.ManageSupplylistPageModule)
}, {
  path: 'supply-in',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_supply-in_supply-in_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/supply-in/supply-in.module */ 91214)).then(m => m.SupplyInPageModule)
}, {
  path: 'supply-edit-in/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_supply-in_supply-in_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/supply-in/supply-in.module */ 91214)).then(m => m.SupplyInPageModule)
}, {
  path: 'supply-out',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_supply-out_supply-out_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/supply-out/supply-out.module */ 38476)).then(m => m.SupplyOutPageModule)
}, {
  path: 'supply-edit-out/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_supply-out_supply-out_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/supply-out/supply-out.module */ 38476)).then(m => m.SupplyOutPageModule)
}, {
  path: 'supply-avaiable-items',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_supply-avaiable-items_supply-avaiable-items_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/supply-avaiable-items/supply-avaiable-items.module */ 73106)).then(m => m.SupplyAvaiableItemsPageModule)
}, {
  path: 'beneficiary-assessment/:id/:type',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_services_survey_form_api_service_ts-node_modules_ngx-formly_core_fesm2022_ngx-d1e201"), __webpack_require__.e("src_app_pages_beneficiary-assessment_beneficiary-assessment_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/beneficiary-assessment/beneficiary-assessment.module */ 82812)).then(m => m.BeneficiaryAssessmentPageModule)
}, {
  path: 'survey-form/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_services_survey_form_api_service_ts-node_modules_ngx-formly_core_fesm2022_ngx-d1e201"), __webpack_require__.e("default-src_app_pages_survey-form_survey-form_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/survey-form/survey-form.module */ 87550)).then(m => m.SurveyFormPageModule)
}, {
  path: 'survey-view/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("src_app_pages_survey-view_survey-view_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/survey-view/survey-view.module */ 27626)).then(m => m.SurveyViewPageModule)
}, {
  path: 'pregnancy-history-create/:plwId',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_pregnancy-history-create_pregnancy-history-create_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/pregnancy-history-create/pregnancy-history-create.module */ 31138)).then(m => m.PregnancyHistoryCreatePageModule)
}, {
  path: 'pregnancy-history-edit/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_pregnancy-history-create_pregnancy-history-create_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/pregnancy-history-create/pregnancy-history-create.module */ 31138)).then(m => m.PregnancyHistoryCreatePageModule)
}, {
  path: 'supply-detail/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_supply-detail_supply-detail_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/supply-detail/supply-detail.module */ 65774)).then(m => m.SupplyDetailPageModule)
}, {
  path: 'offline-assessment',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("src_app_pages_offline-assessment_offline-assessment_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/offline-assessment/offline-assessment.module */ 83988)).then(m => m.OfflineAssessmentPageModule)
}, {
  path: 'offline-survey-list',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("src_app_pages_offline-survey-list_offline-survey-list_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/offline-survey-list/offline-survey-list.module */ 44982)).then(m => m.OfflineSurveyListPageModule)
}, {
  path: 'beneficiary-register',
  loadChildren: () => __webpack_require__.e(/*! import() */ "src_app_pages_beneficiary-register_beneficiary-register_module_ts").then(__webpack_require__.bind(__webpack_require__, /*! ./pages/beneficiary-register/beneficiary-register.module */ 7822)).then(m => m.BeneficiaryRegisterPageModule)
}, {
  path: 'measurement-create/:childId',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_measurement-create_measurement-create_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/measurement-create/measurement-create.module */ 27390)).then(m => m.MeasurementCreatePageModule)
}, {
  path: 'measurement-edit/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_measurement-create_measurement-create_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/measurement-create/measurement-create.module */ 27390)).then(m => m.MeasurementCreatePageModule)
}, {
  path: 'distribution-create/:childId',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("src_app_pages_distribution-create_distribution-create_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/distribution-create/distribution-create.module */ 85362)).then(m => m.DistributionCreatePageModule)
}, {
  path: 'distribution-edit/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("src_app_pages_distribution-create_distribution-create_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/distribution-create/distribution-create.module */ 85362)).then(m => m.DistributionCreatePageModule)
}, {
  path: 'plw-measurement-create/:plwId',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_plw-measurement-create_plw-measurement-create_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/plw-measurement-create/plw-measurement-create.module */ 52182)).then(m => m.PlwMeasurementCreatePageModule)
}, {
  path: 'plw-measurement-edit/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_util_utility_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_plw-measurement-create_plw-measurement-create_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/plw-measurement-create/plw-measurement-create.module */ 52182)).then(m => m.PlwMeasurementCreatePageModule)
}, {
  path: 'plw-distribution-create/:plwId',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("src_app_pages_distribution-create_distribution-create_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/distribution-create/distribution-create.module */ 85362)).then(m => m.DistributionCreatePageModule)
}, {
  path: 'facility-supervision',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_services_survey_form_api_service_ts-node_modules_ngx-formly_core_fesm2022_ngx-d1e201"), __webpack_require__.e("default-src_app_pages_survey-form_survey-form_module_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_facility-supervision_facility-supervision_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/facility-supervision/facility-supervision.module */ 44454)).then(m => m.FacilitySupervisionPageModule)
}, {
  path: 'plw-transfer-out-create/:plwId',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("src_app_pages_plw-transfer-out-create_plw-transfer-out-create_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/plw-transfer-out-create/plw-transfer-out-create.module */ 71770)).then(m => m.PlwTransferOutCreatePageModule)
}, {
  path: 'transfer-out-list',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("src_app_pages_transfer-out-list_transfer-out-list_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/transfer-out-list/transfer-out-list.module */ 46018)).then(m => m.TransferOutListPageModule)
}, {
  path: 'facility-supervision-list',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_facility-supervision-list_facility-supervision-list_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/facility-supervision-list/facility-supervision-list.module */ 60554)).then(m => m.FacilitySupervisionListPageModule)
}, {
  path: 'facility-supervision-view/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_facility-supervision-view_facility-supervision-view_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/facility-supervision-view/facility-supervision-view.module */ 14198)).then(m => m.FacilitySupervisionViewPageModule)
}, {
  path: 'facility-supervision/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_services_survey_form_api_service_ts-node_modules_ngx-formly_core_fesm2022_ngx-d1e201"), __webpack_require__.e("default-src_app_pages_survey-form_survey-form_module_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_facility-supervision_facility-supervision_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/facility-supervision/facility-supervision.module */ 44454)).then(m => m.FacilitySupervisionPageModule)
}, {
  path: 'inpatient-care-treatment/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_services_survey_form_api_service_ts-node_modules_ngx-formly_core_fesm2022_ngx-d1e201"), __webpack_require__.e("default-src_app_pages_survey-form_survey-form_module_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_inpatient-care-treatment_inpatient-care-treatment_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/inpatient-care-treatment/inpatient-care-treatment.module */ 60630)).then(m => m.InpatientCareTreatmentPageModule)
}, {
  path: 'inpatient-care-treatment-list',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_inpatient-care-treatment-list_inpatient-care-treatment-list_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/inpatient-care-treatment-list/inpatient-care-treatment-list.module */ 72966)).then(m => m.InpatientCareTreatmentListPageModule)
}, {
  path: 'inpatient-care-treatment-view/:id',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_inpatient-care-treatment-view_inpatient-care-treatment-view_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/inpatient-care-treatment-view/inpatient-care-treatment-view.module */ 66886)).then(m => m.InpatientCareTreatmentViewPageModule)
}, {
  path: 'sc-transfer-create/:childId',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("common"), __webpack_require__.e("src_app_pages_sc-transfer-create_sc-transfer-create_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/sc-transfer-create/sc-transfer-create.module */ 85638)).then(m => m.ScTransferCreatePageModule)
}, {
  path: 'beneficiary-activity-list',
  loadChildren: () => Promise.all(/*! import() */[__webpack_require__.e("default-src_app_constants_icons_constants_ts-src_app_services_api_base_service_ts"), __webpack_require__.e("default-src_app_components_shared_module_ts"), __webpack_require__.e("src_app_pages_beneficiary-activity-list_beneficiary-activity-list_module_ts")]).then(__webpack_require__.bind(__webpack_require__, /*! ./pages/beneficiary-activity-list/beneficiary-activity-list.module */ 28242)).then(m => m.BeneficiaryActivityListPageModule)
}];
let AppRoutingModule = class AppRoutingModule {};
AppRoutingModule = (0,tslib__WEBPACK_IMPORTED_MODULE_1__.__decorate)([(0,_angular_core__WEBPACK_IMPORTED_MODULE_2__.NgModule)({
  imports: [_angular_router__WEBPACK_IMPORTED_MODULE_3__.RouterModule.forRoot(routes, {
    preloadingStrategy: _angular_router__WEBPACK_IMPORTED_MODULE_3__.PreloadAllModules
  })],
  exports: [_angular_router__WEBPACK_IMPORTED_MODULE_3__.RouterModule]
})], AppRoutingModule);


/***/ }),

/***/ 20092:
/*!**********************************!*\
  !*** ./src/app/app.component.ts ***!
  \**********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   AppComponent: () => (/* binding */ AppComponent)
/* harmony export */ });
/* harmony import */ var _workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ 89204);
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! tslib */ 24398);
/* harmony import */ var _app_component_html_ngResource__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./app.component.html?ngResource */ 61584);
/* harmony import */ var _app_component_scss_ngResource__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./app.component.scss?ngResource */ 37282);
/* harmony import */ var _app_component_scss_ngResource__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_app_component_scss_ngResource__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @angular/core */ 37580);
/* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @ionic/angular */ 4059);
/* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @ionic/angular */ 21507);
/* harmony import */ var _util_baseHelper__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./util/baseHelper */ 76434);
/* harmony import */ var _capacitor_splash_screen__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @capacitor/splash-screen */ 7661);
/* harmony import */ var _ngrx_store__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @ngrx/store */ 81383);
/* harmony import */ var _state_selectors_user_selector__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./state/selectors/user.selector */ 77451);
/* harmony import */ var _capacitor_app__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @capacitor/app */ 59326);
/* harmony import */ var ionicons__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ionicons */ 3218);
/* harmony import */ var _services_connectivity_service__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./services/connectivity.service */ 65065);
/* harmony import */ var ionicons_icons__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ionicons/icons */ 77958);

var _AppComponent;













let AppComponent = (_AppComponent = class AppComponent {
  constructor(b, platform, store, connectivity, cdr, routerOutlet) {
    this.b = b;
    this.platform = platform;
    this.store = store;
    this.connectivity = connectivity;
    this.cdr = cdr;
    this.routerOutlet = routerOutlet;
    this.animationsDisabled = true;
    this.communityAssessmentCount = 0;
    this.isOnline = true;
    this.menuConfig = [];
    this.filteredMenuConfig = [];
    this.facilityPages = [{
      title: 'Dashboard',
      url: '/home',
      icon: 'md-house'
    }, {
      title: 'Children',
      url: '/child-list',
      icon: 'md-children'
    }, {
      title: 'Mothers',
      url: '/woman-list',
      icon: 'md-pregnant'
    }, {
      title: 'Beneficiary Registers',
      url: '/beneficiary-register',
      icon: 'document-text-outline'
    }];
    this.storeKeeperPages = [{
      title: 'Dashboard',
      url: '/home',
      icon: 'home'
    }, {
      title: 'Out Supply to store',
      url: '/manage-supplylist/out',
      icon: 'md-Previous-item'
    }, {
      title: 'Manage Out',
      url: '/manage-supplylist/out-list',
      icon: 'md-Out-of-platform'
    }];
    this.commonPages = [
      // {
      //   title: 'Map',
      //   url: '/map',
      //   icon: 'md-map',
      // },
      // {
      //   title: 'About',
      //   url: '/about',
      //   icon: 'md-about',
      // },
    ];
    this.dark = false;
    this.initializeApp();
    // Register ionicons
    (0,ionicons__WEBPACK_IMPORTED_MODULE_8__.d)({
      'refresh-outline': ionicons_icons__WEBPACK_IMPORTED_MODULE_9__.refreshOutline,
      'analytics-outline': ionicons_icons__WEBPACK_IMPORTED_MODULE_9__.analyticsOutline,
      'chevron-down-circle-outline': ionicons_icons__WEBPACK_IMPORTED_MODULE_9__.chevronDownCircleOutline,
      'home-outline': ionicons_icons__WEBPACK_IMPORTED_MODULE_9__.homeOutline,
      'add-outline': ionicons_icons__WEBPACK_IMPORTED_MODULE_9__.addOutline,
      'list-outline': ionicons_icons__WEBPACK_IMPORTED_MODULE_9__.listOutline,
      'person-outline': ionicons_icons__WEBPACK_IMPORTED_MODULE_9__.personOutline,
      'wifi': ionicons_icons__WEBPACK_IMPORTED_MODULE_9__.wifi
    });
  }
  ngOnInit() {
    var _this = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      // Initialize user state from localStorage before anything else
      yield _this.initializeUserFromStorage();
      _this.listenForLoginEvents();
      _this.updateCommunityAssessmentCount();
      _this.setupCommunityAssessmentListener();
      _this.setupNetworkListener();
      _this.platform.backButton.subscribeWithPriority(-1, () => {
        if (!_this.routerOutlet.canGoBack()) {
          _capacitor_app__WEBPACK_IMPORTED_MODULE_6__.App.exitApp();
        }
      });
    })();
  }
  initializeUserFromStorage() {
    var _this2 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      try {
        const hasUser = yield _this2.b.checkHasLoggedInEver();
      } catch (error) {}
    })();
  }
  initializeApp() {
    this.platform.ready().then(() => {
      if (this.platform.is('hybrid')) {
        setTimeout(() => {
          _capacitor_splash_screen__WEBPACK_IMPORTED_MODULE_4__.SplashScreen.hide();
        }, 1000);
      }
    });
  }
  updateLoggedInStatus(loggedIn) {}
  listenForLoginEvents() {
    var _this3 = this;
    this.store.select(_state_selectors_user_selector__WEBPACK_IMPORTED_MODULE_5__.retrieveUserSelector).subscribe(/*#__PURE__*/function () {
      var _ref = (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* (data) {
        if (data) {
          _this3.user = data.user;
          _this3.menuConfig = _this3.b.getMenuConfig(_this3.user);
          _this3.updateMenuBasedOnConnectivity();
          _this3.updateLoggedInStatus(true);
          _this3.updateCommunityAssessmentCount(); // Update count when user logs in
        } else {
          _this3.updateLoggedInStatus(false);
          _this3.communityAssessmentCount = 0; // Reset count when user logs out
        }
      });
      return function (_x) {
        return _ref.apply(this, arguments);
      };
    }());
  }
  updateCommunityAssessmentCount() {
    var _this4 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      try {
        _this4.communityAssessmentCount = yield _this4.b.getOfflineAssessmentCount();
      } catch (error) {
        _this4.communityAssessmentCount = 0;
      }
    })();
  }
  setupCommunityAssessmentListener() {
    window.addEventListener('offlineAssessmentChanged', () => {
      this.updateCommunityAssessmentCount();
    });
  }
  toggleSubmenu(item) {
    item.expanded = !item.expanded;
  }
  setupNetworkListener() {
    var _this5 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      // Check if our target server is reachable by pinging it
      _this5.isOnline = yield _this5.connectivity.checkServerConnectivity(false);
      _this5.updateMenuBasedOnConnectivity();
      _this5.cdr.detectChanges();
      // Set up app resume listener to check server connectivity when app comes back to foreground
      _capacitor_app__WEBPACK_IMPORTED_MODULE_6__.App.addListener('appStateChange', /*#__PURE__*/function () {
        var _ref2 = (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* ({
          isActive
        }) {
          if (isActive) {
            yield _this5.checkNetworkStatus();
          }
        });
        return function (_x2) {
          return _ref2.apply(this, arguments);
        };
      }());
      // Set up dynamic polling - more frequent when offline to catch server restoration
      _this5.setupDynamicPolling();
    })();
  }
  updateMenuBasedOnConnectivity() {
    if (!this.menuConfig || this.menuConfig.length === 0) {
      this.filteredMenuConfig = [];
      return;
    }
    if (this.isOnline) {
      // Show all menu items when online
      this.filteredMenuConfig = [...this.menuConfig];
    } else {
      // Show only community assessments when offline
      this.filteredMenuConfig = this.menuConfig.filter(item => item.url === '/offline-survey-list');
    }
    this.cdr.detectChanges();
  }
  // Set up polling with different frequencies based on connection status
  setupDynamicPolling() {
    var _this6 = this;
    const _poll = /*#__PURE__*/function () {
      var _ref3 = (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
        yield _this6.checkNetworkStatus();
        // Schedule next poll with appropriate interval
        const interval = _this6.isOnline ? 90000 : 30000; // 30s when offline, 90s when online
        setTimeout(_poll, interval);
      });
      return function poll() {
        return _ref3.apply(this, arguments);
      };
    }();
    // Start polling
    setTimeout(_poll, 30000);
  }
  // Ping server and update if changed
  checkNetworkStatus() {
    var _this7 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      const previousStatus = _this7.isOnline;
      // Ping the server directly to check if it's reachable
      _this7.isOnline = yield _this7.connectivity.checkServerConnectivity(false);
      if (previousStatus !== _this7.isOnline) {
        _this7.updateMenuBasedOnConnectivity();
      }
    })();
  }
  // Debug method to manually toggle offline mode for testing
  toggleOfflineMode() {
    this.isOnline = !this.isOnline;
    this.updateMenuBasedOnConnectivity();
  }
}, _AppComponent.ctorParameters = () => [{
  type: _util_baseHelper__WEBPACK_IMPORTED_MODULE_3__.BaseHelper
}, {
  type: _ionic_angular__WEBPACK_IMPORTED_MODULE_10__.Platform
}, {
  type: _ngrx_store__WEBPACK_IMPORTED_MODULE_11__.Store
}, {
  type: _services_connectivity_service__WEBPACK_IMPORTED_MODULE_7__.ConnectivityService
}, {
  type: _angular_core__WEBPACK_IMPORTED_MODULE_12__.ChangeDetectorRef
}, {
  type: _ionic_angular__WEBPACK_IMPORTED_MODULE_13__.IonRouterOutlet,
  decorators: [{
    type: _angular_core__WEBPACK_IMPORTED_MODULE_12__.Optional
  }]
}], _AppComponent.propDecorators = {
  animationsDisabled: [{
    type: _angular_core__WEBPACK_IMPORTED_MODULE_12__.HostBinding,
    args: ['@.disabled']
  }]
}, _AppComponent);
AppComponent = (0,tslib__WEBPACK_IMPORTED_MODULE_14__.__decorate)([(0,_angular_core__WEBPACK_IMPORTED_MODULE_12__.Component)({
  selector: 'app-root',
  template: _app_component_html_ngResource__WEBPACK_IMPORTED_MODULE_1__,
  styles: [(_app_component_scss_ngResource__WEBPACK_IMPORTED_MODULE_2___default())]
})], AppComponent);


/***/ }),

/***/ 50635:
/*!*******************************!*\
  !*** ./src/app/app.module.ts ***!
  \*******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   AppModule: () => (/* binding */ AppModule)
/* harmony export */ });
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! tslib */ 24398);
/* harmony import */ var _state_reducers_user_reducer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./state/reducers/user.reducer */ 17843);
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @angular/core */ 37580);
/* harmony import */ var _angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @angular/platform-browser */ 80436);
/* harmony import */ var _angular_router__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @angular/router */ 95072);
/* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @ionic/angular */ 21507);
/* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @ionic/angular */ 4059);
/* harmony import */ var _app_component__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./app.component */ 20092);
/* harmony import */ var _app_routing_module__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./app-routing.module */ 94114);
/* harmony import */ var _ngrx_store__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @ngrx/store */ 81383);
/* harmony import */ var _angular_common_http__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @angular/common/http */ 46443);
/* harmony import */ var _services_interceptor__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./services/interceptor */ 89688);
/* harmony import */ var _angular_platform_browser_animations__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @angular/platform-browser/animations */ 43835);












let AppModule = class AppModule {};
AppModule = (0,tslib__WEBPACK_IMPORTED_MODULE_4__.__decorate)([(0,_angular_core__WEBPACK_IMPORTED_MODULE_5__.NgModule)({
  declarations: [_app_component__WEBPACK_IMPORTED_MODULE_1__.AppComponent],
  bootstrap: [_app_component__WEBPACK_IMPORTED_MODULE_1__.AppComponent],
  imports: [_angular_platform_browser__WEBPACK_IMPORTED_MODULE_6__.BrowserModule, _ionic_angular__WEBPACK_IMPORTED_MODULE_7__.IonicModule.forRoot(), _app_routing_module__WEBPACK_IMPORTED_MODULE_2__.AppRoutingModule, _ngrx_store__WEBPACK_IMPORTED_MODULE_8__.StoreModule.forFeature('userApiResp', _state_reducers_user_reducer__WEBPACK_IMPORTED_MODULE_0__.userReducer), _ngrx_store__WEBPACK_IMPORTED_MODULE_8__.StoreModule.forRoot({}, {}), _angular_platform_browser_animations__WEBPACK_IMPORTED_MODULE_9__.BrowserAnimationsModule],
  providers: [{
    provide: _angular_router__WEBPACK_IMPORTED_MODULE_10__.RouteReuseStrategy,
    useClass: _ionic_angular__WEBPACK_IMPORTED_MODULE_11__.IonicRouteStrategy
  }, {
    provide: _angular_common_http__WEBPACK_IMPORTED_MODULE_12__.HTTP_INTERCEPTORS,
    useClass: _services_interceptor__WEBPACK_IMPORTED_MODULE_3__.TokenInterceptor,
    multi: true
  }, (0,_angular_common_http__WEBPACK_IMPORTED_MODULE_12__.provideHttpClient)((0,_angular_common_http__WEBPACK_IMPORTED_MODULE_12__.withInterceptorsFromDi)())]
})], AppModule);


/***/ }),

/***/ 65065:
/*!**************************************************!*\
  !*** ./src/app/services/connectivity.service.ts ***!
  \**************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   ConnectivityService: () => (/* binding */ ConnectivityService)
/* harmony export */ });
/* harmony import */ var _workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ 89204);
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! tslib */ 24398);
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @angular/core */ 37580);
/* harmony import */ var _angular_common_http__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/common/http */ 46443);
/* harmony import */ var src_environments_environment__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! src/environments/environment */ 45312);
/* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! rxjs/operators */ 72354);
/* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! rxjs/operators */ 61318);
/* harmony import */ var rxjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! rxjs */ 59452);

var _ConnectivityService;






let ConnectivityService = (_ConnectivityService = class ConnectivityService {
  constructor(http) {
    this.http = http;
    this.PING_TIMEOUT = 5000; // 5 seconds timeout
    this.SERVER_URL = src_environments_environment__WEBPACK_IMPORTED_MODULE_1__.domain; // Target server URL
    this.isOnlineCache = true;
    this.lastCheckTime = 0;
    this.CACHE_DURATION = 10000; // Cache result for 10 seconds
  }
  /**
   * Check if the target server is reachable by pinging it directly
   * @param useCache Whether to use cached result if available
   * @returns Promise<boolean> true if server is reachable, false otherwise
   */
  checkServerConnectivity() {
    var _this = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* (useCache = true) {
      const now = Date.now();
      // Return cached result if still valid
      if (useCache && now - _this.lastCheckTime < _this.CACHE_DURATION) {
        return _this.isOnlineCache;
      }
      try {
        // Ping the server directly with HEAD request - no network checks
        const result = yield _this.http.head(_this.SERVER_URL, {
          headers: new _angular_common_http__WEBPACK_IMPORTED_MODULE_2__.HttpHeaders({
            'Cache-Control': 'no-cache',
            'X-Skip-Loading': 'true'
          }),
          observe: 'response'
        }).pipe((0,rxjs_operators__WEBPACK_IMPORTED_MODULE_3__.timeout)(_this.PING_TIMEOUT), (0,rxjs_operators__WEBPACK_IMPORTED_MODULE_4__.catchError)(error => {
          // If we get an HTTP error response (404, 500, etc.), the server is still reachable
          if (error.status) {
            return (0,rxjs__WEBPACK_IMPORTED_MODULE_5__.of)({
              status: error.status
            });
          }
          // Cannot reach server
          return (0,rxjs__WEBPACK_IMPORTED_MODULE_5__.of)(null);
        })).toPromise();
        // Server is online if we got any response (even error responses like 404, 500)
        _this.isOnlineCache = result !== null;
        _this.lastCheckTime = now;
        return _this.isOnlineCache;
      } catch (error) {
        _this.isOnlineCache = false;
        _this.lastCheckTime = now;
        return false;
      }
    }).apply(this, arguments);
  }
  /**
   * Get the current cached connectivity status without making a new check
   */
  getCachedConnectivityStatus() {
    return this.isOnlineCache;
  }
  /**
   * Clear the cache to force a fresh check on next call
   */
  clearCache() {
    this.lastCheckTime = 0;
  }
}, _ConnectivityService.ctorParameters = () => [{
  type: _angular_common_http__WEBPACK_IMPORTED_MODULE_2__.HttpClient
}], _ConnectivityService);
ConnectivityService = (0,tslib__WEBPACK_IMPORTED_MODULE_6__.__decorate)([(0,_angular_core__WEBPACK_IMPORTED_MODULE_7__.Injectable)({
  providedIn: 'root'
})], ConnectivityService);


/***/ }),

/***/ 99328:
/*!************************************!*\
  !*** ./src/app/services/global.ts ***!
  \************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   GlobalProvider: () => (/* binding */ GlobalProvider)
/* harmony export */ });
/* harmony import */ var _workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ 89204);
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! tslib */ 24398);
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/core */ 37580);
/* harmony import */ var src_environments_environment__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! src/environments/environment */ 45312);




let GlobalProvider = class GlobalProvider {
  constructor() {
    this.downloadUrlRaw = `${src_environments_environment__WEBPACK_IMPORTED_MODULE_1__.domain}/company/public/download/file`;
    this.localDomain = src_environments_environment__WEBPACK_IMPORTED_MODULE_1__.hostLocal;
    this.loadingJwt = true;
    this.notifications = [];
    this.auditLogAllow = false;
    this.docShareAllow = false;
    this.loadNotifications = list => {
      const added = [`123`];
      this.notifications = this.notifications.concat(list).filter(n => {
        if (!added.includes(n.id)) {
          added.push(n.id);
          return true;
        }
        return false;
      }).sort((a, b) => a.id - b.id).reverse();
    };
  }
  setMedia(mediaUrl) {
    var _this = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      _this.mediaUrl = mediaUrl;
    })();
  }
};
GlobalProvider = (0,tslib__WEBPACK_IMPORTED_MODULE_2__.__decorate)([(0,_angular_core__WEBPACK_IMPORTED_MODULE_3__.Injectable)({
  providedIn: 'root'
})], GlobalProvider);


/***/ }),

/***/ 89688:
/*!*****************************************!*\
  !*** ./src/app/services/interceptor.ts ***!
  \*****************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   TokenInterceptor: () => (/* binding */ TokenInterceptor),
/* harmony export */   delayMs: () => (/* binding */ delayMs),
/* harmony export */   maxRetries: () => (/* binding */ maxRetries)
/* harmony export */ });
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! tslib */ 24398);
/* harmony import */ var _angular_common_http__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/common/http */ 46443);
/* harmony import */ var rxjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! rxjs */ 77919);
/* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! rxjs/operators */ 70271);
/* harmony import */ var rxjs_operators__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! rxjs/operators */ 61318);
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @angular/core */ 37580);
/* harmony import */ var _util_baseHelper__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../util/baseHelper */ 76434);
var _TokenInterceptor;
/* eslint-disable @typescript-eslint/member-ordering */
/* eslint-disable @typescript-eslint/naming-convention */
/* eslint-disable max-len */






const maxRetries = 1;
const delayMs = 6500;
let TokenInterceptor = (_TokenInterceptor = class TokenInterceptor {
  constructor(b) {
    this.b = b;
  }
  loadUser() {
    var _this$user$token, _this$user;
    this.user = this.b.getCurrentUser();
    this.token = (_this$user$token = (_this$user = this.user) === null || _this$user === void 0 ? void 0 : _this$user.token) !== null && _this$user$token !== void 0 ? _this$user$token : 'eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiIxIiwianRpIjoiYjdlOGFmMmUzMGQ1YjdhZDNjNDhlNGRmMmE1ZTNhOTM1MzMwY2ZkZTdkMTdkMDYzMDFjYzU3MTAzMjA1MDhkYTBlNjIwYzQyMDYzZWM3OWYiLCJpYXQiOjE2ODkyNjQyOTAuODg5NTQzMDU2NDg4MDM3MTA5Mzc1LCJuYmYiOjE2ODkyNjQyOTAuODg5NTQ0MDEwMTYyMzUzNTE1NjI1LCJleHAiOjE3MjA4ODY2OTAuODg2OTQ0MDU1NTU3MjUwOTc2NTYyNSwic3ViIjoiOSIsInNjb3BlcyI6W119.J5fGMZUFpCxzEoohbtCWg4Z-pD49Zoj8wVXAkyIgOjzSiP7G90k3sgp712H4kkxZZ2X9ILFC5qokPw2Ot9_MDc9umAvTbwEFedHNdw8UjQupp0XN148eMQdD3KNmV7yX1yP77e0PDuuOAg54R4Bwt04o67b-ZkjSpzd60c90q2qBT1R1Q9zEq4mWfkH-1m944QjNH0Igp7Dl4Ez-AoGwvKbTW3opLVdFPkLl8mKXdIfWxCUbWC3fnm3TxxPG6Ui9Q_e7XI7zwErRzRh9NfiWeXWTOlOyMO06nw3M8oDENc6C5dbWGs-oXjXnlNGEsJ-DIlEMHzvaGGTmvYIhwvYre03oRBxWaPwlDMYT0Yiq-jXOEXF2NXwohiLjdQzHwMfyx3oW4gGThCJyhcCYJQ2Mcd6LW03SerKQgvJmE4RzaMALe-9_qa7uB5npHwgze1P89H9P4HzVShXyzBrLOBallp-QvrniwysvjK8uHR2Np-lnb1z6wOdYpGwIGEMnOsYcPSoZOduTEZdekDN8kiTtuN9AGFCvCCtLegksiT4d_Oxfg0SIX3jemFWRlViIQwxCFAXmtN2_aG2CTt70O-2XgJOjO_PcgCtIWam8GToVknFJveWNSk0I_odL0d0-_Jp0RRtaRmVhzaqzFN2wDaIs8HyAzCA2Bpo9G7brny5q9Bo';
  }
  intercept(request, next) {
    this.loadUser();
    if (this.token) {
      request = request.clone({
        setHeaders: {
          Authorization: 'Bearer ' + this.token
        }
      });
    }
    if (!request.headers.has('Content-Type')) {
      request = request.clone({
        setHeaders: {
          'content-type': 'application/json'
        }
      });
    }
    request = request.clone({
      headers: request.headers.set('Accept', 'application/json')
    });
    return next.handle(request).pipe((0,rxjs_operators__WEBPACK_IMPORTED_MODULE_1__.map)(event => {
      if (event instanceof _angular_common_http__WEBPACK_IMPORTED_MODULE_2__.HttpResponse) {}
      return event;
    }), (0,rxjs_operators__WEBPACK_IMPORTED_MODULE_3__.catchError)(error => {
      return (0,rxjs__WEBPACK_IMPORTED_MODULE_4__.throwError)(error);
    }));
  }
}, _TokenInterceptor.ctorParameters = () => [{
  type: _util_baseHelper__WEBPACK_IMPORTED_MODULE_0__.BaseHelper
}], _TokenInterceptor);
TokenInterceptor = (0,tslib__WEBPACK_IMPORTED_MODULE_5__.__decorate)([(0,_angular_core__WEBPACK_IMPORTED_MODULE_6__.Injectable)()], TokenInterceptor);


/***/ }),

/***/ 7773:
/*!************************************************!*\
  !*** ./src/app/services/permission.service.ts ***!
  \************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   PermissionService: () => (/* binding */ PermissionService)
/* harmony export */ });
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ 24398);
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @angular/core */ 37580);
var _PermissionService;

// src/app/services/permission.service.ts

let PermissionService = (_PermissionService = class PermissionService {
  constructor() {
    this.permissionList = new Set();
  }
  /**
   * Set permissions from a user object containing multiple roles.
   * @param user - Logged-in user object with roles and permissions
   */
  setPermissionsFromRoles(user) {
    var _user$roles;
    const permissions = new Set();
    (_user$roles = user.roles) === null || _user$roles === void 0 || _user$roles.forEach(role => {
      var _role$permissions;
      (_role$permissions = role.permissions) === null || _role$permissions === void 0 || _role$permissions.forEach(permission => {
        permissions.add(permission.title);
      });
    });
    this.permissionList = permissions;
  }
  /**
   * Check if user has a specific permission
   */
  hasPermission(permission) {
    return this.permissionList.has(permission);
  }
  /**
   * Check if user has any permission from a list
   */
  hasAnyPermission(permissions) {
    return permissions.some(p => this.permissionList.has(p));
  }
  /**
   * Clear permission list (e.g., on logout)
   */
  clearPermissions() {
    this.permissionList.clear();
  }
  /**
   * Get all permissions as an array
   */
  getAllPermissions() {
    return Array.from(this.permissionList);
  }
}, _PermissionService.ctorParameters = () => [], _PermissionService);
PermissionService = (0,tslib__WEBPACK_IMPORTED_MODULE_0__.__decorate)([(0,_angular_core__WEBPACK_IMPORTED_MODULE_1__.Injectable)({
  providedIn: 'root'
})], PermissionService);


/***/ }),

/***/ 89801:
/*!**********************************************!*\
  !*** ./src/app/state/actions/user.action.ts ***!
  \**********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   getUserApiResp: () => (/* binding */ getUserApiResp),
/* harmony export */   login: () => (/* binding */ login)
/* harmony export */ });
/* harmony import */ var _ngrx_store__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @ngrx/store */ 81383);

const getUserApiResp = (0,_ngrx_store__WEBPACK_IMPORTED_MODULE_0__.createAction)('[Current user]', (0,_ngrx_store__WEBPACK_IMPORTED_MODULE_0__.props)());
const login = (0,_ngrx_store__WEBPACK_IMPORTED_MODULE_0__.createAction)('[User Logged In]', (0,_ngrx_store__WEBPACK_IMPORTED_MODULE_0__.props)());

/***/ }),

/***/ 17843:
/*!************************************************!*\
  !*** ./src/app/state/reducers/user.reducer.ts ***!
  \************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   initialUser: () => (/* binding */ initialUser),
/* harmony export */   userReducer: () => (/* binding */ userReducer)
/* harmony export */ });
/* harmony import */ var _actions_user_action__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../actions/user.action */ 89801);
/* harmony import */ var _ngrx_store__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @ngrx/store */ 81383);

/* eslint-disable @typescript-eslint/naming-convention */

const initialUser = null;
const userReducer = (0,_ngrx_store__WEBPACK_IMPORTED_MODULE_1__.createReducer)(initialUser, (0,_ngrx_store__WEBPACK_IMPORTED_MODULE_1__.on)(_actions_user_action__WEBPACK_IMPORTED_MODULE_0__.getUserApiResp, (state, userApiResp) => state = userApiResp), (0,_ngrx_store__WEBPACK_IMPORTED_MODULE_1__.on)(_actions_user_action__WEBPACK_IMPORTED_MODULE_0__.login, (state, currentUser) => state = currentUser));

/***/ }),

/***/ 77451:
/*!**************************************************!*\
  !*** ./src/app/state/selectors/user.selector.ts ***!
  \**************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   retrieveUserSelector: () => (/* binding */ retrieveUserSelector),
/* harmony export */   userApiResp: () => (/* binding */ userApiResp)
/* harmony export */ });
/* harmony import */ var _ngrx_store__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @ngrx/store */ 81383);

const userApiResp = 'userApiResp';
const retrieveUserSelector = (0,_ngrx_store__WEBPACK_IMPORTED_MODULE_0__.createFeatureSelector)(userApiResp);

/***/ }),

/***/ 76434:
/*!************************************!*\
  !*** ./src/app/util/baseHelper.ts ***!
  \************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   BaseHelper: () => (/* binding */ BaseHelper)
/* harmony export */ });
/* harmony import */ var _workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ 89204);
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! tslib */ 24398);
/* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @ionic/angular */ 21507);
/* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @ionic/angular */ 4059);
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @angular/core */ 37580);
/* harmony import */ var src_app_services_global__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! src/app/services/global */ 99328);
/* harmony import */ var _angular_router__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @angular/router */ 95072);
/* harmony import */ var _capacitor_filesystem__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @capacitor/filesystem */ 63474);
/* harmony import */ var _capacitor_preferences__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @capacitor/preferences */ 46493);
/* harmony import */ var _ngrx_store__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @ngrx/store */ 81383);
/* harmony import */ var _state_selectors_user_selector__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../state/selectors/user.selector */ 77451);
/* harmony import */ var _preferenceData__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./preferenceData */ 40162);
/* harmony import */ var _services_permission_service__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../services/permission.service */ 7773);

var _BaseHelper;











let BaseHelper = (_BaseHelper = class BaseHelper {
  constructor(toastController, alert, modal, navCtrl, g, router, menu, store, pref, permissionService) {
    this.toastController = toastController;
    this.alert = alert;
    this.modal = modal;
    this.navCtrl = navCtrl;
    this.g = g;
    this.router = router;
    this.menu = menu;
    this.store = store;
    this.pref = pref;
    this.permissionService = permissionService;
    this.supplierCache = [];
    this.routesConfig = {
      home: '/home',
      signin: '/signin',
      // tutorial: '/tutorial',
      childAdd: '/child-add',
      childEdit: '/child-edit/',
      childDetail: '/child-detail/',
      childList: '/child-list',
      plwAdd: '/add-pbw',
      plwDetail: '/woman-detail/',
      plwList: '/woman-list',
      plwEdit: '/woman-edit/',
      followupCreate: '/followup-create/',
      followupEdit: '/followup-edit/',
      followupView: '/followup-edit/',
      plwFollowupCreate: '/followup-create-woman/',
      plwFollowupEdit: '/followup-edit-woman/',
      plwFollowupView: '/followup-view-woman/',
      plwPregnancyHistoryCreate: '/pregnancy-history-create/',
      plwLocationUpdate: '/location-update-woman/',
      beneficiaryAssessment: '/beneficiary-assessment/',
      supplyAvaiableItems: '/supply-avaiable-items',
      manageSupplyRequestList: '/manage-supplylist/',
      manageSupplyListSupplyIn: '/manage-supplylist/in',
      manageSupplyListPutBackList: '/manage-supplylist/out',
      supplyIn: '/supply-in/',
      supplyEditIn: '/supply-edit-in/',
      supplyEditOut: '/supply-edit-out/'
    };
  }
  menuOpen() {
    var _this = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      yield _this.menu.enable(true);
    })();
  }
  menuClose() {
    this.menu.enable(false);
  }
  openTab(url) {
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      if (url) {
        window.open(url, '_blank');
      }
    })();
  }
  toast(_x) {
    var _this2 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* (message, duration = 5000, color = `success`) {
      const toast = yield _this2.toastController.create({
        message,
        duration,
        color,
        buttons: [{
          icon: 'close',
          role: 'cancel',
          handler: () => {}
        }]
      });
      toast.present();
    }).apply(this, arguments);
  }
  errorToast(_x2) {
    var _this3 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* (message, duration = 5000, color = `danger`) {
      const toast = yield _this3.toastController.create({
        message,
        duration,
        color,
        buttons: [{
          icon: 'close',
          role: 'cancel'
        }]
      });
      toast.present();
    }).apply(this, arguments);
  }
  /**
   * Show toast based on API response success/failure
   * @param response API response with success flag and message
   * @param duration Toast duration in milliseconds
   */
  responseToast(_x3) {
    var _this4 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* (response, duration = 5000) {
      if (response.success) {
        yield _this4.toast(response.message, duration, 'success');
      } else {
        yield _this4.errorToast(response.message, duration, 'danger');
      }
    }).apply(this, arguments);
  }
  loadAlert(header, msg, callback) {
    var _this5 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      const alert = yield _this5.alert.create({
        header,
        message: msg,
        buttons: [{
          text: 'Cancel',
          role: 'cancel',
          cssClass: 'success',
          handler: () => {}
        }, {
          text: 'OK',
          role: 'confirm',
          cssClass: 'danger',
          handler: () => {
            callback();
          }
        }]
      });
      alert.present();
    })();
  }
  setStorage(key, value) {
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      yield _capacitor_preferences__WEBPACK_IMPORTED_MODULE_3__.Preferences.set({
        key,
        value: JSON.stringify(value)
      });
    })();
  }
  getStorage(key) {
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      return yield _capacitor_preferences__WEBPACK_IMPORTED_MODULE_3__.Preferences.get({
        key
      });
    })();
  }
  setJws(tokenObj, profile, userXCompany) {
    this.setStorage('companyToken', tokenObj);
    this.g.jws = tokenObj.token;
    this.g.profile = profile;
    this.g.role = this.g.profile.companyProfiles[0].userXCompany.role;
    this.g.accessRole = userXCompany && userXCompany.accessRole;
  }
  clearJws() {
    var _this6 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      _this6.setStorage('companyToken', null);
      _this6.g.jws = null;
      _this6.g.profile = null;
      _this6.g.notifications = [];
      _this6.g.accessRole = null;
      _this6.g.role = null;
      _this6.g.auditLogAllow = false;
      _this6.g.docShareAllow = false;
    })();
  }
  getJws() {
    var _this7 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      return yield _this7.getStorage('companyToken');
    })();
  }
  navigateRoot(path) {
    this.router.navigateByUrl(path, {
      replaceUrl: true
    });
  }
  navigateWithParam(path, queryParams) {
    if (queryParams) {
      const navigationExtras = {
        queryParams,
        replaceUrl: true
      };
      this.navCtrl.navigateForward(path, navigationExtras);
      //this.navCtrl.pop();
    } else {
      this.navCtrl.navigateRoot(path);
    }
  }
  navigateForward(path) {
    this.navCtrl.navigateRoot(path);
  }
  navigateBack(path) {
    this.navCtrl.navigateBack(path);
  }
  goBack() {
    this.navCtrl.back();
  }
  writeImage(data) {
    var _this8 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      _this8.toast('Writing file...Please wait');
      const file = yield _capacitor_filesystem__WEBPACK_IMPORTED_MODULE_2__.Filesystem.writeFile({
        path: 'unique_text.pdf',
        data,
        directory: _capacitor_filesystem__WEBPACK_IMPORTED_MODULE_2__.Directory.Documents
      });
    })();
  }
  login(val) {
    var _this9 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      yield _this9.pref.login(val.data);
      _this9.navigateRoot(_this9.routesConfig.home);
    })();
  }
  logout() {
    var _this0 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* (reason = 'user') {
      // Check for offline assessments before logging out (only for user-initiated logout)
      if (reason === 'user') {
        const hasOfflineAssessments = yield _this0.checkOfflineAssessments();
        if (hasOfflineAssessments) {
          const alertDialog = yield _this0.alert.create({
            header: 'Cannot Logout',
            message: 'You have community assessments pending. Please complete community assessments before logging out.',
            buttons: [{
              text: 'View Community Assessments',
              handler: () => {
                _this0.navigateRoot('/offline-survey-list');
              }
            }, {
              text: 'Cancel',
              role: 'cancel'
            }],
            backdropDismiss: false
          });
          yield alertDialog.present();
          return;
        }
      }
      // For user-initiated logout, clear offline assessments
      // For token expiry, preserve them for same INF users
      if (reason === 'user') {
        yield _this0.clearOfflineAssessments();
      }
      yield _this0.pref.logout();
      return _this0.navigateRoot(_this0.routesConfig.signin);
    }).apply(this, arguments);
  }
  checkOfflineAssessments() {
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      try {
        const saved = yield _capacitor_preferences__WEBPACK_IMPORTED_MODULE_3__.Preferences.get({
          key: 'saved_offline_assessments'
        });
        if (saved.value) {
          const assessments = JSON.parse(saved.value);
          return assessments && assessments.length > 0;
        }
        return false;
      } catch (error) {
        return false;
      }
    })();
  }
  /**
   * Check if logout is allowed (public method for other components to use)
   */
  canLogout() {
    var _this1 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      return !(yield _this1.checkOfflineAssessments());
    })();
  }
  /**
   * Get count of offline assessments for display purposes
   */
  getOfflineAssessmentCount() {
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      try {
        const saved = yield _capacitor_preferences__WEBPACK_IMPORTED_MODULE_3__.Preferences.get({
          key: 'saved_offline_assessments'
        });
        if (saved.value) {
          const assessments = JSON.parse(saved.value);
          return assessments ? assessments.length : 0;
        }
        return 0;
      } catch (error) {
        return 0;
      }
    })();
  }
  /**
   * Notify that offline assessments have been updated
   * This can be called from assessment pages to trigger UI updates
   */
  notifyOfflineAssessmentChange() {
    // Trigger a custom event that the app component can listen to
    window.dispatchEvent(new CustomEvent('offlineAssessmentChanged'));
  }
  /**
   * Clear all offline assessments and related data
   */
  clearOfflineAssessments() {
    var _this10 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      try {
        const saved = yield _capacitor_preferences__WEBPACK_IMPORTED_MODULE_3__.Preferences.get({
          key: 'saved_offline_assessments'
        });
        if (saved.value) {
          const assessments = JSON.parse(saved.value);
          // Remove all assessment data
          for (const assessment of assessments) {
            yield _capacitor_preferences__WEBPACK_IMPORTED_MODULE_3__.Preferences.remove({
              key: assessment.key
            });
            const responsesKey = `responses_${assessment.key}`;
            yield _capacitor_preferences__WEBPACK_IMPORTED_MODULE_3__.Preferences.remove({
              key: responsesKey
            });
          }
        }
        // Remove the main assessments list
        yield _capacitor_preferences__WEBPACK_IMPORTED_MODULE_3__.Preferences.remove({
          key: 'saved_offline_assessments'
        });
        yield _capacitor_preferences__WEBPACK_IMPORTED_MODULE_3__.Preferences.remove({
          key: 'offline_assessments_inf_id'
        });
        _this10.notifyOfflineAssessmentChange();
      } catch (error) {}
    })();
  }
  /**
   * Store current user's INF ID with offline assessments
   */
  storeOfflineAssessmentInfId(user) {
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      try {
        var _user$profile;
        const defaultInfId = (_user$profile = user.profile) === null || _user$profile === void 0 || (_user$profile = _user$profile.default_inf) === null || _user$profile === void 0 ? void 0 : _user$profile.id;
        if (defaultInfId) {
          yield _capacitor_preferences__WEBPACK_IMPORTED_MODULE_3__.Preferences.set({
            key: 'offline_assessments_inf_id',
            value: defaultInfId.toString()
          });
        }
      } catch (error) {}
    })();
  }
  /**
   * Check if current user's INF matches stored offline assessments INF
   */
  checkInfCompatibility(user) {
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      try {
        var _user$profile2;
        const storedInfId = yield _capacitor_preferences__WEBPACK_IMPORTED_MODULE_3__.Preferences.get({
          key: 'offline_assessments_inf_id'
        });
        if (!storedInfId.value) {
          return true; // No stored INF, allow access
        }
        const currentInfId = (_user$profile2 = user.profile) === null || _user$profile2 === void 0 || (_user$profile2 = _user$profile2.default_inf) === null || _user$profile2 === void 0 ? void 0 : _user$profile2.id;
        if (!currentInfId) {
          return false; // User has no INF, deny access
        }
        return storedInfId.value === currentInfId.toString();
      } catch (error) {
        return false;
      }
    })();
  }
  /**
   * Handle login process with INF verification for offline assessments
   */
  handleLoginWithInfCheck(val) {
    var _this11 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      const user = val.data.user;
      // Check if there are existing offline assessments
      const hasOfflineAssessments = yield _this11.checkOfflineAssessments();
      if (hasOfflineAssessments) {
        const infCompatible = yield _this11.checkInfCompatibility(user);
        if (!infCompatible) {
          // Different INF - show warning and clear data
          const alertDialog = yield _this11.alert.create({
            header: 'Different Facility Detected',
            message: 'You are logging in from a different INF facility. Previous community assessment data will be removed to prevent data conflicts.',
            buttons: [{
              text: 'Continue',
              handler: function () {
                var _ref = (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
                  yield _this11.clearOfflineAssessments();
                  yield _this11.completeLogin(val);
                });
                return function handler() {
                  return _ref.apply(this, arguments);
                };
              }()
            }, {
              text: 'Cancel',
              role: 'cancel'
            }],
            backdropDismiss: false
          });
          yield alertDialog.present();
          return;
        } else {
          // Same INF - show info message
          const assessmentCount = yield _this11.getOfflineAssessmentCount();
          _this11.toast(`Welcome back! You have ${assessmentCount} community assessment(s) from your previous session.`);
        }
      }
      yield _this11.completeLogin(val);
    })();
  }
  /**
   * Complete the login process
   */
  completeLogin(val) {
    var _this12 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      yield _this12.pref.login(val.data);
      yield _this12.storeOfflineAssessmentInfId(val.data.user);
      _this12.navigateRoot(_this12.routesConfig.home);
    })();
  }
  getCurrentUser() {
    return this.getValueFromObservable(this.store.pipe((0,_ngrx_store__WEBPACK_IMPORTED_MODULE_7__.select)(_state_selectors_user_selector__WEBPACK_IMPORTED_MODULE_4__.retrieveUserSelector)));
  }
  checkHasLoggedInEver() {
    var _this13 = this;
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      return yield _this13.pref.checkHasLoggedInEver();
    })();
  }
  getValueFromObservable(obj) {
    let value;
    obj.subscribe(v => value = v);
    return value;
  }
  getMenuConfig(currentUser) {
    if (currentUser) {
      const storeKeeperPages = [{
        id: 'menu-home',
        title: 'Dashboard',
        url: '/home',
        icon: 'md-house'
      }, {
        id: 'menu-available-supply-items',
        title: 'Store',
        url: this.routesConfig.supplyAvaiableItems,
        icon: 'md-Preparedness'
      }, {
        id: 'menu-supply-transfer-in',
        title: 'Stock In',
        url: this.routesConfig.manageSupplyListSupplyIn,
        icon: 'md-Distribution-site'
      }, {
        id: 'menu-supply-transfer-out',
        title: 'Stock Out',
        url: '/manage-supplylist/out',
        icon: 'md-Distribution-site'
      }];
      const facilitySuperVisonPages = [{
        id: 'menu-home',
        title: 'Dashboard',
        url: '/home',
        icon: 'home-outline'
      }, {
        id: 'menu-beneficiary',
        title: 'Manage Beneficiary',
        icon: 'people-outline',
        expanded: false,
        children: [{
          id: 'menu-children',
          title: 'Children',
          url: this.routesConfig.childList,
          icon: 'person-outline',
          permission: 'app-child-list-view'
        }, {
          id: 'menu-mothers',
          title: 'Mothers',
          url: this.routesConfig.plwList,
          icon: 'woman-outline',
          permission: 'app-pbw-list-view'
        }, {
          id: 'menu-beneficiary-registers',
          title: 'Registers',
          url: '/beneficiary-register',
          icon: 'document-text-outline',
          permission: 'app-beneficiary-register-show'
        }]
      },
      // {
      //   title: 'PLW Transferred In',
      //   url: this.routesConfig.transferInPlwList,
      //   icon: 'md-Permanent-camp',
      // },
      // {
      //   title: 'PLW Transferred Out',
      //   url: this.routesConfig.transferOutPlwList,
      //   icon: 'md-Temporary-camp',
      // },
      {
        id: 'menu-transfer-requests',
        title: 'Beneficiary Transfer',
        url: '/transfer-out-list',
        icon: 'swap-horizontal-outline',
        permission: 'app-transfer-request'
      }, {
        id: 'menu-stock-management',
        title: 'Stock Management',
        icon: 'cube-outline',
        expanded: false,
        children: [{
          id: 'menu-available-supply-items',
          title: 'Supply Items',
          url: this.routesConfig.supplyAvaiableItems,
          icon: 'cube-outline'
        }, {
          id: 'menu-requisition-list',
          title: 'Requisitions',
          url: '/manage-supplylist/out',
          icon: 'list-outline',
          queryParams: {
            mode: 'requisition'
          }
        }]
      }, {
        id: 'menu-community-assessment',
        title: 'Community Assessment',
        icon: 'clipboard-outline',
        expanded: false,
        permission: 'app-community-assessment',
        children: [{
          id: 'menu-setup-community-assessment',
          title: 'Setup Assessment',
          url: '/offline-assessment',
          icon: 'cloud-download-outline',
          permission: 'app-community-assessment'
        }, {
          id: 'menu-community-assessments',
          title: 'Assessments',
          url: '/offline-survey-list',
          icon: 'documents-outline',
          permission: 'app-community-assessment'
        }]
      }, {
        id: 'menu-facility-supervision',
        title: 'Supervision',
        url: '/facility-supervision-list',
        icon: 'analytics-outline',
        permission: 'app-facility-supervision'
      }, {
        id: 'menu-beneficiary-activity',
        title: 'Beneficiary Activity',
        url: '/beneficiary-activity-list',
        icon: 'time-outline'
      }];
      const scManagerPages = [{
        id: 'menu-home',
        title: 'Dashboard',
        url: '/home',
        icon: 'home-outline'
      }, {
        id: 'menu-beneficiary',
        title: 'Manage Beneficiary',
        icon: 'people-outline',
        expanded: false,
        children: [{
          id: 'menu-children',
          title: 'Children',
          url: this.routesConfig.childList,
          icon: 'person-outline',
          permission: 'app-child-list-view'
        }, {
          id: 'menu-mothers',
          title: 'Mothers',
          url: this.routesConfig.plwList,
          icon: 'woman-outline',
          permission: 'app-pbw-list-view'
        }]
      }, {
        id: 'menu-inpatient-care-treatment',
        title: 'Inpatient Care',
        url: '/inpatient-care-treatment-list',
        icon: 'medical-outline'
      }, {
        id: 'menu-beneficiary-activity',
        title: 'Beneficiary Activity',
        url: '/beneficiary-activity-list',
        icon: 'time-outline'
      }];
      const userPages = [{
        id: 'menu-home',
        title: 'Dashboard',
        url: '/home',
        icon: 'home-outline'
      }, {
        id: 'menu-beneficiary',
        title: 'Manage Beneficiary',
        icon: 'people-outline',
        expanded: false,
        children: [{
          id: 'menu-children',
          title: 'Children',
          url: this.routesConfig.childList,
          icon: 'person-outline',
          permission: 'app-child-list-view'
        }, {
          id: 'menu-mothers',
          title: 'Mothers',
          url: this.routesConfig.plwList,
          icon: 'woman-outline',
          permission: 'app-pbw-list-view'
        }, {
          id: 'menu-beneficiary-registers',
          title: 'Registers',
          url: '/beneficiary-register',
          icon: 'document-text-outline',
          permission: 'app-beneficiary-register-show'
        }]
      }, {
        id: 'menu-community-assessment',
        title: 'Community Assessment',
        icon: 'clipboard-outline',
        expanded: false,
        permission: 'app-community-assessment',
        children: [{
          id: 'menu-setup-community-assessment',
          title: 'Setup Assessment',
          url: '/offline-assessment',
          icon: 'cloud-download-outline',
          permission: 'app-community-assessment'
        }, {
          id: 'menu-community-assessments',
          title: 'Assessments',
          url: '/offline-survey-list',
          icon: 'documents-outline',
          permission: 'app-community-assessment'
        }]
      }, {
        id: 'menu-facility-supervision',
        title: 'Supervision',
        url: '/facility-supervision-list',
        icon: 'analytics-outline',
        permission: 'app-facility-supervision'
      }];
      let pages = [];
      if (currentUser.user_type === 'Store Keeper') {
        pages = storeKeeperPages;
      } else if (currentUser.user_type === 'Facility Supervisor') {
        pages = facilitySuperVisonPages;
      } else if (currentUser.user_type === 'SC Manager') {
        pages = scManagerPages;
      } else {
        pages = userPages;
      }
      // Filter pages based on permissions
      return this.filterMenuByPermissions(pages);
    }
    return [];
  }
  /**
   * Filter menu items based on user permissions
   * Menu items without a permission field are always shown
   * Menu items with a permission field are only shown if user has that permission
   */
  filterMenuByPermissions(menuItems) {
    return menuItems.filter(item => {
      // If no permission is required, always show the item
      if (!item.permission) {
        return true;
      }
      // If permission is required, check if user has it
      return this.permissionService.hasPermission(item.permission);
    });
  }
}, _BaseHelper.ctorParameters = () => [{
  type: _ionic_angular__WEBPACK_IMPORTED_MODULE_8__.ToastController
}, {
  type: _ionic_angular__WEBPACK_IMPORTED_MODULE_8__.AlertController
}, {
  type: _ionic_angular__WEBPACK_IMPORTED_MODULE_8__.ModalController
}, {
  type: _ionic_angular__WEBPACK_IMPORTED_MODULE_9__.NavController
}, {
  type: src_app_services_global__WEBPACK_IMPORTED_MODULE_1__.GlobalProvider
}, {
  type: _angular_router__WEBPACK_IMPORTED_MODULE_10__.Router
}, {
  type: _ionic_angular__WEBPACK_IMPORTED_MODULE_8__.MenuController
}, {
  type: _ngrx_store__WEBPACK_IMPORTED_MODULE_7__.Store
}, {
  type: _preferenceData__WEBPACK_IMPORTED_MODULE_5__.PreferenceData
}, {
  type: _services_permission_service__WEBPACK_IMPORTED_MODULE_6__.PermissionService
}], _BaseHelper);
BaseHelper = (0,tslib__WEBPACK_IMPORTED_MODULE_11__.__decorate)([(0,_angular_core__WEBPACK_IMPORTED_MODULE_12__.Injectable)({
  providedIn: 'root'
})], BaseHelper);


/***/ }),

/***/ 55309:
/*!********************************************!*\
  !*** ./src/app/util/introGuard.service.ts ***!
  \********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   IntroGuard: () => (/* binding */ IntroGuard)
/* harmony export */ });
/* harmony import */ var _workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ 89204);
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! tslib */ 24398);
/* harmony import */ var src_app_util_baseHelper__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! src/app/util/baseHelper */ 76434);
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/core */ 37580);

var _IntroGuard;



let IntroGuard = (_IntroGuard = class IntroGuard {
  constructor(b) {
    this.b = b;
  }
  canLoad() {
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      // const result = this.b.checkHasLoggedInEver();
      return;
    })();
  }
}, _IntroGuard.ctorParameters = () => [{
  type: src_app_util_baseHelper__WEBPACK_IMPORTED_MODULE_1__.BaseHelper
}], _IntroGuard);
IntroGuard = (0,tslib__WEBPACK_IMPORTED_MODULE_2__.__decorate)([(0,_angular_core__WEBPACK_IMPORTED_MODULE_3__.Injectable)({
  providedIn: 'root'
})], IntroGuard);


/***/ }),

/***/ 40162:
/*!****************************************!*\
  !*** ./src/app/util/preferenceData.ts ***!
  \****************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   PreferenceData: () => (/* binding */ PreferenceData)
/* harmony export */ });
/* harmony import */ var _workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js */ 89204);
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! tslib */ 24398);
/* harmony import */ var _state_actions_user_action__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./../state/actions/user.action */ 89801);
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @angular/core */ 37580);
/* harmony import */ var _ngrx_store__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @ngrx/store */ 81383);
/* harmony import */ var _services_permission_service__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../services/permission.service */ 7773);

var _PreferenceData;





let PreferenceData = (_PreferenceData = class PreferenceData {
  constructor(store, permissionService) {
    var _this = this;
    this.store = store;
    this.permissionService = permissionService;
    this.checkHasLoggedInEver = /*#__PURE__*/(0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      // Check localStorage for existing user data instead of Capacitor storage
      const token = localStorage.getItem('token');
      const userData = localStorage.getItem('user');
      if (token && userData) {
        try {
          const user = JSON.parse(userData);
          // Restore permissions from user data
          if (user !== null && user !== void 0 && user.roles) {
            _this.permissionService.setPermissionsFromRoles(user);
          }
          const mockResponse = {
            token: token,
            user: user
          };
          _this.store.dispatch((0,_state_actions_user_action__WEBPACK_IMPORTED_MODULE_1__.login)(mockResponse));
          return true;
        } catch (error) {
          return false;
        }
      }
      return false;
    });
    this.login = /*#__PURE__*/function () {
      var _ref2 = (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* (value) {
        // Only dispatch to NgRx store, no Capacitor storage
        _this.store.dispatch((0,_state_actions_user_action__WEBPACK_IMPORTED_MODULE_1__.login)(value));
      });
      return function (_x) {
        return _ref2.apply(this, arguments);
      };
    }();
    this.logout = /*#__PURE__*/(0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      localStorage.clear();
      _this.permissionService.clearPermissions();
      _this.store.dispatch((0,_state_actions_user_action__WEBPACK_IMPORTED_MODULE_1__.login)(null));
    });
  }
  getLoggedInUser() {
    return (0,_workdir_node_modules_babel_runtime_helpers_esm_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_0__["default"])(function* () {
      // Get user data from localStorage instead of Capacitor storage
      const token = localStorage.getItem('token');
      const userData = localStorage.getItem('user');
      if (token && userData) {
        try {
          const user = JSON.parse(userData);
          const mockResponse = {
            token: token,
            user: user
          };
          return mockResponse;
        } catch (error) {
          return null;
        }
      }
      return null;
    })();
  }
}, _PreferenceData.ctorParameters = () => [{
  type: _ngrx_store__WEBPACK_IMPORTED_MODULE_3__.Store
}, {
  type: _services_permission_service__WEBPACK_IMPORTED_MODULE_2__.PermissionService
}], _PreferenceData);
PreferenceData = (0,tslib__WEBPACK_IMPORTED_MODULE_4__.__decorate)([(0,_angular_core__WEBPACK_IMPORTED_MODULE_5__.Injectable)({
  providedIn: 'root'
})], PreferenceData);


/***/ }),

/***/ 45312:
/*!*****************************************!*\
  !*** ./src/environments/environment.ts ***!
  \*****************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   domain: () => (/* binding */ domain),
/* harmony export */   environment: () => (/* binding */ environment),
/* harmony export */   hostLocal: () => (/* binding */ hostLocal),
/* harmony export */   ns: () => (/* binding */ ns)
/* harmony export */ });
// This file can be replaced during build by using the `fileReplacements` array.
// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.
// The list of file replacements can be found in `angular.json`.
const environment = {
  production: false
};
const ns = '/api/v1';
const hostLocal = 'https://enim-stage.b2bsolver.com';
const domain = `${hostLocal}${ns}`;

/***/ }),

/***/ 84429:
/*!*********************!*\
  !*** ./src/main.ts ***!
  \*********************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/core */ 37580);
/* harmony import */ var _angular_platform_browser_dynamic__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/platform-browser-dynamic */ 52476);
/* harmony import */ var _app_app_module__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./app/app.module */ 50635);
/* harmony import */ var _environments_environment__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./environments/environment */ 45312);




if (_environments_environment__WEBPACK_IMPORTED_MODULE_1__.environment.production) {
  (0,_angular_core__WEBPACK_IMPORTED_MODULE_2__.enableProdMode)();
}
(0,_angular_platform_browser_dynamic__WEBPACK_IMPORTED_MODULE_3__.platformBrowserDynamic)().bootstrapModule(_app_app_module__WEBPACK_IMPORTED_MODULE_0__.AppModule).catch(err => {});

/***/ }),

/***/ 88996:
/*!******************************************************************************************************************************************!*\
  !*** ./node_modules/@ionic/core/dist/esm/ lazy ^\.\/.*\.entry\.js$ include: \.entry\.js$ exclude: \.system\.entry\.js$ namespace object ***!
  \******************************************************************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var map = {
	"./ion-accordion_2.entry.js": [
		37518,
		"common",
		"node_modules_ionic_core_dist_esm_ion-accordion_2_entry_js"
	],
	"./ion-action-sheet.entry.js": [
		41981,
		"common",
		"node_modules_ionic_core_dist_esm_ion-action-sheet_entry_js"
	],
	"./ion-alert.entry.js": [
		71603,
		"common",
		"node_modules_ionic_core_dist_esm_ion-alert_entry_js"
	],
	"./ion-app_8.entry.js": [
		82273,
		"common",
		"node_modules_ionic_core_dist_esm_ion-app_8_entry_js"
	],
	"./ion-avatar_3.entry.js": [
		19642,
		"node_modules_ionic_core_dist_esm_ion-avatar_3_entry_js"
	],
	"./ion-back-button.entry.js": [
		32095,
		"common",
		"node_modules_ionic_core_dist_esm_ion-back-button_entry_js"
	],
	"./ion-backdrop.entry.js": [
		72335,
		"node_modules_ionic_core_dist_esm_ion-backdrop_entry_js"
	],
	"./ion-breadcrumb_2.entry.js": [
		78221,
		"common",
		"node_modules_ionic_core_dist_esm_ion-breadcrumb_2_entry_js"
	],
	"./ion-button_2.entry.js": [
		47184,
		"node_modules_ionic_core_dist_esm_ion-button_2_entry_js"
	],
	"./ion-card_5.entry.js": [
		38759,
		"node_modules_ionic_core_dist_esm_ion-card_5_entry_js"
	],
	"./ion-checkbox.entry.js": [
		24248,
		"node_modules_ionic_core_dist_esm_ion-checkbox_entry_js"
	],
	"./ion-chip.entry.js": [
		69863,
		"node_modules_ionic_core_dist_esm_ion-chip_entry_js"
	],
	"./ion-col_3.entry.js": [
		51769,
		"node_modules_ionic_core_dist_esm_ion-col_3_entry_js"
	],
	"./ion-datetime-button.entry.js": [
		2569,
		"default-node_modules_ionic_core_dist_esm_data-DCORV9FH_js",
		"node_modules_ionic_core_dist_esm_ion-datetime-button_entry_js"
	],
	"./ion-datetime_3.entry.js": [
		76534,
		"default-node_modules_ionic_core_dist_esm_data-DCORV9FH_js",
		"common",
		"node_modules_ionic_core_dist_esm_ion-datetime_3_entry_js"
	],
	"./ion-fab_3.entry.js": [
		25458,
		"common",
		"node_modules_ionic_core_dist_esm_ion-fab_3_entry_js"
	],
	"./ion-img.entry.js": [
		70654,
		"node_modules_ionic_core_dist_esm_ion-img_entry_js"
	],
	"./ion-infinite-scroll_2.entry.js": [
		36034,
		"common",
		"node_modules_ionic_core_dist_esm_ion-infinite-scroll_2_entry_js"
	],
	"./ion-input-otp.entry.js": [
		20381,
		"common",
		"node_modules_ionic_core_dist_esm_ion-input-otp_entry_js"
	],
	"./ion-input-password-toggle.entry.js": [
		5196,
		"common",
		"node_modules_ionic_core_dist_esm_ion-input-password-toggle_entry_js"
	],
	"./ion-input.entry.js": [
		20761,
		"default-node_modules_ionic_core_dist_esm_input_utils-DrvTa8gz_js-node_modules_ionic_core_dist-ed3a0b",
		"common",
		"node_modules_ionic_core_dist_esm_ion-input_entry_js"
	],
	"./ion-item-option_3.entry.js": [
		6492,
		"common",
		"node_modules_ionic_core_dist_esm_ion-item-option_3_entry_js"
	],
	"./ion-item_8.entry.js": [
		29557,
		"common",
		"node_modules_ionic_core_dist_esm_ion-item_8_entry_js"
	],
	"./ion-loading.entry.js": [
		68353,
		"common",
		"node_modules_ionic_core_dist_esm_ion-loading_entry_js"
	],
	"./ion-menu_3.entry.js": [
		51024,
		"common",
		"node_modules_ionic_core_dist_esm_ion-menu_3_entry_js"
	],
	"./ion-modal.entry.js": [
		29160,
		"common",
		"node_modules_ionic_core_dist_esm_ion-modal_entry_js"
	],
	"./ion-nav_2.entry.js": [
		60393,
		"node_modules_ionic_core_dist_esm_ion-nav_2_entry_js"
	],
	"./ion-picker-column-option.entry.js": [
		68442,
		"node_modules_ionic_core_dist_esm_ion-picker-column-option_entry_js"
	],
	"./ion-picker-column.entry.js": [
		43110,
		"common",
		"node_modules_ionic_core_dist_esm_ion-picker-column_entry_js"
	],
	"./ion-picker.entry.js": [
		15575,
		"node_modules_ionic_core_dist_esm_ion-picker_entry_js"
	],
	"./ion-popover.entry.js": [
		16772,
		"common",
		"node_modules_ionic_core_dist_esm_ion-popover_entry_js"
	],
	"./ion-progress-bar.entry.js": [
		34810,
		"node_modules_ionic_core_dist_esm_ion-progress-bar_entry_js"
	],
	"./ion-radio_2.entry.js": [
		14639,
		"common",
		"node_modules_ionic_core_dist_esm_ion-radio_2_entry_js"
	],
	"./ion-range.entry.js": [
		90628,
		"common",
		"node_modules_ionic_core_dist_esm_ion-range_entry_js"
	],
	"./ion-refresher_2.entry.js": [
		10852,
		"common",
		"node_modules_ionic_core_dist_esm_ion-refresher_2_entry_js"
	],
	"./ion-reorder_2.entry.js": [
		61479,
		"common",
		"node_modules_ionic_core_dist_esm_ion-reorder_2_entry_js"
	],
	"./ion-ripple-effect.entry.js": [
		24065,
		"node_modules_ionic_core_dist_esm_ion-ripple-effect_entry_js"
	],
	"./ion-route_4.entry.js": [
		57971,
		"node_modules_ionic_core_dist_esm_ion-route_4_entry_js"
	],
	"./ion-searchbar.entry.js": [
		93184,
		"common",
		"node_modules_ionic_core_dist_esm_ion-searchbar_entry_js"
	],
	"./ion-segment-content.entry.js": [
		94312,
		"node_modules_ionic_core_dist_esm_ion-segment-content_entry_js"
	],
	"./ion-segment-view.entry.js": [
		54540,
		"common",
		"node_modules_ionic_core_dist_esm_ion-segment-view_entry_js"
	],
	"./ion-segment_2.entry.js": [
		469,
		"common",
		"node_modules_ionic_core_dist_esm_ion-segment_2_entry_js"
	],
	"./ion-select-modal.entry.js": [
		57101,
		"node_modules_ionic_core_dist_esm_ion-select-modal_entry_js"
	],
	"./ion-select_3.entry.js": [
		78471,
		"common",
		"node_modules_ionic_core_dist_esm_ion-select_3_entry_js"
	],
	"./ion-spinner.entry.js": [
		40388,
		"common",
		"node_modules_ionic_core_dist_esm_ion-spinner_entry_js"
	],
	"./ion-split-pane.entry.js": [
		42392,
		"node_modules_ionic_core_dist_esm_ion-split-pane_entry_js"
	],
	"./ion-tab-bar_2.entry.js": [
		36059,
		"common",
		"node_modules_ionic_core_dist_esm_ion-tab-bar_2_entry_js"
	],
	"./ion-tab_2.entry.js": [
		5427,
		"node_modules_ionic_core_dist_esm_ion-tab_2_entry_js"
	],
	"./ion-text.entry.js": [
		50198,
		"node_modules_ionic_core_dist_esm_ion-text_entry_js"
	],
	"./ion-textarea.entry.js": [
		1735,
		"default-node_modules_ionic_core_dist_esm_input_utils-DrvTa8gz_js-node_modules_ionic_core_dist-ed3a0b",
		"node_modules_ionic_core_dist_esm_ion-textarea_entry_js"
	],
	"./ion-toast.entry.js": [
		7510,
		"common",
		"node_modules_ionic_core_dist_esm_ion-toast_entry_js"
	],
	"./ion-toggle.entry.js": [
		45297,
		"common",
		"node_modules_ionic_core_dist_esm_ion-toggle_entry_js"
	]
};
function webpackAsyncContext(req) {
	if(!__webpack_require__.o(map, req)) {
		return Promise.resolve().then(() => {
			var e = new Error("Cannot find module '" + req + "'");
			e.code = 'MODULE_NOT_FOUND';
			throw e;
		});
	}

	var ids = map[req], id = ids[0];
	return Promise.all(ids.slice(1).map(__webpack_require__.e)).then(() => {
		return __webpack_require__(id);
	});
}
webpackAsyncContext.keys = () => (Object.keys(map));
webpackAsyncContext.id = 88996;
module.exports = webpackAsyncContext;

/***/ }),

/***/ 54140:
/*!************************************************************************************************************************************************************!*\
  !*** ./node_modules/@stencil/core/internal/client/ lazy ^\.\/.*\.entry\.js.*$ include: \.entry\.js$ exclude: \.system\.entry\.js$ strict namespace object ***!
  \************************************************************************************************************************************************************/
/***/ ((module) => {

function webpackEmptyAsyncContext(req) {
	// Here Promise.resolve().then() is used instead of new Promise() to prevent
	// uncaught exception popping up in devtools
	return Promise.resolve().then(() => {
		var e = new Error("Cannot find module '" + req + "'");
		e.code = 'MODULE_NOT_FOUND';
		throw e;
	});
}
webpackEmptyAsyncContext.keys = () => ([]);
webpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;
webpackEmptyAsyncContext.id = 54140;
module.exports = webpackEmptyAsyncContext;

/***/ }),

/***/ 37282:
/*!***********************************************!*\
  !*** ./src/app/app.component.scss?ngResource ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Imports
var ___CSS_LOADER_API_SOURCEMAP_IMPORT___ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/sourceMaps.js */ 53142);
var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(/*! ../../node_modules/css-loader/dist/runtime/api.js */ 35950);
var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);
// Module
___CSS_LOADER_EXPORT___.push([module.id, `ion-split-pane {
  --side-width: 300px !important;
  --side-max-width: 300px !important;
}
ion-split-pane ion-menu {
  --width: 300px !important;
  --max-width: 300px !important;
}

ion-menu {
  --padding-start: 8px;
  --padding-end: 8px;
  --padding-top: 20px;
  --padding-bottom: 20px;
}

ion-menu ion-item.selected {
  --background: rgba(var(--ion-color-primary-rgb), 0.14);
}

ion-menu ion-item.selected ion-icon {
  color: var(--ion-color-primary);
}

ion-note {
  display: inline-block;
}

ion-menu.md ion-content {
  --padding-start: 8px;
  --padding-end: 8px;
  --padding-top: 20px;
  --padding-bottom: 20px;
  --side-max-width: 200px;
}

/* Modern Menu Styling */
.modern-menu {
  --width: 280px;
  --background: #ffffff;
  --border-color: transparent;
}

.menu-header {
  --background: transparent;
  padding: 16px;
}

.app-branding {
  display: flex;
  align-items: center;
  padding: 8px 0;
}

.logo-container {
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--ion-color-primary);
  border-radius: 12px;
  margin-right: 16px;
}

.logo-container ion-icon {
  color: white;
}

.app-info h2 {
  margin: 0;
  font-weight: 600;
  font-size: 20px;
  color: var(--ion-color-dark);
}

.app-version {
  margin: 0;
  font-size: 12px;
  color: var(--ion-color-medium);
}

.menu-content {
  --padding-top: 0;
  --padding-start: 0;
  --padding-end: 0;
  --padding-bottom: 0;
}

.user-profile {
  display: flex;
  align-items: center;
  padding: 16px;
  margin-bottom: 8px;
  background-color: rgba(var(--ion-color-primary-rgb), 0.05);
}

.user-avatar ion-avatar {
  width: 48px;
  height: 48px;
  background-color: rgba(var(--ion-color-primary-rgb), 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
}

.user-avatar ion-icon {
  color: var(--ion-color-primary);
}

.user-info {
  margin-left: 16px;
}

.user-info h3 {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  color: var(--ion-color-dark);
}

.user-info p {
  margin: 0;
  font-size: 14px;
  color: var(--ion-color-medium);
}

.menu-section {
  margin-top: 16px;
}

.section-title {
  font-size: 12px;
  font-weight: 600;
  color: var(--ion-color-medium);
  padding: 0 16px;
  margin-bottom: 8px;
  letter-spacing: 0.5px;
}

ion-list {
  padding: 0;
  background: transparent;
}

.menu-item {
  --padding-start: 16px;
  --border-radius: 0;
  --min-height: 50px;
  margin: 0;
  transition: background-color 0.2s;
}

.menu-item ion-icon {
  font-size: 20px;
  color: var(--ion-color-primary);
  margin-right: 12px;
}

.menu-item ion-label {
  font-size: 15px;
  font-weight: 500;
  color: var(--ion-color-dark);
}

.menu-item.selected {
  --background: rgba(var(--ion-color-primary-rgb), 0.1);
  border-left: 4px solid var(--ion-color-primary);
}

.menu-item.selected ion-icon {
  color: var(--ion-color-primary);
}

.menu-item.selected ion-label {
  color: var(--ion-color-primary);
  font-weight: 600;
}

/* Parent menu item styling */
.parent-menu {
  cursor: pointer;
}

.parent-menu ion-icon[slot=end] {
  font-size: 18px;
  color: var(--ion-color-medium);
  transition: transform 0.3s ease;
}

/* Submenu styling */
.submenu {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-in-out;
  background-color: rgba(var(--ion-color-light-rgb), 0.3);
}

.submenu.expanded {
  max-height: 500px;
}

.submenu-item {
  --padding-start: 48px;
  --min-height: 44px;
  font-size: 14px;
}

.submenu-item ion-icon {
  font-size: 18px;
  color: var(--ion-color-medium);
}

.submenu-item ion-label {
  font-size: 14px;
  font-weight: 400;
}

.submenu-item.selected {
  --background: rgba(var(--ion-color-primary-rgb), 0.12);
  border-left: 3px solid var(--ion-color-primary);
}

.submenu-item.selected ion-icon {
  color: var(--ion-color-primary);
}

.submenu-item.selected ion-label {
  color: var(--ion-color-primary);
  font-weight: 600;
}

/* Dark theme submenu adjustments */
.dark-theme .submenu {
  background-color: rgba(255, 255, 255, 0.03);
}

.dark-theme .submenu-item ion-label {
  color: #b0b0b0;
}

.menu-footer {
  padding: 16px;
  text-align: center;
  margin-top: 24px;
  border-top: 1px solid rgba(var(--ion-color-medium-rgb), 0.2);
}

.menu-footer p {
  margin: 0;
  font-size: 12px;
  color: var(--ion-color-medium);
}

/* Dark theme adjustments */
.dark-theme .modern-menu {
  --background: #121212;
}

.dark-theme .app-info h2 {
  color: #ffffff;
}

.dark-theme .user-profile {
  background-color: rgba(255, 255, 255, 0.05);
}

.dark-theme .user-info h3 {
  color: #ffffff;
}

.dark-theme .menu-item ion-label {
  color: #e0e0e0;
}

.dark-theme .menu-footer {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}`, "",{"version":3,"sources":["webpack://./src/app/app.component.scss"],"names":[],"mappings":"AAGA;EACI,8BAAA;EACA,kCAAA;AAFJ;AAGI;EACI,yBAAA;EACA,6BAAA;AADR;;AA+BA;EACE,oBAAA;EACA,kBAAA;EACA,mBAAA;EACA,sBAAA;AA5BF;;AA+BA;EACE,sDAAA;AA5BF;;AA+BA;EACE,+BAAA;AA5BF;;AA8CA;EACE,qBAAA;AA3CF;;AA+CA;EACE,oBAAA;EACA,kBAAA;EACA,mBAAA;EACA,sBAAA;EACA,uBAAA;AA5CF;;AAgDE,wBAAA;AACA;EACE,cAAA;EACA,qBAAA;EACA,2BAAA;AA7CJ;;AAgDE;EACE,yBAAA;EACA,aAAA;AA7CJ;;AAgDE;EACE,aAAA;EACA,mBAAA;EACA,cAAA;AA7CJ;;AAgDE;EACE,WAAA;EACA,YAAA;EACA,aAAA;EACA,mBAAA;EACA,uBAAA;EACA,oCAAA;EACA,mBAAA;EACA,kBAAA;AA7CJ;;AAgDE;EACE,YAAA;AA7CJ;;AAgDE;EACE,SAAA;EACA,gBAAA;EACA,eAAA;EACA,4BAAA;AA7CJ;;AAgDE;EACE,SAAA;EACA,eAAA;EACA,8BAAA;AA7CJ;;AAgDE;EACE,gBAAA;EACA,kBAAA;EACA,gBAAA;EACA,mBAAA;AA7CJ;;AAgDE;EACE,aAAA;EACA,mBAAA;EACA,aAAA;EACA,kBAAA;EACA,0DAAA;AA7CJ;;AAgDE;EACE,WAAA;EACA,YAAA;EACA,yDAAA;EACA,aAAA;EACA,mBAAA;EACA,uBAAA;AA7CJ;;AAgDE;EACE,+BAAA;AA7CJ;;AAgDE;EACE,iBAAA;AA7CJ;;AAgDE;EACE,SAAA;EACA,eAAA;EACA,gBAAA;EACA,4BAAA;AA7CJ;;AAgDE;EACE,SAAA;EACA,eAAA;EACA,8BAAA;AA7CJ;;AAgDE;EACE,gBAAA;AA7CJ;;AAgDE;EACE,eAAA;EACA,gBAAA;EACA,8BAAA;EACA,eAAA;EACA,kBAAA;EACA,qBAAA;AA7CJ;;AAgDE;EACE,UAAA;EACA,uBAAA;AA7CJ;;AAgDE;EACE,qBAAA;EACA,kBAAA;EACA,kBAAA;EACA,SAAA;EACA,iCAAA;AA7CJ;;AAgDE;EACE,eAAA;EACA,+BAAA;EACA,kBAAA;AA7CJ;;AAgDE;EACE,eAAA;EACA,gBAAA;EACA,4BAAA;AA7CJ;;AAgDE;EACE,qDAAA;EACA,+CAAA;AA7CJ;;AAgDE;EACE,+BAAA;AA7CJ;;AAgDE;EACE,+BAAA;EACA,gBAAA;AA7CJ;;AAgDE,6BAAA;AACA;EACE,eAAA;AA7CJ;;AAgDE;EACE,eAAA;EACA,8BAAA;EACA,+BAAA;AA7CJ;;AAgDE,oBAAA;AACA;EACE,aAAA;EACA,gBAAA;EACA,uCAAA;EACA,uDAAA;AA7CJ;;AAgDE;EACE,iBAAA;AA7CJ;;AAgDE;EACE,qBAAA;EACA,kBAAA;EACA,eAAA;AA7CJ;;AAgDE;EACE,eAAA;EACA,8BAAA;AA7CJ;;AAgDE;EACE,eAAA;EACA,gBAAA;AA7CJ;;AAgDE;EACE,sDAAA;EACA,+CAAA;AA7CJ;;AAgDE;EACE,+BAAA;AA7CJ;;AAgDE;EACE,+BAAA;EACA,gBAAA;AA7CJ;;AAgDE,mCAAA;AACA;EACE,2CAAA;AA7CJ;;AAgDE;EACE,cAAA;AA7CJ;;AAgDE;EACE,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,4DAAA;AA7CJ;;AAgDE;EACE,SAAA;EACA,eAAA;EACA,8BAAA;AA7CJ;;AAgDE,2BAAA;AACA;EACE,qBAAA;AA7CJ;;AAgDE;EACE,cAAA;AA7CJ;;AAgDE;EACE,2CAAA;AA7CJ;;AAgDE;EACE,cAAA;AA7CJ;;AAgDE;EACE,cAAA;AA7CJ;;AAgDE;EACE,8CAAA;AA7CJ","sourcesContent":["\n\n\nion-split-pane {\n    --side-width: 300px !important;\n    --side-max-width: 300px !important;\n    ion-menu {\n        --width: 300px !important;\n        --max-width: 300px !important;\n    }\n}\n\n// @media screen and (max-width: 768px) {\n//     ion-split-pane {\n//         --side-width: 68px !important;\n//         --side-max-width: 68px !important;\n//         --side-min-width: 68px !important;\n//         ion-menu {\n//             --width: 68px !important;\n//             --max-width: 68px !important;\n//             --min-width: 68px !important;\n//         }\n//     }\n// }\n\n// @media screen and (min-width: 768px) {\n//     ion-split-pane {\n//         --side-width: 270px !important;\n//         --side-max-width: 270px !important;\n//         ion-menu {\n//             --width: 270px !important;\n//             --max-width: 270px !important;\n//         }\n//     }\n// }\n\n\n\nion-menu  {\n  --padding-start: 8px;\n  --padding-end: 8px;\n  --padding-top: 20px;\n  --padding-bottom: 20px;\n}\n\nion-menu ion-item.selected {\n  --background: rgba(var(--ion-color-primary-rgb), 0.14);\n}\n\nion-menu ion-item.selected ion-icon {\n  color: var(--ion-color-primary);\n}\n\n// ion-menu ion-list-header,\n// ion-menu ion-note {\n//   padding: 10px;\n// }\n\n// ion-menu ion-list#inbox-list ion-list-header {\n//   font-size: 22px;\n//   font-weight: 600;\n//   min-height: 20px;\n// }\n\n// ion-menu ion-list#labels-list ion-list-header {\n//   font-size: 16px;\n// }\n\nion-note {\n  display: inline-block;\n}\n\n\nion-menu.md ion-content {\n  --padding-start: 8px;\n  --padding-end: 8px;\n  --padding-top: 20px;\n  --padding-bottom: 20px;\n  --side-max-width : 200px;\n\n}\n\n  /* Modern Menu Styling */\n  .modern-menu {\n    --width: 280px;\n    --background: #ffffff;\n    --border-color: transparent;\n  }\n\n  .menu-header {\n    --background: transparent;\n    padding: 16px;\n  }\n\n  .app-branding {\n    display: flex;\n    align-items: center;\n    padding: 8px 0;\n  }\n\n  .logo-container {\n    width: 42px;\n    height: 42px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    background: var(--ion-color-primary);\n    border-radius: 12px;\n    margin-right: 16px;\n  }\n\n  .logo-container ion-icon {\n    color: white;\n  }\n\n  .app-info h2 {\n    margin: 0;\n    font-weight: 600;\n    font-size: 20px;\n    color: var(--ion-color-dark);\n  }\n\n  .app-version {\n    margin: 0;\n    font-size: 12px;\n    color: var(--ion-color-medium);\n  }\n\n  .menu-content {\n    --padding-top: 0;\n    --padding-start: 0;\n    --padding-end: 0;\n    --padding-bottom: 0;\n  }\n\n  .user-profile {\n    display: flex;\n    align-items: center;\n    padding: 16px;\n    margin-bottom: 8px;\n    background-color: rgba(var(--ion-color-primary-rgb), 0.05);\n  }\n\n  .user-avatar ion-avatar {\n    width: 48px;\n    height: 48px;\n    background-color: rgba(var(--ion-color-primary-rgb), 0.2);\n    display: flex;\n    align-items: center;\n    justify-content: center;\n  }\n\n  .user-avatar ion-icon {\n    color: var(--ion-color-primary);\n  }\n\n  .user-info {\n    margin-left: 16px;\n  }\n\n  .user-info h3 {\n    margin: 0;\n    font-size: 16px;\n    font-weight: 600;\n    color: var(--ion-color-dark);\n  }\n\n  .user-info p {\n    margin: 0;\n    font-size: 14px;\n    color: var(--ion-color-medium);\n  }\n\n  .menu-section {\n    margin-top: 16px;\n  }\n\n  .section-title {\n    font-size: 12px;\n    font-weight: 600;\n    color: var(--ion-color-medium);\n    padding: 0 16px;\n    margin-bottom: 8px;\n    letter-spacing: 0.5px;\n  }\n\n  ion-list {\n    padding: 0;\n    background: transparent;\n  }\n\n  .menu-item {\n    --padding-start: 16px;\n    --border-radius: 0;\n    --min-height: 50px;\n    margin: 0;\n    transition: background-color 0.2s;\n  }\n\n  .menu-item ion-icon {\n    font-size: 20px;\n    color: var(--ion-color-primary);\n    margin-right: 12px;\n  }\n\n  .menu-item ion-label {\n    font-size: 15px;\n    font-weight: 500;\n    color: var(--ion-color-dark);\n  }\n\n  .menu-item.selected {\n    --background: rgba(var(--ion-color-primary-rgb), 0.1);\n    border-left: 4px solid var(--ion-color-primary);\n  }\n\n  .menu-item.selected ion-icon {\n    color: var(--ion-color-primary);\n  }\n\n  .menu-item.selected ion-label {\n    color: var(--ion-color-primary);\n    font-weight: 600;\n  }\n\n  /* Parent menu item styling */\n  .parent-menu {\n    cursor: pointer;\n  }\n\n  .parent-menu ion-icon[slot=\"end\"] {\n    font-size: 18px;\n    color: var(--ion-color-medium);\n    transition: transform 0.3s ease;\n  }\n\n  /* Submenu styling */\n  .submenu {\n    max-height: 0;\n    overflow: hidden;\n    transition: max-height 0.3s ease-in-out;\n    background-color: rgba(var(--ion-color-light-rgb), 0.3);\n  }\n\n  .submenu.expanded {\n    max-height: 500px;\n  }\n\n  .submenu-item {\n    --padding-start: 48px;\n    --min-height: 44px;\n    font-size: 14px;\n  }\n\n  .submenu-item ion-icon {\n    font-size: 18px;\n    color: var(--ion-color-medium);\n  }\n\n  .submenu-item ion-label {\n    font-size: 14px;\n    font-weight: 400;\n  }\n\n  .submenu-item.selected {\n    --background: rgba(var(--ion-color-primary-rgb), 0.12);\n    border-left: 3px solid var(--ion-color-primary);\n  }\n\n  .submenu-item.selected ion-icon {\n    color: var(--ion-color-primary);\n  }\n\n  .submenu-item.selected ion-label {\n    color: var(--ion-color-primary);\n    font-weight: 600;\n  }\n\n  /* Dark theme submenu adjustments */\n  .dark-theme .submenu {\n    background-color: rgba(255, 255, 255, 0.03);\n  }\n\n  .dark-theme .submenu-item ion-label {\n    color: #b0b0b0;\n  }\n\n  .menu-footer {\n    padding: 16px;\n    text-align: center;\n    margin-top: 24px;\n    border-top: 1px solid rgba(var(--ion-color-medium-rgb), 0.2);\n  }\n\n  .menu-footer p {\n    margin: 0;\n    font-size: 12px;\n    color: var(--ion-color-medium);\n  }\n\n  /* Dark theme adjustments */\n  .dark-theme .modern-menu {\n    --background: #121212;\n  }\n\n  .dark-theme .app-info h2 {\n    color: #ffffff;\n  }\n\n  .dark-theme .user-profile {\n    background-color: rgba(255, 255, 255, 0.05);\n  }\n\n  .dark-theme .user-info h3 {\n    color: #ffffff;\n  }\n\n  .dark-theme .menu-item ion-label {\n    color: #e0e0e0;\n  }\n\n  .dark-theme .menu-footer {\n    border-top: 1px solid rgba(255, 255, 255, 0.1);\n  }\n"],"sourceRoot":""}]);
// Exports
module.exports = ___CSS_LOADER_EXPORT___.toString();


/***/ }),

/***/ 13826:
/*!***************************************************************************************************************************************!*\
  !*** ./node_modules/ionicons/dist/esm/ lazy ^\.\/.*\.entry\.js$ include: \.entry\.js$ exclude: \.system\.entry\.js$ namespace object ***!
  \***************************************************************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var map = {
	"./ion-icon.entry.js": [
		7130,
		"node_modules_ionicons_dist_esm_ion-icon_entry_js"
	]
};
function webpackAsyncContext(req) {
	if(!__webpack_require__.o(map, req)) {
		return Promise.resolve().then(() => {
			var e = new Error("Cannot find module '" + req + "'");
			e.code = 'MODULE_NOT_FOUND';
			throw e;
		});
	}

	var ids = map[req], id = ids[0];
	return __webpack_require__.e(ids[1]).then(() => {
		return __webpack_require__(id);
	});
}
webpackAsyncContext.keys = () => (Object.keys(map));
webpackAsyncContext.id = 13826;
module.exports = webpackAsyncContext;

/***/ }),

/***/ 61584:
/*!***********************************************!*\
  !*** ./src/app/app.component.html?ngResource ***!
  \***********************************************/
/***/ ((module) => {

"use strict";
module.exports = "<ion-app [class.dark-theme]=\"dark\">\n  <ion-split-pane contentId=\"main-content\">\n\n    <ion-menu contentId=\"main-content\" type=\"overlay\" class=\"modern-menu\">\n      <ion-header class=\"ion-no-border\">\n        <ion-toolbar class=\"menu-header\">\n          <div class=\"app-branding\">\n            <div class=\"logo-container\">\n              <ion-icon name=\"cube-outline\" size=\"large\"></ion-icon>\n            </div>\n            <div class=\"app-info\">\n              <h2>ENIM Menu</h2>\n              <!-- <p class=\"app-version\">v2.0</p> -->\n            </div>\n          </div>\n        </ion-toolbar>\n      </ion-header>\n\n      <ion-content class=\"menu-content\">\n        <div class=\"user-profile\" *ngIf=\"user\">\n          <div class=\"user-avatar\">\n            <ion-avatar>\n              <ion-icon name=\"person\" size=\"large\"></ion-icon>\n            </ion-avatar>\n          </div>\n          <div class=\"user-info\">\n            <h3>{{user?.name}}</h3>\n            <p>{{user?.user_type}}</p>\n            <ion-chip color=\"warning\" *ngIf=\"!isOnline\">\n              <ion-icon name=\"wifi\"></ion-icon>\n              <ion-label>Offline Mode</ion-label>\n            </ion-chip>\n            <!-- Manual refresh button when offline -->\n            <ion-button size=\"small\" fill=\"clear\" color=\"primary\" *ngIf=\"!isOnline\" (click)=\"checkNetworkStatus()\">\n              <ion-icon slot=\"start\" name=\"refresh-outline\"></ion-icon>\n              Check Connection\n            </ion-button>\n          </div>\n        </div>\n\n        <div class=\"menu-section\">\n          <p class=\"section-title\">MAIN MENU</p>\n          <ion-list lines=\"none\">\n            <ng-container *ngFor=\"let p of filteredMenuConfig; let i = index\">\n              <!-- Parent menu item with children (expandable) -->\n              <ng-container *ngIf=\"p.children && p.children.length > 0\">\n                <ion-item [attr.data-test-id]=\"p.id\" button (click)=\"toggleSubmenu(p)\" detail=\"false\" class=\"menu-item parent-menu\">\n                  <ion-icon slot=\"start\" [name]=\"p.icon\"></ion-icon>\n                  <ion-label>{{p.title}}</ion-label>\n                  <ion-icon slot=\"end\" [name]=\"p.expanded ? 'chevron-up-outline' : 'chevron-down-outline'\"></ion-icon>\n                </ion-item>\n\n                <!-- Sub-menu items -->\n                <div class=\"submenu\" [class.expanded]=\"p.expanded\">\n                  <ion-menu-toggle autoHide=\"false\" *ngFor=\"let child of p.children\">\n                    <ion-item [attr.data-test-id]=\"child.id\" [routerLink]=\"child.url\" [queryParams]=\"child.queryParams\" routerDirection=\"root\" routerLinkActive=\"selected\" detail=\"false\" class=\"menu-item submenu-item\">\n                      <ion-icon slot=\"start\" [name]=\"child.icon\"></ion-icon>\n                      <ion-label>{{child.title}}</ion-label>\n                    </ion-item>\n                  </ion-menu-toggle>\n                </div>\n              </ng-container>\n\n              <!-- Regular menu item without children -->\n              <ion-menu-toggle autoHide=\"false\" *ngIf=\"!p.children || p.children.length === 0\">\n                <ion-item [attr.data-test-id]=\"p.id\" [routerLink]=\"p.url\" [queryParams]=\"p.queryParams\" routerDirection=\"root\" routerLinkActive=\"selected\" detail=\"false\" class=\"menu-item\">\n                  <ion-icon slot=\"start\" [name]=\"p.icon\"></ion-icon>\n                  <ion-label>{{p.title}}</ion-label>\n                </ion-item>\n              </ion-menu-toggle>\n            </ng-container>\n\n            <ion-menu-toggle autoHide=\"false\" *ngFor=\"let p of commonPages; let i = index\">\n              <ion-item [attr.data-test-id]=\"p.id\" [routerLink]=\"p.url\" routerLinkActive=\"selected\" routerDirection=\"root\" detail=\"false\" class=\"menu-item\">\n                <ion-icon slot=\"start\" [name]=\"p.icon\"></ion-icon>\n                <ion-label>{{p.title}}</ion-label>\n              </ion-item>\n            </ion-menu-toggle>\n          </ion-list>\n        </div>\n\n        <div class=\"menu-section\" *ngIf=\"isOnline\">\n          <p class=\"section-title\">ACCOUNT</p>\n          <ion-list lines=\"none\">\n            <ion-menu-toggle autoHide=\"false\">\n              <ion-item data-test-id=\"menu-account\" routerLink=\"/account\" routerLinkActive=\"selected\" routerDirection=\"root\" detail=\"false\" class=\"menu-item\">\n                <ion-icon slot=\"start\" name=\"person-outline\"></ion-icon>\n                <ion-label>Account</ion-label>\n              </ion-item>\n            </ion-menu-toggle>\n            <ion-menu-toggle autoHide=\"false\">\n              <ion-item data-test-id=\"menu-logout\" button (click)=\"b.logout()\" detail=\"false\" class=\"menu-item\">\n                <ion-icon slot=\"start\" name=\"log-out-outline\"></ion-icon>\n                <ion-label>Logout</ion-label>\n                <ion-badge slot=\"end\" color=\"warning\" *ngIf=\"communityAssessmentCount > 0\">\n                  {{ communityAssessmentCount }}\n                </ion-badge>\n              </ion-item>\n            </ion-menu-toggle>\n          </ion-list>\n        </div>\n\n        <div class=\"menu-footer\">\n          <p>© 2025 Enim App</p>\n        </div>\n      </ion-content>\n    </ion-menu>\n\n    <ion-router-outlet id=\"main-content\"></ion-router-outlet>\n\n  </ion-split-pane>\n</ion-app>\n";

/***/ })

},
/******/ __webpack_require__ => { // webpackRuntimeModules
/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
/******/ __webpack_require__.O(0, ["vendor"], () => (__webpack_exec__(84429)));
/******/ var __webpack_exports__ = __webpack_require__.O();
/******/ }
]);
//# sourceMappingURL=main.js.map